[Ipopt] why are primal and dual both getting bigger?

Greg Horn gregmainland at gmail.com
Mon Jul 20 14:32:10 EDT 2015


Hello,

I am wondering what is going on in these iterations:

iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du
alpha_pr  ls
   0 -1.7412224e-01 6.05e-01 1.00e+00  -1.0 0.00e+00    -  0.00e+00
0.00e+00   0
   1 -1.7727349e-01 7.86e+01 1.24e+03  -1.0 1.90e-01    -  9.51e-01
1.00e+00f  1 qa
   2 -1.7503891e-01 9.91e+00 2.03e+02  -1.0 9.78e-02   0.0 1.00e+00
1.00e+00f  1 Nh LNj q
   3 -1.8564571e-01 2.40e+01 3.92e+02  -1.0 1.50e-01  -0.5 1.00e+00
1.00e+00f  1
   4 -1.9143484e-01 5.24e+00 7.48e+01  -1.0 6.30e-02  -0.1 1.00e+00
1.00e+00f  1
   5 -1.9057111e-01 1.98e+01 1.16e+02  -1.0 1.59e-01  -0.5 1.00e+00
1.00e+00f  1
   6 -1.8228406e-01 2.20e+02 6.51e+02  -1.0 3.76e-01  -1.0 1.00e+00
1.00e+00f  1
   7 -1.8501434e-01 1.14e+01 6.51e+01  -1.0 1.42e-01  -0.6 1.00e+00
1.00e+00h  1
   8 -1.4922799e-01 9.70e+01 8.46e+02  -1.0 4.07e-01  -1.1 1.00e+00
1.00e+00f  1
   9 -1.3177062e-01 1.83e+01 9.09e+01  -1.0 1.71e-01  -0.6 1.00e+00
1.00e+00f  1
iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du
alpha_pr  ls
  10 -1.0106816e-01 2.19e+02 1.03e+03  -1.0 3.28e-01  -1.1 1.00e+00
1.00e+00f  1
  11 -8.9202473e-02 9.19e+00 6.30e+01  -1.0 1.99e-01  -0.7 1.00e+00
1.00e+00h  1
  12 -3.4004388e-02 7.77e+01 3.60e+02  -1.0 3.50e-01  -1.2 1.00e+00
1.00e+00f  1
  13 -2.2893238e-02 8.25e+01 3.46e+02  -1.0 2.57e+00    -  5.95e-01
4.13e-02f  1 q
  14  1.8477513e-01 2.50e+03 5.43e+03  -1.0 2.41e+00    -  1.00e+00
8.14e-01f  1
  15  1.8497946e-01 2.46e+03 5.36e+03  -1.0 7.87e+00   0.2 1.38e-01
1.75e-02h  1
  16  1.8989117e-01 2.15e+03 5.31e+03  -1.0 7.61e+00  -0.3 2.89e-01
1.18e-01h  1
  17  1.9357819e-01 1.98e+03 5.11e+03  -1.0 1.08e+01  -0.8 1.36e-01
7.23e-02h  1
  18  1.9568016e-01 1.93e+03 5.10e+03  -1.0 6.44e+00  -0.4 1.36e-01
2.52e-02h  2
  19  1.9685439e-01 1.92e+03 5.07e+03  -1.0 1.10e+01  -0.8 8.44e-02
5.04e-03h  4
iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du
alpha_pr  ls
  20  1.9712511e-01 1.92e+03 5.07e+03  -1.0 2.52e+01  -1.3 2.13e-02
8.40e-04h  6
  21  1.9725343e-01 1.92e+03 5.07e+03  -1.0 1.33e+01  -0.9 6.56e-02
4.80e-04h  8
  22  1.9726369e-01 1.92e+03 5.06e+03  -1.0 2.09e+01  -1.4 1.24e-02
3.14e-05h 12 F+
  23  2.1823281e-01 1.78e+03 5.66e+03  -1.0 1.48e+01  -0.9 5.12e-02
7.03e-02h  1
  24  2.1815124e-01 1.78e+03 5.66e+03  -1.0 2.08e+03  -1.4 3.73e-04
3.05e-05h  5 S
  25  2.2883051e-01 1.73e+03 6.12e+03  -1.0 2.34e+01  -1.0 4.71e-02
2.39e-02h  1
  26  2.3888841e-01 1.71e+03 6.36e+03  -1.0 6.56e+01  -1.5 1.44e-02
1.63e-02h  1
  27  2.4071001e-01 1.70e+03 6.32e+03  -1.0 3.87e+02    -  8.85e-03
2.86e-03h  1
  28  2.4455516e-01 1.68e+03 6.17e+03  -1.0 1.94e+02    -  1.04e-02
1.05e-02h  1
  29  2.5885801e-01 1.65e+03 6.06e+03  -1.0 4.82e+01    -  4.37e-02
1.73e-02h  1

I initialize with a reasonably feasible initial guess, and the primal and
dual variables and objective all get higher as iterations go by. I thought
the filter method was supposed to improve either the primal or the dual
variables. What is going on here?

On a related note, is there a way to ask IPOPT to somehow "weigh" the
primal feasiblity more, or restrict the maximum primal infeasibility? My
problem is more linear where the primal feasibility is smaller.

Thank you,
Greg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20150720/f04a94bc/attachment.html>


More information about the Ipopt mailing list