24/04/2015
Métodos de Optimización Ingeniería Civil Apuntes 4
Programación No Lineal
Método de Lagrange y condiciones de Kuhn-Tucker
Mónica Woywood Y. Juan Carrasco M. Especialidad Transporte SEGUNDO SEMESTRE 2015 UdeC – DIC / mwy
Métodos de Optimización
3.Programa ción No Lineal.
1. Introducción
Contenido • • • • • • •
Se tien tienee una una func funció iónn f cualquiera cualquiera,, sin restricc restricciones iones,, f(x)
Introducción Caso bidimensional con restricciones funcionales Interpretación multiplicador de Lagrange Caso general, muchas restricciones Restricciones de no negatividad Condiciones de Kuhn-Tucker Aspectos básicos de la teoría dual
UdeC - DIC /mwy
Métodos de Optimización
3 .Programación No Lineal.
Óptimo Óptimo se obtien obtiene: e:
condic condición ión necesa necesaria ria de primer primer orden orden * max, mi m in => f (x ) = 0 condic condición ión necesa necesaria ria de segund segundoo orden orden * max => f (x ) < 0 min => f (x*) > 0 inflexión => f (x*) = 0 Matrices de Jacobiano - Hessiano
UdeC - DIC /mwy
Métodos de Optimización
3.Programa ción No Lineal.
24/04/2015
2. Caso bidimensional con restricciones funcionales Max f(x1, x2)
s.a g(x1, x2) = a
2. Caso bidimensional con restricciones funcionales Condiciones de primer orden:
L = L(f, g, )
L/ x1 =
f / x1 -
g / x1
= 0
L/ x2 =
f / x2 -
g / x2
= 0
L/
a - g(x1, x2)
¿Condiciones necesarias de primer orden? Considerar el siguiente problema no restringido: L (x1, x2, ) = f (x1, x2) +
Aplicar a este L las condiciones de primer orden:
UdeC - DIC /mwy
Métodos de Optimización
Notar que en el óptimo: L (x1, x2, )opt 3.Programación No Lineal.
3. Interpretación del multiplicador de Lagrange.
- Supongamos que se ha resuelto el problema. solución. - Reescribir L en términos del parámetro a, para ello, sea: = (a) x1* = x1 (a) x2* = x2 (a) El Lagrangiano en términos de este parámetro a será: L (a) = f (x1 (a) , x2 (a) ) +
= 0
Método de Lagrange Función de Lagrange o lagrangiano L Multiplicador de Lagrange
( a - g ( x1, x2) )
L/ x1 L/ x2 L/
=
UdeC - DIC /mwy
f (x1, x2)opt Métodos de Optimización
3.Programación No Lineal.
3. Interpretación del multiplicador de Lagrange. L/ a = f /x1 x1/a + f /x2 x2/a + (a - g (x1 (a), x2 (a)) ) /a + (a) - g /x1 x1/a - g /x2 x2/a L/ a = ( f / x1 + ( f / x2 -
g / x 1 ) x1 / a g / x 2 ) x2 / a
+ ( a - g (x1 (a), x2 (a)) )
(a) [ a – g (x1 (a) , x2 (a) ) ]
/ a +
si se deriva c/r a a, se tiene:
luego, en el óptimo se cumple que:
L/ a = f /x1 x1/a + f /x2 x2/a + /a (a - g (x1 (a), x2 (a)) ) + (a) - g /x1 x1/a - g /x2 x2/a
=>
UdeC - DIC /mwy
Métodos de Optimización
(a)
L/ a óptimo = (a) L/ a óptimo = f /a óptimo = (a) mide la “sensibilidad” del valor del óptimo
3.Programación No Lineal.
frente a variaciones en el parámetro a (recursos).
24/04/2015
4. Caso General: muchas restricciones.
3. Interpretación del multiplicador de Lagrange.
Si a varía en a => se puede estimar el cambio en la F.O. como: f
→ →
gm (x1, x2, ... xn) = am
→
.
a
Si a representa un cierto recurso, puede entenderse como el precio de ese recurso, precio sombra del recurso a. representa la disponibilidad a pagar ante la escasez del recurso, en el óptimo. Dimensiones de = f / a = ($/HH, $/u, libros/m2, etc.) UdeC - DIC /mwy
Max f (x 1, x2, ... xn) s.a g1 (x1, x2, ... xn) = a1 g2 (x1, x2, ... xn) = a2
Métodos de Optimización
.
1 2
.
m
Se transforma en el problema no restringido: Max L (x i,
j)
= f (x1, x2, ... x n) +
j
(a j – g j (x1, x2, ... x n) )
Condiciones de primer orden: L/ xi = L/
j
f/ xi -
g/ xi = 0
i = 1,2,...n
= a j - g j (x1, x2, x n ) = 0
j = 1,2,...m
j
Así se tiene un sistema de n+m ecuaciones, n+m incógnitas.
3.Programación No Lineal.
UdeC - DIC /mwy
5. Restricciones de no negatividad.
Métodos de Optimización
3.Programación No Lineal.
5. Restricciones de no negatividad.
Problema de una dimensión, función f cualquiera: Max f(x) s.a x 0
i)
x* > 0 , es interior al conjunto factible X = {
x/x 0}
En este caso debe cumplirse que:
Se pueden distinguir 3 situaciones diferentes para encontrar un punto máximo. f(x)
f (x*) = 0
ii) x* = 0 y está en el borde de X = { x / x 0 } Se observa que debe cumplirse:
f(x)
f(x)
f (x*) < 0
x
UdeC - DIC /mwy
x
Métodos de Optimización
x
3.Programación No Lineal.
iii) En este caso: x* = 0
UdeC - DIC /mwy
y además,
Métodos de Optimización
f (x*) = 0.
3.Programación No Lineal.
24/04/2015
5. Restricciones de no negatividad
2. 6. Condiciones de Kuhn Tucker
, las condiciones de primer orden se puede caracterizar:
Resumiendo
f´(x*) = 0,
si x* > 0
(x* es interior de X)
f´(x*) 0,
si x* = 0
(x* en un borde de X)
es decir:
f´ (x*) 0 x * f´(x*) = 0
•
• Modelo general Max f(x) s.a g(x) b x 0 •
Se transforman las restricciones en igualdades, agregando v. de holguras, y. g(x) + y = b con y 0
Si se tiene un máximo local, debe necesariamente satisfacerse las siguientes condiciones: x
*
Se tiene: Max f(x) s.a g(x) + y = b x 0, y 0
f (x*) / x 0 f (x*) / x = 0 x* 0
UdeC - DIC /mwy
Aplicar el Lagrangeano .
Métodos de Optimización
3.Programación No Lineal.
UdeC - DIC /mwy
Métodos de Optimización
2. 6. Condiciones de Kuhn Tucker
2. 6. Condiciones de Kuhn Tucker
Explicitando:
Si no se consideran las restricciones de no negatividad, simplemente:
L/ x x
L = f(x) + ( b - g(x) – y )
= - 0 y L/ y = - y = 0 y 0 L/ y
Pero las restricciones de no negatividad existen, tanto para x, como para y: L/ x x UdeC - DIC /mwy
L/
0
L/ x = 0 0
= f/x - g/x 0 = ( f/x - g/x ) x = 0
L/ x
x 0
L/x = 0 L/y = 0 L/ = 0
x
3.Programación No Lineal.
y
L/ y 0 L/ y = 0 y 0
Métodos de Optimización
L/
= 0
3.Programación No Lineal.
= b – g(x) – y = 0
Dado que y no está en el problema original, se debe eliminar y. Recordar y reemplazar: y = b - g(x). UdeC - DIC /mwy
Métodos de Optimización
3.Programación No Lineal.
24/04/2015
2. 6. Condiciones de Kuhn Tucker
Max f(x)
= f/x - g/x 0 x L/ x = ( f/x - g/x ) x = 0 x 0 L/ x
= - 0 y L/ y = - y = 0 y 0 L/ y
L/
= b – g(x) – y = 0
Interpretación adicional de las condiciones de KT s.a g(x) x
L(x, ) = f(x) + s.a x 0
b
0
0 (b – g(x)) = 0 b – g(x) 0
a)
L/ x
0 = 0
Para la solución óptima se ti ene:
b) x c) x
0
d)
L/ x = 0 0
L/
L = f(x) + s.a
x
L/
f)
0
0;
L/
0;
x
0
L/ x = 0 ; x
0
L/
0
UdeC - DIC /mwy
= 0;
Condiciones de Kuhn-Tucker
Métodos de Optimización
3.Programación No Lineal.
Aspectos básicos de la Teoría de Dualidad en PL. Asociado a todo problema de PL existe otro PPL, conocido como PD. Condiciones de KT al problema de: Max cx s.a Ax x 0
b
y el Lagrangiano asociado a él es: L = c x + y las condiciones de KT serán: a) L/x = c - A 0 b) x L/x = x ( c - A ) = 0 c) x 0
0
(b – g(x)) = 0
L ( x* , * ) = f ( x * ) * (b – g(x*)) = 0
d) e) f)
Luego se puede observar que en el ópt imo siempre se cumple: g j (x*) b j pero es g j (x*) = b j , si j* > 0 r est ricció n activa j * 0 pero es j * = 0, si g j (x*) < b j restricción inactiva “complementariedad de las holguras” UdeC - DIC /mwy
( b – A x )
3.Programación No Lineal.
Se considerarán dos sets de oportunidades: X = { x / Ax b, x 0 } = { / A c, 0 } , entonces, de las condiciones de KT se tiene que: cx Ax b b Ax
En especial, en el óptimo:
L/ = b – A x 0 L/ = ( b – Ax) = 0
Max cx = c x*
cx
b
b
, y x X.
Por lo tanto, en particular también debe cumplirse:
0
Si el problema de PL tiene solución, debe existir. Métodos de Optimización
Métodos de Optimización
Aspectos básicos de la Teoría de Dualidad en PL
Si x X y c-A 0
Para que la solución sea ó ptima, es necesario y suficiente que exista al menos un tal que junto a esta solución satisfaga las condiciones de KT.
UdeC - DIC /mwy
b – g(x)
= 0
(b – g(x) )
Por lo tanto: L/ x
0
e)
ya que en el óptimo: Analizar:
(b – g(x) )
c x* Min b Pero si el óptimo existe, * existe Min Luego:
3.Programación No Lineal.
UdeC - DIC /mwy
Max c x
= c x* = * b = Min Métodos de Optimización
*
b =
b
b 3.Programación No Lineal.
24/04/2015
Aspectos básicos de la Teoría de Dualidad en PL Problema Primitivo PP Max cx s.a Ax b x0
y es equivalente a
el Problema Dual PD: Min b s.a A c 0
Las relaciones de KT para ambos problemas son idénticas (¡demostrarlo!) Tabla de transformación Primo (max) restricción i b restricción i b re str icc ió n i = b variable j 0 variable j 0 variable j irrestricta UdeC - DIC /mwy
Dual (min) variable i 0 variable i 0 v ar ia bl e i i rres tri cta restricción j c restricción j c restricción j = c Métodos de Optimización
3.Programación No Lineal.