El documento describe el modelo de programación lineal de transporte, que busca encontrar el mejor plan de distribución de bienes desde puntos de suministro a puntos de demanda minimizando los costos totales. Explica que se requiere la oferta, demanda y costos de transporte, y que la solución debe satisfacer restricciones como no exceder la oferta o cumplir la demanda. Además, detalla varios algoritmos como la regla de la esquina noroeste, el método de Vogel y el método del costo mínimo para encontrar una sol
2. 2
El objetivo general es encontrar el mejor plan de distribución, es
decir, la cantidad que se debe enviar por cada una de las rutas
desde los puntos de suministro hasta los puntos de demanda.
El “mejor plan” es aquel que minimiza los costos totales de envío,
produzca la mayor ganancia u optimice algún objetivo corporativo.
Se debe contar con:
i) Nivel de oferta en cada fuente y la cantidad de demanda
en cada destino.
ii) Costo de transporte unitario de mercadería desde cada
fuente a cada destino.
2.1 Modelo de Transporte
3. 3
También es necesario satisfacer ciertas restricciones:
1. No enviar más de la capacidad especificada desde cada punto de
suministro (oferta).
2. Enviar bienes solamente por las rutas válidas.
3. Cumplir (o exceder) los requerimientos de bienes en los puntos
de demanda.
2.1 Modelo de Transporte
4. 4
2.1 Modelo de Transporte
Esquemáticamente se podría ver como se muestra en la siguiente
figura
DestinosFuentes
1 1
22
n
m
Unidadesdedemanda
Unidadesdeoferta
s2
sm
d2
s1
d1
dn
Xij: cantidad transportada desde la fuente i al destino j
C11, X11
Cmn, Xmn
Cij: Costo del transporte unitario desde la fuente i al destino j
donde
Gráficamente: Para m fuentes y n destinos
5. 5
Modelo general de PL que representa al modelo de Transporte
ox
dx
sx
xcZ
ij
j
m
i
ij
i
n
j
ij
m
i
n
j
ijij
≥
≥
≤
=
∑
∑
∑∑
=
=
= =
1
1
1 1
j=1,2,...,n
i=1,2,...,m
El modelo implica que al menos la oferta debe ser igual a la demanda
para toda i y j
minimizar
s aa
2.1 Modelo de Transporte
6. 6
Modelo general de PL que representa al modelo de Transporte
Modelo de transporte equilibrado: Oferta = Demanda
i
n
j
ij Sx =∑=1
j=1, 2, 3,....,nj
m
i
ij Dx =∑=1
i=1, 2, 3,....,m
0≥ijx para toda i y j
2.1 Modelo de Transporte
8. 8
Algoritmos Específicos
2.1.1 Regla de la esquina noroeste (MEN)
2.1.2 Método por aproximación de Vogel (MAV)
2.1.3 Método del costo mínimo (MCM)
2.1.4 Método del paso secuencial y
2.1.5 DIMO (método de distribución modificada)
2.1 Modelo de Transporte
9. 9
Descripción de los algoritmos
La regla de la esquina noroeste, el método de aproximación
de Vogel y el método del costo mínimo son alternativas para
encontrar una solución inicial factible.
El método del escalón y el DIMO son alternativas para
proceder de una solución inicial factible a la óptima.
Por tanto, el primer paso es encontrar una solución inicial
factible, que por definición es cualquier distribución de
ofertas que satisfaga todas las demandas
2.1 Modelo de Transporte
10. 10
Descripción de los algoritmos
Una vez obtenida una solución básica factible, el algoritmo
procede paso a paso para encontrar un mejor valor para la
función objetivo.
La solución óptima es una solución factible de costo mínimo
Para aplicar los algoritmos, primero hay que construir una
tabla de transporte.
2.1 Modelo de Transporte
13. 13
2.1.1 Regla de la esquina Noroeste
Se inicia el proceso desde la esquina izquierda superior
Se ubican tantas unidades como sea posible en la ruta
Cantidad de Unidades = Mínimo(disponibilidad, demanda)
Las siguientes asignaciones se hacen o bien recorriendo hacia la
derecha o bien hacia abajo.
Las demandas se satisfacen recorriendo sucesivamente de
izquierda a derecha y las ofertas se destinan recorriendo de
arriba hacia abajo.
2.1 Modelo de Transporte
17. 17
2.1.2 Método de aproximación de
Vogel (MAV)
MAV usa información de costos mediante el concepto de
costo de oportunidad para determinar una solución inicial
factible.
Seleccionar en una fila la ruta más barata y la que le sigue.
Hacer su diferencia (penalidad), que es el costo adicional por
enviar una unidad desde el origen actual al segundo destino y
no al primero.
En nuestro caso, para el puerto1, C13 y C14; Penalidad = 6 - 4
MAV asigna un costo de penalidad por no usar la mejor ruta
en esta fila.
2.1 Modelo de Transporte
18. 18
2.1.2 Método de aproximación de Vogel
Lo anterior se repite para cada fila y cada columna, esto es,
determinar todas las penalidades
Los pasos iterativos de MAV son los siguientes:
1. Identificar la fila o columna con la máxima penalidad.
2.Colocar la máxima asignación posible a la ruta no usada que
tenga menor costo en la fila o columna seleccionada en el punto
1 (los empates se resuelven arbitrariamente)
3. Reajustar la oferta y demanda en vista de esta asignación.
4. Eliminar la columna en la que haya quedado una demanda 0 (o
la fila con oferta 0), de consideraciones posteriores.
5. Calcular los nuevos costos de penalidad.
2.1 Modelo de Transporte
19. 19
2.1.2 Método de aproximación de Vogel
El MAV continúa aplicando este proceso en forma sucesiva
hasta que se haya obtenido una solución factible.
Los resultados obtenidos se muestran en las siguientes tablas
2.1 Modelo de Transporte
20. 20
2.1.2 Método de aproximación de Vogel
Plantas
Puertos 1 2 3 4 Oferta Penalidades
1 12 13 4 6 2
500
2 6 4 10 11 2
700
3 10 9 12 4 5
800
Demanda 400 900 200 500 2000
Penalidades 4 5 6 2
Calculadas todas las penalidades, la mayor
corresponde a la columna 3 (penalidad = 6)
Paso 1: Identificar máxima penalidad (fila o columna)
Paso 0: Cálculo de penalidades
2.1 Modelo de Transporte
21. 21
2.1.2 Método de aproximación de Vogel
Paso 2: Asignación de unidades (MIN(oferta,demanda))
Paso 3:Reajuste de oferta y demanda
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 500
2 6 4 10 11
700
3 10 9 12 4
800
Demanda 400 900 0 200 500 2000
2.1 Modelo de Transporte
24. 24
2.1.2 Método de aproximación de Vogel
Repitiendo los pasos anteriores, finalmente se llega a la siguiente
solución
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 300 500
2 6 4 10 11
700 0 700
3 10 9 12 4
400 200 200 600 800
Demanda 400 900 0 200 200 500 2000
¿Es solución factible? ¿m + n - 1 = 6? SI
Costo: 200*4+300*6+700*4+400*10+200*9+200*4 = $12.000
2.1 Modelo de Transporte
25. 25
2.1.3. Método del Costo Mínimo
1. Dada una tabla de transporte
2. Asignar la mayor cantidad de unidades a la variable
(ruta) con el menor costo unitario de toda la tabla.
3. Tachar la fila o columna satisfecha.
4. Ajustar oferta y demanda de todas las filas y columnas
5. Si hay más de una fila o columna no tachada repetir
los puntos 2, 3 y 4
Algoritmo
Fundamento
Asignar la mayor cantidad de unidades a una ruta
disponible de costo mínimo
2.1 Modelo de Transporte
26. 26
2.1.3. Método del Costo Mínimo (cont.)
Ejemplo: Aplicar MCM a la tabla de transporte
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
500
2 6 4 10 11
700
3 10 9 12 4
800
Demanda 400 900 200 500 2000
Unidades a asignar = MIN(200,400) = 200
Existen tres rutas costo mínimo. Elijamos la 1_3Paso 2
2.1 Modelo de Transporte
27. 27
2.1.3. Método del Costo Mínimo (cont.)
Paso 3: Tachar fila o columna (columna 3)
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 500
2 6 4 10 11
700
3 10 9 12 4
800
Demanda 400 900 0 200 500 2000
Aún quedan más de una fila o columna sin tachar. Ir a paso 2
Ajustar ofertas y demandas (fila 1 y columna 3)
Paso 5
Paso 4
2.1 Modelo de Transporte
28. 28
2.1.3. Método del Costo Mínimo (cont.)
Paso 4: Tachar ajustar fila 3 y columna 4
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 500
2 6 4 10 11
700
3 10 9 12 4
500 300 800
Demanda 400 900 0 200 0 500 2000
Aún quedan más de una fila o columna sin tachar. Ir a paso 2Paso 5
Paso 2: Ruta de costo menor -> 3_4 (ó 2_2)
Unidades = MIN(500,800) = 500
Paso 3: Tachar columna 4
2.1 Modelo de Transporte
29. 29
2.1.3. Método del Costo Mínimo (cont.)
Paso 4: Tachar ajustar fila 2 y columna 2
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 500
2 6 4 10 0
700 0 700
3 10 9 12 4
500 300 800
Demanda 400 200 900 0 200 0 500 2000
Aún quedan más de una fila o columna sin tachar. Ir a paso 2Paso 5
Paso 2: Ruta de costo menor -> 2_2
Unidades = MIN(700,900) = 300
Paso 3: Tachar fila2
2.1 Modelo de Transporte
30. 30
2.1.3. Método del Costo Mínimo (cont.)
Paso 4: Tachar ajustar fila 3 y columna 2
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 500
2 6 4 10 0
700 0 700
3 10 9 12 4 100
200 500 300 800
Demanda 400 200 900 0 200 0 500 2000
Aún quedan más de una fila o columna sin tachar. Ir a paso 2Paso 5
Paso 2: Ruta de costo menor -> 3_2
Unidades = MIN(200,300) = 200
Paso 3: Tachar columna 2
2.1 Modelo de Transporte
31. 31
2.1.3. Método del Costo Mínimo (cont.)
Paso 4: Tachar ajustar fila 3 y columna 1
Puertos 1 2 3 4 Oferta
1 12 13 4 6
200 300 500
2 6 4 10 0
700 0 700
3 10 9 12 4 100 0
100 200 500 300 800
Demanda 300 400 200 900 0 200 0 500 2000
Aún quedan más de una fila o columna sin tachar. Ir a paso 2Paso 5
Paso 2: Ruta de costo menor -> 3_1
Unidades = MIN(400,100) = 100
Paso 3: Tachar fila 3
2.1 Modelo de Transporte
32. 32
2.1.3. Método del Costo Mínimo (cont.)
Paso 4: Tachar ajustar fila 1 y columna 1
Puertos 1 2 3 4 Oferta
1 12 13 4 6 0
300 200 300 500
2 6 4 10 0
700 0 700
3 10 9 12 4 100 0
100 200 500 300 800
Demanda 300 400 200 900 0 200 0 500 2000
Queda sólo una fila sin tachar. TerminarPaso 5
Paso 2: Ruta de costo menor -> 1_1
Unidades = MIN(300,300) = 300
Paso 3: Tachar fila 1 ó columna 1 (sólo una de ellas)
2.1 Modelo de Transporte
33. 33
2.1.3. Método del Costo Mínimo (cont.)
Comparación de los resultados
¿Es solución factible? ¿m + n - 1 = 6? SI
Costo: 300*12+200*4+700*4+100*10+200*9+500*4 = $12.000
Método Rutas Costo
MEN 6 $14.200
MAV 6 $12.000
MCM 6 $12.000
Los tres métodos entregan soluciones básicas factibles,
pero ninguno asegura que la solución sea óptima.
Conclusión
2.1 Modelo de Transporte
34. 34
2.1.4. Método de Pasos Secuenciales
Este método comienza con una solución inicial factible.
En cada paso se intenta enviar artículos por una ruta que
no se haya usado en la solución factible actual, en tanto
se elimina una ruta usada actualmente.
En cada cambio de ruta debe cumplirse que:
1. La solución siga siendo factible y
2. Que mejore el valor de la función objetivo
El procedimiento termina cuando no hay cambio de rutas
que mejoren el valor de la función.
Fundamento
2.1 Modelo de Transporte
35. 35
2.1.4. Método de pasos secuenciales (cont..)
Usar la solución actual (MEN, MAV o MCM) para crear una
trayectoria única del paso secuencial. Usar estas trayectorias
para calcular el costo marginal de introducir a la solución
cada ruta no usada.
Si todos los costos marginales son iguales o mayores que
cero, terminar; se tendrá la solución óptima. Si no, elegir la
celda que tenga el costo marginal más negativo (empates se
resuelven arbitrariamente)
Usando la trayectoria del paso secuencial, determine el
máximo número de artículos que se pueden asignar a la ruta
elegida en el punto 2 y ajustar la distribución adecuadamente.
Regrese al paso 1
Algoritmo
1
2
3
4
2.1 Modelo de Transporte
36. 36
2.1.4. Método de pasos secuenciales (cont..)
a) Ponga un signo + en la celda de interés no ocupada
b) Ponga un signo - en una celda usada de la misma fila
c) Ponga un + en una celda usada de la misma columna
El proceso continúa alternando los signos + y - tanto en las filas
como en las columnas hasta que se obtenga una sucesión de
celdas (trayectoria) que satisfagan dos condiciones
1. Hay un signo + en la celda desocupada original de interés, y
2. Cualquier fila o columna que tenga un signo + debe tener
también un signo - y viceversa.
Algoritmo Paso 1
2.1 Modelo de Transporte
48. 48
2.1.4. Método de pasos secuenciales (cont..)
Algoritmo Paso 2: Determinar costos marginales
Todas rutas son no negativas (positivas o cero)
Solución factible óptima!!! $12.000
Compare esta solución con la obtenida con MAV y MCM ¿ ...?
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
300 +2 200 0 100 500
2 6 4 10 11
+1 700 +13 +12 0 700
3 10 9 12 4
100 200 +10 500 0 800
Demanda 0 400 0 900 0 200 0 500 2000
2.1 Modelo de Transporte
49. 49
2.1.5. Método de Distribución Modificada (DIMO)
Algoritmo
1. Usar la solución actual (NE, MAV o MCM) y las siguientes
operaciones (a) y (b) para determinar el costo marginal de enviar
material para cada una de las rutas no usadas.
Asociar a cada fila un índice ui y a cada columna un índice vj
a) Hacer u1 = 0. Encuéntrese los índices de las filas u2, ..., um y los
índices de las columnas v1, ...., vn tales que cij = ui + vj para cada
celda usada.
b) Sea eij = cij - (ui+vj) para cada celda no usada; eij será el costo
marginal de introducir la celda (ruta) i, j a la solución.
Los pasos 2 a 4 son los mismos que en el método secuencial.
2.1 Modelo de Transporte
50. 50
2.1.5. Método de Distribución Modificada (DIMO)
Aplicar el algoritmo al problema en estudio y
comparar resultados obtenidos con los métodos
anteriores
Comentar resultados
¿Qué explica que existan dos soluciones
óptimas factibles?
2.1 Modelo de Transporte
52. 52
2.1.5. Método de Distribución Modificada (DIMO)
Paso1.a) Solucionar la ecuación
Existen 6 ecuaciones y siete variables entonces se hace u1 = 0
(puede ser cualquiera) y se determina el resto de los índices
v1 = 12 v2 = 13 u2 = - 9 u3 = -4 v3 = 16 v4 = 8
Paso 1.b) Calcular los costos marginales para cada celda no usada.
eij = cij - (ui + vj)
2.1 Modelo de Transporte
62. 62
2.1.5. Método de Distribución Modificada (DIMO)
Paso 2: Prueba de Optimalidad.
No hay costos negativos por lo tanto es óptima
VO = 300*12+200*4+700*4+100*10+200*9+500*4=$12.000
Plantas
Puertos 1 2 3 4 Oferta
1 12 13 4 6
300 0 200 0 100 500
2 6 4 10 11
1 700 13 12 0 700
3 10 9 12 4
100 200 10 500 700 800
Demanda 0 400 0 900 200 500 2000
Ver Transporte RPG Equilibrio
2.1 Modelo de Transporte
63. 63
2.1.6. Modelo de Transporte: Situaciones Especiales
1. Solución en problemas de maximización de transporte
2. El caso en que la oferta excede a la demanda.
3. Eliminación de rutas inaceptables.
4. Degeneración en problemas de transporte.
5. Propiedades especiales del modelo de transporte
2.1 Modelo de Transporte
64. 64
2.1.6. Modelo de Transporte: Situaciones Especiales
1. Solución en problemas de maximización de transporte.
a) Se utilizan los beneficios marginales en lugar de los costos.
Se asignará unidades a la celda que tenga el mayor valor
marginal y el procedimiento concluirá cuando todas las rutas
tengan valores marginales negativos.
b) Convertir la tabla de beneficios en una tabla de costo: Se
busca el beneficio mayor, en cada celda se le resta al mayor
el beneficio de la celda. Ejemplo:
2.1 Modelo de Transporte
65. 65
2.1.6. Modelo de Transporte: Situaciones Especiales
Tabla de beneficios
14 19 12
17 19 15
16 20 11
6 1 8
3 1 5
4 0 9
2
3
Destinos
Fuentes
1 2 3
1
Destinos
1 2 3
Fuentes
1
2
3
Mayor = 20
Tabla de costo
2.1 Modelo de Transporte
66. 66
2.1.6. Modelo de Transporte: Situaciones Especiales
2. El caso en que la oferta excede a la demanda.
Se utiliza un destino ficticio en la tabla de transporte. Se
considera como nulo el costo de enviar una unidad a dicho
destino desde cada una de las fuentes (orígenes).
Si la demanda es mayor que la oferta el problema no tiene
solución factible, sin embargo el administrador podría
abastecer toda la demanda que sea posible a un costo
mínimo.
Se utiliza un origen ficticio. El costo de abastecer cualquier
destino desde dicho origen será cero. Sin embargo podría
haber un cargo por orden no cubierta.
Ver Transporte RPG (O>D) y (O<D
2.1 Modelo de Transporte
67. 67
2.1.6. Modelo de Transporte: Situaciones Especiales
3. Eliminación de rutas inaceptables.
Se asocia a una ruta no aceptable un costo lo suficientemente
alto para que no sea atrayente la ruta en cuestión. El costo M
Por ejemplo: producir en abril para vender en febrero del mismo
año.
4. Degeneración en problemas de transporte.
Se dice que un problema se degenera cuando hay menos de
m + n - 1 rutas ocupadas. Esto puede ocurrir cuando
simultáneamente se satisface una demanda y se agota una
oferta.
Ver Transporte RPG (inaceptable)
2.1 Modelo de Transporte
68. 68
2.1.6. Modelo de Transporte: Situaciones Especiales
5. Propiedades especiales del modelo de transporte
Todo problema de transporte es posible resolverlo mediante
algoritmos que usan sólo la adición y la sustracción.
Si todas las ofertas y demandas tienen valores enteros en un
problema de transporte, los valores óptimos de las variables
de decisión serán también enteros.
2.1 Modelo de Transporte
69. 69
Ejercicios
Suponer que se tienen tres fábricas M1, M2 y M3 que producen
39, 48 y 33 toneladas respectivamente, de un cierto producto
que debe llevarse a cuatro destinos, D1, D2, D3 y D4, los cuales
requieren 40, 37, 18 y 25 toneladas.
Los costos están dados por la siguiente tabla:
2.1 Modelo de Transporte
1
D1 D2 D3 D4
M1 2 3 1 2
M2 1 4 7 6
M3 8 9 4 5
70. 70
Planificación de la producción:
2.1 Modelo de Transporte
2
Periodo Capacidad de Producción
Máxima (unidades)
Demanda a
satisfacer
Costo de
Producción ($)
Costo de
Almacenaje ($)
1 1200 900 15 1.2
2 800 800 18 1.4
3 1100 1000 17 1.1
4 900 700 20 1.5
¿Cuánto hay que producir en cada periodo para satisfacer la
demanda al mínimo costo (tanto de producción como de
almacenaje)?.
Supuesto: No existe inventario inicial ni final.
Plantear el problema usando el modelo de transporte.
Encuentre las respuestas usando Solver.
71. 71
Situación:
Asignar m trabajos (o trabajadores) a n máquinas.
Un trabajo i (=1, 2, 3 ,...,m) cuando se asigna a la máquina
j (=1,2,....,n) incurre en un costo cij.
El objetivo es asignar los trabajos a las máquinas uno a uno
al menor costo.
La formulación de este problema puede considerarse como
un caso especial del modelo de transporte.
2.2 Modelo de Asignación
72. 72
Descripción
Los trabajos representan las “fuentes” y las máquinas los
“destinos”
La oferta disponible en cada fuente es 1 como también lo
es la demanda en cada destino.
cij es el costo de transportar (asignar) el trabajo i a la
máquina j
El costo puede representar también características de
competencia de cada trabajador
73. 73
Descripción
En el caso que un trabajo no deba ser asignado
(porque no cumple con los requisitos) a una máquina
(actividad) en particular, este costo debe tener un
valor alto (M)
En el caso de existir desequilibrio, esto es, más
trabajos que máquinas o más máquinas que trabajos,
hay que equilibrar con máquinas o trabajos figurados
(ficticios), logrando de esta forma que m = n
74. 74
Expresión matemática del modelo
0, si el i-ésimo trabajo no se asigna a la j-ésima máquina
1, si el i-ésimo trabajo se asigna a la j-ésima máquina
Xij =
Máquina
1 2 ….. n
C11 C12 ….. C1n
C21 C22 ….. C2n
….. ….. ….. …..
Cn1 Cn2 ….. Cnn
1
2
…..
n
Trabajo
1
1
…..
1
1 1 ….. 1
75. 75
Por lo tanto el modelo está dado por:
minimizar z = ∑∑= =
n
i
n
j
ijij xc
1 1
sujeto a 1
1
=∑=
n
j
ijx i=1,2, ...,n
1
1
=∑=
n
i
ijx j=1,2,..n
xij = 0 ó bien 1
76. 76
Ejemplo:
La gerencia general de RPG (ejemplo de transporte) con sede
en Bruselas, este año, como parte de su auditoría anual, decidió
que cada uno de sus cuatro vicepresidentes visite e inspeccione
cada una de sus plantas de ensamblaje durante las primeras dos
semanas de junio. Las plantas están ubicadas en Leipzig
(Alemania), Nancy (Francia, Lieja (Bélgica) y Tilburgo
(Holanda).
Para decidir a que vicepresidente enviar a una planta
determinada, se asignaron puntospuntos (costos) a cada uno de ellos
de acuerdo a su experiencia, habilidades lenguísticas, tiempo
que durará la inspección y otros. Estos datos se muestran en la
siguiente tabla:
79. 79
Métodos de Solución
Existen varias formas de obtener la solución:
a) Listar todas las alternativas posibles con sus costos y seleccionar
la de menor costo (algoritmo exhaustivo)
b) Método Húngaro: método iterativo
a) Listar todas las alternativas:
¿Cuántas alternativas posibles existen?
- El primer trabajo se puede asignar de n formas formas posibles
- El segundo de n-1 formas
- El último sólo de 1 forma
En total existen n! formas de hacer la asignación completa
80. 80
Método Húngaro:
Paso 0: Construir la matriz de asignación
Para obtener la solución óptima cada nueva matriz de asignación
debe satisfacer:
Propiedad 1: Todos los números son no negativos
Propiedad 2: Cada fila y cada columna tiene al menos una celda con
un valor cero
Paso 1:
a) Reducción de filas:a) Reducción de filas: Restar el costo menor de cada fila a la fila
correspondiente y/o
b) Reducción de columnas:b) Reducción de columnas: Restar el costo menor de cada columna
a la columna correspondiente
Con esto se crea una nueva matriz con las propiedades 1 y 2
81. 81
Método Húngaro:
Paso 2: Determinar si la matriz es reducida (Prueba de Optimalidad).
Trazar el menor número de líneas rectas sobre las filas y columnas
para cubrir todos los ceros.
Si el número de rectas es igual al número de filas o columnas se dice
que esta matriz es reducida.
Si la matriz no es reducida pasar al paso 3, sino pasar al paso 4
82. 82
Método Húngaro:
Paso 3: Movimiento
De todas las celdas no cruzadas identifique una con el menor
valor y haga lo siguiente:
a) Restar el valor a cada celda no cruzada
b) Sumar el valor a cada celda de intersección de rectas
Volver al paso 2
83. 83
Método Húngaro:
Paso 4: Solución óptima (Asignación)
Primero se asigna a las que tengan sólo una alternativa, se van
marcando y así sucesivamente
Determinar el costo: Se suman todos los costos
correspondientes a las asignaciones (o sumar todos los pi y qj).
¿Qué valor se obtiene al sumar todos los valores que se restaron
en las reducciones de filas y columnas?
84. 84
Ejemplo: Aplique el método Húngaro al ejemplo
1 2 3 4 pi
F 24 10 21 11
M 14 22 10 15
O 15 17 20 19
P 11 19 14 13
qj
Paso 0: Matriz de Asignación
Nota: En negrita los menores de cada fila
85. 85
Paso 1: Reducción de filas y columnas
1 2 3 4 pi
F 14 0 11 1 10
M 4 12 0 5 10
O 0 2 5 4 15
P 0 8 3 2 11
qj 1
1 2 3 4 pi
F 14 0 11 0 10
M 4 12 0 4 10
O 0 2 5 3 15
P 0 8 3 1 11
qj 1
Filas
Columnas
86. 86
Paso 2: Determinar si la matriz es reducida
1 2 3 4 pi
F 14 0 11 0 10
M 4 12 0 4 10
O 0 2 5 3 15
P 0 8 3 1 11
qj 1
No es reducida: sólo tres rectas (para ser reducida deben ser 4)
Ir al paso 3
87. 87
Paso 3: Movimiento (Seleccionar el menor: restar a las
no tachadas, sumar a las intersecciones)
1 2 3 4 pi
F 14 0 11 0 10
M 4 12 0 4 10
O 0 2 5 3 15
P 0 8 3 1 11
qj 1
1 2 3 4 pi
F 15 0 12 0 10
M 4 11 0 3 10
O 0 1 5 2 15
P 0 7 3 0 11
qj 1 + 1
Volver al paso 2 !!
88. 88
Iteración paso 2:
1 2 3 4 pi
F 15 0 12 0 10
M 4 11 0 3 10
O 0 1 5 2 15
P 0 7 3 0 11
qj 1 + 1
Se tachan todos los ceros con cuatro rectas, por tanto es óptima
Ir al paso 4 !!
89. 89
Paso 4: Asignación
1 2 3 4 pi
F 15 0 12 0 10
M 4 11 0 3 10
O 0 1 5 2 15
P 0 7 3 0 11
qj 1 + 1
Costo = c12 + c23 + c31 +c44
= 10+10+15+13 = 48
∑∑ += ji qpCosto
=10 + 10 + 15 + 11 + 1 + 1 = 48
Ver Asignación RPG
90. 90
Modelo de Asignación: Otras consideraciones
El modelo de asignación de RPG es un modelo de minimización
en el cual el número de vicepresidentes es igual al número de
plantas, y todas las asignaciones posibles son aceptables.
Consideremos ahora modelos tipo asignación donde no todas las
condiciones anteriores se cumplen. En particular se considerarán
situaciones en las que:
1 Hay una desigualdad entre el número de “personas” por
asignar y el número de “destinos” que requieren personas
asignadas.
2 Hay un modelo de maximización
3 Existen asignaciones inaceptables
91. 91
Modelo de Asignación: Otras consideraciones
1. Ofertas y demandas desiguales
a) Oferta mayor que la demanda
Suponer que el presidente de RPG quiere auditar a la planta de
Tilburgo, por tanto tendrá que decidir cual de los cuatro
vicepresidentes debe asignar a cada una de las tres plantas
restantes.
Solución: Se elimina la restricción que requería un
vicepresidente para Tilburgo. El resultado de este cambio es que
la holgura para uno de los cuatro vicepresidentes será 1 en la
nueva solución óptima
Ver Asignación RPG (O>D)
92. 92
Modelo de Asignación: Otras consideraciones
1. Ofertas y demandas desiguales
b) Demanda mayor que la oferta
Suponer que el vicepresidente de Personal tiene que viajar a
Illinois durante la primer semana de junio, por lo tanto no puede
participar en la auditoría en Europa.
Solución: Se agrega un vicepresidente ficticio (igual al modelo
de transporte) para obtener una solución factible, pero es claro
que una de las plantas quedará sin auditar.
93. 93
Modelo de Asignación: Otras consideraciones
2. Hay un modelo de maximización
La respuesta de asignación es un beneficio y no un costo
Ejemplo: Suponga que RPG tiene que asignar vendedores a sus
territorios de venta.
Existen cuatro personas bien capacitadas listas para ser
asignadas y tres territorios requieren un nuevo vendedor. Uno
de los vendedores no será asignado.
En este caso la asignación de un vendedor cualquiera a un
territorio se mide por el incremento marginal esperado en la
contribución de dicha asignación a las ganancias.
94. 94
Modelo de Asignación: Otras consideraciones
2. Hay un modelo de maximización
La matriz de ganancia es la siguiente
Contribución del
Vendedora
Territorio
1
Territorio
2
Territorio
3
A 40$ 30$ 20$
B 18$ 28$ 22$
C 12$ 16$ 20$
D 25$ 24$ 27$
Ver Asignación Vendedores RPG
95. 95
Modelo de Asignación: Otras consideraciones
3. Situaciones con asignaciones inaceptables
Ejemplo: Suponga que el presidente de RPG no tiene
el menor deseo de que el vicepresidente de
Operaciones realice una auditoría a la Planta Nancy.
Solución: Asignar un costo arbitrariamente alto a esta
“ruta”, de tal modo que al restar de él cualquier
número finito se obtiene siempre un valor mayor que
otros números relevantes
Ver Asignación RPG inaceptable
96. 96
2.3 Modelo de Transbordo
Este modelo permite que las unidades no vayan
directamente desde un origen a un destino, sino
que pasen por nodos intermedios o transitorios.
Cada origen, punto intermedio y destino final se representan
como nodos y se conectan a través de arcos dirigidos
Restricción en cada nodo transitorio:
suma flujos entrantes = suma flujos saliente
También se puede representar por medio de una matriz donde
un mij = 1 cuando existe un enlace directo entre el nodo i y el
nodo j; y mij = 0 cuando no hay enlace directo entre estos nodos
97. 97
Modelo de Transbordo: Algoritmo
Inicialización: Encuentre un plan de embarque factible que
satisfaga todas las restricciones de suministro y demanda, al
mismo tiempo que mantiene un equilibrio en todos los nodos
de transbordo.
Prueba de Optimalidad: Pruebe el plan de embarque actual
para ver si es óptimo, es decir, si es el plan que incurre en los
costos totales mínimos. Si es así, deténgase con la solución
óptima, sino vaya al paso 3.
Movimientos: Use el hecho de que el plan de embarque
actual no es óptimo para crear un nuevo plan de embarque
factible con menos costo total que el actual. Vaya al paso 2.
1
2
3
98. 98
Consideraciones:
• Los pasos del algoritmo son análogos a los del algoritmo de
pasos sucesivos (escalón).
• Tanto los nodos origen como los destinos pueden ser a su vez
nodos de transbordo.
• Al igual que el modelo de transporte, puede haber desequilibrio,
en ese caso se agregan fuentes o destinos ficticios con costo cero.
• El numero total del sistema está dado por el total de la oferta o de
la demanda.
• A cada nodo de transbordo se asigna un suministro (demanda)
igual a su suministro (demanda) original (cero, si no coincide
originalmente con un destino) más el total de unidades del
sistema. Esto permite que todas las unidades puedan pasar por un
empalme dado.
99. 99
Ejemplo 1:
Determínese un programa de embarque que cubra todas las
demandas a un costo mínimo total para los datos
correspondientes al siguiente grafo (costo en $).
3 4
2
4
3
7 2
1 3 5
2 4 6
+95 -30
+70
+15
-30 -45
8
100. 100
Solución
• Los sitios 1 y 2 son orígenes
• Los sitios 5 y 6 son destinos
• El sitio 3 es origen y empalme
• El sitio 4 es destino y empalme
• La oferta es mayor que la demanda por tanto se requiere un
destino ficticio que demande 75 unidades
• Agregar 180 unidades a cada empalme (oferta y demanda)
• El costo de las unidades que van de un empalme (como origen)
a él mismo (como destino) y de cualquier origen al sitio ficticio
es cero.
• A las rutas no permitidas se les asocia un valor relativamente
alto (por 1.000)
103. 103
Ejemplo 2:
Una corporación necesita transportar 70 unidades de un producto, del sitio 1 a
los sitios 2 y 3 en cantidades de 45 y 25 unidades, respectivamente. Las tarifas
cij (en miles de pesos por unidad) de carga aérea entre los sitios comunicados
por carguero se dan en la tabla, en la cual las líneas punteadas indica que no hay
servicio disponible. Determínese un programa de embarque que asigne el
número requerido de artículos a cada destino, a un costo mínimo de transporte.
Ningún embarque requiere de vuelo directo, se permiten los envíos empleando
puntos intermedios.
1 2 3 4
1 .... 38 56 34
2 38 ... 27 ...
3 56 27 ... 19
4 34 ... 19 ...
106. 106
2.4. Modelos de Redes
2.4.1 Teoría de Grafos
2.4.2 Modelo de la Ruta más corta
2.4.3 Modelo del Árbol Expandido Mínimo
2.4.4 Problema del Flujo Máximo
107. 107
2.4.1 Introducción a la Teoría de Grafos
Grafo no dirigido:
Un grafo no dirigido G consiste en un conjunto V de vértices
(o nodos) y un conjunto E de lados (ramas o enlaces) tales que
cada lado e ε E está asociado a un par no ordenado de vértices
v y w. Si un lado e está asociado a un único par de vértices v y
w, entonces e= (v,w) o e=(w,v).
Grafo dirigido:
Un grafo dirigido (o digrafo) G consiste en un conjunto V de
vértices (o nodos) y un conjunto E de lados (o ramas) tales que
cada lado e ε E está asociado a un par ordenado de vértices. Si
un lado e está asociado a un par ordenado único de vértices v y
w, se escribe e = (v,w).
108. 108
2.4.1 Introducción a la Teoría de Grafos
Se dice que un lado e = (v,w) de un grafo (dirigido o no dirigido) es
incidente en v y w. Se dice que los vértices v y w son incidentes
en e y también son vértices adyacentes.
Si G es un grafo (dirigido o no dirigido) con un conjunto de vértices
V y un conjunto de lados E, se escribe G = (V,E)
Nodo (Vértice):
Un círculo de una red utilizada para representar una planta,
almacén o tienda.
Nodo de Suministro:
Nodo desde le cual los productos se van a enviar.
109. 109
2.4.1 Introducción a la Teoría de Grafos
Nodo de demanda:
Nodo que va a recibir los productos para cumplir con una
demanda conocida.
Nodo de transbordo:
Nodo que recibe productos desde otros nodos para su
distribución.
Arco (enlace):
Línea de una red que conecta un par de nodos. Se le utiliza para
representar una ruta válida desde el nodo origen al nodo de
distribución.
110. 110
2.4.1 Introducción a la Teoría de Grafos
Arco dirigido:
Indica el sentido de movimiento de los productos.
Camino:
Una secuencia de nodos en una red unidos por arcos (dirigidos o
no dirigidos)
Trayectoria (lazo):
Es un camino cerrado (ciclo) donde el primer nodo es a su vez el
último.
111. 111
2.4.1 Introducción a la Teoría de Grafos
Representación Matricial
i) Matriz de Adyacencia
ii) Matriz de costo (beneficio)
Representación de un grafo:
Un grafo se puede representar matemáticamente como:
a) Una matriz
b) Una lista enlazada
c) Árbol
112. 112
2.4.1 Introducción a la Teoría de Grafos (cont.)
Matriz de Adyacencia:
Para un grafo G, es una matriz A de dimensión NxN,
donde A[i,j] es verdadero (1) si, y sólo si, existe un arco
que vaya del vértice i al vértice j. En ausencia de arco
directo se representa generalmente por 0.
Ejemplo:Dado el siguiente grafo encontrar su matriz de
adyacencia
114. 114
2.4.1 Introducción a la Teoría de Grafos (cont.)
Matriz de Costo:
Para un grafo G etiquetado, es una matriz C de dimensión
NxN, donde A[i,j] es el costo (valor de la etiqueta) si, y
sólo si, existe un arco que vaya del vértice i al vértice j.
En ausencia de arco directo se representa generalmente
por infinito (costo extremadamente alto, para la
simulación se hace uso de un valor fuera de contexto).
Ejemplo:Dado el siguiente grafo encontrar su matriz de costo
115. 115
2.4.1 Introducción a la Teoría de Grafos (cont.)
2
3
4
1
1 2 3 4
1 10 15
2 12
3 20
4 5
10
15 20 12
5
116. 116
2.4.1 Introducción a la Teoría de Grafos (cont.)
Para un grafo no dirigido, tanto la matriz de adyacencia
como la matriz de costo son simétricas, esto es:
A[i,j] = A[j,i]
ó
C[i,j] = C[j,i]
117. 117
Ejemplo Introductorio
Seymour Miles es el gerente de distribución de Zigwell. Zigwell
distribuye sus motores oruga en cinco estados del medio oeste. Por lo
regular, Seymour Miles tiene 10 aparatos E-9 in situ en lo que
designaremos como local 1. Estos tractores deben ser enviados a los
dos locales de construcción más importantes designados como 3 y 4.
Se necesitan tres E-9 en el local 3 y siete en el local 4. Debido a
itinerarios arreglados con anterioridad, relativos a la disponibilidad
de conductores, los tractores solo pueden ser distribuidos de acuerdo
con las rutas alternativas que se muestran en el grafo de la figura.
La figura tiene un número +10 en el nodo 1, esto significa que hay 10
aparatos E-9 disponibles (oferta). Los indicadores -3 y -7 asociados a
los locales 3 y 4, respectivamente, denotan los requerimientos
(demandas) de éstos.
119. 119
Los costos cij son unitarios. Por ejemplo el costo de
recorrer el arco (5,3) es c53 por cada tractor.
Debido a los acuerdos sostenidos con los conductores,
Zigwell debe cambiarlos en cada local que se encuentre
sobre la ruta. Las limitaciones en la disponibilidad de
conductores ocasionan que haya una cota superior en el
número de tractores que pueden recorrer cualquier arco
dado.
Por ejemplo: u53 es la cota superior o capacidad en el arco
(5,3).
El problema de Sygmour consiste en encontrar un plan de
embarque que satisfaga la demanda y las restricciones de
capacidad a costo mínimo.
120. 120
El problema en particular se conoce como modelo
de transbordo con capacidades.
Expresar el problema como un PL
a) Variables de decisión
xij = número total de E-9 que se enviarán a través
del arco (i,j).
= flujo del nodo i al nodo j
121. 121
b) Función Objetivo
MIN Z =C12X12+C23X23+C24X24+C25X25+C34X34+C43X43+C53X53+C54X54
la red(i,j) deartodos loscx ijij cos,0 ≤≤
c) Restricciones
s a
+ X12 = 10
- X12+X23+X24+X25 = 0
-X23 -X43 -X53 +X34 = -3
-X24 +X43 -X34 -X54 = -7
-X25 +X53 +X54 = 0
Balance
de
flujo
123. 123
Formulación General del Modelo de Transbordo con Capacidades
Xij denotan el flujo del nodo i al nodo j a lo largo del arco que
conecta esos nodos.
Lj representa la oferta en el nodo j
ijij ij xc∑
s.a.
minimice
njLxx jk kjk jk ,....,2,1, ==− ∑∑
la red(i,j) deartodos loscx ijij cos,0 ≤≤
125. 125
2.4.2 Modelo de la Ruta más corta
Se pueden dar dos casos para representar la red:
Como grafo no dirigido
Como grafo dirigido
Situaciones:
a
b
Cualquiera que sea el caso corresponde
a grafos ponderados (con peso)
126. 126
2.4.2 Modelo de la Ruta más corta
Considerénse todos los nodos que estén directamente
conectados con el origen. Etiquetarlos con la distancia al
origen y su nodo predecesor. Etiquetas temporales,
[distancia, nodo].
De entre todos los nodos con etiquetas temporales,
escoger el que tenga la distancia menor y se marca como
permanente. Si todos están con etiquetas permanentes se
va al paso cuatro.
a) Algoritmo: Grafo no dirigido
1
2
127. 127
2.4.2 Modelo de la Ruta más corta (GND)
Todo nodo que no tenga etiqueta permanente, tendrá etiqueta
temporal o estará sin etiqueta. Sea L el último nodo con
etiqueta permanente. Considerénse todas las etiquetas de los
vecinos de L (directamente conectados a L mediante un
arco). Para cada uno de estos nodos calcúlese la suma de su
distancia a L. Si el nodo en cuestión no está etiquetado,
asígnese una etiqueta temporal que conste de esta distancia y
de L como predecesor. Si el nodo en cuestión ya tiene
etiqueta temporal, cámbiese sólo si la distancia recién
calculada es menor que la componente de distancia de la
etiqueta actual. En este caso, la etiqueta contendrá esta
distancia y a L como predecesor. Regresar al paso 2
3
Algoritmo:
128. 128
2.4.2 Modelo de la Ruta más corta (GND)
Las etiquetas permanentes indican la distancia más corta
entre el nodo origen a cada nodo de la red. También indican
el nodo predecesor en la ruta más corta hacia cada nodo. Para
encontrar el camino más corto de un nodo dado, comiéncese
en él y retroceda al nodo anterior. Continuar con el recorrido
hasta llegar al origen.
Algoritmo:
4
129. 129
2.4.2 Modelo de la Ruta más corta (GND)
Ejemplo: Para el siguiente grafo encontrar la distancia más corta
desde el nodo H al resto de los nodos.
H
1
2
3
4
5
6
7
8
4
1
1
1
1
2
2
7
6
3
3
3
130. 130
2.4.2 Modelo de la Ruta más corta (GND)
Solución:
H
1
2
3
4
5
6
7
8
4
1
1
1
1
2
2
7
6
3
3
3
(8,H)
(4,H)
(5,1)
(6,3)
(8,2)
(6,3)
(9,4)
(9,7)
ó
1:Ver ejemplo 1 Ruta mas corta 2: Hacer problema 19 guía 2 (Ejemplo 2 Ruta mas corta
132. 132
2.4.2 Modelo de la Ruta más corta (GD)
Es una técnica exhaustiva, esto es, prueba todas las alternativas
posibles.
Opera a partir de un conjunto S de vértices cuya distancia más
corta desde el origen ya es conocida. Inicialmente S contiene sólo
el nodo de origen. En cada paso se agrega algún vértice restante v
a S, cuya distancia desde el origen es la más corta posible.
Para cada paso del algoritmo, se utiliza una matriz D para
registrar la longitud del camino más corto a cada vértice.
b) Algoritmo de Dijkstra
133. 133
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
INICIO
0) V = {1, 2, 3, 4, ..., n}
1) S = {1} // nodo 1 se supone que es el origen
2) Para i=2 Hasta n Hacer
3) Di = C1i
4) Para i=1 Hasta n-1 Hacer
5) Elegir un vértice w en V-S tal que Dw sea un mínimo
6) agregar w a S
7) Para cada vértice v en V-S Hacer
SI ((Dw+Cwv)<Dv)
//Pv = w
Dv = Dw+Cwv
8) //Dv=mínimo(Dv,Dw+Cwv)
FIN
134. 134
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
Ejemplo: Aplicar el algoritmo al siguiente grafo dirigido
10
100
60
50
30
10
2
1
3 4
5
20
135. 135
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
Inicial
0) V = {1, 2, 3, 4, 5}
1) S = {1}
2)
3) D2 = 10, D3 = inf, D4=30, D5 = 100
4) Iterar 4 veces
5) Seleccionar nodo con distancia más corta de V-S,
En el ejemplo es el nodo 2
Iteración S w D2 D3 D4 D5
Inicial {1} -- 10 inf 30 100
136. 136
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
6) Agregar el nodo 2 a S : S = {1,2}
7) Iterar |V-S|, (V-S = {3,4,5})
D3=mínimo(D3,D2+C23) =mínimo(inf,10+50) = 60
D4=mínimo(D4,D2+C24) =mínimo(30,10+inf) = 30
D5=mínimo(D5,D2+C25) =mínimo(100,10+inf) = 100
Iteración S w D2 D3 D4 D5
Inicial {1} -- 10 inf 30 100
1 {1,2} 2 10 60 30 100
137. 137
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
2a Iteración
V-S = {3,4,5}
5) w = 4
6) S = {1,2,4}
7) Iterar |V-S| V-S = {3,5}
D3=mínimo(D3,D4+C43) =mínimo(60,30+20) = 50
D5=mínimo(D5,D4+C45) =mínimo(100,30+60) = 90
Iteración S w D2 D3 D4 D5
Inicial {1} -- 10 inf 30 100
1 {1,2} 2 10 60 30 100
2 {1,2,4} 4 10 50 30 90
138. 138
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
3a Iteración
V-S = {3,5}
5) w = 3
6) S = {1,2,4,3}
7) Iterar |V-S| (V-S = {5})
D5=mínimo(D5,D3+C35) =mínimo(90,50+10) = 60
Iteración S w D2 D3 D4 D5
Inicial {1} -- 10 inf 30 100
1 {1,2} 2 10 60 30 100
2 {1,2,4} 4 10 50 30 90
3 {1,2,4,3} 3 10 50 30 60
139. 139
2.4.2 Modelo de la Ruta más corta (GD) Algoritmo de Dijkstra
4a Iteración
V-S = {5}
5) w = 5
6) S = {1,2,4,3,5}
7) Iterar |V-S| (V-S = {})
Iteración S w D2 D3 D4 D5
Inicial {1} -- 10 inf 30 100
1 {1,2} 2 10 60 30 100
2 {1,2,4} 4 10 50 30 90
3 {1,2,4,3} 3 10 50 30 60
4 {1,2,4,3,5} 5 10 50 30 60
Tabla Final
140. 140
¿Cuál es el camino?
Para conocer el camino hay que incluir otra matriz P de
vértices, tal que Pv contenga el vértice inmediato anterior a v
en el camino más corto.
Se asigna a Pv valor inicial 1 para todo v ≠ 1
La matriz P se actualiza después de la línea 8.
Si Dw + Cwv < Dv en la línea 8, después se hace Pv = w
Al término de la corrida del algoritmo, el camino a cada
vértice puede encontrarse regresando por los vértices
predecesores de la matriz P
141. 141
¿Cuál es el camino?
Para el ejemplo, la matriz P debe tener los valores
P2 =1, P3 = 4, P4 = 1, P5 = 3
Para encontrar el camino más corto del vértice 1 al 5, se siguen
los predecesores en orden inverso.
3 es el predecesor de 5
4 es el predecesor de 3
1 es el predecesor de 4
142. 142
Problema de los caminos más cortos entre
todos los pares de nodos
Para visualizar el problema se emplea un grafo dirigido G =
(V,A) en el que cada arco v→ w tiene un costo no negativo
Cv,w. El problema consiste en encontrar el camino de longitud
más corta (menor costo) entre v y w para cada par ordenado de
vértices (v,w).
Algoritmo de Floyd
Se utiliza una matriz A, donde Aij = Cij para toda i≠ j, si no
existe camino directo entre i y j se supone que Cij = inf. Cada
elemento de la diagonal se hace cero.
143. 143
Problema de los caminos más cortos entre todos los pares de nodos
Después se hacen n iteraciones en la matriz A.
Al final de la k-ésima iteración Aij tendrá por valor la longitud
más pequeña de cualquier camino que vaya desde el vértice i
hasta el vértice j y que no pase por un vértice mayor que k.
Esto es, i y j, los vértice extremos del camino, pueden ser
cualquier vértice, pero todo vértice intermedio debe ser menor
o igual a k.
En la k-ésima iteración se aplica la siguiente fórmula para
calcular A
k-1Aij
kAij = min
k-1Aik + k-1Akj
144. 144
Problema de los caminos más cortos entre todos los pares de nodos
Para calcular Aij, se compara k-1Aij, el costo de ir de i a j sin
pasar por k o cualquier otro nodo con numeración mayor, con
k-1Aik + k-1Akj, el costo de ir primero de i a k y después de k a j,
sin pasar a través de un vértice mayor que k. Si el paso por el
vértice k produce un camino más económico que el de k-1Aij, se
elige ese costo para kAij.
k-1
Aik
k-1Aij
k-1
Akj
i
k
j
145. 145
Problema de los caminos más cortos entre todos los pares de nodos
Algoritmo de Floyd // Se supone que se cuenta con la matriz de costo C
0) INICIO
1) Desde i = 1 Hasta N
2) Desde j = 1 Hasta N
3) Aij ← Cij
4) Desde i = 1 Has ta N
5) Aii = 0
6) Desde k = 1 Hasta N
7) Desde i = 1 Hasta N
8) Desde j = 1 Hasta N
9) SI (Aik + Akj < Aij)
10) Aij = Aik + Akj
11) FIN
146. 146
Problema de los caminos más cortos entre todos los pares de nodos
Recuperación de caminos para el Algoritmo de Floyd
Cuando es de interés conocer el camino más corto
entre dos vértices, hay que consignarlo en una matriz
P, donde Pij tiene el vértice k que permitió a Floyd
encontrar el valor menor de Aij. Si Pij es cero, el
camino de i a j es directo.
147. 147
Problema de los caminos más cortos entre todos los pares de nodos
Algoritmo de Floyd Modificado
0) INICIO
1) Desde i = 1 Hasta N
2) Desde j = 1 Hasta N
3) Aij ← Cij
3) Pij ← 0
4) Desde i = 1 Has ta N
5) Aii = 0
6) Desde k = 1 Hasta N
7) Desde i = 1 Hasta N
8) Desde j = 1 Hasta N
9) SI (Aik + Akj < Aij)
10) Aij ← Aik + Akj
10) Pij ← k
11) FIN
148. 148
Problema de los caminos más cortos entre todos los pares de nodos
Ejemplo: Aplique Floyd al grafo ponderado mostrado en la
figura
1 2 3
2
8
3
2
5
149. 149
Problema de los caminos más cortos entre todos los pares de nodos
Solución:
Tabla Inicial
Nodos 1 2 3
1 0 8 5
2 3 0 inf
3 inf 2 0
0Aij
150. 150
Problema de los caminos más cortos entre todos los pares de nodos
Solución:
Después de la primera iteración
1Aij
Nodos 1 2 3
1 0 8 5
2 3 0 8
3 inf 2 0
151. 151
Problema de los caminos más cortos entre todos los pares de nodos
Solución:
Después de la segunda iteración
2Aij
Nodos 1 2 3
1 0 8 5
2 3 0 8
3 5 2 0
152. 152
Problema de los caminos más cortos entre todos los pares de nodos
Solución:
Después de la tercera iteración
3Aij
Nodos 1 2 3
1 0 7 5
2 3 0 8
3 5 2 0
153. 153
2.4.3 Modelo de árbol extensión mínima
Un árbol es un grafo que tiene sus n nodos (vértices)
conectados (conexo) con n-1 arcos (aristas), no
existiendo ciclos (caminos cerrados)
Definición 1
Definición 2 Un árbol de expansión de costo mínimo es aquel en que
todos los enlaces tienen longitudes (costos) mínimas
154. 154
Algoritmo para el problema del árbol de expansión mínima.
Método Gráfico
Se selecciona un nodo cualquiera y se conecta al
nodo más cercano a éste.
Se identifica el nodo no conectado más cercano a
un nodo conectado y se conectan estos dos nodos
Empates se deciden en forma arbitraria. Los
empates indican que existen soluciones
alternativas para la construcción.
1
2
Nota:
157. 157
Algoritmo tabular
Paso Acción
0 Se construye la tabla de costos de enlaces
1 Se comienza arbitrariamente con cualquier nodo. Se designa a
este nodo como conectado y se pone una marca al lado de la
fila correspondiente al nodo. Se tacha el índice de la columna
que corresponde a él.
2 Considerando todas las filas marcadas, buscar el mínimo en las
columnas cuyo índice aún no haya sido tachado encerrándolo
en un círculo. Designándose de esta manera el nuevo nodo
conectado. Se tacha el índice de la columna y pone una marca
en la fila correspondiente a este nodo. Se repite este paso hasta
que todos los nodos estén conectados.
3 Los nodos encerrados en círculo identifican el árbol.
163. 163
2.4.4 Problema del Flujo Máximo
En este problema hay un solo nodo fuente (nodo de
entrada) y un solo nodo destino (nodo de salida), y el
resto son nodos de transbordo. El problema consiste en
encontrar la máxima cantidad de flujo total (petróleo,
gas, efectivo, mensajes, tránsito, etc.) en una unidad de
tiempo.
La cantidad de flujo por unidad de tiempo en cada arco
está limitada por las restricciones de capacidad.
Este problema se puede representar como una red
dirigida y conexa.
Descripción
164. 164
Para cada nodo interno debe cumplirse que:
flujo que sale del nodo = flujo que entra al nodo
En términos formales, siendo 1 la fuente y n el
destino el problema consiste en:
MAX f
f si i = 1
sujeto a si i = n
0 en otro caso
0 ≤ xij ≤ uij, para todos (i,j) de la red
xij : flujo por unidad de tiempo por el arco (i,j)
uij : capacidad del arco (i,j)
f : flujo total a través de la red
Descripción
fxx
j
ji
j
ij −=− ∑∑
165. 165
Considérese la i-ésima restricción, para algún
valor fijo de i, La suma se considera
sobre toda j para la cual el arco (i,j) con i fijo,
pertenezca a la red. Entonces, será el flujo
total que sale del nodo i. En forma semejante, la
suma se considera sobre toda j para la cual
exista el arco (j,i) en la red, (i fijo). De modo que
es el flujo que entra al nodo i
Descripción
∑j
ijx
∑j
jix
∑j
ijx
166. 166
Antes de hacer la presentación formal del
algoritmo, revisemos el siguiente ejemplo.
Algoritmo
6
6
6
2
4
4
3
2
1
6
1
2
3
4
5
167. 167
Grafo inicial: Inicialización delos flujos en cada nodoAlgoritmo
Consideremos un camino desde el nodo 1 al nodo 6
Ejemplo: 1-2-5-6
4
0
0
0
0
0
0
0
0
6
4
1
6
2
3
2
6
0
2
3
4
5
61
168. 168
Se dice que la cantidad de flujo a lo largo de dicho
recorrido es factible si:
No excede la capacidad de ningún arco del camino
Con excepción de los nodos 1 y 6, el flujo en cada nodo
debe satisfacer la condición de conservación
1
2
La cantidad máxima que puede fluir desde la fuente a lo
largo de un camino es igual a la menor de las
capacidades de los arcos de dicho camino
Al asignar un flujo a un arco nos atendremos a las reglas:
1
2
Se reduce la capacidad en la dirección del flujo (cantidad de flujo)
Se aumenta la capacidad en sentido opuesto (cantidad de flujo)
169. 169
Ejemplo: Considerar el arco 1-2
Asignar dos unidades a este arco:
Aplicando las reglas 1 y 2 se tiene
Se generó una capacidad ficticia en la dirección 2-1
Enviar una unidad de 2 a 1
1 2
(2 )
22
1 2
4 0
1 2
(1 )
13
170. 170
Algoritmo
Inicializar cada nodo del grafo con capacidades uij en
la dirección del flujo y cero en la dirección opuesta.
Encontrar cualquier camino de la fuente a destino que
tenga capacidad de flujo positiva, si no los hay, se
habrá encontrado la solución óptima.
Sea cmin la capacidad mínima de flujo entre los arcos
seleccionados en el paso 1, se aumenta el flujo
existente a través de la red al enviar un flujo adicional
cmin para todos los arcos del camino.
Para todos los arcos del camino, disminúyanse las
capacidades en la dirección del flujo y auméntese las
capacidades en la dirección opuesta en cmin. Volver al
paso 1
Inicial
1
2
3
175. 175
Cálculo de la cantidad de flujo en cada arco
Se determina comparando la capacidad inicial de cada arco
con la capacidad inicial. Para cada arco la regla es:
Si la capacidad final es menor que la capacidad inicial,
calcular la diferencia. Esta es la cantidad del flujo a través
del arco.
Ejemplo: Arco 3-5
Inicial
Final 22
3 5
04
3 5
Final < inicial entonces el flujo es 4-2=2
176. 176
Aplicando la regla anterior a todos los arcos se tiene el
siguiente grafo:
6
6
6
2
4
2
8
2
8
4
1
2
3
4
5
178. 178
3 Administración de Proyectos (PERT y CPM)
1. ¿Cuándo sería lo más pronto que el proyecto pudiera estar
terminado?
2. Para cumplir con este tiempo de conclusión, ¿qué tareas son
críticas, en el sentido de que un retraso en cualquiera de esas
tareas provoca un retraso en la conclusión del proyecto?
3. Es posible acelerar ciertas tareas para terminar todo el proyecto
más pronto?. Si es así, ¿qué tareas serán éstas y cuál sería el
costo adicional?
Todo proyecto debe ser comprobado y controlado, dado que éste
tiene involucrado numerosas tareas interrelacionadas.
A través de algunas técnicas se puede responder a preguntas como:
179. 179
Técnica de Evaluación de Proyectos (PERT,
Program Evaluation and Review Technique): Método
utilizado para administrar proyectos en que los
tiempos requeridos para terminar las tareas
individuales son inciertos (probabilísticos).
Método de la Ruta Crítica (CPM, Critical Path
Method): Método utilizado para administrar
proyectos en que los tiempos requeridos para
terminar las tareas individuales se conocen con
relativa certeza (determinísticos).
180. 180
3.1 Desarrollo de la Red de Proyectos
1. Identifique las tareas individuales que componen el proyecto
2. Obtenga una estimación del tiempo de conclusión de cada
tarea.
3. Identifique las relaciones entre las tareas. ¿Qué tareas deben
concluirse antes de que otras puedan iniciarse?
4. Dibuje un diagrama de red de proyecto para reflejar la
información de los pasos 1 y 3
Para determinar el tiempo de conclusión de un proyecto puede
usar los siguientes pasos:
181. 181
Ejemplo:
Traslado de las oficinas de una ciudad a otra
El directorio ha fijado un plazo máximo de 22
semanas para la mudanza
Actividad Descripción
Prdecesoras
inmediatas
Tiempo Recursos
A Elegir local de oficinas -
B Crear el plan financiero y de -
C
Determinar requerimientos
de personal
B
D Diseño de local A, C
E Construir el interior D
F Elegir personal a mudar C
G
Contratar nuevos
empleados
F
H
Mudar registros, personal
clave, etc.
F
I
Hacer arreglos finacieros de
la organización
B
J Entrenar personal nuevo H, E, G
182. 182
Construcción del diagrama de Red:
1
2
3
4
A
B C
¿Cómo agregamos la actividad D?. Sus
predecesoras inmediatas son A y C,
además C es predecesora directa de F
183. 183
Actividades Ficticias (figurada):
Es una actividad artificial que no requiere tiempo y que se
incluye en una red de proyecto para asegurar la relación de
precedencia correcta entre ciertas tareas.
Generalmente se representan por líneas segmentadas.
Se usan sólo para reflejar las relaciones de precedencia
adecuadas
2
4
A
C
184. 184
Volviendo al ejemplo: Agregando el resto de las actividades a la red
finalmente se tiene
1
2
3
4
5
6
7
8
A
B
C
D
E
F
G
H
I
J
185. 185
Siguiendo con el ejemplo: G y H tienen como predecesora inmediata
F, además ambas son predecesoras de J, agregar actividad ficticia.
1
2
3
4
5
6
7
8
A
B
C
D
E
F
G
H
I
J
9
Red Final
Fic
186. 186
Ruta Crítica: Dar cumplimiento al plazo límite
Se requiere de las estimaciones de tiempo de cada actividad (supuestos)
Actividad Descripción
Prdecesoras
inmediatas
Tiempo Recursos
A Elegir local de oficinas - 3
B
Crear el plan financiero y de
organización
- 5
C
Determinar requerimientos
de personal
B 3
D Diseño de local A, C 4
E Construir el interior D 8
F Elegir personal a mudar C 2
G
Contratar nuevos
empleados
F 4
H
Mudar registros, personal
clave, etc.
F 2
I
Hacer arreglos finacieros de
la organización
B 5
J Entrenar personal nuevo H, E, G 3
187. 187
Retomando el ejemplo: Agregando los tiempos a las actividades
1
2
3
4
5
6
7
9
A
B
C
D
E
F
G
H
I
J
(3)
(5)
(3)
(4)
(8)
(2)
(4)
(2)
(5)
(3)
8
Fic
188. 188
Cálculo de la ruta crítica: Tiempo de término del proyecto
Definiciones
Tiempo de inicio más inmediato: El tiempo
más cercano en que una tarea posiblemente
pueda iniciarse (TI)
Tiempo de término más breve: El tiempo más
corto en el que una tarea posiblemente pueda
concluir (TT)
189. 189
Reglas a cumplir: Dado que en el proyecto existen tareas
predecesoras es necesario conocer cuando
termina una y cuando empieza la otra:
Regla
1. Para calcular el TI de una tarea se debe conocer los TT de cada
tarea predecesora inmediata
2. El TI más inmediato de una tarea de la que se conocen los
tiempos de término más breves de todas sus tareas
predecesoras inmediatas es el máximo de todos esos tiempos
de término más breves.
3. Tiempo de término más breve = (tiempo de inicio más
inmediato) + (tiempo de tarea(t))
190. 190
Pasos para determinar los TI y TT más inmediatos:
Paso
0
1
Identificar el nodo de inicio de la red del proyecto
Calcule y escriba en cada arco saliente
a) TI más cercano, esto es, 0
b) El TT más breve de acuerdo a la regla 3
TT más breve = (TI más inmediato) + (t)
= 0 + t
Seleccionar cualquier nodo donde todos los arcos
entrantes han sido etiquetados con sus TI y TT
191. 191
Pasos para determinar los TI y TT más inmediatos:
Paso
2 Para el nodo seleccionado en el paso 1 calcule y registre
en cada arco saliente
a) El TI más breve de acuerdo a la regla 2
TI más breve = MAXIMO(TT de los arcos entrantes)
b) El TT más breve de acuerdo a la regla 3
TT más breve = TI más inmediato + t
192. 192
Cálculo de TI y TT:
1
2
3
4
5
6
7
9
A[0,3]
B[0,5]
C[5,8]
D[8,12]
E[12,20]
F[8,10]
G[10,14]
H[10,12]
I[5,10]
J[20,23]
8
Fic
193. 193
Identificación de las tareas críticas:
Para identificar las tareas críticas hay que realizar un
recorrido hacia atrás hasta el inicio del proyecto,
analizando cada tarea.
1. Último Tiempo de término: Lo más tarde que puede
concluirse una tarea, en tanto permita que el proyecto se
complete lo más pronto posible
2. Último tiempo de inicio: Lo más tarde que pueda
iniciarse una tarea, pero finalizando dentro de su tiempo
de término.
3. Tarea sucesora: Una tarea para la que la tarea de interés
es una predecesora
194. 194
Identificación de las tareas críticas:
Para calcular el último tiempo de término (UTT) de una
tarea particular, debe conocer los últimos tiempos de
inicio (UTI) de cada tarea sucesora inmediata.
Respecto a una tarea de la que se conocen los últimos
tiempos de inicio de todas sus tareas sucesoras
inmediatas, el último tiempo de término (UTT) de esa
tarea es el mínimo de los últimos tiempos de inicio de
todas las tareas sucesoras inmediatas
UTI = UTT- t
Regla
4
5
6
195. 195
Identificación de las tareas críticas:
Pasos para calcular los últimos tiempos de inicio y término
0
1
2
3
Identificar el final del proyecto. Calcular y escribir en cada arco
entrante:
a) Último tiempo de término del proyecto
b) Último tiempo de inicio (Regla 6): UTI=UTT-t
Seleccione un nodo, cuyos arcos salientes hayan sido etiquetados
todos con sus UTI y UTT
Para el nodo seleccionado (paso 1) calcule y escriba lo siguiente
a) UTT= MIN(UTI arcos salientes), (regla 5)
b) UTI=UTT - t (regla 6)
Repetir pasos 1 y 2 hasta cubrir toda la red del proyecto
196. 196
Identificación de las tareas críticas:
Cálculo de UTT y UTI para cada actividad
Iteración 2
Actividad ficticia UTT = 20
UTI = 20-0 = 20
Actividad I UTT = 23
UTI = 23-5 = 18
Nodo 7 Actividad E UTT = 20
UTI = 20-8 = 12
UTT = 20
UTI = 20-2 = 18
Iteración 1
Actividad H
Nodo 9 Actividad J UTT = 23
UTI = 23-3 = 20
198. 198
Identificación de las tareas críticas:
Holgura: Es la cantidad de tiempo que puede demorar una
actividad sin afectar la fecha de término del proyecto.
El valor de la holgura para cada actividad está dada por:
holgura = TI - UTI = TT - UTT
Ejemplo:
Actividad C: TI = 5, UTI = 5, TT = 8, UTT = 8
Holgura = 5 - 5 = 8 - 8 = 0
Actividad I: TI = 5, UTI = 18, TT = 10, UTT = 23
La actividad C tiene holgura 0, por tanto no puede
retrasarse, en cambio la actividad I tiene 13 semanas de
holgura que permite retrasar su inicio.
199. 199
Identificación de las tareas críticas:
Resumen de los tiempos de las actividades del proyecto:
Actividad Tiempo Inicio Término Inicio Término Holgura
A 3 0 3 5 8 5
B 5 0 5 0 5 0
C 3 5 8 5 8 0
D 4 8 12 8 12 0
E 8 12 20 12 20 0
F 2 8 10 14 16 6
G 4 10 14 16 20 6
H 2 10 12 18 20 8
I 5 5 10 18 23 13
J 3 20 23 20 23 0
Tiempo más próximo de: Tiempo más lejano de:
Tiempo de ejecución del proyecto: 23 semanas
200. 200
Identificación de las tareas críticas:
Actividad crítica es aquella que tiene holgura cero
Ruta crítica es una secuencia de tareas (actividades) críticas que
conecta el principio del proyecto con el fin
En nuestro ejemplo:
Actividades críticas: B, C, D, E y J
Ruta crítica: Nodos 1-3-2-5-7-9
Actividades B-C-D-E-J
201. 201
Formas de Reducir la duración del proyecto:
1. Análisis Estratégico
Aquí el analista se pregunta: “¿Este proyecto tiene que
desarrollarse en la forma programada actualmente?”. En
concreto, “¿Todas las actividades de la ruta crítica tienen que
realizarse en el orden especificado?”. ¿Podemos hacer arreglos
para efectuar algunas de estas actividades en forma distinta de
cómo aparecen en la ruta crítica?.
2. Enfoque Táctico
El analista presupone que el diagrama en curso es adecuado y
trabaja para reducir el tiempo de ciertas actividades de la ruta
crítica asignando mayores recursos. Por ejemplo tiempo, aumento
de mano de obra, etc.
202. 202
Formas de Reducir la duración del proyecto:
Para el ejemplo en estudio, el directorio estimó un
tiempo máximo de 22 semanas para realizar el
proyecto, y según el estudio se ha determinado que se
requieren 23 semanas, ¿Cómo soluciona Ud. el
problema?. Realice distintos supuestos válidos para su
solución. ¿Es única?.
203. 203
Formas de Reducir la duración del proyecto:
Alternativa de solución
Realizados algunos estudios los responsables de la mudanza, se
dan cuenta que la actividad J (entrenamiento de los nuevos
empleados) debe realizarse en el nuevo edificio (después de
completar la actividad E) y después de que el personal clave y
de registros se haya mudado (al completar la actividad H).
Estos requerimientos se podrían cambiar:
• Realizar J independientemente de H
• El entrenamiento realizarlo en otras dependencias a un costo
reducido y que estén listos para cuando se termine la
construcción. Esto requiere agregar otra actividad: Garantizar
recursos de entrenamiento, actividad K
204. 204
Formas de Reducir la duración del proyecto:
Con los cambios anteriores, es posible que la red
redefinida tenga una nueva ruta crítica con un tiempo
menor, aunque todavía insatisfactorio (mayor a las 22
semanas establecidas).
205. 205
Diagrama de red para el proyecto redefinido
1
2
3
4
5
6
7
9
A
B
C
D
E
F G
H
I
J
(3)
(5)
(3)
(4)
(8)
(2) (4)
(2)
(5)
(3)
8
K(3)
Fic
206. 206
Actualización de los tiempos para el proyecto redefinido
Actividad Tiempo Inicio Término Inicio Término Holgura
A 3 0 3 5 8 5
B 5 0 5 0 5 0
C 3 5 8 5 8 0
D 4 8 12 8 12 0
E 8 12 20 12 20 0
F 2 8 10 11 13 3
G 4 10 14 13 17 3
H 2 10 12 18 20 8
I 5 5 10 15 20 10
J 3 14 17 17 20 3
K 3 10 13 14 17 4
Tiempo más próximo de: Tiempo más lejano de:
Actividades ruta crítica: B-C-D-E
Duración del proyecto: 20 semanas
207. 207
3.3 PERT: Variabilidad en los tiempos de Actividades
Hasta ahora hemos trabajado asumiendo que los
tiempos de duración de las actividades eran
determinísticos, en consecuencia TI, TT, UTI y UTT
también fueron deducidos como deterministas. Como
este supuesto no siempre es correcto, PERT emplea
una fórmula especial para estimar los tiempos de las
actividades.
PERT requiere de alguien que conozca bien una
actividad en cuestión, para producir tres estimaciones
del tiempo de ésta.
208. 208
PERT: Variabilidad en los tiempos de Actividades
1. Tiempo optimista (denotado por a): el tiempo
mínimo. Todo tiene que marchar a la perfección.
2. Tiempo más probable (denotado por m): el tiempo
que se necesita en circunstancias ordinarias.
3. Tiempo pesimista (denotado por b): el tiempo
máximo. Situación que se da en el peor caso.
209. 209
PERT: Variabilidad en los tiempos de Actividades
Ejemplo: Para la actividad E (8 semanas). Al
examinar en detalle el proyecto de construcción del
interior se llegó a las siguientes estimaciones:
a = 4
m = 7
b = 16
Para estimar el valor esperado y la desviación estándar de
los tiempos de la actividad, se asume que el tiempo de la
actividad es una variable aleatoria que tiene una
distribución de probabilidad unimodal beta.
210. 210
PERT: Variabilidad en los tiempos de Actividades
4 7 8 16
a m b
Estimación del tiempo esperado
de actividad o tiempo promedio 6
4 bma
te
++
=
Estimación de la desviación
estándar del tiempo de la actividad 6
ab −
=σ
Distribución beta
211. 211
PERT: Variabilidad en los tiempos de Actividades
Estimación de tiempo
Actividad a m b te desv est varianza
A 1,0 3,0 5,0 3,0 0,667 0,444
B 3,0 4,5 9,0 5,0 1,000 1,000
C 2,0 3,0 4,0 3,0 0,333 0,111
D 2,0 4,0 6,0 4,0 0,667 0,444
E 4,0 7,0 16,0 8,0 2,000 4,000
F 1,0 1,5 5,0 2,0 0,667 0,444
G 2,5 3,5 7,5 4,0 0,833 0,694
H 1,0 2,0 3,0 2,0 0,333 0,111
I 4,0 5,0 6,0 5,0 0,333 0,111
J 1,5 3,0 4,5 3,0 0,500 0,250
K 1,0 3,0 5,0 3,0 0,667 0,444
212. 212
PERT: Variabilidad en los tiempos de Actividades
Cálculo del tiempo esperado de finalización de proyectos
Una vez determinado el tiempo promedio de cada
actividad, se puede calcular el tiempo de finalización
más temprano esperado para el proyecto completo.
Se determinan los tiempos de inicio y de término más
cercano, como también los tiempos de término y de
inicio más lejano. Con estos tiempos se determina la
holgura en cada actividad, para finalmente determinar la
ruta crítica, exactamente igual como se hizo para tiempo
determinista.
213. 213
PERT: Variabilidad en los tiempos de Actividades
Probabilidad de concluir el proyecto a tiempo
El análisis procede de la siguiente forma:
1. Sea T el tiempo total que durarán las actividades de la ruta
crítica.
2. Encuéntrese la probabilidad de que el valor de T resulte menor
o igual que cualquier valor específico de interés. Para el
ejemplo en estudio buscaríamos T ≤ 22 semanas.
Una buena aproximación de esta probabilidad se encuentra
aceptando dos supuestos:
a) Los tiempos de actividad son variables aleatorias
independientes.
b) La variable T tiene una distribución aproximadamente
normal.
214. 214
PERT: Variabilidad en los tiempos de Actividades
La meta es encontrar P{T ≤ 22}, donde T es el tiempo a lo largo
de la ruta crítica.
Estadísticas de la ruta crítica:
22
2
2
1 ... nT σσσσ +++=Desviación estándar
iσ
:iσ Desviación estándar de i-ésima
actividad de la ruta crítica
T : es el tiempo esperado (promedio)
215. 215
Estimación de terminación del proyecto
Uso de la tabla de distribución normal, entonces
debemos calcular Z para llegar a determinar la
probabilidad.
σ
µ−
=
x
Z
216. 216
Cálculos caso en estudio
Ruta crítica: B- C- D y E
T = 20 (tiempo esperado, promedio calculado, µ)
x = 22 (tiempo exigido)
357,2
555,5
4444,0111,01
2
2
22222
=
=
+++=
+++=
T
T
T
EDCBT
σ
σ
σ
σσσσσ
217. 217
Cálculos caso en estudio
Z = 0,8485
En la tabla de Z
P(Z≤ 0,8485) = 0,80
357,2
2022 −
=Z
218. 218
Matriz de Encadenamiento
Una matriz de encadenamiento, es una matriz de NxN (N es la
cantidad de actividades) donde cada celda se marca con una X si
la actividad de la fila requiere que esté terminada la actividad de
la columna. Esta matriz ayuda a la construcción de la red CPM
Para el ejemplo en estudio es:
A B C D E F G H I J
A
B
C X
D X X
F X
G X
H X
I X
J X X X
219. 219
3.4 CPM: TRUEQUE ENTRE TIEMPO Y COSTO
CPM considera que el tiempo extra (costo) puede reducir el
tiempo de término de una actividad, y en consecuencia reducir el
tiempo total del proyecto
Compra de tiempo:
CPM usa dos estimaciones: tiempo y costo normal, a lo que se
agregará tiempo y costo intensivo
Se asume que estas estimaciones son lineales:
Tiempo
Esfuerzo normal
Esfuerzo intensivo
Costo
220. 220
Debido a las estimaciones de CPM se puede obtener dos redes
extremas:
1. Red de costo normal
2. Red de costo intensivo
¿Todas las actividades deben realizarse en forma intensiva?
3. Red de tiempo mínimo—costo mínimo
CPM: Trueque entre el costo y el tiempo
Red de tiempo mínimo – costo mínimo
221. 221
1. Comenzar con la red normal e ir reduciendo los tiempos de
término hasta un mínimo.
2. Comenzar con la red de todo intensivo y “desintensificar”
actividades para reducir el costo sin afectar el tiempo total.
3. Comenzar con la ruta crítica de la red de todo intensivo con
un tiempo mínimo, pero con todas la demás actividades
normales. Después reducir las otras trayectorias como sea
necesario.
¿Todos son igualmente eficaces?
CPM: Trueque entre el costo y el tiempo
Enfoques para encontrar red de tiempo mínimo – costo
mínimo
222. 222
CPM: Trueque entre el costo y el tiempo
Enfoque: Red normal y reducción de tiempos
Proyecto: Construcción de una casa
Actividad Precedencia Normal Intensivo Normal Intensivo ∆ Costo
A (1,2) ninguna 4 3 1.400 2.000 600
B (2,3) A 2 1 1.500 2.000 500
C (2,4) A 3 1 1.500 2.500 1.000
D (2,7) A 1 1 600 600 --
Fic(3,4) 0 0 -- -- --
E (4,5) B, C 3 2 1.300 2.000 700
F (4,6) B, C 2 1 300 500 200
G (5,7) E 2 1 800 1.200 400
H (6,7) F 2 1 600 1.000 400
Tiempo (semanas) Costo (miles $)
223. 223
CPM: Trueque entre el costo y el tiempo
Paso 1: Red del proyecto
2
3
6
5
7
E(3)
G(2)
H(2)
D(1)
1
F(2)
4
C(3)
Si consideramos la convención actividad-flecha, el grafo del
proyecto es:
B(2)
A(4)
224. 224
CPM: Trueque entre el costo y el tiempo
Paso 2: Tiempos de Inicio y de Término, holgura y ruta crítica
2
3
6
5
7
B(2)[4,6]
(0)[6,6]
G(2)[10,12]
H(2)[9,11]
[10,12]
1
F(2)[7,9]
4
C(3)[4,7]
En el grafo se muestran los tiempos de inicio y de término más
próximos y los más lejanos, y la ruta crítica. El tiempo mínimo
para la ruta crítica es de 12 semanas a un costo normal de $8.000.
A(4)[0,4]
0
0 0
E(3)[7,10]
0
12 12
D(1)[4,5]
[8,10][4,7]
[5,7]
[7,7]
[0,4]
[7,10]
[10,12]
[11,12]
225. 225
CPM: Trueque entre el costo y el tiempo
Paso 2: Tabla de tiempos próximos y lejanos
Tiempo Tiempo más próximo de: Tiempo más lejano de:
Actividad Normal Inicio Término Inicio Término Holgura
A (1,2) 4 0 4 4 4 0
B (2,3) 2 4 6 5 7 1
C (2,4) 3 4 7 4 7 0
D (2,7) 1 4 5 1 12 7
E (4,5) 3 7 10 7 10 0
F (4,6) 2 7 9 8 10 1
G (5,7) 2 10 12 10 12 0
H (6,7) 2 9 11 10 12 1
Actividades
críticas
226. 226
CPM: Trueque entre el costo y el tiempo
Paso 3: “Intensificar” actividades ruta crítica
a) Actividad A: de 4 a 3 semanas ( 600)
b) Actividad C: de 3 a 1 semana (1.000)
c) Actividad E: de 3 a 2 semanas ( 700)
d) Actividad G: de 2 a 1 semana ( 400)
¿Es posible hacer estas reducciones?
227. 227
CPM: Trueque entre el costo y el tiempo
Reducción de Actividades ruta crítica
2
3
6
5
7
B(2)[4,6]
G(2
1)
H(2)[9,11]
1
F(2)[7,9]
4
C(3 1)
La ruta crítica disminuyó a 7 semanas, ¿seguirá manteniéndose
como tal?. No
Hay que ver si es posible reducir las actividades paralelas a la ruta
crítica inicial, sólo hasta igualar tiempos.
A(4 3)
0
0 0
E(3
2)
0
D(1)[4,5]
228. 228
CPM: Trueque entre el costo y el tiempo
Paso 4: “Intensificar” actividades que no están en la
ruta crítica (“paralelas”)
a) Actividad B (paralela a C): de 2 a 1 semana (500)
b) ¿Actividad F o H? (¿o ambas?). En este caso sólo F: de 2 a 1
semana (200)
c) Actividad D: No requiere reducción
229. 229
CPM: Trueque entre el costo y el tiempo
Paso 4: Resumen de las reducciones
Costo
Actividad Acción Adicional Normal Total
A (1,2) 1 semana 600 1.400 2.000
B (2,3) 1 semana 500 1.500 2.000
C (2,4) 2 semanas 1000 1.500 2.500
D (2,7) ----- 600 600
E (4,5) 1 semana 700 1.300 2.000
F (4,6) 1 semana 200 300 500
G (5,7) 1 semana 400 800 1.200
H (6,7) ----- 600 600
$ 8.000 $ 11.400
230. 230
CPM: Trueque entre el costo y el tiempo
Grafo final
2
3
6
5
7
B(1)[3,4]
(0)[4,4]
G(1)[6,7]
H(2)[5,7]
[5,7]
1
F(1)[4,5]
4
C(1)[3,4]
En el grafo se muestran los tiempos de inicio y de término más
próximos y los más lejanos, y la ruta crítica. El tiempo mínimo
para la ruta crítica es de 7 semanas a un costo normal de $11.400.
A(3)[0,3]
0
0 0
E(2)[4,6]
0
7 7
D(1)[3,4]
[4,5][3,4]
[5,7]
[7,7]
[0,3]
[4,6]
[6,7]
[6,7]
231. 231
¿Qué sucede si un proyecto lleva más tiempo del especificado?
¿Conviene hacer más “intensivo” el proyecto o pagar la
penalización por atraso?
Ejemplo:
Suponga que en el proyecto de la casa hay una penalización de
$450 por cada semana de tiempo extra después de ocho semanas.
¿Cuál es la red óptima?.
Solución: Reducir la red en una semana cada vez e ir
comparando si los costos por intensificar son menores a los
costos por penalización. Se termina cuando los costos de
penalización son mayor a los costos de intensificar.
CPM: Trueque entre el costo y el tiempo
Red óptima
232. 232
1. Reducir una semana (de 12 a 11 semanas)
De la red normal analizar ruta crítica
Actividades Incremento de Costo
A 600
C 500
E 700
G 400
Conclusión: Intensificar 1 semana la actividad G
(400<450).
2. Intentar reducir una segunda semana (de 11 a 10)
Todos los costos incrementales de la ruta son mayores a la
penalización. Intentar por las vías paralelas.
No hay rutas alternativas cuya reducción implique un costo
menor al de penalización.
CPM: Trueque entre el costo y el tiempo
Red óptima
233. 233
CPM: Trueque entre el costo y el tiempo
Solución
2
3
6
5
7
B(2)
G(1)
H(2)
1
F(2)
4
C(3)
Grafo resultante
A(4)
E(3)
D(1)
Conviene hacer intensivo el proyecto hasta la semana 11 y
pagar las penalizaciones por las semanas de atraso
Costo total = Costo intensivo + costo penalización
= (8.000 + 400) + 3*450 = $9.650
234. 234
CPM: Trueque entre el costo y el tiempo
Ejemplo
a) Dibuje la red. Con los tiempos normales de las actividades,
encuéntrese la duración total del proyecto y la ruta crítica.
b) Supóngase que el proyecto se debe completar en un tiempo mínimo.
¿Cuál es el menor costo para el proyecto, es decir, cuál es la red de
tiempo mínimo—costo mínimo?
c) ¿Cuál es el costo mínimo para terminar el proyecto en 17 meses?
d) El departamento de comercialización dice que cada mes que el
proyecto se pase de 15 meses le cuesta a la firma $5.000. ¿Cuál es el
costo y duración óptimo del proyecto?
Suponga que un proyecto de investigación tiene las siguientes
estimaciones:
Actividad Normal Intensivo Normal Intensivo
A (1,2) 8 4 20.000 30.000
B (1,3) 9 6 18.000 27.000
C (2,3) 3 2 12.000 17.000
D (2,4) 10 7 25.000 34.000
E(3,4) 6 4 15.000 23.000
Tiempo (meses) Costo (miles $)
235. 235
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
a) Identificación de Variables de decisión
Están relacionadas directamente con el tiempo a reducir en
cada tarea
Yi: Tiempo (horas, días, ..) a reducir de la i-ésima actividad
YA: Número de semanas en las cuales acortar la actividad A
b) Función Objetivo
El objetivo es minimizar los recursos adicionales totales
requeridos para satisfacer el tiempo de término del proyecto.
Para el ejemplo en estudio, en la tabla de especificaciones
agregamos dos columnas: Tiempo máximo a reducir por tarea
y el costo adicional por semana intensiva
236. 236
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Por lo tanto la función es:
MIN Z = 600YA+500YB+500YC+700YE+200YF+400YG+400YH
Actividad Precedencia Normal Intensivo Normal Intensivo
A (1,2) ninguna 4 3 1.400 2.000 1 600
B (2,3) A 2 1 1.500 2.000 1 500
C (2,4) A 3 1 1.500 2.500 2 500
D (2,7) A 1 1 600 600 0 --
Fic(3,4) 0 0 -- -- 0 --
E (4,5) B, C 3 2 1.300 2.000 1 700
F (4,6) B, C 2 1 300 500 1 200
G (5,7) E 2 1 800 1.200 1 400
H (6,7) F 2 1 600 1.000 1 400
Tiempo (semanas) Costo (miles $) Reducción
máxima
Costo por
semana
237. 237
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
c) Identificación de las restricciones
Para el ejemplo, se pueden agrupar en dos grupos
1. La cantidad máxima de tiempo en el cual se puede acortar
cada actividad.
2. El tiempo de término del proyecto (en este caso 12 semanas)
Para el grupo 1, lo que se necesita son las cotas superiores
sobre las variables de decisión (YA, YB, YC, YE, YF, YG, YH)
dada por la columna “Reducción máxima) de la tabla anterior.
238. 238
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Restricciones de Límite
0<=YA<= 1 (límite de A)
0<=YB<= 1 (límite de B)
0<=YC<= 2 (límite de C)
0<=YD<= 0 (límite de D)
0<=YE<= 1 (límite de E)
0<=YF<= 1 (límite de F)
0<=YG<= 1 (límite de G)
0<=YH<= 1 (límite de H)
239. 239
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Restricciones del grupo 2 están en función de nuevas variables que
expresan cuando las actividades que salen de un determinado
evento pueden comenzar. Requiere conocer cuando terminan
todas las actividades que llegan al evento. Dependen de Yi
X1 : tiempo en que todas las actividades que salen del evento 1 pueden comenzar
X2 : tiempo en que todas las actividades que salen del evento 2 pueden comenzar
......
X7 : tiempo en que todas las actividades que salen del evento 7 pueden comenzar
Además el proyecto debe comenzar en el tiempo 1 y terminar a lo más en 12
semanas
X1 = 0
X7 ≤ 12
240. 240
CPM: Trueque entre el costo y el tiempo
2
3
6
5
7
E(3)
G(2)
H(2)
D(1)
1
F(2)
4
C(3)
Asociando las variables a la red tenemos:
(2-YB)
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
A(4)
B(2)
(4-YA) (3-YC) (2-YF)
(1-YD)
(2-YH)
(3-YE) (2-YG)(0)
X1 X2
X3
X4
X5
X6
X7
241. 241
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Nodo 2
Tiempo de inicio de las tareas que salen del nodo 2 ≥ tiempo de
terminación de todas las tareas que entran al nodo 2
Tiempo de inicio de las tareas B, C y D ≥ (tiempo de terminación
de la tarea A + (tiempo acortado de la tarea A)
X2 ≥ X1 + (4-YA)
Nodo 3
Tiempo de inicio de las tareas que salen del nodo 3 ≥ tiempo de
terminación de todas las tareas que entran al nodo 3
Tiempo de inicio de la tarea Ficticia ≥ (tiempo de terminación de
la tarea B + (tiempo acortado de la tarea B)
X3 ≥ X2 + (2-YB)
242. 242
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Nodo 4
Tiempo de inicio de las tareas que salen del nodo 4 ≥ tiempo de
terminación de todas las tareas que entran al nodo 4.
Hay dos arcos que entran al nodo, las actividades E y F deben
comenzar sólo cuando las tareas que entran (C y la ficticia) hayan
terminado. Dando origen así a dos restricciones (una por cada
actividad)
Restricción de la actividad C
Tiempo de inicio de las tareas E y F ≥ tiempo de terminación de
la tarea C
Tiempo de inicio de las tareas E y F ≥ (tiempo de terminación de
la tarea C + (tiempo acortado de la tarea C)
X4 ≥ X2 + (3-Yc) (tarea C)
243. 243
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Nodo 4
Restricción de la actividad Ficticia
Tiempo de inicio de las tareas E y F ≥ tiempo de terminación de
la tarea figurada
Tiempo de inicio de las tareas E y F ≥ (tiempo de terminación de
la tarea Figurada + (tiempo acortado de la tarea Figurada)
X4 ≥ X3 + 0 (tarea Figurada)
Aplicando sistemáticamente el procedimiento y se escribe una
restricción para cada actividad se obtienen las siguientes
restricciones para los nodos 5 al 7
244. 244
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
Nodo 5
X5 ≥ X4 + (3-YE) (actividad E)
Nodo 6
X6 ≥ X4 + (2-YF) (actividad F)
Nodo 7
X7 ≥ X5 + (2-YG) (actividad G)
X7 ≥ X6 + (2-YH) (actividad H)
245. 245
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
MIN Z = 600YA+500YB+500YC+700YE+200YF+400YG+400YH
Sujeto a:
Restricciones de Límite
0<=YA<= 1 (límite de A)
0<=YB<= 1 (límite de B)
0<=YC<= 2 (límite de C)
0<=YD<= 0 (límite de D)
0<=YE<= 1 (límite de E)
0<=YF<= 1 (límite de F)
0<=YG<= 1 (límite de G)
0<=YH<= 1 (límite de H)
246. 246
CPM: Trueque entre el costo y el tiempo
Modelo de PL para CPM (Tiempo mínimo—costo mínimo)
X1 = 0
X7 ≤ 12
X2 ≥ X1 + (4-YA) (tarea C)
X3 ≥ X2 + (2-YB) (tarea B)
X4 ≥ X2 + (3-Yc) (tarea C)
X4 ≥ X3 + 0 (tarea Figurada)
X5 ≥ X4 + (3-YE) (actividad E)
X6 ≥ X4 + (2-YF) (actividad F)
X7 ≥ X5 + (2-YG) (actividad G)
X7 ≥ X6 + (2-YH) (actividad H)
X1, ..., X7 ≥ 0
247. 247
Para su entretención
Ejercicios:
a) Existen 7 trayectorias en esta red. Encuéntrense todas.
b) Con tiempos normales, encuéntrese la longitud de cada trayectoria. ¿Cuál
es la ruta crítica?
c) ¿Cuál es el costo mínimo intensivo para reducir el proyecto a 39 días? ¿a
38 días? ¿a 37 días?
d) Encuéntrese la red de tiempo mínimo—costo mínimo.
La complejidad de las redes CPM está más afectada por las interrelaciones que
el número de nodos. Por ejemplo, considérese el proyecto siguiente:
Actividad Normal Intensivo Normal Intensivo
A (1,2) 8 7 10.000 12.000
B (1,3) 15 10 12.000 17.000
C (1,4) 12 6 13.000 14.000
D (2,3) 9 9 7.000 7.000
E (2,5) 11 9 2.000 4.000
F (3,6) 9 8 5.000 7.000
G (4,3) 9 7 14.000 16.000
H (4,7) 13 12 8.000 10.000
I (5,6) 7 5 6.000 10.000
J (5,8) 15 11 9.000 10.000
K (6,8) 10 5 3.000 8.000
L (7,6) 4 3 7.000 8.000
M (7,8) 12 9 5.000 6.000