You are on page 1of 27

Optimizacin y Programacin Lineal

El Problema del Transporte


Departamento de Matemticas

ITESM

El Problema del Transporte

TC3001 - p. 1/25

Introduccin
Veamos ahora el problema del transporte, cul es su formulacin general y cmo se resuelve mediante LINGO.
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 2/25

Ejemplo 1
tiene tres plantas de generacin de energa elctrica que suministran energa a cuatro ciudades. Cada planta puede suministrar una cierta cantidad lmite y cada ciudad tiene una cierta demanda mxima conocida la cual debe satisfacerse. Los costos para enviar la energa de cada planta a cada ciudad as como las demandas y capacidades de suministro se dan en la siguiente tabla.
PowerCo
HACIA (Costo en dlares por enviar 1 milln de kwh) DESDE Planta 1 Planta 2 Planta 3 DEMANDA (En millones de kwh) Ciudad 1 8 9 14 45 Ciudad 2 6 12 9 20 Ciudad 3 10 13 16 30 Ciudad 4 9 7 5 30 OFERTA (En millones de kwh) 35 50 40

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

Formule un modelo de PL que minimice el costo del envio y que satisfaga la demanda mxima de energa en cada ciudad.

El Problema del Transporte

TC3001 - p. 3/25

La solucin se obtiene indicando cunto debe enviarse de cada planta a cada ciudad, por ello es que las variables de decisin son: xij = El nmero de millones de khw enviados de la planta i a la ciudad j
HACIA (Costo en dlares por enviar 1 milln de kwh) DESDE Planta 1 Planta 2 Planta 3 DEMANDA (En millones de kwh) Ciudad 1 8 9 14 45 Ciudad 2 6 12 9 20 Ciudad 3 10 13 16 30 Ciudad 4 9 7 5 30 OFERTA (En millones de kwh) 35 50 40

La funcin a minimizar es la funcin de costo total del envio de energa elctrica: z = 8 x11 + 6 x12 + 10 x13 + 9 x14 +9 x21 + 12 x22 + 13 x23 + 7 x24 +14 x31 + 9 x32 + 16 x33 + 5 x34 (Costo de enviar energa de la planta 1) (Costo de enviar energa de la planta 2) (Costo de enviar energa de la planta 3)

El Problema del Transporte

TC3001 - p. 4/25

HACIA (Costo en dlares por enviar 1 milln de kwh) DESDE Planta 1 Planta 2 Planta 3 DEMANDA (En millones de kwh) Ciudad 1 8 9 14 45 Ciudad 2 6 12 9 20 Ciudad 3 10 13 16 30 Ciudad 4 9 7 5 30

OFERTA (En millones de kwh) 35 50 40

Las restricciones son de dos tipos: las relativas a la capacidad de cada planta y las relativas al cumplimiento mnimo de la demanda mxima en cada ciudad: I Capacidad de la planta 1: x11 + x12 + x13 + x14 35
I I I I I I

Capacidad de la planta 2: x21 + x22 + x23 + x24 50 Capacidad de la planta 3: x31 + x32 + x33 + x34 40 Demanda en la ciudad 1: x11 + x21 + x31 45 Demanda en la ciudad 2: x12 + x22 + x32 20 Demanda en la ciudad 3: x13 + x23 + x33 30 Demanda en la ciudad 4: x14 + x24 + x34 30

Y las restricciones de signo xij 0.

El Problema del Transporte

TC3001 - p. 5/25

Formulacin del Problema del Transporte


El problema del transporte en general se especica mediante la siguiente informacin: 1. Un conjunto de m puntos de oferta desde los cuales se envian utilidades o bienes. 2. Una lista de capacidades de suministro mximo de cada sitio de oferta si para i = 1, 2, . . . , m. 3. Un conjunto de n puntos de demanda hacia los cuales se envia una utilidad o bien. 4. Una lista de demandas de utilidades o bienes dj de cada punto de demanda j las cuales deben satisfacerse mnimamente. 5. Una matriz de valores que indica el costo jo en el que se incurre al enviar una unidad producida en el punto de oferta i y enviada al punto de demanda j , cij .
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 6/25

Modelacin del Problema del Transporte


Si xij es el total de unidades producidas y enviadas del punto de oferta i al punto de demanda j , entonces, el planteamiento del problema de transporte es:
m n

Minimizar
i=1 j =1

cij xij

sujeto a I Satisfacer la solicitud de bienes de cada punto de demanda:


m

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

j = 1, 2, . . . , n :
i=1

xij dj

No exceder las capacidades de cada punto de oferta:


n

i = 1, 2, . . . , m :
j =1

xij si

Restricciones naturales: xij 0 (Total de n m restricciones).

El Problema del Transporte

TC3001 - p. 7/25

Representacin grca
City 4 s3 Plant 3 City 3 s2 Plant 2 City 2 s1 Plant 1 City 1 d1 d2 d3 d4
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 8/25

Tableau
c11 x11 c21 x21 c12 x12 c22 x22 ... ... c 2n s2 Suministros c 1n s1
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

. . . cm1

. . . cm2 ... ... d2 Demandas

. . . cmn

. . . sm

d1

dn

El Problema del Transporte

TC3001 - p. 9/25

Cdigo LINGO del ejemplo 1


model: sets:

! Indice para el suministro. Se usara i como variable indice de suministro; ! s = vector de datos con capacidades por suministro; m /1..3/:s; ! Indice para los puntos de demanda. Se usara j como variable indice de punto de demanda; ! d = vector de datos con demandas; n /1..4/:d; ! c = matriz (m x n) con los datos de costos de envio desde suministro i al punto de demanda j; ! x = matriz (m x n) con las variables de decisin, x(i,j) tendr numero de unidades enviadas desde el suministro i al punto de demanda j; links (m,n): x, c;
endsets data:

! Capacidad de cada punto de suministro; s = 35, 50, 40; ! Cantidad solicitada en cada punto de demanda; d = 45, 20, 30, 30; ! Matriz de costos ; c = 8, 6, 10, 9, 9, 12, 13, 7, 14, 9, 16, 5;
enddata

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

! Objetivo: Minimizar el costo total del envio; min = @sum( m(i): @sum( n(j): c(i,j)*x(i,j)) ); ! Familia de restricciones 1: Para cada suministro i, la cantidad total de salida no debe exceder su capacidad; @for(m(i): @sum( n(j): x(i,j) ) <= s(i) ); ! Familia de restricciones 2: Para cada punto de demanda j, la cantidad de ingreso no debe se menor que la demanda; @for(n(j): @sum( m(i): x(i,j) ) >= d(j) );
end

El Problema del Transporte

TC3001 - p. 10/25

model: sets:

m /1..3/:s; n /1..4/:d; links (m,n): x, c;


endsets data:

s=@FILE(C:/Usuarios/uresti/cursos/tc3001/lecturas/red70101s.tex); d=@FILE(C:/Usuarios/uresti/cursos/tc3001/lecturas/red70101d.tex); c=@FILE(C:/Usuarios/uresti/cursos/tc3001/lecturas/red70101c.tex);


enddata

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

min = @sum(links:c*x); @for(m(i): @sum(n(j):x(i,j)) <= s(i) ); @for(n(j): @sum(m(i):x(i,j)) >= d(j) );
end

Versin sin comentarios, con otras funcionalidades

El Problema del Transporte

TC3001 - p. 11/25

Comentarios
I

Cuando la suma total de las demandas es igual a la suma total de las capacidades de suministros se dice que es un problema de transporte balanceado. Existen tcnicas especcas para generar una solucin bsica factible en el caso balanceado y por ello es que se balancea articialmente el problema: N Cuando la oferta excede la demanda se introduce un punto de demanda cticio (dummy demand point). N Cuando la demanda excede la oferta no hay solucin bsica factible. En este caso se introducen castigos por no cumplir ciertas demandas y la funcin objetivo incluye tales castigos. Entre las tcnicas para encontrar una SBF en el caso balanceado estn: N El mtodo de la Esquina Noroeste N El mtodo de Vogel N El mtodo de Mnimo Costo Pero nosotros le dejaremos el trabajo a LINDO o a LINGO.

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 12/25

Ejemplo 2
Hay dos presas que suministran agua a tres ciudades. Cada presa puede suministrar hasta 50 millones de galones de agua por da. Cada ciudad quisiera recibir 40 millones de galones de agua por da. Por cada milln de galones de demanda diaria no cumplida hay una multa. En la ciudad 1, la multa es de 20 dlares; en la ciudad 2, la multa es de 22 dlares; y en la ciudad 3, la multa es de 23 dlares. En la tabla se muestran los costos de enviar un milln de galones de cada presa a cada ciudad. Formule y resuelva un modelo de transporte balanceado que se pueda usar para minimizar los costos de escasez y transporte. HACIA DESDE Presa 1 Presa 2 Ciudad 1 7 9 Ciudad 2 8 7 Ciudad 3 10 8
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 13/25

HACIA DESDE Presa 1 Presa 2 Ciudad 1 7 9 Ciudad 2 8 7 di Ciudad 3 10 8 sj = 120 100 = 20


Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

Escasez = Demanda Total Oferta Total =

Ciudad 1 Ciudad 2 Ciudad 3 7 Presa 1 9 Presa 2 20 Escasez 40 40 40 22 23 7 8 8 10

Oferta 50

50

20

El Problema del Transporte

TC3001 - p. 14/25

Cdigo LINGO para el ejemplo 2:


model: sets:

m /1..3/:s; n /1..3/:d; links (m,n): x, c;


endsets data:

s = 50, 50, 20; d = 40, 40, 40; c = 7, 8, 10, 9, 7, 8, 20, 22, 23;
enddata

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

min = @sum( m(i): @sum( n(j): c(i,j)*x(i,j)) ); @for(m(i): @sum( n(j): x(i,j) ) <= s(i) ); @for(n(j): @sum( m(i): x(i,j) ) >= d(j) );
end

El Problema del Transporte

TC3001 - p. 15/25

al Problema de las Presas Solucion

Se deben enviar los siguientes millones de galones de agua de cada presa a cada ciudada: Ciudad 1 Ciudad 2 Ciudad 3 7 Presa 1 Presa 2 Escasez 20 9 0 20 20 40 0 40 10 22 0 40 30 7 40 23 20 8 0 8 50 10 50 Oferta

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 16/25

Ejemplo 3
SailCo

tiene qu determinar cuntos veleros hay que producir en

cada uno de los cuatro trimestres del ao. La demanda de veleros en cada uno de ellos es conocida: 40, 60, 75 y 25 veleros en cada uno de los semestres. La empresa tiene que cumplir con tales demandas. Al principio tiene un inventario de 10 veleros. La compaa decide al principio de cada trimestre cuntos veleros hay que producir en l. Suponga que los veleros construidos durante un trimestre pueden ser utilizados para cubrir la demanda en el mismo trimestre. La compaa puede producir 40 veleros en tiempo normal de trabajo a un costo de 400 dlares el velero y puede producir hasta 20 veleros adicionales utilizando tiempo extra a un costo de 600 dlares cada velero. Al nal de cada trimestre se presentan costos de menejo de inventario por 20 dlares por cada velero. Formule y resuelva un modelo de transporte balanceado que se pueda usar para minimizar los costos de produccin y manejo de inventario durante los 4 trimestres prximos.

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 17/25

Puntos de oferta Punto 1 Punto 2 Punto 3 Punto 4 Punto 5 Punto 6 Punto 7 Punto 8 Punto 9 Inventario inicial (s1 = 10) Prod regular trim 1 (s2 = 40) Prod extra trim 1 (s3 = 20) Prod regular trim 2 (s4 = 40) Prod extra trim 2 (s5 = 20) Prod regular trim 3 (s6 = 40) Prod extra trim 3 (s7 = 20) Prod regular trim 4 (s8 = 40) Prod extra trim 4 (s9 = 20) Punto 1 Punto 2 Punto 3 Punto 4

Puntos de demanda Demanda trimestre 1 (d1 = 40) Demanda trimestre 2 (d2 = 60) Demanda trimestre 3 (d3 = 75) Demanda trimestre 4 (d4 = 25)

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 18/25

Consumidor Fuentes Stock PR1 PE1 PR2 PE2 PR3 PE3 PR4 PE4 Demandas M M M M M M 40 M M M M 60 M M 75 25 T1 T2 T3 T4 Oferta 10 40 20 40 20 40 20 40 20

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 19/25

model: sets: m /1..9/:s; n /1..4/:d; links (m,n): x, c; endsets data: s = 10, 40, 20, 40, 20, 40, 20, 40, 20; d = 40, 60, 75, 25; c= ! Costos del inventario inicial; 0, 20, 40, 60, ! Costos del trimestre 1; 400, 420, 440, 460, 600, 620, 640, 6600, ! Costos del trimestre 2; 10000, 400, 420, 440, 10000, 600, 620, 640, ! Costos del trimestre 3; 10000, 10000, 400, 420, 10000, 10000, 600, 620, ! Costos del trimestre 4; 10000, 10000, 10000, 400, 10000, 10000, 10000, 600; enddata min = @sum(links:c*x); @for(m(i): @sum(n(j):x(i,j)) <= s(i) ); @for(n(j): @sum(m(i):x(i,j)) >= d(j) ); end

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 20/25

Consumidor Fuentes Stock PR1 PE1 PR2 PE2 PR3 PE3 PR4 PE4 Demandas T1 0 40 0 0 0 0 0 0 0 40 T2 0 0 0 40 20 0 0 0 0 60 T3 10 0 5 0 0 40 20 0 0 75 T4 0 0 0 0 0 0 0 25 0 25 Oferta 10 40 5 40 20 40 20 25 0

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 21/25

Transbordo
Mientras que en el problema del transporte se tienen envos que van directamente desde un punto de oferta a un punto de demanda, en el Problema del Transbordo existen puntos intermedios (puntos de transbordo) donde se pueden recibir bienes para ser enviados a puntos de demanda. En su formalizacin hay tres tipos de puntos: I Puntos de oferta. Son puntos que pueden enviar bienes hacia otro punto pero no se pueden recibir bienes.
I
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

Puntos de demanda. Son puntos donde se reciben bienes pero no tienen forma de enviarlos. Puntos de transbordo. Son puntos donde se pueden recibir y enviar bienes.

El Problema del Transporte

TC3001 - p. 22/25

Conversin a un problema de Transporte


Los problemas de transbordo pueden ser convertidos en problemas de transporte de la siguiente manera. Sea s = n i=1 si la oferta total disponible y d = n j =1 dj la demanda total. 1. Si s > d, aada un punto de demanda cticio con una oferta 0 y con una demanda s d. El costo de enviar un bien desde cualquier punto de oferta a este nodo cticio ser cero. 2. Construya el cuadro de transporte de la siguiente manera. Tendr un rengln por cada punto de oferta y de transbordo. En cada punto de oferta tendr una oferta igual a la oferta original, mientras que cada punto de transbordo tendr una oferta que ser la suma de su oferta inicial ms s. Tendr una columna por cada punto de demanda y por cada punto de transbordo. En cada punto de demanda, la demanda ser igual a la demanda original y en cada punto de transbordo la demanda ser igual a la suma de la demanda original y s. Note que se tiene la posibilidad que en los puntos de transbordo exista una oferta o una demanda.
Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 23/25

Ejemplo 4
produce dispositivos mecnicos en dos fbricas; una en Memphis y otro en Denver. La fbricas de Memphis puede producir hasta 150 dispositivos mientras que la de Denver hasta 200. Los dispositivos se envan en avin hasta sus clientes que estn en Los ngeles y en Boston. Los clientes en cada ciudad requieren 130 dispositivos. Debido a la falta de reglamentacin en las tarifas areas, WidgetCo cree que es ms barato enviar algunos dispositivos a Nueva York o a Chicago, para despus enviarlos a sus destinos nales. Los costos de envio de cada dispositivo estn en la siguiente tabla. Plantee y resuelva un modelo para WidgetCo de manera que se minimice el costo total de enviar los dispositivos requeridos a sus clientes.
WidgetCo
HACIA (Costo en dlares por enviar 1 dispositivo) DESDE Memphis Denver NY Chicago NY 8 15 0 6 Chicago 13 12 6 0 Los ngeles 25 26 16 14 Boston 28 26 17 16

Introduccion Ejemplo 1 Formulacion Modelacion Graca Tableau LINGO Comentarios Ejemplo 2 Ejemplo 3 Transbordo Conversion Ejemplo 4

El Problema del Transporte

TC3001 - p. 24/25

s d

= =

sM en + sChi = 150 + 200 = 350 dLA + dBos = 130 + 130 = 260

Como s > d, se crea nodo de demanda cticio. NY Memphis Chicago LA Boston Ficticia

Denver

NY

Chicago

El Problema del Transporte

TC3001 - p. 25/25

s d

= =

sM en + sChi = 150 + 200 = 350 dLA + dBos = 130 + 130 = 260

Como s > d, se crea nodo de demanda cticio. NY Memphis Chicago LA Boston Ficticia Oferta 150

Denver

200

NY

350

Chicago Demanda 350 350 130 130 90

350

El Problema del Transporte

TC3001 - p. 25/25

s d

= =

sM en + sChi = 150 + 200 = 350 dLA + dBos = 130 + 130 = 260

Como s > d, se crea nodo de demanda cticio. NY 8 Memphis 15 Denver 0 NY 6 Chicago Demanda 350 350 130 130 90 0 14 16 0 350 6 16 17 0 350 12 26 26 0 200 Chicago 13 LA 25 Boston 28 Ficticia 0 150 Oferta

El Problema del Transporte

TC3001 - p. 25/25