Está en la página 1de 14

PD: Lote de producción

Wagner-Within
Silver Meal
Programación Dinámica
Investigación de Operaciones II

Taha (2012) s. 13.4.2 (p. 476 - 487)


1
Determinar recursos
Reducir costos de producir o mantener en inventario
Costo de preparar la producción
Modelo exacto por PD
Heurística aproximada
Wagner-Within (1958)
Heurística con constantes
Algoritmo Silver-Meal

2
Modelo PD exacta
Etapa : Períodos de evaluación de producción
Estados : Nivel de inventario al inicio del período i
Alternativas: Pedir una cantidad para suplir demanda

Restricción de nivel de inventario (definición)


: Demanda del período 𝑛

𝐷𝑖
0 ≤ 𝑥𝑖+1 ≤ ∑ 𝐷𝑘
𝑧𝑖 𝑘=𝑖+1
𝑥𝑖 +2

𝑥0 𝑥𝑖 +1
𝑥𝑖 Tiempo
3
Modelo PD costos
Costos son:
: Preparar producción en período i
: Mantener inventario en período i
: Costo de producción marginal (suele ser proporcional,
pero se acepta función)
Función de costo es:

4
PD Recursivas
Función recursiva (inicial)

: Final del período 1 (inicio del 2)


Recursiva en el resto de etapas

𝑓 𝑖−1 (𝑥 𝑖)
𝐷𝑖
𝑪𝒊 ( 𝒛 𝒊 ) 𝑧𝑖
𝒉𝒊 𝒙 𝒊+𝟏
𝑥𝑖 𝑥𝑖 +1 5
Red para PD
𝑧𝑖

𝑧𝑖

𝐷𝑖
𝑧𝑖 𝑥𝑖 +2 𝐷𝑛

𝑥0 𝑥𝑖 +1 0
𝑥𝑖
Resolver hacia adelante 6
Ejemplo 13.4-2
Ver en Taha

7
Ejemplo 13.4-2 Taha PD exacta
Datos de inventario para 3 períodos.
Demanda en unidades discretas
Costo de producción unitario es
$10 para las primeras 3 unidades
$20 para cada unidad adicional (después de 3 un.)
Inventario inicial: 1 unidad
Demanda Di Costo de preparar Costo de
Período (i) unid. K_i $ mantener, h_i $
1 3 3 1
2 2 7 3
3 4 6 2

8
Función de costos
Costo de producción unitario es
$10 para las primeras 3 unidades
$20 para cada unidad adicional

¡Y todavía falta ponerle condicional de preparación!

Caso real, z puede ser acotada, junto con x


9
Etapa 1
Período 1               
x_2 <= 6 Min z_i 2 Max z_i 8
z_i 2 3 4 5 6 7 8
x_2 h1 x_2 C1 (z_1) 23 33 53 73 93 113 133
0 0 23 1000000 1000000 1000000 1000000 1000000 1000000
1 1 1000000 34 1000000 1000000 1000000 1000000 1000000
2 2 1000000 1000000 55 1000000 1000000 1000000 1000000
3 3 1000000 1000000 1000000 76 1000000 1000000 1000000
4 4 1000000 1000000 1000000 1000000 97 1000000 1000000
5 5 1000000 1000000 1000000 1000000 1000000 118 1000000
6 6 1000000 1000000 1000000 1000000 1000000 1000000 139

Usar recursiva inicial


Cuidado con las funciones compuestas

𝑥𝑖 +1=𝑥 𝑖 + 𝑧 𝑖 − 𝐷 𝑖

𝑥2 =𝑧 𝑖 −2 10
Etapa 2
Período 2  D_i 2         
x_2 <= 4 Min z_i 0Max z_i 6
z_i 0 1 2 3 4 5 6
x_2 h1 x_2 C1 (z_1) 0 17 27 37 57 77 97
0 0 55 51 50 2000000 2000000 2000000 2000000
1 3 79 75 64 63 2000000 2000000 2000000
2 6 103 99 88 77 86 2000000 2000000
3 9 127 123 112 101 100 109 2000000
4 12 151 147 136 125 124 123 132
5 15 1000015 171 160 149 148 147 146
6 18 1000018 1000035 184 173 172 171 170

La recursiva jala directamente el valor de la tabla de memoria


𝑛 0 ≤ 𝑥3 ≤ 𝐷 3=4
0 ≤ 𝑥𝑖+1 ≤ ∑ 𝐷𝑘 𝑥𝑖 +1=𝑥 𝑖 + 𝑧 𝑖 − 𝐷 𝑖
𝑥3 +2 ≥ 𝑧 2
𝑘=𝑖+1 𝑥3 +2=𝑥 2+ 𝑧 2 𝑥3 ≤ 𝑧 2 +6 11
Etapa 3
Período 3  D_i 4         
x_2 <= 4 Min z_i 0Max z_i 6
z_i 0 1 2 3 4 5 6
x_2 h1 x_2 C1 (z_1) 0 16 26 36 56 76 96
0 0  123 116 103 99 106 1000076 1000096
1 2 1000146 141 128 115 121 128 1000098
2 4 1000170 1000146 153 140 137 143 150
3 6 2000000 1000170 1000146 165 162 159 165

Los valores se mantienen fijos por calcular


El dominio de cada x es según las fronteras de su etapa

12
Reconectando respuesta
Etapa 3 Etapa 2
x_2 f_1 (x_2) z_1 *
0 99 3 x_2 f_1 (x_2) z_1 *
0 23 2
1 34 3
2 55 4
3 76 5
Etapa 1
4 97 6
x_2 f_1 (x_2) z_1 * 5 118 7
0 50 2 6 139 8
1 63 3
2 77 3
3 100 4
4 123 5
5 146 6
6 170 6

13
Interpretando respuesta

𝑧 3 =3
𝑧 1=2

𝑧 2 =3

𝑥1=1

𝑥 4=0

14

También podría gustarte