Está en la página 1de 20

Sesión 3

UNIDAD 2. PROGRAMACIÓN DINÁMICA DETERMINÍSTICA

Docente: Vidal Armas Torres


26 de Julio de 2023
2.1. Aplicaciones de la programación
dinámica determinística
2.4. Aplicaciones de Programación
dinámica determinística
Programación dinámica determinística
Formulación y solución de problemas

La programación dinámica no cuenta con una


formulación matemática estándar, sino que se trata de un
enfoque de tipo general para la solución de problemas, y
las ecuaciones específicas que se usan se deben
desarrollar para que representen cada situación individual.
Comúnmente resuelve el problema por etapas, en donde
cada etapa interviene exactamente una variable de
optimización (u optimizadora)
Programación dinámica determinística
Formulación y solución de problemas
La teoría unificadora fundamental de la programación dinámica
es el Principio de Optimalidad, que nos indica básicamente
como se puede resolver un problema adecuadamente
descompuesto en etapas utilizando cálculos recursivos.
Una política óptima tiene la propiedad de que,
independientemente de las decisiones tomadas para llegar a
un estado particular, en una etapa particular, las decisiones
restantes deben constituir una política óptima para abandonar
ese estado
Programación dinámica determinística
Para la resolución de problemas

Un grado de creatividad


Un buen conocimiento de la estructura general de los
problemas de programación dinámica para reconocer
cuando un problema se puede resolver por medio de
estos procedimientos y como esto se puede llevar a
cabo.
Programación dinámica determinística
Características

El problema se puede dividir en etapas que


requieren una política de decisión en cada una.
Cada etapa tiene cierto número de estados
asociados a ella.
Programación dinámica determinística
Características

El efecto de la política de decisión en cada etapa es


transformar el estado actual en un estado asociado con
la siguiente etapa.
El procedimiento de solución esta diseñado para
encontrar una política óptima para el problema
completo.
Programación dinámica determinística

En los problemas de


programación dinámica
determinística no existe
incertidumbre a la hora de
calcular las soluciones
óptimas, etapa a etapa.
Podemos describirla a
partir de la siguiente figura:
Programación dinámica determinística

Si nos hallamos en la etapa i,


estamos en algún estado si . Al
tomar la decisión xi pasamos a
un estado si+1 en la etapa i +
1. La contribución óptima a la
función objetivo a partir de ese
punto la calculamos como f ∗
i+1(si+1), y sabemos que la
variable de decisión xi también
contribuye a la función objetivo.
Programación dinámica determinística

Al combinar estos dos


datos de la forma correcta
se obtiene fi(si , xi), la
contribución de la etapa i en
adelante. Por tanto, una vez
hallados x ∗ i y f ∗ i (si)
para cada valor posible de si
, el procedimiento se mueve
hacia atrás una etapa
Programación dinámica determinística
Clasificación de problemas
Función objetivo: El objetivo puede ser tanto minimizar
como maximizar la suma de las contribuciones en cada
etapa, o también minimizar o maximizar el producto de los
términos, etc.
Estados: Estos pueden ser discretos o continuos. También
se puede dar que necesitemos un vector de estado.
Naturaleza de las variables de decisión: De la misma forma
que los estados, las variables de decisión pueden ser
discretas o continuas.
2.2. Revisión del problema de la ruta
más corta, para ejemplificar la
recursividad
Revisión del problema de la ruta más corta
¿Qué es?
El Problema del Camino más Corto (o ruta más barata)
consiste en encontrar una ruta o camino óptimo entre un
nodo fuente y un nodo destino, los cuales están enlazados
a través de una red con arcos que poseen un cierto
atributo, el cual puede ser costo, distancia, tiempo, etc.
Revisión del problema de la ruta más corta
Programación Entera
La Programación Entera permite abordar de forma
eficiente este tipo de problemas, en especial cuando la
cantidad de nodos y rutas posibles resulta ser un número
significativo. Utilizar en estos casos un enfoque intuitivo de
resolución es tedioso y de no ser exhaustivo no garantiza la
identificación de la mejor alternativa o ruta.
Revisión del problema de la ruta más corta
Ejemplo
Consideremos el siguiente
diagrama donde los números
asignados a cada uno de los
arcos representan la
distancia en kilómetros de un
nodo a otro. Se desea
encontrar la ruta con la
distancia mínima para ir del
nodo 1 al nodo 8.
Revisión del problema de la ruta más corta
Ejemplo
El tamaño reducido de la
red anterior permite
encontrar el camino más
corto simplemente
enumerando las distintas
alternativas que
comenzando en el nodo 1
permita llegar al nodo 8.
Revisión del problema de la ruta más corta
Ejemplo
De esta forma las rutas posibles son:
 Ruta 1-2-5-7-8: 4+8+17+9=38[km]
 Ruta 1-3-4-7-8: 3+12+20+9=44[km]
 Ruta 1-3-4-6-8: 3+12+2+22=39[km]
 Ruta 1-3-4-8: 3+12+15=30[km]
 Ruta 1-3-6-8: 3+4+22=29[km]
La ruta o camino más corto esta
dada por la secuencia 1-3-6-8 con
una distancia total de 29[km].
2.3. Recursividad hacia adelante y
recursividad hacia atrás
Recursividad hacia adelante y recursividad hacia
atrás
Existen dos formas de plantear la fórmula de recursividad en
los problemas de programación dinámica:
Recursividad de Retroceso: el problema se resuelva
partiendo de la última etapa hacia la primera.
Recursividad de Avance: el problema se resuelve
partiendo de la primera etapa hacia la última.
Recursividad hacia adelante y recursividad hacia
atrás
Las formulaciones de avance y retroceso son en realidad
equivalentes en términos de cálculo. Sin embargo, hay
situaciones donde habría alguna diferencia, en la eficiencia del
cálculo, según la formulación que se utilice.
Esto sucede en particular en problemas donde intervine la toma
de decisiones conforme transcurre el tiempo. En esto caso las
etapas se designan con base en el estricto orden cronológico de
los periodos que ellas representan y la eficiencia de los cálculos
dependerá de si se utiliza formulación de avance o retroceso.

También podría gustarte