200 likes | 544 Views
Restricciones de desigualdad. Prob. con restricciones de desigualdad: min x f ( x ) s.a c ( x ) 0 Condiciones necesarias: c ( x ) 0 f ( x ) + c ( x ) T = 0 0 T c ( x ) =0. 1. Restricciones de desigualdad. Dificultad:
E N D
Restricciones de desigualdad • Prob. con restricciones de desigualdad: minxf (x) s.a c (x) 0 • Condiciones necesarias: c (x) 0 f (x) + c (x)T = 0 0 Tc (x) =0 1
Restricciones de desigualdad • Dificultad: • algunas condiciones son desigualdades • no podemos reducir el problema a un sistema de ecuaciones • Solución: • construir problemas aproximados con restricciones de igualdad 2
Restricciones de desigualdad • Construcción de problemas aproximados: • funciones de barrera: términos en la función objetivo que se comportan como restricción • impiden tomar valores fuera de la región factible, y • no afectan a los valores en la región factible 3
16 14 12 x 1 10 8 x2 - log(x - 1) 6 4 2 f (x ) = x2 0 0 0.5 1 1.5 2 2.5 3 3.5 4 Restricciones de desigualdad • Ejemplo: minx x 2 s.a x 1 4
Restricciones de desigualdad • Paso 1. Convertir restricciones: minxf (x) minx,sf (x) s.a c (x) 0 s.a c (x) - s= 0 s 0 • Paso 2. Llevar restricciones a la función objetivo minxf (x) - ilog si s.a c (x) - s= 0 5
Restricciones de desigualdad • Resultado teórico: • Sea x* () la solución del problema minxf (x) - ilog si s.a c (x) - s= 0 , se cumple que lim0x* () = x*, donde x* es la solución de minxf (x) s.a c (x) 0 6
Restricciones de desigualdad • Solución del problema modificado: • Paso 1. Seleccionar un valor inicial para , por ejemplo, 1 = 1 • Paso 2. Tomando como valor inicial x0 = x* (s-1) , resolver el problema minxf (x ) - s ilog si s.a c (x ) - s= 0 7
Restricciones de desigualdad • Paso 3. Reducir el valor de , por ejemplo, s+1 = 0.1s y volver al paso 2. • El proceso se repite hasta que es del orden del error deseado en la solución • Por ejemplo, = 10-5 8
Restricciones de desigualdad • Precauciones con la función objetivo • La función objetivo solo está definida para valores positivos de las variables si • El punto inicial ha de tener s estrictamente positivo • La longitud de paso debe asegurar que todos los puntos tengan las si positivas 9
Restricciones de desigualdad • Cálculo de la longitud de paso • Queremos que el nuevo punto siga siendo positivo S(k+1) = s(k) + k pk > 0 mini {(s(k))i + k (pk)i} > 0 • Condición equivalente: k < min{ si /(-pi ) pi < 0 } k = min{ 1 , 0.99 } • En caso de tener la restricción x 0, también se aplica esto a las xi 10
Restricciones de desigualdad • Ejemplo: optimización de cartera minxxTRx s.a mTx 3.5 eTx = 1 x 0 • Datos: 1 1.64 25.9 55.6 e = , m = , R = 1 4.60 55.6 248 11
Restricciones de desigualdad • Problema modificado: • Problema en forma estándar minx,sxTR x s.a mTx - s = 3.5 eTx = 1 x , s 0 • Problema con restricciones de desigualdad minx,sxTR x - (i log xi + log s ) s.a mTx - s = 3.5 eTx = 1 12
Restricciones de desigualdad • Paso 0. Sean x0 = [0.5 0.5]T , 0 = [0 0]T • Tomamos 0 = 0.1 • ¿Valor de s0? Positivo Por ejemplo, s0 = 0.5 > 0 • Paso 1.1. ¿Es solución? c (x0) = [-0.88 0]T f (x0) + c (x0)T0 = [81.3 303.4 -0.2]T 13
Restricciones de desigualdad • Paso 1.2. Dirección de movimiento 2L (x0,0) c (x0)Td0 f (x0) - c (x0)T0 = - c (x0) 0 0c (x0) 52.2 111.2 0 1.64 1 81.3 111.2 496.4 0 4.6 1 d0 303.4 0 0 -0.2 -1 0 = — -0.2 1.64 4.6 -1 0 0 0 -0.88 1 1 0 0 0 0 d0 = [0.6687 -0.6687 -2.8593]T , 0 = [-1.3437 -39.6443]T 14
Restricciones de desigualdad • Paso 1.3. Cálculo de la longitud de paso m (x ) = f (x ) + c (x) , m (x0) = 105.2829 m (x0) = f (x0) + c (x0)Tc (x0) / c (x0) • = [64.9 257.4 9.8] ’(0) = m (x0)Td0 = -156.7414 < 0 • Si probamos con = 1, x0 + d0 = [1.1687 -0.1687 -2.3593]T La función objetivo no está definida 15
Restricciones de desigualdad • Paso 1.3. Cálculo de la longitud de paso • Mayor paso admisible: = min{xi /(-pi )| pi < 0} = min{0.5/0.6687 , 0.5/2.8593} = 0.1749 = min{1 , 0.995} 0.1731 • Comprobación de la condición: m (x0 ) = 105.2829 , m (x0 + p0) = 80.6952 m (x0 ) + m (x0 )Tp0 = 102.5694 > m (x0 + p0) • Aceptamos el paso 16
Restricciones de desigualdad • Paso 1.4. Nuevo punto: x1 = x0 + p0 = [0.6158 0.3842 0.0050]T 1 = 0 + 0 = [-0.2326 -6.8632]T • Paso 2.1. ¿Es solución? c (x1) = [-0.7277 0]T f (x1) + c (x1)T1 = [67.2166 250.9592 -19.7674]T 17
Restricciones de desigualdad • Programación lineal: minxcTx s.a Ax= b x 0 • Transformar el problema: minxcTx - s ilog xi s.a Ax= b • Aplicar el método de Newton • Actualizar s 18
EJERCICIO • Ejercicio optimización con restricciones. x1 • Problema: min f (x ) (1+x12)(1+x22) s.a x12 + x22 <= 0.8 x >= 0 • Punto inicial: x0 = [ -0.6 -0.3 ]T , 0 = 0
Resultados: ite f || c || || L(x, )|| 0 0.4656 0.2200 0.4859 1 0.4776 0.2180 0.4785 2 0.4922 0.2163 0.4726 3 0.4966 0.2158 0.4717 4 …. La convergencia es lenta.