The Interior Point Nonlinear Programming Solver -- Experimental

Example 7.1: Solving Highly Nonlinear Optimization Problems

This example demonstrates the use of the IPNLP solver to solve the following highly nonlinear optimization problem, which appears in Hock and Schittkowski (1981).

\displaystyle\mathop{\rm minimize}& f(x) = 0.4 (x_{1})^{0.67} (x_{7})^{-0.67} + ...   ... x_8 \ge 0 \    & 0.1 \le f(x) \le 4.2 \    & 0.1 \le x_i \le 10, i=1,2, ..., 8

The initial point used is x^0 = (6,3,0.4,0.2,6,6,1,0.5). You can call the IPNLP solver within PROC OPTMODEL to solve the problem by writing the following SAS code:

    proc optmodel;
       var x{1..8} >=.1 <=10;
       
       minimize obj = 0.4*x[1]^.67*x[7]^-.67+.4*x[2]^.67*x[8]^-.67
          +10-x[1]-x[2];
    
       con c1: 1-.0588*x[5]*x[7]-.1*x[1]>=0;
       con c2: 1-.0588*x[6]*x[8]-.1*x[1]-.1*x[2]>=0;
       con c3: 1-4*x[3]/x[5]-2/(x[3]^.71*x[5])-.0588*x[7]/x[3]^1.3>=0;
       con c4: 1-4*x[4]/x[6]-2/(x[4]^.71*x[6])-.0588*x[8]/x[4]^1.3>=0;
       con c5: .4*x[1]^.67*x[7]^-.67+.4*x[2]^.67*x[8]^-.67+10
          -x[1]-x[2]>=.1;
       con c6: .4*x[1]^.67*x[7]^-.67+.4*x[2]^.67*x[8]^-.67+10
          -x[1]-x[2]<=4.2;
    
       /* starting point */
       x[1] = 6;
       x[2] = 3;
       x[3] = .4;
       x[4] = .2;
       x[5] = 6;
       x[6] = 6;
       x[7] = 1;
       x[8] = .5;
       
       solve with ipnlp;
       print x;
     quit;
 

The summaries and the optimal solution are shown in Output 7.1.1.

Output 7.1.1: Summaries and the Optimal Solution
The OPTMODEL Procedure

Problem Summary
Objective Sense Minimization
Objective Function obj
Objective Type Nonlinear
   
Number of Variables 8
Bounded Above 0
Bounded Below 0
Bounded Below and Above 8
Free 0
Fixed 0
   
Number of Constraints 6
Linear LE (<=) 0
Linear EQ (=) 0
Linear GE (>=) 0
Linear Range 0
Nonlinear LE (<=) 1
Nonlinear EQ (=) 0
Nonlinear GE (>=) 5
Nonlinear Range 0



The OPTMODEL Procedure

Solution Summary
Solver IPNLP
Objective Function obj
Solution Status Optimal
Objective Value 3.9511673625
Iterations 29
   
Infeasibility 5.049056E-12
Optimality Error 7.5708926E-7

[1] x
1 6.46509
2 2.23272
3 0.66740
4 0.59576
5 5.93268
6 5.52724
7 1.01333
8 0.40067



Previous Page | Next Page | Top of Page