Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
The NLIN Procedure

PROC NLIN Statement

PROC NLIN < options > ;
The PROC NLIN statement invokes the procedure.

The following table lists the options available with the PROC NLIN statement. Explanations follow in alphabetical order.

Task   Options
Specify data sets DATA=
  OUTEST=
  SAVE
Grid search BEST=
Choose an iteration method METHOD=
Control step size MAXSUBIT=
  RHO=
  SMETHOD=
  TAU=
Specify details of iteration G4
  SIGSQ=
Minimization Tuning CONVERGE=
  CONVERGEOBJ=
  CONVERGEPARM=
  SINGULAR=
  MAXITER=
Modify Amount of Output HOUGAARD
  NOITPRINT
  NOPRINT
List Model Structure LIST
  LISTALL
  LISTCODE
  LISTDEP
  LISTDER
  XREF
Trace Model Execution FLOW
  PRINT
  TRACE
BEST=n
requests that PROC NLIN display the residual sums of squares only for the best n combinations of possible starting values from the grid. If you do not specify the BEST= option, PROC NLIN displays the residual sum of squares for every combination of possible parameter starting values.

CONVERGE=c
specifies the convergence criteria for PROC NLIN. For all iterative methods except for METHOD=DUD, the relative offset convergence measure of Bates and Watts is used to determine convergence. This measure is labeled "R" in the Estimation Summary table. The iterations are said to have converged for CONVERGE=c if
\sqrt{\frac{ r'X(X'X)^{-1}X'r } { {LOSS}^i }} \lt c
where r is the residual vector and X is the Jacobian matrix. The default LOSS function is the sum of squared errors (SSE). By default, CONVERGE=10-5. The R convergence measure cannot be computed accurately in the special case of a perfect fit ( residuals close to zero). When the SSE is less than the value of the SINGULAR= option, convergence is assumed.

CONVERGEOBJ=c (DUD only)
uses the change in the LOSS function as the convergence criterion. For more details on the LOSS function, see the section "Special Variable Used to Determine Convergence Criteria". The iterations are said to have converged for CONVERGEOBJ=c if
[( LOSSi-1 - LOSSi )/( LOSSi + 10-6 )] < c
where LOSSi is the LOSS for the ith iteration. The default LOSS function is the sum of squared errors (SSE). The constant c should be a small positive number. See the "Computational Methods" section for more details. By default, CONVERGE=10-8.

CONVERGEPARM=c (DUD only)
uses the maximum change among parameter estimates as the convergence criterion. The iterations are said to have converged for CONVERGEPARM=c if
\max_j ( \frac{ | \beta_j^{i-1} - \beta_j^i | } 
 { | \beta_j^{i-1} | } ) \lt c
where \beta_j^i is the value of the jth parameter at the ith iteration.

The default convergence criterion for DUD is CONVERGEOBJ. If you specify CONVERGEOBJ=c, the specified c is used instead of the default of 10-8. If you specify CONVERGEPARM=c, the maximum change in parameters is used as the convergence criterion (instead of LOSS). If you specify both the CONVERGEOBJ= and CONVERGEPARM= options, PROC NLIN continues to iterate until the decrease in LOSS is sufficiently small (as determined by the CONVERGEOBJ= option) and the maximum change among the parameters is sufficiently small (as determined by the CONVERGEPARM= option).

DATA=SAS-data-set
specifies the SAS data set containing the data to be analyzed by PROC NLIN. If you omit the DATA= option, the most recently created SAS data set is used.

FLOW
displays a message for each statement in the model program as it is executed. This debugging option is rarely needed, and it produces large amounts of output.

G4
uses a Moore-Penrose (g4) inverse in parameter estimation. Refer to Kennedy and Gentle (1980) for details.

HOUGAARD
adds Hougaard's measure of skewness to the parameter estimation table. Computation of the measure requires derivatives (see the section "Hougaard's Measure of Skewness"). Thus, the HOUGAARD option is ignored if you specify the option METHOD=DUD, which is described later in this list.

LIST
displays the model program and variable lists, including the statements added by macros. Note that the expressions displayed by the LIST option do not necessarily represent the way the expression is actually calculated, since intermediate results for common subexpressions can be reused but are shown in expanded form by the LIST option. To see how the expression is actually evaluated, see the description for the LISTCODE option, which follows.

LISTALL
selects the LIST, LISTDEP, LISTDER, and LISTCODE options.

LISTCODE
displays the derivative tables and compiled model program code. The LISTCODE option is a debugging feature and is not normally needed.

LISTDEP
produces a report that lists, for each variable in the model program, the variables that depend on it and on which it depends.

LISTDER
displays a table of derivatives. The derivatives table lists each nonzero derivative computed for the problem. The derivative listed can be a constant, a variable in the model program, or a special derivative variable created to hold the result of the derivative expression.

MAXITER=i
limits the number of iterations PROC NLIN performs before it gives up trying to converge. The i value must be a positive integer. By default, MAXITER=100.

MAXSUBIT=i
places a limit on the number of step halvings. By default, MAXSUBIT=30. The value of MAXSUBIT must be a positive integer.

METHOD=GAUSS | MARQUARDT | NEWTON | GRADIENT | DUD
specifies the iterative method that PROC NLIN uses. The GAUSS, MARQUARDT and NEWTON methods are more robust than the GRADIENT and DUD methods. If you omit the METHOD= option, METHOD=GAUSS is used. See the "Computational Methods" section for more information.

NOITPRINT
suppresses the display of the results of each iteration.

NOPRINT
suppresses the display of the output. Note that this option temporarily disables the Output Delivery System (ODS). For more information, see Chapter 15, "Using the Output Delivery System."

OUTEST=SAS dataset
specifies an output data set to contain the parameter estimates produced at each iteration. See the "Output Data Sets" section for details. If you want to create a permanent SAS data set, you must specify a two-level name. See the chapter "SAS Files," in SAS Language Reference: Concepts for more information on permanent SAS data sets.
PRINT
displays the result of each statement in the program as it is executed. This option produces large amounts of output.

RHO=value
specifies a value to use in controlling the step-size search. By default, RHO=0.1 except when METHOD=MARQUARDT, in which case RHO=10. See the section "Computational Methods" for more details.

SAVE
specifies that, when the iteration limit is exceeded, the parameter estimates from the final iteration are output to the OUTEST= data set. These parameter estimates are located in the observation with _TYPE_=FINAL. If you omit the SAVE option, the parameter estimates from the final iteration are not output to the data set unless convergence is attained.

SIGSQ=value
specifies a value to replace the mean square error for computing the standard errors of the estimates. The SIGSQ= option is used with maximum-likelihood estimation.

SINGULAR=s
specifies the singularity criterion, s, which is the absolute magnitude of the smallest pivot value allowed when inverting the Hessian or approximation to the Hessian. The default value is 1E-8.

SMETHOD=HALVE | GOLDEN | CUBIC
specifies the step-size search method that PROC NLIN uses. The default is SMETHOD=HALVE. See the section "Computational Methods" for details.

TAU=value
specifies a value to use in controlling the step-size search. By default, TAU=1 except when METHOD=MARQUARDT, in which case TAU=0.01. See the section "Computational Methods" for details.

TRACE
displays the result of each operation in each statement in the model program as it is executed, in addition to the information displayed by the FLOW and PRINT options. This debugging option is needed very rarely, and it produces even more output than the FLOW and PRINT options.

XREF
displays a cross-reference of the variables in the model program showing where each variable is referenced or given a value. The XREF listing does not include derivative variables.

Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
Top
Top

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.