The NLMIXED Procedure

Active Set Methods

The parameter vector bold-italic theta element-of script upper R Superscript n can be subject to a set of m linear equality and inequality constraints:

StartLayout 1st Row 1st Column sigma-summation Underscript j equals 1 Overscript n Endscripts a Subscript i j Baseline theta Subscript j 2nd Column equals b Subscript i Baseline i equals 1 comma ellipsis comma m Subscript e Baseline 2nd Row 1st Column sigma-summation Underscript j equals 1 Overscript n Endscripts a Subscript i j Baseline theta Subscript j 2nd Column greater-than-or-equal-to b Subscript i Baseline i equals m Subscript e Baseline plus 1 comma ellipsis comma m EndLayout

The coefficients a Subscript i j and right-hand sides b Subscript i of the equality and inequality constraints are collected in the m times n matrix bold upper A and the m vector bold b.

The m linear constraints define a feasible region script upper G in script upper R Superscript n that must contain the point bold-italic theta Subscript asterisk that minimizes the problem. If the feasible region script upper G is empty, no solution to the optimization problem exists.

In PROC NLMIXED, all optimization techniques use active set methods. The iteration starts with a feasible point bold-italic theta Superscript left-parenthesis 0 right-parenthesis, which you can provide or which can be computed by the Schittkowski and Stoer (1979) algorithm implemented in PROC NLMIXED. The algorithm then moves from one feasible point bold-italic theta Superscript left-parenthesis k minus 1 right-parenthesis to a better feasible point bold-italic theta Superscript left-parenthesis k right-parenthesis along a feasible search direction bold s Superscript left-parenthesis k right-parenthesis,

bold-italic theta Superscript left-parenthesis k right-parenthesis Baseline equals bold-italic theta Superscript left-parenthesis k minus 1 right-parenthesis Baseline plus alpha Superscript left-parenthesis k right-parenthesis Baseline bold s Superscript left-parenthesis k right-parenthesis Baseline comma alpha Superscript left-parenthesis k right-parenthesis Baseline greater-than 0

Theoretically, the path of points bold-italic theta Superscript left-parenthesis k right-parenthesis never leaves the feasible region script upper G of the optimization problem, but it can reach its boundaries. The active set script upper A Superscript left-parenthesis k right-parenthesis of point bold-italic theta Superscript left-parenthesis k right-parenthesis is defined as the index set of all linear equality constraints and those inequality constraints that are satisfied at bold-italic theta Superscript left-parenthesis k right-parenthesis. If no constraint is active bold-italic theta Superscript left-parenthesis k right-parenthesis, the point is located in the interior of script upper G, and the active set script upper A Superscript left-parenthesis k right-parenthesis Baseline equals normal empty-set is empty. If the point bold-italic theta Superscript left-parenthesis k right-parenthesis in iteration k hits the boundary of inequality constraint i, this constraint i becomes active and is added to script upper A Superscript left-parenthesis k right-parenthesis. Each equality constraint and each active inequality constraint reduce the dimension (degrees of freedom) of the optimization problem.

In practice, the active constraints can be satisfied only with finite precision. The LCEPSILON=r option specifies the range for active and violated linear constraints. If the point bold-italic theta Superscript left-parenthesis k right-parenthesis satisfies the condition

StartAbsoluteValue sigma-summation Underscript j equals 1 Overscript n Endscripts a Subscript i j Baseline theta Subscript j Superscript left-parenthesis k right-parenthesis Baseline minus b Subscript i Baseline EndAbsoluteValue less-than-or-equal-to t

where t equals r left-parenthesis StartAbsoluteValue b Subscript i Baseline EndAbsoluteValue plus 1 right-parenthesis, the constraint i is recognized as an active constraint. Otherwise, the constraint i is either an inactive inequality or a violated inequality or equality constraint. Due to rounding errors in computing the projected search direction, error can be accumulated so that an iterate bold-italic theta Superscript left-parenthesis k right-parenthesis steps out of the feasible region.

In those cases, PROC NLMIXED might try to pull the iterate bold-italic theta Superscript left-parenthesis k right-parenthesis back into the feasible region. However, in some cases the algorithm needs to increase the feasible region by increasing the LCEPSILON=r value. If this happens, a message is displayed in the log output.

If the algorithm cannot improve the value of the objective function by moving from an active constraint back into the interior of the feasible region, it makes this inequality constraint an equality constraint in the next iteration. This means that the active set script upper A Superscript left-parenthesis k plus 1 right-parenthesis still contains the constraint i. Otherwise, it releases the active inequality constraint and increases the dimension of the optimization problem in the next iteration.

A serious numerical problem can arise when some of the active constraints become (nearly) linearly dependent. PROC NLMIXED removes linearly dependent equality constraints before starting optimization. You can use the LCSINGULAR= option to specify a criterion r used in the update of the QR decomposition that determines whether an active constraint is linearly dependent relative to a set of other active constraints.

If the solution bold-italic theta Superscript asterisk is subjected to n Subscript a c t linear equality or active inequality constraints, the QR decomposition of the n times n Subscript a c t matrix ModifyingAbove bold upper A With caret prime of the linear constraints is computed by ModifyingAbove bold upper A With caret prime equals bold upper Q bold upper R, where bold upper Q is an n times n orthogonal matrix and bold upper R is an n times n Subscript a c t upper triangular matrix. The n columns of matrix bold upper Q can be separated into two matrices, bold upper Q equals left-bracket bold upper Y comma bold upper Z right-bracket, where bold upper Y contains the first n Subscript a c t orthogonal columns of bold upper Q and bold upper Z contains the last n minus n Subscript a c t orthogonal columns of bold upper Q. The n times left-parenthesis n minus n Subscript a c t Baseline right-parenthesis column-orthogonal matrix bold upper Z is also called the null-space matrix of the active linear constraints ModifyingAbove bold upper A With caret prime. The n minus n Subscript a c t columns of the n times left-parenthesis n minus n Subscript a c t Baseline right-parenthesis matrix bold upper Z form a basis orthogonal to the rows of the n Subscript a c t Baseline times n matrix ModifyingAbove bold upper A With caret.

At the end of the iterating, PROC NLMIXED computes the projected gradient bold g Subscript upper Z,

bold g Subscript upper Z Baseline equals bold upper Z prime bold g

In the case of boundary-constrained optimization, the elements of the projected gradient correspond to the gradient elements of the free parameters. A necessary condition for bold-italic theta Superscript asterisk to be a local minimum of the optimization problem is

bold g Subscript upper Z Baseline left-parenthesis bold-italic theta Superscript asterisk Baseline right-parenthesis equals bold upper Z prime bold g left-parenthesis bold-italic theta Superscript asterisk Baseline right-parenthesis equals bold 0

The symmetric n Subscript a c t Baseline times n Subscript a c t matrix bold upper G Subscript upper Z,

bold upper G Subscript upper Z Baseline equals bold upper Z prime bold upper G bold upper Z

is called a projected Hessian matrix. A second-order necessary condition for bold-italic theta Superscript asterisk to be a local minimizer requires that the projected Hessian matrix is positive semidefinite.

Those elements of the n Subscript a c t vector of first-order estimates of Lagrange multipliers,

lamda equals left-parenthesis ModifyingAbove bold upper A With caret ModifyingAbove bold upper A With caret prime right-parenthesis Superscript negative 1 Baseline ModifyingAbove bold upper A With caret bold upper Z bold upper Z prime bold g

that correspond to active inequality constraints indicate whether an improvement of the objective function can be obtained by releasing this active constraint. For minimization, a significant negative Lagrange multiplier indicates that a possible reduction of the objective function can be achieved by releasing this active linear constraint. The LCDEACT=r option specifies a threshold r for the Lagrange multiplier that determines whether an active inequality constraint remains active or can be deactivated. (In the case of boundary-constrained optimization, the Lagrange multipliers for active lower (upper) constraints are the negative (positive) gradient elements corresponding to the active parameters.)

Last updated: December 09, 2022