[Couenne] MUMPS memory errors when running Couenne in GAMS

Stefan Vigerske stefan at math.hu-berlin.de
Mon Apr 18 08:00:39 EDT 2011


Hi,

> I've been trying out Couenne for global optimization of some NLP's. It
> looks like it's more common to use AMPL here, but I already had my problem
> formulated in GAMS to compare with BARON. The good news is Couenne starts
> up fine in GAMS and the lower bound gets tightened most of the way pretty
> quickly. For experimentation's sake I'm trying to run with a very tight
> gap tolerance, to compare how long it takes to tighten the last few
> percent.
>
> This is where I'm running into the following error:
>             0 :Error allocating BUFR:IERR=          41
> MUMPS returned INFO(1) =-13 - out or memory.
> In some cases it helps to decrease the value of the option
> "mumps_mem_percent".
>
> I've tried a few different values of mumps_mem_percent in couenne.opt, but
> the error keeps happening. The NEOS server seems to run much faster than
> my local machine here - the official NEOS page for Couenne only works with
> AMPL files, but when I submit a GAMS file with option nlp=couenne; via the
> BARON page it appears to work.

Nice trick :-).

> This may not be properly using my
> couenne.opt options file, I'm not sure. I'm also doing tests locally, it
> just takes a lot longer to find out if anything changes.

If you solve an NLP with options nlp=couenne optfile=1, then it should 
pick up your couenne.opt file.

> I'm having a hard time understanding which options belong to which solver,
> and how to specify the proper changes. Does Couenne call MUMPS directly at
> any point, or is it only Ipopt that uses MUMPS?

Only Ipopt.

> I've tried changing
> linear_solver to one of the other options but GAMS doesn't seem to
> recognize it - should it be in ipopt.opt, or in couenne.opt but specified
> as ipopt.linear_solver or something to that effect?

It should be linear_solver in couenne.opt.
If you change it to something different than Mumps, it should not be 
ignored but you should get an error. Because of licensing issues, the 
Ipopt in GAMS comes with Mumps only, no other linear solvers.
There is a way that the user can provide a library with HSL routines or 
Pardiso that is dynamically loaded by the Ipopt, see the GAMS/Ipopt 
documentation (gams/doc/solvers/coin.pdf).
But I heard that the new Pardiso library is not supported this way yet.
However, if you create a libhsl.so with MA27 in it and put it into your 
GAMS distribution, then specify linear_solver ma27, it should work.

> Or do I need to
> reformulate my model in AMPL to get this to work properly?

You could use GAMS/CONVERT to convert your instance into AMPL.
But you'll then need an AMPL license to run Couenne.

> Oh, and does
> anyone know whether the other linear solvers are compiled and available to
> use on the NEOS machines?

For the GAMS/Couenne link, only Mumps is compiled in.

Stefan

>
> Thanks,
> Tony Kelman
>
> _______________________________________________
> Couenne mailing list
> Couenne at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/couenne
>


-- 
Stefan Vigerske
Humboldt University Berlin, Numerical Mathematics
http://www.math.hu-berlin.de/~stefan



More information about the Couenne mailing list