Está en la página 1de 4

Clase # 21

Otros ejemplos de Programación dinámica

 

21-1

La formulación del problema es:

 
 

Max

Z

==

3X

1

++

5 X

2

 

s

.

a

X

1

££

4

 

2X

2

££

12

3X

 

1

2X

1

££

18

 

X

1

, X

2

³³

0

 

21-3

ETAPAS
ETAPAS
 

Las 2 actividades anteriores se pueden considerar como las etapas del problema. Sea la etapa n = la actividad n = (1,2) .

 
   
 

X n : Nivel de la actividad en la etapa n

 

21-5

Una manera de resolver pequeños problemas de Programación Lineal, es mediante la programación dinámica.

Lineal, es mediante la programación dinámica. Veamos como se aplica el algoritmo para el problema de

Veamos como se aplica el algoritmo para el problema de la Wyndor Glass C.O

 

21-2

Este problema requiere 2 decisiones

interrelacionadas a saber:

 
 
   
 
 

® Nivel de la actividad

1

:

X 1

 

® Nivel de la actividad

2

:

X 2

 

21-4

ESTADOS

 

Cantidad

de

holgura

que

queda

en

las

restricciones

funcionales.

 

El lado derecho de las restricciones (4, 12, 18) se

interpreta como la cantidad total disponible de los

recursos 1, 2, 3 respectivamente.

 

S n

:

Cantidad

de

los

respectivos

recursos

   

todavía

disponibles

para

ser

asignados

a

las

actividades restantes

 
 

21-6

S n

= (R 1 , R 2 , R 3 )

S n = (R 1 , R 2 , R 3 ) R i es la

R i es la cantidad disponible del recurso i (i=1,2,3).

S 1 = (4, 12, 18)

S 2 = (4 - X 1 , 12, 18 - 3X 1 )

 

21-7

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

por lo tanto debemos emplear un método especial

para captar la información requerida como una

función de estado del sistema

 
 

f 2

=

(R 1 ,

R 2 ,

R 3 ,

X 2 )=

5 X 2

   

Contribución

de

la

actividad

2

a

Z

si

el

sistema se encuentra en el estado (R 1 , R 2 , R 3 )

al iniciar la etapa 2 y la decisión es X 2.

 
 
sigue
sigue
 

21-9

De manera parecida, para n = 1,2

f n * (R 1 , R 2 , R 3 ) = Max

f n (R 1 , R 2 , R 3 ,X n )

 

X

n

 

En donde este máximo se toma sobre los valores factibles de X n , por lo cual, al usar la parte relevante de las restricciones del problema se obtiene

sigue
sigue

21-11

Sin embargo al comenzar el problema en la etapa 2 todavía no se conoce el valor de X 1 por lo que en ese momento se usa :

S 2 = (R 1 , R 2 , R 3 )

Este problema tiene 3 variables de estado (es decir un vector con tres componentes).

21-8 = (4, 12, 18 , X 1 ) = 3 X 1 + Max
21-8
=
(4,
12,
18 ,
X 1 )
= 3 X 1 +
Max
{5X 2 }
f 1
X
££
12
2
2
X
££
18
--
3
X
2
1
X
³³
0
2
Contribución de las actividades 1 y 2
a
Z
si
el sistema se encuentra en el estado (4, 12,18)
al iniciar la etapa 1, la decisión es X 1 , y
después se toma una decisión óptima en la
etapa 2
21-10
Ecuación 1
f 2 * (R 1 , R 2 , R 3 ) =
Max {5X 2 }
2
X
R
2
££
2
2
X
R
2
££
3
X
0
Se usará para resolver el
problema de 2 etapas
21-12

Ecuación 2

f 1

=

(4,

12,

18 ,

X 1 )

=

3

X 1 +

f 2 * (4

-

X 1 ,

12,

18

-

3X 1 )

 

Muestra la estructura básica

de

 
 

programación dinámica

 

Etapa 1

 

Etapa 2

 
 
(4, 12, 18 )
(4,
12,
18 )
 

X 1

 
(4 - X 1 , 12, 18 - 3 X 1 )

(4 -

X 1 ,

12,

18

-

3 X 1 )

 

3X 1

   

f 1

=

(4,

12,

18 ,

X 1 )

 

f 2 *

(4

- X 1 ,

12,

18

 

-

3X 1 )

Estado

Valor

21-13

Procedimiento de solución.

Etapa

n=2

n=2, la ecuación 1 indica que

X 2 * debe ser el valor más grande de X 2 que

satisface simultáneamente 2X 2 ££ R 2 , 2X 2 ££ R 3 y

X 2 ³³ 0

Para resolver la etapa

Suponiendo que R 2 ³³ 0 y

soluciones factibles, este valor más grande es el más

/

R 3 ³³ 0 para que existan

peque ño de (R 2

/

2)

y

(R 3

2)

sigue

21-15valor más grande es el más / R 3 ³³ 0 para que existan peque ño

Etapa

n=1

 

Para

resolver

la

etapa

n=1,

se

sustituye

la

solución

que

se

acaba

de

obtener

para

f 2 * ( R 1 ,

R 2 ,

R 3 )

en

la

ecuación

3

Recuerde que en n=2

(R 1 , R 2 , R 3 ) =

(4 - X 1 , 12, 18 - 3X 1 )

sigue

21-17en la ecuación 3 Recuerde que en n=2 (R 1 , R 2 , R 3

Ecuación 3

f 1 * ( 4,

12,

18 )

=

Max

{3X 1 + f 2 * (4 - X 1 , 12, 18 - 3 X 1 ) }

   

X

1

££

4

 

3

X 1 ££

18

X

1 ³³

0

Relación recursiva entre f 1 * y f 2

*

que se usará para resolver el

problema de la etapa 1

21-14

Etapa

n=2

( R 1 ,

R 2 ,

R 3 )

f 2 * (R 1 , R 2 , R 3 )

 

X

2

*

R

2 ³³ 0

5

mín

R 2 , R 3 2 2
R 2 ,
R 3
2
2

mín

R 2 , 2
R 2 ,
2
 

R 3

R

3 ³³ 0

 

2

sigue

21-16³³ 0 5 mín R 2 , R 3 2 2 mín R 2 , 2

Por lo tanto

f 2 *

f 2 *

(4

-

X 1 ,

12,

18

-

3X 1 )

=

5

mín

(4

- X 1 ,

12,

18

-

3X 1 )

=

5

mín

R 2 , R 3 2 2 12 , 18- 3 X 1 2 2
R 2 ,
R 3
2
2
12 ,
18- 3 X 1
2
2
sigue
21-18

Después de combinar las restricciones sobre X 1 , esta ecuación se convierte en

f 1 * ( 4,

12,

18 )

=

ecuación se convierte en f 1 * ( 4, 12, 18 ) = Max { 3

Max

{3X 1 + 5 mín

0 ££ X 1 ££ 4

12 , 18- 3 X 1 2 2 sigue 21-19 {
12 ,
18- 3 X 1
2
2
sigue
21-19
{

Así de esta manera

Así de esta manera 3 X 1 + 5 mín 12 , 18- 3 X 1

3X 1 +5 mín

12 , 18- 3 X 1 = 2 2
12 ,
18- 3 X 1
=
2
2

3X 1

+

30

si

0

££ X 1 ££ 2

45

-

9X 1

si

2

££ X 1 ££ 4

2

21-21

Se concluye que X 1 * = 2 y que este máximo es 36

* f 1 * (R 1 , R 2 , R 3 ) ( R
*
f 1 * (R 1 , R 2 , R 3 )
( R 1 ,
R 2 ,
R 3 )
X
1
(4,
12,
18 )
36
2
Como
X 1 * = 2
R 1 =
4
-
2
=
2
R 2 =
12
R 3 =
18
-
3(2)
=
12

en la etapa 2

21-23

Note que el intervalo factible, 0 ££ X 1 ££ 4

mín

6 si 0 ££ X 1 ££ 2 12 , 18- 3 X 1 =
6
si
0
££ X 1 ££
2
12
,
18- 3 X 1
=
2
2
9
-
3X 1
si
2
££ X 1 ££
4
2
sigue
21-20
Las dos funciones Max {3X 1 + 30 Max {45 - 9X 1 0 ££
Las dos funciones
Max {3X 1 + 30
Max {45 - 9X 1
0 ££ X 1 ££ 2
2 ££ X
1 ££ 4
2
Adquieren su máximo en X 1 = 2
Para
X 1 = 2 ,
Z=36
{
{
 

21-22

 

La tabla de

n = 2

lleva a X 2 * = 6

 

( R 1 ,

R 2 ,

R 3 )

f 2 * (R 1 , R 2 , R 3 )

   

X

2

*

 

R

2 ³³ 0

 

5

mín

R 2 , 2
R 2 ,
2

R 3

mín

R 2 , 2
R 2 ,
2
 

R 3

R

3 ³³ 0

2

2

 

X 2 * =

mín

12 , 12 2 2
12 ,
12
2
2

= 6

 

X 1 * = 2 , X 2 * = 6, Z= 36

 
 

21-24