Pontificia Universidad Católica Escuela de Ingeniería Departamento de Ingeniería Industrial y de Sistemas
Clase 15 • Condiciones de Karush Kuhn Tucker ICS 1102 • Optimizaci´on on Profesor : Claudio Seebach 25 de septiembre de 2006
Apuntes de Clases • Optimizaci´ on on • Claudio Seebach
No Lineal • 105
Condiciones de Karush Kuhn Tucker
Prop Pr opos osic ici´ i´ on on 9 Sup´ ongase que f (x), g j (x) con j = 1,...,m, son funciones diferenciables que satisfacen ciertas condiciones de regularidad. Entonces, x¯ puede ser una soluci´ on ´ optima para el problema de programaci´ on no-lineal, s´ olo si existen m n´ umeros µ1,...,µm que satisfagan satisfagan todas las condiciones necesarias siguientes:
Apuntes de Clases • Optimizaci´ on on • Claudio Seebach
No Lineal • 106
Condiciones de Karush Kuhn Tucker
∂ L ∂ xi
¯i x ¯i x
∂ L ∂ xi
=
∂ f (¯ x)
≥0 ∂ L
+
j =1
∂ f (¯ x) ∂ xi
µ j
m
+
j =1
≥ 0
∂ xi
µ j
∂ g j (¯ x) ∂ xi
= 0
∀i = 1,..,n
x) − b j ≤ 0 = g j (¯
∂ µ j ∂ L
µ j
∂ g j (¯ x)
∂ xi
= x¯ i
m
∂ µ j
x) − b j = 0 = µ j g j (¯
∀ j = 1,..,m
µ j ≥ 0
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 107
Comentarios acerca de KKT • Interpretaci´ on de los multiplicadores µ j : – Indican cu´anto baja la funci´on objetivo si b j aumenta en una unidad. – Aumentar b j implica expandir el dominio, o sea expandir el espectro de posibilidades de donde escoger. • Complementariedad de las holguras: m
x) + f (¯
µ j g j = 0
j =1
µ j (g j (¯ x) − b j ) = 0
– En el ´optimo el gradiente de la funci´on objetivo es una combinaci´on lineal del gradiente de las restricciones activas
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 108
Comentarios acerca de KKT • Las condiciones de optimalidad de Karush-Kuhn-Tucker son condiciones necesarias y s´olo garantizar´ıan optimalidad global si se cumplen adicionalmente otras condiciones de convexidad. Corolario 10 Sup´ ongase que f (x) es una funci´ on convexa y diferenciable, y que g1(x), g2(x),...,gm(x) tambi´ en lo son en donde todas estas funciones satisfacen las condiciones de regularidad. Entonces ¯ = (¯ ¯n) es una soluci´ on ´ optima si y s´ olo si se satisfacen todas x x1, ..., x las condiciones del teorema. • El m´etodo identifica puntos ´optimos locales que cumplan condiciones de regularidad • Los gradientes de las restricciones activas en el punto deben ser linealmente independientes.
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 109
Condiciones de Regularidad del Dominio • Ciertas condiciones garantizan regularidad en todo el dominio: Proposici´ on 11 (Slater) Las condiciones de regularidad de Slater establecen que si hay un dominio D = {x : g j (x) ≤ 0} con g j (x) x) < 0 funciones convexas, y existe un punto x¯ ∈ D tal que g j (¯ ∀ j = 1, . . . , m ,entonces todo punto x ∈ D es regular. Proposici´ on 12 (Slater-Usawa) Las condiciones de regularidad de SlaterUsawa establecen que si hay un dominio D = {x : g j (x) ≤ 0} con g j (x) x) < 0 para funciones convexas, y existe un punto x¯ ∈ D tal que g j (¯ x) ≤ 0 para toda restricci´ toda restricci´ on no lineal, y g j (¯ on lineal, entonces todo punto x ∈ D es regular. Corolario 13 En
problemas lineales basta que haya un punto factible para decir que su dominio es regular.
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 110
Ejemplo
Ejemplo 16 Considere el siguiente problema: P )max f (x1, x2) = ln(x1 + 1) + x2 s.a 2x1 + x2 ≤ 3 x1, x2 ≥ 0
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 111
Soluci´ on Ejemplo
P )max f (x1, x2) = ln(x1 + 1) + x2 2x1 + x2 ≤ 3 s.a x1, x2 ≥ 0
El problema puede modificarse del siguiente modo: P )min − ln(x1 + 1) − x2 → −f (x) es convexa s.a 2x1 + x2 ≤ 3 → g (x) es convexa x1, x2 ≥ 0 El problema presenta caracter´ısticas que permiten garantizar que el m´etodo de KKT identificar´ a s´ olo un punto y que ´este ser´ a el ´ optimo global. Adem´ as, el dominio est´ a definido por restricciones lineales por lo que no habr´ a puntos singulares. El Lagrangeano del problema queda: L = − ln(x1 + 1) − x2 + µ1 (2x1 + x2 − 3)
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 112
Soluci´ on Ejemplo
Resolviendo las condiciones de KKT es posible obtener una soluci´ on optima. ´ −1 1a. + 2µ1 ≥ 0 x1 + 1 −1 2a. x1( + 2µ1) = 0 x1 + 1 −1 + µ1 ≥ 0 1b. 2b. x2(−1 + µ1) = 0 3. 2x1 + x2 ≤ 3 4. µ1(2x1 + x2 − 3) = 0 x1 ≥ 0, x2 ≥ 0 5. µ1 ≥ 0 6.
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 113
Soluci´ on Ejemplo De donde tenemos que: 1. µ1 ≥ 1 de la condici´on 1b. 2. x1 ≥ 0 de la condici´on 5. −1 3. Por lo tanto, + 2µ1 > 0. x1 + 1 4. Por lo tanto, x1 = 0 de la condici´on 2a. 5. µ1 = 0 implica que 2 x1 + x2 − 3 = 0, de la condici´on 4. 6. Los pasos 3 y 4 implican que x2 = 3. 7. x2 = 0 implica que µ1 = 1, de la condici´on 2b. 8. Los valores x1 = 0, x2 = 3 y µ1 = 1 no violan ninguna condici´on. 9. Por lo tanto, x ¯ = (0, 3) es soluci´on ´optima para este problema.
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 114
M´ etodos iterativos con restricciones Gradiente reducido (Frank-Wolfe) • Consideremos un problema definido sobre un dominio convexo. • Comenzando de un punto factible xk se determina un plano tangente a la funci´on en el punto: hk (x) = f (xk ) + f (xk ) · (x − xk )
• Luego se optimiza hk (x) sobre el dominio original (convexo). Notar que la funci´on objetivo es lineal: f (xk ) · x • Si el dominio est´a definido por restricciones lineales el problema es de programaci´on lineal! • Llamemos yk∗ a la soluci´on ´optima de este problema. Este punto refleja una direcci´on de mejora de la funci´on.
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 115
M´ etodos iterativos con restricciones Gradiente reducido (Frank-Wolfe) • ¿cu´anto movernos en dicha direcci´on? (i.e. desde xk hacia yk∗) • Optimicemos: min f (1 − λ)xk + λyk∗ λ
s. a
0≤λ≤1
• Si λ∗ es la soluci´on ´optima del problema, definimos xk+1 = (1 − λ∗)xk + λ∗yk∗ • Observar que el m´etodo permite obtener cota superior e inferior para f (x∗) – Cota superior: f (xk ) – Cota inferior: el m´aximo de los hk (yk∗)
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
No Lineal • 116
M´ etodos iterativos con restricciones Gradiente reducido (Frank-Wolfe)
• Ejemplo: max 5x1 − x21 + 8x2 − 2x22 x ,x 1
2
s. a
Apuntes de Clases • Optimizaci´ on • Claudio Seebach
3x1 + 2x2 ≤ 6 x1, x2 ≥ 0
No Lineal • 117