Previous Page | Next Page

The OPTMODEL Procedure

The Rosenbrock Problem

You can use parameters to produce a clear formulation of a problem. Consider the Rosenbrock problem:

     

where is a parameter (constant), and are optimization variables (whose values are to be determined), and is an objective function.

Here is a PROC OPTMODEL program that solves the Rosenbrock problem:

proc optmodel;
   number alpha = 100; /* declare parameter */
   var x {1..2};       /* declare variables */
   /* objective function */
   min f = alpha*(x[2] - x[1]**2)**2 +
           (1 - x[1])**2;
   /* now run the solver */
   solve;
   
   print x;
   quit;

The PROC OPTMODEL output is shown in Figure 8.3.

Figure 8.3 Rosenbrock Function Results
The OPTMODEL Procedure

Problem Summary
Objective Sense Minimization
Objective Function f
Objective Type Nonlinear
   
Number of Variables 2
Bounded Above 0
Bounded Below 0
Bounded Below and Above 0
Free 2
Fixed 0
   
Number of Constraints 0

Solution Summary
Solver NLPU/LBFGS
Objective Function f
Solution Status Optimal
Objective Value 1.727916E-15
Iterations 13
   
Optimality Error 4.3801766E-7

[1] x
1 1
2 1

Previous Page | Next Page | Top of Page