Condiciones de Karush-Kuhn-Tucker

Departamento de Matem´ aticas, CSI/ITESM 21 de abril de 2010

´ Indice
16.1. Historia . . . . . . . . 16.2. Formulaci´ on . . . . . . 16.3. Uso de las Condiciones 16.4. Ejemplo 1 . . . . . . . 16.5. Ejemplo 2 . . . . . . . 16.6. Ejemplo 3 . . . . . . . 16.7. Ejercicios . . . . . . . . . . . . . . . KKT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 3 3 4 5 8

16.1.

Historia

Las condiciones necesarias que deben satisfacer los o ´ptimos de problemas de optimizaci´ on no lineal con restricciones de desigualdad fueron publicadas por primera vez (1939) en la tesis de Maestr´ ıa de William Karush (1917-1997) (en aqu´ el entonces estudiante de matem´ aticas de la Universidad de Chicago) (W. Karush (1939): Minima of Functions of Several Variables with Inequalities as Side Constraints. M.Sc. Dissertation. Dept. of Mathematics, Univ. of Chicago, Chicago, Illinois.), aunque fueron renombradas tras un art´ ıculo en una conferencia de Harold W. Kuhn y Albert W. Tucker en 1951. (H. W. Kuhn, Tucker, A. W.: Nonlinear programming (Proceedings of 2nd Berkeley Symposium, University of California Press, 1951, Berkeley.) Las condiciones de Karush-Kuhn-Tucker (KKT) son una generalizaci´ on del m´ etodo de los multiplicadores de Lagrange para restricciones de desigualdad.

16.2.

Formulaci´ on

Considere el problema de optimizaci´ on Min f (x1 , x2 , . . . , xn ) sujeto a g 1 (x 1 , x 2 , . . . , xn ) ≤ 0 g 2 (x 1 , x 2 , . . . , xn ) ≤ 0 . . . g m (x 1 , x 2 , . . . , xn ) ≤ 0 El m´ etodo de soluci´ on procede de la siguiente manera. Cambiemos cada restricci´ on de desigualdad gi ≤ 0 a una restricci´ on de igualdad introduciendo una variable si de la siguiente manera: g i ≤ 0 → g i + s2 i =0 (1)

. xn ) ≤ 0 . . . Si ahora el problema es de maximizaci´ on: Max f (x1 . . x2 . x 2 . entonces deben existir n´ ´ umeros reales llamados multiplicadores λ1 . . m): ∂F = g i + s2 i = 0 ↔ gi ≤ 0 ∂λi Que hacen cero las parciales con respecto a las variables si (i = 1. . . λ1 . Si x0 = (a1 . . . . . λ. . . . . . . m): ∂F = 2 λi s i = 0 ↔ λi s i = 0 ↔ λi g i = 0 ∂si Lo anterior se resume en el siguiente teorema que indica las condiciones que deben satisfacer los puntos que minimizan la funci´ on sujeta a las restricciones. . Teorema Suponga una formulaci´ on para el problema anterior de minimizaci´ on. 2 . m Bloque III gi ≤ 0 i = 1. .De acuerdo a la t´ ecnica de los multiplicadores de Lagrange se construye la funci´ on: m F (x. . . . . 2. s) = f (x) + i=1 λi · ( g i + s 2 i) (2) Los puntos que minimizan a f sujeta a las restricciones gi ≤ 0 (1 ≤ i ≤ m) est´ an dentro de los puntos cr´ ıticos de F : Que hacen cero las parciales con respecto a las variables xj (j = 1. a2 . g m (x 1 . . . . . n): ∂f ∂F = + ∂xj ∂xj m λi i=1 ∂gi =0 ∂xj Que hacen cero las parciales con respecto a las variables λi (i = 1. . . . . . λm ) es un punto cr´ ıtico para F . . . . a2 . xn ) sujeto a g 1 (x 1 . xn ) ≤ 0 g 2 (x 1 . an ) es un optimo. .λm no negativos tales que (a1 . x 2 . . . λ2 . . . xn ) ≤ 0 (4) 2 . . . . m ∂gi (xo ) m i=1 λi ∂xj (3) Observe que los valores de si se obtienen de la relaci´ on gi + s2 i = 0 y de que gi ≤ 0. . . an . . n Bloque II: Condici´ on de Holgura Complementaria λi g i ( x o ) = 0 i = 1. . . . . x 2 . 2. . .. . Es decir que se cumple: (x o ) + ∂f ∂xj Bloque I + = 0 j = 1. . . .

Para su soluci´ on lo cambiamos a un problema de minimizaci´ on para −f (x). . . . .3. an ) es un ´ optimo. s) = −f (x) + i=1 λi · ( g i + s 2 i) De tal forma que las condiciones que deben satisfacer los o ´ptimos ahora quedan de acuerdo al siguiente teorema. 16. entonces las ecuaciones de las condiciones de los bloques I y II se piensan como un sistema de ecuaciones en las variables xj ′ s y λj ′ s: Se intenta resolver tal sistema de ecuaciones y en caso de encontrarse en las soluciones se revisan una a una para ver cual de ella cumple que los λj ′ s son no negativos y que tambi´ se cumplen las restricciones gi ≤ 0 en los puntos encontrados. entonces deben existir n´ umeros reales llamados multiplicadores λ1 . . . x2 ) = 3 − x1 − x2 sujeta a las restricciones 0 ≤ x1 . Soluci´ on Primero cambiemos las restricciones a la forma gi ≤ 0: 0 ≤ x1 → g1 = − x1 ≤ 0 0 ≤ x2 → g2 = − x2 ≤ 0 x1 + x2 ≤ 2 → g3 = 2 x1 + x2 − 2 ≤ 0 Resolvamos el problema de minimizaci´ on primeramente. Ejemplo 1 Encuentre los valores m´ ınimo y m´ aximo de la funci´ on f (x1 . 2.. . En este caso las condiciones son: ∂f (xo ) ∂x1 ∂f (xo ) ∂x2 + ∂gi (xo ) m i=1 λi ∂x1 Bloque I = − 1 + 2 λ1 − λ2 =0 ∂gi (xo ) + m = − 1 + λ1 − λ3 =0 i=1 λi ∂x1 Bloque II: Condici´ on de Holgura Complementaria λ1 g1 = λ1 (2 x1 + x2 − 2) = 0 λ2 g 2 = − λ2 x 1 =0 λ3 g 3 = − λ3 x 2 =0 3 . Uso de las Condiciones KKT La forma de operar las condiciones de KKT ser´ a la siguiente: Como lo que buscamos es el punto xo y de inicio se desconoce. . . Es decir. a2 . En este caso la funci´ on F queda en la forma: m F (x. an . Teorema Suponga una formulaci´ on para el problema anterior en el caso de maximizaci´ on. . . . λ2 .4. . m Bloque III gi ≤ 0 i = 1. m 16. λm ) es un punto cr´ ıtico para F . . . . . . . . . . 2. . 2 . λ1 . λ. que se cumple: (x o ) − ∂f ∂xj + ∂gi (xo ) m i=1 λi ∂xj Bloque I = 0 j = 1. . a2 . Normalmente se realiza una tabla donde se hace la verificaci´ on. Observe tambi´ en es posible trabajar el problema de maximizaci´ on resolviendo el problema de minimizaci´ on pero conservando aquellos puntos que tengan los valores de los multiplicadores no positivos.λm no negativos tales que (a1 . . Si x0 = (a1 . . n (5) Bloque II λi gi (xo ) = 0 i = 1. 0 ≤ x2 y 2 x1 + x2 ≤ 2.

x1 0 1 0 x2 0 0 2 λ1 0 -1/2 -1 λ2 1 0 -1 λ3 1 1/2 0 g1 -2 0 0 g2 0 -1 0 g3 0 0 -2 f 3 2 1 En la tabla vemos que s´ olo el primer rengl´ on tiene valores de los multiplicadores no negativos. Eliminar aquellos puntos encontrados que no satisfacen las restricciones gi ≤ 0. Por tanto. Para minimizaci´ on: escoger dentro de aquellos puntos que tienen multiplicadores no negativos aqu´ el que tienen la menor evaluaci´ on de la funci´ on objetivo. Plantear el problema como si se tratar´ a s´ olo de minimizaci´ on y resolver el sistema de ecuaciones correspondientes. Para maximizaci´ tienen la mayor evaluaci´ on de la funci´ on objetivo. x1 0 1 0 x2 0 0 2 λ1 0 1/2 1 λ2 -1 0 1 λ3 -1 -1/2 0 g1 -2 0 0 g2 0 -1 0 g3 0 0 -2 f 3 2 1 En la tabla vemos que s´ olo el u ´ltimo rengl´ on tiene valores de los multiplicadores no negativos. Para determinar el m´ aximo las condiciones quedan: (x o ) − ∂f ∂x1 (x o ) − ∂f ∂x2 Bloque I + = 1 + 2 λ1 − λ2 =0 + = 1 + λ1 − λ3 =0 Bloque II: Condici´ on de Holgura Complementaria λ1 g1 = λ1 (2 x1 + x2 − 2) = 0 λ2 g 2 = − λ2 x 1 =0 λ3 g 3 = − λ3 x 2 =0 ∂gi (xo ) m i=1 λi ∂x1 ∂gi (xo ) m i=1 λi ∂x1 El sistema de ecuaciones es resuelto en Maple y se arma la siguiente tabla. on: escoger dentro de aquellos puntos que tienen multiplicadores no positivos aqu´ el que 5. 0) y es 3. Por tanto. 3. Eliminar aquellos puntos que tienen a la vez multiplicadores positivos y negativos. 2. 2) y es 1. el m´ ınimo valor de f (x1 . Por tanto.El sistema de ecuaciones es resuelto en Maple y se arma la siguiente tabla. x2 ) lo alcanza en Q(0. 4. el m´ aximo valor de f (x1 . Observamos que las tablas para minimizaci´ on y para maximizaci´ on son id´ enticas salvo que los valores de los multiplicadores est´ an cambiados de signo. x2 ) lo alcanza en P (0. 4 . la estrategia conveniente para optimizar una funci´ on sujeta a restricciones de desigualdad por el m´ etodo de las condiciones de KKT ser´ a: 1.

En la figura 2 aparecen las coordenadas de los puntos cr´ ıticos y las evaluaciones de g y de f en cada uno de los puntos cr´ ıticos. y = 1) = 1 es el valor m´ aximo.5.Figura 1: Preparativos y puntos cr´ ıticos del ejemplo 2 Figura 2: Sustituci´ on de los puntos cr´ ıticos en [x. Por tanto. Por lo tanto. y ) = x2 + y 2 + y − 1 En la regi´ on S definida por S = (x. Para maximizaci´ on. y. g. y ) ≤ 0. y = −1/2) = −5/4 es el m´ ınimo de la funci´ on y f (x = 0. f ] 16. Para minimizaci´ on. Deber´ a escogerse aqu´ el que tiene un mayor valor de f . Aqu´ ı g = g (x. x 0 0 0 Observe que: Los tres puntos cumplen la restricci´ on g (x. y ) = x2 + y 2 − 1 ≤ 0. t. as´ ı como sus puntos cr´ ıticos. Ejemplo 2 Encuentre los m´ aximos y m´ ınimos absolutos de la funci´ on: f (x. En la figura 1 aparecen los preparativos para la soluci´ on del problema. Lo que se resume en la siguiente tabla. P (0. y -1/2 -1 1 t 0 -1/2 -3/2 g -3/4 0 0 f -5/4 -1 1 5 . −1/2) debe ser el m´ ınimo. s´ olo el primer punto al tener t = 0 cumple t ≥ 0. El orden de las variables en la matriz es x − y − t. f (x = 0. los puntos dos y tres al tener t = −1/2 y t = −3/2 son los candidatos a m´ aximos de la funci´ on. y ) ∈ R2 |x2 + y 2 ≤ 1 Soluci´ on Utilizaremos las condiciones KKT para caracterizar los m´ aximos y los m´ ınimos.

125 λ1 0 0 -17.25 8. -35.5 0 0 0 0 6 g 1 (x ) -17.75 0 0 g 2 (x ) 0 -8.5 17.25 ≤ 0 g2 = − x1 ≤ 0 g3 = − x2 ≤ 0 Las condiciones de KKT que debe satisfacer el o ´ptimo son: ∂f − ∂x 1 ∂f − ∂x 2 + + 3 i=1 λi 3 i=1 λi Bloque I · = −17 + 2 x1 + λ1 − λ2 = −35 + 4 x2 + λ1 − λ3 · Bloque II λ1 · (g1 ) = λ1 (x1 + x2 − 17.50 17. 0 0 -17. Se puede convertir una onza del producto qu´ ımico A en una onza del producto I a un costo de 3 d´ olares a onza. As´ ı: f = x1 (30 − x1 ) + x2 (50 − x2 ) − 3 x1 − 5 x2 − 10 (x1 + x2 ) g1 = x1 + x2 − 17.25 378. una onza del qu´ ımico A se puede convertir en una onza del producto II a un costo de 5 d´ olares la onza.50 -17. 0 -16.125 x2 0 0 0 17.125 g 2 (x ) 0 0 0 -17.75 λ2 -17.25 -4. mientras que si se producen x2 onzas del producto II se vender´ a a 50 − x2 d´ olares la onza.25 -13. 0 ≤ x1 . Si se producen x1 onzas del producto I se vender´ a a 30 − x1 d´ olares la onza. Determine c´ omo el comerciante puede maximizar sus ganancias. tanto de materia prima como de producci´ on: Max z = x1 (30 − x1 ) + x2 (50 − x2 ) − 3 x1 − 5 x2 − 10 (x1 + x2 ) Restricciones x1 + x2 ≤ 17.75 0 . Asimismo. Recuerde que las λs deben ser positivas y las restricciones deben cumplirse (gi ≤ 0): x1 0 8.5 -17. En la tabla se tabula cada una de las restricciones evaluada en el punto correspondiente.25 onzas de un producto qu´ ımico A a 10 d´ olares cada onza.6.50 0 -4. 0 ≤ x2 Nos olvidaremos de las restricciones de no-negatividad para la x1 y x2 y posteriormente filtramos las soluciones encontradas.25 0 8.25) λ 2 · ( g 2 ) = − λ2 x 1 λ 3 · ( g 3 ) = − λ3 x 2 ∂gi ∂x1 ∂gi ∂x1 = 0 = 0 = 0 = 0 = 0 Resolviendo el sistema anterior con Maple obtenemos los siguientes puntos.5 0 0 .5 -17.5 0 λ3 -35.125 f (x ) 0 72. Ejemplo 3 Un comerciante puede comprar hasta 17.25 13. Soluci´ on: Variables de Decisi´ on x1 = Onzas del producto I producidas x2 = Onzas del producto II producidas Objetivo Lo que debe hacerse es maximizar las ganancias que se obtiene restando a las ventas los costos.25.16. -52.21875 .25 -8.3125 306.5 306.5 17.500 8.25 0 -8.50 0 4.1875 340.

Las variables g 1. el u ´nico punto sobrevieviente es el del rengl´ on 7: x1 = 4.2188 Variable X1 X2 Row 1 2 Esto coincide con nuestro c´ alculo. Nota Si se utiliza LINGO para resolver el problema codific´ andolo como MAX=x1*(30-x1)+x2*(50-x2)-3*x1-5*x2-10*(x1+x2). x2. Es conveniente manejar las restricciones en la forma gi ≤ 0. En la figura 3 se muestran las pantallas donde inician los preparativos: primeramente se limpian las variables que ser´ an usadas: x1. Las ecuaciones del bloque I se definir´ an utilizando variables e1 y e2 que representan los lados izquierdos de ellas. x2.25.75000 − − 3 i=1 ti 3 i=1 ti · · ∂gi ∂x1 ∂gi ∂x2 En la figura 4 se muestran las ecuaciones del bloque II y la soluci´ on del sistema para los puntos cr´ ıticos as´ ı como su conversi´ on a matriz. Por consiguiente. t2.125 y x2 = 13.2188 0. Hagamos las operaciones utilizando la calculadora TI.125 con una evaluaci´ on de 340. t3 7 e3 = t1 · g 1 e4 = t2 · g 2 e5 = t3 · g 3 . As´ ı e1 = e2 = ∂f ∂x1 ∂f ∂x2 Value 4. t2 (en lugar de λ2 ).Figura 3: Preparativos en la TI para el ejemplo 3 El puntos correspondientes a los renglones 1.12500 13.000000 0. 4 y 6 se cancelan pues tienen al menos un λ negativo. y t3 (en lugar de λ3 ).0000000 Dual Price 1. 3. Sistema e1 = 0 e2 = 0 e3 = 0 e4 = 0 e5 = 0 Para x1. t1 (en lugar de λ1 ). x1+x2<=17.21875. t1.12500 Slack or Surplus 340.0000000 Reduced Cost 0.000000 -8. g 2 y g 3 codificar´ an los lados izquierdos de las restricciones. se obtiene: Local optimal solution found. 2. Objective value: 340. El rengl´ on 5 se cancela pues una de las restricciones no se cumple: g1 debe ser ≤ 0.

5.75 > 0 y que el punto P las cumple. t3 = 0) y Q(x1 = 8. En la figura 6 se muestran los vectores [g 1. t1 = 8. t1 = 0.75. t1 = 8.75.7. Observe que estas 7 ra´ ıces coinciden con los resultados de Maple. Recuerde que las restricciones son del tipo gi ≤ 0. Como los valores de ti esperados deben ser positivos esto descarta todos excepto los correspondientes a los renglones 1 y 3: P (x1 = 4. t2 = 0. g 3] resultantes de sustituir en las restricciones los puntos. el u ´nico punto m´ aximo de f sujeto a las restricciones es P (x1 = 4. x2 = 17. t3 = 0) Recuerde que algunos de estos puntos cr´ ıticos pueden no cumplir las restricciones y deben pasarse por la verificaci´ on. Por tanto. Ejercicio 1 Utilizando las condiciones de KKT resuelva el problema: Max z = x1 − x2 Figura 6: Verificaci´ on de restricciones para el ejemplo 3 8 .5. en la tercera el de t1. en la segunda el de x2. t2 = 0.219 16. g 2. x2 = 13.125.125. Recuerde que en la primer columna aparece el valor de x1. x2 = 13. t2 = 0.125. en la cuarta el de t2 y en la quinta el de t3. t3 = 0) y que tiene una evaluaci´ on de 340. Obervamos que el punto Q se descarta pues g 1(Q) = 8. Ejercicios Los siguientes ser´ an los ejercicios de tarea para este tema.Figura 4: Formaci´ on del sistema para los puntos cr´ ıticos del ejemplo 3 Figura 5: Puntos cr´ ıticos del ejemplo 3 En la figura 5 se muestran las ra´ ıces del sistema que define los puntos cr´ ıticos.125.

x2 ) g 2 (x 1 . x2 y de z . entonces se pueden producir L1/2 K 1/3 m´ aquinas.sujeto a la condici´ on: g 1 (x 1 . Ejercicio 3 Utilice las condiciones de KKT para encontrar la soluci´ on o ´ptima del siguiente problema: Max z = (x1 − 1)2 + (x2 − 2)2 sujeto a: g 1 (x 1 .5 p1 kwh de energ´ ıa. ¿C´ omo puede la empresa maximizar sus ganancias? Indique 9 . y el precio en d´ olares fuera de demanda m´ axima. el precio en d´ olares durante el tiempo de demanda m´ axima. Sugerencia: Codifique la restricci´ Ejercicio 4 Una compa˜ n´ ıa de energ´ ıa el´ ectrica enfrenta demandas de energ´ ıa durante los tiempos de carga m´ axima y no m´ axima. Si se disponen de K unidades de capital y de L horas de mano de obra. A la compa˜ n´ ıa le cuesta 10 d´ olares al d´ ıa mantener cada kilowatt-hora de capacidad. on g1 = 0 mediante las dos restricciones g1 ≤ 0 y g1 ≥ 0 (−g1 ≤ 0). Ejercicio 2 Utilice las condiciones de KKT para encontrar la soluci´ on o ´ptima del siguiente problema: Min z = (x1 − 3)2 + (x2 − 5)2 sujeto a: g (x 1 . Ejercicio 5 Se disponen semanalmente de un total de 160 horas de mano de obra a 15 d´ olares la hora. entonces los clientes pedir´ an 40 − p2 kwh. Se vende cada m´ aquina a 270 d´ olares. entonces los clientes pedir´ an 60 − 0. x2 ) x1 x2 = = ≥ ≥ − x1 + x2 − 1 = 0 x1 + x2 − 2 ≤ 0 0 0 Indique en orden los valores de x1 . x2 y de z . Determine c´ omo la compa˜ n´ ıa puede maximizar los ingresos diarios menos los costos de operaci´ on. Si cobra un precio de p1 d´ olares el kilowatt-hora durante el tiempo de carga m´ axima. x2 ) = x1 + x 2 − 7 ≤ 0 x1 ≥ 0 x2 ≥ 0 Indique en orden los valores de x1 . x2 y de z . x2 ) = x1 2 + x 2 2 − 1 ≤ 0 Indique en orden los valores de x1 . La compa˜ n´ ıa tiene que tener la suficiente capacidad para satisfacer la demanda durante los dos tiempos. Indique la capacidad de la compa˜ n´ ıa en kwh. Si se cobra un precio de p2 d´ olares el kilowatt-hora. Se puede conseguir mano de obra adicional a 25 d´ olares la hora. Se puede obtener capital en cantidades ilimitadas a un costo de 5 d´ olares la unidad de capital.

el total de horas de mano de obra a utilizar. y el total de m´ aquinas a producir. 10 . el total de unidades de capital.

Sign up to vote on this title
UsefulNot useful