Sequential linear-quadratic programming


Sequential linear-quadratic programming is an iterative method for nonlinear optimization problems where objective function and constraints are twice continuously differentiable. Similarly to sequential [quadratic programming], SLQP proceeds by solving a sequence of optimization subproblems. The difference between the two approaches is that:
This decomposition makes SLQP suitable to large-scale optimization problems, for which efficient LP and EQP solvers are available, these problems being easier to scale than full-fledged quadratic programs.
It may be considered related to, but distinct from, quasi-Newton methods.

Algorithm basics

Consider a nonlinear programming problem of the form:
The Lagrangian for this problem is
where and are Lagrange multipliers.

LP phase

In the LP phase of SLQP, the following linear program is solved:
Let denote the active set at the optimum of this problem, that is to say, the set of constraints that are equal to zero at. Denote by and the sub-vectors of and corresponding to elements of.

EQP phase

In the EQP phase of SLQP, the search direction of the step is obtained by solving the following equality-constrained quadratic program:
Note that the term in the objective functions above may be left out for the minimization problems, since it is constant.