Está en la página 1de 233

ÍNDICE

Capítulo I GRÁFICAS 1

1.1 Conceptos Generales 1


1.2 Conceptos para Gráfica Orientada 2
1.3 Conceptos para Gráfica No Orientada 4

Capítulo II REDES DE TRANSPORTE 5

2.1 Definiciones 5
2.2 Teorema Del Mínimo Corte-Máximo Flujo 7
2.3 Algoritmo De Ford y Fulkerson 7
2.4 Problemas De Transporte 10
2.5 Algoritmo De Desviaciones 17
2.6 Problemas Resueltos 34

Capítulo III PROGRAMACIÓN POR EL CAMINO CRÍTICO 42

3.1 Definiciones 42
3.2 Construcción De La Red 42
3.3 Determinación De La Duración Del Programa
Y De Las Holguras De Las Actividades 44
3.4 Aspectos Probabilísticos Del Método 48
3.5 Asignación De Recursos (MAR) 51
3.6 Optimización De Programas 59
3.7 Problemas Resueltos 67

Capítulo IV MÉTODOS DE RAMIFICAR Y ACOTAR 84

4.1 Introducción 84
4.2 Definiciones 84
4.3 Problemas
85
4.4 Asignación De Recursos (Alg. Little) 100
4.5 Secuenciación 107

Capítulo V PROGRAMACIÓN DINÁMICA 134

5.1 Definiciones 134


5.2 Características De Los Problemas De
Programación Dinámica 134
5.3 Elementos Básicos De Programación
Dinámica 135
5.4 Problemas Resueltos 147

2
CAPÍTULO I

GRÁFICAS

1.1 CONCEPTOS GENERALES

Gráfica de orden n

Sea un cierto conjunto finito de puntos denominados vértices X ={X i}, i=1, 2, ..., n; y el
conjunto A de segmentos dirigidos (Xi , Xj) llamados arcos, que unen todos o algunos de los
vértices tales que Xi,Xj X. La pareja G= (X, A) constituye una gráfica de orden n.

X3
U5
U1 U2
U4
X4
U3
X1

X2
X5
Fig. 1.1

En la figura 1.1 está representada la gráfica, cuyos vértices y arcos son:

X = { X1, X2, X3, X4, X5 }


A = {(X1, X1), (X3, X2), (X3, X4), (X3, X5), (X4, X5), (X5, X3)}

El número de vértices y de arcos son:

|X| = 5 |A|= 6

3
1.2 CONCEPTOS PARA GRÁFICA ORIENTADA

Extremos.-
Sea u A tal que u = (Xi ,Xj)
Xi: Extremo inicial o predecesor
Xj: Extremo final o sucesor

Arcos Adyacentes
Dos arcos son adyacentes si tienen un vértice común. Así, en la figura 1.1, los arcos (X 3, X4)
y (X4 , X5) son adyacentes.

Vértices Adyacentes
Dos vértices son adyacentes si son diferentes y existe al menos un arco que va de X i a Xj o
de Xj a Xi .

Arco Incidente a un Vértice


Un arco u es incidente al vértice Xi si llega al vértice o sale del mismo. Si Xi es el extremo
inicial del arco u, se dice que el arco es incidente hacia el exterior de X i caso contrario se
dice que es incidente hacia el interior de Xi.

Arcos Incidentes a un Conjunto de Vértices


Sean YX pertenecientes a la gráfica G=(X,A). Se dice que u es incidente a Y hacia el
exterior si xi Y, xj Y.
El conjunto de arcos incidentes a Y hacia el exterior, se representa con W +(Y). Si Xi Y y Xj
Y, se dice que u es incidente hacia el interior y se representa con W -(Y).

Al conjunto W+(Y) U W-(Y), se le representa con W(Y) .Por ejemplo sea en la fig. 1.1 el
conjunto Y = X2, X3, X5 entonces :

W+(Y) = { u5 } W-(Y) = { u6 }

W(Y) = W+(Y) U W-(Y) ={ u5 ,u6 }

Sub gráfica
Se denomina sub gráfica de G = (X, A), a aquella constituida por Y  X y por arcos de A
que unen vértices de Y. Por ejemplo, la fig. 1.2(b) es subgráfica de 1.2(a).

Gráfica Parcial

4
Se denomina gráfica parcial de G = (X, A) a la que está constituida por el conjunto de
vértices de X y por B  A. Ejemplo: La fig. 1.2(c) es una gráfica parcial de 1.2(a)

X4
U1 U4 U1 X3 X4
X1 U4
U5 X1 c U7
X1 X3
U3
X5 X5
U2 U3 U7 X5 U2 X3
v v U6
vX2 U6
X
v2 X2
U6

(a ) (b ) (c )

Fig. 1.2

Camino
Se denomina camino a la secuencia de arcos u = ( u 1 ,u2,...,uk ), en el cual el extremo final de
cada arco coincide con el extremo inicial del arco que le sigue. En la fig. 1.2 (a) se puede
mencionar por ejemplo el camino:
( u3 ,u4 ,u5 ) , ( u2 ,u3 ,u7 )

Un camino puede representarse por los vértices del ejemplo anterior se tiene:
(x2, x3, x4, x5) , (x1, x2, x3, x5)

Un camino es simple si no utiliza más de una vez el mismo arco. Un camino es elemental si
no utiliza más de una vez el mismo vértice.
Longitud de un Camino
Es el número de arcos que contiene la secuencia y se representa por l(u). Si u = (u 2, u3,
u7) , l(u) = 3.

Circuito
Es un camino finito N = (x 1, x2, ..., xk) en el que el vértice inicial x 1 es igual al vértice final
xk. Así, en la fig. 1.2(a), u = ( x2, x3, x5, x2 ) es un circuito.

Anillo
Es un circuito constituido por un solo vértice y un solo arco. En la fig. 1.2(a), u 1 = (x1, x1) es
un anillo.

1.3CONCEPTOS PARA GRÁFICA NO ORIENTADA

5
Los conceptos de arco, camino y circuito se sustituyen por los de arista, cadena y ciclo.

Arista
Se denomina arista de una gráfica G, a un conjunto de vértices X i , Xj tales que Xi Xj , (Xi ,
Xj) A y/o (Xj , Xi) A; es decir que es el segmento que une dos vértices adyacentes. La
gráfica de la fig. 1.3 tiene 5 arcos y 3 aristas.

X1 X3
X2

Fig. 1.3

Arcos = {(X1, X1), (X1, X3), (X2, X1), (X2, X3), (X3, X1)}
_____ ____ _____
Aristas = {(X1 ,X2) , (X1 ,X3), (X2 ,X3)}

Si en la constitución de una arista figura un solo arco dirigido, se dice que es una arista
simple, en caso contrario que es múltiple.

Cadena
Se dice cadena a una secuencia de aristas.
Ejemplo: v = (X1, X2, X3) es una cadena de la gráfica no orientada de la fig. 1.4

X 3
X 2

X 4
X 1

X 5

Fig. 1.4

Es de notar que cada arco de la fig. 1.4 tiene las dos orientaciones (X i, Xj) y (Xj , Xi).

6
Ciclo
Se denomina ciclo a la cadena finita en el que coinciden los vértices inicial y final. De la fig.
1.4, v = (X1, X2, X3, X4, X5) constituye un ciclo.

7
CAPÍTULO II

REDES DE TRANSPORTE

2.1 DEFINICIONES

Red de Transporte
Se denomina red de transporte al grafo finito sin anillos donde se cumple que:

a) Cada arco u tiene asociado un número C(u)  0, llamado capacidad del arco.
b) Existe un solo vértice x0, tal que W-(X0) = 0, este vértice se llama fuente de la red o salida
de la red.
c) Existe un solo   vértice xn tal que W+(Xn) = 0, este vértice se llama sumidero de la red o
salida de la red.

Flujo

Se dice que una función entera (u), definida sobre el conjunto A de los arcos, es un flujo
para una red de transporte si satisface las siguientes condiciones:

0 ≤ (u) ≤ C (u), u  A


 (u) =  (u)
u W-(Xi) , u  W+(Xi), Xi  X0

La función (u) puede considerarse como la cantidad de materia que fluye por el arco u.
Como la materia que entra es igual a la que sale entonces:

 (u) =  (u) = (Xn)


u  W+(X0), u  W-(Xn)

La magnitud (Xn) se denomina magnitud del flujo de la red.

Arco Saturado
Se dice que un arco u A está saturado si se tiene  (ui) = C(ui)

Flujo Completo
8
Un flujo es completo si todo camino que va de la fuente al sumidero contiene al menos un
arco saturado.

La fig. 2.1 es un ejemplo de red de transporte donde:

- Las cifras ubicadas en las discontinuidades de los arcos, señalan sus


capacidades: [C(u)].
- Las flechas indican la dirección de los flujos.
- Las cifras ubicadas al final de las flechas indican las magnitudes de los
flujos: [(u)].
- Las cifras que se encuentran en el inicio de las flechas nos muestran la
diferencia entre la capacidad y la magnitud de flujo: [C(u) - (u)]

Obsérvese que los arcos (X0, X2) y (X1, X3), mostradas en la figura 2.1, están saturados y que
el flujo es completo dado que los caminos (X 0, X1, X3) y (X0, X2, X3) tienen un arco
saturado.

1 X1

3 ° 1 1

°
2 X 3

X0
°2 2
2
4 2
Corte Y
2
°
X2
Fig. 2.1

Corte
Sea un conjunto Y  X de vértices que contienen el sumidero X n y no contienen la fuente
X0. El conjunto W-(Y) (incidentes hacia el interior de Y) se le denomina corte de la red. Por
ejemplo, si en la fig. 2.1 se tiene Y=(X 1, X3) entonces el corte correspondiente a Y está
dado por:

W-(Y) = { (X0, X1), (X2, X3) }

Capacidad de Corte
A la expresión:

9
C [W-(Y)] =  C(u)
u  W-(Y)

Se le llama capacidad de corte. Así en el ejemplo se tiene:


C [W-(Y)] = 3 + 4 = 7

2.2 TEOREMA DEL MÍNIMO CORTE - MÁXIMO FLUJO

Sea un flujo (Xn) y un corte W-(Y) se tendrá:


(Xn) ≤ C [ W-(Y)]
Luego, si existe un flujo (Xn) y un corte W-(Y0) tales que:
(Xn) = C [W-(Y0)]
Entonces el flujo (Xn) tiene un valor máximo y el corte W -(Y0) tiene una capacidad
mínima. Lo anterior origina el siguiente teorema:

TEOREMA:

En una red de transporte dado, el valor máximo de un flujo es igual a la capacidad mínima
de un corte, esto es:

Máx.  (Xn) = Mín. C [W-(Y)]

Dicho de otro modo, si se logra encontrar un flujo igual a la capacidad de un corte, se estará
seguro de que dicho flujo es máximo.

2.3 ALGORITMO DE FORD Y FULKERSON (FLUJO MÁXIMO)

Consiste en el aumento paulatino del flujo (Xn) hasta que éste llegue a ser máximo.
La búsqueda del flujo máximo se realiza en dos etapas :

Búsqueda del flujo completo


Se determinan los caminos de X0 a Xn; luego se hace pasar un flujo por cada camino el cual
es igual a la menor capacidad del arco integrante del camino. La suma de estos flujos
parciales nos determina un flujo completo.

Búsqueda del flujo máximo


10
Sea (Xn) el flujo completo, a partir de allí se marca la red como sigue:

a) Se marca la fuente (X0) con (+) si el vértice Xi está marcado y el Xj no lo está, entonces:
- Marcar Xj con (+Xi) si existe el arco (Xi, Xj), no saturado
- Marcar Xj con (-Xi) si (Xi, Xj) con flujo mayor que cero.

b) Si con este procedimiento se marca el sumidero, entonces se considera la cadena que pasa
por los vértices marcados con (+) o (-).
El incremento en el flujo se determina de la manera siguiente:

∆ (x0) = Min.{[C(u)- (u)], para (Xi, Xj), o (u) para (Xj, Xi)}
Xi, Xj pertenecen a la cadena.

Luego se corrigen los flujos en la red, esto es, se aumenta el flujo a los arcos (X i, Xj), y se
disminuye en el sentido contrario, se repiten los pasos a y b hasta que no sea posible
etiquetar el último vértice. Si esto ocurre, el flujo hallado es el máximo y el corte mínimo se
deriva de separar los vértices etiquetados de los no etiquetados.

Ejemplo: Determinar el flujo máximo de la red señalada en la fig. 2.2.

X1 X3
6

5
° 2
° 5

°X 5

X0
° 7 3
6

X2° 3
°X 4

Fig. 2.2

Búsqueda del flujo completo

1 = (X0, X1, X3, X5), (1) = 5, se saturan los arcos (X0, X1 ) y (X3, X5).

2 = (X0, X2, X4, X5),(2) = 3, se satura el arco (X2, X4 ).


( X5) = 8 (flujo completo)
11
Se puede observar en la fig. 2.3 que todos los caminos tienen al menos un arco saturado.

X 1 1 5 X 3
5 6 0
5 ° 2
° 5
5
0
°X
3
5

X 0 ° 4 7 3 6

3
X °
2
0
3
3 X
3
4

Fig. 2.3

Búsqueda del flujo máximo


La aplicación del paso(a) se muestra en la fig. 2.4

(-X3) (+X2)
X 1 1 5 X 3
5 6 0
5 ° 2
° 5
5
0
°X
3
5 ( +X4 )

(+) X 0
°
4 7 3 6

( +X0 )
3
X °
2
0
3
3
°X
3
4
( +X1 )

Fig. 2.4

Aplicando el paso (b) se tiene:


∆( X5) = mín [(7-3), (3-0), 5, (2-0), (6-3)] = 2
12
Luego se corrige la red y se aplica nuevamente el paso (b) fig. 2.5.

( - X3 ) ( +X2 )
X 1 1 3 X 3 CORTE
6 0
5 ° 0
2 °
2 5
5
0
°X 5

°
5
( +) X 0 6
2 7 3
1 2

X °
2
0
3
3
°X 4

Fig. 2.5

Como se observa en la fig. 2.5, no es posible etiquetar X 5 lo que nos indica que estamos
frente al flujo máximo. (X5) = 10 y la capacidad del corte mínimo que es también se obtiene
sumando las capacidades de los arcos incidentes al interior de los vértices (Y 0) no
etiquetados.

Y0 = [ X4, X5  ]

W-(Y0)= [ (X1,X4), (X2,X4), (X3,X5) ]

C [W-(Y0) ] = C(X1,X4) + C(X2,X4) + C(X3,X5) = 2 + 3 + 5 = 10

2.4 PROBLEMAS DE TRANSPORTE

A continuación, se presenta ejemplos referentes a dos tipos de problemas de transporte, los


cuales son:

- Problema de transporte según el criterio de la capacidad.


- Problema de transporte según el criterio del tiempo.

Problema de transporte según el criterio de la capacidad.


13
Existen tres fábricas que producen 10,15 y 25 piezas de construcción y cuatro consumidores
(obras) en cantidades de 5, 10, 20 y 25 piezas.
(Cuadro2.1).
Por limitaciones de flota de vehículos, caminos de acceso, etc. la capacidad de traslado de la
fábrica a la obra se halla en el cuadro 2.2.

PRODUCCIÓN Y CONSUMO

X1 X2 X3 X4 X5 X6
FABRICA 10 15 25
OBRAS 5 10 20
Cuadro 2.1 d
CAPACIDAD DE TRANSPORTE

DESTI NO X4 X5 X6 X7
ORI GEN

X1 8 3 5 2

X2 4 1 6 7

X3 1 9 4 3
|
Cuadro 2.2

Se pide determinar el máximo número de piezas que se pueden enviar a las obras.

Solución
El problema se puede representar gráficamente de la manera siguiente
(Fig. 2.6):

14
X 4

°
X 1

°
8
3 X 5

°
0 5
2 5
10
10
X 2
4
I X8
° °
1
X 0 15
6
7 20

25
X 6 15

°
1
X 3 9

°
4
3

X 7

Fig. 2.6 °
Para aplicar el algoritmo se asume la existencia de una fuente (vértice X 0) y un sumidero
(vértice X8).
Los resultados que se extraen de la fig. 2.11 se resumen en el cuadro 2.3.

( +X2 )
X 4

°
5

( X4 )
X1 3
°
8
10 3 3 X 5

°
5
5
2 1
10 6 10 5 ( +X4 )
( +X0 ) X 4 10
2
I X8
° °
1
X 0
15
14 6
12
7 20 10
25 6 2 X 6 15
1
13 X 3 9
4 4 °
°
( +X1 )
3

7
X 7

°
3 5

Fig. 2.7

15
( +X3 )
X4

°
4
1
( -X4 )
X1 4

°
8
10 3 3 X5

°
5
2 1 5
10
6 10 5 ( +X7 )
15 X2 4 10
+X 0 I X8
° °
15 1
6 13
7 20
12 6 3 10
25 X6 15
1
13 X3 9
4
° 7

°
4
3
( +X0 )
7
X7
3 5
( +X1 )

Fig. 2.8

X4

°
3
1 1
( -X5 )
X1
°
8
10 3 3 X5

°
5
2 1 5
10
( +X3 )
6 10 5 ( +X6 )
15 X2 4 10
I X8
° °
1
+X 0 15
6
13
7 20
11 6 3 11
25 X6 15
1
14 X3 9
4 4 ( +X1)
° 7

°
( +X0 )
3

7 1
X7
4
°
3
Fig. 2. 9

16
X 4

°
3
1
1
( - X5 )
X1 4
°
8
10 3 3 X 5

°
5
2 1 5
10
( +X3 )
6 10 5 ( +X6 )
15 X 2
4 10
+X I X8
° °
15 1
0 6 13
7 20
11 6 3 X 11
25 6 15
1
14
X 3 9
°
4 ( +X1 )
7

°
4
3
( +X0 )
7 1
X 7
4
3
°
Fig. 2.10

X 4

°
3
1
1

X 1 5

°
8
10 2 3 X 5

°
5
2 1 5
10
9 10 5
X 2
4 10
X0 1
I X8
° °
15 15
6
20
( +) 8 7
6 5 X 12
25 6 15

°
1
17 X 5
3 9
4

°
4
3
( +X0 )
7 2
X 7
3
°
Fig. 2.11

Y0 = [X1, X2, X4, X5, X6, X7, X8]

W-(Y0) = [(X0, X1), (X0, X2), (X3,X4), (X3, X5), (X3, X6), (X3, X7)]
17
[W-(Y0)] = C(X0, X1) + C(X0, X2) + C(X3, X4) + C(X3, X5) + C(X3, X6) +
C(X3, X7)

= 10 + 15 + 1 + 9 + 4 + 3 = 42

Respuesta: El máximo número de piezas que pueden enviarse a las obras es como sigue:

N° DE
OBRA
PIEZAS
X4 5
X5 10
X6 15
X7 12
TOTAL 42
NUMERO DE PIEZAS ENTREGADAS A LA OBRA

DESTI NO X4 X5 X6 X7
ORI GEN
X1 3 0 5 2
X2 1 1 6 7
X3 1 9 4 3
TOTAL 5 10 15 12

Problema de transporte según el criterio del tiempo

Sobre la base del problema anterior, consideraremos ahora que, en lugar de capacidad de
transporte (Cuadro 2.2) se ha de considerar como costo de transporte. Por consiguiente se
pide hallar las rutas más económicas.
La asignación en la figura 2.12 se efectúa considerando los costos de menor a mayor.
18
X 4

°
5
X1 5

° 2 8
3 X 5

°
5
2 10 5
10
X2 4 10 10 5
X0 I X8
° °
1
15 20
6
5 7 20
15
25
5 X 6
1 15
X3
°
15
9 5
4
° 3
10
X 7
5
° Fig. 2.12

TIEMPO DE TRANSPORTE

DESTINO X4 X5 X6 X7
ORIGEN

X1 8 3 5 2

X2 4 1 6 7

X3 1 9 4 3
|

Como se observa en la figura 2.12, se han trasladado las piezas a los consumidores usando
los arcos que consignan el menor tiempo de transporte.

El tiempo necesario para trasladar todas las cargas de X 0 a X8 va a determinarse por el


camino que tiene la mayor duración de paso de flujo. En la figura 2.13 se observa que el
mayor tiempo es de 6 unidades (arco X 2, X6) por consiguientes se eliminan los arcos iguales
o mayores de 6 unidades de tiempo y se reordena el flujo (Fig. 2.13 y Fig. 2.14).

19
( +X2 )
X4
°
5
X1
° 3 X5

°
5
2 10 5
10
10 5 ( +X6 )
X0 10 X2 4 10
1
I X8
° °
15 15
( +X0 ) X6 20
15
25 1 15
X3
°
15
4 ( +X3 )
°
( - X4
3

10
5
X7

Fig. 2.13
°
( +X2 )
X4

°
5
X1
° 3 X5

°
5
2 10 5
10
10
X0 10 X2 4
1
I X8
° °
15
20
25 X6
1 15

°
X3 20
4

° 3

10
5 X7
Fig. 2.14 °
20
El tiempo de transporte obtenido tal como se muestra en la fig. 2.14 es de 4 unidades, allí
también se observa que no es posible continuar reduciéndolo ya que el punto x6 (centro de
consumo) quedaría desconectado de las fábricas.

2.5 ALGORITMO DE DESVIACIONES

Este algoritmo resuelve el problema de flujo con costo mínimo de una red.
La red debe ser circulatoria, es decir cualquier punto de la red pertenece a un circuito por lo
que se asume que flujo circula continuamente a través de la red.
Los elementos que conducen a la obtención del algoritmo son la formulación
primal, la formulación dual y el teorema de holgura complementaria.
Para poder expresar en forma general lo que son el primal y dual de este problema,
partiremos del siguiente ejemplo:
Minimizar el costo total del flujo que pasa por el camino S, L, T.
Puesto que el flujo debe ser circulatorio se crea el arco (T, S).

S L T

Fig. 2. 15

Cada arco (i, j) de la red debe tener la siguiente información:

Lij = Capacidad mínima

Uij = Capacidad máxima

21
Cij = Costo unitario de transporte

Xij = flujo

La formulación es como sigue:

PRIMAL
min Z = C SLXSL + CLT XLT + CTSXTS

sa :
Flujo que entra a un nodo = Flujo que sale del nodo

Variable dual
XSL - XTS =0 (WS)
-XSL + XLT =0 (WL)
- XLT + XTS =0 (WT)

Flujo en un arco ≥ Capacidad mínima del arco


XST ≥ LSL (VSL)

XLT ≥ LLT (VLT)

XTS ≥ LTS (VTS)

Flujo en un arco ≤ Capacidad máxima o


-(Flujo en un arco) ≥ -(Capacidad máxima)

-XSL ≥ -USL (hSL)

-XLT ≥ -ULT (hLT)

-XTS ≥ -UTS (hTS)

DUAL

Max G = LSLVSL + LLTVLT + LTSVTS - USLhSL - ULThLT - UTShTS

22
Sa : VD

WS - WL + VSL - hSL ≤ CSL XSL

WL - WT + VLT - hLT ≤ CLT XLT

-WS + WT + VTS - hTS ≤ CTS XTS

WS, WL, WT no restringidas.

VSL, VLT, VTS, hSL, hLT, hTS ≥ 0


Forma general de la formulación del problema.

PRIMAL

m m
mín Z =  Ci jXij
i=1 j=1

Sa:

m m
 Xi,j -  X k,j = 0 (Wi)
j=1 k=1

i = 1, ..., m

Xi j ≥ Li j (Vij) i,j = 1...m

-Xi j ≥ -Ui j (hij) i,j = 1...m

DUAL
m m
máx G =  (Lij Vij - Uijhij )
i=1 j=1

Sa: VD
Wi - Wj + Vij - hij = Cij Xij
23
i, j = 1,......,m

hi j, Vi j ≥ 0 i, j = 1...m

Wi no restringida i = 1...m

La diferencia Wi - Wj de la restricción del dual equivalen a las diferencias de las


correspondientes variables duales del problema ejemplo.
El teorema de holgura complementaria señala que si en las soluciones óptimas del primal y
dual, la holgura de una restricción es positiva entonces la correspondiente variable dual es
igual a cero o si la variable dual es positiva la holgura correspondiente es cero.
Aplicando el teorema de la holgura complementaria a la forma general de la formulación se
tiene:

(Xij - Lij) Vij = 0;


Si Vij >0 entonces Xij = Lij

(Uij - X ij) hij = 0;


Si hij >0 entonces Xij = Uij

(Wi - W j + Vij - hij - Cij) Xij = 0;


Si Xij > 0 entonces: hij - Vij = Wi -W j -Cij

Como Xij no tiene al mismo tiempo los niveles Lij y Uij a menos que
Lij = Uij

Si: hij >0 entonces Vij = 0

Vij>0 entonces hij = 0

hij = Vij = 0 entonces Lij ≤ Xij ≤ Uij

De hij - Vij = Wi - Wj - Cij si se define a

Zij = Wi - Wj, entonces:

hij - Vij = Zij - Cij

24
RESUMEN :

Zi j - Ci j < 0  Vi j > 0  Xi j = Li j

Zi j - Ci j > 0  hi j > 0  Xi j = Ui j

Zi j - Ci j = 0  hi j = Vi j = 0  Li j ≤ Xi j ≤ Ui j

Fig. 2.16

Cualquier flujo que satisface a la fig.2.16 es óptimo, entonces el problema consiste en buscar
valores para Wi, Wj y Xij para llegar al óptimo, esta labor se realiza con cada uno de los
arcos de una red dada.

La información para cada arco usualmente se señala así:

Fig. 2.17

os valores iniciales de las variables duales y el flujo Xij, son señalados arbitrariamente,
luego de este procedimiento se evalúa cada arco con respecto a la información de la fig.
2.18, la que ha sido elaborada basándose en el resumen (fig. 2.16)
La información que no se ajuste al resumen se le denomina no conformable, en caso
contrario es un arco conformable.

ESTADOS CONFORMABLES Y NO CONFORMABLES

25
Zij-Cij<0 Zij-Cij=0 Zij-Cij>0

Xij Uij No Conf. No Conf. No Conf.


Xij = Uij “ Conform. Conform.
lij<Xij<Uij “ “ No Conf.
Xij = lij Conform. “ “
Xij < lij No Conf. No Conf. “

Fig. 2.18

Existen dos formas para cambiar los estados conformables:


- Cambio de flujo (fase primala)
- Cambio de los valores de las variables duales Wi (fase dual)

FASE PRIMAL

El objetivo de esta fase es incrementar el flujo de la red siempre que exista un circuito en la
red parcial G’

Pasos:

a) Construir una red G’ que contenga:


-Todos los vértices de la red original y
-Todos los arcos que cambian de flujo
b) Los cambios de flujo permitidos según lo señalado en la fig. 3, debe estar indicados en los
arcos correspondientes a G’.
c) Los arcos de la red original G con :

Lij <= Xij <= Uij y Zij - Cij = 0,

producirán dos arcos (i, j)y (j, i) con cambios de flujo señalados en la fig.2.19

d) Se selecciona un circuito en G’ que contenga al menos un arco no conformable (p,q).


e) Se calcula el máximo flujo del circuito de G’
f) Se traslada la información de (e) a la red G
g) Si no existe ningún circuito en G’ se debe pasar a la fase dual

26
CAMBIOS EN LOS FLUJOS PARA ALCANZAR UN ESTADO CONFORMABLE

Fig. 2.19

FASE DUAL

Cuando no exista ningún circuito en G’, el camino a seguir, en esta fase, conduce a aumentar
el número de arcos en G’ con la finalidad de formar circuitos, para lo cual se deberá cambiar
los Zi j-Ci j modificando los valores de W de los arcos pertenecientes al conjunto X en una
cantidad >0.

Sea :
(p,q) = Arco no conformable
N = Número total de nodos de la red
X = Conjunto de nodos en G’ que se puede alcanzar desde q a lo largo de
un camino en G’.
_
X = N-X
_ _
Si se logra ingresar a G’, arco de los conjuntos (X,X) y/o (X,X), modificando los valores de
Zij - Cij, se estará en el camino de formar circuitos en G’.
_
Cambios en (X,X)
_
Si iX y jX se obtiene :

27
(Zij - Cij)’ = (Wi +  ) - Wj - Cij
= (Zij - Cij) + 
_
Cambios en (X,X)
_
Si iX y jX se obtiene :

(Zij - Cij)’ = Wj - (Wj +  ) - Cij

= (Zij - Cij) - 
_
En la determinación de  para el conjunto de arcos (X, X) se debe examinar la fig. 2.20,
aquí es necesario destacar que los arcos con:

Xi j< Li j y Zi j - Ci j < 0
_
no pertenecen a (X,X) pues tal arco en G vendría a ser un arco en G’, con el resultado de que
si i puede ser alcanzado desde (q) entonces j también y ambos vértices pertenecen a X.

28
_
POSIBLES ESTADOS CONFORMABLES PARA ARCOS DE X A X EN G Y
LÍMITES SOBRE 

Z ij -C ij <0 Z ij -C ij =0 Z ij -C ij >0
X ij  U ij

X ij = U   
ij

l ij <X ij <U   
ij

  
X ij = l ij Z ij -C ij

  
X ij < l ij Z ij -C ij

Fig. 2.20
_
El conjunto de arcos Si (X,X) que pueden cambiar el valor de Zij-Cij tienen las siguientes
características
_
S1 = { (i,j) : i  X, j  X, Zij- Cij <0, Xij ≤ Uij}
_
Un análisis similar de la fig. 5 nos dará el conjunto de arcos, S2  (X,X) que deben cambiar
los valores de Zij-Cij

29
_
POSIBLES ESTADOS CONFORMABLES PARA ARCOS DE X A X EN G Y
LIMITES SOBRE 

Z ij -C ij <0 Z ij -C ij =0 Z ij -C ij >0
X ij ³ U ij

X ij = U ij
  Z ij -C ij

l ij <X ij <U ij   Z ij -C ij

X ij = l ij   

X ij < l ij   

Fig. 2.21
_
S2 = { (i,j) : i  X, j X, Zi j-Cij>0, Xij>=Lij }

1 = mínimo { |Zi j-Ci j| }


(i,j)  S1

1 = mínimo { |Zi j-Ci j| }


(i,j)  S2

 = mínimo ( 1, 2 )

en donde i =  si Si es vacío. Asimismo  es un entero positivo o 

Caso 1: 0 <  < 


En este caso se hacen los cambios apropiados en:
Wi ( Wi’= Wi +  si iX y Wi’= W si iX )
30
y se pasa a la fase primal del algoritmo.

Caso 2:  = 
En este caso el problema no tiene solución factible

EJEMPLO DE APLICACION DEL ALGORITMO DE DESVIACIONES:

Se pide calcular el flujo máximo a costo mínimo desde el origen O al vértice 5 de la


siguiente red.

Fig. 2.22

Para la solución inicial se asume que los valores de las variables duales y el flujo de los
arcos son iguales a cero, además para hacer circulatorio el flujo en la red se
adiciona el arco (5,0) con las características para alcanzar el objetivo del problema.

L50 = mín. { L01 + L02 , L35 + L45} = 0


U50= mín. { U01 + U02 , U35 + U45} = 2
C50 = - M

El costo negativo muy grande del arco (5,0), es como se sabe, un beneficio que sirve para
hacer que el flujo por (5,0) sea 2 y con ello (5,0) sea conformable.

31
W=0
1

1
W=0
0 W=0
2 W=0
3 W=0
5
(0,1,1) (0,1,2) (0,1,1)
0 X02=0 2 X23=0 3 X35=0 5
W=0
4

4
(0,2,-M)
X50=0

Fig. 2.23

En adelante los valores de (Zi j - Ci j, Xi j) y Wi se indicarán en la red tal como sigue:

Fig. 2.24

Z01 - C01 = W0 - W1 - C01 = -1

La gráfica G’ (fig. 2.25) muestra el único arco no conformable (5,0) y a continuación los
cálculos para obtener.
32
GRAFICA G’

Fig. 2.25

De la fig. 2.25:

(p,q) = (5,0)

X= { 0 }
_
X= { 1,2,3,4,5 }

De la fig. 2.24 :

S1= { (0,1) , (0,2) }

1= mín { |-1 | , |-1 | }

S2 = { (5,0) }

2 = | M |

= mín (1 ,2 )

=1
33
El valor de  se incrementa a la variable dual correspondiente al vértice 0 que es el único
elemento de X.
Los cambios se registran en G (fig. 2.26).

(0,0) 1 (-2,0)
1 0 0 0
0 (0,0) 2 (-2,0) 3 (-1,0) 5

(-2,0)
0 G
(-2,0)
(M-1,0)
4

1
1
1
0 2 3 5
G'
2
4

Fig. 2.26

Como el Zi j- Ci j de los arcos (0,1) y (0,2) de G (fig. 2.26) es cero, entonces el flujo Xi j
puede incrementarse hasta alcanzar el máximo valor Ui j y continuar siendo conformable,
estos incrementos se registran en G’ (fig. 2.26)

De G’ (fig. 2.26) se tiene:

(p,q) = (5,0)

X = {0, 1,2}
_
X= {3, 4,5}

34
De G ( fig. e) se tiene:

S1 = { (1,3), (2,3), (2,4) }

1 = mín { |-2|, |-2|, |-2| }

S2 = { (5,0) }

2 = | M - 1 |

=2

El incremento  se registra en las variables duales correspondientes al conjunto de vértices X


(gráfica G, fig. 2.27)

(0,0) 1 (0,0)
3 2 0 0
(0,0) (0,0) (-1,0)
0 2 3 5

(0,0)
0 G
(-2,0)
(M-3,0)
4

1
1 1
1 1
0 2 3 5
1 1
G'
2
4

Fig. 2.27
35
Como se observa en G’ (fig. 2.27) aún no se tiene un circuito por consiguiente se continua
con la fase dual.

De G’ (fig. 2.28) se tiene:

(p,q)= (5,0)

X= { 0,1,2,3,4 }
_
X= { 5 }

De G ( fig. 2.27) se tiene:

S1 = { (3,5), (4,5), (2,4) }

1 = mín { |-1|, |-2|}

S2 = { (5,0) }

2 = | M - 3 |

 = 1

Los cambios se registran en G (fig. 2.28)

36
3

(0,0) 1 (0,0)
4 3 1 0
(0,0) (0,1) (0,0)
0 2 3 5

(0,0)
1 G
(-1,0)
(M-4,0)
4

1
1 1
1 1 1
0 2 3 5
1
G'
2
4

Fig. 2.28

En G’ (fig. 2.28) existen dos circuitos los que indica que se puede incrementar el flujo.

Tomando el circuito (0,2,3,5,0), se observa que el incremento en el flujo es igual a 1 (G, fig.
2.29)

37
3

(0,0) 1 (0,0)
4 3 1 0
(0,1) (0,1) (0,1)
0 2 3 5

(0,0)
1 G
(-1,0)
(M-4,1)
4

1
1 1
1 1 1
0 2 3 5
1 1
G'
1
4

Fig. 2.29

Los arcos (0,2), (2,3) y (3,5) de G (fig. 2.29) pueden disminuir el flujo hasta L ij y continúan
siendo conformables, tal hecho se señala en G’.

(p,q) = (5,0)

X= {0,1,3,2,4}
_
X= {5 }

De G (fig. 2.29) se tiene:

S1 = { (4,5) }

1 = 1
38
S2 = { (5,0) }

2 = M - 4

= 1

Los cambios se registran en G (fig. 2.30)

(0,0) 1 (0,0)
5 4 2 1
0 (0,1) 2 (0,1) 3 (1,1) 5

(0,0)
2 G
(0,0)
(M-5,1)
4

1
1 1
1 1 1
0 2 3 5
1 1
G'
1
4

Fig. 2.30

En G’ (fig. 2.30) se observa que el flujo puede incrementarse en la unidad a través del
circuito (0,1,3,2,4,5,0).
En la fig. 2.31 se señala el incremento según la orientación de G’ (fig. 2.30)

39
Fig. 2.31

Finalmente se tiene que todos los arcos de la fig. 2.31 son conformables.

El costo total es 9 unidades

ARCO COSTO FLUJO COSTO DEL


UNIT. FLUJO

(0,1) 1 1 1
(0,2) 1 1 1
(1,3) 2 1 2
(2,3) 2 0 0
(2,4) 2 1 2
(3,5) 1 1 1
(4,5) 2 1 2

COSTO TOTAL

40
2.6 PROBLEMAS RESUELTOS

1. La matriz que se muestra indica el número de trabajos que se pueden hacer en una fábrica.
Si cada máquina puede ejecutar sola-mente dos trabajos. ¿Cuál es el máximo número de
trabajos que se pueden procesar al mismo tiempo en la fábrica?

A = TORNO
B = FRESADORA
C = TALADRO
D = SOLDADURA

¦ MAQUINAS
¦
Trab. ¦TORNO FRESADORA TALADRO SOLDADURA
--------+-------------------------------------
1 ¦ • •
2 ¦ • • •
3 ¦ • • •
4 ¦ • •
5 ¦ • •
6 ¦ • •
7 ¦ •
8 ¦ • • • •
9 ¦ • • •
10 ¦ • •
11 ¦ • •
12 ¦ • •
¦

Y = {F}
W-(Y) = {(A,F), (B,F), (C,F), (D,F)}
C[W-(Y)] = C(A,F) + C(B,F) + C(C,F) + C(D,F)
=8

41
(+A)
1
(-A)
2 (+A)

(-B) A
3
(-D)
2
4
(-B)
(+9)
5
(-C)
B 2
2
2
+ I 6 2 F
2
(+A)
7 2

(+1) (+10)
8 C
(-C) 2
9
(+1)
10
(+2)
(-D)

11 D
(+1)

12

ASIGNACIÓN

TRABAJOS
MAQUINAS 1 2 3 4 5 6 7 8 9 10 11 12
TORNO * *
FRESADORA * *
TALADRO * *
SOLDADURA * *

Si se parte de un flujo completo diferente, es posible encontrar otras alternativas de


asignación.

42
2. Considérese el proceso de producción que se muestra, el cual indica las diferentes rutas
que puede seguir un proceso en una planta, en su camino al ensamblado. El número en cada
círculo representa el límite superior de los artículos por hora que se puede procesar en cada
estación.
¿Cuál es el máximo de partes por hora que puede procesar la planta?

Solución:
Se asume que cada círculo representa un arco (Ui) con capacidad [C(Ui)] y las conexiones
entre estos son arcos que tienen, cada uno, una capacidad muy grande (M unidades);
asimismo, por comodidad, se asume la existencia de dos arcos como inicio y fin de la red
con espacidad de M unidades cada uno.

43
La línea a trazos significa que el arco está saturado y sólo es posible etiquetar el extremo
inicial del arco U1, en consecuencia, 10 es el máximo número de partes por hora que puede
procesar la planta.

3. Suponga que la compañía «PERU S.A.» tiene un programa anual de envase. Los envases
los compra de dos fábricas: A y B. La fábrica A, con capacidad de producción máxima de 10
millones de envases al año y la fábrica B, con una capacidad de producción mínima de 7
millones de envases al año. El excedente de la fábrica A puede transferirse a la planta B. La
disponibilidad de transporte entre las dos fábricas permite un máximo de 8 millones de
envases al año. La compañía PERU S.A. cuenta con 3 almacenes: P, Q y R. La siguiente
matriz proporciona la capacidad máxima anual de transporte de las fábricas a los almacenes.

(En millones de envases por año)

Destino
Orígen P Q R

A 2 3 3
B 8 4 -
44
El excedente de P y R puede transferirse a Q. La capacidad máxima anual de transporte es de
3 y 4 millones de envase respectivamente. Una vez en los almacenes, los envases se entregan
a los usuarios de la región. La capacidad máxima anual de entrega del almacén P es de 4
millones, 7 millones en el almacén Q y 5 millones de envases en el almacén R. ¿Cuál es el
flujo máximo anual de envases que puede circular en este sistema?

Solución:

(+A)

1
0

3
P
2
(+1) 1

7
A 0
3
3 4

10 6
3
3 (+P) 4
3
7
+ I 8 4 Q 0 7
F
8 3

5 4
7
7 8 3
4
B 3
2
(-P)
R

Y = {R,F}
W(Y) = {(A,R), (P,F), (Q,F)}
C[W(Y)] = {C(A,R) + C(P,F) + C(Q,F)
= 14

45
4. La Compañía Nacional de Cerveza S.A. posee 3 plantas productoras, con capacidad de
producción semanal de 20, 30 y 15 mil cajas las cuales deben ser remitidas a 5 centros de
almacenamiento y distribución. La capacidad de entrega de los centros a los intermediarios
de venta es de 10,10,15,25 y 5 mil cajas semanales.
Las capacidades de transporte de las fábricas hacia los almacenes se muestran el el siguiente
cuadro:

A1 A2 A3 A4 A5
F1 6 4 8 8 -
F2 6 6 6 8 6
F3 - 4 3 7 3

Calcular el flujo máximo que atraviesa la red.

Solución:

(+F1)
4
6
A1
6

(+A3) 2 (+F1) 10
20 4
F1 8 6 A2
4
20 8
0 (+F3) 10 10
(+A3) 6 6
6 8
30 30 6 6 0 15 15
I F2 8 1 A3 23 F
2 8 3 5
25
15 2 8
2 8
13 2
0 7 7
F3 A4 5
2
(+1) 3
4
1 0
A5
(+F3)

Y = {A4, F}
W(Y) = { (F1,A4), (F2,A4), (F3,A4), (A1,F), (A2,F), (A3,F), (A5,F)}
C[W(Y)] = 63 (miles de cajas)
46
5. La Compañía XYZ posee como parte de sus activos fijos 4 maquinarias que pueden
producir un determinado artículo de consumo duradero. Para ello antes de que éste salga
para su distribución y venta deben pasar por centros de control de calidad para la
verificación de su estado.
Posteriormente una vez que el artículo a pasado el control de calidad éste llega al almacén,
que a la vez sirve de centro de distribución de donde es entregado a los centros de los
consumidores finales. Se posee la siguiente información:

Producc.mensual Capacidad de transporte


por cada máquina de las máq. a los centros
de control de calidad

¦M1 M2 M3 M4 ¦M1 M2 M3 M4
---+---------------- ----+----------------
Q O 20 15 15 12 C1¦12 8 9 7
¦ C2¦11 9 10 7

Capacidad de traslado de los centros


de Control de Calidad a los almacenes
¦ A1 A2 A3 A4 A5
----+-------------------------------
C1 ¦ 8 12 15 7 --
C2 ¦ -- 9 11 8 5
¦
Capacidad de distribución de los
almacenes de los consumidores finales.

A1 A2 A3 A4 A5
------------------------------------
7 14 22 12 8

Se pide optimizar la secuencia.

47
(-C1) (+C1)

20 7
M1 A1
12
8
(+M1)
12 1 (+C1)
(-C1) 7
20 8 7 12 5
C1 A2
15 M2 7 15
9
14
4 3
15
9 7 15 14 7
(-C1) 22
22
QC 15
15
2
9
7
A3 E
12
2 M3 2 7 11 5
7 8 (+C2) 12
10
12 8 4
4
8 8
10 3
6
C2 A4 8
7
1 5
M4 (+M2) (+C1)
5 3
(+QC)
A5

Y = {A5 ,C}
W-(Y) = {(C2,A5), (A1,C), (A2,C), (A3,C), (A4,C)}
C[W-(Y)] = 60

La secuencia óptima se muestra en el gráfico.

6. La Producción mensual de aceite es como sigue:

FAB TM
F1 20,000
F2 10,000
F3 15,000

Esta producción debe trasladarse a los almacenes en las siguientes cantidades:

48
ALMACENES TM
A1 15,000
A2 15,000
A3 22,000

De los almacenes se distribuye a los centros de consumo siguientes:

CENTRO TM
C1 28,000
C2 22,000

Las capacidades de transporte son (miles de TM):

DESTINO DESTINO
¦ ¦ ¦ ¦ ¦
ORIG. ¦A1 ¦ A2 ¦ A3 ORIG.¦ C1 ¦ C2
------+---+----+---- -----+------+------
F1 ¦ 8 ¦ 10 ¦12 A1 ¦ 20 ¦ --
F2 ¦10 ¦ -- ¦ 5 A2 ¦ 12 ¦ 12
F3 ¦15 ¦ 8 ¦ 8 A3 ¦ 10 ¦ 15

Determine la máxima cantidad de aceite recibido en C1 y C2 .

49
(+F3) (-C1)
(-I1)
1 15 15
8 I1 A1 20
20
F1 7
10
12 7
15

8 C1 28
10
20 (-I1) (+F3) 12 5 28
10
10 10 2 2 15 15
+ X0 F2 I2 A2 X1
3 12 22
5 (-C1) 22
7
25 15
8 9 10
C2
20 3
8 8 2 22 20 15 15
F3 I3 A3

(+X0) (+F1) (+I3)

Y = {X1}
W-(Y) = {(C, X1), (C2, X1)}
C[W-(Y)] = 50

La máxima cantidad de aceite recibida es de 28 y 22 mil TM en los centros C1 y C2


respectivamente.

PROBLEMAS DE FLUJO MAXIMO A COSTO MINIMO

1. Cada hora un promedio de 900 automóviles entra en la red de la figura en el


nodo 1, y buscan viajar al nodo 6. El tiempo que tarda un automóvil en recorrer
cada arco se muestra en la tabla. En la figura, el número de cada flecha indica
el número máximo de automóviles que pasan por cualquier punto en el arco
durante un periodo de una hora. Formule un FMOCM que minimice el tiempo
total requerido para que los automóviles viajen del nodo 1 al nodo 6.

50
Tabla Figura

Formulación del Problema:

ARCO TIEMPO(min)
(1,2) 10
(1,3) 50
(2,5) 70
(2,4) 30
(5,6) 30
(4,5) 30
(4,6) 60
(3,5) 60
(3,4) 10

51
Solució
n del Storm:

Desde Hasta Flujo


* 1 900
1 2 700
1 3 200
2 4 600
2 5 100
3 4 200
3 5 0
4 5 500
4 6 300
5 6 600
6 * 900

Shipping Cost : -9000000


Total Cost: - 8905000
Costo Real: 94000

2. Durante los próximos dos meses, “Makina” debe satisfacer (a tiempo) las
demandas de tres tipos de productos, mostradas en la tabla siguiente:
52
Mes Producto 1 Producto 2 Producto 3
1 50 70 80 unidades
unidades unidades
2 60 90 120
unidades unidades unidades

Hay dos máquinas para producir estos productos. La máquina 1 sólo puede
producir los productos 1 y 2 y la maquina 2 puede producir los productos 2 y 3.
Se puede utilizar cada maquina durante 40 horas mensuales. La siguiente tabla
muestra el tiempo requerido para producir una unidad de cada producto
(independiente del tipo de maquina); el costo de producción de 1 unidad de
cada producto en cada tipo de maquina; y el costo de mantener 1 unidad de
cada producto en el inventario por un mes.

Product Tiempo de Costo de Producción Costo de


o producción Maquina ($) Maquina inventari
1 (minutos)
30 1
40 2 o
15
2 20 45 60 10
3 15 55 5

Formule un MCNFP que sirva para minimizar el costo total para todas las
demandas a tiempo.

Formulación del Problema:

53
)
P11
500
0 / 30,0,1
(4
M11 (45/20,0,1400)

(0
(55 P21

,0
/30

,1
,0, (0,

50
18 0 ,1
)

00 40

0)
0

0)
40

)
,2
,0

M21
(0

) (0,0,
2400 P31 12 00)
(0,0,

(5
5/
20
I F

,0
(0,0, )

,1
2400 1800
(0,0,

80
)

0)
M12 P12
(0

0)
,0

80
,2

, 1
40

( 0,0
0)

)
0
80
P22

,1
,0
M22

P32 (0

(-M,0,9500)

54
Solución del Storm:

Desde Hasta Flujo


* 0 9500
0 1 2400
0 2 2300
0 3 2400
0 4 2400
1 5 1500
2 6 500
2 7 1200
2 10 600
3 8 1800
3 9 600
4 9 1200
4 10 1200
5 11 1500
6 11 1400
7 11 1200
8 11 1800
9 11 1800
10 11 1800
11 * 9500

Shipping Cost: -158333.33


Total Cost: -134258.33

Costo Real: 24075

3. Un gerente del área de sistemas va a realizar una serie de proyectos en


determinados plazos, por lo que necesita algunos requerimientos. Los datos de
los plazos y requerimientos se dan en la siguiente tabla:

55
Proyecto Plazo Requerimiento
(meses-hombre)
1 3 meses 8 m-h
2 4 meses 10 m-h
3 2 meses 12 m-h

Además se tienen que tomar las siguientes consideraciones:

En cada mes se dispone de 8 personas.


No más de 6 personas pueden trabajar en un proyecto en 1 mes.

Formulación del Problema:

(Distribución de los trabajadores)


No hay costo, sólo se busca el flujo máximo.

Solución del Storm:

56
Desde Hasta Flujo
* 0 30
0 1 8
0 2 8
0 3 8
0 4 6
1 5 2
1 7 6
2 6 2
2 7 6
3 5 6
3 6 2
4 6 6
5 8 8
6 8 10
7 8 12
8 * 30

Shipping Cost: -300000


Total Cost: -30000

Costo Real: 270000

4. Fordco produce automóviles en Detroit y en Dallas. La fábrica en Detroit


puede producir hasta 6500 automóviles, y la fábrica en Dallas puede producir
hasta 6000 automóviles. Cuesta $2000 producir un automóvil en Detroit y
$1800 producir un automóvil en Dallas. Hay que enviar los automóviles hacia
tres ciudades. La ciudad 1 debe recibir 5000 automóviles; la ciudad 2, 4000; y
la cuidad 3, 3000. En la siguiente tabla se da el costo por enviar un automóvil
de cada fábrica hacia cada ciudad.

HACIA
DESDE Ciudad 1 Ciudad 2 Ciudad 3
(dólares) (dólares) (dólares)
Detroit 500 600 300
Dallas 500 200 200

Formulación del Problema:


57
Solución del Storm:

Desde Hasta Flujo


* 1 6000
* 2 6000
1 3 5000
1 4 0
1 5 1000
2 3 0
2 4 4000
2 5 2000
3 6 5000
4 6 4000
5 6 3000
6 * 12000

Total Cost: -1173200000


5. Una universidad tiene 3 profesores que enseñan cada uno, cuatro cursos al
año. Cada año hay que ofrecer 4 secciones de Mercadotecnia, Finanzas y
producción. Se debe ofrecer por lo menos una sección de cada curso durante

58
cada semestre (otoño y primavera). En la siguiente tabla se dan las preferencias
de horario de cada profesor y las preferencias con respecto a sus cursos.

PROFESOR 1 PROFESOR 2 PROFESOR 3


Preferencia para la
3 5 4
primavera
Preferencia para el
4 3 4
otoño
Mercadotecnia 6 4 5
Finanzas 5 6 4
Producción 4 5 6

La satisfacción total que obtiene un profesor al enseñar un curso es la suma de


la satisfacción del curso. Así, el profesor 1 obtiene una satisfacción de 3+6.=9
de la enseñanza de mercadotecnia durante el semestre de otoño. Formule un
MCNFP que se pueda utilizar para asignar a los profesores a los cursos, para
maximizar la satisfacción total de los tres profesores

Formulación del Problema:

59
MP
4)
-9,0, (0,
1,4
( )
(-10,0,4) (0,1,
P1 MO 4)
M
(-8
)
,4

,0,
,0

)
4)

(0
)
,4
(0

,4

,2
,0
,0

,4
(-7
FP
(-9

(-9

)
(0,1,
4)

,0
,4
)
(0,0,4) (0,2,4)
I P2 4) F F
(0,1,
(-7
,0,

)
FO
4)

,4
,2
(0

(0
,0

(-8
,4
)

,0,

4) P
(0,1,
4)

P3 PP
)
1,4
(0,

PO

(-M,6,12)

Solución del Storm:

Desde Hasta Flujo


* 1 12
0 1 4
0 2 4
0 3 4
1 5 3
1 7 1
2 4 1
60
2 6 3
3 8 3
3 9 1
4 10 1
5 10 3
6 11 3
7 11 1
8 12 3
9 12 1
10 13 4
11 13 4
12 13 4
13 * 12

Shipping Cost: -120000


Total Cost: -120121

Costo Real: -121

6. Makonsel es una compañía integrada por completo que produce bienes y los
vende en sus propias tiendas. Después de la producción los bienes se colocan
en dos almacenes hasta que las tiendas los necesitan. Se usan camiones para
transportar los bienes a los almacenes y luego a las otras tiendas.
Utilice una carga completa de camión como unidad; la siguiente tabla muestra
la producción mensual de cada planta, su costo de transporte por carga enviada
a cada almacén y la cantidad máxima que se puede enviar al mes a cada uno.

Costo unitario de envío Capacidad de envío Producción


A Almacén 1 Almacén 2 Almacén 1 Almacén 2
De
Planta1 $425 $560 125 150 200
Planta2 $510 $600 175 200 300

Para cada tienda (T), la siguiente tabla contiene su demanda mensual, el costo
de transporte por carga desde cada almacén y la cantidad máxima que se puede
enviar al mes desde cada uno.

A Costo unitario de envío Capacidad de envío


61
De T1 T2 T3 T1 T2 T3
Almacen1 $470 $505 $490 100 150 100
Almacen2 $390 $410 $440 125 150 75
Demanda 150 200 150 150 200 150

La administración desea determinar un plan de distribución (numero de cargas


enviadas al mes de cada planta a cada almacén y de cada uno de estros a cada
tienda) de modo que se minimice el costo total de transporte.

a) Trace una red que describa la red de distribución de la compañía. Identifique


en ella los nodos fuente, de trasbordo y demanda.
b) Formule este problema como un problema del flujo de costo mínimo
colocando todos los datos necesarios.

Formulación del Problema:

Solución del Storm:

Desde Hasta Flujo


62
* 0 500
0 1 200
1 2 300
1 4 125
2 3 75
2 4 125
3 5 175
3 6 100
3 7 50
4 5 100
4 6 50
4 7 150
5 8 50
6 8 150
7 8 200
8 * 150

Shipping Cost: -5000000


Total Cost: -4511875

Costo Real: 488125

7. Una empresa está interesada en cubrir dos puestos, uno de gerente de ventas
y otro de gerente de logística. Para el puesto se presentan 3 personas
(egresados de la carrera de administración, o con maestría en administración de
empresas), los cuales son sometidos a unas pruebas para comprobar su
capacidad para cada puesto.
Los resultados se muestran en la siguiente tabla:

Postulante Puesto 1 Puesto 2


1 13 17
2 15 10
3 12 14

Mediante la teoría de redes, diseñe un modelo que permita escoger a los


mejores postulantes para los dos puestos.

63
Formulación del Problema:

Se plantea una tabla cuyos valores (equivalentes a los costos) son


complementos respecto a 17 de los datos obtenidos anteriormente

Postulante Puesto 1 Puesto 2


1 4 0
2 2 7
3 5 3

Solución del Storm:

Desde Hasta Flujo


* 0 2
0 1 1
0 2 1
0 3 0
1 4 0
64
1 5 1
2 4 1
2 5 0
3 4 0
3 5 0
4 6 1
5 6 1
6 * 2

Flujo Máximo: 2
Total cost = -1998

Es decir, el postulante 1 es designado al puesto 2 y el postulante 2 al puesto 1.

8. Una compañía elabora un producto en dos fábricas: fabrica 1 y fabrica 2. En


la siguiente tabla se da el costo unitario de producción y la capacidad de
producción para cada periodo.

COSTO UNITARIO DE CAPACIDAD


PRODUCCION(dólares)
Fabrica1(periodo1) 33 7
Fabrica1(periodo2) 43 4
Fabrica2(periodo1) 30 9
Fabrica2(periodo2) 41 9
Se envía de inmediato el producto al único cliente de la compañía según los
costos unitario de envío dados en la siguiente tabla:
PERIODO 1 (dólares) PERIODO 2(dólares)
Fabrica 1 al cliente 51 60
Si se
Fabrica 2 al cliente 42 71
produce y se envía una unidad durante el periodo 1, todavía podría ser utilizado
para satisfacer la demanda del periodo 2, pero se cargara un costo por
mantenimiento del inventario de 13 dólares por unidad. Al terminar el
periodo1, se pueden tener a lo más seis unidades del inventario. Las demandas
son las siguientes: periodo 1, 9; periodo 2, 11. Formule un MCNFP que se
puede utilizar para minimizar el costo de satisfacer todas las demandas a
tiempo. Dibuje la red y determine el flujo total.

Formulación del Problema:


65
(84,0
F11 ,7)
P1
(0
7) ,9 ) ,0
, 0, (72,0 (97 ,9
(0 ,0, )
9) F21
(0,0, 6)

(85,0
I ,6) Inv F
(0,0,
4) 1)
(0,0,6) 0,1
(0 F12 (103 (0
,
,0 ,0,4)
,9
)
,0,9) P2
(112
F22

(-M,0,20)
Solución del Storm:

Desde Hasta Flujo


* 0 20
0 1 6
0 2 9
0 3 4
0 4 1
1 6 6
2 5 9
3 7 4
4 7 1
5 8 9
6 7 6
7 8 11
8 * 20

Shipping Cost: -20000


66
Total Cost: -18246

Costo Real: 1754

9. Data Corporal produce computadoras en Boston y en Raleigh. Boston puede


producir anualmente hasta 400 computadoras y Raleigh puede producir
anualmente hasta 300 computadoras. Los clientes en Los Ángeles tienen que
recibir anualmente 400 computadoras y hay que enviar anualmente 300
computadoras a los clientes de Austin. Cuesta $800 producir una computadora
en Boston y $900 producir una computadora en Raleigh. Se transportan las
computadoras en avión y se puede mandarlas vía Chicago. En la siguiente tabla
se muestran los costos para enviar una computadora entre dos ciudades.

HACIA
DESDE
Chicago ($) Austin ($) Los Ángeles ($)
Boston 80 220 280
Raleigh 100 140 170
Chicago - 40 50

Formulación del Problema:

Solución del Storm:

67
Desde Hasta Flujo
* 0 700
0 1 400
0 2 300
1 3 400
2 5 300
3 4 400
4 6 400
5 6 300
6 * 700

Shipping Cost: -7000000


Total Cost: -6316000

Costo Real: 684000

10. Oilco tiene campos de petróleo en San Diego y en Los Ángeles. El campo
de San Diego puede producir diariamente hasta 500,000 barriles, y el campo de
Los Ángeles puede producir diariamente hasta 400,000 barriles. Se manda el
petróleo de los campos a una refinería en Dallas o Houston (supóngase que
cada refinería tiene una capacidad limitada). Cuesta 700 dólares refinar
100,000 barriles de petróleo en Dallas y 900 dólares refinar 100,000 barriles de
petróleo en Houston. Se envía el petróleo refinado a clientes de Chicago y en
Nueva York. Los clientes de Chicago necesitan diariamente 400,000 barriles de
petróleo refinado, y los de Nueva York 300,000 barriles de petróleo refinado.
En la siguiente tabla se muestran los costos para transportar 100,000 barriles de
petróleo (refinado o no) entre dos ciudades.

Formule un MCNFP que se pueda utilizar para determinar cómo minimizar el


costo total para satisfacer todas las demandas.

Formulación del Problema:

68
Solución del Storm:

Desde Hasta Flujo


1 * 7
0 1 4
0 2 3
1 4 4
2 3 3
3 5 3
4 6 4
5 8 3
6 7 4
7 9 4
8 9 3
9 * 7

Shipping Cost: -70000


Total Cost: -59530

69
Costo Real: 10470

11. Durante los próximos tres meses, Shoemaker,Inc. Debe satisfacer(a tiempo)
las siguientes demandas de zapatos: mes1, 1000 pares; mes2, 1500 pares; mes
3, 1800 pares. Se necesita 1 hora de trabajo para producir un par de zapatos.
Durante cada uno de los próximos tres meses, se dispone del siguiente numero
de horas de trabajo regular: mes1, 1000 horas; mes2, 1200 horas; mes3, 1200
horas. Cada mes, la compañía puede exigir de los trabajadores hasta 400 horas
de tiempo extra. A los trabajadores se les paga solamente por las horas que
trabajan, a razón de 4 dólares la hora de tiempo regular y 6 dólares la hora de
tiempo extra.
Al final de cada mes se incurre en un costo por mantenimiento del inventario
de 1.5 dólares por par de zapatos. Formule un MCNFP que se puede utilizar
para minimizar el costo total incurrido al satisfacer las demandas de los
próximos tres meses. Una formulación apropiada requiere un dibujo de red
apropiada.

Formulación del Problema:

(0,0,
) D1 1000
1000 )
(4,0,
(1
.5 M1
,0 (0,
) N ,1 0
(4, 40 ,10
4 00 0
,12 0) 00
0,3 (4 00 )
(0,
(3,

,0 )
,1
0,1

20
(0,0,1500)
40

0)
I D2 M2 F
0)

) (0,0,1500)
)

00
00

(1.
(0, 0,4 5 0)
0,4

0 ,12 (6, ,0,


16 18
0
00 0 , 0,
(6,

) 0) (0
TE (6,0, )
400) 1600 M3
(0,0,
D3

(-M,0,4300)

70
Solución del Storm:

Desde Hasta Flujo


* 0 4300
0 1 3400
0 2 900
1 3 1000
1 4 1200
1 5 1200
2 3 100
2 4 400
2 5 400
3 6 1000
3 8 100
4 7 1500
4 8 100
5 8 1600
6 9 1000
7 9 1500
8 9 1800
9 * 4300

Shipping Cost: -430000


Total Cost : -410550

Costo Real: 19450

12. El consejo académico de una universidad esta buscando una representación


entre 6 estudiantes que están afiliados a 4 sociedades de honor. La
representación de consejo académico incluyen tres áreas: Matemáticas Artes e
ingeniería. Cuando mucho dos estudiantes de cada área pueden estar en el
consejo. La siguiente tabla muestra la membresía de los seis estudiantes en las
cuatro sociedades de honor.

71
Sociedades Estudiantes afiliados
1 1,2,3
2 1,3,5
3 3,4,5
4 1,2,4,6

Los estudiantes que poseen habilidades en las áreas de matemáticas, artes e


ingeniería, se muestran en la siguiente tabla:

Área Estudiantes con habilidades


Matemáticas 1,2,4
Artes 3,4
Ingeniería 4,5,6

Un estudiante que posee habilidades en más de un área se debe asignar


exclusivamente a un área. ¿Es posible que las cuatro sociedades de honor estén
representadas en el consejo?
Formulación del problema:

72
1 (0,1,0) 1a
(0,1,0)

(0,1,0)

S1 (0,1,0)
2 (0,1,0) 2a (0,1,0) M
(0,1,0)
(0,2,0)
(0,1,0)

(1,3,0) S2 (0,1,0) 3 (0,1,0) 3a (0,1,0)


(1,3,0)
(0,1,0) (0,1,0)
I (0,1,0)
A (0,2,0) F
(1,3,0)
(0,1,0)
(1,4,0) S3 (0,1,0) 4 (0,1,0) 4a
(0,1,0) (0,1,0)

(0,1,0) (0,2,0)
5 (0,1,0) 5a (0,1,0)
S4 I
(0,1,0)

(0,1,0)
6 (0,1,0) 6a

(4,6,-M)

La red está construida para que se obligue a tener un representante de cada


sociedad, sin embargo es posible que el problema no tenga solución, en ese
caso se dirá que no están representadas las sociedades por uno por lo menos.

13. Suponga que cuesta $10,000 comprar un automóvil nuevo. El costo de


operación anual y el valor de reventa de un automóvil usado se muestran en la
tabla. Suponiendo que en la actualidad se tiene un automóvil nuevo, determine
una política de reemplazo que minimice los costos netos de poseer y operar un
auto durante los siguientes 6 años.

EDAD VALOR DE COSTO DE OPERACIÓN ($


(años) REVENTA($) por año)
1 7000 300
2 6000 500
73
3 4000 800
4 3000 1200
5 2000 1600
6 1000 2200

Formulación del problema:

El gasto acumulado de acuerdo a los años de operación, luego de venderlo


transcurridos dichos años:

EDAD(años) Gasto acumulado Costo de operación


1 300 3300
2 800 4800
3 1600 7600
4 2800 9800
5 4400 12400
6 6600 15600

74
CAPÍTULO III

PROGRAMACIÓN POR EL CAMINO CRÍTICO

3.1 DEFINICIONES

El método de programación por el camino crítico es una herramienta de


control, que la dirección utiliza con el objeto de definir, integrar y analizar
las operaciones necesarias para ejecutar un programa de actividades de manera
óptima.

PROCESO PRODUCTIVO. - Es un conjunto de actividades para lograr un


resultado.

FASES DEL PROCESO PRODUCTIVO . - Existen tres fases estas son:


planificación, programación y control.

a. -Planificación. - La planificación consiste en la determinación de


actividades, recursos y tiempos requeridos. La planeación da como resultado
una secuencia entre pares de actividades.

b. -Programación. - Se ocupa de la construcción de la red de actividades,


considerando las relaciones de precedencia permitiendo de esta manera,
calcular el tiempo de ejecución de todo el proceso planeado (Ruta Crítica) y los
tiempos de comienzo y de término más o menos probables de todas las
actividades.

c. -Control. - Es el conjunto de actividades tales como el control de costos,


control de tiempo, etc. , que se realizan paralelamente a la ejecución de las
actividades del proceso con el fin de asegurar el cumplimiento del programa y
reaccionar oportunamente frente a las desviaciones que se presentan con
referencia a las dos fases enunciadas anteriormente.

3.2 PROCEDIMIENTO PARA LA CONSTRUCCIÓN DE UNA RED,


TERMINOLOGIA Y SIGNOS CONVENCIONALES

75
ACTIVIDAD. - Es una acción que requiere de tiempo para su ejecución; la
representación está dada por un círculo en donde se identifica la actividad (A)
y el tiempo requerido para su ejecución (d).

PRECEDENCIA. - La precedencia es una relación establecida en la


planificación y que determina el orden de sucesión de las actividades.

Ejemplo:

A < B, C significa que la actividad A precede o se ejecuta antes que las


actividades B y C.
Sin considerar el tiempo esta relación de precedencia, se grafica como sigue:

Fig. 3. 1

RED. - La red o grafo es la representación gráfica del orden de realización de


las actividades necesarias para ejecutar un programa.
Ejemplo: Sea el siguiente programa

76
TIEMPO Relación de
ACTIVIDAD
(semanas) Precedencia
A 4 A < D, F
B 5 B < E, G, H
C 3 C < G, H
D 3 D<E
E 6 E< I
F 1 F<J
G 5 G< I
H 6
I 2
J 4

77
(+F3) (-C1)
(-I1)
1 15 15
8 I1 A1 20
20
F1 7
10
12 7
15

8 C1 28
10
20 (-I1) (+F3) 12 5 28
10
10 10 2 2 15 15
+ X0 F2 I2 A2 X1
3 12 22
5 (-C1) 22
7
25 15
8 9 10
C2
20 3
8 8 2 22 20 15 15
F3 I3 A3

(+X0) (+F1) (+I3)

Fig 3.2

Las actividades INICIO y FIN de duración igual a cero son ficticias, se usan
para señalar los puntos de inicio y término del programa.

3.3 DETERMINACIÓN DE LA DURACIÓN DEL PROGRAMA Y DE LAS


HOLGURAS DE LAS ACTIVIDADES

Con la ayuda del programa de la fig. 3. 2, se procederá a aplicar las


definiciones que siguen a continuación:

DEFINICIONES Y CALCULOS
Tiempo más próximo de inicio ( TPI). - El TPI de una actividad es el tiempo
más cercano en que es posible iniciar su ejecución. La representación en la red
es como en la fig. 3. 3.

TPI
78
d
Act.
Fig. 3. 3

El TPI de la actividad INICIO es cero. Para determinar el TPI de la actividad j


se hace el cálculo siguiente:

TPI(j) = max{TPI(i)+d(i)}, i<j


i = A, B, C, . .
d(i) : tiempo de ejecución de la actividad i

El TPI de la actividad I (fig. 3. 5) se determina de la forma siguiente:


TPI(I) = max {TPI(E)+d(E), TPI(G)+d(G)}
= max {7+6, 5+5} = 13

El TPI del último evento nos da el tiempo total de ejecución del programa.

Tiempo más próximo de término (TPT). -

El TPT de una actividad i se calcula como sigue:


TPT(i) = TPI(i) + d(i)

Con referencia a la fig. 3. 1 el TPT de G es:


TPT(G) = TPI(G) + d(G) = 10

Holgura libre (HL) . -

La HL de una actividad (i) se calcula como sigue:


HL(i) = min { TPI(j) } - TPT(i) , i < j
J = A, B, C, . .
La HL es el tiempo adicional al programado que posee una actividad, cuyo uso
no afecta al TPI de las actividades que siguen a su ejecución.
79
La HL de la actividad C (fig 3. 1) se determina como sigue:
HL(C) = min{TPI(G), TPI(H)} - TPT(C)
= min{ 5, 5 } - 3 = 2

Tiempo más lejano de inicio (TLI). -

El TLI de una actividad es el tiempo más lejano en que es posible iniciar su


ejecución.
La representación en la red es como sigue:

T
LI T
P
d I
A
Fig. 3. 4 ct.

El TLI de la actividad FIN es igual al TPI de esta actividad. Para determinar el


TLI de la actividad i, se hace el calculo siguiente:

TLI(i) = min {TLI(j)} - d(i) , i<j


j = A, B, C, . .

El TLI de la actividad B (fig. 3. 1) se determina


de la forma siguiente:

TLI(B) = min{TLI(E), TLI(G), TLI(H)} - d(B)


= min{7, 8, 9}- 5 = 2

Tiempo más lejano de termino ( TLT). -


El TLT de una actividad i se calcula como sigue:
TLT(i) = TLI(i) + d(i)

80
Con referencia a la fig. 1 el TLT de C es:

TLT(C) = TLI(C) + d(C) = 8

Holgura total (HT) . -

La HT de una actividad i se calcula como sigue:

HT(i) = TLI(i) - TPI(i)

Si por algún motivo se usa toda la HT de una actividad en el desarrollo de esta


es posible que los TPI de las actividades que siguen sufran
Variaciones.

La HT de la actividad F se determina como sigue:

HT(F) = TLI(F) - TPI(F) = 6

Si la actividad F (FIG 3.5) consume toda su HT entonces el tiempo mas lejano


de termino es:

TLT(F) = TLI(F) + d(F) = 11

Como se observa de la fig. 3. 1, el inicio de J empieza en la unidad 11.

Ruta crìtica (RC) . -

La RC es un camino formado por actividades cuya HT de cada una de ellas es


igual a cero.
Este camino se inicia en el primer nudo y termina en el final. Aplicando esta
definición a la fig. 3. 1 se concluye que la RC esta formada por las
actividades conectadas por el doble trazo, siendo éstas: A, D, E, I.

81
10 11
4 5
1 4
F J

0 4
0 4
4 3
A D

0 2 7 13 15
0 0 7 13 15
0 5 6 2 0
INI B E I FIN

5 8
0 5
3 5
C G

9
5
6
H

Fig. 3.14Fig 3.5

82
TIEMPOS Y HOLGURAS EN LA RED

ACT.
ACT DUR TPI TPT TLI TLT HL HT
CRI

A 4 0 4 0 4 0 0 *

B 5 0 5 2 7 0 2

C 3 0 3 5 8 2 5

D 3 4 7 4 7 0 0 *

E 6 7 13 7 13 0 0 *

F 1 4 5 10 11 0 6

G 5 5 10 8 13 3 3

H 6 5 11 9 15 4 4

I 2 13 15 13 15 0 0 *
J 4 5 9 11 15 6 6

Fig.
Fig3.83.6

3.4 ASPECTOS PROBABILÍSTICOS DEL MÉTODO

La parte anterior del presente capítulo se ha tratado solamente con actividades


de duración fija (caso determinístico) pero no siempre es posible predecir la
duración de las actividades para este caso, o sea cuando existe incertidumbre
en el tiempo de duración de las actividades es conveniente aplicar la técnica de
la evaluación y control de programas (PERT).

ESTIMACIONES DE TIEMPO.- La variación de las duraciones de ejecución


se halla a partir de las tres estimaciones de tiempo necesarias para cada una
de las actividades:

a : Estimación optimista de la duración.

b : Estimación pesimista de la duración.


83
m : Estimación más probable de la duración.

Con las tres estimaciones se calcula el tiempo esperado de la actividad i

a i +4 mi + bi
ui =
6
El tiempo esperado o medio para una actividad, indica el tiempo de duración
de una actividad con la mayor aproximación de acertar, la medida para
expresar la incertidumbre, en la duración, es la varianza (  2 i ) la cual indica
el riesgo de no acertar la duración media calculada de la actividad.

2
2 ( b i−a i )
σ i= 2
6
Cuanto más pequeño sea el valor de la varianza, mayor será la confianza que se
puede tener en las cifras de la duración esperada.

ESTIMACIÓN DE LAS PROBABILIDADES EN EL CUMPLIMIENTO DE


LA DURACIÓN TOTAL DEL PROYECTO.
Para determinar la duración total del proyecto (T c ) se suman todos los tiempos
medios de las actividades del camino crítico.

Tc =  ui i: actividad crítica

Según el teorema del límite central la varianza total del proyecto será también
la suma de las varianzas de las actividades críticas.

2T =  2 i i: actividad crítica

84
Si deseamos conocer la probabilidad de que el proyecto termine antes o
después del tiempo calculado (T c ) se aplica la siguiente fórmula:

T d −T
Z=
σT
T d : Tiempo deseado

Z: Factor de probabilidad que se ubica en la tabla de valores de la Función de


Distribución Normal, a fin de determinar la probabilidad de termino del
proyecto.

Ejemplo:

Sean las actividades, restricciones y los tiempos a, m, b ; determinar :

a. La ruta crítica, T c.
b. La probabilidad de que el proyecto termine hasta en 17 semanas.
c. La probabilidad de que el proyecto termine después de 17 semanas.
d. El tiempo para un 90% de probabilidad de que ocurra.

La red y el tiempo esperado de cada actividad corresponden a la fig. 3. 2, la


varianza de las actividades críticas y de la ruta crítica están en el cuadro
siguiente:

85
TIEMPO (SEMANAS)
RELACION ACTIV
ACTV i
PRECEDEN CRITI
a m b u

A A< D,F 3 4 5 4 * 0.11


B B< E,G,H 3 5 7 5
C C< G,H 2 3 4 3
D D< F E 1 3 5 3 * 0.44
E E< I 5 6 7 6 * 0.11
F F< J 1 1 1 1
G G< I 3 4 11 5
H ____ 4 5 12 6
I ____ 1 2 3 2 * 0.11
J ____ 4 4 4 4

 2 T = 0. 77
Ejemplo de cálculo para hallar u:

2
5+4 x 6 x 7 (7−5)
u F= u F= =0 .11
6 ; 62
a. - La ruta crítica está formada por los arcos señalados con doble trazo (fig.
3. 2)
- Tiempo de duración

T c = u 1, 2 + u 2, 4 + u 4, 6 + u 6, 8

= 4 + 3 + 6 + 2 = 15

- Varianza

Tc = A + D + E + I
= 0. 11 + 0. 44 + 0. 11 + 0. 11
Tc = 0. 77

86
Desviación estándar Tc = 0. 88

b. - Para que termine hasta en T d = 17, la probabilidad es de:

T d −Tc 17−15
Z= = =2. 3
Tc 0 . 88
para z = 2. 3 la probabilidad es de 98. 9%

c. - Para que termine después de 17, la probabilidad es:

100 - 98. 9 = 1. 1 %, calculado en base a la respuesta anterior.

d. - El tiempo para un 90% de probabilidad es:


De la tabla, probabilidad de 90% z = 1. 29 por consiguiente de

T d −Tc
Z=
Tc
Se obtiene que T a = 16. 1

3.5 ASIGNACIÓN DE RECURSOS (SHAFFER)

El método de asignación de recursos (MAR) consiste en la modificación de la


secuencia de las actividades en forma tal que se respete las disponibilidades de
recursos y se minimice los posibles incrementos en la duración del proyecto
obtenido del plan original.
Para aplicar el método de asignación de recursos
Se requiere la siguiente información:

a) Diagrama de flechas

b) Duración estimada y cantidad de recursos de las actividades

c) Nivel máximo de cada recurso

87
METODO DE ASIGNACION DE RECURSOS (MAR)

El MAR se aplicará al siguiente programa:

TIEMPO RELACION DE RECURSOS


ACT.
(sem) PRECEDENCIA R1 R2
A 4 A < D, F 3 1
B 5 B < E, G, H 1 0
C 3 C < G, H 3 1
D 3 D<E 3 1
E 6 E<I 1 2
F 1 F<J 4 1
G 5 G<I 0 1
H 6 2 0
I 2 2 1
J 4 1 1
RECURSOS DISPONIBLES 7 4

En las tres primeras semanas sólo se dispone de 6 unidades del recurso R1

La red del programa es la fig. 3.7

88
10 11
4 5
1 4
F J

0 4
0 4
4 3
A D

0 2 7 13 15
0 0 7 13 15
0 5 6 2 0
INI B E I FIN

5 8
0 5
3 5
C G

9
5
6
H

Fig 3.7
Fig. 3.14

89
TIEMPOS Y HOLGURAS EN LA RED

ACT.
ACTV DUR TPI TPT TLI TLT HL HT
CRI
A 4 0 4 0 4 0 0 *
B 5 0 5 2 7 0 2
C 3 0 3 5 8 2 5
D 3 4 7 4 7 0 0 *
E 6 7 13 7 13 0 0 *
F 1 4 5 10 11 0 6
G 5 5 10 8 13 3 3
H 6 5 11 9 15 4 4
I 2 13 15 13 15 0 0 *
J 4 5 9 11 15 6 6
Fig. 3.8

90
Aplicación del MAR
91
1.-Calcular el TPI, el TLI, TPT y HT de cada actividad (fig. 3.8).
2.-Dibujar el diagrama de barras del plan original (fig. 3.9), aquí se observa
que las actividades A, B y C se ejecutan simultáneamente, para lo cual
requieren de unidades del recurso R, y se dispone de sólo 6 unidades, por
consiguiente debe modificarse la secuencia de estas actividades de la manera
siguiente:
a.- De las actividades se eligen dos: i y j.
b.- La actividad i es aquella que posee el mínimo TPT.
c.- La acitividad j es aquella que posee el máximo TLI.
d.- Se crea la restricción i < j.
Si i = j, se considera, como i ó j, dentro de las actividades no seleccionadas,
aquella actividad qçue tenga el tPT o el TLI más próximo a los valores
hallados.
e.- Se construye el diagrama de flechas modificado, incluyendo las
restricciones determinadas en (d) y se repite el proceso cuantas veces sea
necesario.

En el ejemplo anterior, la actividad C tiene el mínimo TPT y el máximo TLI

ACT TPT TLI


A 4 0
B 5 2
C 3 5

El TPT más cercano a la actividad C (TPT = 3) lo tiene la actividad a (TPT =


4), la diferencia es 1. El TLI más cercano a la actividad C (TLI = 5) lo tiene la
actividad B (TLI =2), la diferencia es 3.

Entonces la menor diferencia corresponde al TPT de la actividad A, en


consecuencia A < C y se incluye esta restricción en el diagrama de flechas. Fig.
3.10.

92
10 11
4 5
1 4
F J

0 4
0 4
4 3
A D

0 2 7 13 15
0 0 7 13 15
0 5 6 2 0
INI B E I FIN

5 8
4 7
3 5
C G

9
7
6
H

Fig. 3.14

93
ACTV DUR TPI TPT TLI TLT HT

A 4 0 4 0 4 0
B 5 0 5 2 7 2
C 3 4 7 5 8 1
D 3 4 7 4 7 0
E 6 7 13 7 13 0
F 1 4 5 10 11 6
G 5 7 12 8 13 1
H 6 7 13 9 15 2
I 2 13 15 13 15 0
J 4 5 9 11 15 6
Fig. 3.11

Con la información de la Fog. 3.11, se elabora la Fig. 3.12 en la que se observa


que se requiere de 10 unidades del recurso R1 y 3 de R2, y se dispone de sólo 7
y 4 unidades de R1 y R2 respectivamente. También se observa que las
actividades B, C, D y F se debe ejecutar simultáneamente en la quinta semana.

Entre las actividades B, C, D y F, según la Fig. 3.11, las actividades con el


mínimo TPT son b y F, y con el máximo TLI, la actividad F, en consecuencia s
adiciona B < F.

Se continúa aplicando el algoritmo hasta obtener la Fig. 3.13

94
Fig. 3.12

95
Fig. 3.13

3.6 OPTIMIZACIÓN DE PROGRAMAS


96
El tiempo de ejecución de cada actividad puede ser variada en función a los
recursos que se emplee para su ejecución, cuando se incrementan los recursos
o se hace uso de tecnología más avanzada, para la ejecución de las actividades,
se tiene como consecuencia un menor tiempo de ejecución y un incremento en
los costos de producción o fabricación consiguiéndose además una disminución
en los costos indirectos.

El problema consiste en determinar qué actividades se han de acortar en


su duración para que obtenga como resultado un costo total mínimo.

El método se explica mediante el ejemplo siguiente:


Ejemplo: Determinar el costo total mínimo del siguiente programa:

TIEMPO COSTO DIRECTO


ACTIVIDAD NORMAL LIMITE NORMAL LIMITE
PRECEDENCIA

A 4 2 20 26 D,F
B 5 3 15 21 E,G,H
C 3 3 17 17 G,H
D 3 2 25 29 E
E 6 4 16 20 I
F 1 1 30 30 J
G 5 4 18 20 I
H 6 6 40 40 -
I 2 2 30 30 -
J 4 3 10 11 -

Costo Indirecto (CI) = 50 + 4 t

Siendo (t) el tiempo de duración del programa:

a) Construcción de la red de actividades Fig. 3.14


b) Se construye la tabla fig.3.15.

97
10 11
4 5
1 4
F J

0 4
0 4
4 3
A D

0 2 7 13 15
0 0 7 13 15
0 5 6 2 0
INI B E I FIN

5 8
0 5
3 5
C G

9
5
6
H

Fig. 3.14
TIEMPO DIF. C. DIRECTO DIF.
ACT. NOR. LIM. dT. NOR. LIM. dC. dC/ dT

A 4 2 2 20 26 6 3
B 5 3 2 15 21 6 3
C 3 3 - 17 17 - -
D 3 2 1 25 29 4 4
E 6 4 2 16 20 4 2
F 1 1 - 30 30 - -
G 5 4 1 18 20 2 2
H 6 6 - 40 40 - -
I 2 2 - 30 30 - -
J 4 3 1 10 11 1 1

98
TOTAL COSTO DIRECTO: 221

Fig. 3.15

c) EVALUACION DE LA RUTA CRÍTICA .-

El procedimiento es el siguiente:
Se determinan todos los cambios de la red desde el origen hasta el final.
Se calcula la duración de cada camino a fin de obtener la ruta crítica y se
calcula el costo total del programa. Los resultados obtenidos se hallan en la
fig. 3.16.

DURACION DE LOS CAMINOS

CAMINOS NORMAL RED. 1 RED.2 RED.3 RED.4

A,F,J 9 9 8 7 7
A,D,E,I 15 13 12 11 10
B,E,I 13 11 11 11 10
B,G,I 12 12 12 11 10
C,G,I 10 10 10 9 9
C,H 9 9 9 9 9

DURACIÓN 15 13 12 11 10

COSTOS:
DIRECTO 221 225 228 233 240
INDIRECTO 110 102 98 94 90

TOTAL 331 327 326 327 330

(a) (b) (c) (d) (e)

Fig.3.16

99
d) ACELERACION DE LAS ACTIVIDADES .-

Para acortar la duración del programa, se deberá acelerar aquellas actividades


que pertenezcan a la ruta crítica .El procedimiento que se sigue es:
Se construye una sub gráfica parcial conteniendo las actividades críticas.
(fig. 3.17)
Se asocia a cada actividad el costo unitario de reducción ( C/ T), el que
se ha de asumir como capacidad de flujo, aquella actividad que no tenga
costo unitario de reducción, se asume que este es M (un número muy
grande); se asume además que las capacidades de los arcos incidentes al
interior y exterior de cada actividad es también M y se calcula el flujo
máximo aplicando el algoritmo de Ford y Fulkerson para determinar las
actividades que deberán acortar su duración. Obtenidas estas, se calcula el
 T, siendo este el menor valor entre el  T de la(s) actividad(es) y la
diferencia de tiempo entre la ruta crítica y el camino que le sigue en valor.

Con la nueva información se procede a calcular la duración de los


caminos y costo total fig. 3.16 a, b, c, d, y e.

Lo descrito anteriormente, se aplica para el ejemplo de la manera


siguiente:

REDUCCION 1

En la tabla 3.16 se tiene que la ruta crítica es A, D, E, I, los C/ T se


ubican en cada uno de los círculos de la fig. 3.17.

100
CT
(+ INICIO) (+ A) ACTIVIDAD

3 2 2 4
M
A D

2
2

M
M

2
2 M
(+) INICIO M M
E 2 2 I 2 2

Se observa que el máximo flujo es 2 unidades (costo unitario de reducción de


actividad E) y corresponde por lo tanto acelerar al actividad E.
Acortamiento de E :
 T = min. (2, 15-13) = 2
Donde 2 es el  T de la Act. E y (15-13) es la diferencia de la ruta crítica y el
camino que sigue en valor. Con la información se produce a llenar la parte (b)
de la fig. 3.16; de la siguiente manera:

Costo directo = 221+ 2x2 = 225

Costo Indirecto = 50 + 4 x 13 = 102


Costo total= 327

REDUCCION 2

101
3 3 3 4
M
A D

3
3

M
M

M M
(+) INICIO M M FIN
3 3 3 I 3 3

Fig 3.18

Acortamiento de la duración de la actividad A en la unidad (resultados en la


parte (C) de la fig. 3.16 )

102
REDUCCIÓN 3

3 3 3 4
M
A D
3
3

M M

3 2 M
INICIO M M FIN
B E I
3 3 5 5
(+) 2
(+ IN ICIO )
2

2
2
2 G

Fig.
3.19

Acortamiento de la duración de las actividades A y G en la unidad (resultados


en la parte (d) de la fig. 3.16)

103
REDUCCION 4

(+ INICIO)

3 4 4 4
M
A D
4
4

M M

4
3 3 3 3 2 M
INICIO M M M M FIN
B E I
7 7 7 7
(+ INICIO)

M M

2
G M
M

M
H

Fig. 3.20

Acortamiento de la duración de las actividades B y D en la unidad


(resultados en parte (e) de la fig. 3.16).

No es posible acortar más el programa ya que como se observa, en la


fig. 3.21 las actividades del camino A, D, E, I, han sido reducidas al límite.

104
M M
A D

3 M M
INICIO FIN
B E I

M
G

M
H

Fig. 3.21

Finalmente se concluye que la REDUCCION 2 es la óptima ya que con ella se


obtiene el menor costo total (326 unidades), por otra parte si se desea saber
cuál es el costo y el tiempo mínimo de ejecución del programa, el resultado
está en la REDUCCION 4, donde se tiene que el costo total es de 330
unidades, siendo el tiempo de 10 unidades (tabla 3.16 e).

105
3.7 PROBLEMAS RESUELTOS

1. Armar la red y hallar la ruta crítica.

TABLA DE ACTIVIDADES TIEMPO


RESTRIC.

A Pedido y recep. de unidad para aire......................... 14 A<H,K


B Pedido y recepción de tuberías ............................... 4 B<I
C Pedido y recep. de rejillas, registros y lumbreras ... 11 C<F
D Pedidos y recepción de canalización de aire .......... 8
D<F
E Determinar el trazado de la canalización de aire ..... 3
E<D,G
F Inst. canalización de aire, registros y lumbreras ... 18 F<G
G Instalar rejillas ......................................................... 1
G<M
H Instalar la unidad de acondicionamiento de aire ..... 1 H<L,J
I Montar tuberías auxiliares ...................................... 10 I<J
J Conectar tuberías a la unidad ................................ 1
J<M
K Inst. eléctrica, línea principal y termostato ............. 4 K<L
L Dispositivos de control y cables complementarios . 2 L<M
M Pruebas y ensayos ................................................. 2
M<N
N Aislamiento y limpieza ............................................ 4

Solución :

106
0 11 29
0 11 29

C F G
11 18 1
3
3
0 24
0 14
D
0 E 8 K 28 30 32 36
0 3 4 18 30 32 36

INICIO L M N FIN
0 10 27 2 2 4
0 14

A H
14 1
29
15
15 19
0 4 J
1
B I
4 10

En la red se observa que no es necesario considerar la restricción E<G por no


ser actividades vecinas, como se observa en el gráfico la restricción es
superflua.

El tiempo de duración total del proyecto es = 36


Se tiene 2 Rutas Críticas:
RC1 : Inicio - C - F - G - M - N - FIN
RC2 : Inicio - E - D - F - G - M - N - FIN

2. Considere la siguiente red correspondiente al lanzamiento de un producto al


mercado. Las 3 estimaciones usuales para c/u de las actividades son (en
semanas):
107
ACT. PRECED. NOMBRE DE ACTIVIDAD a m b

A A<C,D,G Diseño del producto 1 2 9


B B<E,F Análisis de publicidad 3 4 5
C C<F Fab. Y ensayo de muestras 2 4 6
D D<F Programación de ventas 3 5 13
E E<F Evaluación de ensayo 4 4.5 8
F - Campaña de publicidad 4 4 4
G - Preparación de producción 1 2 3
H - Producción. 2.5 3 3.5

a) Determinar la ruta crítica y el número de semanas necesarias para tener


un 80% de probabilidad de que se cumpla el programa.
b) Cuál es la probabilidad de cumplir con el programa entre *TRC-1
semana TRC+3 semanas

*TRC = Tiempo de Ruta Crítica

Solución :

Calculando los Te = a+4m+b


6

ACT. a m b Te s2 s2

A 1 2 9 3 - 1.78
B 3 4 5 4 0.11 -
108
C 2 4 6 4 - -
D 3 5 13 6 - 2.78
E 4 4.5 8 5 0.44 -
F 4 4 4 4 0 0
G 1 2 3 2 - -
H 2.5 3 3.5 3 - -

0.55 4.56

4
4
0
0 5
E
4 9
B 9
5
3
0 4
0 0 4 F
0 C
0 3
INICIO A 3
3

6
D
13
13
11
3 0
FIN
2
G

10
0

1
H

Se toma la ruta crítica A - D - F porque tiene mayor varianza.


____
109
T R C = 13 y  R C =  4.56 = 2 ,135

a) La ruta crítica es A - D - F

80%

Z = 0.84

T d −T RC
Z=
σ RC => T d = T R C +  R C .Z

El número de semana es:

T d = 13+(0.84)(2,135) = 14.79 semanas.

b) T d =T R C - 1 = 12
T d =T R C + 3 = 16

T d −13 12−13
Z 1= = =−0 . 468
2 .135 2 . 135

T d −13 16−13
Z 2= = =1 . 405
2 .135 2. 135

110
32% 92%

Z = -0.468 Z = 1.405

60%

La probabilidad de cumplir entre 12 y 16 semanas es del


60%

3. La empresa que ejecuta el programa:

ACT. PRECEDENCIA TIEMPO

A A<D,F,G 6
B B<G 9
C C<G,H 15
D D<E 9
E E<I 12
F F<I,J 7
G G<I,J,K 10
H H<K 11
I - 7
J - 10
K - 9

Dispone de los siguientes recursos:


RECURSO (unid)

a) Hasta la 5ta. Semana 10


b) Inicio de la 6ta. Semana 25
y término de la 14a.

ACT. A B C D E F G H I J K
RECURSO 4 5 6 8 7 9 10 6 3 7 11

111
Desde la semana 15 hasta el final se puede considerar que los recursos son
ilimitados. Determine cuál deberá ser la secuencia de las actividades a fin de
usar solo los recursos disponibles.

Solución

RED ORIGINAL

16
7 15
6
1
0
9 12
D E 28
6 27
A
18
6 7
0 I
0 6
0 7
F 25 35
0 9 25 35
INICIO B 15
15 10 0
J FIN
10
0 26
G
0 26

15 15 9
C 15 K

11
H

112
113
RED CORREGIDA

16
7 15
6
1
0
9 12
D E 28
6 27
A
18
15 7
0 I
0 6
6 7
F 25 35
0 9 25 35
INICIO B 15
15 10 0
J FIN
10
0 26
G
0 26

15 15 9
C 15 K

11
H

ACT DURAC TPI * TLI TPT * HT *

A 6 0 1 6 1
B 9 0 6 6 9 15 6 0
C 15 0 0 15 0
D 9 6 7 15 1
E 12 15 16 27 1
F 7 6 15 18 13 22 12 3
G 10 15 15 25 0
H 11 15 15 26 0
I 7 27 28 34 1
J 10 25 25 35 0
K 9 26 26 35 0

* Indica los tiempos corregidos en las iteraciones

114
5 10 15 20 25 30 35

C 6
G 10
J 7
H 6

K 11
A 4
B 5
D 8
E 7
F 9
I 3

R1 15
R2 10 10 10 10 10 10 18
R3 10 10 10 10 10 10 19 19 19 19 19 19 19 19 19 32
RECURSOS IL IMITADOS

TPT TLI TPT TLI


C 15 0 C 15 0
A 6 1 B 15 6
B 9 6 D 15 7
F 13 18

A<B D<F

115
Para cumplir con la disponibilidad de recursos se necesita adicionar las
restricciones:

A<B
D<F

116
4. Optimice el programa a partir de la siguiente información:

ACTIVIDAD PRECEDENCIA DURACION COSTO


DIRECTO (meses)
(mill. Soles)

NORMAL LIMITE NORMAL


LIMITE
A A<D,E 9 7 40
54
B B<E 8 5 120
126
C C<H 12 11 50
52
D D<H,G,F 7 2 60
75
E E<H,G,F 7 6 75.5
81
F - 2 1 60
62
G G<I 13 11 80
86
H H<I 6 4 50
60
I - 9 7 100
118

El costo indirecto es: CI = 50 + 10T

Solución:

Cálculo de  T,  C y  C/  T y trazado de la red.

ACT T C C/T

A 2 14 7
117
B 3 6 2
C 1 2 2
D 5 15 3
E 1 5.5 5.5
F 1 2 2
G 2 6 3
H 2 10 5
I 2 18 9

A D G I

INICIO C H FIN

B E F

Definición de los caminos y cálculos de tiempo y costos de cada alternativa.


Act.Tiem A B C D E F G H I DURACION ALT ALT ALT ALT ALT
CAMINO 9 8 12 7 7 2 13 6 9 NORMAL I II III IV V
A,D,G,I 9 7 13 9 38* 37* 36* 35* 34* 30*
A,D,H,I 9 7 6 9 31 31 31 30 29 25
A,D,F 9 7 2 18 18 18 17 16 14
A,E,G,I 9 7 13 9 38* 37* 36* 35* 34* 32*
A,E,F 9 7 2 18 18 18 17 16 16
A,E,H,I 9 7 6 9 31 31 31 30 29 27
C,H,I 12 6 9 27 27 27 27 27 25
B,E,H,I 8 7 6 9 30 30 30 30 29 27
B,E,F 8 7 17 17 17 16 15 15
B,E,G,I 8 7 13 9 37 36 35 35* 34* 32*
DURACION 38.0 37.0 36.0 35* 34.0 32.0
C. INDIRECTO 635.5 638.5 641.5 648.5 657.5 675.5
C. DIRECTO 430.0 420.0 410.0 400.0 390.0 370.0
C.TOTAL 1065.5 1058.5 1051.5 1048.5 1047.5 1045.5

ALTERNATIVA I

118
(+A2) (+E2)

3 3 3 3 3 9
(+IN IC IO) D G I
5 2 2
7
A
3 2

INICIO FIN
(+A2)
 C/  T
ACT
5.5 T
E
1

 T - ALT I = mín (2, 38-37) = 1 (disminuye G en la unidad)


C.DIRECTO ALT.I = 635.5 + 3.1 = 638.5
C.INDIRECTO ALT.I = 50 + 10x37 = 420

119
ALTERNATIVA II

(+A2) (+E2)

3 3 3 3 3 9
(+IN IC IO) D G I
5 1 2
7
A
3 2

INICIO FIN
(+A2)

5.5
E
1

 T - ALT II = mín (1, 37-36) = 1 (disminuye G en la unidad)


C.DIRECTO ALT. II = 638.5 + 3 = 641.5
C.INDIRECTO ALT. II = 50 + 10x36 = 410

ALTERNATIVA III

120
(+A2) (+E2)

3 3 3 M 7 9
(+IN IC IO) D G I
5 0 2
7
A 4
3 2

INICIO FIN
(+A2)

4 5.5
E
1

 T - ALT III = mín (2, 36-35) = 1 (disminuye A en la unidad)


C.DIRECTO ALT.III = 641.5 + 7 = 648.5
C.INDIRECTO ALT.III = 50 + 10x35 = 400

121
ALTERNATIVA IV

(+A2) (+E2)

3 3 3 M 9 9
(+IN IC IO) D G I
5 0 2
7
A 6
3 2

INICIO FIN
(+A2)
4
2 2 5.5
B E
3 1

 T - ALT IV = mín (1,3, 35-30) = 1 (disminuye A y B en la unidad)


C.DIRECTO ALT. IV = 648.5 + 7 +2 = 657.5
C.INDIRECTO ALT. IV = 50 + 10x34 = 390

ALTERNATIVA V

122
(+A2) (+E2) (+G2)

3 3 3 M 9 9
(+IN IC IO) D G I
5 0 2
7
A 6
9 2

INICIO FIN
6
2 M
B E
3 0

(+A2)

 T - ALT V = mín (2, 34-29) = 1 (disminuye D e I en 2 unidades)


C.DIRECTO ALT. V = 657.5 + 9x2 = 675.5
C.INDIRECTO ALT. V = 50 + 10x32 = 370

123
La red siguiente muestra los últimos valores de los costos unitarios de
reducción.

3 M M 9
(+IN IC IO) D G I
5 0 0
M
A M
9 0

INICIO FIN
M
2 M
B E
3 0

(+B2)

El camino: INICIO,A,E,G,I,FIN es irreductible por consiguiente la alternativa


V es la última.

RESPUESTA
DURACION
ACTIVIDAD
ÓPTIMA
A 7
B 7
C 12
D 5
E 7
F 2
G 11
H 6
I 7

La duración del programa es de 32 semanas con un costo total de 1,045.5


millones de soles.

124
5. A partir de la gráfica mostrada en la figura y los datos consignados en la
tabla, calcular:

a) Duración y Costo normal del proyecto.


b) Si los Costos indirectos son de $50 diarios. Calcular la duración optima
del proyecto.
c) Duración y costo límite del proyecto.

125
ACTIVIDAD NORMAL LIMITE
DURAC.
DURAC. COSTOS

1-2 5 100 2 190


1-3 4 80 3 120
2-3 7 150 4 300
2-4 8 70 6 110
3-5 6 50 4 100
4-5 6 70 5 105

2 D 4

C F

1 B 3 E 5

El desarrollo del problema será elaborado con la siguiente red equivalente.

126
INICIO A D E

FIN
C

B E

ACTIVIDAD TIEMPO T COSTO DIRECTO C C/T


NORMAL LIMITE NORMAL LIMITE
A 5 2 3 100 190 90 30
B 4 3 1 80 120 40 40
C 7 4 3 150 300 150 50
D 8 6 2 70 110 40 20
E 6 4 2 50 100 50 25
F 6 5 1 70 105 35 35

ACTIVID. A B C D E F NORM. A1 A2 A3 A4
CAMINOS 5 4 7 8 6 6
A-D-F 5 8 6 19 18 15 14 13
A-C-E 5 7 6 18 18 15 14 13
B-E 4 6 10 10 10 9 8
DURACION 19 18 15 14 13
C. DIRECTO 520 540 630 675 735
C. INDIRECTO 950 900 750 700 650
C. TOTAL 1470 1440 1380 1375 1385

ALTERNATIVA 1
127
(+IN IC IO)

M 20 30 20 20 20 35 20
M
INICIO M A M D M F M FIN
0 3 2 1 0

ACORTAMIENTO DE D: Mín (2,19-18) = 1

ALTERNATIVA 2

(+IN IC IO)

M 20 30 20 20 20 35
INICIO M A M D M F
0 3 1 1 20
M
FIN
0
10 10
50 10 25
C M E
3 2

ACORTAMIENTO DE A: Mín (3,8) = 3

ALTERNATIVA 3

128
(+IN IC IO) (+A)

M 45 M 20 20 20 35
INICIO M A M D M F
0 0 1 1 20
M
FIN
0
25 25
50 25 25
C M E
3 2
(+C)

ACORTAMIENTO DE D y E: Mín (1,2,5) = 1

129
ALTERNATIVA 4

(+IN IC IO) (+A)


(+D)

M 35 M 35 M 35 35
INICIO M A M D M F
0 0 0 1
M
FIN
35 0
25 25
50 25 25
C M E
3 1

(+A) (+C)

ACORTAMIENTO DE F y E : Mín (1,1,5) = 1

M M M 35
INICIO M A M D M F
0 0 0 1
M
FIN
0
40
50
C
3
40

40 25
B M E
1 1

Como se observa en este último gráfico no es posible continuar reduciendo el


tiempo de ejecución puesto que el camino A,D,F es irreductible.

Respuesta:

a) La duración normal es 19 días y el costo normal es $1,470.


b) La duración óptima es de 14 días.

130
c) La duración y costo límite son 13 días y $1,385 respectivamente.

131
CAPÍTULO IV

MÉTODOS DE RAMIFICAR Y
ACOTAR

4.1 INTRODUCCIÓN

Existen problemas en optimización donde la técnica de ramificar y


acotar, permite resolverlos de la manera más sencilla y eficiente.
La técnica de ramificar y acotar consiste en :

A. Formular todas las alternativas o caminos que conducen a la solución del


problema.
B. Evaluar estos caminos.
C. Elegir el camino más adecuado ó de mejor valor y trazar a partir de él, las
alternativas que se presenten.

La aplicación sucesiva de estos tres pasos nos ha de conducir a la solución del


problema ó lo que lo mismo, encontrar el camino óptimo.

4.2 DEFINICIONES

ARBOL.- Es un grafo conexo finito no orientado desprovisto de ciclos. La


fig. 4.1. es un ejemplo de árbol.

La fig. 4.1. es un ejemplo de árbol.

132
a

b c

d e

Fig. 4.1

Al vértice inicial (a) se le denomina raíz del árbol, a los demás se les
denomina nudos u hojas del árbol.

Las aristas ( a , b ) , ( b , e ) etc.; se les denomina también ramas del árbol.


El árbol más sencillo consta de dos vértices unidos por una arista. Cada vez
que añade una arista se adiciona también un vértice, por consiguiente un árbol
con n vértice tiene n-1 aristas.

Para la solución de los problemas tanto de maximización como de


minimización, se deberá asociar a cada nudo u hoja del árbol una cota, la que
ha de servir como referencia en el proceso de solución de los problemas.

Para el caso de maximización (minimización), la hoja que tenga la mayor


(menor) cota, se ha de denominar hoja activa, a partir de la cual se continúa el
proceso de solución.

4.3 PROBLEMAS

Los problemas que se presentan en esta sección son:

- Camino de valor mínimo.


- Cadenas múltiples económicas.
- Asignación de recursos.

a. CAMINO DE VALOR MÍNIMO

133
Teniendo como origen un punto de una gráfica, se pide calcular el camino del
valor mínimo, desde ese punto a otro elegido como destino, cabe notar que, si
se desea se puede considerar como destinos todos los demás puntos de la
gráfica.

Método para calcular los caminos de valor mínimo de una gráfica

1. Se construye una tabla que muestre el conjunto de arcos incidentes al


exterior de cada vértice, con los correspondientes costos (tiempo).
2. Se inicia la construcción de un árbol con una cota T = 0 para el vértice
asumido como origen y se elimina en la tabla, el conjunto de arcos
incidentes al interior del vértice elegido.
3. Se traza los arcos incidentes al exterior del vértice de menor cota.
4. Se calcula la cota de cada uno de los vértices extremos, Tj=Ti+C(i,j)
Tj=Ti+C(i, J); C(i, J): valor del arco (i,j)  
5. Se determina la menor cota de los vértices extremos del árbol.
6. Se eliminan en el árbol aquellos arcos cuyo vértice final, sea igual al del
arco determinado y en la tabla se elimina la columna correspondiente al
vértice final.
7. Se repite los pasos (3) a (6) hasta obtener la solución.

EJEMPLO

Calcular los caminos de valor mínimo con origen en xo, de la fig. 4.2.

134
X 2
9 X 4

1
4 2 5
3
3
8 4
X 0 5 X 7
X X
4 3
6
9 3
8 2 3
10
X 1
X 5

Fig. 4.2

SOLUCION

1. Se construye una tabla que muestre W + (Xi), con los (i, j) de cada arco (tabla
4.1).
2. La cota de X o es T o =0 (fig. 4.3), luego se elimina la columna con xo (líneas
a trazos discontinuos (a), en tabla 4.1)

X0 X1 X2 X3 X4 X5 X6 X7
X0 - 8 4 - - - - -
X1 - - - 2 - 10 9 -
X2 - 5 - 2 9 - - -
X3 - 4 3 - 1 - 8 -
X4 - - - 3 - - 5 -
X5 - - - - - - - 3
X6 - - - - - 3 - 4
X7 - - - - - - - -
(a) (b)

Tabla 4.1

135
3. Se traza W + (xo) estos son (X 0 , X 1 ) y (X 0 , X 2 ), ver fig. 4.3.

4. Las cotas de X 1 y X 2 son :

X 1 : T 1 = To+C(0, 1) = 0+8 = 8

X 2 : T 2 = To+C(0, 2) = 0+4 = 4

5. La menor cota pertenece al vértice X 2

6. Se elimina la columna X 2 (líneas a trazos discontinuos (b) en tabla 4.1). Se


continúa repitiendo los pasos del (3) al (6) hasta obtener los caminos de
valor mínimo que se hallan a doble trazo en la fig. 4.3.

Rpta.: Camino de valor mínimo Xo, X 1  


Xo, X 2 , X 3 , X 4 , X 6

b. CADENAS MÚLTIPLES ECONÓMICAS DE UNA RED

En esta sección se dará un método que calcula la ruta más económica entre
cualquier par de nodos de una red; el algoritmo fue formulado por Gomory y
Hu.

136
T=0

X 0
8 4

8 4
9
X 1 X 2
10 9
5 2 *

* * *
18 17 9 6 13

X 5
X 6
X 1
X 3
X 4
4 8
1
* *
10 7 14

X 1
X 4
X 6

12
X
* arcos eliminados 6
3 4

15 16

X 5 X 7

3
*
18

X 7

Fig. 4.3

137
Sea la siguiente red (fig. 4.4)

k
c(i,k) : costo del
c(i,j) c(j,k) arco A(i,k)

Fig. 4.4

C(i, k): costo del arco A (i, k)

En esta red se puede tener que:

C(i, k) < C(i, j) + C(j, k)


(en este caso el arco A(i, k), se le denomina arco básico).
C(i, k) > C(i, j) + C(j.k)

El algoritmo está basado en la construcción de arcos básicos entre cualquier


par de vértices de una red.

Dado un vértice intermedio j se define la siguiente operación:

C(i, k)= min C(i, k) , C(i, j) + C(J, k)

Esta operación compara el costo de (i, k) con la suma de los costos de los
arcos(j, k), y sustituye el mínimo de ambos como el nuevo costo del arco (el
resultado se consigna en la matriz de costos mínimos).
Aplicando esta operación (i, k) se convierte en un arco básico. Este algoritmo
requiere un sistema de etiquetado el que se define de la siguiente manera:

(i, k) = (i, j), si C(i, k) > C(i, j) + C(j, k)

(i, k), si C(i, k) ≤ C(i, j) + (j, k)

El etiquetado se efectúa en la matriz de nodos intermedios.


138
EJEMPLO

Encontrar las rutas más económicas existentes entre cualquier


pareja de vértices que se muestran en la red de la fig. 4.5

2 4
2

3 6 4

1 5 3

6
3 5

Fig. 4.5

La matriz de costos asociada a la red es:

1 2 3 4 5
1 0 3 1 M M
2 3 0 5 2 6
3 1 5 0 4 6
4 M 2 4 0 3
5 M 6 6 3 0

Tabla 4.2

139
Como j, i, k, son diferentes el número total de operaciones para obtener el
resultado es: 5x4x3=60.
Si j es el vértice intermedio entre i y k, entonces la variación de j es: j=1.....5,
por consiguiente existe 5 iteraciones.

Para j =1

Se tiene:

C(1, k) = min [C(i, k), C(i, l)+C(1, k)]

C(2, 3) = C(3, 2) = min [C(2, 3) , C(2, 1) + C(1, 3)] = min [5 , 3 + 1] = 4

C(2, 4) = C(4, 2) = min [C(2, 4) , C(2, 1) + C(1, 4)] = min [2 , 3 + M] = 2

C(2, 5) = C(5, 2) = min [C(2, 5) , C(2, 1) + C(1, 5)] = min [6 , 3 + M] = 6

C(3, 4) = C(4, 3) = min [C(3, 4) , C(3, 1) + C(1, 4)] = min [4 , 1 + M] = 4

C(3, 5) = C(5, 3) = min [C(3, 5) , C(3, 1) + C(1, 5)] = min [6 , 1 + M] = 6

C(4, 5) = C(5, 4) = min [C(4, 5) , C(4, 1) + C(1, 5)] = min [3 , M + M] = 3

Los resultados obtenidos para j=1 se consignan en las tablas 4.3 y 4.4.

MATRIZ DE COSTO MINIMO

1 2 3 4 5
1 0
2 0 4 2 6
3 4 0 4 6
4 2 4 0 3
5 6 6 3 0

TABLA 4.3

140
MATRIZ DE VERTICES INTERMEDIOS
CON RUTAS OPTIMAS

1 2 3 4 5
1 1
2 2 1 4 5
3 1 3 4 5
4 2 3 4 5
5 2 3 4 5

TABLA 4.4

Estos resultados son susceptibles de ser modificados, conforme se


continúa operando con los demás valores de j.

Los valores finales se presentan en las tablas 4.5 y 4.6.

MATRIZ DE COSTO MINIMO

1 2 3 4 5
1 0 3 1 5 7
2 3 0 4 2 5
3 1 4 0 4 6
4 5 2 4 0 3
5 7 5 6 3 0

TABLA 4.5

MATRIZ DE VERTICES INTERMEDIOS


CON RUTAS OPTIMAS

1 2 3 4 5
1 1 2 3 2 5
2 1 2 1 4 4
141
3 1 1 3 4 5
4 2 2 3 4 5
5 3 4 3 4 5

TABLA 4.6

La interpretación de las dos matrices anteriores es como sigue:

Suponga que se quiere encontrar la ruta más económica y el costo de p a


q. Si la entrada (p, q), en la matriz de vértices intermedios es k, se va a la
entrada (k, q) si ésta es j, se varia entonces (j, q) y así sucesivamente. La
cadena más corta sería entonces p, k, j, ...q. La entrada (p, q) en la matriz de
costos daría el costo de la ruta más económica de p a q.

Por ejemplo: La ruta más económica de 3 a 2 se identifica con la


matriz de vértices intermedios de la siguiente manera:

(3, 2) = 1
(1, 2) = 2

por consiguiente, la ruta es 3, 1, 2 y el costo es C(3, 2) = 4 información


extraída de la matriz de costos mínimos.

Otra manera de resolver el problema de cadenas múltiples económicas,


es aplicando el método para calcular los caminos de valor mínimo de una
gráfica.

Aplicando este método al problema anterior se tiene:

MATRIZ DE COSTO ASOCIADO A LA RED

1 2 3 4 5
1 - 3 1 - -
2 3 - 5 2 6
3 1 5 - 4 6
4 - 2 4 - 3
5 - 6 6 3 -

142
8
VERTICE 1 1

3 1

3 1
2 3
2 6 5 4 6
5 9 6 5 7
4 5 2 4 5
*
3
8
5
* Existen dos caminos para llegar
a 4 : (1,3,4) y (1,2,4)

Fig. 4.6

La información del árbol se pasa a las siguientes matrices:

MATRIZ DE COSTO MINIMO

1 2 3 4 5
1 1 2 3 3 5
2 1 2 4
3 1 3 4 5
4 3 3
5 3 3

MATRIZ DE VERTICES INTERMEDIOS CON


RUTAS ÓPTIMAS

143
1 2 3 4 5
1 0 3 1 5 7
2 3 0 2
3 1 0 4 6
4 5 2 4 0
5 7 6 0

Como se observa, aún falta información en las matrices motivo por


el cual se construye el árbol de la fig. 4. 7.

0
6
VERTICE 2 2
3 2
5
3 5 2 6

1 3 4 5 *
4 3
1
4 6 5

3 3 * 5
6
18
5 *

Fig. 4.6

Fig. 4.7

MATRIZ DE COSTO ASOCIADO A LA RED

1 2 3 4 5
1 - 3 1 - -
2 3 - 5 2 6
3 1 5 - 4 6
144
4 - 2 4 - 3
5 - 6 6 3 -

La información se continúa colocando en las matrices de costos y de vértices


intermedios anteriores:

MATRIZ DE COSTO MINIMO

1 2 3 4 5
1 0 3 1 5 7
2 3 0 4 2 5
3 1 4 0 4 6
4 5 2 4 0 3
5 7 5 6 3 0

MATRIZ DE VERTICES INTERMEDIOS


CON RUTAS ÓPTIMAS

1 2 3 4 5
1 1 2 3 3 3
2 1 2 1 4 4
3 1 1 3 4 5
4 2 2 3 4 5
5 3 4 3 4 5

Tal como se observa se ha obtenido el resultado final, por la naturaleza de la


información, ha sido suficiente la aplicación del método en solo dos vértices.

C. ASIGNACION DE RECURSOS

Se presenta a continuación dos métodos, que se aplicarán al problema de


asignación de personal.
Los métodos son:
145
- Ramificación y acotación.
- Algoritmo de Little.

ASIGNACION DE PERSONAL (ramificación y acotación)

Se tiene una matriz construida con la calificación de cada uno de los


postulantes (i), en cada uno de los empleos (j) ofrecidos; donde el número de
empleos es igual al número de postulantes, se pide asignar maximizando el
rendimiento.

MÉTODO

1. Calcular la cota de la raíz (Bo), esta se logra sumando los mayores puntajes
obtenidos por empleo ofrecido (entrada i, j de la matriz).
2. Ramificar a partir del nudo de mayor valor todas las alternativas de
asignación de uno de los j trabajos restantes a cada postulante que queda.
3. Evaluar las cotas de cada alternativa sumando el puntaje obtenido por cada
postulante en el empleo (hoja Ai, j), y la suma de los mayores puntajes de
cada columna restante (Bj). La suma se representa como Dij = Aij+ Bj.
4. Analizar si existe una solución factible, ésta se presenta cuando cada
postulante tiene asignado un solo puesto de trabajo, la cota de una solución
factible elimina la búsqueda por nudos de cota inferior.
5. Se elige la cota de mayor valor, si la asignación es factible se tiene el
resultado, en caso contrario se repite el proceso a partir de 2.

Sea la siguiente matriz de resultados de una evaluación de personal, donde se


pide una asignación óptima.

1 2 3 4
j
i
1 4 7 9 8
2 6 5 8 13
3 10 9 8 14
4 8 7 9 13

i: postulante.
j: empleo ofrecido.
146
C(i, j): puntos obtenidos.

Cuando no existe asignación:

Bo= 10 + 9 + 9 + 14 = 42

- La cota de la raíz es 42 (valor cuando no existe asignación).


- Las alternativas de asignación para el primer empleo (j=l) son 4, por ser este
el número de postulantes.

La ramificación se presenta de la forma siguiente:

1,1

42 2,1

3,1

4,1

- Obtención de la cota para cada nudo.

Para j=1, se identifican las hojas Aij, de acuerdo a la matriz de resultados se


tiene:

A 1 1 = 4, A 2 1 = 6, A 3 1 = 10, A 4 1 =8

Los mayores puntajes de las columnas restantes de la matriz de resultados son:

B 1 = 9 + 9 + 14 = 32
147
Por consiguiente la cota de cada nudo es:

D11 = A 1 1 + B 1 = 4 + 32 = 36
D21 = A 2 1 + B 1 = 6 + 32 = 38
D31 = A 3 1 + B 1 = 10 + 32 = 42
D41 = A 4 1 + B 1 = 8 + 32 = 40

- Obtención de solución factible:

Si se analiza la asignación del primer trabajo al primer postulante y la


procedencia de los valores de B 1 , en la matriz de resultados, se tiene que los
valores de B 1 se lograron asignando al postulante 3 los puestos 2 y 4 lo que
hace infactible éstas y las demás soluciones.

Continuando con la ramificación, se tiene que la mayor cota


corresponde al nudo (3, 1), el número de hojas en la rama es igual a uno (solo
existe la asignación del empleo j=1), por consiguiente el número de
ramificaciones que sale del nudo (3, 1) es 4 - 1 = 3.

Repitiendo los pasos anteriores se tiene que:

Para j = 2

A12 = 10 + 7 = 17
A22 = 10 + 5 = 15
A42 = 10 + 7 = 17
B2 = 9 + 14 = 23

El valor de A12 resulta de sumar el puntaje obtenido de asignar al


postulante 3 al puesto 1 (A31) con el puntaje obtenido por el postulante 1 en el
puesto 2 (en la tabla, C (1, 2) = 7 ).

Cota de cada nudo:

D 1 2 = A 1 2 + B 2 = 17 + 23 = 40
D 2 2 = A 2 2 + B 2 = 15 + 23 = 38
D 4 2 = A 4 2 + B 2 = 17 + 23 = 40

- Factibilidad:
148
Como se tiene asignado al postulante 3 el empleo 1, (asignación para
j=1), y siendo uno de los elementos de B 2 , la asignación (3, 4), por
consiguiente no es posible encontrar aún una solución factible.

La representación gráfica de los resultados es la siguiente

36
1,1

30 40
42 2,1 1,2

0
42 30
3,1 2,2

40 40
4,1 4,2

Los nudos de máxima cota son (1, 2) y (4, 2), las ramas que salen de cada uno
de los nudos es igual a 2, entonces:

j=3

1. Nudo A 1 2 2. Nudo A 4 2

A 2 3 = 17 + 8 = 25 A 1 3 = 17 + 9 = 26

A 4 3 = 17 + 9 = 26 A 2 3 = 17 + 8 = 25

B 3 = 14 B 3 = 14

D 2 3 = 25 + 14 = 39 D 1 3 = 26 + 14 = 40

D 4 3 = 26 + 14 = 40 A 2 3 = 25 + 14 = 39
149
- Factibilidad:

Como se tiene asignado al postulante 3, el empleo 1 y también el empleo


4 (por B3) no es posible la existencia de solución factible.

Se continúa ramificando por los nudos de máxima cota, hasta asignar el


último empleo.

Los resultados se muestran en la fig. 4.6.

En la gráfica se observa que los máximas cotas corresponden a las dos


soluciones factibles, en consecuencia ambas soluciones son óptimas. Las
alternativas de solución en la asignación extraídas del gráfico anterior son:

EMPLEO
POSTULANTE
1a. ALT. 2a. ALT. 3a. ALT.
1 2 3 3
2 4 4 4
3 1 1 2
4 3 2 1

Para el caso de minimización el proceso de solución es análogo al de


maximización.

150
36
1,1 39

2,3
38

2,1 40 40 39
42 1,2 4,3 2,4

0
42 38

3,1 2,2 40 39

1,3 2,4
40 40

4,1 4,2
39
38 2,3
1,2

36 40 39

2,2 1,3 2,4

40 39 33

3,2 2,3 1,4

Fig. 4.6

En un problema de costos se ha de determinar una cota mínima para la raíz y


las ramificaciones se efectuarán a partir de las hojas que poseen las cotas
mínimas.

4.4 ASIGNACIÓN DE RECURSOS (ALGORITMO DE LITTLE)


151
Para asignar minimizando los pasos son:

1. Reducción de la matriz en filas (h1) y columnas (h2) de tal forma que se


tenga al menos un cero en cada fila y columna. La reducción total h = h1 +
h2, viene a ser la cota de la raíz.
2. A cada cero de la matriz se le asocia un número (h’) denominado
penalización.
La penalización se obtiene sumando, a excepción del elemento cero al que
se le ha de penalizar, el menor elemento de la fila más el menor elemento
de la columna donde se halla ubicado el cero.
3. Se elige el cero con la más alta penalización.
4. Se ramifica considerando dos ramas:
- La primera rama contiene la hoja de la no asignación (i, j), que se expresa
como (i, j), con cota h+h’ (se asume que el elemento (i, j) es un valor muy
grande por lo que se ha de reducir la matriz en h’ unidades).
- La segunda rama contiene la hoja de la asignación (i, j) con cota h + h’’, es
la reducción de la matriz que queda luego de la asignación.
5. Se continúa ramificando por la menor cota aplicando los procedimientos
señalados a partir de 2.

EJEMPLO
Sea la siguiente matriz de costos:

i\j 1 2 3 4
1 4 7 9 8
2 6 5 8 13
3 10 9 8 14
4 8 7 9 13

i: empleo
j: trabajo
C(i, j) : costo incurrido por el empleado i al efectuar el trabajo j.

SOLUCIÓN

Este es un problema donde se ha de asignar minimizando el costo total de los


cuatro trabajos.
152
Aplicación del algoritmo:
- Reducción en filas y columnas:

REDUCCION EN FILAS Y COLUMNAS

4 7 9 8 4
6 5 8 13 5
10 9 8 14 8
8 7 9 13 7
_______

h 1 = 24

RESULTADOS

0 3 5 4
1 0 3 8
2 1 0 6
1 0 2 6

REDUCCION EN COLUMNAS RESULTADO

0 3 5 4 0 3 5 0
1 0 3 8 1 0 3 4
2 1 0 6 2 1 0 2
1 0 2 6 1 0 2 2

h2 = 0 + 0 + 0 + 4 = 4
Reducción total: h = h 1 + h 2 = 28 (cota de la raíz)
Si en la matriz resultado se tiene que cada empleado posee un trabajo diferente
con costo cero, se tendría la solución, pero como esto no ocurre se continúa
aplicando al algoritmo.
153
Penalización:

1 2
3 5
0 0
1
1 3 4
0
3
2 1 2
0
1
1 2 2
0

EJEMPLO:

Cálculo de la penalización del elemento (3, 3) :


h’ = min (2, 1, 2) + min(5, 3, 2)
h’ = 3

El elemento (3, 3) tiene la más alta penalización.


Las cotas de la ramificación son :

Cota para ( 3 , 3 ) = h + h’ = 28 + 3 = 31

Cota para ( 3 , 3 ) = h + h’’ = 28 + h’’

h’’ se obtiene reduciendo la matriz que queda luego de asignar al empleado 3 el


puesto 3, lo cual significa eliminar la fila 3 y columna 3.

0 3 0

1 0 4

154
1 0 2

Como se observa la reducción de esta matriz es h’’ = 0 , la cota para (3, 3) =


28 + 0 = 28.

La gráfica siguiente señala los resultados.

28

3,3

28

31

3,3

Se continúa por la hoja (3, 3) que es de menor cota.

Penalización:

1 2
3
0 0
1
1 4
0

1
1 2
0

El elemento (1, 4) tiene la más alta penalización.


Cotas de la ramificación:

Cota para (1, 4) = cota de (3, 3) + h’ = 28 + 2 = 30


Cota para (1, 4) = cota de (3, 3) + h’’ = 28 + h’’

155
Cálculo de h’’ :
Se elimina la fila 1 y columna 4 y luego se reduce la matriz.

1 0

1 0

h’’ = 1

MATRIZ REDUCIDA

0 0

0 0

La cota para (1, 4) = 28 + 1 = 29

La gráfica siguiente señala los resultados:

Como la matriz reducida tiene sus 4 elementos iguales a cero, se presenta dos
alternativas de asignación, si a 2 se le asigna 1 queda la asignación (4, 2) y si
a 2 se le asigna 2 queda para asignar finalmente al empleado 4 el trabajo 1.

ALTERNATIVAS DE ASIGNACION DE TRABAJOS

EMPLEADOS ALTERNATIVA 1 ALTERNATIVA 2


1 4 4
2 1 2
3 3 3
4 2 1

156
157
EJERCICIO

Con igual enunciado del ejemplo precedente resolver, por el método de


Little, la siguiente matriz :

5 4 6 4
7 4 9 8
9 4 7 10
4 5 4 6

El árbol que señala los resultados es :

16

19 19

2,2 2,2

22 19 19 22

3,2 3,2 1,4 1,4

21 19 19 21

1,4 1,4 4,1 4,1

21 19 19

2,1 2,1 3,3

19

4,3

158
ALGORITMO DE LITTLE- Caso de maximización

El algoritmo de Little se aplicará minimizando los complementos respecto a


una constante K cuyo valor puede ser por ejemplo el mayor elemento de la
matriz.

EJEMPLO:
MATRIZ INICIAL

4 7 9 8
6 8 5 13
10 9 8 14
8 7 9 13

MATRIZ COMPLEMENTO

10 7 5 6
8 6 9 1
4 5 6 0
6 7 5 1

Si la matriz dada es de beneficio el resultado que se obtiene de aplicar el


algoritmo a la matriz complemento es:

159
13

16 17

1,2 1,2

19 17 17 18

2,4 2,4 3,1 3,1

20 17 17 18

1,3 1,3 2,4 2,4

17 17 17

3,1 3,1 4,3

17 17

3,2 4,2

17

4,1

Siendo el beneficio total:

14 x 4 - 17 = 39

4.5 SECUENCIACIÓN

Cuando se tiene la siguiente información:

160
- Numero de trabajos
- Numero de operaciones requeridas por trabajo
- Secuencia de operaciones requeridas por trabajo
- Tiempo de operación en cada máquina
- Tiempo de preparación de máquina

Se hace necesaria la aplicación de un método para encontrar un orden


adecuado de ejecución a fin de minimizar el tiempo total de ejecución de
todos ellos.
Los casos que se presentan a continuación son:
- Hallar el orden de ejecución de n trabajos en una máquina
- Hallar el orden de ejecución de n trabajos en m máquinas,
donde todos los trabajos siguen una misma secuencia de proceso.
- Hallar el orden de ejecución de n trabajos en m máquinas
donde cada trabajo tiene una secuencia de proceso dife-
rente.

CASO I : HALLAR EL ORDEN DE EJECUCION DE N TRABAJOS EN UNA


MÁQUINA

En relación a este primer caso, la información requerida para optimizar el


orden de ejecución puede ser el costo o el tiempo de preparación de la
máquina para ejecutar el trabajo que sigue a cualquiera de los n-1
trabajos.

EJEMPLO
Se tiene una máquina y 4 trabajos, la matriz de costos de preparación de
máquina es:
j
i 1 2 3 4

1 M 6 4 5

2 3 M 8 4

3 6 7 M 3

4 7 5 4 M

161
( i , j ) : trabajos
C(i ,j) : costo de preparación de máquina para ejecutar el trabajo j, luego de
haber ejecutado el trabajo i.
M : costo muy alto

Se pide encontrar el orden óptimo de ejecución de los trabajos.

SOLUCION

Este problema es de minimizaron y puede ser resuelto aplicando el algoritmo


de Little, como se quiera ejecutar todos los trabajos se ha de evitar la
formación de ciclos cambiando al valor M el valor del elemento de la matriz
que puede inducir al ciclo.

162
Reducción de filas y columnas:

M 6 4 5 (4) M 2 0 1
(3)
3 M 8 4 0 M 5 1
(3)
6 7 M 3 3 4 M 0
(4)
7 5 4 M 3 1 0 M

h =1 14 (1) h =2 1

M 1 0 1

0 M 5 1

3 3 M 0

3 0 0 M

h1 = h + h1 = 15 2

163
1
M 1 0 1 M 0 1
4
0 M 5 1
4
3 3 M 0 3 M 0
1 0
3 0 0 M 0 0 M

h` = 4 h`` = 0

15

19 15
___
2,1 2,1

Se asigna (2, 1) significa que a continuación del trabajo 2 , se ejecuta el 1 , y


C(1, 2) = M (para evitar el ciclo 2-1-2) luego se obtiene h’’=0

164
1
M 0 1 M 0

3 M 0 4
3
0 0 0 M 0 M

h` = 4

15

19 15
___
2,1 2,1
19 15
___
3,4 3,4

Se asigna (3, 4) , C(4, 3) = M y por consiguiente h’’=0

165
M
M 0 M 0

M
0 M 0 M

h` = M

Se asigna (1, 3), h’’ = 0 y finalmente se asigna (4, 2)

15

19 15
___
2,1 2,1
19 15
___
3,4 3,4
19 15
___
1,3 1,3

15 15
___
4,2 4,2

166
RESPUESTA

El orden de ejecución de los trabajos, partiendo del trabajo 1, es 1-3-4-2-


1 y el costo total es de 15 unidades.

CASO II: HALLAR EL ORDEN DE EJECUCION DE N TRABAJOS EN M


MÁQUINAS PARA IGUAL SECUENCIA DEL PROCESO
(ALGORITMO DE LOMNICKI)

La solución de este caso se presenta mediante el siguiente ejemplo:

EJEMPLO

MAQUINA
TRABAJO M1 M2 M3
T1 3 5 8
T2 7 6 4
T3 6 3 2
T4 8 9 9

Sea la misma secuencia de operación para cada trabajo. Se pide hallar


el orden óptimo de ejecución.

SOLUCION

Suponiendo un orden arbitrario de ejecución de los trabajos:


W=(W 1 , W 2 , W 3 , W 4 )=(T 1 , T 3 , T 4 , T 2 )

El tiempo total de ejecución de éste orden se obtiene gráficamente :

167
M3 T1 T3 T4 T2

M2 T1 T3 T4 T2

M1 T1 T3 T4 T2

10 20 30 39

En la figura se observa que el tiempo total empleado para el orden asumido es


de 39 unidades. Se alcanza el mismo resultado sabiendo que:

f(Wi, j ) = ma x { f ( Wi-1, j), f(Wi, j-1)} + d ( W i, j) . . . (4.1)


f ( W i , j ) : tiempo medido desde el inicio del proceso hasta que el trabajo
Wi es terminado en la máquina j.
d(W i , j ) : tiempo de operación del trabajo Wi en la máquina j.

Los dos términos que siguen en la ecuación 4.1 tienen definiciones


análogas.

Aplicaciones de la ecuación 4.1

a. Cálculo del tiempo en que T 4 (W 3 ) es terminado en M 2 :

f(W 3 , 2 ) = m a x {f(W 2 , 2 ), f(W 3 , 1 )} +d(W 3 , 2 )

Reemplazando W 3 y W 2 por T 4 y T 3 respectivamente se tiene:


f (T 4 , 2 ) = m a x { f(T 3 , 2 ), f(T 4 , 1 )} +d(T 4 , 2 )

Con ayuda del gráfico se obtiene:


f ( T 4 , 2 ) = m a x { 12 , 17 }+3 = 20

b. Cálculo del tiempo en que T 2 (W 4 ) es terminado en M 3 :

f ( W 4 , 3 ) = m a x{f(W 3 , 3 ), f(W 4 , 2 )} +d(4, 3)


f ( T2 , 3 ) = m a x { f ( T 4 , 3 ) , f ( T 2 , 2 )} +d(2, 3)
168
= m a x { 35 , 32 } + 4 = 39

c. Aplicar la ecuación 4.1 desde el inicio del proceso para el orden fijado
(T 1 , T 3 ,T 4 ,T 2 )

f(W 1 , 1 ) = f(T 1 , 1 ) =
d(T 1 , 1 ) = 3
f(W 1 , 2 ) = f(T 1 , 2 ) =
f(T 1 , 1 ) + d(T 1 , 2 ) = 3+5 = 8
f(W 1 , 3 ) = f(T 1 , 3 ) =
f(T 1 , 2 ) + d(T 1 , 3 ) = 8+8 = 16
f(W 2 , 1 ) = f(T 3 , 1 ) =
f(T 1 , 1 ) + d(T 3 , 1 ) = 3+6 = 9
f(W 2 , 2 ) = f(T 3 , 2 ) =
max {f(T 1 , 2 ), f(T 3 , 1 )} + d(T 3 , 2 )
= max (8, 9) + 3 = 12
f(W 2 , 3 ) = f(T 3 , 3 ) = max {f(T 1 , 3 ), f(T 3 , 2 )} + d(T 3 , 3 )
= max {16, 12} + 2 = 18

Se continúa hasta obtener la matriz de resultados siguientes:

M1 M2 M3

W1 = T1 3 8 16

W2 = T3 9 12 18
f (wi , j ) =
W3 = T4 17 26 35

W4 = T2 24 32 39

Aplicación práctica de la ecuación (4.1):

Comparando el gráfico con esta matriz de resultados, se observa que para


calcular los elementos de ésta, se procede de la siguiente manera:

a. La primera fila del matriz resultado se obtiene así:


f(T 1 , 1 ) = d(T 1 , 1 ) = 3
f(T 1 , 2 ) = d(T 1 , 1 ) + d(T 1 , 2 ) = 8
f(T 1 , 3 ) = d(T 1 , 1 ) + d(T 1 , 2 ) + d(T 1 , 3 ) = 16

b. La primera columna del matriz resultado se obtiene así:


f(T 1 , 1 ) = d(T 1 , 1 ) =3
f(T 3 , 1 ) = d(T 1 , 1 ) + d(T 3 , 1 ) = 9

169
f(T 4 , 1 ) = f(T 3 , 1 ) + d(T 4 , 1 ) = 17
f(T 2 , 1 ) = f(T 4 , 1 ) + d(T 2 , 1 ) = 24

c. Para calcular los demás elementos de la matriz se procede como sigue:

- Para calcular f(W2, 2) o sea el elemento (T3, 2) de la matriz de resultados se efectúa la


siguiente operación con los datos (T1, 2) y (T3, 1) obtenidos de a y b.
f(W 2 , 2 )= f(T 3 , 2 )= m a x { 9, 8} +d(T 3 , 2 ) = 9+3 = 12

- Para f(W 2 , 3 ) se tiene:


f(W 2 , 3 ) =f(T 3 , 3 ) = m a x{12, 16} +d(T 3 , 3 ) = 16+2 = 18

Donde 12 y 16 son los elementos (T 3 , M 2 ) y (T 1 , M 3 ) de la matriz de


resultados y d(T 3 , 3 ) se obtuvo de la matriz del problema.

- Para f(W 3 , 2 ), se tiene:


f(W 3 , 2 )= f (T 4 , 2 ) = m a x{17, 12} +d(T 4 , 2 ) = 17+9 = 26

Para la obtención de los elementos que faltan se procede de manera similar a


lo anterior; es conveniente relacionar el procedimiento de cálculo con el
gráfico, para la deducción de la regla de formación de los tiempos.

Si se tiene n trabajos, el número de secuencias diferentes que se pueden


analizar es n! , para evitar este trabajo se presenta a continuación un algoritmo
que minimiza el esfuerzo de cálculo.

170
ALGORITMO DE LOMNICKI

Este algoritmo hace uso del método de ramificación y acotación, es aplicable


cuando la secuencia de operaciones en las máquinas es la misma para todos los
trabajos.
El algoritmo se presentará y se aplicará para el caso de 3 máquinas, siendo
también aplicable cuando el número de máquinas es mayor.
Para acotar se encontrará las duraciones de 3 trayectorias (una por cada
máquina) .De acuerdo al siguiente teorema la cota del nudo será la mayor de
esas duraciones.

TEOREMA

La duración L(W), del total de los trabajos, siguiendo una secuencia W, es


igual a la duración mayor de las trayectorias que van del W 1 en la máquina 1 a
Wn en la máquina n.

Sea un nudo intermedio donde se tiene fijada la secuencia W 1 , W 2 , W 3 , ..., W k y


falta definir cuales son los Wk+1, ..., Wn.

Para el caso de 3 máquinas se tiene las siguientes trayectorias:

a. Primera trayectoria (g’)

Aquí se supone que la máquina 3 no tiene tiempos de espera para los trabajos
que aún no se ha definido el orden de ejecución, luego:

g’=fk(Wk, 3)+d(Wk+1, 3)+d(Wk+2, 3)+..+d(Wn, 3)

el subíndice k de f señala la existencia de k trabajos en orden.

171
M3 W1 W2 W k + W k+1 +...+W n

M2 W1 W2 W k

M1 W1 W2 W k

n
f k (W k , 3) d(W i , 3)
i=k+1

b. Segunda trayectoria: g’’

Aquí se supone que en la máquina 2 no hay tiempo de espera entre los


trabajos que no tienen definido el orden de ejecución y el último trabajo a
ejecutarse en la máquina 3 es aquel que tenga la mínima duración entre
aquellos que faltan ordenar.

M3 W i

M2 W1 W2 W k + W k+1 +...W n +

M1 W1 W2 W k
n
f k (W k , 2) d(W i , 2)
i=k+1 min d(Wi,3)

i=k+1,. .,n

g’’= f k ( Wk , 2) + d ( Wk+1, 2) + .. +d( Wn , 2) + min d ( W i , 3)


i= k+1, .., n

c. Tercera trayectoria: g’’’

172
Se asume que el último trabajo podrá ejecutarse en todas las máquinas sin
pérdida de tiempo entre el paso de una máquina a la otra , lo cual equivale a
considerar como un bloque los trabajos en M 1 y escoger como último trabajo
aquel cuya suma de duraciones en las máquinas 2 y 3 sea mínima.

M3 W i

M2 W k+1 +...+W n

M1 W1, W2, W3,.....,W n +

f k (W k , 2) min{d(W i , 2))+d(W i , 3)}


i=k+1,n

g’’’ = d ( W 1 , 1 ) +..+ d ( W n , 1 ) + min { d( W i , 2 ) +d( W i , 3 )}

i=k+1, .., n

173
Finalmente la cota del nudo k es:

G k = max { g ‘, g ‘’, g ‘’’ }


Para hallar el óptimo de ejecución de trabajos del ejemplo anteriormente
propuesto:

M1 M2 M3
T1 3 5 8

T2 7 6 4

T3 6 3 2

T4 8 9 9

Se observa en la matriz que existen solamente 4 posibilidades de iniciar el


orden de ejecución de los trabajos.

RAIZ

T1 T2 T3 T4

Para encontrar las cotas de estas alternativas se procede a aplicar el algoritmo.


Para la primera alternativa, T 1 como primer trabajo se tiene:

Como W k = T 1 entonces:
Calculo de g’:
f 1 (T 1 , 3 ) = 3+5+8 = 16
g’ = f 1 (T 1 , 3 ) + d(T 2 , 3 ) + d(T 3 , 3 ) + d(T 4 , 3 )
= 16 + 4 + 2 + 9 = 31

174
M3 T1 T2, T3, T4

M2 T1

M1 T1

10 20 30

Calculo de g’’ :

g’’=f 1 (T 1 , 2 )+d(T 2 , 2 )+d(T 3 , 2 )+d(T 4 , 2 )+min{d(T 2 , 3 ), d(T 3 , 3 ), d(T 4 , 3 ) }


g’’ = 8 + 6 + 3 + 9 + 2 = 28

Calculo de g’’’:

g’’’=d(T 1 , 1 )+d(T 2 , 1 )+d(T 3 , 1 )+d(T 4 , 1 )+min{d(T 2 , 2 )+d(T 2 , 3 ), d(T 3 , 2 )+d(T 3 , 3 ),


d(T 4 , 2 )+d(T 4 , 3 )}
g’’’= 3+7+6+8+min{6+4, 3+2, 9+9} = 29

M3 T3

M2 T3

M1 T1, T2, T3, T4

10 20 30
GT 1 = max {31, 28, 29} = 31

175
El procedimiento de cálculo se puede simplificar a partir de la tabla siguiente:

M1 M2 M3 g` g`` g``` G
f1(T1, j) 3 8 16 31 28 29 31

f1(T2, j) 7 13 17 36 32 29 36

f1(T3, j) 6 9 32 33 34 34
11

f1(T4, J) 8 17 26 40 33 29 40

La primera parte del cuadro (hasta la columna que encabeza M 3 ) , se consigna


información referente al tiempo total transcurrido desde el inicio hasta que
cada trabajo haya concluido sus operaciones en cada una de las máquinas,
como se sabe , la información en referencia es útil para efectuar el calculo de
trayectorias (segunda parte del cuadro) , que se logra con el auxilio de la
matriz de tiempos de operación propuesta en el problema.

El gráfico siguiente muestra las cotas de las alternativas

RAIZ

31 40
36 34
T1 T2 T3 T4

T1T2 T1T3 T1T4

176
Tal como se observa en el gráfico la menor cota corresponde a T 1 , por
consiguiente este trabajo encabeza el orden de ejecución existiendo entonces 3
alternativas para el segundo lugar.

Si se supone que T 2 es el segundo trabajo entonces se tiene el siguiente


gráfico:

M3 T1 T2

M2 T1 T2

M1 T1 T2

10 20

Aplicando la ecuación 4.1 se encuentra el mismo resultado:

f 2 (T 2 , 1 ) = f 1 (T 1 , 1 ) + d(T 2 , 1 ) = 3+7 =10


f 2 (T 2 , 2 ) = m a x { f 1 (T 1 , 2 ) , f 2 (T 2 , 1 )} +d(T 2 , 2 )
= max{8, 10}+6 = 16
f 2 (T 2 , 3 ) =max{f 1 (T 1 , 3 ), f 2 (T 2 , 2 )} +d(T 2 , 3 )
=max{16, 16}+4 = 20

Como se podrá observar esta información representa el punto de partida del


algoritmo y como ya se ha visto anteriormente, esta se obtiene fácilmente
partiendo de los datos de la primera fila y primera columna de la matriz de
resultados la cual es:

177
M1 M2 M3

T1 : f1(T1, j) 3 8 16 g` g`` g``` G

T1,T2 : f1(T2, j) 16 20 31 30 29 31
10

T1,T3 : f1(T3, j) 9 12 18 31 31 34 34

T1,T4 : f1(T4, J) 11 20 29 35 31 29 35

Se tiene por ejemplo que para el calculo de g’ para la secuencia T 1 , T 2 se


procede de la forma siguiente:

g’ = f 2 ( T 2 , 3 )+ d ( T 3 , 3 )+d(T 4 , 4 ) = 20+2+9 = 31

La siguiente gráfica muestra los resultados:

RAIZ

31
36 34
T1 T2 T3 T4

31 34 35

T1T2 T1T3 T1T4

42 38

T1T2T3 T1T2T4

178
La menor cota corresponde a T 1 , T 2 las alternativas para ocupar el tercer lugar
en el orden , son dos y corresponden a los trabajos T 3 y T 4 .

Aplicando nuevamente el algoritmo para las dos alternativas se tiene:

M1 M2 M3
T1,T2 : f2(T2, j) 10 16 20 g` g`` g``` G

T1,T2,T3 : f3(T3, j) 16 19 22 31 37 42 42

T1,T2,T4 : f3(T4, j) 18 27 36 38 32 29 38

Las cotas obtenidas son altas en comparación con los que se tiene en el
gráfico , en consecuencia se continua ramificando por la alternativa de menor
cota hasta lograr el resultado que se tiene en el siguiente árbol , donde se
señala que la duración optima es de 35 unidades y las alternativas del orden de
ejecución son: T 1 , T 4 , T 3 , T 2 y T 1 , T 4 , T 2 , T 3 .

179
RAIZ

31 40
36 34
T1 T2 T3 T4

31 34 35 35 41 44

T1T2 T1T3 T1T4 T3T1 T3T2 T3T4

42 42 35 39
42

T1T2T3 T1T3T2 T1T4T2 T3T1T2 T3T1T4

38 35
39

T1T2T4 T1T3T4 T1T4T3

M3 T1 T4 T3 T2

M2 T1 T4 T3 T2

M1 T1 T4 T3 T2

35

180
T1 T4 T2 T3
M3

M2 T1 T4 T2 T3

M1 T1 T4 T2 T3

35

CASO III : HALLAR EL ORDEN DE EJECUCION DE N TRABAJOS EN N


MÁQUINAS DONDE CADA TRABAJO TIENE UNA
SECUENCIA DE PROCESO DIFERENTE

Cuando cada trabajo tiene una secuencia diferente de ejecución, se hace


conveniente la aplicación del algoritmo de H. Greenberg; con el cual se
determina el tiempo óptimo de inicio de operación de cada trabajo en cada
máquina logrando así que la duración total del proceso sea mínima.

La información requerida para aplicar el algoritmo es :

a. Duración de la operación en máquina de cada trabajo que se denota como:


D= d(i, j) .......... 4.2
b. Secuencia del proceso de cada trabajo:
L=l(i, k) .......... 4.3
El conocimiento del algoritmo de H. Greenberg se alcanzará a través de
un ejemplo.

181
EJEMPLO

Sea la siguiente matriz de tiempos:

MAQUINA j
TRABAJO i M1 M2 M3
A 3 _ 8

D= B 7 3 _

C 5 4 3

d (i, j ) : tiempo de operación del trabajo i en la máquina j

Sea la secuencia de operaciones de cada uno de los trabajos:

SECUENCIA K
TRABAJO i M1 M2 M3
A M3 M1 _

L= B M2 M1 _

C M1 M3 M2

Por ejemplo, la secuencia del trabajo C es: M1, M3, M2.

Se pide determinar el tiempo mínimo de ejecución de los trabajos.

SOLUCION :

Si: S(i, j) : tiempo de inicio del trabajo i en la máquina j,

Por (4.2) y (4.3) se tiene las siguientes restricciones:

182
S [i, l(i, k)] + d [i, l(i, k)] <= S [i, l(i, k+1)] ...(k=1 ... m-1)...4.4
Sq : Tiempo en que termina el último trabajo.
Sq es el máximo de los S [i, l(i, m)] + d [i, l(i, m)], resumiendo se tiene
la siguiente formulación :

min Z = Sq

Sujeto a:
S [i, l(i, k)] + d[i, l(i, k)] <= S[i, l(i, k+1)] ; K= 1... m-1
S [ix(i, m)] + d[i, l(i, m)] <= Sq ...4.5

El algoritmo de H. Greenberg consiste en:

1. Resolver (4.5), hacer r=0, dibujar la raíz, etiquetar con Yr y acotar con
Z.
2. Hacer dos ramificaciones, en la primera el trabajo W debe iniciarse antes
que el trabajo T en la máquina p.

W < T ...... S(W, p) + d(W, p) <= S(t, p)

y la segunda es :

T < W ...... S(T, P) + d(t, p) <= S(w, p)


.... condición que no debe existir en Yr

Se tienen dos nudos, cuya cota será la solución de Yr más su respectiva


restricción adicional. Hacer r=r+1 y etiquetar el nudo cuya cota sea menor con
Yr.

3. Si todas las secuencias en las máquinas especificadas en Yr , esa es la


solución óptima en caso contrario ir a (2).

APLICACION DEL ALGORITMO EN EL EJEMPLO

r=0
min Z = Sq

Sujeto a:

183
S(A, 3) + d(A, 3) <= S(A, 1);
S(A, 3) + 8 <=S(A, 1)
S(B, 2) + d(B, 2) <= S(B, 1);
S(B, 2) + 3 <= S(B, 1)
S(C, 1) + d(C, 1) <= S(C, 3);
S(C, 1) + 5 <= S(C, 3)

Yo :

S(C, 3) + d(C, 3) <= S(C, 2);


S(C, 3) + 3 <= S(C, 2)
S(A, 1) + d(A, 1) <= Sq ;
S(A, 1) + 3 <=Sq
S(B, 1) + d(B, 1) <= Sq ;
S(B, 1) + 7 <=Sq
S(C, 2) + d(C, 2) <= Sq ;
S(C, 2) + 4 <=Sq

Problema cuya solución es :


Sq = 12 ,

luego : ........ Yo

Se hacen dos ramificaciones y se resuelven dos problemas :

a. Yo con la restricción S(A, 1) + 3 <= S(B, 1)

b. Yo con la restricción S(B, 1) + 7 <= S(A, 1)

Las respuestas son 18 y 13 respectivamente por lo que Y1 es Yo con

S(B, 1) + 7 <= S(A, 1).

A partir de Y1 se continua ramificando todas las alternativas que aun


faltan. Las alternativas de acuerdo al uso de las máquinas por los traba
os son:

- Para la máquina M1 (Trabajos; A, B, C)


A<B ó B<A
A<C ó C<A
184
B<C ó C<B

- Para M2 (Trabajos; B y C)
B<C ó C<B

- Para M3 (Trabajos; A y C)
A<C ó C<A

Ramificando con la aplicación del algo ritmo se tiene los siguientes


resultados:

n RESTRICCION ADICIONAL COTA


S(A, 1) + 3 <= S(C, 1) 25
2 S(C, 1) + 5 <= S(A, 1) 13
S(B, 1) + 7 <= S(C, 1) 22 Y3
3 S(C, 1) + 5 <= S(A, 1) 15
S(B, 2) + 3 <= S(C, 2) 15 Y4
4 S(C, 1) + 4 <= S(A, 1) 25
S(A, 3) + 8 <= S(C, 3) 15 Y5
5 S(C, 3) + 3 <= S(A, 3) 19

Como se agotaron todas las alterna tivas en Y5, el tiempo mínimo es de


15 unidades con los siguientes tiem pos de inicio.

S(A, 1) =12 S(B, 1) =5 S(C, 1) = 0


S(A, 3) =0 S(B, 2) =0 S (C, 2) =11
S(C, 3) = 8

El árbol final es :

185
12

Y0

18 13

S(A,1) + 3 < S(B, 1) Y1 S(B, 1) + 7 < S(A, 1)

25 13

S(A, 1) + 3 < S(C,1) Y2 S(C, 1) + 5 < S(A, 1)

22 15

S(B, 1) + 7 < S(C, 1) Y3 S(C, 1) + 5 < S(B, 1)

25 15

S(C, 2) + 4 < S(B, 2) Y4 S(B, 2) + 3 < S(C, 2)

19 15

S(C, 3) + 3 < S(A, 3) Y5 S(A, 3) + 8 <S(C, 3)

La solución se representa grá ficamente

186
M3 A C

M2 B C

M1 C B A

3 5 8 11 12 15

Una manera más sencilla de resolver el proble ma es haciendo uso del método
de la ruta crítica para resolver todos los pa sos del algoritmo.

Con los datos del ejemplo se procede como si gue:

Para facilitar la confección del gráfico se denota con las letras A, B, C a los
trabajos y con los números 1, 2 y 3 a las máquinas M1, M2 y M3
respectivamente; así se tiene por ejemplo que para indicar que el trabajo A está
ubicado en la máquina M3 , basta expresarlo como A, 3.

Tiempo de duracion del programa

187
0 8
8 3
A,3 A,1

0 3 12
0 3 7 0
Inicio B,2 B,1 Fin

0 5 8
5 3 4
C,1 C,3 C,2

12

Y0

Para M1 :

A, 1 < B, 1

188
0 8
8 3
A,3 A,1

0 11 18
0 3 7 0
Inicio B,2 B,1 Fin

0 5 8
5 3 4
C,1 C,3 C,2 12

Yo

18

A,1 < B,1

189
Para :
B, 1 < A, 1

0 10
8 3
A,3 A,1

0 3
0 3 7 0
Inicio B,2 B,1 Fin

0 5 8
5 3 4
C,1 C,3 C,2

12

Yo

18 13

A,1 < B,1 Y1 B,1 < A,1

190
Para :
A, 1 <C, 1

0 10
8 3
A,3 A,1

0 3 25
0 3 7 0
Inicio B,2 B,1 Fin

13 18 21
5 3 4
C,1 C,3 C,2

13

Y1

25

A,1 < C,1

191
Para :
C, 1 < A, 1

0 10
8 3
A,3 A,1

0 3 13
0 3 7 0
Inicio B,2 B,1 Fin

0 5 8
5 3 4
C,1 C,3 C,2

13

Y1

25 13

A,1 < C,1 Y2 C,1 < A,1

192
Para :
B, 1 < C, 1

0 15
8 3
A,3 A,1

0 3 22
0 3 7 0
Inicio B,2 B,1 Fin

15 18
5 3 4
C,1 C,3 C,2
10

13

Y1

22

B,1 < C,1

Continuando con el procedimiento se obtiene finalmente lo siguiente:

193
0 12
8 3
A,3 A,1

0 5 15
0 3 7 0
Inicio B,2 B,1 Fin

8
5 3 4
C,1 C,3 C,2
0 11

15

Y3

25 15

C,1 < B,1 Y4 B,1 <C,1

C,3 < A,3 Y5 A,3 < C,3

Cabe notar que a partir de la red re sulta fácil efectuar el gráfico de barras
donde se señala el orden de ejecución de los trabajos en cada máquina ya que
se cuenta con las precedencias, los TPI y la duración de cada tra bajo en cada
máquina.
194
CAPÍTULO V

PROGRAMACIÓN DINÁMICA

5.1 DEFINICIÓN

Es un método de opti mización de los sistemas sobre los que se opera por fases
o etapas. El punto de partida de este méto do es el llamado Teorema de
Optimidad.

TEOREMA DE OPTIMIDAD

«Una política óptima sólo puede estar formada por subpolíticas óptimas».

5.2 CARACTERÍSTICAS DE LOS PROBLEMAS DE PROGRAMACIÓN


DINÁMICA

a. El problema se des compone en subproblemas denominados etapas, cada una


de éstas se optimiza sobre sus al ternativas.
b. En cada etapa existe un número de estados posibles por ejemplo para el caso
de un problema de inventarios los estados posi bles son los stocks.
c. La decisión que se toma en una etapa de terminada implica la transición de
un estado de esta etapa a un estado de la si guiente etapa.
d. Al igual que otros proble mas de optimización existe una función obje tivo
sujeta a restricciones.
e. La función objetivo se identi fica mediante una fórmula de recurrencia o
rendimiento con la previa identificación de la variable de decisión.
f. La ecuación recursiva per mite que se optimice cada etapa por separado, tam -
bién mantiene información de rendimiento óptimo acumulado de las anteriores
etapas consideradas, de manera que cuando se llega a la última etapa se tiene el
rendimiento óptimo total para el problema com pleto.
g. El proceso de solución empieza generalmente optimizando la última etapa y
se progresa incluyendo una etapa cada vez hasta llegar a la primera.

195
5.3 ELEMENTOS BASICOS DE LA PROGRA MACIÓN DINÁMICA

Existen tres elementos básicos:


- Etapa
- Estado del sistema en cada etapa
- Alternativas o variable de decisión en cada etapa con su función de rendimiento asociada.

a. Etapa
La etapa representa una porción del problema para la cual se debe tomar una
decisión.
b. Estado del Sistema
El estado representa las condiciones iniciales de cada etapa y sir ve de liga a
través de la aplicación de la función de rendimiento entre las etapas subsecuen-
tes.
c. Alternativa o variable de Decisión
La deteminación de alternativas dentro de cada etapa es par te integral de la
definición de la etapa y por consiguiente deberá ser fácil mente identificable.
Asociado a cada etapa está la fun ción de rendimiento de una variable de deci -
sión la cual evalúa cada alternativa.

EJEMPLO DE OPTIMIZACIÓN SECUENCIAL

Se propone construir una carre tera que pasará por la cercanía de diversas
ciudades y tendría M tramos. Para cada uno de estos tramos se ha estudiado y
evaluado el costo de diversas variables.
La red representada en la fig. 5.1 mues tra los costos de construcción de cada
tramo. Se pide encontrar el cami no de valor mínimo entre (1) y (10).

196
Fig. 5.1

197
SOLUCION:

Para obtener la solución, el procedimiento de cálculo que se va a emplear se le


conoce como «Procedimiento de cálculo hacia adelante: f 1 , f2.... F N . Donde f 1 y
F N son las funciones: inicial y final de la función recursi va.

Etapas: Como se observa en la fig. 5.1, exis ten 4 etapas

Estado: (s.f.) o punto de partida o inicio de cada etapa.


Por ejemplo el estado de la etapa 2 está com prendido por los vértices
2, 3,4.

Variable de decisión:(s.f.), como destino o extremo final de cada etapa.

Función de rendimiento:

f n(Sn,Xn) = min[C(Sn,Xn) + f n-1(Xn-1)]

f n(Sn,Xn): Costo total cuando se ha


recorrido n etapas.

C(Sn,Xn) : Costo de la etapa n.

f n-1(Xn-1) : El mejor costo total cuan do se ha recorrido


n-1 etapas.

Aplicando la función de rendimiento se tiene.


a) Para n =1

f1(S 1 ,X 1 ) = C(S 1 ,X 1 ) + f* 0 (x 0 )
S 1 =1
X 1 = 2,3,4
X 0 =1

Cuando X 1 =2
f 1 (1,2) = C(1,2) + f* 0 (1) = 2 + 0 = 2
Mejor costo total para llegar a (2) es:
f* 1 (2) = 2

Cuando X 1 = 3
198
f 1 (1,3= C(1,3) + f* 0 (1) = 3 + 0 = 3
Mejor costo total para llegar a (3) es:
f* 1 (3) = 3

Cuando X 1 = 4
f 1 (1,4) = C(1,4) + f* 0 (1) = 4 + 0 = 4
Mejor costo total para llegar a (4) es:
f* 1 (4) = 4

b.) Para n=2


f 2 (S 2 ,X 2 ) = C(S 2 ,X 2 ) + f* 1 (X 1 ), pero como X 1 = S 2 entonces:
f 2 (S 2 ,X 2 ) = C(S 2 ,X 2 ) + f* 1 (S 2 )
S 2 =2,3,4
X 2 = 5,6,7

Si X 2 = 5 se tiene :
f 2 (S 2 , 5 ) = min [C(S 2 , 5 ) + f*1(S 2 )], S 2 : 2,3,4
= min [C(2,5) + f* 1(2), C(3,5) + f*1(3),C(4,5) + f*1(4)]
= min [7+2, 3+3, 4+4] = 6

Mejor costo para llegar a (5) es:


f*2(5) = 6

Resumiendo y continuando con la aplicación de a fórmula recursiva, se obtiene


los siguientes resultados:
n=1
+------------------------+
¦ x1 ¦ ¦ ¦ ¦
¦ S1 ¦2 ¦3 ¦4 ¦
+---------+----+----+----¦
¦ 1 ¦2 ¦3 ¦4 ¦
+---------+----+----+----¦
¦ f1(x1) ¦ 2 ¦ 3 ¦ 4 ¦
+---------+----+----+----¦
¦ S1 = xo ¦ 1 ¦1 ¦1 ¦
+------------------------+
199
En la última fila se indica el estado correspondiente al menor costo

n = 2
+-------------------------+
¦ x2 ¦ ¦ ¦ ¦
¦ S2 ¦ 5 ¦ 6 ¦ 7 ¦
+----------+----+----+----¦
¦ 2 ¦ 9 ¦ 8 ¦ 6 ¦
+----------+----+----+----¦
¦ 3 ¦ 6 ¦ 5 ¦ 7 ¦
+----------+----+----+----¦
¦ 4 ¦ 8 ¦ 5 ¦ 9 ¦
+----------+----+----+----¦
¦ f2(x2) ¦ 6 ¦ 5 ¦ 6 ¦
+----------+----+----+----¦
¦ S2 = x1 ¦ 3 ¦ 3 ¦ 2 ¦
+-------------------------+

EJEMPLO DE CÁLCULO:

PROBLEMA 1
Si se desea calcular el mejor costo para lle gar a X2 =6 se procede de la
siguiente manera:

f 2(S2,6) = min [C(S2,6) + f* 1(S2)]

S2 : 2,3,4
= min [C(2,6) + f*11(2), C(3,6) + f* 1(3), C(4,6)
+ f* 1 (4)]

= min [6+2,2+3,1+4] = 5

f 2(S2,6) = f* 2(6) = 5

200
n=3
+------------------+
¦ x3 ¦ ¦ ¦
¦ S3 ¦8 ¦9 ¦
+--------+----+----¦
¦ 5 ¦ 7 ¦ 10 ¦
+--------+----+----¦
¦ 6 ¦ 11 ¦ 8 ¦
+--------+----+----¦
¦ 7 ¦9 ¦9 ¦
+--------+----+----¦
¦ f3(x3) ¦ 7 ¦ 8 ¦
+--------+----+----¦
¦ S3 = x2¦ 5 ¦ 6 ¦
+------------------+
n = 4
+-----------------+
¦ x4 ¦ ¦
¦ S4 ¦ 10 ¦
+-----------+-----¦
¦ 8 ¦ 10 ¦
+-----------+-----¦
¦ 9 ¦ 12 ¦
+-----------+-----¦
¦ f4(x4) ¦ 10 ¦
+-----------+-----¦
¦ S4 = x3 ¦ 8 ¦
+-----------------+
El costo total de construcción es 10 unidades.
El camino se localiza de la forma si guiente:

Para n =4, X4 = 10 y S4 = X3 = 8

Para n =3, X3 = 8 y S3 = X2 = 5

201
Para n =2, X2 = 5 y S2 = X1 = 3

Para n =1, x1 = 3 y S1 = Xo = 1

Entonces el camino (Xo, X1, X2, X3, X4) es (1,3,5,8,10).

El camino se muestra en la fig. 5.2.

Fig. 5.2

202
PROBLEMA 2
Se tiene un contrato para entregar 3 uni dades mensuales de cierto produc to
durante 4 meses, la capacidad de producción de la planta es de 5 uni dades
mensuales como máximo.
El stock a fin de mes no puede ser mayor de 4 unidades.
El costo de fabricación C(X) es como si gue:

C(o) = O, C(1) = 15, C(2) = 17,


C(3) = 19, C(4) = 21 y C(5) = 23

El costo de almacenamiento por uni dad-mes es 2.


El inventario inicial : II = 0
El inventario final : IF = 0
Se pide optimizar la producción en un horizon te de 4 meses.

SOLUCION :

Etapas : 4 ( número de etapas)


Estado del Sistema : IIn, Inventario ini cial en la etapa n
Variable de decisión : Xn, número de uni dades a producir en la etapa n
para un inventario Inicial (IIn) (II).
Función de Costo : f n (IIn,Xn):
fn(IIn,Xn) = min [C(X) + (IIn + Xn-3)2 + f* n-1(IIn + Xn-3)]

C(X) : Costo de Producción de X unidades


(IIn + Xn-3) : Inventario final de la etapa n (IFn) o Inventario Inicial de
la etapa n-1, (II n-1)

(IIn + Xn-3)2 : Costo del Inventa rio.

f* n-1 (IIn + Xn -3) : mejor costo total en la etapa n-1

Explicación de los estados:


MES 1 MES 2 MES 3 MES 4

203
¦II4 IF4=II3 IF3=II2 IF2=II1 IF1
¦ ¦ ¦ ¦ ¦
¦ 0 0 ¦ 0 0 ¦ 0 0 ¦ 0 0 ¦
¦ ¦ ¦ ¦ ¦
¦ 0 1 ¦ 1 1 ¦ 1 1 ¦ 1 ¦
¦ ¦ ¦ ¦ ¦
¦ 0 2 ¦ 2 2 ¦ 2 2 ¦ 2 ¦
¦ ¦ ¦ ¦ ¦
¦ ¦ 3 ¦ 3 3 ¦ 3 ¦
¦ ¦ ¦ ¦ ¦
¦ ¦ 4 ¦ 4 ¦ ¦
¦ 4 ¦ 3 ¦ 2 ¦ 1 ¦

ETAPA 4 ETAPA 3 ETAPA 2 ETAPA 1

Con la información de capacidad de produc ción, entrega mensual, capaci dad


del almacenamiento, inventario inicial de la primera etapa e in ventario final de
la última etapa, se deduce fácilmente los II e IF de to das las etapas (gráfico
anterior), así por ejemplo se tiene que para el mes 4 (etapa 1) el inventario
final debe ser cero y el inventario inicial, puede valer desde 0 a hasta 3 que es
el compromiso de entrega; con el inventario final de esta etapa se procede a
generar las cifras correspondientes a la etapa 3 y así hasta el final.

Aplicación de la fórmula de rendi miento

Para la primera etapa : n =1


Alternativa de producción : (IF = II + Prod. - Entrega)

II 1 + Producción - Entrega = IF 1 
0 + 3 - 3 = 0
1 + 2 - 3 = 0
2 + 1 - 3 = 0
3 + 0 - 3 = 0

Aplicando :

f n (II n,X n) = min [C(X n) + (II n + X n-3)2 + f* n-1(II n + X n-1)]

Para n = 1, se tiene:

204
n = 1
+-------------------------------------------+
¦ x1 ¦ ¦ ¦ ¦ ¦f1 ¦ x1 ¦
¦II1 ¦ 0 ¦ 1 ¦ 2 ¦ 3 ¦(II1)¦(II1)¦
+------+---+------+------+------+-----+-----¦
¦ 0 ¦ - ¦ - ¦ - ¦19+0+0¦ 19 ¦ 3 ¦
+------+---+------+------+------+-----+-----¦
¦ 1 ¦ - ¦ - ¦17+0+0¦ - ¦ 17 ¦ 2 ¦
+------+---+------+------+------+-----+-----¦
¦ 2 ¦ - ¦15+0+0¦ - ¦ - ¦ 15 ¦ 1 ¦
+------+---+------+------+------+-----+-----¦
¦ 3 ¦ - ¦ - ¦ - ¦ - ¦ 0 ¦ 0 ¦
+-------------------------------------------+
EJEMPLO DE CÁLCULO:

II 1 = 0
f 1(0,X 1) = min { C(3) + (0 + 3 -3)2 + f*o(0) }
= 19 + 0 + 0 = 19
f*o(C): Mejor costo en la etapa anterior para n = 2

ALTERNATIVA DE PRO DUCCION

II 2 + Producción - Entrega = IF 2

0 3 3 0
0 4 3 1
0 5 3 2
1 2 3 0
1 3 3 1
1 4 3 2
1 5 3 3
. . . .
. . . .
. . . .
. . . .
205
4 2 3 3
n = 2
+--------------------------------------------+
¦ x2¦ ¦ ¦ ¦ ¦ ¦ ¦
+---¦ 0 ¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5 ¦
¦II2¦ ¦ ¦ ¦ ¦ ¦ ¦
+---+-----+------+------+------+------+------¦
¦ 0 ¦ - ¦ - ¦ - ¦19+ ¦21+ ¦23+ ¦
¦ ¦ ¦ ¦ ¦ 0+19¦ 2+17¦ 4+15¦
+---+-----+------+------+------+------+------¦
¦ 1 ¦ - ¦ - ¦17+ ¦19+ ¦21+ ¦23+ ¦
¦ ¦ ¦ ¦ 0+19¦ 2+17¦ 4+15¦ 6+0 ¦
+---+-----+------+------+------+------+------¦
¦ 2 ¦ - ¦15+ ¦17+ ¦19+ ¦21+ ¦ - ¦
¦ ¦ ¦ 0+19¦ 2+17¦ 4+15¦ 6+0 ¦ ¦
+---+-----+------+------+------+------+------¦
¦ 3 ¦0+ ¦15+ ¦17+ ¦19+ ¦ - ¦ - ¦
¦ ¦ 0+19¦ 2+17¦ 4+15¦ 6+0 ¦ ¦ ¦
+---+-----+------+------+------+------+------¦
¦ 4 ¦0+ ¦15+ ¦17+ ¦ - ¦ - ¦ - ¦
¦ ¦ 2+17¦ 4+15¦ 6+0 ¦ ¦ ¦ ¦
+--------------------------------------------+

206
+-----------------------------+
¦ ¦ ¦ ¦
¦ II2 ¦ f2 (II2) ¦ x2 (II2) ¦
+-------+----------+----------¦
¦ 0 ¦ 38 ¦ 3 ¦
+-------+----------+----------¦
¦ 1 ¦ 29 ¦ 5 ¦
+-------+----------+----------¦
¦ 2 ¦ 27 ¦ 4 ¦
+-------+----------+----------¦
¦ 3 ¦ 19 ¦ 0 ¦
+-------+----------+----------¦
¦ 4 ¦ 19 ¦ 0 ¦
+-----------------------------+

EJEMPLO DE CÁLCULO:

Si II 2 = 2

f 2(2,X 2) = min (C(X 2) + (2 + X 2 - 3)2 + f* 1(2 + X 2 - 3))

X 2 = 1,2,3,4

f* 1(2 + X 2 -3) : mejor costo de la etapa 1


para un II 1 = 2 + X 2 - 3

f 2(2, X 2) = min ( 15 + 0 + 19, 17 + 2 + 17, 19 + 4 + 15, 21 + 6 + 0)


= 27

207
n = 3
+--------------------------------------------+
¦ x3¦ ¦ ¦ ¦ ¦ ¦ ¦
+---¦ 0 ¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5 ¦
¦II3¦ ¦ ¦ ¦ ¦ ¦ ¦
+---+-----+------+------+------+------+------¦
¦ 0 ¦ - ¦ - ¦ - ¦19+ ¦21+ ¦23+ ¦
¦ ¦ ¦ ¦ ¦ 0+38¦ 2+29¦ 4+27¦
+---+-----+------+------+------+------+------¦
¦ 1 ¦ - ¦ - ¦17+ ¦19+ ¦21+ ¦23+ ¦
¦ ¦ ¦ ¦ 0+38¦ 2+29¦ 4+27¦ 6+19¦
+---+-----+------+------+------+------+------¦
¦ 2 ¦ - ¦15+ ¦17+ ¦19+ ¦21+ ¦23+ ¦
¦ ¦ ¦ 0+38¦ 2+29¦ 4+27¦ 6+19¦ 8+19¦
+--------------------------------------------+
+-----------------------------+
¦ ¦ ¦ ¦
¦ II3 ¦ f3 (II3) ¦ x3 (II3) ¦
+-------+----------+----------¦
¦ 0 ¦ 52 ¦ 4 ¦
+-------+----------+----------¦
¦ 1 ¦ 48 ¦ 5 ¦
+-------+----------+----------¦
¦ 2 ¦ 46 ¦ 4 ¦
+-----------------------------+

n = 4
+--------------------------------------------+
¦ x4¦ ¦ ¦ ¦ ¦ ¦
+----¦ 3 ¦ 4 ¦ 5 ¦f4(II4)¦x4(II4)¦
¦II4 ¦ ¦ ¦ ¦ ¦ ¦
+----+-------+-------+-------+-------+-------¦
¦ 0 ¦19+0+52¦21+2+48¦23+4+46¦ 71 ¦ 3,4 ¦
+--------------------------------------------+
208
La respuesta se deduce de la manera si guiente:
n = 4 (Para X4 = 3)

II4 = 0
X4 = 3
IF4 = X4 + II4 - 3 = 0

n=3

II3 = IF4 = 0
X3 (II3) = X3(0) = 4
IF3 = X3 + II3 - 3 = 1

n=2

II2 = IF3 = 1
X2 (II2) = X2(1) = 5
IF2 = X2 + II2 - 3 = 3

n=1

II1 = IF2 = 3
X1 (II1) = X1(3) = 0
IF1 = X1 + II1 - 3 = 0

En el caso de X4 = 4 se procede de igual forma.


Los resultados de producción por mes son:

209
PRODUCCION
+-------------------------------+
¦ Mes ¦ ¦ ¦ ¦ ¦
¦ Alt. ¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦
+-----------+----+----+----+----¦
¦ ¦ ¦ ¦ ¦ ¦
¦ 1 ¦ 3 ¦ 4 ¦ 5 ¦ 0 ¦
+-----------+----+----+----+----¦
¦ ¦ ¦ ¦ ¦ ¦
¦ 2 ¦ 4 ¦ 5 ¦ 0 ¦ 3 ¦
+-------------------------------+

210
5.4 PROBLEMAS RESUELTOS

1. Una empresa desea lanzar su producto lo más rápido posible, con el fin de
adelantarse a la competencia. Existen cuatro fases que deben llevarse a cabo y
cuyas duraciones dependen del nivel de conducción
TIEMPOS
+--------------------------------------------------------+
¦ NIVEL ¦ FASE I ¦ FASE II ¦ FASE III ¦ FASE IV ¦
+---------+----------+----------+------------+-----------¦
¦Normal ¦ 5 ¦ - ¦ - ¦ - ¦
¦Prioridad¦ 4 ¦ 3 ¦ 5 ¦ 2 ¦
¦Quiebra ¦ 2 ¦ 2 ¦ 3 ¦ 1 ¦
+--------------------------------------------------------+
Se cuenta con $20 millones para concluir las 4 fases. El costo en los diferentes
niveles es:

COSTOS
+--------------------------------------------------------+
¦ NIVEL ¦ FASE I ¦ FASE II ¦ FASE III ¦ FASE IV ¦
+---------+----------+----------+------------+-----------¦
¦Normal ¦ 2 ¦ - ¦ - ¦ - ¦
¦Prioridad¦ 4 ¦ 4 ¦ 6 ¦ 2 ¦
¦Quiebra ¦ 6 ¦ 6 ¦ 8 ¦ 4 ¦
+--------------------------------------------------------+
¿A qué nivel se debe conducir cada una de las 4 fases para minimizar el tiempo
total de presentación del producto al mercado, sujeto a las restricciones antes
señaladas?

Solución :

Cada fase representa una etapa por consiguiente existen 4 etapas, la función
objetivo es la de minimizar el tiempo total de lanzamiento del producto.

i = 0, 1, 2, 3, 4, etapas
Xi = Costo de la etapa i
Si = Dinero disponible en la etapa i
Ti(Si, Xi) = Tiempo de ejecución de la etapa i cuando se invierte Xi del total
disponible Si.
fi(Si,Xi) = Mejor tiempo total de ejecución de las i etapas.
fi-1(Si-1, Xi-1) = Mejor tiempo total de ejecución de las i-1 etapas.
fi(Si,Xi) = mín [ti(Si,Xi) + fi-1(Si-1, Xi-1)]

211
Para el desarrollo de las alternativas (costo de al etapa i) se requiere conocer la
cantidad de dinero disponible en esa etapa para ello se deberá efectuar la
siguiente comparación:

INVERSION MONTO TOTAL SUMA DE LAS


INVERSIONES
MINIMA EN ≤ Si ≤ DISPONIBLE - MINIMAS
REQUERIDAS PARA
ETAPA i PARA LAS 4 LAS SIGUIENTES
ETAPAS
ETAPAS

ETAPA I

Límites para el estado S1 :


2 ≤ S1 ≤ 20 - ( 2 + 4 + 6)
2 ≤ S1 ≤ 8

+----------------------------------+
¦\ X1¦ ¦ ¦* ¦* ¦
¦S1 \ ¦ 2 ¦ 4 ¦f1(S1,X1)¦X1(S1)¦
+-----+-----+-----+---------+------¦
¦ 2 ¦ 2 ¦ - ¦ 2 ¦ 2 ¦ * X(S1)= mejor
+-----+-----+-----+---------+------¦ tiempo para
¦ 3 ¦ 2 ¦ - ¦ 2 ¦ 2 ¦ la inversión S1
+-----+-----+-----+---------+------¦
¦ 4 ¦ 2 ¦ 1 ¦ 1 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 5 ¦ 2 ¦ 1 ¦ 1 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 6 ¦ 2 ¦ 1 ¦ 1 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 7 ¦ 2 ¦ 1 ¦ 1 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 8 ¦ 2 ¦ 1 ¦ 1 ¦ 4 ¦
+----------------------------------+

Ejemplo de Cálculo :
Sea :
212
S1 = 4
X1 = 2,4
f1(S1,X1) = mín [ t1(S1,X1) + fo(So,Xo) ]
X1 = 2,4
= mín [ t1(4,2) + 0 , t1(4,4) + 0 ]
= mín [ 2 + 0, 1 + 0 ] = 1

ETAPA II
Estado : 8 ≤ S 2 ≤ 20 - (2 + 4)
+----------------------------------+
¦ X2¦ ¦ ¦ * ¦* ¦
¦ S2 ¦ 6 ¦ 8 ¦f2(S2,X2)¦X2(S2)¦
+-----+-----+-----+---------+------¦
¦ 8 ¦ 5+2 ¦ - ¦ 7 ¦ 6 ¦
+-----+-----+-----+---------+------¦
¦ 9 ¦ 5+2 ¦ - ¦ 7 ¦ 6 ¦
+-----+-----+-----+---------+------¦
¦ 10 ¦ 5+1 ¦ 3+2 ¦ 5 ¦ 8 ¦
+-----+-----+-----+---------+------¦
¦ 11 ¦ 5+1 ¦ 3+2 ¦ 5 ¦ 8 ¦
+-----+-----+-----+---------+------¦
¦ 12 ¦ 5+1 ¦ 3+2 ¦ 4 ¦ 8 ¦
+-----+-----+-----+---------+------¦
¦ 13 ¦ 5+1 ¦ 3+1 ¦ 4 ¦ 8 ¦
+-----+-----+-----+---------+------¦
¦ 14 ¦ 5+1 ¦ 3+1 ¦ 4 ¦ 8 ¦
+----------------------------------+

ETAPA III
Estado : 12 ≤ S3 ≤ 20 - 2

213
+----------------------------------+
¦\ X3¦ ¦ ¦ * ¦* ¦
¦S3 \ ¦ 4 ¦ 6 ¦f3(S3,X3)¦X3(S3)¦
+-----+-----+-----+---------+------¦
¦ 12 ¦ 3+7 ¦ - ¦ 10 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 13 ¦ 3+7 ¦ - ¦ 10 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 14 ¦ 3+5 ¦ 2+7 ¦ 8 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 15 ¦ 3+5 ¦ 2+7 ¦ 8 ¦ 4 ¦
+-----+-----+-----+---------+------¦
¦ 16 ¦ 3+4 ¦ 2+5 ¦ 7 ¦ 4 o 6¦
+-----+-----+-----+---------+------¦
¦ 17 ¦ 3+4 ¦ 2+5 ¦ 7 ¦ 4 o 6¦
+-----+-----+-----+---------+------¦
¦ 18 ¦ 3+4 ¦ 2+4 ¦ 6 ¦ 6 ¦
+----------------------------------+

ETAPA IV
Estado : 20
+----------------------------------------+
¦\ X4¦ ¦ ¦ ¦ * ¦* ¦
¦S4 \ ¦ 2 ¦ 4 ¦ 6 ¦f4(S4,X4)¦X4(S4)¦
+-----+-----+-----+-----+---------+------¦
¦ 20 ¦ 5+6 ¦ 4+7 ¦ 2+8 ¦ 10 ¦ 6 ¦
+----------------------------------------+

RESPUESTA
+-----------------+
¦ FASE ¦ NIVEL ¦
+-------+---------¦
¦ I ¦QUIEBRA ¦
+-------+---------¦
¦ II ¦PRIORIDAD¦
+-------+---------¦
¦ III ¦QUIEBRA ¦
+-------+---------¦
¦ IV ¦PRIORIDAD¦
+-----------------+

214
2. Una corporación de desarrollo se encuentra en la decisión de seleccionar
proyectos de inversión dado su presupuesto de capital. Se tiene 5 proyectos a
elegir cada uno de ellos ofrece un Valor Actual Neto (VAN) como retorno,
requiriendo una determinada inversión de capital. Si se dispone de 100
millones de soles optimice la inversión aplicando la programación dinámica.

(en millones de soles)


PROYECTO 1 2 3 4 5
VAN 63 52 40 28 20
INV 51 42 32 23 15

Solución :
Cada proyecto representa una etapa. La función objetivo es la de maximizar el
VAN de la inversión en proyecto.

215
i = 0, 1 .......5 etapas
Xi = 0,1, decisión de inversión, en el proyecto de la etapa i.
Ii = Inversión en el proyecto de la etapa i.
Si = Dinero disponible en la etapa i.
VAN (Ii) = Valor actual neto Ii
fi(Si,Xi) = Mejor valor actual neto cuando se tiene Si y Xi.
*fi-1(Si-1, Xi-1) = Mejor valor actual neto en la etapa i-1 .
fi(Si,Xi) = max [VAN(Ii) + *fi-1(Si-1, Xi-1)]

Para el desarrollo de las alternativas se requiere conocer la cantidad de dinero


disponible en la etapa.

INVERSION MONTO TOTAL SUMA DE LAS


INVERSIONES
MINIMA EN ≤ Si ≤ DISPONIBLE - PARA LAS
SIGUIENTES ETAPAS
ETAPA i PARA LAS 5
ETAPAS

ETAPA I (Inversión en el proyecto 5)

Límites para el estado S1

0 ≤ S1 ≤ 100 - (X2I2 + X3I3 + X4I4 + X5I5)

Sí X2 = X3 = X4 = X5 = 0, S1 = 100;
Sí X2I2 + ..... X5I5 = 100, S1 = 0

Como se observa S1 puede tener como límites los valores, 0 ó 100 por tal razón
y por efectos prácticos se ha de considerar como valores para S1 a 0 y 15 (se
necesita 15 millones para el proyecto 5)

ETAPA II (Inversión en el proyecto 4)

Siguiendo el criterio de la etapa anterior se asume que los valores para S2


pueden ser los siguientes :

216
+--------------------------------+
¦ ALTERNATIVAS ¦DINERO DISPONIBLE¦
¦ DE INVERSION ¦ ESTADO S2 ¦
+--------------+-----------------¦
¦Ningún proyec.¦ 0 ¦
¦Proyecto 5 ¦ 15 ¦
¦Proyecto 4 ¦ 23 ¦
¦Proyecto 5 y 4¦ 38 ó más ¦
+--------------------------------+
+----------------------------------+
¦ \ X2 ¦ ¦ ¦ ¦ ¦
¦S2 \____¦ 0 ¦ 1 ¦f2(S2)¦X2(S2)¦
+--------+-----+-----+------+------¦
¦ 0 ¦ 0 ¦ - ¦ 0 ¦ 0 ¦
+--------+-----+-----+------+------¦
¦ 15 ¦ 20 ¦ - ¦ 20 ¦ 0 ¦
¦--------+-----+-----+------+------¦
¦ 23 ¦ 20 ¦ 28 ¦ 28 ¦ 1 ¦
+--------+-----+-----+------+------¦
¦38 ó más¦ 20 ¦ 48 ¦ 48 ¦ 1 ¦
+----------------------------------+

ETAPA III (Inversión en el Proyecto 3)

+-----------------------------------------------------------+
¦ALTERNATIVAS DE ¦ \ X3¦ ¦ ¦ * ¦* ¦
¦INVERSION EN PROYECT.¦ S3 \ ¦ 0 ¦ 1 ¦ f3(S3,X3)¦ X3(S3)¦
+---------------------+--------+-----+-----+---------+------¦
¦ 0 ¦ 0 ¦ 0 ¦ - ¦ 0 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 5 ¦ 15 ¦ 20 ¦ - ¦ 20 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 4 ¦ 23 ¦ 28 ¦ - ¦ 28 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3 ¦ 32 ¦ 28 ¦ 40 ¦ 40 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 4,5 ¦ 38 ¦ 48 ¦ 40 ¦ 48 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3,5 ¦ 47 ¦ 48 ¦ 60 ¦ 60 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3,4 ¦ 55 ¦ 48 ¦ 68 ¦ 68 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3,4,5 ¦70 ó más¦ 48 ¦ 88 ¦ 88 ¦ 1 ¦
+-----------------------------------------------------------+

217
218
ETAPA IV (Inversión en el Proyecto 2)

-----------------------------------------------------------+
¦ALTERNATIVAS DE ¦ \ X4 ¦ ¦ ¦ * ¦* ¦
¦INVERSION EN PROYECT.¦ S4\ ¦ 0 ¦ 1 ¦f4(S4,X4) ¦X4(S4) ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 0 ¦ 0 ¦ 0 ¦ - ¦ 0 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 5 ¦ 15 ¦ 20 ¦ - ¦ 20 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 4 ¦ 23 ¦ 28 ¦ - ¦ 28 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3 ¦ 32 ¦ 28 ¦ - ¦ 28 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 4,5 ¦ 38 ¦ 48 ¦ - ¦ 48 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 2 ¦ 42 ¦ 48 ¦ 52 ¦ 52 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3,5 ¦ 47 ¦ 60 ¦ 52 ¦ 60 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3,4 ¦ 55 ¦ 60 ¦ 52 ¦ 60 ¦ 0 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 2,5 ¦ 57 ¦ 68 ¦52+20¦ 72 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 2,4 ¦ 65 ¦ 68 ¦52+28¦ 80 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 3,4,5 ¦ 70 ¦ 88 ¦52+28¦ 88 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 2,3 ¦ 74 ¦ 88 ¦52+40¦ 92 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 2,3,5 ¦ 89 ¦ 88 ¦52+60¦ 112 ¦ 1 ¦
+---------------------+--------+-----+-----+---------+------¦
¦ 2,3,4 ¦97 ó más¦ 88 ¦52+68¦ 120 ¦ 1 ¦
+-----------------------------------------------------------+

ETAPA V (Inversión en el Proyecto 1)

+----------------------------------+
¦\ X5¦ ¦ ¦* ¦* ¦
¦S5 \ ¦ 0 ¦ 1 ¦f5(S5,X5)¦X5(S5)¦
+-----+-----+-----+---------+------¦
¦ 100 ¦ 120 ¦63+60¦ 123 ¦ 1 ¦
+----------------------------------+

RESPUESTA

219
PROYECTO INVERSION RENDIMIENTO
1 51 63
2 0 0
3 32 40
4 0 0
5 15 20

TOTAL 98 123

3. Un inversionista tiene $500 para invertir y ha limitado sus posibles


alternativas a 3 compañías. En la tabla se presentan los retornos estimados
para diferentes cantidades de capital invertido en cada compañía. La
asignación 0 retorna $0. ¿Cuál es la estrategia óptima de inversión?

CANTIDAD COMPAÑÍA
S/. 1 2 3
100 10 20 10
200 10 20 20
300 30 20 20
400 40 30 30
500 40 30 40

Solución :
Cada compañía representa una etapa. El objetivo es maximizar el retorno total.

220
i = 0, 1, 2, 3 etapas
Xi = Cantidad invertida en la etapa i
ri(Xi) =Retorno estimado cuando se invierte Xi
fi(Si,Xi) = Mejor retorno total cuando se tiene Si y Xi .
*fi-1(Si-1, Xi-1) = Mejor retorno total en la etapa i-1 .
fi(Si,Xi) = max [ri(Xi) + *fi-1(Si-1, Xi-1)]

La cantidad disponible en cada etapa (Si), i diferente de 3, así como la


cantidad a invertir (Xi) luctuará entre $0 y $500 .

221
ETAPA I (Inversión en C)

+-------------------------------------------------------------+
¦\ X1¦ ¦ ¦ ¦ ¦ ¦ ¦* ¦* ¦
¦S1 \ ¦ 0 ¦ 100 ¦ 200 ¦ 300 ¦ 400 ¦ 500 ¦f1(S1,X1) ¦ X1(S1) ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 0 ¦ 0 ¦ - ¦ - ¦ - ¦ - ¦ - ¦ 0 ¦ 0 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 100 ¦ 0 ¦ 10 ¦ - ¦ - ¦ - ¦ - ¦ 10 ¦ 100 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 200 ¦ 0 ¦ 10 ¦ 20 ¦ - ¦ - ¦ - ¦ 20 ¦ 200 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 300 ¦ 0 ¦ 10 ¦ 20 ¦ 20 ¦ - ¦ - ¦ 20 ¦200 ó 300¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 400 ¦ 0 ¦ 10 ¦ 20 ¦ 20 ¦ 30 ¦ - ¦ 30 ¦ 400 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 500 ¦ 0 ¦ 10 ¦ 20 ¦ 20 ¦ 30 ¦ 40 ¦ 40 ¦ 500 ¦
+-------------------------------------------------------------+

ETAPA II (Inversión en B)

+-------------------------------------------------------------+
¦\ X1¦ ¦ ¦ ¦ ¦ ¦ ¦* ¦* ¦
¦S1 \ ¦ 0 ¦ 100 ¦ 200 ¦ 300 ¦ 400 ¦ 500 ¦f2(S2,X2) ¦ X2(S2) ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 0 ¦ 0 ¦ - ¦ - ¦ - ¦ - ¦ - ¦ 0 ¦ 0 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 100 ¦ 10 ¦ 20 ¦ - ¦ - ¦ - ¦ - ¦ 20 ¦ 100 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 200 ¦ 20 ¦ 30 ¦ 20 ¦ - ¦ - ¦ - ¦ 30 ¦ 100 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 300 ¦ 20 ¦ 40 ¦ 30 ¦ 20 ¦ - ¦ - ¦ 40 ¦ 100 ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 400 ¦ 30 ¦ 40 ¦ 40 ¦ 30 ¦ 30 ¦ - ¦ 40 ¦100 ó 200¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 500 ¦ 40 ¦ 50 ¦ 40 ¦ 40 ¦ 40 ¦ 30 ¦ 50 ¦ 100 ¦
+-------------------------------------------------------------+

ETAPA III (Inversión en A)

+-------------------------------------------------------------+
¦\ X1¦ ¦ ¦ ¦ ¦ ¦ ¦* ¦* ¦
¦S1 \ ¦ 0 ¦ 100 ¦ 200 ¦ 300 ¦ 400 ¦ 500 ¦f3(S3,X3) ¦ X3(S3) ¦
+-----+-----+-----+-----+-----+-----+-----+---------+---------¦
¦ 500 ¦ 50 ¦ 50 ¦ 50 ¦ 60 ¦ 60 ¦ 40 ¦ 60 ¦300 ó 400¦
+-------------------------------------------------------------+

222
De la última etapa se tiene que el máximo retorno esperado es $60, existiendo
para ello dos alternativas de inversión

+--------------------------+
¦ ¦ALTERNATIVAS DE ¦
¦ ¦INVERSION ¦
¦COMPAÑIA ¦ 1 2 ¦
+---------+----------------¦
¦ A ¦ 300 400 ¦
¦ B ¦ 100 100 ¦
¦ C ¦ 100 0 ¦
+--------------------------+
4. Determinar el número de sacos conteniendo granos, que deben incluirse
en el cargamento de una camioneta de capacidad de 1,600 kgs. si se trata de
que el cargamento total sea de máximo valor posible, y necesariamente
debe remitirse al menos un saco de cada tipo de grano.

+------------------------------------+
¦ ¦ PESO DE ¦ VALOR DE ¦
¦GRANO ¦ CADA SACO ¦ CADA SACO ¦
¦ ¦ (Kg) ¦ (pesos) ¦
+---------+-----------+--------------¦
¦Garbanzo ¦ 400 ¦ 125.00 ¦
¦Maíz ¦ 200 ¦ 75.00 ¦
¦Frijol ¦ 300 ¦ 100.00 ¦
+------------------------------------+

Solución :
Cada producto ha de representar una etapa

223
i = 0, 1, 2, 3 etapas
Si = Capacidad disponible del camión en la etapa i
Xi = Número de sacos de alimento cargados en la camioneta

Si
Xi =
peso del saco

r i Xi = Valor cargado en la etapa i


= (valordel saco)Xi

f i (Si, Xi) = Mejor valor cuando se tiene i etapas

= max[(valor del saco)Xi + *fi-1(Si-1, Xi-1]

Para el desarrollo de las alternativas se requiere conocer los límites de la


capacidad disponible del conjunto de camionetas, teniendo en cuenta que se
deberá tener por lo menos un saco de cada alimento.

224
i 3
 Pk ≤ Si ≤ 2600 - Pk
k=1 k=i+1

Pk = peso de un saco de alimento k (frijol, maíz, garbanzo)

ETAPA I (sacos de frijol) :


El límite inferior de S1 = 300 Kg (un saco de frijol)
El límite superior de S1 =1600 - 600 (un saco de garbanzos más uno de maíz)

300 ≤ S1 ≤ 1600 - (200 + 400)

Asimismo el límite inferior de X1 = 1 (un saco de frijol)


El límite superior de X1 es:
X1 = 1000/300

1 ≤ X1 ≤ 3
+------------------------------------------------+
¦ \ X1 ¦ ¦ ¦ ¦
¦S1 \ ¦ 1 2 3 ¦ *f1(S1,X1) ¦ X1(S1) ¦
+-------+------------------+------------+--------¦
¦ 300 ¦ 100 - - ¦ 100 ¦ 1 ¦
¦ 400 ¦ 100 - - ¦ 100 ¦ 1 ¦
¦ 500 ¦ 100 - - ¦ 100 ¦ 1 ¦
¦ 600 ¦ 100 200 - ¦ 200 ¦ 2 ¦
¦ 700 ¦ 100 200 - ¦ 200 ¦ 2 ¦
¦ 800 ¦ 100 200 - ¦ 200 ¦ 2 ¦
¦ 900 ¦ 100 200 300 ¦ 300 ¦ 3 ¦
¦ 1000 ¦ 100 200 300 ¦ 300 ¦ 3 ¦
+------------------------------------------------+

225
ETAPA II 200 + 300 ≤ S 2 ≤ 1600 - 400
1 ≤ X 2 ≤ (1600 - 700)/200
+---------------------------------------------------------+
¦ \ X2 ¦ ¦ ¦ ¦
¦S2 \ ¦ 1 2 3 4 ¦*f2(S2,X2) ¦ *X2(S2) ¦
+--------+--------------------------+-----------+---------¦
¦ 500 ¦ 175 - - - ¦ 175 ¦ 1 ¦
¦ 600 ¦ 175 - - - ¦ 175 ¦ 1 ¦
¦ 700 ¦ 175 250 - - ¦ 250 ¦ 2 ¦
¦ 800 ¦ 275 250 - - ¦ 250 ¦ 2 ¦
¦ 900 ¦ 275 250 325 - ¦ 325 ¦ 3 ¦
¦ 1000 ¦ 275 350 325 - ¦ 325 ¦ 3 ¦
¦ 1100 ¦ 375 350 325 400 ¦ 400 ¦ 4 ¦
¦ 1200 ¦ 375 350 425 400 ¦ 400 ¦ 4 ¦
+---------------------------------------------------------+

ETAPA III

+-----------------------------------------+
¦ \ X3 ¦ ¦ ¦ ¦
¦S3 \ ¦ 1 2 ¦ *f3(S3,X3) ¦ *X3(S3)¦
+-------+-------------+-----------+-------¦
¦ ¦ ¦ ¦ ¦
¦ 1600 ¦ 375 500 ¦ 500 ¦ 2 ¦
+-----------------------------------------+

RESPUESTA

GRANO NÚMERO DE
SACOS

Garbanzo 2
Maíz 2
Frijol 1

226
C0LOCAR AL FINAL DEL CAPITULO5
PROBLEMAS RESUELTOS CON PROGRAMACION LINEAL (LINGO)

! Problema de PROGRAMACION DINAMICA;


! EL PROBLEMA DE LA DILIGENCIA;
! PROGDIN2;
SETS:
NODO/1..8/:F;
RED(NODO,NODO)/1,2 1,3 1,4
2,5 2,6
3,5 3,6 3,7
4,6 4,7
5,8 6,8 7,8/:COSTO;
ENDSETS
DATA:
COSTO =3 4 5
43
456
76
5 6 7;
ENDDATA
N=@SIZE(NODO);
F(N)=0;
@FOR(NODO(I) | I #LT# N :
F(I)=@MIN(RED(I,J):COSTO(I,J)+F(J));
);
MIN=F(1);

MODEL:
[_2] MIN= 0 + 12 ;
END

Objective value: 12.00000


Variable Value Reduced Cost
N 8.000000 0.000000
F( 1) 12.00000 0.000000
F( 2) 9.000000 0.000000
F( 3) 9.000000 0.000000

227
F( 4) 13.00000 0.000000
F( 5) 5.000000 0.000000
F( 6) 6.000000 0.000000
F( 7) 7.000000 0.000000
F( 8) 0.000000 0.000000
COSTO( 1, 2) 3.000000 0.000000
COSTO( 1, 3) 4.000000 0.000000
COSTO( 1, 4) 5.000000 0.000000
COSTO( 2, 5) 4.000000 0.000000
COSTO( 2, 6) 3.000000 0.000000
COSTO( 3, 5) 4.000000 0.000000
COSTO( 3, 6) 5.000000 0.000000
COSTO( 3, 7) 6.000000 0.000000
COSTO( 4, 6) 7.000000 0.000000
COSTO( 4, 7) 6.000000 0.000000
COSTO( 5, 8) 5.000000 0.000000
COSTO( 6, 8) 6.000000 0.000000
COSTO( 7, 8) 7.000000 0.000000
! PROBLEMA DE PROGRAMACION DINAMICA;
! PROBLEMA DE LA MOCHILA ENTERO;
! PROGDIN3;
SETS:
STATE/1..3/:W,C,F,X;
ENDSETS
DATA:
C =2 1 3;
W =3 3 4;
B =8;
ENDDATA
N=@SIZE(STATE);
F(N)=C(N)*X(N);
@FOR(STATE(I) | I #LT# N :
F(I)=@MAX(STATE(J)|J #GT# I:C(I)*X(I)+F(J));
);
@SUM(STATE:W*X)<=B;
@FOR(STATE:
@GIN(X);
);
MAX=F(1);
MODEL:
228
[_2] 3 * X_1 + 3 * X_2 + 4 * X_3 <= 8 ;
[_4] F_3 - 3 * X_3 = 0 ;
[_5] F_1 = @SMAX( 2 * X_1 + F_2 , 2 * X_1 + F_3 ) ;
[_6] F_2 - X_2 - F_3 = 0 ;
@GIN( X_1); @GIN( X_2); @GIN( X_3);
END
…………………………………………………………………………………………
…………………………………………………………………………………………
………….
Linearization components added:
Constraints: 5
Variables: 3
Integers: 2

Global optimal solution found.


Objective value: 6.000000
Extended solver steps: 0
Total solver iterations: 8

Variable Value Reduced Cost


B 8.000000 0.000000
N 3.000000 0.000000
W( 1) 3.000000 0.000000
W( 2) 3.000000 0.000000
W( 3) 4.000000 0.000000
C( 1) 2.000000 0.000000
C( 2) 1.000000 0.000000
C( 3) 3.000000 0.000000
F( 1) 6.000000 0.000000
F( 2) 6.000000 0.000000
F( 3) 6.000000 0.000000
X( 1) 0.000000 -2.000000
X( 2) 0.000000 -1.000000
X( 3) 2.000000 -3.000000

! PROBLEMA DE PROGRAMACION DINAMICA;


! PROBLEMA DE ASIGNACION DE AMBULANCIAS;
! PROGDIN4;
SETS:
AMBULANCIAS/1..3/:F,X,S;
229
CANTIDAD/1..3/;
TABLA(CANTIDAD,AMBULANCIAS):TIEMPOS;
ENDSETS
DATA:
TIEMPOS =12 15 12
10 11 8
8 9 7;
B =5;
ENDDATA
N=@SIZE(AMBULANCIAS);
S(1)=B;
!F(N)=TIEMPOS(X(N),N);
@FOR(AMBULANCIAS(J) | J #LT# N:
F(J)=@MIN(CANTIDAD(I):TIEMPOS(I,J)+F(J+1));
S(J+1)=S(J)-X(J);
);
!@SUM(AMBULANCIAS:X)=B;
@FOR(AMBULANCIAS:
@GIN(X);
X>=1;
X<=3;
);
MAX=F(1);
…………………………………………………………………………………………
………………………………………………………………………….

MODEL:
[_9] MAX= F_1 ;
[_4] X_1 <= 3 ;
[_5] X_2 >= 1 ;
[_6] X_2 <= 3 ;
[_7] X_3 >= 1 ;
[_8] X_3 <= 3 ;
[_3] X_1 >= 1 ;
[_10] F_1 = @SMAX( 12 + F_2 , 10 + F_2 , 8 + F_2 ) ;
[_11] X_1 + S_2 = 5 ;
[_12] F_2 = @SMAX( 15 + F_3 , 11 + F_3 , 9 + F_3 ) ;
[_13] X_2 - S_2 + S_3 = 0 ;
@GIN( X_1); @GIN( X_2); @GIN( X_3);
230
END
…………………………………………………………………………………………
……………………………………………………
Linearization components added:
Constraints: 14
Variables: 8
Integers: 6

Global optimal solution found.


Objective value: 100000.0
Extended solver steps: 0
Total solver iterations: 10

Variable Value Reduced Cost


B 5.000000 0.000000
N 3.000000 0.000000
F( 1) 100000.0 0.000000
F( 2) 99992.00 0.000000
F( 3) 99983.00 0.000000
X( 1) 1.000000 0.000000
X( 2) 1.000000 0.000000
X( 3) 1.000000 0.000000
S( 1) 5.000000 0.000000
S( 2) 4.000000 0.000000
S( 3) 3.000000 0.000000
TIEMPOS( 1, 1) 12.00000 0.000000
TIEMPOS( 1, 2) 15.00000 0.000000
TIEMPOS( 1, 3) 12.00000 0.000000
TIEMPOS( 2, 1) 10.00000 0.000000
TIEMPOS( 2, 2) 11.00000 0.000000
TIEMPOS( 2, 3) 8.000000 0.000000
TIEMPOS( 3, 1) 8.000000 0.000000
TIEMPOS( 3, 2) 9.000000 0.000000
TIEMPOS( 3, 3) 7.000000 0.000000

Row Slack or Surplus Dual Price


1 0.000000 0.000000
2 0.000000 0.000000
3 0.000000 0.000000
231
4 2.000000 0.000000
5 0.000000 0.000000
6 2.000000 0.000000
7 0.000000 0.000000
8 2.000000 0.000000
9 100000.0 1.000000
10 0.000000 1.000000
11 0.000000 0.000000
12 0.000000 0.000000
13 0.000000 0.000000

PROBLEMA DE PROGRAMACION DINAMICA CON STOCKS Y


LÍMITES SUPERIOR E INFERIOR DE CARGA

Se tienen 5 productos cada uno con un peso de 150, 225, 285, 390,300, se tiene
existencias de cada uno de 5, 15, 10, 10, 10; con un costo de 300, 490, 610,
900, 650 por paquete, por motivos de necesidad solo se pude llevar un mínimo
de 4, 9, 8, 3, 7 por motivos de conservación solo se pueden llevar un máximo
de 9, 17, 11, 6, 4. Se pide hallar el número de paquetes que maximice el valor
transportado, sabiendo que no puede cargar más de 10000.

Formulación LINGO 10:

¡W=peso de cada producto;


¡COSTO=costo por paquete;
¡Xmax=cantidad máxima a transportar;
¡Xmin=cantidad mínima a transportar;
¡T=peso máximo de carga;
¡TotalW=peso que se carga;
¡X=paquetes óptimos a cargar;

SETS:
Tipo/1..5/:W,Costo,Xmin,Xmax,F,X,L;
Total/1/:T,TotalW;
M/1,2/;
Ma(M,Tipo):Maxmin;
ENDSETS

232
DATA:
Xmax=9,17,11,6,14;
Xmin=4,9,8,3,7;
W=150,225,285,390,300;
Costo=300,490,610,900,650;
Maxmin=4,9,8,3,7,5,15,10,6,10;
T=10000;

ENDDATA

MAX=F(1);
N=@SIZE(Tipo);
F(N)=Costo(N)*X(N);
@FOR(Tipo(I)|I#LT#N:F(I)=@MAX(Tipo(J)|J#GT#I:Costo(I)*X(I)
+F(J));
@FOR(Tipo(I):Xmin(I)<=X(I));
@FOR(Tipo(I):X(I)<=Xmax(I));
@SUM(Tipo(i):W(I)*X(I))=TotalW(1);
@FOR(Tipo(I):L(I)=@MIN(M(J):Maxmin(J,I)));
@SUM(Tipo:W*X)<=T(1);
@FOR(Tipo:@GIN(X));

233

También podría gustarte