Está en la página 1de 5

1

19-1
Clase # 19
Programacin dinmica
19-2
La programacin dinmica se utiliza tanto en
problemas lineales como no lineales.
La programacin dinmica es til para resolver
un problema donde se deben tomar una serie de
decisiones interrelacionadas.
A diferencia de la P.L, la programacin dinmica
no tiene formulacin matemtica estndar. Se trata
de un enfoque de tipo general para la solucin de
problemas, y las ecuaciones se derivan de las
condiciones individuales de los mismos.
19-3
El problema de la diligencia
Un cazafortunas desea ir de Missouri a California
en una diligencia, y quiere viajar de la forma ms
segura posible. Tiene los puntos de salida y destino
conocidos, pero tiene mltiples opciones para viajar
a travs del territorio.
Se entera de la posibilidad de adquirir seguro de
vida como pasajero de la diligencia.
El costo de la pliza estndar (c
ij
) se muestra en la
tabla de la siguiente pgina.
19-4
B
C
D
E
F
G
H
I
J
A
7
3
4
4
2
1
6
4
5
E F G
B
C
D
1
6
3
4
3
3
H I
E
F
G
2 4 3
B C D
A
3
4
J
H
I
Diagrama.
19-5
Cual es la ruta
que minimiza el
costo total de la
pliza de seguro?
19-6
1. Enumeracin exhaustiva: Enumerar todas
las rutas posibles, calcular su costo y elegir
la de menor valor. En total son 18
2. Elegir la ruta ms barata en cada etapa.
Esta solucin no conduce al ptimo global.
Un pequeo sacrificio en una etapa puede
permitir mayores ahorros ms adelante.
Algunas alternativas de solucin.
2
19-7
3. Programacin dinmica.
Estrategia de solucin: Un problema
complejo es desagregado en problemas
simples que se resuelven etapa por etapa.
En el caso de la diligencia un problema
simple sera pensar qu pasara si al viajero
slo le faltara una jornada de viaje.
19-8
Por P.D la solucin sera entonces ir desde el
estado actual (cualquiera que sea) y llegar a
su destino final (estado J) al costo c
ij
Se hace lo mismo para cada jornada (etapa),
ensanchando el problema. As encontramos
la solucin ptima del lugar al que debe
dirigirse teniendo en cuenta la informacin
de la iteracin anterior.
Veamos la
formulacin
19-9
Sea X
n
( n = 1,2,3,4 ) las variables que
representan el destino inmediato en la etapa
n.
Luego la ruta seleccionada ser:
Formulacin.
X
1
A X
2
X
3
X
4
Donde X
4
= J
sigue
19-10
Sea f
n
(S, X
n
) el costo total de la mejor
poltica global para las etapas restantes, dado
que el agente se encuentra en el estado S,
listo para iniciar la etapa n y se dirige a X
n
como destino inmediato.
Dados S y n , sea X
n
*
el valor de X
n
(no
necesariamente nico), que minimiza
f
n
(S , X
n
) , y sea f
n
*
(S) el valor mnimo
correspondiente de f
n
(S, X
n
) entonces:
sigue
19-11
sigue
f
n
(S, X
n
) =
Costo
inmediato
(etapa n)
Mnimo costo
futuro (etapa
n+1 en adelante)
+
= c
s, xn
+f
n+1
*
(X
n
)
Costos por ir
de la ciudad i
al destino j
Costo
ptimo
acumulado
f
n
*
(S) = Min
Xn
f
n
(S, X
n
) = f
n
(S, X
n
*
)
19-12
Como el destino final (estado J) se alcanza al
terminar la etapa 4, entonces
f
5
*
(J ) =0
El objetivo es hallar f
1
*
(A) y su ruta correspondiente.
Cuando el cazafortunas tiene slo una etapa por
recorrer (n=4) , su ruta de ah en adelante, estar
determinada por el estado actual (H o I) y su destino
final X
4
= J
La ruta ser: S J donde S= H o I
Etapa n=4
Procedimiento de solucin hacia atrs
3
19-13
f
4
(H) =c
H , J
=3
f
4
(I) =c
I , J
=4
=c
S , J
S
H
I
f
4
*
(S)
3
4
X
4
*
J
J
El cazafortunas tiene 2 etapas por recorrer (n=3).
Suponga que sale de E.
Etapa n=3
E
H
I
C
E, H
=1
C
E, I
=4
+f
4
*
(H) =f
3
(E)=c
E ,H
+f
4
*
(H) =4
+f
4
*
(I ) =f
3
(E)=c
E ,I
+f
4
*
(I ) =8
Luego f
4
*
(S) =c
S , J
+ f
5
*
(J )
19-14
Luego f
3
*
(E) =4 y X
3
*
=H
En general para la etapa 3
se tiene:
S
E
F
f
3
(S, X
3
)= c
S,X3
+ f
4
*
( X
3
)
4
9
f
3
*
(S)
8
7
X
3
G
X
3
*
6 7
H I
4
7
6
H
I
H
19-15
Etapa n=2
En la segunda etapa, el cazafortunas tiene 3
jornadas por recorrer (n=2). Suponga que sale de C
+f
3
*
(E) =f
2
(C)=c
C,E
+f
3
*
(E) =7
+f
3
*
(F) =f
2
(C)=c
C,F
+f
3
*
(F) =9
+f
3
*
(G) =f
2
(C)=c
C,G
+f
3
*
(G) =10
C
E
F
G
c
C
, E
=
3
c
C, F
=2
c

C
, G
=
4
19-16
Luego f
2
*
(C) =7 y X
2
*
=E
En general para la etapa 2
se tiene:
S
B
C
f
2
(S, X
2
)= c
S,X2
+ f
3
*
( X
2
)
11
7
f
2
*
(S)
11
9
X
2
D
X
2
*
8 8
E F
11
7
8
E o F
E
E o F
12
10
11
G
19-17
Etapa n=1
En la primera etapa, el cazafortunas tiene todas las
jornadas por recorrer (n=1). Necesariamente debe
salir de A
+f
2
*
(B) =f
1
(A)=c
A ,B
+f
2
*
(B) =13
+f
2
*
(C) =f
1
(A)=c
A ,C
+f
2
*
(C) =11
+f
2
*
(D) =f
1
(A)=c
A ,D
+f
2
*
(D) =11
A
B
C
D
c
A
, B
=
2
c
A, C
=4
c

A
, D
=
3
19-18
Luego f
1
*
(A) =11 y X
1
*
=C o D
Veamos :
S
A
f
1
(S, X
1
)= c
S,X1
+ f
2
*
( X
1
)
13
f
1
*
(S)
11
X
1
X
1
*
B C
11 C o D
11
D
Veamos la solucin del
problema grficamente:
4
19-19
B
C
D
E
F
G
H
I
J
A
Solucin
4
3
3
4
1
7
4
3
3
1
3
4
Podemos apreciar que partiendo de
A existen 3 rutas ptimas:
19-20
Caractersticas de la P.D
1. El problema se puede dividir por etapas, que
requieren una poltica de decisin en cada una
de ellas.
2. Cada etapa tiene un cierto nmero de estados
asociados a su inicio. (Estados son las diferentes
condiciones posibles en las que se puede
encontrar el sistema en cada etapa del
problema).
19-21
3. El efecto de la poltica de decisin en cada
etapa, es transformar el estado actual en un
estado asociado con el INICIO de la siguiente
etapa.
4. El procedimiento pretende hallar la poltica
ptima para el problema completo. Esto quiere
decir, la poltica a emplear desde cualquier
posible estado del problema.
19-22
5. Dado el estado actual, la poltica ptima
desde este estado es independiente de las
polticas adoptadas en las etapas anteriores.
(la solucin depende nicamente del estado
actual y no de cmo se lleg all) PRINCIPIO
DE OPTIMALIDAD EN LA P.D,
(Richard Bellman, 1957)
6. El procedimiento de la solucin termina
cuando se obtiene la poltica ptima de la
ltima etapa (por lo general la solucin en
esta etapa es trivial)
19-23
7. Siempre se dispone de una relacin
recursiva (esto es lo que permite trabajar las
decisiones interrelacionadas).
La relacin recursiva ser:
f
n
*
(S
n
)= Max
Xn
f
n
(S
n
, X
n
)
o tambin
f
n
*
(S
n
)=Min
Xn
f
n
(S
n
, X
n
)
S
n
: Estado actual para la
etapa n.
X
n
: variable de decisin
para la etapa n
N: nmero de etapas.
n: etiqueta para la etapa
actual (1,2,...,N)
19-24
8.Cuando se tiene una relacin recursiva como
la de la funcin, el procedimiento de solucin
hacia atrs inicia en la ltima etapa y se
mueve hacia la primera, etapa por etapa
S
f
n
*
(S
n
, X
n
)= c
S
,
Xn
+ f
n+1
*
( X
n
)
f
n
*
(S)
X
n
X
n
*
X
n
*
: Valor ptimo de X
n
dadoS
n
5
19-25
Algoritmo de P.D hacia atrs
Para cada probable valor de la
variable de estado al inicio de la
etapa, determinar el mejor
estado final.
19-26
Algoritmo de P.D hacia adelante
Para cada probable valor de la
variable de estado al final de la
etapa, determinar el mejor
estado inicial.

También podría gustarte