Constrained Optimisation
Let be functions. A constrained optimisation problem in standard form is the problem of minimising the objective function subject to inequality constraints and equality constraints.
The feasible set is and a point of is feasible. A constraint of the form or is written in standard form as or Let The inequality constraint is active at if and only if and inactive if and only if Equality constraints are active at every feasible point. The active set is the set of indices of the active constraints at The problem is a convex optimisation problem if and every are convex and every is affine, since the feasible set is then an intersection of convex sublevel sets and hyperplanes.
The substitution method applies to equality constraints that can be solved explicitly for some of the variables. If the constraints are equivalent to for then the constrained problem is equivalent to the unconstrained problem of minimising over For example, minimising subject to becomes minimising whose stationary point gives The method fails when the constraints cannot be solved in closed form.
Consider a problem with equality constraints only and The Lagrangian is the objective function plus a weighted sum of the constraint functions,
where the weights are the Lagrange multipliers. The method of Lagrange multipliers states that if is a local minimiser at which the constraint gradients are linearly independent then there exist multipliers such that is a stationary point of the Lagrangian.
The first condition states that the gradient of lies in the span of the constraint gradients, so that no direction that keeps the constraints satisfied to first order is a descent direction. The two conditions give equations in the unknowns For example, minimising subject to gives and so and
Consider the standard form problem with The Lagrangian is
with multipliers for the inequality constraints and for the equality constraints. The Karush–Kuhn–Tucker (KKT) conditions at a point with multipliers are:
- stationarity:
- primal feasibility: and
- dual feasibility:
- complementary slackness:
Complementary slackness states that an inactive constraint has a zero multiplier and a constraint with a positive multiplier is active, so the KKT conditions reduce to the method of Lagrange multipliers applied to the active constraints. A constraint qualification is a regularity condition on the constraints at such as linear independence of the gradients of the active constraints or Slater’s condition for convex problems, which requires a feasible point at which every inequality constraint is strictly satisfied. If is a local minimiser at which a constraint qualification holds then there exist multipliers satisfying the KKT conditions, so the conditions are necessary. If the problem is convex then any point satisfying the KKT conditions is a global minimiser, so the conditions are sufficient, and under Slater’s condition they are necessary and sufficient. The multiplier measures the rate at which the optimal value would improve if the constraint were relaxed to and is called the shadow price of the constraint.
The Lagrange dual function is the infimum of the Lagrangian over for fixed multipliers.
The dual function is concave, as a pointwise infimum of affine functions of whether or not the original problem is convex, and may take the value Let be the optimal value of the standard form problem, which is the primal problem. Weak duality states that the dual function is a lower bound on the optimal value for every since for feasible the multiplier terms in the Lagrangian are non-positive.
The dual problem is the problem of finding the best lower bound,
which is a convex optimisation problem with optimal value The duality gap is Strong duality holds when which is the case for a convex primal problem satisfying Slater’s condition, and then the optimal multipliers of the dual problem are the KKT multipliers of the primal problem. A feasible dual point certifies that no feasible primal point has objective value below which is how iterative methods bound their distance from optimality.
A linear program is a constrained optimisation problem whose objective function and constraint functions are all affine. Let with rank and The standard form linear program is
where the inequality holds element-wise. Any linear program can be written in standard form by adding a non-negative slack variable to convert each inequality constraint into the equality constraint and by writing each unrestricted variable as a difference of two non-negative variables. The feasible set of a linear program is a polyhedron and a linear program is a convex optimisation problem. The dual of the standard form linear program is the linear program
and strong duality holds whenever either problem has a feasible point.
A vertex or extreme point of a polyhedron is a point of that is not a convex combination of two other points of Let be a set of indices such that the columns of indexed by are linearly independent. is called a basis of the linear program, the variables indexed by are the basic variables and the others are the non-basic variables. The basic solution for sets the non-basic variables to zero and solves for the basic variables,
and is a basic feasible solution if The vertices of the feasible set are exactly the basic feasible solutions. The fundamental theorem of linear programming states that if a linear program has a feasible point then it has a basic feasible solution, and if it has an optimal solution then some basic feasible solution is optimal, so the search can be restricted to the finitely many vertices. A linear program whose objective is unbounded below on the feasible set is unbounded and one with an empty feasible set is infeasible.
The simplex method moves from one basic feasible solution to an adjacent one, differing in a single basic variable, so that the objective does not increase, until no improving move exists. Let be the current basis with basic feasible solution and let be the objective coefficients of the basic variables. The reduced cost of the non-basic variable is the rate of change of the objective when is increased from zero and the basic variables adjust to keep
The current basic feasible solution is optimal if for every non-basic Otherwise a non-basic variable with negative reduced cost is chosen as the entering variable and increased until some basic variable reaches zero, which is identified by the minimum ratio test over the components of with
and that variable is the leaving variable that is swapped out of the basis. If no exists the linear program is unbounded. An initial basic feasible solution is found by solving an auxiliary linear program with artificial variables in a first phase. With a rule that prevents the same basis from recurring the simplex method terminates in finitely many iterations. Its worst case visits exponentially many vertices, but in practice it typically takes a number of iterations proportional to
Interior point methods approach a minimiser through the interior of the feasible set rather than along its boundary. Consider a convex problem in standard form with and a feasible point satisfying Slater’s condition. The logarithmic barrier function is finite on the strictly feasible points and grows without bound as any inequality constraint becomes active.
Let The barrier problem replaces the inequality constraints by adding the barrier function to the objective,
and has a unique minimiser when the objective is strictly convex. The set of minimisers is the central path, and is feasible for the original problem with multipliers that are dual feasible, so by weak duality
The barrier method solves the barrier problem by Newton’s method for an increasing sequence of values of typically with starting each solve from the previous minimiser, until is below the required accuracy. Primal-dual interior point methods instead apply Newton’s method to the KKT conditions with complementary slackness perturbed to updating the primal variables and multipliers together, and are the most widely used variant. For linear programs the number of Newton iterations needed to reach accuracy grows as so interior point methods run in polynomial time where the simplex method does not.