You are on page 1of 25

PROGRAMACIÓN DINÁMICA

Cintya Elizabeth Mendoza Alcántara


PROGRAMACIÓN DINÁMICA
 ˜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 tomar una serie de decisiones
interrelacionadas.
 ˜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
las ecuaciones se derivan de las condiciones individuales
de los mismos.
EL PROBLEMA DE LA DILIGENCIA (PD)

 Un cazafortunas 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,
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.

El costo de la póliza estándar (cij ) se muestra en la tabla


de la siguiente página.
EL PROBLEMA DE LA DILIGENCIA (PD)
EL PROBLEMA DE LA DILIGENCIA (PD)

 ¿Cual es la ruta que minimiza el costo total de la


póliza de seguro?
Ouch !
EL PROBLEMA DE LA DILIGENCIA (PD)

 Algunas posibles soluciones:


1. Enumeración exhaustiva: Enumerar todas las rutas
posibles, calcular su costo y elegir la 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. Un pequeño sacrificio en una
etapa puede permitir mayores ahorros más adelante.
EL PROBLEMA DE LA DILIGENCIA
 Utilizando la Programación dinámica.

 Estrategia de solución: Un problema complejo es


desagregado en problemas simples que se resuelven
etapa por etapa.

 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.
EL PROBLEMA DE LA DILIGENCIA
(PD.)

 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),


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.
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA (PD.)
EL PROBLEMA DE LA DILIGENCIA
(PD.)
EL PROBLEMA DE LA DILIGENCIA (PD.)
PROGRAMACIÓN DINÁMICA
 Características de la P.D
1. El problema se puede dividir por etapas, que requieren
una política de decisión en cada una de ellas.

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 encontrar el
sistema en cada etapa del problema).
PROGRAMACIÓN DINÁMICA
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.

4. El procedimiento pretende hallar la política óptima


para el problema completo. Esto quiere decir, la
política a emplear desde cualquier posible estado del
problema.
PROGRAMACIÓN DINÁMICA
5. Dado el estado actual, la política óptima desde este
estado es 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í) PRINCIPIO DE OPTIMALIDAD EN LA P.D,
(Richard Bellman, 1957)

6. El procedimiento de la solución termina cuando se


obtiene la política óptima de la última etapa (por lo
general la solución en esta etapa es trivial)
PROGRAMACIÓN DINÁMICA
 7. Siempre se dispone de una relación recursiva
(esto es lo que permite trabajar las decisiones
interrelacionadas).
PROGRAMACIÓN DINÁMICA
8.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
PROGRAMACIÓN DINÁMICA

You might also like