MODEL Procedure

Minimization Methods

PROC MODEL currently supports two methods for minimizing the objective function. These methods are described in the following sections.

GAUSS

The Gauss-Newton parameter-change vector for a system with g equations, n nonmissing observations, and p unknown parameters is

bold upper Delta equals left-parenthesis bold upper X prime bold upper X right-parenthesis Superscript negative 1 Baseline bold upper X prime bold r

where bold upper Delta is the change vector, X is the stacked n g times p Jacobian matrix of partial derivatives of the residuals with respect to the parameters, and r is an n g times 1vector of the stacked residuals. The components of X and r are weighted by the S Superscript negative 1 matrix. When instrumental methods are used, X and r are the projections of the Jacobian matrix and residuals vector in the instruments space and not the Jacobian and residuals themselves. In the preceding formula, S and W are suppressed. If instrumental variables are used, then the change vector becomes

bold upper Delta equals left-parenthesis bold upper X prime left-parenthesis bold upper S Superscript negative 1 Baseline circled-times bold upper W right-parenthesis bold upper X right-parenthesis Superscript negative 1 Baseline bold upper X prime left-parenthesis bold upper S Superscript negative 1 Baseline circled-times bold upper W right-parenthesis bold r

This vector is computed at the end of each iteration. The objective function is then computed at the changed parameter values at the start of the next iteration. If the objective function is not improved by the change, the bold upper Delta vector is reduced by one-half and the objective function is reevaluated. The change vector will be halved up to MAXSUBITER= times until the objective function is improved. If the objective function cannot be improved after MAXSUBITER= times, the procedure switches to the MARQUARDT method described in the next section to further improve the objective function.

For FIML, the bold upper X prime bold upper X matrix is substituted with one of three choices for approximations to the Hessian. (See the section Full Information Maximum Likelihood Estimation (FIML).)

MARQUARDT

The Marquardt-Levenberg parameter change vector is

bold upper Delta equals left-parenthesis bold upper X prime bold upper X plus lamda normal d normal i normal a normal g left-parenthesis bold upper X prime bold upper X right-parenthesis right-parenthesis Superscript negative 1 Baseline bold upper X prime bold r

where bold upper Delta is the change vector, and X and r are the same as for the Gauss-Newton method, described in the preceding section. Before the iterations start, lamda is set to a small value (1E–6). At each iteration, the objective function is evaluated at the parameters changed by bold upper Delta. If the objective function is not improved, lamda is increased to 10lamda and the step is tried again. lamda can be increased up to MAXSUBITER= times to a maximum of 1E15 (whichever comes first) until the objective function is improved. For the start of the next iteration, lamda is reduced to max(lamda/10,1E–10).

Last updated: June 19, 2025