[Coin-ipopt] primal-dual feasible point
Andreas Waechter
andreasw at watson.ibm.com
Mon Feb 4 14:20:12 EST 2008
Hi Adela,
> Looking at the iterations output I've seen that usually the
> complementarity, lg(mu), is very small in comparison to primal and dual
> infeasibilities. My experience from a self-coded IPM in Matlab was that
> these three values should have the same order of magnitude. Is there any
> option in Ipopt which first tries to reduce primal and dual
> infeasibility?
I think that interior point methods for LINEAR programming usually have
the feature that they bring down primal and dual infeasibility at a
similar rate. However, if you have a nonlinear problem, the algorithm
might try to get closer to a good solution by going through some
infeasible points. Also, the values in the lg(mu) columns are not the
complementarity error, but the value of the barrier parameter (the
"target" complementarity if you will).
By default, Ipopt follows the classical "Fiacco-McCormick" approach, where
the barrier parameter is kept constant, until the primal and dual
infeasibilities go below a tolerance, which is related (linearly) to the
value of the barrier parameter; then the barrier parameter is decreased.
The details can be found on pages 3-4 of the Ipopt paper:
http://www.research.ibm.com/people/a/andreasw/papers/ipopt.pdf
However, we also developed an adaptive barrier approach, where the value
of the barrier parameter can change in every iteration. The hope is that
this is a better ways to handle the barrier parameter, if the problem is
badly scaled, or if the value of the barrier parameter becomes too small
too quickly, see
http://www.research.ibm.com/people/a/andreasw/papers/adaptive.pdf
The options related to this are
mu_strategy
mu_oracle
see http://www.coin-or.org/Ipopt/documentation/node95.html
> PS: I'm still working on finding a good warm start point which I suspect
> that should be primal and dual feasible but I don't care much about
> complementarity.
I think this is not easy to answer, and it might be worthwhile to
experiment a little bit.
Andreas
More information about the Coin-ipopt
mailing list