Condiciones de Karush-Kuhn-Tucker

Departamento de Matem´ticas, CSI/ITESM a 21 de abril de 2010

´ Indice
16.1. Historia . . . . . . . . 16.2. Formulaci´n . . . . . . o 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 optimos de problemas de optimizaci´n no lineal con ´ o restricciones de desigualdad fueron publicadas por primera vez (1939) en la tesis de Maestr´ de William ıa Karush (1917-1997) (en aqu´l entonces estudiante de matem´ticas de la Universidad de Chicago) (W. Karush e a (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´n del m´todo de los multiplicadores de o e Lagrange para restricciones de desigualdad.

16.2.

Formulaci´n o

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

. λ. xn ) ≤ 0 (4) 2 . . . an ) es un o o o ´ptimo. λm ) es un punto cr´ ıtico para F . . x2 . . . gm (x1 . .λm no negativos u tales que (a1 . xn ) ≤ 0 . . 2. . . . . . . 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.De acuerdo a la t´cnica de los multiplicadores de Lagrange se construye la funci´n: e o m F (x. Si x0 = (a1 . . . m): ∂F = g i + s2 = 0 ↔ g i ≤ 0 i ∂λi Que hacen cero las parciales con respecto a las variables si (i = 1. a2 . . n Bloque II: Condici´n de Holgura Complementaria o λi gi (xo ) = 0 i = 1. o Teorema Suponga una formulaci´n para el problema anterior de minimizaci´n. . an . . o i Si ahora el problema es de maximizaci´n: o Max f (x1 . 2 . . . m Bloque III gi ≤ 0 i = 1. λ1 .. m ∂gi (xo ) m i=1 λi ∂xj (3) Observe que los valores de si se obtienen de la relaci´n gi + s2 = 0 y de que gi ≤ 0. . . . . s) = f (x) + i=1 λi · (gi + s2 ) i (2) Los puntos que minimizan a f sujeta a las restricciones gi ≤ 0 (1 ≤ i ≤ m) est´n dentro de los puntos cr´ a ıticos de F : Que hacen cero las parciales con respecto a las variables xj (j = 1. . . . . . x2 . a2 . . . xn ) ≤ 0 g2 (x1 . . λ2 . x2 . . . . . . . . . . . . . xn ) sujeto a g1 (x1 . . . . . entonces deben existir n´meros reales llamados multiplicadores λ1 . . . 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´n sujeta a las restricciones. . . 2. Es decir que se cumple: + ∂f (xo ) ∂xj Bloque I + = 0 j = 1. . . x2 . .

o Observe tambi´n es posible trabajar el problema de maximizaci´n resolviendo el problema de minimizaci´n e o o pero conservando aquellos puntos que tengan los valores de los multiplicadores no positivos. 2. . 16. . Si x0 = (a1 . . s) = −f (x) + i=1 λi · (gi + s2 ) i De tal forma que las condiciones que deben satisfacer los optimos ahora quedan de acuerdo al siguiente ´ teorema. .λm no negativos o u tales que (a1 . . λ1 ..Para su soluci´n lo cambiamos a un problema de minimizaci´n para −f (x). . . m Bloque III gi ≤ 0 i = 1. 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 e las soluciones se revisan una a una para ver cual de ella cumple que los λj ′ s son no negativos y que tambi´n se cumplen las restricciones gi ≤ 0 en los puntos encontrados. entonces deben existir n´meros reales llamados multiplicadores λ1 . λ. . 0 ≤ x2 y 2 x1 + x2 ≤ 2. . . . a2 .4. En este caso la funci´n F queda o o o en la forma: m F (x. . . Teorema Suponga una formulaci´n para el problema anterior en el caso de maximizaci´n. x2 ) = 3 − x1 − x2 sujeta a las restricciones a o 0 ≤ x1 . Ejemplo 1 Encuentre los valores m´ ınimo y m´ximo de la funci´n f (x1 . que se cumple: − ∂f (xo ) + ∂xj ∂gi (xo ) m i=1 λi ∂xj Bloque I = 0 j = 1. a2 . Normalmente se realiza una tabla donde se hace la verificaci´n. . m 16. . 2 . En este caso las condiciones son: o ∂f (xo ) ∂x1 ∂f (xo ) ∂x2 + ∂gi (xo ) m i=1 λi ∂x1 Bloque I = −1 + 2 λ1 − λ2 =0 i (x + m λi ∂g∂x1o ) = −1 + λ1 − λ3 =0 i=1 Bloque II: Condici´n de Holgura Complementaria o λ1 g1 = λ1 (2 x1 + x2 − 2) = 0 λ2 g2 = −λ2 x1 =0 λ3 g3 = −λ3 x2 =0 3 . . Soluci´n o 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´n primeramente. λm ) es un punto cr´ ıtico para F . . . λ2 . an . . . . n (5) Bloque II λi gi (xo ) = 0 i = 1.3. Uso de las Condiciones KKT La forma de operar las condiciones de KKT ser´ la siguiente: Como lo que buscamos es el punto xo y de a inicio se desconoce. Es decir. an ) o o es un ´ptimo. . . 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´lo el ultimo rengl´n tiene valores de los multiplicadores no negativos. 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´lo el primer rengl´n tiene valores de los multiplicadores no negativos. 3. x2 ) lo alcanza en Q(0. 4. a Observamos que las tablas para minimizaci´n y para maximizaci´n son id´nticas salvo que los valores de los o o e multiplicadores est´n cambiados de signo. x2 ) lo alcanza en P (0. Por tanto. o o el m´ximo valor de f (x1 . 0) y es 3.El sistema de ecuaciones es resuelto en Maple y se arma la siguiente tabla. la estrategia conveniente para optimizar una funci´n a o sujeta a restricciones de desigualdad por el m´todo de las condiciones de KKT ser´: e a 1. Por tanto. 2) y es 1. o o 4 . Eliminar aquellos puntos que tienen a la vez multiplicadores positivos y negativos. o o o e 5. Por tanto. o ´ o el m´ ınimo valor de f (x1 . Eliminar aquellos puntos encontrados que no satisfacen las restricciones gi ≤ 0. Para minimizaci´n: escoger dentro de aquellos puntos que tienen multiplicadores no negativos aqu´l que o e tienen la menor evaluaci´n de la funci´n objetivo. Plantear el problema como si se tratar´ s´lo de minimizaci´n y resolver el sistema de ecuaciones a o o correspondientes. Para maximizaci´n: escoger dentro de aquellos puntos que tienen multiplicadores no positivos aqu´l que tienen la mayor evaluaci´n de la funci´n objetivo. Para determinar el m´ximo las condiciones quedan: a − ∂f (xo ) ∂x1 − ∂f (xo ) ∂x2 Bloque I + = 1 + 2 λ1 − λ2 =0 + = 1 + λ1 − λ3 =0 Bloque II: Condici´n de Holgura Complementaria o λ1 g1 = λ1 (2 x1 + x2 − 2) = 0 λ2 g2 = −λ2 x1 =0 λ3 g3 = −λ3 x2 =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.

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

25) λ2 · (g2 ) = −λ2 x1 λ3 · (g3 ) = −λ3 x2 ∂gi ∂x1 ∂gi ∂x1 = 0 = 0 = 0 = 0 = 0 Resolviendo el sistema anterior con Maple obtenemos los siguientes puntos.25 ≤ 0 g2 = −x1 ≤ 0 g3 = −x2 ≤ 0 Las condiciones de KKT que debe satisfacer el optimo son: ´ ∂f − ∂x1 ∂f − ∂x2 + + 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. tanto de materia prima como de producci´n: o Max z = x1 (30 − x1 ) + x2 (50 − x2 ) − 3 x1 − 5 x2 − 10 (x1 + x2 ) Restricciones x1 + x2 ≤ 17. 0 -16.1875 340.16. o Asimismo. Recuerde que las λs deben ser positivas y las restricciones deben cumplirse (gi ≤ 0): x1 0 8.125 f (x) 0 72. 0 0 -17.25 0 -8.125 x2 0 0 0 17. 0 ≤ x1 .25 8.5 17.50 0 -4. una onza del qu´ ımico A se puede convertir en una onza del producto II a un costo de 5 d´lares la o onza. Determine c´mo el comerciante puede maximizar a o o sus ganancias.50 17. Si se producen x1 onzas del producto I se vender´ a 30 − x1 d´lares la onza.25 onzas de un producto qu´ ımico A a 10 d´lares cada onza.25 378.75 0 .25 -13.50 0 4.3125 306.25 -8.25 0 8. -35.25 -4.125 λ1 0 0 -17. mientras que si se producen a o x2 onzas del producto II se vender´ a 50 − x2 d´lares la onza.75 0 0 g2 (x) 0 -8. -52.25.75 λ2 -17.6.500 8. Se o puede convertir una onza del producto qu´ ımico A en una onza del producto I a un costo de 3 d´lares a onza. Soluci´n: o Variables de Decisi´n o 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. 0 ≤ x2 Nos olvidaremos de las restricciones de no-negatividad para la x1 y x2 y posteriormente filtramos las soluciones encontradas.21875 .5 17.125 g2 (x) 0 0 0 -17.5 306. Ejemplo 3 Un comerciante puede comprar hasta 17.5 0 0 . En la tabla se tabula cada una de las restricciones evaluada en el punto correspondiente.5 0 λ3 -35.5 -17. As´ ı: f = x1 (30 − x1 ) + x2 (50 − x2 ) − 3 x1 − 5 x2 − 10 (x1 + x2 ) g1 = x1 + x2 − 17.5 -17.50 -17.25 13.5 0 0 0 0 6 g1 (x) -17.

x1+x2<=17. Objective value: 340.2188 0.125 con una evaluaci´n de 340. Es conveniente manejar las restricciones en la forma gi ≤ 0. Las ecuaciones del bloque I se definir´n utilizando a a variables e1 y e2 que representan los lados izquierdos de ellas.2188 Variable X1 X2 Row 1 2 Esto coincide con nuestro c´lculo. El rengl´n 5 se cancela pues una de las restricciones no se cumple: g1 debe ser ≤ 0. x2.0000000 Dual Price 1.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´n del sistema para los puntos cr´ o ıticos as´ como su conversi´n a matriz.12500 Slack or Surplus 340. t1 (en lugar de λ1 ). x2.125 y x2 = 13. As´ ı e1 = e2 = ∂f ∂x1 ∂f ∂x2 Value 4.0000000 Reduced Cost 0. t1. g2 y g3 codificar´n los lados izquierdos de las restricciones. o o Nota Si se utiliza LINGO para resolver el problema codific´ndolo como a MAX=x1*(30-x1)+x2*(50-x2)-3*x1-5*x2-10*(x1+x2). Por consiguiente. 4 y 6 se cancelan pues tienen al menos un λ negativo.000000 -8. y t3 (en lugar de λ3 ). t2. se obtiene: Local optimal solution found. Las variables g1. En la figura 3 se muestran las pantallas donde inician los preparativos: primeramente se limpian las variables que ser´n usadas: x1.000000 0.12500 13. t3 7 e3 = t1 · g1 e4 = t2 · g2 e5 = t3 · g3 .Figura 3: Preparativos en la TI para el ejemplo 3 El puntos correspondientes a los renglones 1. el unico o ´ punto sobrevieviente es el del rengl´n 7: x1 = 4. 2.25. t2 (en a lugar de λ2 ).21875. 3. a Hagamos las operaciones utilizando la calculadora TI. ı o Sistema e1 = 0 e2 = 0 e3 = 0 e4 = 0 e5 = 0 Para x1.

Observe que estas 7 ra´ ıces coinciden con los resultados de Maple. x2 = 13. Obervamos que el punto Q se descarta pues g1(Q) = 8. t1 = 0. x2 = 13. Por tanto. t2 = 0.125. en la cuarta el de t2 y en la quinta el de t3. Ejercicios Los siguientes ser´n los ejercicios de tarea para este tema.125.5. el unico punto m´ximo de f sujeto a las restricciones ´ a es P (x1 = 4. g2.7. en la tercera el de t1.219 o 16.Figura 4: Formaci´n del sistema para los puntos cr´ o ı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.75. t3 = 0) y Q(x1 = 8.125. t1 = 8. t3 = 0) y que tiene una evaluaci´n de 340.75.125. a Ejercicio 1 Utilizando las condiciones de KKT resuelva el problema: Max z = x1 − x2 Figura 6: Verificaci´n de restricciones para el ejemplo 3 o 8 . g3] resultantes de sustituir en las restricciones o los puntos. 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. x2 = 17. En la figura 6 se muestran los vectores [g1.75 > 0 y que el punto P las cumple.5. t2 = 0. t3 = 0) Recuerde que algunos de estos puntos cr´ ıticos pueden no cumplir las restricciones y deben pasarse por la verificaci´n. Recuerde que en la primer columna aparece el valor de x1. en la segunda el de x2. t2 = 0. t1 = 8.

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

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

Sign up to vote on this title
UsefulNot useful