Está en la página 1de 70

Ingeniería Civil Industrial

Programación Dinámica

1
Programación Dinámica (PD) Ingeniería Civil Industrial

• Técnica cuantitativa de toma de decisiones


desarrollada por Bellman y Dantzig en 1957
• Se basa en una estructura de optimalidad que
tiene un conjunto de: una política óptima
consiste de subpolíticas óptimas.
(Recursividad).
• PD: Técnica matemática que resuelve una
serie de decisiones secuenciales, cada una de
las cuales afecta las decisiones futuras.

2
Agenda Ingeniería Civil Industrial

• Problema de la Diligencia
• Características de la Programación Dinámica
• Elementos Básicos
• Programación Dinámica Determinística
• Programación Dinámica Probabilística

3
Problema de la Diligencia Ingeniería Civil Industrial

• Un vendedor mítico de los EE.UU. debe viajar hacia el


oeste a través de tierras hostiles, utilizando como
medio de transporte una diligencia.
• Aún cuando su punto de partida y destino son fijos,
tiene un número considerable de opciones para elegir
qué estados recorrer en su ruta.
• El vendedor ofrece seguros de vida a los pasajeros de
las diligencias.
• El vendedor necesita determinar cual será la ruta más
segura para disminuir sus costos de póliza de seguro.
• Los territorios y costos de póliza en cada recorrido se
observan en la figura a continuación.

4
Problema de la Diligencia Ingeniería Civil Industrial

Costo del
recorrido
7
2 4
5 1

6 4
2
8 3
3 6
4 2
1 3 6 3 10
4
4
3 4
1
3
3
9
5
4 7
Estado

¿Cuál ruta (conjunto de caminos) minimiza el costo total de la póliza?


5
Problema de la Diligencia Ingeniería Civil Industrial

Solución 1: seleccionar el pero sacrificando un poco en una etapa


camino más barato ofrecido es posible obtener ahorros
en cada etapa sucesiva mayores de allí en adelante.
1-2-6-9-10 -> Costo total de 13 1-4-6 es globalmente más barata
que 1-2-6
pero
el número de rutas es muy
Solución 2: por tanteos, grande (1x3x3x2x1=18)
7
2 4
5 1

6 4
2
8 3
3 6
4 2
1 3 6 3 10
4
4
3 4
1
3
3
9
5 6
4 7
Problema de la Diligencia
Ingeniería Civil Industrial

Solución 3:
PROGRAMACIÓN
DINÁMICA

De Atrás hacia delante: Etapa 4 resolver primero

Parte de una pequeña porción del problema y encuentra la solución


óptima para ese problema más pequeño. Entonces gradualmente
agranda el problema, hallando la solución óptima en curso a partir de la
anterior, hasta que se resuelve por completo el problema original.
7
Problema de la Diligencia Ingeniería Civil Industrial

Método de Solución ƒ
n
n Etapa, subproblema que
estamos resolviendo
ƒ( S
n
0

ƒ( S
,Xn )
,Xn )
(n=1,2,3,4) . 1
n
Variable de decisión,
estado inmediato en la Xn
etapa n
s Función Recursiva:

{ }
Estado
Costo del estado S a Xn ƒn *( S ) = Min ƒn ( S, X
n ) = ƒn ( S, X *) n
Xn

f n ( s , xn ) Costo total de la mejor política


global para las etapas
restantes, dado que el
vendedor se encuentra en el 1 → x1 → x2 → x3 → x4 ; x4 = 10
nodo S (listo para inicial la
etapa n) y se selecciona a Xn ƒ(*S ), ƒ(*S ), ƒ*( S ), ƒ(*S )
como destino inmediato. 4 3 2 1 8
Problema de la Diligencia Ingeniería Civil Industrial

Método de Solución
ETAPA 4 ; n = 4

S ƒ *(S) X4
*
4

8 3 10
9 4 10

ETAPA 3 ; n = 3

ƒ(S,X3 ) = CSX 3+ ƒ *(X3 )


X3 3 4
ƒ*(S)
S 8 9 3 X3*
5 1+3=4 4+4=8 4 8
6 6+3=9 3+4=7 7 9
7 3+3=6 3+4=7 6 8

9
Problema de la Diligencia Ingeniería Civil Industrial

Método de Solución
ETAPA 2 ; n = 2

ƒ(S,X2 ) = CSX 2+ ƒ *(X3 )


2 3
X2 ƒ*(S)
S 5 6 7 2 X2*

2 7 + 4 = 11 4 + 7 = 11 6 + 6 = 12 11 5ó6
3 4 + 6 = 10
4
El problema de la diligencia es
ETAPA 1 ; n = 1 un diseño conceptual, para dar
ƒ(S,X1 ) = C1X 1+ ƒ *(X1 ) una interpretación física literal
X1 1 2
ƒ*(S) de los problemas de PD.
S 2 3 4 1 X1*
1 2 + 11 = 13 4 + 7 = 11 3 + 8 = 11 11 3ó4

}
1 3 5 8 10
Identifiquemos
la solución 1 4 5 8 10
optima.
10
1 4 6 9 10
Características de PD Ingeniería Civil Industrial

• Característica fundamental: Procesos


multietapa de toma de decisiones.
• Propiedades:
– Sólo un número reducido de variables se debe
conocer en cualquier etapa con el fin de describir
al problema.
– El resultado de una decisión en cualquier etapa
altera los valores numéricos de un número
reducido de variables relevantes al problema.

11
Elementos básicos de PD Ingeniería Civil Industrial

• El problema puede dividirse en etapas, con una


decisión de la política requerida en cada etapa.
• Cada etapa tiene un cierto número de estados
asociados a ella. En general los estados son de diversas
condiciones posibles, en las que el sistema podría estar
en esa etapa del problema. Puede ser finito o infinito.
• El valor asociado al estado no pude depender de
decisiones de la misma etapa no de futuras decisiones.
• El estado representa una foto del sistema. Una
evaluación en un instante de tiempo.

12
Elementos básicos de PD Ingeniería Civil Industrial

• La decisión debe corresponder a la política del estado


vigente y no del futuro.
• El efecto de la decisión de una política en cada etapa
es: “transformar el estado actual en un estado
asociado con la etapa siguiente”. El estado resultante
podría ser probable distribución.
• Dado el estado actual, una política óptima para las
etapas restantes es independiente de la política
adoptada en las etapas previas (n-1, n, n+1).
• El procedimiento de resolución empieza por hallar la
política óptima para cada estado de la última etapa.

13
Elementos básicos de PD Ingeniería Civil Industrial

• Se dispone de una “relación recursiva” que identifica la política óptima para cada
estado en la etapa n, dada la política óptima para cada estado en la etapa (n+1).
• Usando esta relación recursiva, el procedimiento de resolución se mueve “hacia
atrás”, etapa por etapa - hallando en cada ocasión la política óptima para cada
estado de esa etapa - hasta que se encuentra la política óptima cuando se parte de
la etapa inicial.
Resultado de la
ƒ(*S ) = Min { CSXn + ƒ(*Xn ) }
{ }
política óptima en
* la etapa siguiente n Xn n +1
ƒ ( S ) = Máx Min ƒ( S, Xn ) (n+1)
n n
Xn

f n ( s , xn ) =

s x1 x2 x3 … .. fn*(s) xn*

Estado posible de la
etapa Actual (n)

14
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 1: distribución de fresas


Nº de Tienda
Un propietario de una cadena de tres
supermercados compró cinco cargas de fresas cargas 1 2 3
frescas. La distribución de probabilidad estimada
0 0 0 0
para las ventas potenciales de las fresas antes de
que se echen a perder difiere entre los tres 1 5 6 4
supermercados.
2 9 11 9
El propietario quiere saber cómo debe asignar las
cinco cargas a las tiendas para maximizar la 3 14 15 13
ganancia esperada. 4 17 19 18
Por razones administrativas, no quiere dividir las
cargas entre las tiendas. Sin embargo, está de 5 21 22 20
acuerdo en asignar cero cargas a cualquiera de
ellas. La siguiente tabla proporciona la ganancia
estimada en cada tienda al asignar distintas
cantidades de cargas:
15
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 1:
Nº de Tienda
cargas 1 2 3
0 0 0 0
1 5 6 4
2 9 11 9
3 14 15 13
4 17 19 18
5 21 22 20

16
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 1:

Etapas: supermercados a abastecer (n=1,2,3)


xn: número de cargas asignadas a la etapa n, xn∈{0,1,2,3,4,5}
Estado: número de cargas disponibles para el supermercado n
sn+1= sn - xn
Decisiones: cantidad de cargas asignadas al supermercado n

Función recursiva:
*

17
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 1:
Etapa 3, n=3, s4=0
s3 * x3
0 0 0
1 4 1
2 9 2
3 13 3
4 18 4
5 20 5

18
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 1:
Etapa 2, n=2

s2/x2 0 1 2 3 4 5 f*2(s) x*2


0 0 0 0
1 0+4=4 6+0=6 6 1
2 0+9=9 6+4=10 11+0=11 11 2
3 0+13=13 6+9=15 11+4=15 15+0=15 15 1ó2ó3
4 0+18=18 6+13=19 11+9=20 15+4=19 19+0=19 20 2
5 0+20=20 6+18=24 11+13=24 15+9=24 19+4=23 22+0=22 24 1ó2ó3

19
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 1:
Etapa 1, n=1

s1/x1 0 1 2 3 4 5 f1*(s1) x* 1
5 0+24=24 5+20=25 9+15=24 14+11=25 17+6=23 21+0=21 25 1ó3

Super 1 Super 2 Super 3


2 alternativas

xn 1 2 2
xn 3 2 0
20
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 2: Inventario revisión periódica


Una compañía sabe que la demanda durante cada uno de los próximos cuatro
meses es como se indica: mes 1, 1 unidad; mes 2, 3 unidades; mes 3, 2
unidades; mes 4, 4 unidades.
Durante un mes en el cual se producen algunas unidades, se incurre en un
costo preliminar de 3US$. Además, hay un costo variable de 1 dólar por cada
unidad que se fabrica. Al final de cada mes, se genera un costo de
almacenamiento de 50 centavos por cada unidad disponible.
Las limitaciones en la capacidad permiten producir durante cada mes un
máximo de 5 unidades. Las dimensiones de la bodega de la compañía
restringen el inventario final de cada mes a 4 unidades, cuando mucho.
Suponga que se dispone de 0 unidades al principio del primer mes.
La empresa desea determinar un plan de producción que cumpla con toda la
demanda a tiempo y minimice la suma del costo de producción y del costo de
almacenamiento durante los cuatro meses.
21
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 2
Etapa: meses a satisfacer, n={1,2,3,4,5}
xn: cantidad a producir en el mes n, xn∈{0,1,2,3,4,5}
Estado: stock inicial en el mes n
sn: stock inicial en el mes n, sn∈{0,1,2,3,4}
Decisión: cantidad de unidades a producir en el mes n
dn: demanda del mes n, dn={1,2,3,4}
s1=0
s5=0
sn+1=sn+xn-dn
Función recursiva:
*

22
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 2
Etapa 4, n=4, d4=4, s5=0
s5=s4+x4-d4 * *
s4+x4 = 4

s4 f4*(s4) x4
s4\ x4 0 1 2 3 4 5 0 7 4
0 7 1 6 3
1 6 2 5 2
2 5 3 4 1
3 4 4 0 0
4 0
23
Programación Dinámica
Determinísticas f*(s ) x4
Ingeniería Civil Industrial

4 4 4
Ejercicio 2 0 7 4
Etapa 3, n=3, d3=2 1 6 3

s4= s3+x3-d3 2 5 2
0<s4<4 3 4 1
4 0 0

* f3*(s3) x*3

s3\x3 0 1 2 3 4 5

0 5+7 =12 6.5+6=12.5 8+5=13 9.5+4=13.5 12 2

1 4+7=11 5.5+6=11.5 7+5=12 8.5+4=12.5 10+0=10 10 5

2 0+7=7 4.5+6=10.5 6+5=11 7.5+4=11.5 9+0=9 7 0

3 0.5+6=6.5 5+5=10 6.5+4=10.5 8+0=8 6.5 0

4 1+5=6 5.5+4=9.5 7+0=7 6 0

24
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 2 s3 f3*(s3) x3
0 12 2
Etapa 2, n=2, d2=3
1 10 5
s3=s2+x2-d2 2 7 0
0<s3<4 3 6.5 0
4 0 0
* f*2(s2) x*2

s2\x2 0 1 2 3 4 5

0 6+12=18 7.5+10=17.5 9+7=16 16 5

1 5+12=17 6.5+10 =16.5 8+7=15 9.5+6.5=16 15 4

2 4+12=16 5.5+10=15.5 7+7 = 14 8.5+6.5=15 10+6=16 14 3

3 0+12=12 4.5+10=14.5 6+7=13 7.5+6.5=14 9+6=15 12 0

4 0.5+10=10.5 5+7=12 6.5+6.5=13 8+6=14 10.5 0

25
Programación Dinámica
Determinística Ingeniería Civil Industrial

s4 f4(s4) x4
Ejercicio 2
0 16 5
Etapa 1, n=1, d1=1, s1=0 1 15 4

s2=s1+x1-d1 2 14 3
0<s2<4 3 12 0
4 10.5 0
* f*1(s1) x *1

s1\x1 0 1 2 3 4 5

0 4+16=20 5.5+15=20.5 7+14=21 8.5+12=20.5 10+10.5=20.5 20 1

26
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 2
Mes 1 Mes 2 Mes 3 Mes 4

xn 1 5 0 4

dn 1 3 2 4

sn 0 2 0 0

27
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 3: preparando exámenes


Puntos de
Una estudiante universitaria cuenta con siete
días para preparar los exámenes finales de Calificación
cuatro cursos y quiere asignar su tiempo de Días Estimados
estudio de la manera más eficiente posible.
Cursos
Necesita por lo menos un día para cada curso y
quiere concentrarse sólo en un curso cada día 1 2 3 4
por lo que quiere asignar uno, dos, tres o cuatro 1 3 5 2 6
días a cada curso.
2 5 5 4 7
Como hace poco tomó un curso de investigación
de operaciones, decide aplicar programación 3 6 6 7 9
dinámica para hacer estas asignaciones que 4 7 9 8 9
maximicen el total de puntos obtenidos en los
cuatro cursos. Estima que las distintas opciones
en días de estudio le significaran puntos de
calificación según la siguiente tabla:
28
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 3:

Etapas: cursos n=(1,2,3,4)


xn: días estudiando para el curso n, xn∈(1,2,3,4)
Estado: días de estudio disponibles
sn+1=sn-xn
Decisiones: cantidad de días de estudio para el curso n

Función recursiva:
*

29
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 3:
Puntos de
Etapa 4, n=4, s5=0
Calificación
s4 * x4 Estimados
Días
1 6 1 Cursos
2 7 2
1 2 3 4
3 9 3
1 3 5 2 6
4 9 4
2 5 5 4 7
3 6 6 7 9
4 7 9 8 9

30
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 3: s4 f4*(s4) x4
Etapa 3, n=3 1 6 1
2 7 2
3 9 3
s3/x3 1 2 3 4 f3(s3) x3
4 9 4
1
2 2+6=8 8 1
3 2+7=9 4+6=10 10 2
4 2+9=11 4+7=11 7+6=13 13 3
5 2+9=11 4+9=13 7+7=14 8+6=14 14 3ó4

31
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 3:
Etapa 2, n=2

s2/x2 1 2 3 4 f2(s2) x2
1
2
3 5+8=13 13 1
4 5+10=15 5+8=13 15 1
5 5+13=18 5+10=15 6+8=14 18 1
6 5+14=19 5+13=18 6+10=16 9+8=17 19 1

32
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 3:
Etapa 1, n=1

s1/x1 1 2 3 4 f1*(s) x1
7 3+19=22 5+18=23 6+15=21 7+13=20 23 2

Curso 1 Curso 2 Curso 3 Curso 4

xn 2 1 3 1

33
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 4: consejo mundial de la salud


El consejo mundial de la salud se dedica a mejorar el cuidado
Miles de años
de la salud en los países subdesarrollados del mundo. Ahora de vida
cuenta con cinco equipos médicos para asignar entre tres de Nº de
esos países a fin de mejorar su cuidado médico, su educación adicional del
sanitaria y sus programas de entrenamiento. Equipos hombre
Por consiguiente el consejo necesita determinar cuántos Médicos
equipos (si resulta conveniente) asignar a cada uno de estos País
países para maximizar la efectividad total de los cinco
equipos. La medida de efectividad que se está usando es: 1 2 3
“los años de vida adicionales del hombre”. (Para un país en
particular, esta medida es igual a la esperanza incrementada 0 0 0 0
de vida del país, en años, multiplicada por su población).
1 45 20 50
• ¿Qué es lo que cambia de una etapa a la siguiente,
dado que se han tomado las decisiones en las etapas 2 70 45 70
previas?
• ¿Cómo puede describirse la condición de la situación
3 90 75 80
en la etapa actual? 4 105 110 100
• ¿Qué información acerca del estado actual de las cosas
se necesita para determinar la política óptima de aquí 5 120 150 130
en adelante? 34
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 4: Miles de años


Etapa = País; n = 1,2,3 de vida
Nº de adicional del
Variable: Xn = Equipos médicos asignados en la etapa o país
Equipos hombre
Estado: S = Equipos médicos aun por asignar Médicos
País
Pn ( xn ) Años de vida adicionales del hombre en la etapa 1 2 3
(país) n si decide asignar Xn equipos médicos en este
país. 0 0 0 0
3
Max Z = ∑ Pi ( xi ) No es un modelo en
1 45 20 50
i=n nuestra actual notación; 2 70 45 70
i =3
s.a ∑x
i =n
i =S debemos aproximarnos 3 90 75 80
xi ≥ 0; xi ∈ Ζ 4 105 110 100
5 120 150 130
35
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 4:

36
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 4: Miles de años


Etapa = País; n = 1,2,3 de vida
Nº de adicional del
Variable: Xn = Equipos médicos asignados en la etapa o país
Equipos hombre
Estado: S = Equipos médicos aun por asignar Médicos
País
Pn ( xn ) Años de vida adicionales del hombre en la etapa 1 2 3
(país) n si decide asignar Xn equipos médicos en este
país. 0 0 0 0
3
Max Z = ∑ Pi ( xi ) No es un modelo en
1 45 20 50
i=n nuestra actual notación; 2 70 45 70
i =3
s.a ∑x
i =n
i =S debemos aproximarnos 3 90 75 80
xi ≥ 0; xi ∈ Ζ 4 105 110 100
5 120 150 130
37
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 4:
Años de vida adicionales totales,
f n ( s , xn ) : considerando la mejor política para
las etapas restantes y que en la
etapa n, el estado es S y la decisión
tomada fue Xn.

f n*+1 ( sn − xn )
 3

 Max Z = ∑ i i 
i = n +1
P ( x ) La relación recursiva
 i =3 
f n ( sn , xn ) = Pn ( xn ) +  s.a ∑ xi = S n − xn  ƒ ( S, Xn ) = Pn ( Xn ) + ƒ *( S - Xn )
 i = n +1
 n n+1
 xi ≥ 0; xi ∈ Ζ 
 
 

38
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 4: Miles de años


de vida
ƒ ( S, Xn ) = Pn ( Xn ) + ƒ *( S - Xn ) Nº de adicional del
n n+1
Equipos hombre
s x3* f3*(s) Médicos
País
0 0 0 1 2 3
1 1 50 0 0 0 0
2 2 70
1 45 20 50
3 3 80
2 70 45 70
4 4 100
3 90 75 80
5 5 130
4 105 110 100
5 120 150 130
39
Programación Dinámica
Determinística Ingeniería Civil Industrial

Miles de años de vida adicionales


del hombre
Ejercicio 4: Nº de Equipos
Médicos 1
País
2 3

0 0 0 0
ƒ ( S, Xn ) = Pn ( Xn ) + ƒ *( S - Xn ) 1 45 20 50
n n+1 2 70 45 70
3 90 75 80
4 105 110 100
5 120 150 130

f 2 ( s, x2 ) = P2 ( x2 ) + f 3* ( s − x2 ) *
* x
f (s) 2
2
0 1 2 3 4 5
0 0+0=0 0 0
1 0+50=50 20+0=20 50 0
2 0+70=70 20+50=70 45+0=45 70 0ó1
3 0+80=80 20+70=90 45+50=95 75+0=75 95 2
4 0+100=100 20+80=100 45+70=115 75+50=125 110+0=110 125 3
5 0+130=130 20+100=120 45+80=125 75+70=145 110+50=160 150+0=150 160 4

40
Programación Dinámica
Determinística Ingeniería Civil Industrial

Miles de años de vida adicionales


del hombre
Ejercicio 4: Nº de Equipos
Médicos 1
País
2 3

0 0 0 0
ƒ ( S, Xn ) = Pn ( Xn ) + ƒ *( S - Xn ) 1 45 20 50
n n+1 2 70 45 70
3 90 75 80
4 105 110 100
5 120 150 130

x1 f1 ( s, x1 ) = P1 ( x1 ) + f 2* ( s − x1 )
f1*(s) x1*
s 0 1 2 3 4 5
5 0+160=160 45+125=170 70+95=165 90+70=160 105+50=155 120+0=120 170 1

País 1 País 2 País 3

xn 1 3 1
41
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 5: Volar con seguridad a Marte


Un equipo especial del gobierno está conduciendo la
investigación sobre cierto problema de ingeniería que debe
resolverse antes de que el hombre pueda volar con seguridad Nº de Probabilidad de Falla
a Marte. Tres equipos de investigadores están tratando Científicos Equipo de Investigación
actualmente tres procedimientos diferentes para resolver Nuevos
este problema. 1 2 3
0 0,40 0,60 0,80
Se ha hecho la estimación de que bajo las circunstancias
presentes, la probabilidad de que los equipos respectivos - 1 0,20 0,40 0,50
llamémoslos 1, 2 y 3 - no tengan éxito es 0.40, 0.60 y 0.80 2 0,15 0,20 0,30
respectivamente. Por tanto, la probabilidad actual que los
tres equipos fallen es (0.40)(0.60)(0.80)=0.192 (19.2%).
Dado que el objetivo es minimizar esta probabilidad, se ha
tomado la decisión de asignar dos científicos destacados más
entre los tres equipos para disminuirlas tanto como sea
posible.
Pn ( xn ) Probabilidad de falla del equipo n si decide asignar Xn científicos
Min Z = P1 ( x1 ) * P2 ( x2 ) * P3 ( x3 )
s.a. x1 + x2 + x3 = 2
xi ≥ 0;∈ Ζ
42
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 5: Volar con seguridad a Marte

f n ( s , xn ) Probabilidad de falla del equipo n , n+1,..3,


considerando la mejor política para las etapas
restantes y S, Xn para la etapa n.

 Min Z = ∏ 3i =n +1 Pi ( xi )  f n*+1 ( s − xn )
 3

f n ( s, xn ) = Pn ( xn ) *  s.a. ∑ xi = s − xn 
 i = n +1

 
 xi ≥ 0;∈ Ζ 

f n ( s, xn ) = Pn ( xn ) * f n*+1 ( s − xn ) f 4* (0) = 1
43
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 5: Volar con seguridad a Marte Nº de Probabilidad de Falla


Científicos Equipo de Investigación
s f 3* ( s ) x3* Nuevos 1 2 3

0 0.8 0 0 0,40 0,60 0,80

1 0.5 1 1 0,20 0,40 0,50

2 0.3 2 2 0,15 0,20 0,30

x2 f 2 ( s, x2 ) = P2 ( x2 ) * f 3* ( s − x2 )
*
s 0 1 2 2
* x
f (s) 2
0 0.6*0.8=0.48 0.48 0
1 0.6*0.5=0.3 0.4*0.8=0.32 0.3 0
2 0.6*0.3=0.18 0.4*0.5=0.2 0.2*0.8=0.16 0.16 2

44
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 5: Volar con seguridad a Marte


Nº de Probabilidad de Falla
Científicos Equipo de Investigación
Nuevos 1 2 3
0 0,40 0,60 0,80
1 0,20 0,40 0,50
2 0,15 0,20 0,30

x1 f1 ( s, x1 ) = P1 ( x1 ) * f 2* ( s − x2 )
s 0 1 2 f1* ( s ) x1*
2 0.4*0.16=0.064 0.2*0.3=0.06 0.15*0.48=0.072 0.06 1

Equipo 1 Equipo 2 Equipo 3

xn 1 0 1
45
Programación Dinámica
Determinística Ingeniería Civil Industrial

Ejercicio 6: Presupuesto Vacacional (dos variables de estado)


La familia de la señora “Susana Oria” va a salir de vacaciones desde su ciudad natal
Antofagasta. La familia desea visitar K ciudades y dispone de un total de M días para
hacerlo, con M ≥ K.
La familia desea saber cuantos días permanecer en cada ciudad de modo de maximizar
la satisfacción total de sus vacaciones sabiendo que para cada ciudad n existe una
función de satisfacción gn que es función del número de días de permanencia.
Además, la familia dispone de un presupuesto P para el total de sus vacaciones,
sabiendo que por cada día de permanencia en la ciudad n gastarán Cn.
1.- Plantee un modelo de programación dinámica para resolver la planificación de las
vacaciones de la familia.
2.- Resuelva y especifique con cuánto dinero termina la familia, suponiendo que K=3,
M=5, presupuesto P=US$ 1200, costos de estadía por ciudad c1=$ 200, c2=$ 300, c3=$
100 y que las funciones de beneficio gn(xn) vienen dadas por:

46
1.- Formulación Ingeniería Civil Industrial

n : Número de ciudad (n=1,2…K).


Variables de Estado

Xn : Cantidad de días en la ciudad n.

Sn : Dinero que le queda a la familia antes de ir a la ciudad n.

Hn : Días que le quedan antes de ir a la ciudad n.

Cn : Costo diario de permanencia en la ciudad n.

gn ( Xn ): Beneficio en la ciudad n al permanecer Xn días.


47
Función Objetivo:
Ingeniería Civil Industrial
*

Actualización del estado:


Sn +1 = S n − Cn X n

Condiciones :
S1 = P
H1 = M
fn+1 = 0
Hn+1 > 0
Sn+1 > 0
48
2.- Ingeniería Civil Industrial

C1 = US 200, C2 = US 300, C3 = US 100, K = 3, M = 5


n=3
*
(S3;H3) f3* X3*
0 1 2 3 4 5
(0-99; 0-5)
0 - - - - - 0 0
(100-1200; 0)
(100-199; 1-5)
0 1 - - - - 1 1
(200-1200; 1)
(200-299; 2-5)
0 1 3 - - - 3 2
(300-1200; 2)
(300-399; 3-5)
0 1 3 3 - - 3 2ó3
(400-1200; 3)
(400-499; 4-5)
0 1 3 3 2 - 3 2ó3
(500-1200; 4)
(500-1200; 5) 0 1 3 3 2 1 3 2ó3

49
• Observamos que Ingeniería Civil Industrial

0 Si S3 < 100 o H3 = 0

f3*(S3,H3) = 1 Si (100 < S3 < 200 y H3 > 1)


o (S3 >100 y H3 = 1)

3 De otra manera

50
Ingeniería Civil Industrial

n = 2
*
S2 H2 f 2* X 2*
0 1 2 3 4 5

200 0 0 - - - - - 0 0

400 1 0+1=1 1+0=1 - - - - 1 0ó1

600 2 0+3=3 1+1=2 4+0=4 - - - 4 2

800 3 0+3=3 1+3=4 4+1=5 - - - 5 2

1000 4 0+3=3 1+3=4 4+3=7 6+1=7 - - 7 2ó3

1200 5 0+3=3 1+3=4 4+3=7 6+3=9 8+0=8 - 9 3

51
n =1 Ingeniería Civil Industrial

*
S1 H 1 0 1 2 3 4 5 f1* X1*

1200 5 0+9=9 1+7=8 2+5=7 3+4=7 4+1=5 5+0=5 9 0

Solución (días en cada ciudad)

Ciu1 Ciu2 Ciu3


0 3 2

La familia queda con presupuesto final: 0*US 200 + 3*US 300 + 2*US 100 = US1.100

52
Programación Dinámica
Probabilística Ingeniería Civil Industrial

Estado y Resultado Indeterminado

• El estado de la etapa siguiente no queda


totalmente determinado por el estado y la
decisión en la etapa actual. En su lugar existe
una distribución de probabilidades para lo que
será el estado siguiente.
• A veces el estado queda determinado, sin
embargo el resultado no, y sólo está asociado
a una distribución de probabilidades.
53
Programación Dinámica
Probabilística Ingeniería Civil Industrial

• Estado Indeterminado Contribución


Etapa n Probabilidad de la etapa n Etapa n+1
1
ƒ*(1)
C1 n+1

P1
Decisión
Estado: Sn Xn P2 C2 2

ƒ (Sn, Xn) ƒ*(1)


n PN n+1

CN

N
ƒ*(1)
54
n+1
Programación Dinámica
Probabilística Ingeniería Civil Industrial

• Estado Indeterminado
• Ejercicio 1: Producción artículo particular
La Cía. Industrial Hir - And - Miss ha recibido un pedido para surtir un
articulo de tipo particular. Sin embargo el cliente ha especificado
requerimientos de calidad tan rigurosos que es posible que el fabricante
tenga que producir más de un articulo para obtener uno aceptable.

El fabricante estima que cada articulo de este tipo que produce será
aceptable con probabilidad de ½ y será defectuoso (sin probabilidad de
reparación), con probabilidad de ½.

Así, el número de artículos aceptables producidos en un lote de tamaño L


tendrá una distribución binomial; es decir, la probabilidad de producir cero
artículos aceptable en ese lote es de (½)L.

55
Programación Dinámica
Probabilística Ingeniería Civil Industrial

• Estado Indeterminado
• Ejercicio 1: Producción artículo particular (seguida)
Se estima que los CMg (costos marginales) de producción son de $ 100 por
artículo (incluso si es defectuoso) y los artículos en exceso no tienen valor.

Además, debe incurrirse en un costo de preparación de $ 300, siempre que


se monte el proceso de producción para este producto. El fabricante sólo
tiene tiempo para hacer no más de tres series de producción. Si no se ha
obtenido un articulo aceptable al final de la tercera serie de producción, el
costo para el fabricante por ventas perdidas y en costos de penalización sería
de $ 1600.

El objetivo es determinar la política referente al tamaño del lote para la


serie, o series de producción requeridos que minimice el costo total
esperado para el fabricante.

56
Ingeniería Civil Industrial

O bien, K(xn) = 3*min(1,xn)


57
Ingeniería Civil Industrial

Por lo tanto para s n = 1,


1
xn
  1  xn  *
f n (1, xn ) = K ( xn ) + xn +   ⋅ f n +1 (1) + 1 −    f n +1 (0)
*

2   2  
xn
1
= K ( xn ) + xn +   ⋅ f n*+1 (1)
2
Donde f 4* (1) es igual a 16, el costo terminal por no haber obtenido artículos aceptables
De esta manera, la relación recursiva para los cálculos de programación dinámica es

  1 
xn

f n (1) = mín  K ( xn ) + xn +   ⋅ f n +1 (1) 
* *
xn = 0,1,...
 2 
para n = 1, 2,3.

58
Para n=3
Ingeniería Civil Industrial

x3
1
x3 f 3 (1, x3 ) = K ( x3 ) + x3 + 16  
2
s3 0 1 2 3 4 5 f 3* ( s3 ) x3*

0 0 - - - - - 0 0

1 16 12 9 8 8 8,5 8 3o4

Para n=2

x2
1
x2 f 2 (1, x2 ) = K ( x2 ) + x2 +   f 3* (1)
2
s2 0 1 2 3 4 f 2* ( s2 ) x2*

0 0 0 0

1 8 8 7 7 7,5 7 2o3

59
Para n=1
Ingeniería Civil Industrial

x1
x1 1
f1 (1, x1 ) = K ( x1 ) + x1 +   f 2* (1)
2
s1 0 1 2 3 4 f1* ( s1 ) x1*

1 7 7,5 6,75 6,875 7,4375 6,75 2

Entonces, la política óptima es producir dos artículos en la primera


corrida de producción; si ninguno es aceptable, deberán producirse
dos o tres artículos en la segunda corrida; si ninguno es aceptable,
tendrán que producirse tres o cuatro artículos en la tercera corrida. El
costo total esperado si se sigue esta política es de $675.

60
Programación Dinámica
Probabilística Ingeniería Civil Industrial

• Estado Indeterminado
• Ejercicio 2: Juego popular en las Vegas
Un emprendedor estadístico joven ha desarrollado un sistema para ganar en
un popular juego de las vegas. Sus colegas no creen que esto sea posible, de
modo que hacen una gran apuesta con el que, empezando con tres fichas, no
tendrá cinco fichas después de tres jugadas. Cada jugada comprende la
apuesta de cualquier número de fichas.
El estadístico cree que su sistema le dará una probabilidad de 2/3 de ganar
cada jugada.
Suponiendo que el estadístico está en lo correcto, determínese su política
optima de cuantas fichas apostar ( de apostar alguna ) en cada una de las
tres jugadas. La decisión de cada jugada debe tomar en cuenta los resultados
de las jugadas anteriores.
El objetivo es maximizar la probabilidad de ganar las apuestas a sus colegas.

61
Formulación: Ingeniería Civil Industrial

Etapas: n-ésima jugada del juego (n=1,2,3)


V.E S n : Fichas que se tienen al inicio de la etapa n.
V.D X n : Cantidad de fichas que se apuestan en la etapa n.

f n ( X n , S n ) = Probabilidad de terminar las tres jugadas con


cinco fichas o más.
1 * 2 *
fn ( X n , S n ) = f n +1 ( S n − X n ) + f n +1 ( S n + X n )
3 3

62
• Procedimiento de solución: Ingeniería Civil Industrial

n=3
S3 f 3* X 3*
0 0 −
1 0 −
2 0 −
3 2/3 2 o más
4 2/3 1 o más
>=5 1 0

Por la relación recursiva se conducen todos los resultados.

63
n=2 Ingeniería Civil Industrial

X 2 f2
S2 f 2* X *
2
0 1 2 3 4
0 0 0 −
1 0 0 0 −
2 04 /9 4 /9 4/9 1o2
3 2 /3 4 /9 2 /3 2 /3 2/3 0, 2 o 3
4 2 /3 8/9 2 /3 2 /3 2 /3 8/9 1
>=5 1 1 0

64
n=1 Ingeniería Civil Industrial

X1 f1
S1 f 1* X 1*
0 1 2 3
3 2/3 20 / 27 2 / 3 2/3 20 / 27 1
Resultado del problema:
  si gana , X 3 =0
*

 si gana, X 2 = 1 
*

 si pierde, X 3 = 2 o 3
*


X 1* = 1   
 2 o 3 ( para X *
= 1)
 si gana, X 3 = 
* 2

 si pierde, X *
2 = 1 o 2  1, 2,3 o 4 ( para X 2 = 2)
*

 
  si pierde, la apuesta esta perdida

Esta política óptima da al joven una probabilidad de 20/27


de ganar la apuesta a sus colegas. 65
Programación Dinámica
Probabilística Ingeniería Civil Industrial

• Costos inciertos, estado conocido etapa siguiente


• Ejercicio 3: Safeco
La cadena de supermercados Safeco compra
a una lechería local, a un precio de 1 Demanda diaria
dólar/galón, 6 galones de leche. Tiendas Galones Probabilidad
Cada galón se vende en las tres tiendas de la 1 0,60
cadena a 2 dólares/galón. La lechería
recoge de los supermercados la leche Tienda 2 0
sobrante a 50¢ de dólar/galón al término del 1
día. 3 0,40
Desafortunadamente para Safeco, es 1 0,50
incierta la demanda en cada una de las tres Tienda
tiendas. Los datos acumulados indican que 2 0,10
la demanda diaria en cada tienda es como 2
se muestra en la tabla 1. 3 0,40

Safeco desea asignar los 6 galones de leche 1 0,40


a las tres tiendas para maximizar la ganancia Tienda 2 0,30
diaria (ingresos menos costos) que da la 3
leche. Mediante la programación dinámica 3 0,30
determine cómo debe asignar Safeco los 6
galones de leche entre sus tiendas.
66
Formulación
Ingeniería Civil Industrial

67
Formulación
Ingeniería Civil Industrial

‫ݎ‬ଷ 0 = 0 ‫ݎ‬ଶ 0 = 0 ‫ݎ‬ଵ 0 = 0


‫ݎ‬ଷ 1 = $2 ‫ݎ‬ଶ 1 = $2 ‫ݎ‬ଵ 1 = $2
‫ݎ‬ଷ 2 = $3.4 ‫ݎ‬ଶ 2 = $3.25 ‫ݎ‬ଵ 2 = $3.1
‫ݎ‬ଷ 3 = $4.35 ‫ݎ‬ଶ 3 = $4.35 ‫ݎ‬ଵ 3 =$4.2

68
Procedimiento de solución Ingeniería Civil Industrial

Etapa 3: S3 X *3 f*3
0 0 0
1 1 2
2 2 3.4
>=3 3 4.35

S2\x2 0 1 2 3 x* 2 f*2
Etapa 2:
0 0 - - - 0 0
1 2 2 - - 0ó1 2
2 3.4 4 3.25 - 1 4
3 4.35 5.4 5.25 4.35 1 5.4
4 4.35 6.35 6.65 6.35 2 6.65
5 4.35 6.35 7.6 7.75 3 7.75
6 4.35 6.35 7.6 8.7 3 8.7
69
Procedimiento de solución Ingeniería Civil Industrial

Etapa 1:
S1\x1 0 1 2 3 x* 1 f*1
6 8.7 9.75 9.75 9.45 1o2 9.75

Por lo tanto, tenemos 2 combinaciones optimas con las cuales podemos maximizar
nuestras ganancias, las cuales se resumen a continuación,

Tienda 1 Tienda 2 Tienda 3


Caso 1 1 3 2

Caso 2 2 2 2

70

También podría gustarte