KKT conditions: summary

KKT conditions: summary#

Standard form formulation#

Consider the following general inequality and equality constrained optimisation problem written in a standard form:

(5)#min.f(x)s.t.hi(x)=0(λi)i{1,2,...,m}gj(x)0(μj)j{1,2,...,n}

There are m equality constraints associated with Lagrange multipliers λi and n inequality constraints associated with Lagrange multipliers μj.

Lagrangian#

(6)#L=f(x)+i=1mλihi(x)+j=1nμjgj(x)

The Lagrangian has three components: the original objective function, the equality constraints multiplied by their Lagrange multipliers, and the inequality constraints multiplied by their Lagrange multipliers.

KKT Conditions#

(7)#Lx=0(Optimality conditions)Lλi=hi(x)=0i{1,2,...,m}(Primal feasibility)gj(x)0j{1,2,...,n}(Primal feasibility)μjgj(x)=0j{1,2,...,n}(Complementary slackness conditions)μj0j{1,2,...,n}(Dual feasibility)

Let’s look at each of these equations in a little more detail. We have:

  1. Derivative of Lagrangian w.r.t. decision variables x equal to zero optimality conditions

  2. Derivative of Lagrangian w.r.t. Lagrange multipliers λi (equality constraints) primal feasibility (solution is feasible with respect to the primal constraints)

  3. Derivative of Lagrangian w.r.t. Lagrange multipliers μj (inequality constraints) primal feasibility

  4. The multiplication of a Lagrange multiplier with its associated inequality constraint is zero complementary slackness conditions (indicates that in some cases the inequality constraints might not be binding)

  5. Lagrange multipliers μj need to be positive or zero dual feasibility

Interpretation of the complementary slackness conditions

If a constraint is binding, we can replace the inequality sign with an equality sign, so we have gj(x)=0. Then, the Lagrange multiplier μj may take on any non-zero value (μj0), and the constraint μjgj(x)=0 will be satisfied. If the constraint is non-binding (gj(x)<0), the Lagrange multiplier will equal zero (μj=0). Otherwise the constraint μjgj(x)=0 would be violated. Note that these constraints are non-linear.

The KKT conditions are a large set of equations. For simple cases addressed in this course, we can solve the problem by using trial-and-error. We try different combinations of constraints, come up with candidate solutions, then assess whether they are optimal or not. Depending on the problem, we reason which inequality constraints are likely to be binding. Then, we make them equality constraints, and their corresponding μj0. For the non-binding inequality constraints, their corresponding μj=0. This can greatly simplify the KKT conditions. We will be left with as many equations as there are unknowns, so we can solve for x, λi, and μj to obtain the optimal solution to the problem. We can also check if there is alternative combination of binding/non-binding constraints that would yield a better solution.