Este documento describe la programación dinámica probabilística y cómo se puede aplicar para resolver un problema de toma de decisiones secuenciales bajo incertidumbre. Se presenta un ejemplo de un juego de azar donde un jugador debe decidir en cada ronda si continuar jugando o terminar, con el objetivo de maximizar las ganancias esperadas. La solución óptima se obtiene resolviendo recursivamente el problema de atrás hacia adelante usando conceptos de probabilidad.
2. PROGRAMACIÓN DINÁMICA
CARACTERISTICAS DE LA PROGRAMACIÓN DINÁMICA
Puede definirse como una técnica matemática para la solución de una serie de
decisiones en secuencia. Hay que tomar una secuencia de decisiones con cada
una de ellas que afecte las decisiones futuras. Por consiguiente, el ejecutivo se
enfrenta a situaciones que requieren que tome una serie de decisiones, en las
que el buen éxito de cada una, depende de los resultados de una decisión
previa de la misma serie.
Además de la característica esencial de la toma de decisiones en secuencia,
los problemas de programación dinámica tienen otras propiedades. Solo hay
que conocer una pequeña cantidad de datos en cada etapa, a fin describir el
problema. En realidad los problemas de programación dinámica se caracterizan
por la dependencia del resultado de las decisiones de una pequeña cantidad de
variables. Otra característica es que, en cualquier etapa, el resultado de una
decisión altera los valores de las variables relacionadas con el problema. Por lo
tanto, habrá que considerar el mismo numero de variables para la siguiente
serie.
3. En un problema de programación dinámica, hay que tomar una serie de decisiones en
una secuencia determinada. Cuando se hace así, se persigue una política óptima, sin
que importe cuales hayan sido los estados y decisiones anteriores, las decisiones
restantes constituirán una política óptima con respecto al estado que se obtenga con
la primera decisión.
ESTRUCTURA DE LA PROGRAMACIÓN DINÁMICA
La programación dinámica comparte algunos conceptos con otros métodos
cuantitativos. El primer concepto es el de una variable de estado, cuyos valores
especifican las condiciones las condiciones del proceso. Los valores de esas variables
nos dicen todo lo que necesitamos saber sobre el sistema, a fin de tomar decisiones.
Por ejemplo, en un problema de producción, podríamos requerir variables de estado
que se relacionen con la capacidad de fabricas y los inventarios actuales. Hay que
recordar que el numero de variables de estado puede ser muy grande. Sin embargo,
la dificultad para resolver un problema aumenta considerablemente con un número
creciente de variables, y por lo tanto es conveniente reducir al mínimo el número de
variables de estado.
En la estructura de un problema de programación dinámica, se incluye el concepto de
una “decisión”, que es una oportunidad para cambiar las variables de estado en una
forma probabilística. Las retribuciones generadas por cada decisión dependen de los
estados de principio y de fin de la misma, y de ese modo se convierten en una
secuencia de decisiones. La tarea inmediata consiste en tomar decisiones que
aumenten al máximo las retribuciones totales. Pág. 354
6. Introducción
• La programación dinámica probabilística (PDP)
difiere de la programación dinámica
determinística (PDD) en que
– Las condiciones y resultados en cada etapa no son
fijos, sino que tienen un componente de aleatoriedad
– Se hace uso de conceptos de probabilidad en la
obtención de su solución
• Presentaremos la PDP mediante algunos
problemas prototipo
7. Un juego de azar
• Una variante del juego de ruleta requiere que
se gire una rueda marcada con los números
de 1 a n
• La probabilidad de que la rueda se detenga
en un número i después de hacerla girar es pi
• Un jugador paga $x para tener derecho a
girar la rueda hasta m veces
• El jugador obtiene como ganancia el doble
del número que obtiene cuando gira por
última vez
• Suponiendo que el juego se repite un número
grande de veces, queremos diseñar una
estrategia óptima para el jugador
8. Planteamiento general
• Para poner el problema en términos de PD,
consideremos lo siguiente:
– La etapa i corresponde a la i-ésima vuelta de la
rueda, i = 1, 2, …, m
– En cada etapa hay dos alternativas: se gira la
rueda una vez más o se termina el juego
– El estado j del sistema en la etapa i es el número
que se obtuvo la última vez que se giró la rueda,
el cual está entre 1 y n
9. Planteamiento general
• Sea fi(j) = Ganancia máxima esperada
dado que el juego está en la etapa i y
que el resultado de la última vuelta fue
j, entonces
1
1
2 , si termina
max
, si continúa
n
i
k i
k
j
f j
p f k
10. Planteamiento general
• La ecuación recursiva es entonces
1
1
2 , si termina
max , 2,...,
, si continúa
n
i
k i
k
j
f j i m
p f k
1 2
m
f j j
1 2
1
0
n
k
k
f p f k
11. Planteamiento general
• Los cálculos comienzan con fm+1 y
terminan con f1, de modo que hay m+1
etapas
• f1(0) representa el rendimiento
esperado de las m vueltas, así que el
rendimiento esperado neto, Rn, es
1 0
n
R f x
12. Ejemplo
• Supongamos que la ruleta está marcada con
los números 1 a 5 y que las probabilidades de
que se detenga en cada número son p1 = 0.30,
p2 = 0.25, p3 = 0.20, p4 = 0.15, p5 = 0.10
• El jugador paga $5 por un máximo de cuatro
vueltas
• Determine la estrategia óptima para cada una
de las cuatro vueltas y encuentre el
rendimiento esperado neto asociado
16. • En la etapa 1 debe girar. Su ganancia esperada es de 7.31
Etapa 1
f1(j) = max{2j,
Suma(pkf2(k))}
= max{2j,6.8125}
Resultado de la vuelta 1 Rendimiento esperado Solución óptima
j Terminar Girar f2(j) Decisión
1 2 6.8125 6.8125 Girar
2 4 6.8125 6.8125 Girar
3 6 6.8125 6.8125 Girar
4 8 6.8125 8 Terminar
5 10 6.8125 10 Terminar
17. Vuelta número Estrategia óptima
1
Continúe si la vuelta 1 produce 1,2, o 3; de
otra forma, termine
2
Continúe si la vuelta 2 produce 1, 2 o 3; de
otra forma, termine
3
Continúe si la vuelta 3 produce 1 o 2. De
otra forma, termine
4 Ultima vuelta, termina el juego.
18. Referencias
• Taha, Hamdy A. Investigación de
operaciones. Una introducción. Pearson
Educación. 6ª edición. México, 1997