[Ipopt] Adaptive mu update / degenerate problems

Andreas Waechter andreasw at watson.ibm.com
Wed Jul 8 17:25:13 EDT 2009


Hi Herve,

Thanks for your message.  (I also just answers your ticket regarding the 
CG penalty algorithm - sorry it took a while to respond.)

> I have two questions regarding the use of Ipopt, which I
> hope someone can answer.
>
> The first one concerns the adaptive mu update. I found it a
> good option, as it tends to reduce the number of nonlinear
> iterations compared to the monotone update. As I solve a
> problem on which the constraints are expensive to calculate,
> this is very important.

Great to hear that.  This was the goal of this option, and I'm very happy 
to hear that this seems to work for you.

> However, I saw in the implementation
> paper that the minimum mu is set to tol/10 with the monotone
> update, whereas it is 1e-11 (mu_min) for the adaptive
> option. Why is it different? Knowing that I use 1e-6 as
> tolerance with Ipopt, should I increase the option mu_min
> (since then mu would converge to 1e-7 with the monotone update)?

Well, the minimal values are somewhat arbitrary.  I don't have good 
arguments for one or the other.  If the final mu is smaller, it means that 
your complementarity conditions more likely solved to a very tight 
tolerance, but it might also make it harder to take large steps without 
bumping into the bounds.  In the adaptive mu case, choosing a very small 
value of mu_min is not so harmful, since the method will still try to find 
a value of mu which allows longer steps and might pick something larger 
than mu_min, whereas in the monotne method, the value would be fixed, so 
choosing it very small might not allow large steps before bumping into 
bounds.  I guess this was more or less what went through my mind when I 
did this.

> My second questions is about degenerate jacobians. In my
> problem, it can happen than the jacobian becomes degenerate
> (this a which is really hard to solve by modifying the
> model). In this case Ipopt has trouble to converge and even
> sometimes diverge. I saw that with the option
> always_pertub_cd, I can activate permanently the heuristics
> to handle degenerate jacobians, which seems to solve most of
> my divergence issues. Are there undesirable side effects to
> this option? Should I let it always activated and play
> further with the jacobian regularization values?

I don't have too much experience with this situation.  I could imaging 
that a disadvantage of using always_pertub_cd always is that sometimes 
Ipopt might not be able to converge (e.g., when the multiplers become 
large, which is likely for degenerate problems, and then that perturbation 
generates search directions that don't satisfy the linearization of the 
constraints, and that it might be difficult to find a feasible point, or 
the line search fails...).  However, if for you it seems that the 
algorithm does converge, using this option is probably a good choice.

(Some time ago, I added some code that would try to identify at the very 
beginning the constraints that are redundant, and they would be removed 
from the problem statement that Ipopt sees, but this did not work very 
well, so I didn't follow up on this, and this version of the code for 
example does not check if the final point is actually feasible w.r.t. the 
constraints that were ignored. This is the unsupported, undocumented 
dependency_detector option.  It's in the code, so you could try it if you 
want, but I won't be able to help with that :-) ).

Hope this helps,

Andreas

>
> Thanks in advance for any help
> Hervé
>
>
>
>
>
>
>
>
>
>
>
> ---------------------- ALICE N°1 de la RELATION CLIENT 2008*--------------------
> Découvrez vite l'offre exclusive ALICE BOX! En cliquant ici http://abonnement.aliceadsl.fr Offre soumise à conditions.*Source : TNS SOFRES / BEARING POINT. Secteur Fournisseur d.Accès Internet
>
>
>
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt
>
>
>


More information about the Ipopt mailing list