[Ipopt] Sequence of optimization problems / Avoiding restauration phase starting from feasible point
Uwe Nowak
uwe.nowak at itwm.fraunhofer.de
Tue Mar 8 07:45:50 EST 2011
Hello!
I solve a sequence of optimization problems, call them P1 ... Pn
They have all the same structure (non zero entries etc. are the same).
Each following optimization problem is only a slight modification of the
previous one, where the solution of the previous one is always feasible
to the next one
From a previous optimization run Q (with a different model) I get a
solution that is known to be a local optimum of P1. However I do not
have the dual variables for P1
Now I am solving P1 with this solution (I know, I am at the local
optimum). To avoid the primal solution to be pushed in the interior, I set
mu_init = 1E-4.
In the finalize_solution I copy the variable bounds and lambda.
Then I subsequently solve P2 to Pn by setting
warm_start_init_point = yes
mu_init = (mu of the last optimization run)
and calling the ReOptimizeTNLP method.
First question. Is there something I have forgotten? Do I have to set
some additional parameters (e.g. at the beginning I did not set mu_init,
so each solution was pushed into the interior first an then converged again)
Second question:
Sometimes the algorithm, starting from an feasible primal point, become
primal infeasible and starts a restauration phase. This yields a
solution much worse then the previous feasible.
Is there a maybe less aggressive strategy forcing IPOPT to remain almost
feasible all the time?
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 70 1.5682727e+02 8.57e-02 3.44e-01 -5.0 3.52e+00 -3.4 3.98e-01 1.00e+00h 1
> 71 1.5675160e+02 5.22e-02 4.02e-01 -5.0 7.36e+00 -3.9 1.00e+00 4.05e-01h 1
> 72 1.5666212e+02 1.56e-01 1.90e-01 -5.0 1.05e+01 -4.4 5.98e-01 1.00e+00h 1
> 73 1.5656510e+02 1.00e-01 1.15e-02 -5.0 8.20e+00 -4.8 1.00e+00 1.00e+00h 1
> 74 1.5650007e+02 4.40e-01 7.39e-04 -5.0 3.30e+00 -4.4 1.00e+00 1.00e+00h 1
> 75 1.5649592e+02 2.27e-01 1.26e-03 -5.0 5.28e+00 -4.9 1.00e+00 1.00e+00h 1
> 76 1.5649478e+02 1.33e+01 3.57e-03 -5.0 7.36e+00 -5.4 4.47e-01 5.16e-01h 1
> 77 1.5649281e+02 1.11e+02 2.70e-03 -5.0 2.51e+01 -5.8 3.32e-01 2.37e-01H 1
> 78 1.5649225e+02 9.01e+01 3.86e-02 -5.0 1.37e+01 -4.5 6.44e-01 5.98e-01h 1
> 79 1.5649209e+02 5.69e+01 7.25e-03 -5.0 3.20e+01 -5.0 6.57e-02 6.29e-01h 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 80 1.5649203e+02 1.03e+02 1.01e-01 -5.0 2.64e+02 -4.6 4.53e-04 1.10e-01h 1
> 81 1.5649203e+02 1.03e+02 1.01e-01 -5.0 7.79e+02 -4.1 4.88e-03 4.12e-04h 1
> 82 1.5649203e+02 1.53e+02 1.26e-01 -5.0 3.22e+03 -4.6 1.69e-02 1.92e-02f 1
> 83 1.5649200e+02 1.65e+02 4.44e-01 -5.0 7.95e+01 -3.3 3.34e-01 1.26e-01h 2
> 84 1.5649197e+02 1.78e+02 1.35e+00 -5.0 6.37e+01 -2.9 1.23e-01 1.65e-01h 2
> 85 1.5649197e+02 1.72e+02 7.19e-01 -5.0 5.86e+01 -2.4 3.11e-01 6.13e-02h 2
> 86 1.5649197e+02 1.72e+02 7.18e-01 -5.0 2.68e+01 -1.1 2.88e-02 4.10e-04h 7
> 87r 1.5649197e+02 1.72e+02 9.99e+02 2.2 0.00e+00 -1.6 0.00e+00 2.53e-07R 18
> 88r 1.5653028e+02 1.72e+02 9.99e+02 2.2 1.08e+06 - 4.79e-07 1.32e-06f 1
> 89r 1.5653716e+02 1.70e+02 9.99e+02 0.8 1.71e+05 - 1.53e-04 1.07e-05f 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 90r 1.5727519e+02 1.65e+02 9.99e+02 0.8 1.49e+05 - 1.50e-04 8.06e-05f 1
> 91r 1.5813662e+02 1.59e+02 9.98e+02 0.8 1.28e+05 - 5.08e-04 6.56e-05f 1
> 92r 1.6414260e+02 1.39e+02 9.98e+02 0.8 9.78e+04 - 8.55e-06 3.01e-04f 1
> 93r 1.6602517e+02 1.28e+02 9.96e+02 0.8 7.75e+04 - 2.26e-03 1.68e-04f 1
> 94r 1.8269041e+02 6.18e+01 9.95e+02 0.8 2.91e+04 - 1.15e-03 2.29e-03f 1
> 95r 2.1761773e+02 6.03e+01 9.95e+02 0.8 4.89e+05 - 2.29e-05 1.48e-04f 1
> 96r 2.1929903e+02 4.07e+01 9.94e+02 0.8 9.65e+03 - 1.19e-03 2.03e-03f 1
> 97r 2.3744708e+02 1.30e+01 9.91e+02 0.8 1.42e+04 - 3.20e-03 5.88e-03f 1
> 98r 2.5295068e+02 1.25e+01 9.88e+02 0.8 1.49e+04 - 3.07e-03 3.97e-03f 1
> 99r 2.9942219e+02 1.73e+01 9.83e+02 0.8 1.29e+04 - 4.61e-03 9.79e-03f 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 100r 3.3993981e+02 2.09e+01 9.79e+02 0.8 1.85e+04 - 4.37e-03 5.75e-03f 1
> 101r 4.1211055e+02 3.10e+01 9.75e+02 0.8 2.67e+04 - 3.60e-03 6.14e-03f 1
> 102r 4.1310090e+02 3.04e+01 9.15e+02 0.8 5.20e+01 0.0 6.25e-02 2.59e-02f 1
> 103r 4.2195318e+02 2.80e+01 7.60e+02 0.8 8.77e+00 0.4 1.71e-01 9.18e-02f 1
> 104r 4.2176146e+02 1.96e+01 2.42e+02 0.8 7.60e+00 1.8 1.00e+00 3.00e-01f 1
> 105r 4.2099592e+02 1.71e+01 3.62e+02 0.1 5.61e+00 2.2 6.35e-01 1.28e-01f 1
> 106r 4.1882400e+02 8.13e+00 1.18e+03 0.1 5.05e+00 2.6 5.57e-01 5.26e-01f 1
> 107r 4.1775430e+02 1.87e+00 2.21e+03 0.1 2.34e+00 3.0 1.19e-01 7.70e-01f 1
> 108r 4.1748080e+02 5.32e-01 1.61e+03 0.1 5.52e-01 3.5 9.43e-01 9.70e-01f 1
> 109r 4.1755413e+02 3.90e-01 1.23e+03 0.1 5.27e-01 3.0 1.00e+00 2.59e-01f 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 110r 4.1766642e+02 2.08e-01 1.10e+03 0.1 1.59e+00 2.5 1.00e+00 1.14e-01f 1
> 111r 4.1771327e+02 4.82e-02 1.03e+03 0.1 2.92e+00 2.0 9.57e-01 6.64e-02f 1
> 112r 4.1883072e+02 4.00e-02 6.83e+02 0.1 2.57e-01 1.6 1.00e+00 3.38e-01f 1
> 113r 4.2636433e+02 6.30e-02 2.88e+01 0.1 2.21e-01 1.1 9.71e-01 1.00e+00f 1
> 114r 4.2698938e+02 1.54e-03 9.49e-01 -0.6 2.19e-02 1.5 1.00e+00 1.00e+00f 1
> 115 4.1348536e+02 5.65e-02 3.11e+01 -5.0 1.15e+01 -1.2 4.17e-01 8.17e-02f 2
> 116 4.0494088e+02 5.30e-02 2.87e+01 -5.0 6.90e+00 -1.6 5.12e-01 7.62e-02F 1
...
> 238 1.5781566e+02 1.74e+01 4.57e-01 -5.0 1.04e+02 -3.9 1.03e-01 4.41e-01h 1
> 239 1.5778549e+02 1.72e+01 1.20e+00 -5.0 2.41e+01 -4.3 5.83e-01 1.26e-02h 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 240 1.5633017e+02 2.55e+01 9.25e-01 -5.0 5.87e+01 -4.8 7.83e-01 4.68e-01h 1
> 241 1.5632957e+02 2.55e+01 2.56e+00 -5.0 8.92e+01 -5.3 8.49e-01 8.54e-05h 1
> 242 1.5432647e+02 1.77e+01 1.44e+00 -5.0 1.29e+02 -5.8 6.10e-02 3.14e-01h 1
> 243 1.5394238e+02 1.62e+01 1.62e+00 -5.0 1.03e+02 -6.2 2.57e-01 8.51e-02h 1
> 244 1.5388488e+02 1.59e+01 1.84e+00 -5.0 6.18e+01 -4.9 8.11e-01 1.90e-02h 1
> 245 1.5388445e+02 1.59e+01 6.87e-01 -5.0 4.38e+00 -3.6 1.00e+00 2.79e-04h 1
> 246 1.5350298e+02 1.25e+01 5.42e-01 -5.0 1.00e+01 -4.1 1.00e+00 2.23e-01h 1
> 247 1.5325127e+02 1.01e+01 6.52e-01 -5.0 3.48e+01 -4.5 6.23e-01 1.90e-01h 1
> 248 1.5270523e+02 7.71e+00 3.38e-01 -5.0 3.44e+01 -5.0 4.33e-01 2.47e-01h 1
> 249 1.5251127e+02 7.00e+00 1.34e+00 -5.0 4.77e+01 -5.5 1.00e+00 9.94e-02h 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 250 1.5187417e+02 5.42e+00 3.58e-01 -5.0 5.14e+01 -6.0 1.17e-01 8.79e-01h 1
> 251 1.5181891e+02 4.79e+00 2.37e-01 -5.0 1.78e+01 -6.4 1.00e+00 1.17e-01h 1
> 252 1.5164263e+02 6.05e-01 3.34e-02 -5.0 1.60e+01 -6.9 1.00e+00 8.79e-01h 1
> 253 1.5156578e+02 2.03e+00 2.56e-02 -5.0 1.21e+01 -7.4 1.00e+00 1.00e+00h 1
> 254 1.5146227e+02 2.63e+01 5.99e-03 -5.0 2.05e+01 -7.9 1.00e+00 1.00e+00h 1
> 255 1.5144122e+02 2.93e+02 7.39e-03 -5.0 7.12e+01 -8.3 4.55e-01 9.49e-01h 1
> 256 1.5143650e+02 1.44e+02 5.14e-03 -5.0 1.92e+02 -8.8 3.44e-01 4.29e-01h 1
> 257 1.5143020e+02 4.94e+02 4.60e-03 -5.0 2.84e+02 -8.4 3.75e-01 1.00e+00h 1
> 258 1.5143005e+02 1.04e+02 5.04e-05 -5.0 4.72e+02 -8.9 1.00e+00 7.85e-01h 1
> 259 1.5143001e+02 3.96e+01 2.93e-06 -5.0 1.45e+01 -9.4 1.00e+00 1.00e+00h 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 260 1.5143001e+02 2.06e-01 1.16e-06 -5.0 5.36e+01 -8.9 1.00e+00 1.00e+00h
and then exit with "Optimal Solution Found".
Thank you very much,
Uwe
--
Uwe Nowak
Fraunhofer-Institut für Techno- und Wirtschaftsmathematik
Abteilung Optimierung
Fraunhofer-Platz 1
D-67663 Kaiserslautern
Telefon: +49(0)631/31600-4458
E-Mail: uwe.nowak at itwm.fraunhofer.de
Internet: www.itwm.fraunhofer.de
More information about the Ipopt
mailing list