Está en la página 1de 50

Escuela Ingeniería

Industrial- USAT
Investigación de operaciones II

Semana 6: Programación Dinámica


SEMESTRE ACADÉMICO 2022

www.usat.edu.pe
Competencia

• Plantea diversas alternativas de solución a problemas de


decisión utilizando programación dinámica.

2 www.usat.edu.pe
Introducción
La programación dinámica es una técnica matemática útil para la
toma de decisiones secuenciales interrelacionadas.

Proporciona un procedimiento sistemático para determinar la


combinación óptima de decisiones.

www.usat.edu.pe
Introducción

• Suponga que hay 30 cerillas sobre una mesa. Yo empiezo


eligiendo 1,2 o 3 cerillas. Así continuamos hasta que alguno de los
jugadores toma la última cerilla. Este jugador es el que pierde.
¿Cómo puedo yo (el primer jugador) estar seguro de ganar el
juego?

4 www.usat.edu.pe
Introducción

• En contraste con la programación lineal, no cuenta con una


formulación matemática están dar “del” problema de
programación dinámica, si no que se trata de un enfoque de tipo
general para solucionar problemas.
• Además, las ecuaciones específicas que se usan de ben ajustarse
a la situación particular. Por tanto, es necesario cierto grado de
creatividad y un buen conocimiento de la estructura general
de los problemas de programación dinámica para reconocer
cuándo y cómo un problema pue de ser resuelto por medio
de estos procedimientos.

www.usat.edu.pe
¿Qué entienden por Dinámico?

www.usat.edu.pe
Tecnología y dinamismo de Información
• Actualmente existe tecnología para captar, almacenar y comunicar
gran cantidad de información dinámicamente.
• Sensores en la sociedad:
• Smartphones: GPS, luz, cámara, acelerómetro, etc..
• Autos: sensores de presión, oxígeno, gases de escapes, etc..
• Red vial: cámaras de tráfico, tag, espiras magnéticas
• Retail: puntos de venta (POS), RFID, cámaras de conteo

• Internet permite comunicar esta información en línea.

• Análisis descriptivo se vuelve dinámico.

www.usat.edu.pe
Sensores en una empresa

www.usat.edu.pe
Pronósticos en línea:
• Consumidor cambia al tener acceso a información online: posee más
visibilidad del mercado y su consumo se torna más volátil.
• Análisis Predictivo se torna dinámico: planificar demanda requiere estimarla
dinámicamente y desagregarla (por periodo, por cliente). Técnicas de computación
y estadística (Machine Learning) permiten estimar potenciales escenarios futuros.

www.usat.edu.pe
Por lo tanto, se requiere dinamizar el análisis
prescriptivo…
• Datos y pronósticos cada vez más dinámicos.
• Decisiones del negocio se tornan estocásticas:
• Al planificar, existe incertidumbre en la información relevante.
• Al ejecutar, decisiones pueden ser implementada con perturbación.
• Necesidad de anticipar escenarios futuros.
• Decisiones del negocio se tornan dinámicas:
• Sincronización información-decisiones: Datos son recibidos incrementalmente al
ejecutar decisiones. Datos en línea del cliente, del servicio y de pronósticos.
• Necesidad de planificar decisiones en tiempo de ejecución para reaccionar
frente a cambios de datos y decisiones pasadas.
• Necesidad de ser proactivo frente a potenciales escenarios futuros de decisión.
• Se requiere poder y rapidez de cómputo
www.usat.edu.pe
INTRODUCCIÓN

• Inicialmente a la PD se le denominó programación lineal


estocástica ó problemas de programación lineal con
incertidumbre.
• La PD se basa en el principio de optimalidad, el cual establece
que una política óptima consiste de subpolíticas óptimas.
• Así, la PD se puede definir como una técnica matemática que
resuelve una serie de decisiones secuenciales, cada una de las
cuales afecta las decisiones futuras.
• Esto es de vital importancia puesto que rara vez se puede
encontrar una situación operacional donde las implicaciones de
11
una decisión no se extiendan a futuro.
www.usat.edu.pe
¿Cuándo usar Programación Dinámica?

Hay dos condiciones que se deben cumplir antes de comenzar a pensar en


una solución a un problema de optimización usando programación
dinámica.
1.Sub-estructura óptima: Un problema tiene sub-estructura óptima
cuando la solución óptima a un problema se puede componer a partir de
soluciones óptimas de sus sub- problemas.
2.Superposición de Problemas: El cálculo de la solución óptima implica
resolver muchas veces un mismo sub- problemas. La cantidad de sub-
problema es “pequeña”.

12 www.usat.edu.pe
Programación Dinámica (PD)

• Técnica cuantitativa de toma de decisiones desarrollada por


Bellman y Dantzig en 1957
• Se basa en una estructura de optimalidad que tiene un conjunto
de: una política óptima consiste de subpolíticas óptimas.
(Recursividad).
• PD: Técnica matemática que resuelve una serie de decisiones
secuenciales, cada una de las cuales afecta las decisiones
futuras.

13 www.usat.edu.pe
PROGRAMACIÓN DINÁMICA

Al construir un algoritmo usando la estrategia de programación dinámica es


necesario:
1. Caracterizar la estructura de una solución optima.
2. Definir recursivamente el valor de una solución optima.
3. Computar el valor de una solución en forma bottom-up.
4. Construir una solución optima a partir de la información
computada (Opcional)

www.usat.edu.pe
EL PROBLEMA DE LA DILIGENCIA

• El PROBLEMA DE LA DILIGENCIA se construyó especialmente para


ilustrar las características e introducir la terminología de la
programación dinámica.
• Este paradigma se refiere a un cazafortunas mítico de Missouri que
decide ir al Oeste a sumergirse en la fiebre del oro que surgió en
california a mediados del siglo XIX.
• Tiene que hacer el viaje en diligencia a través de territorios sin ley,
donde existen serio peligros de ser atacado por merodeadores. A
pesar que sus puntos de partir y fin son fijos tiene muchas opciones
en cuanto a que “estados” (territorios) debe elegir como puntos
intermedios.
15 www.usat.edu.pe
Sistema de caminos y costos del problema de
la diligencia.

Cada estado está representado por un círculo con una Letra


La dirección de Viaje es siempre de izquierda a derecha.
Se requiere 04 etapas (Jornadas en diligencia) para ir de A a J

16 www.usat.edu.pe
Problema de la Diligencia

• El cazafortunas es un hombre prudente preocupado por su


seguridad. Después de reflexionar un poco ideó una manera
bastante ingeniosa para determinar la ruta más segura.
• Se ofrecen pólizas de seguras de vida a los pasajeros. Como el
costo de la póliza de cualquier jornada en la diligencia está
basado en una evaluación cuidadosa de la seguridad del
recorrido, la ruta mas segura debe ser aquella cuya póliza
represente el menor costo total.

17 www.usat.edu.pe
DEFINICIÓN DE TÉRMINOS

18 www.usat.edu.pe
¿Cuál es la ruta que
minimiza el costo total
de la póliza?

19 www.usat.edu.pe
20 www.usat.edu.pe
21 www.usat.edu.pe
Solución

22 www.usat.edu.pe
Solución

23 www.usat.edu.pe
Solución

24 www.usat.edu.pe
Solución Gráfica

25 www.usat.edu.pe
Red

Si un problema tiene 10
etapas con 10 estados y l0
decisiones posibles en
cada etapa, la
enumeración exhaustiva
tendría que considerar
hasta 10 mil millones de
combinaciones, mientras
que la programación
dinámica necesita hacer
como máximo mil cálculos
(10 para cada estado en
cada etapa)
26 www.usat.edu.pe
Características de los problemas de programación
dinámica:
1. Etapas:
El problema se puede dividir en etapas que requieren una política
de decisión en cada una de ellas.

2. Estados asociados:
Cada etapa tiene cierto número de estados asociados con su inicio.

www.usat.edu.pe
Características de los problemas de programación
dinámica:
3. Relación recursiva:
Se dispone de una relación recursiva que identifica la política
óptima para la etapa n, dada la política óptima para la etapa n + 1.

4. Retroceso:
Cuando se use esta relación recursiva, el procedimiento de solución
comienza al final y se mueve hacia atrás etapa por etapa –
encontrando cada vez la política óptima para esa etapa – hasta
que se encuentra la política óptima desde la etapa inicial.

www.usat.edu.pe
1. El problema se puede dividir en etapas que requieren una política de
decisión en cada una de ellas. En muchos problemas de programación
dinámica, la etapa es la cantidad de tiempo que pasa desde el inicio del
problema, en ciertos casos no se necesitan decisiones en cada etapa.

www.usat.edu.pe
2. Cada etapa tiene un cierto número de estados asociados a ella.
Por estado se entiende la información que se necesita en cualquier
etapa para tomar una decisión óptima.

www.usat.edu.pe
3. 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 (tal vez de acuerdo a una
distribución de probabilidad).

www.usat.edu.pe
4. El procedimiento de solución está diseñado para encontrar una
política óptima para el problema completo, es decir, una receta para
las decisiones de la política óptima en cada etapa para cada uno de
los estados posibles.

www.usat.edu.pe
5. Dado el estado actual, una política óptima para las etapas
restantes es independiente de la política adoptada en etapas
anteriores. (este es el principio de optimalidad para la programación
dinámica). En general en los problemas de PD, el conocimiento del
estado actual del sistema expresa toda la información sobre su
comportamiento anterior, y esta información es necesario para
determinar la política óptima de ahí en adelante.

7. Se dispone de una relación recursiva que indica la política óptima


para la etapa dada la política optima para la etapa (n+1)A pesar de
esta característica, los problemas que pueden ser atacados con la
PD tienen otras dos propiedades adicionales.

www.usat.edu.pe
MÁS CARACTERISTICAS

www.usat.edu.pe
MÁS CARACTERISTICAS

35 www.usat.edu.pe
MÁS CARACTERISTICAS

36 www.usat.edu.pe
MÁS CARACTERISTICAS

37 www.usat.edu.pe
MÁS CARACTERISTICAS

38 www.usat.edu.pe
39 www.usat.edu.pe
MÁS CARACTERISTICAS

40 www.usat.edu.pe
EJEMPLO PROPUESTO

• Tarea: Resuelva el siguiente problema considerando que los datos


mostrados son ganancias obtenidas

41 www.usat.edu.pe
Ejercicio 1: distribución de fresas

• Un propietario de una cadena de tres supermercados compró


cinco cargas de fresas frescas. La distribución de probabilidad
estimada para las ventas potenciales de las fresas antes de que
se echen a perder difiere entre los tres supermercados. El
propietario quiere saber cómo debe asignar las cinco cargas a las
tiendas para maximizar la ganancia esperada.

42 www.usat.edu.pe
Ejercicio 1: distribución de fresas
• Por razones administrativas, no quiere dividir las cargas entre las
tiendas. Sin embargo, está de acuerdo en asignar cero cargas a
cualquiera de ellas. La siguiente tabla proporciona la ganancia
estimada en cada tienda al asignar distintas cantidades de cargas:

43 www.usat.edu.pe
Desarrollo

44 www.usat.edu.pe
Solución

45 www.usat.edu.pe
Solución

46 www.usat.edu.pe
Solución

47 www.usat.edu.pe
48 www.usat.edu.pe
Conclusiones:

-La programación dinámica es una técnica muy útil para


tomar una sucesión de decisiones interrelacionadas.
-Requiere la formulación de una relación recursiva
apropiada para cada problema individual.
- Proporciona grandes ahorros computacionales en
comparación con la enumeración exhaustiva para
encontrar la mejor combinación de decisiones, en
especial cuando se trata de problemas grandes
49 www.usat.edu.pe
Bibliografía

• Render, B., Stair, R. M., & Hanna, M. E. (2006). Métodos


cuantitativos para los negocios. Pearson Educación.Anderson, D.
R., Sweeney, D. J., Williams, T. A., Camm, J. D., & Martin, K.
(2011). Métodos cuantitativos para los negocios. Cengage
Learning.
• Render, B., Stair, R. M., & Hanna, M. E. (2006). Métodos
cuantitativos para los negocios. Pearson Educación.

50 www.usat.edu.pe

También podría gustarte