[Coin-ipopt] problems with step lenght and stopping criteria

Fabian Wein fabian.wein at lse.e-technik.uni-erlangen.de
Tue Mar 13 04:43:47 EDT 2007


Hello,

I sent this mail already but from a different mail account. I hope it is not doubled
now.

I do topological optimization using the SIMP method (I know there are better
optimizers for this kind of problem but I will move only later).

In my current example with 600 design parameters 0.001 <= x <= 1.0 the iteration
stops to early and the design parameters are almost not moved away from the initial 0.5.

iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
   0  1.0623488e-09 0.00e+00 4.25e-11   0.0 0.00e+00    -  0.00e+00 0.00e+00   0
   1  1.0623488e-09 2.78e-16 8.84e-12  -6.3 8.50e-12    -  9.90e-01 1.00e+00f  1
   2  1.0623488e-09 1.67e-16 3.47e-18  -2.4 1.06e-09    -  1.00e+00 1.00e+00h  1
   3  1.0623488e-09 5.55e-16 1.41e-18  -3.6 1.26e-09    -  1.00e+00 1.00e+00h  1
   4  1.0623487e-09 1.11e-16 1.76e-19  -5.4 2.10e-08    -  1.00e+00 1.00e+00h  1
   5  1.0623470e-09 1.11e-16 3.22e-20  -8.1 1.32e-06    -  1.00e+00 1.00e+00h  1

Number of Iterations....: 5
                                   (scaled)                 (unscaled)
Objective...............:   1.0623469784657005e-09    1.0623469784657005e-09
Dual infeasibility......:   3.2240191554866807e-20    3.2240191554866807e-20
Constraint violation....:   1.1102230246251565e-16    1.1102230246251565e-16
Complementarity.........:   8.0548516395455321e-09    8.0548516395455321e-09
Overall NLP error.......:   8.0548516395455321e-09    8.0548516395455321e-09

EXIT: Optimal Solution Found.

It works fine if I change my simulation (mechanical elasiticity) such that I apply
a force of 1000 instead of 1. The I get a good result:

iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
   0  1.0623488e-03 0.00e+00 4.25e-05   0.0 0.00e+00    -  0.00e+00 0.00e+00   0
   1  1.0623375e-03 1.67e-16 8.57e-06  -2.4 8.50e-06    -  9.98e-01 1.00e+00f  1
   2  1.0609442e-03 1.11e-16 5.27e-10  -2.4 1.05e-03    -  1.00e+00 1.00e+00f  1
   3  1.0592009e-03 6.66e-16 3.20e-10  -8.4 1.32e-03    -  9.93e-01 1.00e+00f  1
   4  8.8750404e-04 8.88e-16 4.88e-06  -5.4 1.17e-01    -  1.00e+00 1.00e+00f  1
   5  5.9051295e-04 0.00e+00 5.51e-06  -6.2 2.40e-01    -  1.00e+00 1.00e+00f  1
   6  4.5316331e-04 1.67e-16 2.46e-06  -7.0 1.94e-01    -  8.95e-01 9.05e-01f  1
   7  4.0288495e-04 2.78e-16 1.99e-06  -7.4 1.83e-01    -  9.95e-01 1.00e+00f  1
...
  27  2.7294505e-04 4.44e-16 1.40e-06  -7.6 4.99e-01    -  1.00e+00 4.88e-01f  1
  28  2.6129044e-04 0.00e+00 1.00e-06  -7.8 3.93e-01    -  1.00e-00 4.62e-01f  1
  29  2.6129005e-04 1.11e-16 1.53e-03  -9.0 1.53e-03    -  1.00e+00 1.00e+00f  1
  30  2.5772250e-04 3.33e-16 1.03e-06  -8.6 2.63e-01    -  1.00e+00 4.28e-02f  1

Number of Iterations....: 30

                                   (scaled)                 (unscaled)
Objective...............:   2.5772249957854785e-04    2.5772249957854785e-04
Dual infeasibility......:   1.0325658191257624e-06    1.0325658191257624e-06
Constraint violation....:   3.3306690738754696e-16    3.3306690738754696e-16
Complementarity.........:   6.5804124778369685e-09    6.5804124778369685e-09
Overall NLP error.......:   1.0325658191257624e-06    1.0325658191257624e-06


I tried to modify tol and normalized the objective function by its initial value -
I get more iterations then - but still the step size is much to
small and the design variable are still much to close to their 0.5 inital value (actually
I want a merely 0.0001 (black) and 1 (white) design in the end)


Your help is very much appreciated!!

Fabian Wein






More information about the Coin-ipopt mailing list