[Coin-ipopt] Re: Are IpOpt and Osi friends ?

Andreas Waechter andreasw at watson.ibm.com
Sat Feb 24 06:33:23 EST 2007


Hi Hacene,

Good to hear from you.

I'm sending my reply to the Ipopt mailing list.  (If you want to reply, 
you need to sign up first at 
http://list.coin-or.org/mailman/listinfo/coin-ipopt, if you haven't 
already)

> I want to use IpOpt to solve Huge LP programs. I need your advice before
> starting any things.
>
> In the code i have, i use OsiXxxSolverInterface (where at present Xxx =
> Cbc).
>
> I want to Know if is there any interface to IpOpt from Osi ?

I think that at this point there is no such interface for LPs.  However, 
Pierre has written an Osi Ipopt interface to use Ipopt with Cbc in Bonmin, 
and maybe that can be modified easily to make it work with LPs as well? 
Pierre, do you know?

Apart for that technical question, Ipopt's default setting is not well 
targeting the solutions of LPs. Thing is that usually interior point codes 
for LP have some way to initialize the iterates, but Ipopt doesn't have 
that (yet?).  So, if you want to try, I suggest you use the options

bound_push 1e3
bound_frac 0.1

or so (maybe somewhat smaller values).  Those determine how much the 
initial point is moved away from the bounds, and for LPs, I think that the 
default values of 0.01 (or something on that order), would not work well 
for LPs.

Furthermore, you might also want to use a version of Mehrotra's algorithm, 
which you can enable with the options

mu_strategy adaptive
corrector_type affine
corrector_compl_avrg_red_fact 2

Hope this helps,

Andreas



More information about the Coin-ipopt mailing list