Capitulo 7 Problemas de Transporte y Asignacion
Capitulo 7 Problemas de Transporte y Asignacion
Capitulo 7 Problemas de Transporte y Asignacion
distribuidas. (el costo unitario del origen i al destino j se denota por cij). En resumen la
suposicin de costo nos dice que: la funcin del costo de transporte debe ser una
funcin lineal del nmero de unidades transportadas y que el costo de transporte por
unidad no vara con la cantidad transportada.
Los nicos datos necesarios para un problema de transporte son suministros,
demandas y costos unitarios. Estos son los parmetros del modelo. Todos estos parmetros
se pueden resumir en la siguiente tabla de parmetros.
Costo por unidad distribuida
Destino
Recursos
1
2
...
n
...
1
c11
c12
c1n
s1
Origen
...
2
c21
c22
c2n
s2
....
...
...
....
....
...
...
m
cm1
cm2
cmn
sm
Demanda
...
d1
d2
dn
Entonces cualquier problema (ya sea que involucre el transporte o no), se ajusta a
este modelo de problema de transporte si se puede escribir por completo en trminos de una
tabla de parmetros como la anterior, y adems satisface tanto la suposicin de
requerimientos, como la de costo. El objetivo es minimizar el costo total de distribuir las
unidades. Sea Z el costo total de distribucin y xij (i = 1,2,...m; j = 1,2,...n) el nmero de
unidades que se distribuyen del origen i al destino j, la formulacin de programacin lineal
para este problema es:
m n
Minimizar Z = c ijx ij ,
i=1 j=1
Sujeta a:
n
xij = si
j=1
m xij = d j
i=1
para i = 1,2,...m
para j = 1,2,...n
Una compaa tiene cuatro enlatadoras que abastecen a cuatro almacenes y la gerencia
quiere determinar la programacin de envo de costo mnimo para su produccin
mensual de latas de tomate. La oferta de las enlatadoras, las demandas de los almacenes
y los costos de envo por caja de latas de tomate se muestran en la Tabla 1.
Enlatadoras
Demandas
A (1)
B (2)
C (3)
D (4)
E (1)
25
55
40
60
10
H (4)
60
38
65
27
9
Produccin
15
6
14
11
(i = 1,2,3,4; j = 1,2,3,4)
Que representan estas variables de decisin xij?: Las cantidades de productos enviadas
de cada centro de suministro a cada centro de demanda a costo mnimo.
Paso 1: Establecer la matriz de transporte.
A partir de la informacin de la Tabla 1 se debe construir la matriz de transporte, en
donde la disponibilidad de oferta de cada enlatadora aparece en la columna del extremo
derecho y las demandas de los almacenes figuran en la fila inferior. Los costos de envo por
unidad aparecen en pequeos cuadros dentro de la celda (figura 1). En este paso es
importante asegurarse de que la disponibilidad total de la oferta y los requerimientos totales
de la demanda sean iguales. En este caso son iguales, 46 unidades, pero muchas veces hay
oferta o demanda en exceso. Cuando esto ocurre, para que funcione el mtodo de transporte
se tiene que aadir un almacn a una enlatadora ficticia. Desde el punto de vista de
procedimiento, esto implica insertar una fila extra (para una enlatadora adicional) o una
columna extra (para un almacn adicional). La cantidad de oferta o demanda requerida por
la instalacin ficticia es igual a la diferencia entre los totales de fila y de columna. Los
costos de cada celda en la fila ficticia se establecern en cero, de modo que las unidades all
enviadas no incurrieran en costo de transporte. Tericamente, este ajuste equivale al
procedimiento Simplex de insertar una variable de holgura en una desigualdad de
restricciones para convertirla en una ecuacin, y el costo del elemento ficticio seria cero en
la funcin objetivo.
Desde/Hasta
A
25
35
36
60
Oferta
15
55
30
45
38
40
50
26
65
14
60
40
66
27
11
Requerimientos
de
10
12
destino (Demandas)
Figura 1: Matriz de transporte para el problema.
15
35
36
60
Oferta
15
30
45
38
26
65
14
27
11
F
25
10
5
55
6
40
50
1
60
13
40
66
2
15
9
9
Requerimientos
de
10
12
destino (Demandas)
Figura 2: Asignacin de esquina noroccidental.
Costo total = 10 ($25) + 5 ($35) +6 ($30) + ($50) + 13 ($26) + 2 ($66) + 9 ($27) = $1368
Con la utilizacin de este mtodo, se aprecia que se asignaron algunas celdas de alto
costo, mientras que se dejaron algunas celdas de bajo costo. De hecho, esto es de esperarse,
porque este mtodo ignora los costos en aras de seguir un algoritmo de asignacin
fcilmente programable.
2) Mtodo de asignacin de menor costo.
Este mtodo asigna lo ms posible a la celda de menor costo. Es factible que los
vnculos se rompan de manera arbitraria. Las filas y columnas que han sido completamente
asignadas no se tienen en cuenta y el proceso de asignacin continua. El procedimiento se
completa cuando se satisfacen todos los requerimientos de fila y columna. La figura 3
muestra una asignacin de menor costo. (la celda A-E se asigno primero, luego se asigno la
C-G, la D-H, despus la B-F, etc).
Desde/Hasta
A
E
25
10
35
36
60
Oferta
15
30
45
38
26
65
14
27
11
5
55
6
40
50
14
60
40
1
66
1
Requerimientos
de
10
12
15
9
destino (Demandas)
Figura 3: Asignacin de menor costo.
Costo total = 10 ($25) + 14 ($26) + 9 ($27) + 6 ($30) + 5 ($35) + ($40) + ($66) = $1318
25
35
36
Oferta
60
15
55
30
45
38
40
50
26
65
14
14
60
40
66
27
11
13
1
10
Demanda
10
12
15
9
Dif.1
5
10
11
15
Figura 4. Diferencias entre costos de casillas de filas y columnas.
2) Seleccionar la fila o columna que tenga la diferencia mayor.
En la figura 4 seleccionamos la columna E por ser en esta una diferencia de 15,
mayor que el resto de las diferencias.
3) Dentro de la fila o columna seleccionada en la etapa anterior, elegir la de menor costo.
Asignar a esta celda lo ms posible.
Dentro de la columna E, la celda de menor costo es la A-E, la marcamos y le
asignamos cuantas unidades sea posible. El almacn E requiere 10 unidades. El centro
productor puede abastecerlo en esa cantidad, de esa manera queda satisfecho el almacn E.
(figura 5).
35
36
Oferta
60
15
55
30
45
38
40
50
26
65
14
14
60
40
66
27
11
13
E
10 25
Dif.1
10
Demanda
10
12
15
9
Dif.1
5
10
11
15
Figura 5. Asignar a la celda de menor costo dentro de la columna seleccionada.
4) Eliminar para clculos sucesivos la fila o columna cuya capacidad haya quedado
satisfecha.
En este caso eliminamos la columna E, ya que este almacn ha recibido todo lo
demandado. Habr casos en los que podr eliminarse fila y columna, ser cuando coincidan
oferta y demanda. (figura 6)
5) Volver a calcular para toda fila y para toda columna, las diferencias entre las dos
casillas de menor costo. Cualquier fila y columna con cero oferta o demanda no se
debe utilizar para calcular otras diferencias. Luego se va al paso 2.
A
35
36
Oferta Dif.1
60
5
10
30
45
38
50
14 26
65
14
14
14
40
66
27
11
13
13
Dif.2
1
Demanda
12
15
9
Dif.1
5
10
11
Dif.2
5
10
11
Figura 6. Se elimino la columna E, y luego se calcularon las diferencias nuevamente y
asignacin.
Ntese que la oferta del centro A, ahora es 5, ya que abasteci con 10 unidades al
almacn E. Se selecciona la fila C, por tener mayor diferencia (14). Se elige la celda C-G
por ser la de menor costo dentro de la fila C. Se asigna a esta celda 14 unidades del centro
productor C. Se elimina la fila C porque la oferta de este centro productor esta satisfecha.
(figura 6). Se calculan las diferencias nuevamente y se repite el ciclo.
A
35
36
30
45
38
40
66
27
11
13
13
13
Demanda
12
1
9
Dif.1
5
10
11
Dif.2
5
10
11
Dif 3
5
9
11
Figura 7. Se elimino la fila C, y se repiten los clculos de diferencia y asignacin (D-H).
35
36
30
45
15
40
66
13
13
13
26
Demanda
1
12
Dif.1
5
10
Dif.2
5
10
Dif 3
5
9
Dif 4
5
9
Figura 8. Se elimino la columna H, y se repite el ciclo.
35
36
Oferta
5
30
45
F
A
B
15
15
Dif.5
1
Demanda
1
10
Dif.1
5
10
Dif.2
5
10
Dif 3
5
9
Dif 4
5
9
Dif 5
5
9
Figura 9. Se elimino la fila D y se repite el ciclo.
F
4 35
Demanda
4
1
Dif.1
5
10
Dif.2
5
10
Dif 3
5
9
Dif 4
5
9
Dif 5
5
9
Figura 10. Se elimina la fila B y se realiza la asignacin directa.
60
Oferta
15
45
38
26
65
14
27
11
25
F
4
35
G
36
1
55
30
40
60
10
50
2
40
14
66
Requerimientos
de
10
12
15
9
destino (Demandas)
Figura 11. Resultado final para el Mtodo de Voguel.
Costo Total = 10 ($25) + 14 ($26) + 9 ($27) + 2($40) + 6($30) + 4 ($35) + ($36) = $1293
Paso 3: Desarrollar la solucin optima.
El desarrollo de una solucin optima para el problema de transporte implica evaluar
cada celda no utilizada para determinar sin un cambio en ella resulta ventajoso desde el
punto de vista del costo total. So lo es, se hace el cambio, y se repite el proceso. Cuando
todas las celdas han sido evaluadas y se han hecho los cambios pertinentes, el problema
esta resuelto. Este procedimiento se conoce con el nombre de Mtodo Stepping Stone.
Ahora se aplicaran estos conceptos a la solucin encontrada con el mtodo de la esquina
noroccidental.
Paso 1: Seleccionar cualquier celda vaca e identificar el camino cerrado que conduce a
ella. Un camino cerrado consiste en lneas horizontales y verticales que conducen de una
celda vaca de regreso a si misma. Se debe avanzar hasta una casilla llena (con asignacin)
y girar ah en ngulo recto hasta llegar a otra casilla llena. As, sucesivamente hasta cerrar
el camino en la casilla vaca de partida. Se pueden saltar las casillas llenas o vacas
necesarias. Por ejemplo: para evaluar la celda B-E, el camino cerrado seria B-E, A-E, E-F,
F-B, que es el indicado con lnea punteada en la figura 12.
Desde/Hasta
Oferta
E
F
G
H
35
36
60
15
A
25
10
5
55
30
45
38
6
B
6
40
50
26
65
14
C
1
13
60
40
66
27
11
D
2
9
Requerimientos
de
10
12
15
9
destino (Demandas)
Figura 12. Mtodo Stepping Stone. Identificacin de caminos cerrados
Cual ser el camino cerrado para evaluar la celda A-H?
Paso 2: Mover una unidad a una celda vaca desde una llena en una esquina del camino
cerrado, modificando las celdas llenas restantes en las otras esquinas del camino cerrado
para reflejar este movimiento. La modificacin implica sumar a y restar de celdas llenas de
tal manera que no se violen las restricciones de oferta y demanda. Esto exige que una
unidad sea restada en una fila o columna dada por cada unidad sumada a dicha fila o
columna. Para la celda B-E implica: Sumar una unidad a B-E (celda vaca), restar una
unidad de B-F, sumar una unidad a A-F, restar una unidad de A-E.
Paso 3: Determinar la conveniencia del cambio. Esto se logra fcilmente al (1) sumar los
valores de costo para cada celda a la cual se ha agregado una unidad, (2) sumar los valores
de costo de las celdas de las cuales se ha restado una unidad, y (3) tomar la diferencia entre
las dos sumas para determinar si existe reduccin de costos. Si el costo se reduce al hacer el
cambio, deben cambiarse cuantas unidades sea posible de las celdas llenas a las vacas. Si
el costo se incrementa, no debe hacerse ningn cambio y la celda vaca se debe tachar o
marcar de alguna manera para indicar que ha sido evaluada (por lo general se utiliza un
signo + para indicar que ha sido evaluada y se le ha hallado indeseable en problemas de
minimizacion de costos). En problemas de maximizacion de utilidades se utiliza un signo
menos para este propsito. Para la celda B-E entonces,
Celdas que se ha agregado una unidad: (+)
(B-E) = $ 55
(A-F) = $ 35
Celdas que se ha restado una unidad: (-)
(B-F) = $ 30
(A-E) = $ 25
Total = $35
As, se puede ver que no se debe hacer el cambio, dado que no hay reduccin de costo.
Paso 4: Repetir los pasos 1 a 3 hasta que hayan sido evaluadas todas las celdas vacas. Si
consideramos por ejemplo la celda D-F, el camino que conduce a ella es: C-F, C-G y D-G.
Por lo tanto:
Celdas que se ha agregado una unidad: (+)
(D-F) = $ 40
(C-G) = $ 26
Celdas que se ha restado una unidad: (-)
(C-F) = -$50
(D-G) = -$66
Total = -$50
Como hay ahorro de $50 por unidad al despachar por la va D-F, deben cambiarse cuantas
unidades sea posible a esa celda. En este caso, la cantidad mxima que se puede cambiar es
una unidad, porque la cantidad mxima que se agregue a cualquier celda no puede exceder
la cantidad que hay en la celda de menor nmero de la que se va a restar. Hacer algo
distinto violara las restricciones de oferta y demanda del problema. Aqu se observa que la
celda limitante es C-F porque solo contiene una unidad.
La matriz revisada se muestra en el cuadro siguiente.
Desde/Hasta
A
F
25
10
60
Oferta
15
45
38
26
65
14
27
11
G
35
H
36
+
5
55
B
+
30
6
40
50
+
14
60
40
1
66
9
Requerimientos
de
10
12
15
9
destino (Demandas)
Figura 13. Matriz de transporte revisada. Se indican con (+) las celdas revisadas
indeseables para minimizar el costo. En lnea punteada se indica el camino cerrado para
evaluar la celda A-G.
Al aplicar el mtodo a las celdas restantes y realizar los cambios indicados se llega a
la solucin optima. En particular la celda vaca A-G tiene el camino cerrado: D-G, D-F y
A-F.
Por lo tanto:
Celdas que se ha agregado una unidad: (+)
(A-G) = $36
(D-F) = $40
Celdas que se ha restado una unidad: (-)
(D-G) = $66
(A-F) = $35
Total: -$25
Como el ahorro es de $25, se cambia una unidad de a A-G. En la figura 14 se muestra la
solucin ptima obtenida.
Desde/Hasta
A
F
25
10
+
C
35
4
55
45
38
26
65
14
27
11
H
36
1
30
6
40
50
+
60
Oferta
15
60
14
40
66
2
Requerimientos
de
10
destino (Demandas)
Figura14. Solucin optima obtenida.
9
12
15
Observar que se llega a la misma solucin optima que se obtuvo por MAV
Como ejercicio verificar que se ha llegado a la solucin optima evaluando las celdas
que no estn marcadas con un signo (+)
Degeneracin.
La degeneracin existe en un problema de transporte cuando el nmero de celdas
llenas es inferior al nmero de filas ms el nmero de columnas menos uno:
Numero de celdas llenas o asignaciones < (m+n-1).
Cuando esto sucede se debe ajustar la matriz para evaluar la solucin. La forma de
este ajuste implica insertar un valor en la celda vaca para que se pueda desarrollar un
camino cerrado para evaluar otras celdas vacas. Por ejemplo, en la figura 15, se observa
una matriz degenerada, ya que el numero de celdas llenas es igual a 4, y el valor de (m+n1)=5, para salvar esto agregamos un cero en la celda T-Y. Si no se hiciera esta asignacin
seria imposible evaluar varias celdas. Aunque la decisin de donde colocar el cero es
arbitraria, ahorra tiempo si se sita en donde se pueda utilizar para evaluar cuantas celdas
sea posible sin necesidad de cambiarla.
W
3
U
V
Y
0
Oferta
11
10
X
8
Demanda
6
8
9
Figura15. Problema de transporte degenerado.
3. PROBLEMA DE ASIGNACION.
El problema de asignacin es un tipo especial de problema de programacin lineal
en el que los asignados son recursos destinados a la realizacin de tareas. Por ejemplo, los
asignados pueden ser empleados a quienes se tiene que dar trabajo. La asignacin de
personas a trabajos es una aplicacin comn del problema de asignacin. Sin embargo, los
asignados no tienen que ser personas. Tambin, pueden ser maquinas, vehculos, plantas a
los que se asignan tareas. Para que un problema se ajuste a la definicin de problema de
transporte se deben cumplir las siguientes suposiciones:
1) El nmero de asignados es igual al nmero de tareas. (este numero se denota por n).
2) Cada asignado se asigna a una tarea.
3) Cada tarea debe realizarla exactamente un asignado.
4) Existe un costo cij asociado con el asignado i ( i = 1,2...,n) que realiza la tarea j (j =
1,2...n).
5) El objetivo es determinar como deben hacerse las n asignaciones para minimizar los
costos totales.
1
2
3
4
Personas
2
6
2
3
4
3
3
5
1
1
4
5
3
5
5
Personas
1
2
3
4
0
0
3
1
4
1
2
3
1
4
0
0
3
2
4
4
Numero
menor
2
1
1
1
Observe que en cada rengln aparece un cero. Los otros valores distintos de cero
son los costos de oportunidad que resultaran al no asignar la persona con la mejor
puntuacin al puesto mas adecuado. Despus de cada operacin efectuada en la matriz, hay
que verificar si se ha logrado la solucin ptima. Cuando hay un solo cero en cada rengln
y columna, se tiene la mejor combinacin posible. En la Tabla 3.2. no hay ceros en las
columnas de las tareas 2 y 4, de manera tal que se debe continuar aplicando el mtodo una
vez ms por lo menos. La resta en columnas se hace en forma similar. El valor ms bajo
que aparezca en cada columna de la matriz, (resultante de las diferencias en los renglones),
se resta de todos los dems valores de la columna. El resultado se muestra en la Tabla 3.3.
Tabla 3.3. Resta en columna.
Tareas
1
2
3
4
0
3
1
1
1
Personas
0
0
4
0
2
3
1
0
2
3
1
2
0
2
4
0
1
0
2
Numero
menor
Las columnas 1 y 3 no han variado, ya que contenan ceros. Los ceros revelan ahora
los costos de oportunidad de las interacciones empleado-puesto. Se har una nueva
verificacin de la solucin ptima. A primera vista parece que podra haber un cero para
cada combinacin empleado puesto, pero una inspeccin mas rigurosa indica que el
empleado 2 tiene tres de los costos cero de oportunidad disponibles. Por lo tanto se requiere
otra operacin en la matriz.
El paso siguiente tiene dos fases: La fase inicial consiste en cruzar todos los ceros
que hay en la matriz resultante del paso anterior con el menor nmero posible de lneas
rectas horizontales o verticales. Si el nmero de lneas es igual al nmero de renglones (o
columnas), se ha obtenido ya una solucin en el paso anterior. Como se ve en la Tabla 3.4.
el problema tiene tres lneas para cruzar todos los ceros. Como hay cuatro renglones quiere
decir que no se ha obtenido una solucin y se confirman las conclusiones obtenidas al
inspeccionar en forma independiente los ceros. Esta verificacin de la optimizacin es la
primera finalidad de las lneas.
Tabla 3.4. Lneas para cruzar ceros
Personas
1
2
3
4
1
0
0
3
1
Tareas
2
3
0
1
2
3
1
4
0
0
4
1
0
2
2
Personas
1
2
3
4
1
0
1
3
1
2
2
0
0
1
3
1
5
0
0
4
0
0
1
1