Académique Documents
Professionnel Documents
Culture Documents
Programacin dinmica
As, la programacin dinmica se puede definir como una tcnica matemtica til que
resuelve una serie de decisiones secuenciales, cada una de las cuales afecta las
decisiones futuras. Proporciona un procedimiento sistemtico para determinar la
combinacin de decisiones que maximiza la efectividad total (Taha, 2004).
En contraste para el problema de programacin dinmica, trata de un enfoque de tipo
parcial para la solucin de problemas y las ecuaciones especficas que se usan se
deben desarrollar para que represente cada situacin individual.
Programacin dinmica
A pesar de esta caracterstica, los problemas que pueden ser atacados con la PD tienen
otras dos propiedades adicionales:
Programacin dinmica
Ejemplo 5.2:
El problema de la diligencia.
Programacin dinmica
Puesto que se ofrecan seguros de vida a los pasajeros de las diligencias, este
vendedor no quiso dejar pasar la oportunidad y se propuso determinar la ruta ms
segura. Como el costo de cada pliza se basaba en una evaluacin cuidadosa de la
seguridad de ese recorrido, la ruta ms segura deba ser aquella con la pliza de
seguro de vida ms barata. El costo de la pliza estndar para el viaje en diligencia del
estado i al j se muestra en figura 5.1 como una etiqueta en los caminos (flechas) para ir
de un estado a otro.
As la pregunta central es: cul ruta (conjunto de caminos) minimiza el costo total de la
pliza?, para contestar esta pregunta es necesario hacer notar que, el procedimiento
poco inteligente de seleccionar el camino ms barato ofrecido en cada etapa sucesiva
no necesariamente conduce a una decisin ptima global.
La PD parte de una pequea porcin del problema y encuentra la solucin ptima para
ese problema ms pequeo. Entonces gradualmente agranda el problema, hallando la
solucin ptima en curso a partir de la anterior, hasta que se resuelve por completo el
problema original.
4
Programacin dinmica
Programacin dinmica
Figura 5.3
Etapa 2: estados 5, 6, 7
conectados con los estados
Esta informacin, junto con los costos mnimos de los estados 2, 3 y 4 (figura 5.4)
determinan el costo mnimo (acumulativo) para el estado 5 como:
Programacin dinmica
Figura 5.6
Etapa 2: Estados 7
conectados con los
Programacin dinmica
Figura 5.7
Etapa 3: estados 8, 9
Programacin dinmica
Figura 5.8
Etapa 4: Estados 10
conectados con los
Programacin dinmica
i=1, 2,3
xi
. En la
etapa i.
De hecho se considera que el estado del sistema en la etapa i es la informacin que
enlaza, conecta o vincula las etapas, de tal modo que se pueda tomar las decisiones
para las etapas restantes sin volver a examinar cmo se lleg a las decisiones de las
etapas anteriores. La definicin correcta de estado permite considerar por separado
cada estado, y garantiza que la solucin sea factible para todos los estados.
10
Programacin dinmica
11
Programacin dinmica
Se sugiere intentar una definicin de estado diferente que pueda parecer ms lgica y
utilizarla en los clculos recursivos.
Con el tiempo, se descubrir que las definiciones que se presentan en las siguientes
aplicaciones proporcionan la forma correcta para resolver el problema.
Mientras tanto, el proceso mental propuesto deber mejorar la comprensin del
concepto de estado.
bi
xi
x ibi yC 2 (x ix i1)
C1 (x ib 1)
, el costo de mantener el
, el costo de contratar,
x ix i1
trabajadores
adicionales.
Los elementos del modelo de programacin dinmica se definen como sigue:
12
Programacin dinmica
Ejemplo 5.4-2:
Un contratista constructor estima que la fuerza de trabajo necesaria durante las
prximas 5 semanas ser de 5, 7, 8, 4 y 6 trabajadores, respectivamente. La mano de
obra en exceso que se conserve le costara $300 por trabajador semanalmente, y la
nueva contratacin en cualquiera semana tendr un costo fijo de $400 ms $200 por
trabajador y por semana.
Los datos del problema se resumen como sigue:
13
Programacin dinmica
14
Programacin dinmica
15
Programacin dinmica
Ejemplo 5.4-3
Una empresa debe determinar la poltica ptima, durante los prximos 4 aos (n=4), de
reemplazo de una mquina, que en la actualidad tiene 3 aos. La tabla 5.1 muestra los
datos del problema. La empresa establece que toda mquina que tenga 6 aos de edad
debe reemplazarse. El costo de una maquina nueva es $100,000.
Tabla 5.1.
Aos con relacin a sus
16
Programacin dinmica
La red indica que al comenzar el ao 2, las edades posibles de las maquinas son de 1 4
aos.
Para el comienzo del ao 3, las antigedades posibles son 1, 2 y 5 aos, y para el
comienzo del ao 4, las antigedades posibles son 1, 2, 3 y 6 aos.
La solucin de la red de la figura 5.9 equivale a determinar la ruta ms larga, del inicio
del ao 1 al final del ao 4. Se iniciara la forma tabular para resolver el problema. Todos
los valores son en miles de $. Ntese que si se reemplaza una mquina en el ao 4 (es
decir, al final del horizonte de planeacin) los ingresos incluirn el valor de
recuperacin, s(t), de la mquina reemplazada y el valor de recuperacin, s(1) de la
mquina de repuesto.
17
Programacin dinmica
Programacin dinmica
Figura 5.10
Las polticas alternativas ptimas empezando en el ao 1 son
(R, K, K, R) y (R, R, K, K). El costo total es de 55,300 dlares.
19
Programacin dinmica
Un juego aleatorio
Es una variacin del juego de la ruleta rusa, se hace girar una rueda con marcas de n
nmeros consecutivos: 1 a n, en su superficie. La probabilidad de que la rueda se
detenga en el nmero i despus de un giro es pi. Un jugador paga $x por el privilegio de
hacer girar la rueda un mximo de m giros. La recompensa para el jugador es el doble
de la cantidad obtenida en el ltimo giro. Suponiendo que le jugador se repite (hasta
con m giros cada vez) una cantidad razonablemente grande de veces, propone una
estrategia optima para el jugador.
Se puede formular el problema como un modelo de programacin dinmica con las
siguientes definiciones:
1. La etapa i corresponde a la i-sima vuelta de la rueda, i = 1, 2, , m
2. En cada etapa hay dos alternativas: se gira la rueda una vez ms o se termina el
juego
3. El estado j del sistema en la etapa i es el nmero que se obtuvo la ltima vez que
se gir la rueda, el cual est entre 1 y n
Sea
fi(j) = Ingreso mximo esperado cuando el juego est en la etapa i (el giro) y que el
resultado del ltimo giro fue j
En este caso se tiene que
2 j , si termina
fi j max
k 1
pk fi 1 k , si contina
20
Programacin dinmica
Rn f1 0 x
Los clculos comienzan con fm+1 y terminan con f1, de modo que hay
m+1 etapas. Como f1(0) representa el rendimiento esperado de las m vueltas, as que el
rendimiento esperado neto, Rn, es:
Ejemplo
Supongamos que la ruleta est marcada con los nmeros 1 a 5 y que las
probabilidades de que se detenga en cada nmero son p1 = 0.30, p2 = 0.25, p3 = 0.20,
p4 = 0.15, p5 = 0.10.
El jugador paga $5 por un mximo de cuatro vueltas. Determine la estrategia ptima
para cada una de las cuatro vueltas y encuentre el rendimiento esperado neto asociado.
Etapa 5
Resultado
Etapa 4
la vuelta 4
f5(j) = 2j
de
f4(j) = mx.{2j,(pkf5(k))}
Solucin ptima
= mx.{2j, p1f5 (1)+ p2f5(2)+ p3f5 (3)+ p4f5 (4)+ p5f5 (5)}
f5(j)
Decisin
= mx.{2j,0.3x2
+ 0.25x4 + 0.2x6 + 0.15x8 + 0.1x10}
= mx.{2j,5}
2
Terminar
Resultado de
2
la vuelta 4
Rendimiento esperado
4
Terminar
3
j
6
Terminar
Terminar
Girar
Terminar
10
Terminar
Solucin ptima
f4(j)
Decisin
21
Programacin dinmica
Girar
Girar
Terminar
Terminar
10
10
Terminar
Etapa 3
Resultado de la
vuelta 3
Rendimiento esperado
Solucin ptima
Terminar
Girar
f4(j)
Decisin
6.15
6.15
Girar
6.15
6.15
Girar
6.15
6.15
Girar
6.15
Terminar
10
6.15
10
Terminar
22
Programacin dinmica
Etapa 2
f2(j) = mx.{2j, (pkf3(k))}
= mx.{2j, p1f3 (1)+ p2f3(2)+ p3f3 (3)+ p4f3 (4)+ p5f3 (5)}
= mx.{2j,0.3x6.15 + 0.25x6.15 + 0.2x6.15 + 0.15x8 + 0.1x10}
= mx.{2j,6.8125}
Resultado de
la vuelta 3
Rendimiento esperado
Solucin ptima
Terminar
Girar
f4(j)
Decisin
6.8125
6.8125
Girar
6.8125
6.8125
Girar
6.8125
6.8125
Girar
6.8125
Terminar
10
6.8125
10
Terminar
Etapa 1
23
Programacin dinmica
La nica opcin disponible al iniciar el juego es girar.
De acuerdo con los cuadros anteriores, la solucin ptima es:
Vuelta nmero
Estrategia ptima
Referencias Bibliogrficas
Domnguez, A. (Noviembre de 2000). Programacin dinmica.
Recuperado el Noviembre de 2012, de
http://www.slideshare.net/Alexdfar/programacin-dinmica-5688350
Hillier, F. S. (1991). Introduccin a la Investagacin de
Operaciones (3 ed.). Mxico: McGraw-Hill.
Taha, H. A. (2004). Investigacin de Operaciones (7 ed.). Mxico:
PEARSON EDUCATION.
24