Está en la página 1de 54

Programación Dinámica

Conceptos y formulación

IO2 Rosa Delgadillo


Programación Dinámica
 Conceptos
 Motivación
 Formalización del Modelo de
Programación Dinámica
 Estrategia de solución
 Ejemplos
 Programación dinámica probabilística
IO2- Rosa Delgadillo
Programación Dinámica
 Gran cantidad de situaciones que se
desea modelar presentan naturaleza
dinámica
 Esto es, las decisiones de un periodo de
tiempo se ven afectadas por las
decisiones de los periodos anteriores y
las decisiones del periodo actual
afectarán el comportamiento futuro.
IO2- Rosa Delgadillo
Programación Dinámica
 Dos enfoques que dependen de los
requerimientos y abstracción que se
realice en el modelamiento pueden ser
contemplados:
 Asumir que el efecto dinámico es poco
relevante y solo considerar modelos de un
periodo
 Considerar el efecto dinámico dentro del
modelo

IO2- Rosa Delgadillo


Programación Dinámica
 La programación dinámica también se conoce
como programación en múltiples etapas
(donde el tiempo no es un factor importante).
 Se basa en el uso de funciones recursivas y
en un principio de optimalidad desarrollado
por R. Bellman que es una aplicación del
principio de inducción.

IO2- Rosa Delgadillo


Programación Dinámica
 La programación dinámica es un caso
particular de la programación recursiva.
 El modelo recursivo presenta una forma
alternativa equivalente de escribir la mayoría
de los modelos de programación matemática,
proporcionando un mecanismo de solución.

IO2- Rosa Delgadillo


Motivación
 Ejemplo:
Considere una familia que está planificando sus vacaciones y desea
viajar a través del Perú. Para ello ha elegido n ciudades para visitar en
un cierto orden. El número de días dedicados a visitar cada ciudad
debe ser determinado en la planificación. La familia dispone de m días
para sus vacaciones. De acuerdo al interés turístico y las preferencias
familiares, a cada ciudad se le ha asignado una función de utilidad g i ( xi )
que representa el grado de satisfacción de la familia asociado a la visita
de la ciudad i cuando se dedican x i días asignados a esa ciudad, el
cual debe ser entero.
 Se asume que:
 El tiempo de viaje entre ciudades es despreciable
 Los días son dedicados completamente a una ciudad
 El orden de las ciudades que se visitarán corresponde al índice
asignado

IO2- Rosa Delgadillo


Motivación
Modelo de programación matemática
x i : es el número de días a dedicar a la visita de la ciudad i
M :Máximo número de días disponibles de vacaciones
g i ( xi ) : Utilidad percibida si x i días son dedicados a la visita de la
ciudad i
n : Número de ciudades a visitar

n
(P1) Max g i ( xi )
i 1

s.a.
n
xi M
i 1

xi 0, entero, i 1,..., n

IO2- Rosa Delgadillo


Motivación
Modelo de programación Dinámica
 Es necesario observar que el número de días dedicados a visitar
una ciudad afectará al número de días posibles que se
dedicarán a la visita de otras ciudades (característica dinámica)
 Supongamos que la familia llega a la última ciudad que quería
visitar (ciudad n) y que dispone de y i días de vacaciones
¿Cuál es la mejor decisión que ellos pueden tomar en ese
momento? Esto es ¿ cuántos días le dedicarán a la última
ciudad?.
Si se asume que g n ( xn ) es una función creciente en x n entonces la
decisión será dedicar y n días disponibles a la última ciudad. Una
función que representa la utilidad de la mejor alternativa en la
ciudad n es dado por: f n ( y n ) Max
0 x
n y
n
g n ( xn )

IO2- Rosa Delgadillo


Motivación
Pero, que ocurre en la ciudad n-1?
Supongamos que existen y n 1 días disponibles antes de visitar la
ciudad n-1 ( y la ciudad n). En este momento la familia debe
decidir cuantos días dedicar a la ciudad n-1 y a la ciudad n.
Por tanto si hay y n 1 días disponible para ambas ciudades,
quedarán yn 1 xn 1 si se decide dedicar xn 1 días a la ciudad n-1
la función que representa la utilidad de la mejor alternativa
escogida para la ciudad n-1 ( y la ciudad n) es:

fn 1 ( yn 1 ) Max
0 xn 1 yn 1
gn 1 ( xn 1 ) f n ( yn 1 xn 1 )

IO2- Rosa Delgadillo


Motivación
y, que ocurre en la ciudad i ?
Nuevamente supongamos que existen yi días disponibles antes
de visitar la ciudad i ( y las ciudades i +1, …,n) , estos días
deben ser distribuidos entre esas ciudades de forma a
maximizar la utilidad asociada a esas ciudades.
La función que representa la utilidad de la mejor alternativa
escogida para la ciudad i ( y las ciudades i +1, …,n) es:

f i ( yi ) Max
0 xi yi
g i ( xi ) fi 1 ( yi xi )

IO2- Rosa Delgadillo


Motivación
Finalmente, en todas las ciudades se supone que existen “y” días
disponibles antes de visitarla (a ella y las restantes).
Sin embargo en la primera ciudad (primera a ser visitada) la familia
conoce los días disponibles para sus vacaciones.
Esto es, y1 M con lo cual la función que representa la
utilidad de la mejor alternativa en la ciudad 1, se define como:

f1 ( y1 M) Max
0 x1 M
g1 ( x1 ) f 2 (M x1 )

En conclusión: El problema (P1), ha sido formulado como una serie


de subproblemas paramétricos interrelacionados, mediante la
variable y , pues esta asegura un valor en la ciudad 1 (ultima en
ser planificada) y relaciona las variables entre dos ciudades
consecutivas ( yi yi 1 xi 1 )

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 En el ejemplo anterior se observó que el abordaje de la
formulación de los subproblemas relacionados partieron desde
la última ciudad a la primera ciudad, este forma es conocida
como formulación hacia atrás o backward . Sin embargo es
posible hacer una formulación hacia delante o forward.
 El concepto de programación dinámica se basa en el uso de
ecuaciones funcionales y el principio de Optimalidad de Bellman
 Las ecuaciones funcionales corresponden a :
 Funciones que dan cuenta de la función objetivo (desde la etapa k
hasta el fin del horizonte)
 La función de interrelación entre estados de dos etapas
consecutivas
 Las condiciones de borde

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
Modelo general de la formulación backward:
f k ( yk ) Max
xk Ak ( y k )
H k ( y k , x k , f k 1 ( y k 1 ))

yk 1 Tk ( y k , x k ) k n, n 1,....,1
y1 M
f ( yn 1 )
n 1 F

Donde x k: Variable de decisión de la etapa k-esima


y k : Variable de estado al comienzo de la etapa k-esima
Tk : Función de transformación
H k: Función de Optimización
f k : Función de recursión en etapa k-esima
Ak ( y k ): Espacio de soluciones factibles de la etapa k-esima
M : Valor inicial de Y , o condición de borde
F : Valor final de la función f
IO2- Rosa Delgadillo
Formalización del modelo de
Programación Dinámica
La formulación anterior presenta algunas
características importantes:
 La formulación tiene el concepto de recursividad, que
es la generalización del concepto dinámico del
modelo
 Las condiciones de borde M y F , permiten obtener la
solución explicita del modelo
 La función H k corresponde a la función objetivo
desde la etapa k hasta la etapa final n

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 La función de transformación T ( y , x )
k k k

establece la relación entre las variables de


estado y k y yk 1 para dos periodos
consecutivos.
 El conjunto Ak representa al conjunto de
restricciones asociadas a la variable de
decisión de la etapa k.

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 La solución del subproblema de optimización
en la etapa k, es una solución paramétrica en
la variable de estado y k , ya que f es función
de ella.
 Se denomina política óptima de la etapa K a
la solución óptima de las etapas k, k+1,…,n
para un determinado estado inicial en la
etapa k

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 Principio de optimalidad de Bellman:
Una solución óptima tiene la propiedad que
cualquiera sea el estado inicial y la decisión inicial, las
decisiones para las etapas posteriores deben
constituir una política óptima con respecto al estado
resultante de la primera decisión.

Es decir: las decisiones involucradas desde una etapa


en adelante sólo dependen del estado inicial de la
etapa y no de la decisiones previas.

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 En general es posible establecer ciertas
reglas para construir un modelo de
programación dinámica equivalente al
modelo de optimización P1; asociado a
las definiciones de etapas, estado,
función de transformación y función de
recursión:

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 Cada variable de decisión (o conjunto de ellas) define
una etapa del modelo de PD. Generalmente se
establece una relación uno a uno entre las variables y
las etapas.
 La función objetivo corresponde a la función de
recursión. Por tanto, para cada etapa la función de
recursión debe corresponder a la función objetivo
desde esa etapa hasta la etapa final.
 El número de variables de estado del modelo
corresponde al número de restricciones que
involucran a variables en más de una etapa. Las
restricciones que solo afectan a una etapa no
generan variables de estado.

IO2- Rosa Delgadillo


Formalización del modelo de
Programación Dinámica
 Las variables de estado tienen una
interpretación asociada al valor disponibles
del lado derecho de cada restricción en una
etapa determinada (holgura residual).
 El valor de la condición de borde f n 1 es
asignado de acuerdo a la forma de la función
objetivo y a la decisión tomada al final de la
última etapa ( f n 1 0 si la F.O. es aditiva y
f n 1 1 si es multiplicativa).

IO2- Rosa Delgadillo


Estrategia de solución
Ejemplo:
Para el ejemplo anterior considere tres ciudades
y el número de días disponibles para
vacaciones de 5. las funciones de utilidad
son g ( x ) 2x , g ( x ) x , g ( x3 ) 3x31/ 2
1
1/ 2
1 2
1/ 2
2

Considere que el orden de vista de las


ciudades está predefinido (1, 2, y luego 3) .

IO2- Rosa Delgadillo


Estrategia de solución
Etapa 3
 Los días que se pueden dedicar a la
ciudad 3 son 0,1,2,3,4 y 5.
 Si la familia dispone de y 3 días,
entonces puede dedicar desde 0 a y3 a
esta ciudad.
 El subproblema que debe ser resuelto
entonces es: 1/ 2
f 3 ( y3 ) Max 3x
0 x3 y 3
3 f 4 ( y3 x3 )

IO2- Rosa Delgadillo


Estrategia de solución
 La función f 4 ( y4 ) 0 , ya que independientemente del número de
días que queden después de visitar la ultima ciudad, esto no
reporta ninguna utilidad.
 La tabla muestra la solución del subproblema
g3 ( x3 ) f 4 ( y3 x3 ) 3x13/ 2 0

y3 x3=0 x3=1 x3=2 x3=3 x3=4 x3=5 X3* f3(y3)


0 0,00 - - - - - 0 0,00
1 0,00 3,00 - - - - 1 3,00
2 0,00 3,00 4,24 - - - 2 4,24
3 0,00 3,00 4,24 5,20 - - 3 5,20
4 0,00 3,00 4,24 5,20 6,00 - 4 6,00
5 0,00 3,00 4,24 5,20 6,00 6,71 5 6,71

IO2- Rosa Delgadillo


Estrategia de solución
Etapa 2
 En esta etapa se resuelve el problema de cuantos días
dedicar a la ciudad 2 y a la ciudad 3, en forma conjunta.
Dado que la decisión tomada en esta etapa x 2 afecta a
la etapa 3, ya que y3 y2 x2
 Los días disponibles en esta etapa también son:
0,1,2,3,4,5; el subproblema a ser resuelto es:
1/ 2
f 2 ( y2 ) Max 1x
0 x2 y 2
2 f 3 ( y2 x2 )

IO2- Rosa Delgadillo


Estrategia de solución
 La función f 3 ( y2 x2 ) f 3 ( y3 ) y dado que
 f 3 ( y3 ) Max g3 ( x3 ) f 4 ( y3 x3 ) se tiene:
f 2 ( y2 ) Max g 2 ( x2 ) g3 ( x3 ) f 4 ( y2 x2 x3 )
x2 x3 y2
x2 , x3 0

 La tabla muestra la solución del subproblema


g 2 ( x2 ) f 3 ( y2 x2 ) x12/ 2 f 3 ( y2 x2 )

y2 x2=0 x2=1 x2=2 x2=3 x3=4 x2=5 X2* f2(y2)


0 0,00 - - - - - 0 0,00
1 3,00 1,00 - - - - 0 3,00
2 4,24 4,00 1,41 - - - 0 4,24
3 5,20 5,24 4,41 1,73 - - 1 5,24
4 6,00 6,20 5,65 4,73 2,00 - 1 6,20
5 6,71 7,00 6,61 5,97 5,00 2,23 1 7,00

IO2- Rosa Delgadillo


Estrategia de solución
Etapa 1
 En esta etapa el número de días disponibles ( y1 ) es conocido,
con lo que el subproblema a resolver es:
1/ 2
f1 ( y1 ) Max 2 x
0 x1 y1
1 f 2 ( y1 x1 )
y1 5

 Y la tabla es:
g1 ( x1 ) f 2 ( y1 x1 ) 2x11/ 2 f 2 ( y1 x1 )

y1 x1=0 x1=1 x1=2 x1=3 x1=4 x1=5 X1* f1(y1)


5 7,00 8,20 8,06 7,70 7,00 4,47 1 8,20

IO2- Rosa Delgadillo


Estrategia de solución
solución
 La determinación de la política óptima de asignación de
días de visita a todas las ciudades es obtenido
recursivamente, partiendo de x1* 1 y observando en la
etapa 2 el valor óptimo para y2 y1 x1* 4 ,el cual es
x2* 1 , por lo que ahora y3 y2 x2 3 , de la
*

observación en la etapa 3 (tabla 3) se tiene que para y3 3


el valor optimo es x3 3
*

 Por lo tanto la política óptima es dedicar un día a la


ciudad 1 y 2; y 3 días a la ciudad 3. Obteniéndose una
utilidad de
f1 ( y1 ) 8,20

IO2- Rosa Delgadillo


Asignación de recursos
Ejemplo
El propietario de 3 tiendas ha comprado 5 cestas de
cerezas, para satisfacer la demanda en las diferentes
tiendas. El propietario desea determinar la forma de
distribuir las canastas, de manera de maximizar el
beneficio total. Los retornos (utilidades) en función del
número de cestas distribuidas (se asume vendidos) en
las 3 tiendas están dados en la tabla siguiente.

Cantidad de canastas
Tienda 0 1 2 3 4 5
1 0 3 7 9 12 13
2 0 5 10 11 11 11
3 0 4 6 11 12 12

IO2- Rosa Delgadillo


Asignación de recursos
Modelo de programación matemática
x i : es el número de canastas distribuidos en la tienda i-ésima
U i ( xi ) : Utilidad de repartir x i canastas en la tienda i

5
Max U i ( xi )
i 1

s.a.
5
xi 5
i 1

xi 0, entero, i 1,...,5

IO2- Rosa Delgadillo


Asignación de recursos
Modelo de programación dinámica
Etapas: son cada una de las 3 tiendas => 3 etapas
Variable de estado: es el número de canastas disponibles al
comienzo de cada etapa y k
Variable de decisión: es el número de canastas entregados a
c/tienda x i
Función de transformación: es la función yk 1 yk xk
Función de recursión : Mejor utilidad desde la etapa k hasta la
última, dado que se dispone de y k canastas

f k ( yk ) Max U k ( xk ) fk 1 ( yk 1 )
0 xk yk

Condiciones de borde:
f 4 ( y4 ) 0 , y1 5

IO2- Rosa Delgadillo


Asignación de recursos
Solución
En la etapa 3:
U3(x3)+f4(y4)=U3(x3)
y3 X3=0 X3=1 X3=2 X3=3 X3=4 X3=5 X3* f3(y3)
0 0 - - - - - 0 0
1 0 4 - - - - 1 4
2 0 4 6 - - - 2 6
3 0 4 6 11 - - 3 11
4 0 4 6 11 12 - 4 12
5 0 4 6 11 12 12 4ó5 12

IO2- Rosa Delgadillo


Asignación de recursos
Solución
En la etapa 2:
U2(x2)+f3(y2-x2)
y2 X2=0 X2=1 X2=2 X2=3 X2=4 X2=5 X2* f2(y2)
0 0 - - - - - 0 0
1 4 5 - - - - 1 5
2 6 9 10 - - - 2 10
3 11 11 14 11 - - 2 14
4 12 16 16 15 11 - 1ó2 16
5 12 17 21 17 15 11 2 21

Ejemplo: el calculo de la celda y2=2 y x2=1 es: ganancia en el


periodo actual de asignar 1 canasta + ganancia futura cuando queda
1 canasta por asignar = 5 + 4=9

IO2- Rosa Delgadillo


Asignación de recursos
Solución
En la etapa 1:
U1(x1)+f2(y1-x1)
y1 X1=0 X1=1 X1=2 X1=3 X1=4 X1=5 X1* f1(y1)
5 21 19 21 19 17 13 0ó2 21

La solución es:
Tienda Canastas Cuando x1=2,
1 0 2 Y2=y1-x1 =3 => x2 = 2
Y3= y2-x2=1 => x3 =1
2 2 2
3 3 1

IO2- Rosa Delgadillo


Planificación de producción e
Inventario
Ejemplo
Una empresa debe decidir su política de producción e
inventario para los próximos tres meses. La empresa ha
adquirido algunos compromisos de entrega para estos
meses: 3,2 y 4 unidades, respectivamente. En el proceso
productivo se incurre en algunos costos asociados con la
producción y almacenamiento
Mes Costo Costo
Almacenar Producción
CI CP
1 1 10
2 3 15
3 2 20

IO2- Rosa Delgadillo


Planificación de producción e
Inventario
Modelo de programación matemática
x i : cantidad a producir en el mes i
yi : inventario al inicio del mes i
d i : Requerimiento de entrega de producto para el mes i
Min Z 10 x1 15 x2 20 x3 1 y2 3 y3 2 y4
s.a.
y2 y1 x1 d1
y3 y2 x2 d2
y4 y3 x3 d3
xi 0, entero, i
yi 0, entero, i

IO2- Rosa Delgadillo


Planificación de producción e
Inventario
Modelo de programación dinámica
Etapas: son cada una de los periodos de trabajo, 3 meses => 3
etapas
Variable de estado: y i es el nivel del inventario al inicio del periodo i
Variable de decisión: x i es la cantidad a producir en el periodo i
Función de transformación: es la función yi 1 yi xi di
Función de recursión : el costo de la política óptima desde la etapa i
hasta la última, dado que se dispone de y i unidades en
inventario al comienzo del periodo i
f i ( yi ) Max CP( xi ) CI ( yi 1 ) fi 1 ( yi 1 )
xi 0 , entero

Condiciones de borde: inventario final 0 (puede ser otro valor)


Inventario inicial 0 => f n 1 ( yn 1 ) 0 , y1 0

IO2- Rosa Delgadillo


Planificación de producción e
Inventario
Solución
En la etapa 3: f3 ( y3 ) Min {20 x3 2( y3 x3 4)
x3 4 y3
x3 0,entero
f 4 ( y3 x3 4)}

CP(x3)+CI(0) +f4(y4)
y3 X3=0 X3=1 X3=2 X3=3 X3=4 X3* f3(y3)
0 - - - - 80 4 80
1 - - - 60 - 3 60
2 - - 40 - - 2 40
3 - 20 - - - 1 20
4 0 - - - - 0 0

IO2- Rosa Delgadillo


Planificación de producción e
Inventario
Solución
En la etapa 2: f 2 ( y2 ) Min {15 x2 3( y2
x2 6 y2
x2 2) f3 ( y2 x2 2)}
x3 0,entero

CP(x2)+CI(y2) +f3(y3)
y2 X2=0 X2=1 X2=2 X2=3 X2=4 X2=5 X2=6 X3* f3(y3)
0 - - 110 108 106 104 102 6 102
1 - 95 93 91 89 87 - 5 87
2 80 78 76 74 72 - - 4 72
3 63 61 59 57 - - - 3 57
4 46 44 42 - - - - 2 42
5 29 27 - - - - - 1 27
6 12 - - - - - - 0 12

IO2- Rosa Delgadillo


Planificación de producción e
Inventario
Solución
En la etapa 1: f1 ( y1 ) Min {10 x1 1( y1 x1 3)
3 x1 9
f 2 ( y1 x1 3)}
x1 ,entero

CP(x1)+CI(y1)+f2(y2)
y1 X1=3 X1=4 X1=5 X1=6 X1=7 X1=8 X1=9 X1* f1(y1)
0 132 128 124 120 116 112 108 9 108

La solución es:
periodo x
1 9
2 0
3 0

IO2- Rosa Delgadillo


Programación Dinámica
Probabilística
 En los ejemplos anteriores se observa
que una especificación del estado actual
y la decisión actual es suficiente para
saber con certeza el nuevo estado y los
costos durante la etapa actual.

IO2- Rosa Delgadillo


Programación Dinámica
Probabilística
 En la practica no siempre es cierto pues
la demanda es una variable aleatoria,
aún que se conozca el estado actual y
la decisión actual; el estado del
siguiente periodo y el costo del
periodo actual serán
consecuentemente variables aleatorias

IO2- Rosa Delgadillo


Los costos de la etapa actual
no se conocen
Ejemplo: Asignación de recursos
Por el precio de $1 /galón, una cadena de supermercados
compró 6 galones de leche de una lechería local, cada
galón se vende en las 3 tiendas de la cadena a $2/galón.
La lechería debe comprar de nuevo a $0.50/galón la
leche que se queda al final del día.la demanda de leche
es una variable aleatoria y se muestra en la tabla. La
cadena debe asignar la leche a las 3 tiendas para
maximizar la ganancia diaria neta.
Tienda 1 Tienda 2 Tienda 3
Dem x día Probab. Dem. x día Probab. Dem. x día Probab.
1 .60 1 .50 1 .40
2 0 2 .10 2 .30
3 .40 3 .40 3 .30

IO2- Rosa Delgadillo


Asignación de recursos
Modelo de programación dinámica
Etapas: son cada una de las 3 tiendas => 3 etapas
Variable de estado: es el número de galones de leche disponibles
al comienzo de cada etapa y k
Variable de decisión: es el número de galones de leche asignados
a c/tienda x i
Función de transformación: es la función yk 1 yk xk
Función de recursión : Mejor retorno desde la etapa k hasta la
última, dado que se dispone de y k galones de leche

f k ( yk ) Max rk ( xk ) fk 1 ( yk 1 )
0 xk yk

Condiciones de borde:
f 4 ( y4 ) 0 , y1 6

IO2- Rosa Delgadillo


Asignación de recursos
Observación:
Como los 6 galones de leche ya se compraron, esto es, ya
se hizo el gasto, entonces solo nos interesa el ingreso
por las ventas (r (x)).
Es necesario primero determinar los ingresos asociados con
las probables ventas => ingresos esperados
Tienda 1 Tienda 2 Tienda 3
R1(0) =0 Probab. R2(0)=0 Probab. R3(0)=0 Probab.
R1(1)=2 (D=1)=0.60 R2(1)=2 (D=1)=0.50 R3(1)=2 (D=1)=0.40
R1(2)=3.10 (D=2) =0 R2(2)=3.25 (D=2)=0.10 R3(2)=3.40 (D=2)=0.30
R1(3)=4.20 (D=3)=0.40 R3(3)=4.35 (D=3)=0.40 R3(3)=4.35 (D=3)=0.30

R3(2)= P(D=1)x Ganancia +P(D>=2) x Ganancia = 0.4 (2+0.5) + 0.6(2x2)


R3(2) = 0.4 (2.5) + 0.6 (4) = 3.40

IO2- Rosa Delgadillo


Asignación de recursos
Solución
En la etapa 3 (Tienda 3):
r3(x3)+f4(y4)=r3(x3)
y3 X3=0 X3=1 X3=2 X3=3 X3* f3(y3)
0 0 - - - 0 0
1 0 2 - - 1 2
2 0 2 3.4 - 2 3.4
3 0 2 3.4 4.35 3 4.35
4 0 2 3.4 4.35 3 4.35
5 0 2 3.4 4.35 3 4.35
6 0 2 3.4 4.35 3 4.35

Obs: El cálculo de y3=4,5,6 es


innecesario pues en el óptimo no
debería quedar más de y3=3
IO2- Rosa Delgadillo
Asignación de recursos
Solución
En la etapa 2 (Tienda 2):
r2(x2)+f3(y3)
y2 X2=0 X2=1 X2=2 X2=3 X2* f2(y2)
0 0 - - - 0 0
1 2 2 - - 0ó1 2
2 3.4 4 3.25 - 1 4
3 4.35 5.4 5.25 4.35 1 5.4
4 4.35 6.35 6.65 6.35 2 6.65
5 4.35 6.35 7.60 7.75 3 7.75
6 4.35 6.35 7.60 8.70 3 8.70

Ejemplo: El cálculo de y3=4 y x2=2 es: retorno de


asignar 2 en etapa actual + retorno futuro cuando
queda en inventario 2= 3.25 + 3.4 = 6.65
IO2- Rosa Delgadillo
Asignación de recursos
Solución
En la etapa 1 (Tienda 1):
r1(x1)+f2(y1-x1)
y1 X1=0 X1=1 X1=2 X1=3 X1* f1(y1)
6 8.70 9.75 9.75 9.60 1ó2 9.75

La solución es: Cuando x1=1,


Tienda Galones de Y2=y1-x1 = 5 => x2 = 3
leche Y3= y2-x2=2 => x3 =3

1 1 2
$9.75 es el ingreso máximo esperado,
2 3 2 esto es el ingreso en un día determinado
3 2 2 puede ser + ó - $9.75. Si la demanda en
cada tienda es de 1 galón => ingreso
total es 3(2) + 3(0.5) = $7.50.
Si demanda es 3 galones en c/tda =>
6(2) = 12

IO2- Rosa Delgadillo


El estado del siguiente periodo
no se conoce
Ejemplo: Modelo de inventario
Considere el modelo de inventario de 3 periodos. Al comienzo de
cada periodo, una empresa debe determinar cuantas unidades
debe producir durante el periodo actual. Durante un periodo se
produce x unidades, se incurre en un costo de producción c(x),
donde c(0)=0 y para x>0, c(x)=3 +2x. La producción durante
cada periodo esta limitada a lo sumo a 4 unidades. Después
que ocurre la producción , se observa la demanda aleatoria del
periodo. Y estas tiene las misma probabilidades de que sea 1 o
2 unidades. Después de satisfacer la demanda se observa el
inventario al fin del periodo, se estima un costo de
mantenimiento de $1 por unidad. El inventario no puede
exceder de 3 unidades en cada periodo. El inventario al final
del periodo 3 se puede vender a $2 la unidad, el inventario
inicial es de 1 unidad

IO2- Rosa Delgadillo


Modelo de Inventario
Modelo de programación dinámica
Etapas: son cada una de los periodos de trabajo, 3 meses => 3
etapas
Variable de estado: y i es el nivel del inventario al inicio del periodo i
Variable de decisión: x i es la cantidad a producir en el periodo i
Función de transformación: es la función yi 1 yi xi di
Condiciones de borde: inventario final 0 (puede ser otro valor)
Inventario inicial 0 => f ( y ) 0 , y 0
n 1 n 1 1

IO2- Rosa Delgadillo


Modelo de Inventario
Modelo de programación dinámica
Función de recursión : el costo de la política óptima desde la etapa i
hasta la última, dado que se dispone de y i unidades en
inventario al comienzo del periodo i

f i ( yi ) Min C ( xi ) 1 / 2( y x 1) 1 / 2( y x 2) fi 1 ( yi 1 )
xi

solo que en la etapa 3 la función de recursión es:


f 3 ( yi ) Min c( xi ) 1 / 2( y x 1) 1 / 2( y x 2) 1 / 2(2)( y x 1) 1 / 2(2)( y x 2)
xi

Para asegurar satisfacer la demanda y x 2 ó x 2 y


Y para asegurar que el inventario al final del tercer periodo no sea
mas de 3 unidades y x 1 3ó x 4 y

IO2- Rosa Delgadillo


Modelo de Inventario
Etapa 3:
y x c(x) Costo retención Valor recuperac. Costo f3(y), X3 (y)
y+x - 3/2 2Y+2x - 3 Esperado

3 0 0 3/2 3 -3/2 * f=-3/2, x=0


3 1 5 5/2 5 5/2
2 0 0 1/2 1 -1/2 * f =-1/2,x=0
2 1 5 3/2 3 7/2
2 2 7 5/2 5 9/2
1 1 5 1/2 1 9/2 * f =9/2, x=1
1 2 7 3/2 3 11/2
1 3 9 5/2 5 13/2
0 2 7 1/2 1 13/2 * f=13/2,x=2
0 3 9 3/2 3 15/2
0 4 11 5/2 5 17/2

IO2- Rosa Delgadillo


Modelo de Inventario
Etapa 2:
y x c(x) Costo retención Costo futuro esperado ½ Costo f2(y), X2 (y)
y+x - 3 /2 f3(y+x-1) + ½ f3(y+x-2) esperado

3 0 0 3/2 2 7/2 * f=-7/2, x=0


3 1 5 5/2 -1 13/2
2 0 0 1/2 11/2 6* f =6,x=0
2 1 5 3/2 2 17/2
2 2 7 5/2 -1 17/2
1 1 5 1/2 11/2 11 f =21/2, x=2
1 2 7 3/2 2 21/2 * Ó x=3
1 3 9 5/2 -1 21/2 *
0 2 7 1/2 11/2 13 f=25/2,x=3
0 3 9 3/2 2 25/2 * Ó x=4
0 4 11 5/2 -1 25/2*

IO2- Rosa Delgadillo


Modelo de Inventario
Etapa 1:
y x c(x) Costo retención Costo futuro esperado ½ Costo f2(y), X2 (y)
y+x - 3 /2 f3(y+x-1) + ½ f3(y+x-2) esperado

1 1 5 1/2 23/2 17 f=65/4, x=3


1 2 7 3/2 33/4 67/4
1 3 9 5/2 19/4 6 5/4 *

solución:
Se empieza a producir x1(1) =3 y si la demanda
de la etapa 1 y 2, son 2 unidades => y2 =
1+3-2=2 unidades => x2= 0, y3 =2+0-2 =0
=> x3=2.

IO2- Rosa Delgadillo

También podría gustarte