[Coin-ipopt] Re: IPOPT Inquiry
andreasw at watson.ibm.com
Mon Aug 20 18:48:49 EDT 2007
I'm copying my reply to the mailing list, which is usually the best place
for Ipopt questions...
> We have a series of problems that we have successfully been using
> IPOPT to solve, however they all result in dense Hessians. With the
> Harwell linear solver routines being sparse, we are concerned with
> performance as we move to larger problem dimensions.
> Solution quality gained over using BFGS style updates is marked,
> making the solution overhead tolerable vs. simply falling back on a
> pseudo hessian. However, I was wondering if there is an option to
> notify IPOPT to use dense routines. My alternative appears to be
> writing a wrapper for the appropriate lapack calls and interfacing
> that in place of MA27...
> Any advise would be greatly appreciated!
We have not hooked up Ipopt to dense linear solvers. Since Ipopt is
mainly written to solve large-scale problems, which to up to millions
of variables, it is usually prohibive to even store a dense Jacobian or
If you have a problem with a dense Hessian, I would usually suggest to
either try the limited-memory quasi-Newton method, as you already tried.
Or - as you suggest - to use a sparse (diagonal?) approximation of the
real Hessian. Usually, the number of iterations is higher for
quasi-Newton methods compared to using the exact (dense) Hessian, but
depending on the size of the problem, the time to solve a linear system
with a dense Hessian can be very large.
So, it depends on the size of your optimization problem, whether using a
dense linear algebra routine (for which you would first have to write the
interface) makes sense. It might be efficient if your problems are
small. In that case, you might actually consider to use an active set
optimization method (such as FilterSQP), which would probably handle
inequality constraints (if you have any) better than an interior point
method for small problems.
If you decide to implement an interface for LAPACK routines for solving
the iteration matrix, it would of course be great if you would contribute
it to the Ipopt project :)
And maybe someone else reading this list has some more ideas...
I hope this helps,
> Thank you,
> Andrew Curtis
> Dept. of Medical Biophyics
> Robarts Research Institute
> University of Western Ontario
More information about the Coin-ipopt