Iopertivab

247
1 Unidad 2 Programación Lineal Aplicaciones

Transcript of Iopertivab

1

Unidad 2

Programación Lineal

Aplicaciones

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

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

2.1 Modelo de Transporte

Esquemáticamente se podría ver como se muestra en la siguiente

figura Destinos Fuentes

1 1

2 2

n m

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

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 a

2.1 Modelo de Transporte

6

Modelo general de PL que representa al modelo de Transporte

Modelo de transporte equilibrado: Oferta = Demanda

i

n

j

ij Sx1

j=1, 2, 3,....,n j

m

i

ij Dx1

i=1, 2, 3,....,m

0ijx para toda i y j

2.1 Modelo de Transporte

Solución del Modelo de

Transporte

2.1 Modelo de Transporte

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

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

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

11

Tabla Inicial

Destinos

Origen 1 2 3 4 n Ofertas

1 C11 C12 C13 C14 .... C1n

2 C21 C22 C23 C24 .... C2n

3 C31 C32 C33 C34 .... C3n

... .... ..... .... .... ....

m Cm1 Cm2 Cm3 Cm4 .... Cmn

Demanda

2.1 Modelo de Transporte

12

Tabla Inicial del Ejemplo

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

2.1 Modelo de Transporte

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

14

Primera asignación

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 500

2 6 4 10 11

700

3 10 9 12 4

800

Demanda 0 400 900 200 500 2000

2.1 Modelo de Transporte

15

Hasta cuarta asignación

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 700 800

Demanda 0 400 0 900 200 500 2000

2.1 Modelo de Transporte

16

Esquina Noroeste: Solución final factible

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 200 500 0 800

Demanda 0 400 0 900 200 500 2000

Valor FO: 400*12+100*13+700*4+100*9+200*12+500*4= $14.200

2.1 Modelo de Transporte

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

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

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

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

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

22

2.1.2 Método de aproximación de Vogel

Paso 4: Eliminar columna (fila) con demanda (oferta) 0

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

23

2.1.2 Método de aproximación de Vogel

Paso 5: Calcular los nuevos costos de penalidad

Plantas

Puertos 1 2 3 4 Oferta Penalidades

1 12 13 4 6 6

200 300 500

2 6 4 10 11 2

700

3 10 9 12 4 5

800

Demanda 400 900 0 200 500 2000

Penalidades 4 5 2

2.1 Modelo de Transporte

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

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

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_3 Paso 2

2.1 Modelo de Transporte

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

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 2 Paso 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

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 2 Paso 5

Paso 2: Ruta de costo menor -> 2_2

Unidades = MIN(700,900) = 300

Paso 3: Tachar fila2

2.1 Modelo de Transporte

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 2 Paso 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

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 2 Paso 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

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. Terminar Paso 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

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

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

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

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

37

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 1

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 200 500 0 800

Demanda 0 400 0 900 200 500 2000

Solución básica factible obtenida aplicando el método de la Esquina Noroeste

2.1 Modelo de Transporte

38

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 1

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 - + 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 + 200 - 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

Trayectoria 1: +C13-C12+C32-C33

2.1 Modelo de Transporte

39

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 1

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 - + 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 + 200 - 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

1: +(4)-(13)+(9)-(12)= -12 2: +(6)-(13)+(9)-(4) = -2

3: +(6)-(4)+(13)-(12)= 3 4: +(10)-(4)+(9)-(12) = 3

5: +(11)-(4)+(9)-(4) = 12 6: +(10)-(9)+(13)-(12)= 2

Costos de las Trayectorias

2.1 Modelo de Transporte

40

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 2

1: +(4)-(13)+(9)-(12)= -12 2: +(6)-(13)+(9)-(4) = -2

3: +(6)-(4)+(13)-(12)= 3 4: +(10)-(4)+(9)-(12) = 3

5: +(11)-(4)+(9)-(4) = 2 6: +(10)-(9)+(13)-(12)= 2

La solución factible NO es óptima !!

Se selecciona la trayectoria 1 (costo marginal más negativo)

2.1 Modelo de Transporte

41

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 3 (Generación de la nueva tabla)

¿Cuántas unidades se pueden asignar a la ruta elegida?

Acción Ruta Unidades disponibles en

celdas decrecientes

Aumentar 1 unidad 1_3

Disminuir 1 unidad 1_2 100

Aumentar 1 unidad 3_2

Disminuir 1 unidad 3_3 200

2.1 Modelo de Transporte

42

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 - 100 + 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

200 + 100 - 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

Paso 3 (Generación de la nueva tabla)

Costo: $13.000

2.1 Modelo de Transporte

43

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 4

Volver al Paso 1:

Para cada trayectoria evaluar costo marginal

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

200 100 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

2.1 Modelo de Transporte

44

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 2: Elección de CMg menor

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 +12 100 +10 100 500

2 6 4 10 11

-9 700 +3 +12 0 700

3 10 9 12 4

-10 200 100 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

La celda más negativa es c 31 (-10) y la trayectoria es:

C31 – C33 + C13 – C11

2.1 Modelo de Transporte

45

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 3 (Generación de la nueva tabla)

¿Cuántas unidades se pueden asignar a la ruta elegida?

Acción Ruta Unidades disponibles en

celdas decrecientes

Aumentar 1 unidad 31

Disminuir 1 unidad 33 100

Aumentar 1 nidad 13

Disminuir 1 unidad 11 400

2.1 Modelo de Transporte

46

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 3 (Generación de la nueva tabla)

Costo: $12.000

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

300 200 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 200 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

2.1 Modelo de Transporte

47

2.1.4. Método de pasos secuenciales (cont..)

Algoritmo Paso 4

Volver al Paso 1:

Para cada trayectoria evaluar costo marginal Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

300 200 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 200 500 0 800

Demanda 0 400 0 900 0 200 0 500 2000

2.1 Modelo de Transporte

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

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

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

51

2.1.5. Método de Distribución Modificada (DIMO)

Aplicación

Costo por

Ruta en uso motor ($) Ecuación

11 12 u1 + v1 = 12

12 13 u1 + v2 = 13

22 4 u2 + v2 = 4

32 9 u3 + v2 = 9

33 12 u3 + v3 = 12

34 4 u3 + v4 = 4

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 200 500 700 800

Demanda 0 400 0 900 200 500 2000

Paso 0: Asociar índices

ui

vj

2.1 Modelo de Transporte

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

53

2.1.5. Método de Distribución Modificada (DIMO)

Costos marginales para las celdas no usadas.

eij = cij - (ui + vj)

1) e13 = c13 - (u1 + v3)= 4 - (0 + 16) = -12

2) e14 = c14 - (u1 + v4)= 6 - (0 + 8) = -2

3) e21 = c21 - (u2 + v1)= 6 - (-9 + 13) = 2

4) e23 = c23 - (u2 + v3)= 10 - (-9 + 16) = 3

5) e24 = c24 - (u2 + v4)= 11 - (-9 + 8) = 12

6) e31 = c31 - (u3 + v1)= 10 - (-4 + 12) = 2

2.1 Modelo de Transporte

54

2.1.5. Método de Distribución Modificada (DIMO)

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 -12 -2 100 500

2 6 4 10 11

2 700 3 12 0 700

3 10 9 12 4

2 100 200 500 700 800

Demanda 0 400 0 900 200 500 2000

Paso 2: Prueba de Optimalidad.

Hay costos negativos por lo tanto no es óptima

La ruta de reasignación es: +C13 -C33 +C32 -C12 (más negativo, -12)

2.1 Modelo de Transporte

55

2.1.5. Método de Distribución Modificada (DIMO)

Paso 3: Asignación de unidades a la ruta elegida.

Unidades disponibles a mover:

Disminuir 1 unidad C12 100

Disminuir 1 unidad C33 200

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

400 100 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

200 100 500 700 800

Demanda 0 400 0 900 200 500 2000

2.1 Modelo de Transporte

56

2.1.5. Método de Distribución Modificada (DIMO)

Vuelta al Paso 1:

Costo por

Ruta en uso motor ($) Ecuación

11 12 u1 + v1 = 12

13 4 u1 + v3 = 4

22 4 u2 + v2 = 4

32 9 u3 + v2 = 9

33 12 u3 + v3 = 12

34 4 u3 + v4 = 4

Paso1.a) Solucionar la ecuación

Se hacer u1 = 0 y se determina el resto de los índices

v1 = 12 v2 = 1 v3 = 4 v4 = -4 u2 = 3 u3 = 8

Paso 1.b) Calcular los costos marginales para cada

celda no usada. eij = cij - (ui + vj)

2.1 Modelo de Transporte

57

2.1.5. Método de Distribución Modificada (DIMO)

Costos marginales para las celdas no usadas.

eij = cij - (ui + vj)

1) e12 = c12 - (u1 + v2)= 13 - (0 + 1) = 12

2) e14 = c14 - (u1 + v4)= 6 - (0 - 4) = 10

3) e21 = c21 - (u2 + v1)= 6 - (3 + 12) = -9

4) e23 = c23 - (u2 + v3)= 10 - (3 + 4) = 3

5) e24 = c24 - (u2 + v4)= 11 - (3 - 4) = 12

6) e31 = c31 - (u3 + v1)= 10 - (8 + 12) = -10

2.1 Modelo de Transporte

58

2.1.5. Método de Distribución Modificada (DIMO)

Paso 2: Prueba de Optimalidad.

Hay costos negativos por lo tanto no es óptima

La ruta de reasignación es: +C31 -C33 +C13 -C11

Plantas

Puertos 1 2 3 4 Oferta

1 - 12 13 + 4 6

400 19 100 1 100 500

2 6 4 10 11

0 700 3 12 0 700

3 + 10 9 - 12 4

-1 200 100 500 700 800

Demanda 0 400 0 900 200 500 2000

2.1 Modelo de Transporte

59

2.1.5. Método de Distribución Modificada (DIMO)

Paso 3: Asignación de unidades a la ruta elegida.

Unidades disponibles a mover:

Disminuir 1 unidad C11 400

Disminuir 1 unidad C33 100

Plantas

Puertos 1 2 3 4 Oferta

1 12 13 4 6

300 200 100 500

2 6 4 10 11

700 0 700

3 10 9 12 4

100 200 500 700 800

Demanda 0 400 0 900 200 500 2000

2.1 Modelo de Transporte

60

2.1.5. Método de Distribución Modificada (DIMO)

Vuelta al Paso 1:

Paso1.a) Solucionar la ecuación

u1 = 0 y se determina el resto de los índices

v1 = 12 v2 = 11 v3 = 4 v4 = 6 u2 = - 7 u3 = -2

Paso 1.b) Calcular los costos marginales para cada

celda no usada. eij = cij - (ui + vj)

Costo por

Ruta en uso motor ($) Ecuación

11 12 u1 + v1 = 12

13 4 u1 + v3 = 4

22 4 u2 + v2 = 4

31 10 u3 + v1 = 10

32 9 u3 + v2 = 9

34 4 u3 + v4 = 4

2.1 Modelo de Transporte

61

2.1.5. Método de Distribución Modificada (DIMO)

Costos marginales para las celdas no usadas.

eij = cij - (ui + vj)

1) e12 = c12 - (u1 + v2)= 13 - (0 + 11) = 2

2) e14 = c14 - (u1 + v4)= 6 - (0 + 6) = 0

3) e21 = c21 - (u2 + v1)= 6 - (-7 + 12) = 1

4) e23 = c23 - (u2 + v3)= 10 - (-7 + 4) = 13

5) e24 = c24 - (u2 + v4)= 11 - (-7 + 6) = 12

6) e33 = c33 - (u3 + v3)= 12 - (-2 + 4) = 10

2.1 Modelo de Transporte

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

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

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

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

Fuente

s

1 2 3

1

Destinos

1 2 3

Fuente

s

1

2

3

Mayor = 20

Tabla de costo

2.1 Modelo de Transporte

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

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

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

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

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

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

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

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

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

Por lo tanto el modelo está dado por:

minimizar z =

n

i

n

j

ijij xc1 1

sujeto a 11

n

j

ijx i=1,2, ...,n

11

n

i

ijx j=1,2,..n

xij = 0 ó bien 1

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 puntos (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:

77

Ejemplo

PLANTA

Leipzig (1) Nancy(2) Lieja (3) Tilburgo(4)

Finanzas (F) (1) 24 10 21 11

Mercadotecnia(M) (2) 14 22 10 15

Operaciones (O) (3) 15 17 20 19

Personal(P) (4) 11 19 14 13

Plantear el modelo de PL

78

Ejemplo: Modelo de PL

MIN Z = 24 X11 + 10 X12 + ... + 14 X43 + 13 X44

sujeto a:

a) Oferta X11 + X12 + X13 + X14 = 1

X21 + X22 + X23 + X24 = 1

X31 + X32 + X33 + X34 = 1

X41 + X42 + X43 + X44 = 1

b) Demanda X11 + X21 + X31 + X41 = 1

X12 + X22 + X32 + X42 = 1

X13 + X23 + X33 + X43 = 1

X14 + X24 + X34 + X44 = 1

c) No negatividad Xij >= 0 i=1,...,4, j=1,....,4

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

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: Restar el costo menor de cada fila a la fila correspondiente y/o

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Modelo de Asignación: Otras consideraciones

2. Hay un modelo de maximización

La matriz de ganancia es la siguiente

Contribución del

Vendedor\a

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

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

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

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

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

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

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)

101

La tabla inicial es:

3 4 5 6 F Oferta

1 95

3 1000 8 1000 0

2 70

2 7 1000 1000 0

3 195

0 3 4 4 0

4 180

1000 0 1000 2 0

Demanda 180 210 30 45 75

Orí

genes

Destinos

102

La tabla final es:

3 4 5 6 F Oferta

1 20 75 95

3 1000 8 1000 0

2 70 70

2 7 1000 1000 0

3 90 30 30 45 195

0 3 4 4 0

4 180 180

1000 0 1000 2 0

Demanda 180 210 30 45 75

Destinos

Orí

genes

Costo = 20*3+75*0+70*2+90*0+30*3+30*4+45*4+180*0=$590

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 ...

104

Ejemplo 3:

1

2

3

4

5 7

6

8

9

10

11

100

200

150

120

80

70

110

2

3

4

4 4

5

5

6

6

6

7

7

7

8

8

Nodos de transbordo

105

Planteamiento del modelo PL :

Plantear el modelo de PL para el ejemplo mostrado en el

grafo anterior.

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

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

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

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

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

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

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

113

2.4.1 Introducción a la Teoría de Grafos (cont.)

2

3 4

1

1 2 3 4

1 1 1

2 1

3 1

4 1

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

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

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

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.

118

1 2 4

5

3

c12

c34

c24

c25 c54

u43

c53

c23

+10

-3

-7

Rutas alternativas para el destino 3

1-2-3, 1-2-4-3, 1-2-5-4-3, 1-2-5-3

u12

u23 u34

c43

u53

c54 u25

u24

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

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

b) Función Objetivo

MIN Z =C12X12+C23X23+C24X24+C25X25+C34X34+C43X43+C53X53+C54X54

la red (i,j) de artodos los cx 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

122

Matriz Incidencia nodo-arco

a r c o

Nodo (1,2) (2,3) (2,4) (2,5) (4,3) (5,3) (3,4) (5,4) LD

1 +1 0 0 0 0 0 0 0 10

2 -1 +1 +1 +1 0 0 0 0 0

3 0 -1 0 0 -1 -1 +1 0 -3

4 0 0 -1 0 +1 0 -1 -1 -7

5 0 0 0 -1 0 +1 0 +1 0

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) de artodos los cx ijij cos ,0

124

Resolver para las siguientes capacidades y costos Capacidad

de\a Sitio 1 Sitio 2 Sitio 3 Sitio 4 Sitio 5

Sitio 1 10

Sitio 2 4 3 3

Sitio 3 2

Sitio 4 4

Sitio 5 3 5

Costo Unitario

de\a Sitio 1 Sitio 2 Sitio 3 Sitio 4 Sitio 5

Sitio 1 $100

Sitio 2 $45 $50 $20

Sitio 3 $60

Sitio 4 $85

Sitio 5 $10 $55

Ver transbordo con capacidades

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

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

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

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

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

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

131

A

7

1

3

B

C

D

E

F

G

1

4

2

10 8

10

5

7 4

3

Para su práctica y ejercitación neuronal

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

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

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

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

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

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

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

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

¿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

¿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

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

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

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-1Aij

i

k

j

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

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

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

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

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

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

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

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

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

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:

155

H

1 2

3

4

5

6

7

8

4

1

1

1

1

2

2 7

6

3

3 3

Ejemplo: Encontrar el AEM para el siguiente grafo

156

H

1 2

3

4

5

6

7

1

1

1

1

Solución :

2

2

4

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.

158

Aplicación Algoritmo tabular

Nodo H 1 2 3 4 5 6 7

H 4 7 8

1 4 6 1

2 6 1 2

3 1 1 1

4 7 1 3 3 2

5 2 3 3

6 3 3 1

7 8 2 1

Tabla inicial

159

Aplicación Algoritmo tabular

Inicio: Nodo H

Nodo H 1 2 3 4 5 6 7

* H 4 7 8

* 1 4 6 1

2 6 1 2

3 1 1 1

4 7 1 3 3 2

5 2 3 3

6 3 3 1

7 8 2 1

a)

b)

160

Aplicación Algoritmo tabular

Nodo 1

Nodo H 1 2 3 4 5 6 7

* H 4 7 8

* 1 4 6 1

2 6 1 2

* 3 1 1 1

4 7 1 3 3 2

5 2 3 3

6 3 3 1

7 8 2 1

a)

b)

c)

161

Aplicación Algoritmo tabular

Nodo H 1 2 3 4 5 6 7

* H 4 7 8

* 1 4 6 1

* 2 6 1 2

* 3 1 1 1

* 4 7 1 3 3 2

* 5 2 3 3

* 6 3 3 1

* 7 8 2 1

Tabla final

a)

b)

c)

162

H

1 2

3

4

5

6

7

1

1

1

1

Arbol de expansión mínima :

2

2

4

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

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

fxxj

ji

j

ij

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

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

Grafo inicial: Inicialización delos flujos en cada nodo Algoritmo

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

6 1

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

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 )

2 2

1 2 4 0

1 2 (1 )

1 3

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

171

Aplicar el algoritmo al grafo del ejemplo:

4

0

0

0

0

0

0

0

0

6

4

1

6

2

3

2

6

0

2

3

4

5

6 1

Paso Inicial

172

Iteración 1:

4

0

0

0

0

0

0

0

0

6

4

1

6

2

3

2

6

0

2

3

4

5

6 1

Elegir arbitrariamente el camino 1-3-5-6

cmin = MIN(6,4,2)=2; actualizando la red se tiene

4

2

2 2

0

2

2 2

173

Iteración 2:

4 0

0

0

0

0

0

0

0

6

4

1

2

2

3

2

2

0

2

3

4

5

6 1

4

2 0

2

2 6

Elegir arbitrariamente el camino 1-2-4-6

cmin = MIN(4,6,6)=4; actualizando la red se tiene

4 0

6 4

6 4

2

6

2 2

174

Iteración 3:

4 0

0

0

0

0

2

0

0

6

4

1

0

2

1

2

0

0

2

3

4

5

6 1

2

4

0

2

2

8

Elegir arbitrariamente el camino 1-3-2-4-6

cmin = MIN(4,3,2,2)=2; actualizando la red se tiene

4 0

6

4

6 6

2

8

2 2

4

2

3

0

2

6

2

4 6

6

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 2 2 3 5

0 4 3 5

Final < inicial entonces el flujo es 4-2=2

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

177

Unidad 3

Administración de Proyectos

PERT y CPM

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

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

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

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ónPrdecesoras

inmediatasTiempo Recursos

A Elegir local de oficinas -

B Crear el plan financiero y de -

CDeterminar requerimientos

de personalB

D Diseño de local A, C

E Construir el interior D

F Elegir personal a mudar C

GContratar nuevos

empleadosF

HMudar registros, personal

clave, etc.F

IHacer arreglos finacieros de

la organizaciónB

J Entrenar personal nuevo H, E, G

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

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

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

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

Ruta Crítica: Dar cumplimiento al plazo límite Se requiere de las estimaciones de tiempo de cada actividad (supuestos)

Actividad DescripciónPrdecesoras

inmediatasTiempo Recursos

A Elegir local de oficinas - 3

BCrear el plan financiero y de

organización- 5

CDeterminar requerimientos

de personalB 3

D Diseño de local A, C 4

E Construir el interior D 8

F Elegir personal a mudar C 2

GContratar nuevos

empleadosF 4

HMudar registros, personal

clave, etc.F 2

IHacer arreglos finacieros de

la organizaciónB 5

J Entrenar personal nuevo H, E, G 3

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

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

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

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

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

Cálculo de TI y TT:

1

2

3

4

5

6 7

9

D[8,12]

8

Fic

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

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

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

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

197

1

2

3

4

5

6 7

9 8

Identificación de las tareas críticas: Cálculo de UTT y UTI para cada actividad . Finalmente se tiene

D[8,12]

[8,12]

[5,8

]

Fic

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

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

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

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

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

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

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

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

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

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

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

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

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 bmate

Estimación de la desviación

estándar del tiempo de la actividad 6

ab

Distribución beta

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

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

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

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 ... nTDesviación estándar

i

:iDesviación estándar de i-ésima actividad

de la ruta crítica

T : es el tiempo esperado (promedio)

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.

xZ

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

Cálculos caso en estudio

Z = 0,8485

En la tabla de Z

P(Z 0,8485) = 0,80

357,2

2022Z

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

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

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

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

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

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

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 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

0

12 12

D(1)[4,5]

[8,10] [4,7] [0,4]

[11,12]

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

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

CPM: Trueque entre el costo y el tiempo

Reducción de Actividades ruta crítica

2

3

6

5

7 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

0

D(1)[4,5]

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

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

CPM: Trueque entre el costo y el tiempo

Grafo final

2

3

6

5

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

0

7 7

D(1)[3,4]

[4,5] [3,4] [0,3]

[6,7]

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

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

CPM: Trueque entre el costo y el tiempo Solución

2

3

6

5

7 H(2)

1 F(2)

4 C(3)

Grafo resultante

A(4)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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