OPTIMIZACIÓN Y SIMULACIÓN PARA LA EMPRESA Tema 4 Optimización no Lineal ORGANIZACIÓN DEL TEMA • Sesiones: • El caso sin restricciones: formulación, ejemplos • Condiciones de optimalidad, métodos • Caso con restricciones: ejemplo, condiciones de optimalidad, solución PROBLEMAS SIN RESTRICCIONES • Función objetivo no lineal, pero sin restricciones en las variables, minx f(x) • Soluciones locales: no se pueden mejorar en entorno de solución • Soluciones globales: las mejores de todas las soluciones locales OPTIMIZACIÓN SIN RESTRICCIONES • Escenario ideal: conseguir una solución global • • En general, no resulta posible calcular una solución local en tiempos razonables Dos alternativas: • Conformarnos con una solución local rápida • Intentar conseguir la solución global con un heurístico (aproximación) • • En general, los solvers eficientes de optimización encuentran soluciones locales • • Si la dimensión del problema es moderada, se puede intentar buscar una solución global de forma determinista En algunos casos también encuentran soluciones globales: Convexidad: soluciones locales = soluciones globales OPTIMIZACIÓN SIN RESTRICCIONES • Algunos solvers avanzados usan heurísticos para intentar conseguir soluciones globales, bajo condiciones generales • • Sin exigir diferenciabilidad, convexidad, etc. En la práctica: • Si maximizamos y la función objetivo es cóncava, se puede conseguir el óptimo en un tiempo razonable • Si minimizamos y la función objetivo es convexa, se puede conseguir el óptimo en un tiempo razonable EJEMPLO 1: MARKETING EN MÓVILES • Descripción: • • Una compañía quiere vender un nuevo móvil de gama alta capaz de competir en el mercado actual • Ha invertido un millón de euros para diseñar y desarrollar el producto • El éxito final dependerá de la inversión que se haga en marketing y del precio final del móvil en el mercado Dos decisiones importantes: • a : cantidad a invertir en la campaña de marketing • p : precio de venta al público del móvil EJEMPLO 1: MARKETING EN MÓVILES • Descripción: • El departamento de marketing estima las ventas del móvil en el próximo año como: • • El coste de producción del móvil es 100 euros/unidad ¿Cómo puede la compañía incrementar su beneficio el próximo año con la venta del nuevo móvil? EJEMPLO 1: MARKETING EN MÓVILES • Modelo: • Beneficios por ventas: • Coste de producción total: • Coste de diseño y desarrollo: • Costes de marketing: • Beneficio total: EJEMPLO 1: MARKETING EN MÓVILES • ¿Estrategia óptima? • • • • Maximizar beneficio ¿Restricciones? • Las variables han de ser no negativas • ¿Es necesario incluir estas restricciones? Solución inicial: • ¿Qué ocurre si los valores iniciales son negativos? • ¿Qué ocurre si son positivos y grandes? • ¿Y si son positivos y pequeños? ¿El problema es convexo? • ¿El problema tiene varias soluciones locales? • ¿Podemos conseguir la solución global? EJEMPLO 2: AJUSTE DE DATOS • Problemas de regresión • Como ajustar un modelo a un conjunto dado de datos • Distintos procedimientos en función de criterio de ajuste • Mínimos cuadrados: • Mínimos cuadrados no lineales: • Mínima desviación absoluta: EJEMPLO 2: AJUSTE DE DATOS • Modelo concreto: regresión logística o exponencial • • Analizar relación entre tasa de crecimiento de una persona y su edad • Esta relación es no lineal • El crecimiento es alto en los primeros años y luego estable Posible modelo tasa = 0 + 1 exp( log(tasa) = 0 + 1 edad + error 2 edad) + error CONDICIONES DE OPTIMALIDAD (SIN RESTRICCIONES) • Cuando resolvemos problemas prácticos: • Hay veces que no logramos encontrar una solución • • Incluso aunque encontremos una solución, puede ser de poca ayuda para obtener mejores soluciones • • Necesitamos buenos puntos iniciales (que pueden ser decisiones actuales) Intentar resolver el problema con muchos puntos iniciales ¿Cómo podemos obtener mejor información sobre las soluciones? • Propiedades teóricas • Analizar las condiciones que se satisfacen en la solución • Chequear si realmente se satisfacen • O usarlas para encontrar candidatos a solución CONDICIONES DE OPTIMALIDAD (SIN RESTRICCIONES) • Problema de optimización sin restricciones: • Si queremos maximizar, entonces • Un punto (decisión), x*, es solución local, si no hay una mejor solución cerca • Un punto (decisión), x*, es solución global, si es la mejor en general CONDICIONES DE OPTIMALIDAD (SIN RESTRICCIONES) • Condiciones necesarias • Caso univariante: • Caso multivariante • Condiciones de primer orden: • • Si x* es un mínimo local, entonces Condiciones de segundo orden: • Si x* es un mínimo local, entonces CONDICIONES DE OPTIMALIDAD (SIN RESTRICCIONES) • Condiciones suficientes • Caso univariante: • Caso multivariante • Si se satisfacen las siguientes condiciones en x*, entonces es un mínimo local: CONDICIONES DE OPTIMALIDAD (SIN RESTRICCIONES) • Ejemplo • Para el siguiente problema sin restricciones: • Condiciones necesarias: • Existen dos puntos estacionarios (candidatos a mínimo): CONDICIONES DE OPTIMALIDAD (SIN RESTRICCIONES) • Ejemplo • Condición suficiente: • Por tanto: • • 2 ∇ f(xb) es definida positiva 2 xb mínimo local ∇ f(xa) es indefinida, por lo que xa no es ni mínimo ni máximo local EJEMPLO 1: MARKETING EN MÓVILES • Compañía que desea comercializar nuevo móvil de última generación • Modelo de optimización: • Condiciones de primer orden: • • Una solución: a = 106003.245 , p = 230.233 Condición de segundo orden: matriz hessiana CONDICIONES DE OPTIMALIDAD • ¿Qué ocurre si un mínimo no satisface las condiciones suficientes? 2 • Para todas estas funciones, ∇f(0) = ∇ f(0) = 0 • Por tanto, x = 0 es candidato a óptimo en los tres casos • • Pero f2 tiene un mínimo local en x = 0 • f1 tiene un punto de silla en 0 • f3 tiene un máximo local en 0 Este tipo de puntos se llaman estacionarios o singulares CONDICIONES DE OPTIMALIDAD • Resumen • Un punto es estacionario si ∇f(x*) = 0 • Para estos puntos: • • • • 2 ∇ f(x*) ≻ 0 2 ∇ f(x*) ≺ 0 2 mínimo máximo ∇ f(x*) indefinida 2 ∇ f(x*) singular punto de silla cualquier caso MÉTODO DE NEWTON • Cómo calcular una solución local: • La mayoría de algoritmos son iterativos y de descenso en la f.o. x 0 , x1 , x2 , . . . tales que f (xk+1 ) < f (xk ), k = 0, 1, 2, . . . • El paso importante es calcular la dirección de movimiento, pk , que nos lleva de xk a xk+1 • Método de Newton. Las iteraciones son: PROBLEMAS CON RESTRICCIONES • Ahora el problema es • Tanto la función objetivo como las restricciones pueden ser funciones no lineales • Ahora las soluciones pueden tener propiedades distintas (respecto al caso sin restricciones) • Solución local: mejor solución en un entorno dentro de la región factible • Solución global: la mejor solución de la región factible PROBLEMAS CON RESTRICCIONES • Propiedades de la solución: • Diferencias respecto al caso sin restricciones • • Diferencias respecto a PL • • Identificar las restricciones activas en la solución es tan importante como mejorar el objetivo Las soluciones no tienen por qué estar en vértices Cómo encontrar un óptimo local • Transformar el problema en uno sin restricciones (o solo restricciones de igualdad) • Encontrar las restricciones activas en la solución • Métodos eficientes basados en ensayo-error PROBLEMAS CON RESTRICCIONES • Dificultades prácticas: • Soluciones locales • • Si el problema no es convexo, la solución encontrada será probablemente local • Difícil de comprobar formalmente • Heurístico: ejecutar el método con muchos puntos iniciales Problemas mal condicionados • En algunos casos, el objetivo o restricciones pueden no estar bien definidos siempre (raíz cuadrada, logaritmos, etc.) • Podríamos añadir restricciones para evitar esos puntos, pero el algoritmo podría generar puntos infactibles en esa región • Heurístico: empezar cerca de la solución EJEMPLO 1: OPTIMIZACIÓN DE CARTERAS • Descripción: • Tenemos n activos donde invertir una cierta cantidad de dinero • Sin pérdida de generalidad, esta cantidad es 1 • La variable (aleatoria) Ri representa la rentabilidad (futura) en cada activo • El objetivo es encontrar los pesos xi que definen la inversión en cada activo • Para maximizar la rentabilidad total (a un periodo vista) • Y para minimizar el riesgo de la inversión EJEMPLO 1: OPTIMIZACIÓN DE CARTERAS • Modelo: • Queremos resolver: • ¿Pero está bien definido ese problema? • Versión bien definida: • ¿Pero es razonable? EJEMPLO 1: OPTIMIZACIÓN DE CARTERAS • Versión más razonable (modelo de Markowitz): donde S = Var(R) y γ coeficiente aversión al riesgo • Este modelo permite el cálculo de la frontera eficiente (estrategias que, dada una rentabilidad, minimizan la varianza o riesgo) • Es un problema cuadrático EJEMPLO 1: OPTIMIZACIÓN DE CARTERAS • Otro modelo razonable: donde VaRβ es el Valor en Riesgo (percentil) correspondiente a un nivel dado 0 ≤ β ≤ 1 • Es un problema no lineal y no convexo • ¿Cómo calcular la solución? • Necesitamos algoritmos de optimización con restricciones CASO CON RESTRICCIONES: CONDICIONES DE OPTIMALIDAD • Queremos buscar soluciones para: • Usaremos las condiciones de optimalidad para obtener información adicional • Condiciones de optimalidad rx f (x⇤ ) cI (x⇤ ) • rx c(x⇤ ) ⇤ cI (x⇤ )T ⇤ I ⇤ I =0 estacionariedad 0 y cE (x⇤ ) = 0 factibilidad =0 complementariedad 0 signo de multiplicadores Diremos que un punto x* es estacionario si satisface estas condiciones para algún vector λ* CASO CON RESTRICCIONES: CONDICIONES DE OPTIMALIDAD • Las condiciones anteriores son necesarias, pero no suficientes • Condiciones de optimalidad de primer orden (sin derivadas segundas) • • • El vector λ se conoce como el vector de multiplicadores de Lagrange Parte de las condiciones de Karush-Kuhn-Tucker (KKT) Condiciones de segundo orden: L(x, ) ⌘ f (x) Z X j cj (x) j matriz con columnas que forman una base de {d : rĉ(x)d = 0} donde ĉ denota las restricciones activas, ĉ(x) = 0 Z T r2xx L(x, )Z ⌫ 0 CASO CON RESTRICCIONES: CONDICIONES DE OPTIMALIDAD • Ejemplo: • Comprobar que el punto (1,0) satisface las condiciones necesarias CASO CON RESTRICCIONES: CONDICIONES DE OPTIMALIDAD • El vector de multiplicadores λ* = (3/4,1/4,0,0) satisface