PROGRAMACIÓN DINÁMICAPROGRAMACIÓN DINÁMICA
La programación dinámica se utiliza tanto en problemas lineales como no lineales.La programación dinámica se utiliza tanto en problemas lineales como no lineales.
La programación dinámica es útil para resolver un problema donde se deben La programación dinámica es útil para resolver un problema donde se deben
tomar una serie de decisiones interrelacionadas.tomar una serie de decisiones interrelacionadas.
A diferencia de la P.L, la programación dinámica no tiene formulación matemática A diferencia de la P.L, la programación dinámica no tiene formulación matemática
estándar. Se trata de un enfoque de tipo general para la solución de problemas, y estándar. Se trata de un enfoque de tipo general para la solución de problemas, y
las ecuaciones se derivan de las condiciones individuales de los mismos.las ecuaciones se derivan de las condiciones individuales de los mismos.
El problema de la diligenciaEl problema de la diligencia
Un caza fortunas desea ir de Missouri a California en una diligencia, y quiere viajar Un caza fortunas desea ir de Missouri a California en una diligencia, y quiere viajar
de la forma más segura posible. Tiene los puntos de salida y destino conocidos, de la forma más segura posible. Tiene los puntos de salida y destino conocidos,
pero tiene múltiples opciones para viajar a través del territorio. Se entera de la pero tiene múltiples opciones para viajar a través del territorio. Se entera de la
posibilidad de adquirir seguro de vida como pasajero de la diligencia.posibilidad de adquirir seguro de vida como pasajero de la diligencia.
El costo de la póliza estándar (c ij ) se muestra en la tabla siguiente El costo de la póliza estándar (c ij ) se muestra en la tabla siguiente ..
PROGRAMACIÓN DINÁMICAPROGRAMACIÓN DINÁMICA
..Algunas alternativas de solución Algunas alternativas de solución
1.1.Enumeración exhaustiva: Enumerar todas las rutas posibles, calcular su costo y elegir Enumeración exhaustiva: Enumerar todas las rutas posibles, calcular su costo y elegir
la de menor valor. En total son 18la de menor valor. En total son 18
2. Elegir la ruta más barata en cada etapa. Esta solución no conduce al óptimo global.2. Elegir la ruta más barata en cada etapa. Esta solución no conduce al óptimo global.
Un pequeño sacrificio en una etapa puede permitir mayores ahorros más adelante.Un pequeño sacrificio en una etapa puede permitir mayores ahorros más adelante.
3. Programación dinámica.3. Programación dinámica.
Estrategia de solución: Un problema complejo es desagregado en problemas simples Estrategia de solución: Un problema complejo es desagregado en problemas simples
que se resuelven etapa por etapa.que se resuelven etapa por etapa.
En el caso de la diligencia un problema simple sería pensar qué pasaría si al viajero En el caso de la diligencia un problema simple sería pensar qué pasaría si al viajero
sólo le faltara una jornada de viaje.sólo le faltara una jornada de viaje.
Por P.D la solución sería entonces ir desde el estado actual (cualquiera que sea) y llegar a su destino Por P.D la solución sería entonces ir desde el estado actual (cualquiera que sea) y llegar a su destino final (estado J) al costo cij . Se hace lo mismo para cada jornada (etapa),final (estado J) al costo cij . Se hace lo mismo para cada jornada (etapa),
ensanchando el problema. Así encontramos la solución óptima del lugar al que debe dirigirse teniendo ensanchando el problema. Así encontramos la solución óptima del lugar al que debe dirigirse teniendo en cuenta la información de la iteración anterior.en cuenta la información de la iteración anterior.
Sea Sea X n ( n = 1,2,3,4 X n ( n = 1,2,3,4 )las variables que representan el destino inmediato en la etapa n.)las variables que representan el destino inmediato en la etapa n. Luego la ruta seleccionada será:Luego la ruta seleccionada será:
A A X 1X 1 X 2 X 2 X 3 X 3 X 4 X 4
Donde Donde X 4 X 4 = J= J
Sea Sea f n (f n (S, S, X n ) X n ) el costo total de la mejor política global para las etapas restantes, dado que el agente el costo total de la mejor política 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 se encuentra en el estado S, listo para iniciar la etapa n y se dirige a X n X n como destino inmediato.como destino inmediato.
Dados S y n , sea Dados S y n , sea X n * X n * el valor de el valor de X n X n (no necesariamente único), que minimiza (no necesariamente único), que minimiza f n (S f n (S , , X n ) X n ) , y sea , y sea f n f n * (S) * (S) el valor mínimo correspondiente de el valor mínimo correspondiente de f n (f n (S, S, X n ) X n ) entonces:entonces:
Procedimiento de solución hacia atrás
Etapa n=4
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 sólo 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
Veamos la solución del Veamos la solución del problema gráficamente:problema gráficamente:
Características de la P.DCaracterísticas de la P.D
1. El problema se puede dividir por etapas, que requieren una política de 1. El problema se puede dividir por etapas, que requieren una política de
decisión en cada una de ellas.decisión en cada una de ellas.
2. Cada etapa tiene un cierto número de estados asociados a su inicio. 2. Cada etapa tiene un cierto número de estados asociados a su inicio.
(Estados son las diferentes condiciones posibles en las que se puede (Estados son las diferentes condiciones posibles en las que se puede
encontrar el sistema en cada etapa del problema).encontrar el sistema en cada etapa del problema).
3. El efecto de la política de decisión en cada etapa, es transformar el 3. El efecto de la política de decisión en cada etapa, es transformar el
estado actual en un estado asociado con el INICIO de la siguiente etapa.estado actual en un estado asociado con el INICIO de la siguiente etapa.
4. El procedimiento pretende hallar la política óptima para el problema 4. El procedimiento pretende hallar la política óptima para el problema
completo. Esto quiere decir, la política a emplear desde cualquier posible completo. Esto quiere decir, la política a emplear desde cualquier posible
estado del problema.estado del problema.
5. Dado el estado actual, la política óptima desde este estado es 5. Dado el estado actual, la política óptima desde este estado es
independiente de las políticas adoptadas en las etapas anteriores. (la independiente de las políticas adoptadas en las etapas anteriores. (la
solución depende únicamente del estado actual y no de cómo se llegó allí) solución depende únicamente del estado actual y no de cómo se llegó allí)
PRINCIPIO DE OPTIMALIDAD EN LA P.D,PRINCIPIO DE OPTIMALIDAD EN LA P.D,
(Richard Bellman, 1957)(Richard Bellman, 1957)
6. El procedimiento de la solución termina cuando se obtiene la política 6. El procedimiento de la solución termina cuando se obtiene la política
óptima de laóptima de la
última etapa (por lo general la solución en esta etapa es trivial)última etapa (por lo general la solución en esta etapa es trivial)
7. Siempre se dispone de una relación recursiva (esto es lo que permite 7. Siempre se dispone de una relación recursiva (esto es lo que permite
trabajar lastrabajar las
decisiones interrelacionadas).decisiones interrelacionadas). La relación recursiva será: La relación recursiva será:
N: número de etapas.n: etiqueta para la etapaactual (1,2,...,N)S n : Estado actual para laetapa n.X n : variable de decisiónpara la etapa n8.Cuando se tiene una relación recursiva como la de la función, el procedimiento de solución “hacia atrás” inicia en la última etapa y se mueve hacia la primera, etapa por etapa
X n* : Valor óptimo de X n dadoS nX n* : Valor óptimo de X n dadoS n
ALGORITMO DE P.D HACIA ALGORITMO DE P.D HACIA ATRÁSATRÁS
Para cada probable valor de laPara cada probable valor de la variable de estado al inicio de lavariable de estado al inicio de la etapa, determinar el mejoretapa, determinar el mejor estado final.estado final.
ALGORITMO DE P.D HACIA ALGORITMO DE P.D HACIA DELANTEDELANTE
Para cada probable valor de laPara cada probable valor de la variable de estado al final de lavariable de estado al final de la etapa, determinar el mejoretapa, determinar el mejor estado inicial.estado inicial.
Top Related