Chapter Contents
Chapter Contents
Previous
Previous
Next
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 G_{j,k}, j \geq k, 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
G = [ G1 & G2 & G4 \ G2 & G3 & G5 \ G4 & G5 & G6 \ ]
 = [ \partial^2 f / \partia...
 ...\partial^2 f / \partial x_3 \partial x_2 &
 \partial^2 f / \partial x^2_3
 ]  .
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;
         gradient g1 g2;
         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
Chapter Contents
Previous
Previous
Next
Next
Top
Top

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