Upload
victor-rey-belmonte
View
217
Download
1
Embed Size (px)
Citation preview
Sabemos reconocerlas, ycalcularlas como soluciones de sistemas de ecuaciones, o de desigualdades
Buscamos métodos de cálculo generales y eficientes
Problemas de optimizaciónSoluciones
1
Métodos iterativos: No existen métodos directos generales Se parte de un valor x0, y se genera una
sucesión { xk }k=0 con la propiedad de que
limk xk x*
y x* cumpla algunas condiciones de extremo
Soluciones de problemas de optimización
2
Consideremos el problema minx f (x )
Buscaremos un punto que cumplaf (x* ) = 0
Si xk no cumple la condición, se genera otro punto a partir de
f (xk+p ) = 0
Problema sin restricciones
3
Problema sin restricciones
Problema tan difícil como el originalPuede aproximarse: Encontrar la solución de
f (xk ) + 2f (xk )p = 0 o resolver
minp f (xk )Tp + ½pT 2f (xk )p
4
Problema sin restricciones
Interpretación gráfica del problema de optimización aproximado
5
Problemas sin restricciones
Método de Newton básico:1) Partir de un valor inicial x0
2) Comprobar si f (xk ) <
3) Si no lo es, calcular un vector p a partir de2f (xk )p = - f (xk )
4) Obtener el siguiente punto como xk+1=xk
+pk
6
Problema sin restricciones
Ejemplo: x1min f (x )
(1+x12) (1+x2
2)
Punto inicial:x0 = [ -0.4 0.3 ]T
Solución:x * = [ -1 0 ]T
7
Problema sin restricciones
Método de Newton:2.1) Gradiente:f (x0 ) = [0.573 0.174]T, f (x0 ) =
0.5993.1) Dirección de movimiento: 1.335 -0.315 0.573 H0p0 = -g0 , p0 = - -0.315 0.485 0.174 -0.607 p0 = -0.754
8
Problema sin restricciones
4.1) Nuevo punto: x1 = x0 + p0 = [-1.007 -0.454]T
2.2) Gradiente:f (x1) = [-0.003 -0.312]T, f (x1) = 0.312
3.2) Dirección de movimiento: 0.406 -0.002 -0.003 0.011 p1 = - , p1 = -0.002 0.452 -0.312 0.6904.2) Nuevo punto: x2 = x1 + p1 = [-0.996 0.236]T
9
Problema sin restricciones
2.3) Gradiente:f (x2) = [0.002 0.212]T, f (x2) = 0.2123.3) Dirección de movimiento: 0.479 -0.001 -0.002 -0.004 p2 = - , p2 = -0.001 0.802 -0.212 -0.2644.3) N. punto: x3 = x2 + p2 = [-1.000 -0.028]T
2.4) Gradiente:f (x3) = [-0.000 -0.028]T, f (x3) =
0.028
10
Problema sin restricciones
Dificultades del método de Newton: No convergencia:
porque tiende a infinito, o
porque no existe solución del sistema de
ecuaciones
Convergencia a máximos o puntos de
silla
11
Problema sin restricciones
Procedimiento para converger a
mínimos: emplear segundas derivadas
direcciones de curvatura negativa
forzar el decrecimiento de la función objetivo cerca de puntos de silla o máximos
modelos cuadráticos convexos relacionados
12
Problema sin restricciones
Procedimiento usual: descenso obligado
En cada iteración se definexk+1 = xk + k pk
y se fuerza a que se cumpla:f (xk )Tpk < 0
f (xk + k pk ) - f (xk ) kf (xk )Tpk
[ 10-4 , 0.1 ]
13
Problema sin restricciones
Cambios en el cálculo de p. Hace falta: Asegurar que existe solución del sistema,
y garantizar que es dirección de descenso,
f (xk )Tpk < 0
Para ello bastaría con que2f (xk ) d.p.
14
Problema sin restricciones
Método de Newton modificado. Se resuelve el sistema de ecuaciones
Mk pk = - f (xk )
donde Mk cumple que Es definida positiva, y se parece todo lo posible a 2f (xk )
15
Problema sin restricciones
Construcción de la matriz Mk
Añadir un múltiplo de la identidad:
Mk = 2f (xk ) + I
- min(0 , min (2f (xk )) - ) Todos los autovalores se modifican en la
cantidad
16
Problema sin restricciones
Construcción de la matriz Mk
Cambiar los autovalores de la matriz:
2f (xk ) = UUT,
Mk = UUT, i = max( , i ) se conservan los autovectores
Otros métodos: Choleski modificado, etc.
17
Problema sin restricciones
x1Ejemplo: f (x ) (1+x1)2 (1+x2)2
-1.29 0.24x0 = [ 0.5 -0.3 ]T, 2f (x0 ) = 0.24 -0.56
(2f (x0 )) = [ -1.36 -0.49 ]
Matriz definida negativa
18
Problema sin restricciones
Ejemplo: 0.08 0.24 Mk = Hk + I = Hk + 1.37I = 0.24 0.81 0.96 0.29 -1.36 0.96 -0.29 Hk = -0.29 0.96 -0.49 0.29 0.96 0.96 0.29 -1.36 0.96 -0.29 1.29 -
0.24Mk = = -0.29 0.96 -0.49 0.29 0.96 -0.24
0.56
19
Problema sin restricciones
Estos cambios no son suficientes Posibilidad de diverger (converger a
infinito) Posibilidad de ciclos
Asegurar descenso en cada iteración Búsqueda lineal:
xk+1 = xk + k pk , k (0,1]
20
Problema sin restricciones
Cálculo de k
Objetivo: en cada iteración el valor de f (xk) debe decrecer suficientemente.
Condición:
f (xk + k pk ) f (xk ) + kf (xk )Tpk
Parámetro k (0,1) . En la práctica
[ 10-4 , 0.1 ]
21
Problema sin restricciones
Procedimiento de cálculo de k
Búsqueda hacia atrás: Se prueba con k = 1 Si se cumple la condición, se acepta el valor Si no, se prueba con k /2
Otros métodos: ajuste polinómico, etc.
22
Problema sin restricciones
Ejemplo de cálculo de k Tenemos los datos siguientes:
x1 f (x ) = , x0 = [-0.5 -0.3]T, p0 = [-2 1]T
(1+x12) (1+x2
2)
Información necesaria:
f (x0 ) = -0.37 , f (x0 ) = [ 0.44 -0.20 ]T
f (x0 )Tp0 = -1.08 , = 0.1
23
Problema sin restricciones
Iteración 1. = 1f (x0 + p0) = -0.231 , f (x0 ) + f (x0 )Tp0 = -0.48
Iteración 2. = 0.5f (x0 + p0) = -0.444 , f (x0 ) + f (x0 )Tp0 = -0.43 Aceptamos = 0.5
x1 = x0 + 0.5p0 = [ -1.5 0.2 ]T
24
Problema sin restricciones
x1Ejemplo: f (x ) (1+x1
2) (1+x22)
x0 = [ 0.5 -0.3 ]T
Iteración 1.1 ¿Es el punto actual solución?
f (x0 ) = [0.440 0.202]T, f (x0 ) = 0.4845
25
Problemas sin restricciones
Iteración 1.2. Dirección de movimiento -1.29 0.24 1.29 -0.24 H0 = , M0 = 0.24 -0.56 -0.24 0.56
M0 p0 = - g0 p0 = [ -0.444 -0.551 ]T
Iteración 1.3. Cálculo de la longitud de pasof (x0 ) = 0.367, f (x0 )Tp0 = -0.307, f (x0 + p0 ) = 0.032
f (x0 ) + f (x0 )Tp0 = 0.336 > f (x0 + p0 ) 0 = 1
26
Problema sin restricciones Iteración 1.4. Nuevo punto
x1 = x0 + 0 p0 ,
x1 = [0.5 -0.3]T + [-0.444 -0.551]T = [0.056 -0.851]T
Iteración 2.1 ¿Es solución el último punto?f (x1 ) = [0.575 0.032]T, f (x1 ) = 0.576
Iteración 2.2. Dirección de movimiento -0.19 0.57 0.59 -0.10 H1 = , M1 = 0.57 -0.06 -0.10 0.56
M1p1 = - g1 p1 = [ -1.011 -0.234 ]T
27
Problema sin restricciones
Iteración 2.3. Longitud de pasof (x1 ) = 0.032, f (x1 )Tp1 = -0.589, f (x1 + p1 ) = -
0.230f (x1 ) + f (x1 )Tp1 = -0.027 > f (x1 + p1 ) 1 = 1 Iteración 2.4. Nuevo punto
x2 = x1 + 1 p1 ,
x2 = [0.06 -0.85]T + [-1.01 -0.23]T = [-0.95 -1.08]T
28
Problema sin restricciones
Método de Newton modificado. Maximización Paso 0. Determinar un punto inicial, x0
Paso 1. Comprobar si xk es solución
f (xk ) < Paso 2. Calcular la dirección de movimiento
Paso 2.1. Calcular los valores propios de
Hk = 2f (xk ) Paso 2.2. Si Hk es definida negativa, Mk = Hk
si no, Mk = Hk - , por ejemplo
29
Problema sin restricciones
Paso 2.3. Resolver el sistema de ecuaciones
Mk pk = - f (xk ) Paso 3. Calcular la longitud de paso
Paso 3.1. Para = 1 comprobar si se cumple
f (xk + k pk ) f (xk) + kf (xk )Tpk
Paso 3.2. Si no se cumple, probar con hasta que se cumpla.
Paso 4. Calcular el nuevo punto
xk+1 = xk + k pk
30
Problema sin restricciones
Convergencia del método de Newton ¿Converge la sucesión { xk } ? ¿Qué propiedades tienen sus límites?
limkxk
La sucesión puede divergir si: Función objetivo no acotada inferiormente Función objetivo decrece monótonamente
31
Problema sin restricciones
Condición habitual de acotación El conjunto S0 es compacto
S0 = { y : f (y ) f (x0 ) } Todos los puntos xk pertenecen a S0
Existen subsucesiones convergentes
Propiedades de los puntos límite No podemos asegurar que sean
mínimos
32
Problema sin restricciones
Propiedades de puntos límite Al menos, debiéramos esperar que
cumplan
f (x* ) = 0 Demostración de convergencia
De la condición sobre
f (xk + k pk ) f (xk ) + kf (xk )Tpk
en el límite kf (xk )Tpk 0
33
Problema sin restricciones
Demostración de convergencia (ii) Definición de pk y propiedades de Mk
Mk pk = - f (xk ) f (xk )Tpk = - f (xk )TMk-1f
(xk )
f (xk )Tpk - f (xk ) 2
De la condición anterior tenemosk f (xk ) 2 0
34
Problema sin restricciones
Demostración de convergencia (iii) La longitud de paso k no puede ir a cero
Desarrollo en serie de Taylor
0 (k ) - (0) - k ’ (0) =
(1-)k ’ (0) + ½k2’” (0) + o(k
2)
k - ((1-)k ’ (0) + o(k ))/(½’” (0))
Por tanto, f (xk ) 0
35
Restricciones de igualdad
Problema con restricciones de igualdad:
minx f (x )
s.a c (x ) = 0
Condiciones necesarias:
c (x ) = 0
f (x ) - c (x )T = 0
36
Restricciones de igualdad
Problema similar al caso sin restricciones Resolución de un sistema de ecuaciones
no lineales Sistema en x y
Aproximación del sistema mediante sistemas de ecuaciones lineales
O bien, aproximación mediante soluciones de problemas de optimización cuadráticos
37
Restricciones de igualdad
Dado un punto (xk ,k ) aproximación a las condiciones necesarias:
c (xk ) + c (xk )pk = 0
f (xk ) + 2L (xk ,k )pk - c (xk )Tk - c (xk )Tk = 0
o bien (sistema KKT ), 2L (xk ,k ) c (xk )T pk L (xk ,k ) = - c (xk ) 0 - k c (xk )
38
Restricciones de igualdad
Método de Newton básico: Paso 0. Se parte de un punto (x0 , 0 ) Paso 1. Se comprueba si es solución,
c (xk ) + f (xk ) - c (xk )Tk < Paso 2. Se resuelve el sistema lineal
(KKT ) para calcular (pk , k ) Paso 3. Se actualizan las variables
xk+1 = xk + pk , k+1 = k + k
39
Restricciones de igualdad
El sistema (KKT ) se puede reescribir como
Ak AkTpY = - ck
ZkTHk ZkpZ = - Zk
T gk - ZkTHk Ak
TpY
pk = ZkpZ + AkTpY
AkTk = gk + Hkpk - Ak
Tk
dondeHk 2L (xk ,k ), Ak c (xk ), gk f (xk ), ck c (xk )
40
Restricciones de igualdad
Modificación de dirección de movimiento Mejorar la función objetivo, y Cumplimiento de las restricciones
No es posible siempre mejorar ambas Por ejemplo:
Punto inicial: mínimo sin restricciones Siempre es posible cumplir las restricciones Prioridades:
1. Cumplir las restricciones2. Mejorar la función objetivo
41
42
Restricciones de igualdad
Comportamiento respecto a restricciones Definimos una medida de mejora (x ) :
(x ) c (x ) 2 , (x ) = 2 c (x )Tc (x )
Ak pk = - ck kTpk = - 2 ck 2
p siempre dirección de descenso de restricciones
Comportamiento respecto a función objetivo Modificar p en lo que respecta a mejorar f Sin afectar a la mejora de (x )
Restricciones de igualdad
Separar las componentes de p : Componentes mejora de las restricciones:
Movimiento normal a restricciones: c (xk)TpY
Componentes mejora de la función objetivo: Movimiento tangente a las restricciones: Zk pZ
Método de Newton modificado: Matriz Zk
THkZk debiera ser definida positiva Objetivo: descenso en el valor de la función
objetivo
43
44
Restricciones de igualdad
Efecto de la modificación de ZkTHkZk :
Sistema a resolver:Ak Ak
TpY = - ck
Mk pZ = - ZkT gk - Zk
THk AkTpY
pk = ZkpZ + AkTpY
Descenso en la función objetivo:gk
Tpk = gkTZkpZ + gk
TAkTpY = -pZ
TMk pZ -pZTZk
THk AkTpY
+ gkTAk
TpY Descenso si ck = 0
Restricciones de igualdad
Búsqueda lineal: punto siguiente dado por
xk+1 = xk + k pk
k+1 = k + k k
Para calcular k hace falta una medida de progreso a la solución
Progreso a la solución: Reducción en el valor de f, y mejora en cumplimiento de restricciones
45
Restricciones de igualdad
Medida de cumplimiento de restricciones:
c (x ) Idealmente, descenso en f y mejora en c Si no se dan ambas condiciones, por ejemplo
c (xk +1) > c (xk ) , f (xk +1 ) < f (xk ) Se busca un compromiso entre ambas
46
Restricciones de igualdad
Compromiso más simple: sumar valores Inconveniente: cambios de escala
Se añade un parámetro para corregir escala Función de penalización exacta:
mE (x ) = f (x ) + c (x ) Propiedad importante:
Mínimo de mE debe ser mínimo del problema
47
Restricciones de igualdad
Propiedad teórica (penalización exacta): Existe un valor tal que para todo la
función mE tiene un mínimo en el mínimo del problema de optimización
Valor de , para * multiplicador en la solución = *
Inconveniente: la función mE no es diferenciable en todos los puntos
48
Restricciones de igualdad
Funciones diferenciables Alternativa: la función lagrangiana tiene
primera derivada igual a cero en la solución La condición de segundo orden no se cumple Se añade término de penalización cuadrático
mA (x,) = f (x ) - Tc (x ) + ½ c (x ) 2
Propiedad: existe tal que los mínimos de mA y el problema coinciden
49
Restricciones de igualdad
Función de mérito: Medida de compromiso entre f y c cuyo
mínimo sea solución del problema Combinación de valores de f y c o sus
derivadas Ejemplos: mE , mA , otras
50
Restricciones de igualdad
Utilización de la función de mérito Se selecciona una al inicio del problema Se determina el valor de k para asegurar
descenso suficiente en la función de mérito Ejemplos: mE (xk + k pk ) mE (xk ) + kmE (xk )Tpk
mA (xk+k pk ,k+k k ) mA (xk ,k )
+ kx mA (xk ,k )Tpk + kmA (xk ,k )T k
51
Restricciones de igualdad
x1Ejemplo: min f (x ) (1+x1)2 (1+x2)2
s.a x12 + x2
2 = 0.8
Punto inicial:
x0 = [ -0.6 -0.3 ]T , 0 = 0 Paso 1.1. ¿Es solución?c (x0) = -0.35, f (x0) - c (x0)T0 = [0.317 -
0.223]T
52
Restricciones de igualdad
Paso 1.2. Cálculo de la dirección de movimiento 2L0 A0
T p0 L0
= - A0 0 -0 c0
1.115 0.175 -1.2 0.317 p0 -0.471 0.175 0.620 -0.6 = - -0.223 , p0 = -0 0.360 -1.2 -0.6 0 -0.350 0 = 0.137
53
Restricciones de igualdad
Paso 1.3. Cálculo de la longitud de pasoFunción de mérito: penalización exacta
mE (x0 + p0) = f (x0 + p0) + c (x0 + p0) = ( )Búsqueda lineal: encontrar tal que ( ) (0) + ’(0), = 0.1 ( = 10)Valores previos:
(0) = 3.005, ’(0) = g0Tp0 + c0
TA0 p0 /c0 = -3.730
Búsqueda: = 1, ( ) = 3.019, (0) + ’(0) = 2.632 = 0.5, ( ) = 0.386, (0) + ’(0) = 2.909
54
Restricciones de igualdad
Paso 1.4. Cálculo del nuevo puntox1 = x0 + 0.5p0 = [-0.836 -0.120]T, 1 = 0 + 0.50 = 0.069 Paso 2.1. ¿Es solución?
c (x1) = -0.087, f (x1) - c (x1)T1 = [0.218 -0.099]T
Paso 2.2. Dirección de movimiento 0.637 0.024 -1.672 0.218 p1 -0.075 0.024 0.792 -0.240 = - -0.099 , p1 = -1 0.158 -1.672 -0.240 0 -0.087 1 = - 0.104
55
Restricciones de igualdad
Paso 2.3. Longitud de paso ( ) = f (x0 + p0) + c (x0 + p0)
( ) (0) + ’(0), = 0.1 ( = 10) (0) = 0.386, ’(0) = g1
Tp1 + c1TA1p1/c1 = -0.113
Búsqueda: = 1, ( ) = -0.497, (0) + ’(0) = 0.375
Paso 2.4. Nuevo punto x2 = x1 + p1 = [-0.911 -0.038]T, 2 = 1 + 1 = -0.035
56
Restricciones de desigualdad
Prob. con restricciones de desigualdad:minx f (x )
s.a c (x ) 0
Condiciones necesarias:c (x ) = 0
f (x ) - c (x )T = 0 0
Tc (x ) =0
57
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
58
Restricciones de desigualdad
Construcción de problemas aproximados: Funciones de mérito: no son eficientes
Necesidad de ajustar parámetros 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
59
Restricciones de desigualdad
Ejemplo: minx x 2
s.a x 1
00 0.50.5 11 1.51.5 22 2.52.5 33 3.53.5 4400
22
44
66
88
1010
1212
1414
1616
ff ( (xx ) = ) = xx 22
xx 22 - log( - log(xx - 1) - 1)
xx 1 1
60
Restricciones de desigualdad
Paso 1. Convertir restricciones: minx f (x ) minx,s f (x )
s.a c (x ) 0 s.a c (x ) - s = 0
s 0 Paso 2. Llevar restricciones a la función
objetivo
minx f (x ) - i log si
s.a c (x ) - s = 0
61
Restricciones de desigualdad
Resultado teórico: Sea x* ( ) la solución del problema
minx f (x ) - i log si
s.a c (x ) - s = 0 ,
se cumple que lim0 x* ( ) = x*, donde x* es la solución de
minx f (x )
s.a c (x ) 0
62
Restricciones de desigualdad
Solución del problema modificado: Paso 1. Seleccionar un valor inicial para , por ejemplo, 1 = 1
Paso 2. Tomando como valor inicialx0 = x* (s-1) ,
resolver el problema minx f (x ) - s i log si
s.a c (x ) - s = 0
63
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
64
Restricciones de desigualdad
Precauciones con la función objetivo La función objetivo solo está definida
para valores positivos de las variables El punto inicial ha de ser estrictamente
positivo La longitud de paso debe asegurar que
todos los puntos sean positivos
65
Restricciones de desigualdad
Cálculo de la longitud de paso Queremos que el nuevo punto siga siendo
positivo
xk+1 = xk + k pk > 0 mini {(xk)i + k (pk)i} > 0 Condición equivalente:
k < min{ xi /(-pi ) pi < 0 }
k = min{ 1 , 0.99 }
66
Restricciones de desigualdad
Ejemplo: optimización de cartera minx xTRx 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
67
Restricciones de desigualdad
Problema modificado: Problema en forma estándar
minx,s xTR x s.a mTx - s = 3.5 eTx = 1 x , s 0
Problema con restricciones de desigualdad
minx,s xTR x - (i log xi + log s ) s.a mTx - s = 3.5 eTx = 1
68
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
69
Restricciones de desigualdad
Paso 1.2. Dirección de movimiento 2L (x0,0) c (x0)T p0
f (x0) - c (x0)T0 = - c (x0) 0 -0 c (x0) 52 111.2 0 1.46 1 81.3 111.2 496.2 0 4.6 1 p0 303.4 0 0 0.2 -1 0 = -0.2 1.46 4.6 -1 0 0 -0 -0.88 1 1 0 0 0 0
p0 = [0.675 -0.675 -2.877]T , 0 = [0.775 40.088]T
70
Restricciones de desigualdad
Paso 1.3. Cálculo de la longitud de paso
m (x ) = f (x ) + c (x ) , m (x0) = 105.283
m (x0) = f (x0) + c (x0)Tc (x0) / c (x0)
= [64.9 257.4 9.8]T
’(0) = m (x0)Tp0 = -158.1 < 0 Si probamos con = 1,
x0 + p0 = [1.175 -0.175 -2.377]T
La función objetivo no está definida
71
Restricciones de desigualdad
Paso 1.3. Cálculo de la longitud de pasoMayor paso admisible:
= min{xi /(-pi )| pi < 0}
= min{0.5/0.675 , 0.5/2.877} = 0.174 = min{1 , 0.995} 0.173
Comprobación de la condición:m (x0 ) = 105.283 , m (x0 + p0) = 73.32
m (x0 ) + m (x0 )Tp0 = 102.55 > m (x0 + p0) Aceptamos el paso
72
Restricciones de desigualdad
Paso 1.4. Nuevo punto:x1 = x0 + p0 = [0.617 0.383 0.002]T
1 = 0 + 0 = [0.134 6.935]T
Paso 2.1. ¿Es solución?
c (x1) = [-0.73 0]T
f (x1) - c (x1)T1 = [67.3 251.1 0.134]T
73
Restricciones de desigualdad
Programación lineal: minx cTx
s.a Ax = b x 0
Transformar el problema: minx cTx - s i log si
s.a Ax = b Aplicar el método de Newton Actualizar s
74