Constrained Optimization Lagrangian
Karush-Kuhn-Tucker Conditions
Karush-Kuhn-Tucker (KKT) conditions generalize Lagrange multipliers from equality-constrained problems to constrained optimization problems with both equality and inequality constraints.
The usual minimization form is:
The Lagrangian is:
where:
- are multipliers for inequality constraints
- are multipliers for equality constraints
Conditions
At an optimal point , the KKT conditions are:
1. Stationarity
The gradient of the objective is balanced by the gradients of the active constraints.
2. Primal feasibility
The solution must satisfy the original constraints.
3. Dual feasibility
For a minimization problem with constraints written as , inequality multipliers must be nonnegative.
4. Complementary slackness
This is the key idea for inequalities:
- If a constraint is inactive, , then
- If , then the constraint must be active, so
Intuition
KKT says that at the optimum, no feasible local movement can improve the objective.
An inactive inequality constraint should not affect the solution, so its multiplier becomes . An active inequality constraint acts like an equality constraint at the boundary, so it can have a nonzero multiplier.
The multiplier can be interpreted as a shadow price: how much the optimal value changes if the constraint is relaxed slightly.
When KKT Is Enough
KKT conditions are necessary for many smooth constrained optimization problems, assuming a constraint qualification holds.
For convex optimization, KKT becomes especially powerful:
- If and are convex and are affine, then any point satisfying KKT is globally optimal.
- If Slaterβs condition holds, then KKT conditions are also necessary.
So for convex optimization, solving KKT often means solving the original optimization problem.
Example
Minimize subject to .
Rewrite the constraint in the standard form:
The Lagrangian is:
KKT:
The solution is and .
The unconstrained minimum would be , but that violates the constraint. The constraint is active at the solution, so its multiplier is nonzero.
Common Sign Mistake
The sign of depends on how the constraint is written.
For minimization:
- If using , then
- If using , then
Pick one convention and keep it consistent.