Active-set method

In mathematical optimization, the active-set method is an algorithm used to identify the active constraints in a set of inequality constraints. The active constraints are then expressed as equality constraints, thereby transforming an inequality-constrained problem into a simpler equality-constrained subproblem.

An optimization problem is defined using an objective function to minimize or maximize, and a set of constraints


 * $$g_1(x) \ge 0, \dots, g_k(x) \ge 0$$

that define the feasible region, that is, the set of all x to search for the optimal solution. Given a point $$x$$ in the feasible region, a constraint


 * $$g_i(x) \ge 0$$

is called active at $$x_0$$ if $$g_i(x_0) = 0$$, and inactive at $$x$$ if $$g_i(x_0) > 0.$$ Equality constraints are always active. The active set at $$x_0$$ is made up of those constraints $$g_i(x_0)$$ that are active at the current point.

The active set is particularly important in optimization theory, as it determines which constraints will influence the final result of optimization. For example, in solving the linear programming problem, the active set gives the hyperplanes that intersect at the solution point. In quadratic programming, as the solution is not necessarily on one of the edges of the bounding polygon, an estimation of the active set gives us a subset of inequalities to watch while searching the solution, which reduces the complexity of the search.

Active-set methods
In general an active-set algorithm has the following structure:


 * Find a feasible starting point
 * repeat until "optimal enough"
 * solve the equality problem defined by the active set (approximately)
 * compute the Lagrange multipliers of the active set
 * remove a subset of the constraints with negative Lagrange multipliers
 * search for infeasible constraints
 * end repeat

Methods that can be described as active-set methods include:
 * Successive linear programming (SLP)
 * Sequential quadratic programming (SQP)
 * Sequential linear-quadratic programming (SLQP)
 * Reduced gradient method (RG)
 * Generalized reduced gradient method (GRG)

Performance
Consider the problem of Linearly Constrained Convex Quadratic Programming. Under reasonable assumptions (the problem is feasible, the system of constraints is regular at every point, and the quadratic objective is strongly convex), the active-set method terminates after finitely many steps, and yields a global solution to the problem. Theoretically, the active-set method may perform a number of iterations exponential in m, like the simplex method. However, its practical behaviour is typically much better.