Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
f (x ) = (x 2 )
f (x ) = 0, x = 2
Pero si x 4 entonces el mnimo tiene que ser en x=4 y este no es un punto estacionario ya que f ' (4 ) = 4, por tanto no es el punto estacionario de f
h k (x 1 , x 2 ,K, x N ) = 0
k = 1,K, K
independientes, el problema se convierte en un problema sin restricciones La dimensin del problema se reduce de N a N-K El problema que se obtiene se puede resolver con cualquier algoritmo de optimizacin sin restricciones
Ejemplo:
h1 (x ) = x1 + x 2 + x 3 1 = 0
Eliminamos x3
No es posible eliminar ninguna variable explcitamente Es necesario encontrar un mtodo que permita manipular las restricciones
k=1,2,...,K
vihi ( x )
i=1
Solucin: encontrar el mnimo de L(x,v) en funcin de v y ajustar v para satisfacer las restricciones. => Se obtiene un sistema de ecuaciones cuya solucin es el ptimo de la funcin original.
L =0 xi
hk (x) = 0
i = 1,..., N k=1,... K
Para saber si es mximo o mnimo se calcula la matriz Hessiana de L con respecto a x: Si HL(x;v) es definida positiva Si HL(x;v) es definida negativa => mnimo => mximo
Extendiendo los multiplicadores de Lagrange a restricciones de desigualdad, tenemos las condiciones de kuhn-Tucker
j = 1,K, J k = 1,K, K
x = ( x 1 ,K, x N )
g j ( x) = 0
Condiciones de Kuhn-Tucker
Encontrar los vectores x ( N1) , (1J ) , (1K ) que satisfaga las siguientes condiciones:
f ( x ) jg j ( x ) k h k ( x ) = 0
j=1 k =1
g j (x) 0 h k (x) = 0 jg j ( x ) = 0 j 0
k = 1,K, K
f ( x ) k h k ( x ) = 0 h k (x ) = 0
k
Condiciones de KT
L( x ; ) = f ( x ) k h k ( x )
k
Funcin de Lagrange
L ( x ) = f ( x ) k h k ( x ) = 0 L ( ) = h k (x ) = 0
k
Las condiciones de KT son las condiciones de optimalidad de primer orden del Problema de Lagrange
h k (x ) = 0
x = (x 1 ,K, x N )
* y h k (x )
son linealmente
( , )
* *
tales que
(x , , )
* * *
A las condiciones de que g j (x * ) j I y h k (x * ) sean linealmente independiente en el ptimo se le llama restriccin de cualificacin
Restriccin de Cualificacin
Para algunos problemas de programacin no lineal, adems las restricciones de cualificacin se satisfacen cuando: 1. Todas las restricciones de desigualdad e igualdad son lineales 2. Cuando todas las restricciones de desigualdad son funciones cncavas y las de igualdad son lineales y existe al menos una solucin x factible, estrictamente dentro de la regin factible de las restricciones de desigualdad. Cuando la restriccin de cualificacin no se alcanza en el ptimo, puede que no exista solucin al problema de KT Condicin necesaria: si el punto no cumple las condiciones de KT no es ptimo, pero si las cumple puede ser ptimo o no.
h k (x ) = 0
j = 1,K, J k = 1,K, K
x = (x 1 ,K, x N )
Sea la funcin f(x) convexa, las restricciones de desigualdad gj(x) j=1,...,J todas cncavas, y las restricciones de igualdad hk(x) k=1,..., K son lineales. Si existe una solucin
(x , , )
* * *
Definicin: Se dice que una funcin f(x,y) tiene un punto de inflexin en (x*,y*) si:
f (x * , y ) f (x * , y* ) f (x , y* )
X* minimiza la funcin f(x,y*) para todas las x y* maximiza la funcin f(x*,y) para todas las y
j = 1,K, J
L ( x , ) = f ( x ) jg j ( x )
j
No se necesita la suposicin de convexidad de las funciones No se invoca la restriccin de cualificacin El teorema da la suficiencia. Pudiera existir algunos problemas de programacin no lineal, para las cuales no exista un punto de inflexin, incluso aunque tenga solucin ptima
Teorema de Necesidad
Sea x* el valor que minimiza la funcin f(x) sujeta a las restricciones f(x) es una funcin convexa, y g j (x ) 0 son funciones cncavas en S. Asumimos tambin que existe un punto x S tal que g j (x ) > 0 . Entonces existe un vector de multiplicadores * 0 tales que x * , * sea un punto de ensilladura o de inflexin de la funcin de Lagrange
g j (x ) 0,
L ( x , ) = f ( x ) jg j ( x )
j
que satisface:
Punto de inflexin de KT
Teorema: Una solucin (x * , * ) donde * 0 y x S es un punto de inflexin de KT si y solo si se cumplen las siguientes condiciones:
*
j = 1,K, J j = 1,K, J
Problema de PNL
min f (x ) s.a
Condiciones de KT
f ( x ) jg j ( x ) k h k ( x ) = 0
J K
g j (x ) 0
h k (x ) = 0
j = 1,K, J k = 1,K, K
g j (x) 0 h k (x) = 0 jg j ( x ) = 0 j 0
j=1
k =1
x = (x 1 ,K, x N )
* factibles x x * se cumple que f (x * ) < f (x ) en una pequea vecindad (x ) * * * Un punto de KT del PNL es un vector ( x , , ) que satisface las condiciones
de KT
el
sea un pto. KT
g j (x * )y = 0
se satisface que:
y T H L (x * , * , * )y 0
J K
j I
L(x , , ) = f (x ) jg j (x ) k h k (x )
j=1 k =1
, * , *x(
{ = {j g (x ) = 0,
} = 0}
h k (x * )y = 0 k = 1,K, K
y T H L (x * , * , * )y > 0
Funciones de Penalizacin 1
min s.a. f (x) x R N hk ( x ) = 0 k = 1,2,K, K g j (x) 0 j = 1,2,K, J
El problema original se convierte en un problema sin restricciones mediante una funcin de penalizacin
P(x , R ) = f (x ) + (R , g (x ), h (x ))
Funciones de Penalizacin 2
Caractersticas de la transformacin: La solucin del problema debe aproximarse a la solucin del problema de NLP:
t T <
lim x ( t ) = x *
El problema de minimizar P(x,R) debe ser similar en dificultad a minimizar f(x) R(t+1) = F(R(t)) debe ser simple. Dos tipos de transformaciones: Mtodos barrera o forma interior: todos los puntos generados son factibles Mtodos de forma exterior: los puntos generados son no factibles.
Funciones de Penalizacin 3
Funcin parablica
= R{h (x )}
2
Operador de bracket
= R g (x )
2
si 0 = > 0 si 0
Funciones de penalizacin 4
Barrera infinita:
= 10 20
j J
Logaritmica:
g j ( x)
con gj(x)<0 jJ
= R ln[ g ( x)]
1.0 0
g(x)
g(x)
Mtodos barrera o de forma interior: los puntos generados son siempre factibles
Funciones de penalizacin 5
Algoritmo: 1.- Definir 1, 2, 3 => condiciones de terminacin para la bsqueda lineal, vectorial y penalizacin. X0 y R0 2.- P(x,R) = f(x) + (R, g(x), h(x)) 3.- Encontrar xk+1 / P(xk+1, Rk) sea mnimo con Rk fijo. Terminar con 2. 4.- | P(xk+1, Rk) P (xk , Rk-1) | 3 ? Si => xk+1 = x* Parar No => continuar 5.- Elegir Rk+1 = Rk + Rk y volver al paso 2.
R=100 x(t)=[-1.8, -1.8] f(x(t))=67 g(x(t)) =8.612 R=10 x(t)=[1.5, 1.5] f(x(t))=12.5 g(x(t)) =2.0 R=1 x(t)=[2.3, 2.3] f(x(t))=5.45 g(x(t)) =0.30
h k (x 1 , x 2 ,K, x N ) = 0
k = 1,K, K
Si hk(x) son no lineales pero puedes resolverse explcitamente, puede usarse el mtodo de eliminacin de variables: h1(x) = 0 => xk= (x1,...,xk-1,xk+1,...,xN)
Esto no ocurre en la mayora de los casos, pero se puede hacer una aproximacin lineal de la restriccin en torno a un punto x1 que s cumpla la restriccin: x1 / hk(x1) = 0 Hk(x; x1) = hk (x1) + hk(x1) (x x1) k=1,..., K
Mtodo GRG 2
x / hk(x; x1) = 0 k=1,...,K hk(x1) (x x1)=0 k=1,..., K
Esto es un sistema de k ecuaciones con N incgnitas y normalmente k<N => no existe solucin nica. Se puede resolver el sistema para K variables en funcin de las otras N-K. K variables => N-K variables =>
1h 2h J = ... h k
x x
bsicas no bsicas
1h 2h C = ... h k
x 1 ) + C ( x x 1 ) = 0 J (x
x 1 = J 1C ( x x 1 ) x
Mtodo GRG 3
Utilizamos la ltima ecuacin para eliminar k variables de la funcin objetivo:
~ , x ) = f ( x 1 J 1C ( x x 1 ), x ) f (x
La funcin objetivo ahora es una funcin sin restricciones de las N-K variables no bsicas, y podemos aplicar las condiciones necesarias para que x1 sea mnimo:
~ f =0 x
~ ~ ( x ), x ) f (x) = f (x
~ ~ ~ f ( x ) f f x = + x x x x
~ ( x1 )[ J 1C ] f ( x1 ) = f ( x1 ) + f
Mnimo:
~ f ( x1 ) = 0
Mtodo GRG 4
Hemos usado linealizaciones de las restricciones para expresar la funcin objetivo como una funcin de N-K variables no bsicas sin restricciones => algoritmo de optimizacin vectorial en torno al punto de linealizacin. Algoritmo: ~ ( x k ) J 1C 1.- Calcular f ( x k ) = f ( x k ) f 2.- Si Si no
~ k || f ( x ) ||<
Parar
~ d = (f )T d = ( d , d ) T = J 1Cd d
3.- Minimizar f(xk + d) con respecto al parmetro => Hacer xk+1 = xk + d. Ir al paso 1.
Mtodo GRG 5
La direccin d as generada es descendente, pero los puntos generados en esa direccin no tienen por qu ser factibles. Para resolver este problema, se calcula d y se proyecta d sobre la superficie definida por el conjunto de restricciones y se minimiza f(x) a lo largo de la curva resultante.
k=1,...,K
i+1 = x i [J 1 ( x t + * d, x i )] * h ( x t + * d , x i) x
, si f ( x ) < f ( x t ) nos Si el mtodo converge a un x quedamos con el nuevo punto y seguimos el algoritmo, si no se cumple, se disminuye y se repiten las iteraciones de Newton
Algoritmo GRG 1
Partir de un punto inicial x0, = 0, 1, 2, 3 >0 criterios de terminacin y un parmetro de reduccin; 0 < <1
Algoritmo GRG 2
b) v i +1 = v i J 1 ( v i ) * h ( v i )
v i +1 = v i
c) Si
i +1 v i || > 1 || v
ir a b)
Si no:
Si no = Newton no converge.
1.- Tratamiento explcito como desigualdades. 2.- Implcito: teniendo en cuenta los lmites en los pasos del algoritmo: 2.1.- Slo las variables alejadas de sus lmites puedes ser variables bsicas, se ordenan las variables de acuerdo con la distancia al lmite ms cercano: zi(t) = min {(xiu xit), (xit xiL)} Se ordenan las zi en orden decreciente y las k primeras variables son las bsicas.
y (f ) i < 0 y (f ) i > 0
en otros casos
2.3.- En el paso 3 se deben insertar chequeos para asegurar que los lmites no se exceden durante las iteraciones de Newton. Si un lmite es excedido, se hace una interpolacin lineal entre xt y vi para estimar el punto en esa lnea que no exceda el lmite.