Chapter Contents Previous Next
 The NLP Procedure

## HESSIAN Statement

HESSIAN variables ;

The HESSIAN statement defines the Hessian matrix G containing the second-order derivatives of the objective function f with respect to x1, ... ,xn. For more information, see the section "Derivatives".

If the DIAHES option is not specified, the HESSIAN statement lists n(n+1)/2 variable names which correspond to the elements of the lower triangle of the symmetric Hessian matrix listed by rows. For example, the statements
         min f;
decvar x1 - x3;
hessian g1-g6;

correspond to the Hessian matrix
If the DIAHES option is specified, only the n diagonal elements must be listed in the HESSIAN statement. The n rows and columns of the Hessian matrix G must correspond to the order of the n parameter names listed in the DECVAR statement. To specify the values of nonzero derivatives, the variables specified in the HESSIAN statement have to be defined in on the left-hand side of algebraic expressions in the programming statements. For example, consider the Rosenbrock function:

       proc nlp tech=nrridg;
min f;
decvar x1 x2;
hessian h1-h3;

f1 = 10 * (x2 - x1 * x1);
f2 = 1 - x1;

f = .5 * (f1 * f1 + f2 * f2);

g1 = -200 * x1 * (x2 - x1 * x1) - (1 - x1);
g2 = 100 * (x2 - x1 * x1);

h1 = -200 * (x2 - 3 * x1 * x1) + 1;
h2 = -200 * x1;
h3 = 100;
run;


 Chapter Contents Previous Next Top