Chapter Contents |
Previous |
Next |

The NLP Procedure |

Almost all line-search algorithms use iterative extrapolation
techniques which can easily lead them to (feasible) points
where the objective function *f* is no longer defined
(For example, resulting in indefinite matrices for ML estimation)
or difficult to compute (For example, resulting in floating point
overflows). Therefore, PROC NLP provides options
restricting the step length or trust region radius
, especially during the first main iterations.

The inner product *g*^{T}*s* of the gradient *g* and the search
direction *s* is the slope of along the search direction *s*. The default starting value
in each line-search
algorithm ()during the main iteration *k* is computed in three steps:

- The first step uses either the difference
*df*=|*f*^{(k)}-*f*^{(k-1)}| of the function values during the last two consecutive iterations or the final stepsize value of the last iteration*k*-1 to compute a first value of .- Not using the DAMPSTEP
option:
- Using the DAMPSTEP[=
*r*] option:*r*times the final step length of the former iteration. The default value is*r*=2.

- Not using the DAMPSTEP
option:
- During the first five iterations, the second step
enables you to reduce to a
smaller starting value using
the INSTEP=
*r*option: - The third step can further reduce the step
length by
*u*is the maximum length of a step inside the feasible region.

The INSTEP=*r*
option lets you specify
a smaller or larger radius of the
trust region used in the first iteration of the trust-region, double
dogleg, and the Levenberg-Marquardt algorithm. The default
initial trust region radius is the length of the
scaled gradient (Mor 1978). This step corresponds to the
default radius factor of *r*=1. In most practical applications of
the TRUREG, DBLDOG, and LEVMAR algorithms, this choice is
successful. However, for
bad initial values and highly nonlinear objective functions
(such as the EXP function), the default start radius can result
in arithmetic overflows. If this happens, you may try decreasing
values of INSTEP=*r*, 0 < *r* < 1, until the iteration starts
successfully. A small factor *r* also affects the trust region
radius of the next steps because the radius is
changed in each iteration by a factor , depending
on the ratio expressing the goodness of quadratic function
approximation.
Reducing the radius corresponds to increasing the ridge
parameter , producing smaller steps directed more closely
toward the (negative) gradient direction.

Chapter Contents |
Previous |
Next |
Top |

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