The Interior Point NLP Solver |
This example considers a nonlinear least squares problem that arises in orthogonal regression. The example is taken from Gulliksson (1990). The statements for this example follow:
proc optmodel; number npts = 5000; number tz3 = 1.7; number pseed = 237.1531; number psize = 0.2; number pi = 4 * atan(1); number icr0 = 1 / npts; number incr = icr0 * 2 * pi; number xd{i in 1..npts} = ((1 + tz3^2) + cos(incr * (i - 1))) * cos(incr * (i - 1)) * (1 + psize * cos(incr * (i - 1) * pseed)); number yd{i in 1..npts} = ((1 + tz3^2) + cos(incr * (i - 1))) * sin(incr * (i - 1)) * (1 + psize * cos(incr * (i - 1) * pseed)); var z1 init 1.0; var z2 init 0.0; var z3 init 1.0; var x{i in 1..npts} init xd[i]; var y{i in 1..npts} init yd[i]; minimize f = sum {i in 1..npts} ( (x[i] - xd[i])^2 + (y[i] - yd[i])^2 ); con cons1{i in 1..npts}: ((x[i] - z1)^2 + (y[i] - z2)^2)^2 - ((x[i] - z1)^2 + (y[i] - z2)^2) * (1 + z3^2)^2= 0.0; solve with ipnlp / tech=ipkrylov; quit;
The problem and solution summaries are shown in Output 9.4.1. Since this problem contains several thousands of variables, the iterative trust region interior point techhnique is used (TECH=IPKRYLOV).
Problem Summary | |
---|---|
Objective Sense | Minimization |
Objective Function | f |
Objective Type | Quadratic |
Number of Variables | 10003 |
Bounded Above | 0 |
Bounded Below | 0 |
Bounded Below and Above | 0 |
Free | 10003 |
Fixed | 0 |
Number of Constraints | 5000 |
Linear LE (<=) | 0 |
Linear EQ (=) | 0 |
Linear GE (>=) | 0 |
Linear Range | 0 |
Nonlinear LE (<=) | 0 |
Nonlinear EQ (=) | 5000 |
Nonlinear GE (>=) | 0 |
Nonlinear Range | 0 |
Copyright © SAS Institute, Inc. All Rights Reserved.