Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Prog No Lineal
Prog No Lineal
Soluciones
Sabemos reconocerlas, y
calcularlas como soluciones de
sistemas
de ecuaciones, o
de desigualdades
2
Problema sin restricciones
Consideremos el problema minx f (x )
Buscaremos un punto que cumpla
f (x* ) = 0
Si xk no cumple la condición, se genera
otro punto a partir de
f (xk+p ) = 0
3
Problema sin restricciones
Problema tan difícil como el original
Puede aproximarse:
Encontrar la solución de
f (xk ) + 2f (xk )p = 0
o resolver
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 de
2f (xk )p = - f (xk )
4) Obtener el siguiente punto como xk+1=xk +pk
6
Problema sin restricciones
Ejemplo:
x1
min f (x )
(1+x12) (1+x22)
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.599
3.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
9
Problema sin restricciones
2.3) Gradiente:
f (x2) = [0.002 0.212]T, f (x2) = 0.212
3.3) Dirección de movimiento:
0.479 -0.001 -0.002 -0.004
p2 = - , p2 =
-0.001 0.802 -0.212 -0.264
4.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
11
Problema sin restricciones
12
Problema sin restricciones
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
x1
Ejemplo: f (x )
(1+x1)2 (1+x2)2
-1.29 0.24
x0 = [ 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.24
Mk = =
-0.29 0.96 -0.49 0.29 0.96 -0.24 0.56
19
Problema sin restricciones
Cálculo de k
Objetivo: en cada iteración el valor de f (xk)
debe decrecer suficientemente.
Condición:
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
22
Problema sin restricciones
Ejemplo de cálculo de k
Tenemos los datos siguientes:
x1
(xT ) = , x0 = [-0.5 -0.3]T, p0 = [-2
f 1]
(1+x12) (1+x22)
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. = 1
f (x0 + p0) = -0.231 , f (x0 ) + f (x0 )Tp0 = -0.48
Iteración 2. = 0.5
24
Problema sin restricciones
x1
Ejemplo: f (x )
(1+x12) (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 paso
f (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
x 1 = x 0 + 0 p 0 ,
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
28
Problema sin restricciones
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 - I , 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
30
Problema sin restricciones
limkxk
La sucesión puede divergir si:
Función objetivo no acotada inferiormente
Función objetivo decrece monótonamente
31
Problema sin restricciones
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
k f (xk ) 2 0
34
Problema sin restricciones
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
37
Restricciones de igualdad
38
Restricciones de igualdad
39
Restricciones de igualdad
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 restricciones
41
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 )
42
Restricciones de igualdad
44
Restricciones de igualdad
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
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
51
Restricciones de igualdad
x1
Ejemplo: min f (x )
(1+x1)2 (1+x2)2
s.a x12 + x22 = 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 A0T 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 paso
Funciónde 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 + c0TA0 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
55
Restricciones de igualdad
56
Restricciones de desigualdad
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
16
Ejemplo: 14
minx x 2 12
x1
10
s.a x 1 8
6 x 2 - log(x - 1)
2
f (x ) = x 2
0
0 0.5 1 1.5 2 2.5 3 3.5 4
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
x0 = x* (s-1) ,
resolver el problema
minx f (x ) - s i log si
s.a c (x ) - s = 0
63
Restricciones de desigualdad
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:
66
Restricciones de desigualdad
Ejemplo: optimización de cartera
minx xTRx
s.a mTx 3.5
eTx = 1
x0
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
e Tx = 1
x,s0
Problema con restricciones de desigualdad
minx,s xTR x - (i log xi + log s )
s.a mTx - s = 3.5
e Tx = 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
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 paso
Mayor 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
Actualizar s
74