INTRODUCCION
ELEMENTOS DE UN PROBLEMA DE
PROGRAMACION DINAMICA
EJEMPLO PROTOTIPO DE
PROGRAMACION DINAMICA
Logro de sesin:
Al trmino de la sesin el estudiante entiende la naturaleza de la programacin dinmica y el
uso del clculo recursivo para minimizar el proceso de clculo al considerar solamente los
estados y las decisiones necesarias en cada etapa en las que se divide el problema,
alcanzando la solucin ptima.
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
Temas
Una forma razonable y comnmente empleada de resolver un
problema es definir o caracterizar su solucin en trminos de las
Programacin Dinmica soluciones de subproblemas del mismo.
Ver Diagrama
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
en el nodo A, encontrar la
2
H 3
3
trayectoria ms econmica 6
4 2
para llegar al nodo J A C F J
considerando que los valores 4
3
4
que se encuentran en las 3 I
ramas representan los costos 4 3
de trasladarse de un nodo a 1 3
otro. D 5 G
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
Temas
Una forma razonable y comnmente empleada de resolver un
problema es definir o caracterizar su solucin en trminos de las
Programacin Dinmica soluciones de subproblemas del mismo.
Ver Diagrama
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
Programacin Dinmica
En este tipo de programacin dinmica, el estado de la siguiente
Programacin Dinmica etapa est determinado por completo por el estado y la poltica de
Determinstica decisin de la etapa actual. El caso probabilstico es en el cual existe
una distribucin de probabilidad del valor posible del siguiente
Naturaleza Recursiva estado.
de la PD
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
Temas
Los clculos de programacin dinmica se hacen en forma recursiva,
ya que la solucin ptima de un subproblema se usa como dato para
Programacin Dinmica el siguiente subproblema. Para cuando se resuelve el ltimo
subproblema se obtiene la solucin ptima de todo el problema.
Programacin Dinmica
Determinstica Al pasar de un subproblema al siguiente se debe mantener la
factibilidad de esas restricciones comunes.
Naturaleza Recursiva
de la PD Se usa la recursin en avance, cuando los clculos se hacen de la
primera etapa a la ltima etapa; y se usa la recursin en reversa,
cuando los clculos se hacen de la ltima etapa a la primera etapa.
Con las recursiones en avance y en reversa se obtiene la misma
solucin. Se usa la recursin en reversa porque, en general, es ms
eficiente desde el punto de vista computacional.
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
ELEMENTOS DE UN PROBLEMA DE
PROGRAMACION DINAMICA
EJEMPLO PROTOTIPO DE
PROGRAMACION DINAMICA
PROGRAMACION DINAMICA DETERMINISTICA
Elemento
Etapa (n)
Elemento
Etapa (n)
s1 s2 s3 s4
Variable de decisin (xn)
Elemento
Etapa (n)
s1 x1 s2 x2 s3 x3 s4 x4
Variable de decisin (xn)
Elemento
Etapa (n)
s1 x1 s2 x2 s3 x3 s4 x4
Variable de decisin (xn)
f4(s4 , x4)
Al tomar la decisin xn se mueve a algn estado sn+1 en la etapa n+1, etapa en la que se
habra contribuido con fn*+1(sn+1), que incluye las contribuciones acumuladas de las
etapas siguientes; al considerar esta cantidad con la contribucin actual (llammosle
csn,xn) a la funcin objetivo se tiene a fn(sn , xn) como la contribucin de la etapa n en
adelante.
Dados n y sn para un problema de minimizacin, y sea xn* el mejor valor entre todos los
valores que pueda adoptar xn al calcular su propia fn(sn , xn), y sea fn*(sn) el valor
mnimo correspondiente a todos los fn(sn, xn). Entonces:
INTRODUCCION
ELEMENTOS DE UN PROBLEMA DE
PROGRAMACION DINAMICA
EJEMPLO PROTOTIPO DE
PROGRAMACION DINAMICA
PROGRAMACION DINAMICA DETERMINISTICA
EJEMPLO DE APLICACION
Problema
Tomando en cuenta el siguiente sistema de caminos, si se
encuentra inicialmente en el nodo A, encontrar la trayectoria ms
Enunciado econmica para llegar al nodo J considerando que los valores que
se encuentran en las ramas representan los costos de trasladarse
de un nodo a otro.
Anlisis
Etapa 4 7
B E
4 1
6 4
2 H
Etapa 3 3
3
6
4 2
A C F J
Etapa 2 4
3
4
3 I
4 3
1 3
Etapa 1 D 5 G
Interpretacin
PROGRAMACION DINAMICA DETERMINISTICA
EJEMPLO DE APLICACION
EJEMPLO DE APLICACION
EJEMPLO DE APLICACION
Problema 7
B E
4 1
Enunciado 6 4
2 H
3
3
6
4 2
Anlisis A C F J
3
4
4
3 I
Etapa 4 4 3
1 3
D 5 G
Etapa 3
EJEMPLO DE APLICACION
Problema 7
B E
4 1
Enunciado 6 4
2 H
3
3
6
4 2
Anlisis A C F J
3
4
4
3 I
Etapa 4 4 3
1 3
D 5 G
Etapa 3
EJEMPLO DE APLICACION
Problema 7
B E
4 1
Enunciado 6 4
2 H
3
3
6
4 2
Anlisis A C F J
3
4
4
3 I
Etapa 4 4 3
1 3
D 5 G
Etapa 3
Etapa 2
f1(s1 ,x1)= cs1x1 + f2*(x1) Solucin ptima
Etapa 1
s1 x1 =B x1 =C x1 =D f1*(s1) x1 *
A 2+11=13 4+7=11 3+8=11 11 CoD
Interpretacin
PROGRAMACION DINAMICA DETERMINISTICA
EJEMPLO DE APLICACION
Etapa 1 D EoF
s1 x1
Interpretacin A CoD
PROGRAMACION DINAMICA DETERMINISTICA
INTRODUCCION
ELEMENTOS DE UN PROBLEMA DE
PROGRAMACION DINAMICA
EJEMPLO PROTOTIPO DE
PROGRAMACION DINAMICA