Programacin dinmica l Problemas de decisin l Tipo
Programación dinámica l Problemas de decisión l Tipo particular de problemas de optimización l l l Sistemas que evolucionan con el tiempo Se toman decisiones en momentos sucesivos de tiempo Decisiones dependen del estado del sistema l Políticas óptimas: mejores decisiones para un estado dado 1
Ejemplo 1 Problema de inventarios l Demanda prevista para los próximos 12 meses: l 250 200 250 300 350 300 250 200 350 l l Costes de pedido - fijos: - variables: Costes de inventario: Costes de ventas perdidas: 200 10 2 25 2
Ejemplo 1 l Variables: l l l Meses en los que se hace un pedido Tamaño del pedido l Supondremos que los valores posibles son prefijados: 0 – 100 – 200 – 300 – 400 – 500 Función objetivo: l l Coste total de operación del sistema Restricciones: l Tamaño de los inventarios, ventas perdidas 3
Ejemplo 2 l Generación de energía eléctrica l Precios estimados para próximas 12 horas 45 45 47 49 51 47 45 49 52 49 l Variables l l Niveles de producción de una unidad Objetivo l Máximo beneficio 4
Ejemplo 2 l l l Costes de generación C (€) = 41 E + 0. 015 E 2 Zona de operación permisible: 100 – 300 Mwh Coste de arranque: 20000 € Costes de cambios en el nivel de generación: 150 € Máxima tasa de cambio: 50 Mwh/h 5
Ejemplo 2 l l Variables: l Niveles de generación l Supondremos los siguientes valores aceptables 0 - 100 - 150 - 200 - 250 - 300 Restricciones: l l Máximo cambio en los niveles de generación Máximo/mínimo nivel de generación § Incluido en los valores aceptables 6
Formulación del problema l Elementos del problema l Variables de estado l l Variables de decisión l l Información necesaria para conocer la situación del sistema, xt Acciones a tomar para modificar el estado, yt Ley de movimiento l Relación entre variables de estado y de decisión xt+1 = gt ( xt , yt ) 7
Formulación del problema l Elementos del problema (ii) l Función de costes l t t ft ( xt , yt ) + ( x. T ) Factor de descuento, t § § l Medida de preferencia por ingresos actuales frente a ingresos futuros Solo es importante para horizontes largos Valor final, ( x. T ) § § Preferencia por que el sistema termine en un estado u otro T , horizonte de planificación 8
Formulación del problema l Problema de programación matemática l Min t t ft ( xt , yt ) + ( x. T ) s. a xt+1 = gt ( xt , yt ) yt Y Se quiere calcular la política óptima l Funciones yt = at ( xt ) que proporcionen el óptimo para el problema anterior § § No solo los valores óptimos de las variables Solución más robusta 9
Principio del Máximo l Cálculo de soluciones l l Demasiado costoso explorar todas las alternativas Seleccionar algunas alternativas: l Principio del máximo l Solo algunas alternativas satisfacen condiciones necesarias para estar en un máximo § § Se estudian distintas partes de la solución Todas ellas deben parecer ser parte del óptimo 10
Principio del Máximo l Variables de estado: l Situación del sistema en cada periodo l l Inventarios, nivel de generación Variables de control: l Decisiones a tomar l Momentos de pedido, tamaños de pedido, cambios en niveles de generación 11
Principio del Máximo l Descripción l l Problema a resolver en un intervalo de tiempo [0, T ] partiendo de x 0 Trayectoria óptima de variables de estado, xt*, t [0, T ] l Propiedad de la trayectoria óptima: l Si empezamos desde xt*, obtenemos la misma trayectoria 12
Principio del Máximo l Consecuencias: l l Construir una trayectoria óptima a partir de partes pequeñas El problema se reduce a una serie de problemas de menor tamaño l Ventajoso si costes de solución crecen más rápido que linealmente Problemas menores: para un periodo único Limitación: l Como xt* no se conoce, probar todos los valores 13
Principio del Máximo l Ilustración x x 0 t T 14
Principio del Máximo l Ilustración x xt ’ xt 1 2 1>2? t t+1 T 15
Principio del Máximo l Aplicación l l l Partimos de la situación en T Para cada estado, coste del estado VT (x ) Para cada periodo de tiempo y cada estado, calculamos: l l acción óptima en t compatible con costes óptimos de t +1 a T 16
Principio del Máximo l Aplicación l Formalmente, calculamos una función de valor Vt ( x ) = miny { ft ( x , y ) + Vt+1(gt ( x , y )) } l para cada valor de x y de t Una vez obtenidos los valores para t = 0 l l Seleccionar valor correspondiente a estado inicial Reconstruir camino de mínimo coste 17
Principio del Máximo Procedimiento de solución l Se calcula el valor de la función VT ( x ) = ( x ) Para el periodo T – 1 se calcula VT-1 ( x ) como 1. 2. VT-1 ( x ) = miny { f. T-1 ( x , y ) + VT (g. T-1 ( x , y )) } l l Para cada valor de x se calcula el valor de f. T-1 ( x , y ) + VT (g. T-1 ( x , y )) para todos los valores de y Se selecciona el menor y se conserva el valor de y(x) que corresponde al mínimo (política óptima) 18
Principio del máximo Procedimiento de solución l 3. Se repite el proceso hasta t = 0 l 4. Se obtiene V 0 ( x 0 ) Se reconstruye la trayectoria óptima a partir de los valores de y(x) l l l Se parte de x 0 y se obtiene y 0 = y(x 0) Se calcula x 1 = g 0 ( x 0 , y 0 ) Se repite el proceso hasta obtener x. T 19
Ejemplo 1 l Gestión de inventarios l l l Estado: nivel de inventario Variables de control: pedidos Objetivo: costes Horizonte de tiempo: 12 periodos Valor final l Valoración inventarios periodo 13 V 13 (I 13 ) = -10 I 13 20
Ejemplo 1 l Aplicación del procedimiento l l Para el periodo 12, V 12 (I ) = min. P {f (I, P ) + V 13(I , P ))} I 13(I , P ) = max (0, I + P - D 12) Cálculo de valores (I = 100, P = 300): I 13 = I + P - D = 100 + 300 - 350 = 50 f (I, P ) = K + c. P + h. I = 100 + 10 300 + 2 100 = 3300 V (I, P ) = f (I, P ) + V (I 13) = 3300 - 500 = 2800 21
Ejemplo 1 l Valores para I = 100, l Valor óptimo para I = 100, V 12 (100) = 2800, si P = 300 ó 400 Valores óptimos l 22
Ejemplo 1 l Repetir proceso para otros periodos l l Cálculos para I = 150, P = 0, t = 11: I 12 =I +P -D = 150 + 0 - 200 = -50, I 12 = 0 f (I, P )= h. I + s. D = 2 150 + 25 50 = 1550 V (I, P )=f (I, P )+V (I 12)=1550+3600=5150 Valor óptimo para I = 150, t = 11: V 11 (150) = 4600, si P = 100 23
Ejemplo 1 l Resultados l Inicio del periodo 7 l ¿Qué sucedería si I 7 = 200? 24
Ejemplo 1 l Solución óptima para I 7 = 200 l Calcular valores a partir del periodo 7 l l Usando el tamaño óptimo de pedido, calcular el inventario en el periodo 8 Repetir hasta el periodo 13 25
Ejemplo 1 l ¿Qué sucedería si I 7 = 50? l l Utilizar la información en tabla óptima Repetir el procedimiento para obtener 26
Ejemplo 2 l Generación de energía eléctrica l Estado: nivel de generación l l Variables de control: cambio de nivel Objetivo: beneficio Horizonte de tiempo: 12 horas Valor final: valoración de nivel de generación V 13(P 13) = 500 si P 13 > 0 0 si P 13 = 0 27
Ejemplo 2 l Cálculos l l Para t = 12, V 12 (P ) = max {f (P , ) + V 13(P, ))} P 13(P , ) = P + , = 0 , 50 Valores para P = 100, = 50: P 13 = P + = 150 f (P, )=p. P - a. P - b. P 2 - c = 61. 6 (P = 125) V (P, )=f (P , )+V (P 13)=61. 6+500=561. 6 28
Ejemplo 2 l Otros cálculos l Para P = 100, Valor óptimo para P = 100, V 12(100) = 565, si = 0 l Valores óptimos l 29
Ejemplo 2 l Resultados l Inicio del periodo 7 § ¿Qué sucede si P 7 = 200? 30
Ejemplo 2 l Solución óptima para P 7 = 200 l De los valores en la tabla óptima l Valores de las variables de control § Código de colores en la tabla 31
Ejemplo 3 l Renovación de equipos l l Coste de compra: 100 Costes de operación: 32
Ejemplo 3 l Encontrar política de renovación óptima l l l Para un horizonte de 6 años Para un horizonte de 7 años Para un horizonte infinito Factor de descuento: 0. 95 Condición inicial: edad del equipo Problema adicional: horizonte infinito 33
Ejemplo 3 l Formulación del problema: l Variable de estado: l l Variable de decisión: l l l Edad del equipo Renovar o no en un periodo dado Costes: operación, compra, valor residual Función de valor: coste total 34
Ejemplo 3 l Solución l Suponiendo un horizonte a 5 años: V 6(e ) = Vr (e ) l Periodo 5: V 5 (e ) = min { Ca - Vr (e ) + Co (1) + V 6(2) , Co (e ) + V 6(e + 1) } 35
Ejemplo 3 l Resultados l Si el equipo tiene una edad de dos años l l l Horizonte a 6 años: Renovar pasados 5 años Horizonte a 7 años: Renovar pasados 4 años ¿Como seleccionar entre ambas opciones? § Resolver con horizonte infinito 36
Horizonte Infinito l Para que el problema tenga solución l l Datos estacionarios Definir y trabajar con coste por periodo l Fórmula de solución l J (x ) = minu {c (u ) + J (y (x , u ))} Procedimientos de solución: l l Iteraciones sucesivas Iteración en políticas 37
Ejemplo 3 l Cálculos para horizonte infinito l l J 0 = 0, Jk+1 = minu {cu + Pu. Jk } J 100 = ( 530 548 567 584 599 610 ) Decisiones: ( NR NR NR R ) Política óptima: l Renovar tras 6 periodos 38
Principio del Máximo l Extensiones: l Datos aleatorios l l Se optimiza el valor esperado Vt (x ) = minu E {ct (ut , wt) + Vt+1(x , ut , wt ))} Tiempo continuo l l Solución directa solo es posible en casos especiales Discretizar el tiempo 39
Programación dinámica l Resumen l l Técnica potente pero compleja Existen herramientas computacionales eficientes l l l Tanto para formulación como para solución Soluciones no son siempre intuitivas Herramientas adaptadas a propiedades del modelo l Programación lineal 40
Ejemplo 4 l Hillier y Lieberman l l l Un estudiante tiene 10 días para preparar los exámenes de 4 cursos Asignar días de estudio a cada curso l Cada día asignado a un único curso l Estimación de mejoras en calificaciones Optimizando la mejora en las calificaciones A B C D 1 2 3 2 4 3 3 4 3 5 4 5 5 4 6 5 6 7 41
Ejemplo 5 l Hillier y Lieberman l Se quiere diseñar un sistema que requiere de cuatro componentes l l l Para mejorar la fiabilidad se pueden instalar varias unidades de cada componente en paralelo Las probabilidades de funcionamiento correcto y los costes se dan en las tablas siguientes El presupuesto disponible es de 1000€ C 1 C 2 C 3 C 4 1 0, 55 0, 6 0, 7 0, 5 2 0, 65 0, 7 0, 8 0, 65 3 0, 85 0, 8 0, 9 0, 8 C 1 C 2 C 3 C 4 1 100 200 2 200 400 300 3 300 500 400 42
Ejemplo 6 l Valoración de opciones l l l Te ofrecen una opción para comprar acciones l Vencimiento en 3 meses l Precio de ejercicio 24€ Estimación del comportamiento de la acción l Promedio de cambio semanal 0, 5€ l Desviación típica 1€ l En realidad estos valores debieran darse sobre las tasas de cambio Valor de la opción en función del valor de la acción 43
Ejemplo 7 l Hillier y Lieberman l Campaña de publicidad l l l 3 etapas: ofertas especiales, anuncios y fidelización Etapa 1: m = 10 x 1 - x 12 Etapa 2: f 2 = 0. 4 + 0. 1 x 2 Etapa 3: f 3 = 0. 6 + 0. 07 x 3 Presupuesto total: 4 M€ Maximizar m f 2 f 3 44
- Slides: 44