Sie sind auf Seite 1von 4

Clase # 21

Una manera de resolver pequeños


problemas de Programación Lineal, es
mediante la programación dinámica.

Otros ejemplos de
Programación dinámica
Veamos como se aplica el algoritmo para el
problema de la Wyndor Glass C.O

21-1 21-2

La formulación del problema es: Este problema requiere 2 decisiones


interrelacionadas a saber:
Max Z = 3X 1 + 5X 2
s .a
X1 ≤ 4
2X 2 ≤ 12 ♦ N i v e l d e l a a c t i v i d a d 1 : X1
3X 1 2X 1 ≤ 18 ♦ N i v e l d e l a a c t i v i d a d 2 : X2

X 1 ,X2 ≥ 0
21-3 21-4

ETAPAS ESTADOS

Las 2 actividades anteriores se pueden Cantidad de holgura que queda en las restricciones
funcionales.
considerar como las etapas del problema.
Sea la etapa n = la actividad n = (1,2) .
El lado derecho de las restricciones (4, 12, 18) se
interpreta como la cantidad total disponible de los
recursos 1, 2, 3 respectivamente.

Sn : Cantidad de los respectivos recursos


X n : Nivel de la actividad en la etapa n
todavía disponibles para ser asignados a las
actividades restantes

21-5 21-6

1
Sn = (R1 , R2 , R 3 )
Sin embargo al comenzar el problema en la
etapa 2 todavía no se conoce el valor de X1
Ri es la cantidad disponible del recurso por lo que en ese momento se usa :
i (i=1,2,3).
S2 = (R 1 , R2 , R3 )

S1 = (4, 12, 18)


Este problema tiene 3 variables de estado (es
S2 = (4 - X1 , 12, 18 - 3 X1 ) decir un vector con tres componentes).

21-7 21-8

Cada una de las 3 variables de estado es continua, y


f1 = ( 4 , 1 2 , 1 8 , X 1 ) = 3 X1 + Max {5 X2 }
por lo tanto debemos emplear un método especial X 2 ≤≤12
para captar la información requerida como una 2 X 2 ≤≤18 −−3 X 1

función de estado del sistema X 2 ≥≥0

Contribución de las actividades 1 y 2 a Z si


f 2 = ( R 1 , R 2 , R 3 , X 2 ) = 5 X2 el sistema se encuentra en el estado (4, 12,18)
Contribución de la actividad 2 a Z si el al iniciar la etapa 1, la decisión es X1, y
sistema se encuentra en el estado (R1, R2, R3) después se toma una decisión óptima en la
a l i n i c i a r l a e t a p a 2 y l a d e c i s i ó n e s X2. etapa 2

sigue
21-9 21-10

Ecuación 1
De manera parecida, para n = 1,2

f n *( R1 , R2 , R3 ) = Max f n ( R1 , R2 , R3 , Xn ) f2
*
( R1 , R2 , R3 ) = Max {5 X2 }
Xn
2 X 2 ≤≤ R2
2 X 2 ≤≤ R3
X 2 ≥≥ 0

En donde este máximo se toma sobre los


valores factibles de X n, por lo cual, al usar Se usará para resolver el
la parte relevante de las restricciones del problema de 2 etapas
problema se obtiene

sigue
21-11 21-12

2
Ecuación 2 Ecuación 3

*
f1 = ( 4 , 1 2 , 1 8 , X 1 ) = 3 X1 + f2 (4 - X1, 12, 18 - 3X1)

* *
Muestra la estructura básica de f1 ( 4, 12, 18 ) = Max {3 X1 + f2 (4 - X1, 12, 18 - 3 X1) }
X 1 ≤≤4
programación dinámica 3 X 1 ≤≤18
X 1 ≥≥0

Etapa 1 Etapa 2
X1 * *
Estado (4, 12, 18 ) (4 - X1, 12, 18 - 3 X1)
Relación recursiva entre f1 y f2

3X1 que se usará para resolver el

f1 = ( 4 , 1 2 , 1 8 , X 1 ) f2
*
(4 - X1, 12, 18 - 3X1)
problema de la etapa 1
Valor

21-13 21-14

Procedimiento de solución. Etapa n=2

Etapa n=2

*
Para resolver la etapa n=2, la ecuación 1 indica que (R1, R2, R3) f2 ( R1 , R2 , R3 ) X2 *
X2* debe ser el valor más grande de X2 que
satisface simultáneamente 2X2 ≤ R2 , 2X2 ≤ R3 y R2 ≥ 0 5 mín R2 , R3 mín R2 , R3
X2 ≥ 0 R3 ≥ 0 2 2 2 2

S u p o n i e n d o q u e R2 ≥ 0 y R3 ≥ 0 p a r a q u e e x i s t a n
s o l u c i o n e s f a c t i b l e s , e s t e v a l o r m á s g r a n d e e s e l má s
p e q u e ño d e ( R 2 / 2 ) y ( R 3 / 2 )

sigue sigue
21-15 21-16

Etapa n=1
Por lo tanto

Para resolver la etapa n=1, se sustituye la solución


*
que se acaba de obtener para f2 * ( R 1 , R 2 , R 3 ) e n l a f2 (4 - X1, 12, 18 - 3X1) = 5 m í n R2 , R3
ecuación 3 2 2

Recuerde que en n=2 f2


*
(4 - X1, 12, 18 - 3X1) = 5 m í n 12 , 18- 3 X1

2 2
(R1 , R 2 , R3 ) = (4 - X1 , 12, 18 - 3 X1 )

sigue sigue
21-17 21-18

3
Después de combinar las restricciones sobre Note que el intervalo factible, 0 ≤ X1 ≤ 4
X1 , esta ecuación se convierte en

6 si 0 ≤ X1 ≤ 2

* 5 mín 12 , 18- 3 X1 { mín 12 , 18- 3 X1


f1 ( 4, 12, 18 ) = Max { 3 X 1 + =
0 ≤≤ X1 ≤≤ 4 2 2 2 2
9 - 3X1 si 2 ≤ X1 ≤ 4
2

sigue sigue
21-19 21-20

Así de esta manera Las dos funciones

{ {
Max { 3 X 1 + 30 Max { 4 5 - 9X1
3X1 + 30 si 0 ≤ X1 ≤ 2 0 ≤≤ X1 ≤≤ 2 2 ≤≤ X1 ≤≤ 4 2

3X1 +5 mín 12 , 18- 3 X1 =


2 2 45 - 9X1 si 2 ≤ X1 ≤ 4 Adquieren su máximo en X1 = 2
2
Para X1 = 2 , Z=36

21-21 21-22

Se concluye que X 1 * = 2 y que este máximo es 36 La tabla de n = 2 lleva a X2 * = 6


*
(R1, R2, R3) f2 ( R1 , R2 , R3 ) X2 *
*
(R1, R2, R3) f1 ( R1 , R2 , R3 ) X1 *
R2 ≥ 0 5 mín R2 , R3 mín R2 , R3
(4, 12, 18 ) 36 2 R3 ≥ 0 2 2 2 2

Como X1 * = 2
X2 * = mín 12 , 12 =6
2 2

R1 = 4 - 2 = 2 R2 = 12 R3 = 18 - 3(2) = 12

X1 * = 2 , X2 * = 6, Z= 36
en la etapa 2
21-23 21-24