You are on page 1of 5

KKT.

nb

Part II: Lagrange Multiplier Method & Karush-Kuhn-Tucker (KKT) Conditions

KKT Conditions
General Non-Linear Constrained Minimum: Min: f[x] Constrained by: h[x] = 0 (m equality constraints) g[x] 0 (k inequality constraints) Introduce slack variables si for the inequality contraints: gi [x] + si 2 == 0 and construct the monster Lagrangian: L[x,l,m] = f[x] + l h[x] + mi (gi [x] + si 2 ) Recall the geometry of the Lagrange multiplier conditions: The gradient of the objective function must be orthogonal to the tangent plane of the (active) constraints. That is the projection of the gradient of f onto the space of directions tangent to the constraint "surface" is zero. The KKT conditions are analogous conditions in the case of constraints. The KKT conditions are the following: 1) 2) 3) 4) 5) Gradient of the Lagrangian = 0 Constraints: h[x] = 0 (m equality constraints) & g[x] 0 (k inequality constraints) Complementary Slackness ( for the si variables) m.s == 0 Feasibility for the inequality constraints: si 2 0 Sign condition on the inequality multipliers: m 0

One final requirement for KKT to work is that the gradient of f at a feasible point must be a linear combination of the gradients for the equality constraints and the gradients of the active constraints: this is often called regularity of a feasible point. At a feasible point for the constraints, the active constraints are those components of g with gi [x] = 0 ( if the value of the constraining function is < 0, that constraint is said to be inactive). The solution of a set of KKT equations proceeds by cases according to which inequality constraints are Active & Inactive.

Example: Chong Zak Example 20.2

Consider a circuit with a 20V battery and two resistances in series: R and 10 ohm. We will investigate the maximization of the power in each of the resistors separately

KKT.nb

Subproblem One: Max in resistor R

Maximize power absorbed by resistance R Equivalently: minimized: - Power absorbed by R= - i2 R = - 400 R H10 + RL ^ 2 subject to -R 0. The lagrangian is L[R,l] =
- 400 R L@R_, m_D := + m H- RL H10 + RL2 D@L@R, mD, RD D@L@R, mD, mD

800 R 400 - - m H10 + RL3 H10 + RL2 -R

KKT also gives us the complementary slackness: m.R = 0 and the sign condition for the inequality constraints: m 0. But, if m > 0, then R==0 which is gives no power absorbed by R. If the constraint is inactive we must solve
Solve@HD@L@R, mD, RD . 8m 0<L 0, RD 88R 10<<

Subproblem Two: Maximization of power in 10 ohm resistor

Find the value of R such that maximal power is delivered to the 10 ohm resistor, i.e: Min: - \frac{4000}{(10+R)^2} subject to -R 0
- 4000 L@R_, m_D := + m H- RL H10 + RL2

Again, KKT gives us a complementary slackness condition: m.R = 0 and the sign condition for the inequality constraints: m 0. But, if m = 0, we must solve
Solve@HD@L@R, mD, RD . 8m 0<L 0, RD 8<

This first case has no solutions. However, R = 0 is possible in the case m > 0

KKT.nb

KKT conditions for a Linear Program: (Franklin: p. 197)

Lagrangian
Min: cT .x subject to the linear constraints: A.x == b, x 0, the associated Lagrangian is:

L[x,l] = cT .x + Transpose[l] (A.x - b) + m.(-x+s@2D L

The KKT conditions yield: cT - Transpose[l].A + Transpose[m] == 0 A.x - b ==0 x 0, 2 Transpose[m].s == 0 m 0 Eliminating m, we obtain the following: yielding cT - Transpose[l].A 0, (cT - Transpose[l].A).x= - Transpose[m]).( s@2D ) = 0

Example: Pedregal Example 3.10, p. 82

A certain electrical networks is designed to supply power xi thru 3 channels.
p@x_, y_, z_D = z + Hx^ 2 + y ^ 2 + z ^ 2 10L 2;

Contraint: h[x,y,z]=x+y+z== 5, x,y,z 0 Note that this gives a "slanted" triangles with vertices on the axes 5 units from the origin.
h@x_, y_, z_D = x + y + z

The KKT conditions give: 1) f + l h + m g = {x,y,1+z/10} + l {1,1,1} + { m1 , m2 , m3 } =={0,0,0} 2) Constraint: h==5 3) m1 x = 0, m2 y = 0, m3 z = 0, Checking for active constraints will divide in the consideration of 8 cases for the three inequality constraints.

KKT.nb

KKT: Necessary Conditions for Quad. Program

The general quadratic program proposes to minimize an objective function of the form: the linear constraints: A.x == b, x 0 Min: x.Q.x/2 + p.x subject to

Note that we may assume that Q is a symmetric matrix (and that Q is the Hessian of the objective function.) This is a non-linear program problem, for the objective function is a quadratic function (if Q is non-zero.)

Wolfe's Reduction to LP
Given the Quadratic Program as above, the associated Linear Program is: A.x == b Q.x + Transpose[A].u - v == -p x 0, v 0, x.v == 0 Note that the vector u is not necessarily positive. The only additional feature is the exclusion rule: x.v == 0, this requirement states that the ith components of x and v can not both be positive simultaneously. Finally, note that the existence of a solution of the associated LP is only necessary for the existence of a solution to the QP and is sufficient in case Q is positive semi-definite. In practice we solve the LP program: A.x==b Q.x + Transpose[A].u -v + D.z == -p x 0l, u free, v 0, z 0 Min: {1, . . .,1}.z Initial Feasible Solution: x, u=0, v=0, z where x is a basic feasible solution of A.x ==b, x 0, D is a diagonal matrix with entries 1 to correct the signs of z and z is a chosen such that Q.x + D.z == - p, z 0.

KKT conditions for a Quadratic Program

Lagrangian
Given: x.Q.x/2 + p.x subject to the linear constraints: A.x == b, x 0, the associated Lagrangian is: L[x,l] = x.Q.x/2 + p.x + l (A.x - b) + m.x The KKT conditions yield: Q.x + p - Transpose[A].l + m == 0 Transpose[l].(A.x - b) ==0 Transpose[m].x == 0 A.x == b, x 0,

KKT.nb

The KKT conditions yield: Q.x + p - Transpose[A].l + m == 0 Transpose[l].(A.x - b) ==0 Transpose[m].x == 0 A.x == b, x 0,

Exercises
I. Write down the KKT conditions for the problem: Min f[x] = - x1 3 + x2 2 - 2 x1 x3 2 subject to the constraints: 2 x1 + x2 2 + x3 - 5 == 0 5 x1 2 - x2 2 - x3 2 xi 0 for i = 1,2,3. Verify that the KKT conditions are satisfied at (1,0,3). II. Write down the KKT conditions for the problem: Min f[x] = x1 2 + x2 2 + x3 2 subject to the constraints: -x1 +x2 - x3 -10 x1 +x2 +4 x3 20 Find all the solutions. III. Here's an exercise from Grieg p. 142): Minimize: f[x] = (x1 -1)^2 + (x2 -2)^2+ ( x3 -3)^2+ ( x4 -4)^2 subject to: - x1 - x2 - x3 - x4 + 5 0 - 3 x1 - 3 x2 - 2 x3 - x4 + 10 0 x0 Verify the KT conditions and then expand f to obtains a Quadratic Program and compare the KT conditions with Wolfe's. Solve the problem using Wolfe's method . Bonus: Solve the problem using a projected gradient methods (mimic affine scaling) and a projected Newton's method. Compare the results.