[Ipopt] inf_du doesn't get smaller
Sean C McDuffee
scmcduff at blueskystudios.com
Wed Dec 10 12:20:28 EST 2014
I have a problem that results in output like:
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du
alpha_pr ls
0 3.7869112e-03 0.00e+00 3.20e-04 0.0 0.00e+00 - 0.00e+00
0.00e+00 0
1 3.7869106e-03 3.10e-35 3.24e-04 -11.0 3.32e-08 - 1.00e+00
1.00e+00f 1
2 3.7869101e-03 1.76e-37 2.26e-04 -11.0 1.92e-09 - 1.00e+00
1.00e+00f 1
3 3.7869104e-03 5.29e-37 2.59e-04 -11.0 7.08e-10 - 1.00e+00
1.00e+00h 1
4 3.7869100e-03 6.88e-36 2.57e-04 -11.0 8.14e-10 - 1.00e+00
1.00e+00f 1
5 3.7869104e-03 4.41e-37 2.59e-04 -11.0 8.08e-10 - 1.00e+00
1.00e+00h 1
6 3.7869100e-03 1.41e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00f 1
7 3.7869104e-03 7.05e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00h 1
8 3.7869100e-03 2.91e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00f 1
9 3.7869104e-03 2.03e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00h 1
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du
alpha_pr ls
10 3.7869100e-03 1.94e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00f 1
11 3.7869104e-03 9.79e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00h 1
12 3.7869100e-03 2.38e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00f 1
13 3.7869104e-03 8.38e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00h 1
14 3.7869100e-03 5.29e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00f 1
15 3.7869104e-03 1.23e-35 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00h 1
16 3.7869100e-03 8.82e-37 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00f 1
17 3.7869104e-03 3.17e-36 2.59e-04 -11.0 8.13e-10 - 1.00e+00
1.00e+00h 1
...
What could cause this and can I stop the solver effectively when the
inf_du can't be lowered anymore? I've tried using acceptable_tol and
acceptable_dual_inf_tol but inf_du is still being considered for the
acceptable_tol. I'd like to accept an iteration here if ||d||, inf_pr,
and change in obj are all small.
More information about the Ipopt
mailing list