[Ipopt] what should i do when Ipopt says:Insufficient_Memory
Andreas Waechter
andreasw at watson.ibm.com
Mon Nov 30 13:17:53 EST 2009
Hi LiuQuanchang,
Your numbers of variables and constraints are not really large (unless
your constraint Jacobian or Lagrangian Hessian are dense?).
The most amount of memory taken by Ipopt is in the linear solver. The
details depend on which particular linear solver you choose. Some of them
(like ma27 or also mumps) might run into a situation larger in the
optimization where the pivoting is such that a lot of fill-in in the
(sparse) factors is created. These solvers then request more memory from
Ipopt, and Ipopt will reallocate more and call the solvers again. Here,
it might happen that Ipopt is trying to allocate too much. It might then
help if you play with the options
# ma27_liw_init_factor:
# ma27_la_init_factor:
# ma27_meminc_factor:
or
# mumps_mem_percent:
Or you can try to use a different linear solver, such as Pardiso.
Regards,
Andreas
On Mon, 23 Nov 2009, lqc234 wrote:
> Hi,ervyone!
The Ipopt returns "Insufficient_Memory" in my applicaiton.Perhaps my
application has too many variables(3763) and too many constraints(3758),
so there are too many elements in the Jacobian and Hessian matrix.What
should i do under this situation? Is there some parameters in Ipopt which
I can configured for this situation? I have searched the Ipopt
doucumentation and unfortunately i haven't found.
Thanking you in advance!
LiuQuanchang
More information about the Ipopt
mailing list