Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Programacion Dinamica
Programacion Dinamica
INTRODUCCIÓN
• Técnica cuantitativa de toma de decisiones
desarrollada por Bellman y Dantzig en 1957
2 6
4 8
3 3
6
4 2
1 3 6 3 10
4
4
3 4
1
3
3
9
5
4 7
estado
¿Cuál ruta (conjunto de Caminos) minimiza el costo total de la póliza?
Problema de la Diligencia
sacrificando un poco en una etapa
camino más barato ofrecido pero
es posible obtener ahorros
en cada etapa sucesiva mayores de allí en adelante.
1-2-6-9-10 -> Costo total de 13 1-4-6 es globalmente más barata
que 1-2-6
pero
el número de rutas es muy
Solución 2: por tanteos, grande (1x3x3x2x1=18)
Problema de la Diligencia
Solución 3:
PROGRAMACIÓN
DINÁMICA
Variable de decisión,
estado inmediato en la
etapa n
s Estado
Costo del estado S a Xn
El problema de la diligencia es
un diseño conceptual, para dar
una interpretación física literal
de los problemas de PD.
Características de Programación Dinámica
• Característica fundamental: Procesos multietapa de toma de
decisiones.
• Propiedades:
Estado posible
de la etapa
Actual (n)
Ejemplo 2
Programación Dinámica
Determinística
Ejercicio2: preparando exámenes
Una estudiante universitaria cuenta con siete Puntos de
días para preparar los exámenes finales de Calificación
Cuatro cursos y quiere asignar su tiempo de
Días Estimados
estudio de la manera más eficiente posible.
Cursos
Necesita por lo menos un día para cada curso y 1 2 3 4
quiere concentrarse sólo en un curso cada día
1 3 5 2 6
por lo que quiere asignar uno, dos, tres o cuatro
días a cada curso. 2 5 5 4 7
Como hace poco tomó un curso de 3 6 6 7 9
investigación 4 7 9 8 9
de operaciones, decide aplicar programación
dinámica para hacer estas asignaciones que
maximicen el total de puntos obtenidos en los
cuatro cursos. Estima que las distintas opciones 28
Función recursiva:
*
29
Programación Dinámica
Determinística
Ejercicio 3:
Puntos de
Etapa 4, n=4, s5=0
Calificación
s4 * x4 Estimados
Días
1 6 1 Cursos
2 7 2 1 2 3 4
3 9 3 1 3 5 2 6
4 9 4
2 5 5 4 7
3 6 6 7 9
4 7 9 8 9
30
Programación Dinámica
Determinística
Ejercicio 3: s4 f4*(s4) x4
Etapa 3, n=3 1 6 1
2 7 2
3 9 3
s3/x3 1 2 3 4 f3(s3) x3
4 9 4
1
2 2+6=8 8 1
3 2+7=9 4+6=10 10 2
4 2+9=11 4+7=11 7+6=13 13 3
5 2+9=11 4+9=13 7+7=14 8+6=14 14 3ó4
31
Programación Dinámica
Determinística
Ejercicio 3:
Etapa 2, n=2
s2/x2 1 2 3 4 f2(s2) x2
1
2
3 5+8=13 13 1
4 5+10=15 5+8=13 15 1
5 5+13=18 5+10=15 6+8=14 18 1
6 5+14=19 5+13=18 6+10=16 9+8=17 19 1
32
Programación Dinámica
Determinística
Ejercicio 3:
Etapa 1, n=1
s1/x1 1 2 3 4 f1*(s) x1
7 3+19=22 5+18=23 6+15=21 7+13=20 23 2
33