[Coin-ipopt] how biggest problems can IPOP solve

Andreas Waechter andreasw at watson.ibm.com
Mon Feb 4 14:50:43 EST 2008


Hi Xiaoming,

An answer to these questions in general terms is difficult.  Since Ipopt 
is an interior method, it can in principle handle very large numbers of 
variables and constraints (in contrast to active set methods).  How high 
you can drive this depends usually on how much memory (and computation 
time) is required by the underlying linear solver, and that in turn 
depends on how dense your Jacobian matrix is (and what structure it has). 
We have solved some very large problems with the Pardiso linear solver, 
where we want up to 12 million variables and 6 million constraints 
(discretized 2D PDEs, not a trivial structure for the linear solver), see

http://www.research.ibm.com/people/a/andreasw/papers/rc23824.pdf

(Note: If you decide to use Pardiso, you cannot use the Pardiso version 
that is in the Intel MKL, since that version of Pardiso does not include 
important features necessary for Ipopt.)

However, in those experiments, we provided the second derivatives.  If the 
second derivatives are not available, you need to use the quasi-Newton 
option, and this is a) to some degree a heuristic and not as robust as the 
version using second derivatives, and b) usually not scaling well as the 
size of the problem increases.

Furthermore, the convergence behavior of Ipopt (or any other NLP 
algorithm) depends on "how nonlinear" your problem is; if it is difficult 
to find a feasible point, for example, or your objective function has lots 
of non-convex parts, Ipopt might require a large number of iterations.

Best regards,

Andreas

On Tue, 22 Jan 2008, Xiaoming Yu wrote:

> Hi Dear All:
>
>
>
> How biggest problems have been tested for IPOPT in terms of number of
> design variables and inequality constraints? How efficient is the IPOPT
> if the function evaluation and the first-order gradient computation (but
> no second-order gradients) are very cheap ( in terms of CPU time on
> faster  Intel machines). Our goal is to solve two  kinds of problems :
>
>
>
>
> 1) about 1-10 millions design variables but a few number of constraints
>
>
> 2) about 100-50K design variables and 500-100K constraints
>
>
>
>
>
> Another question is if IPOPT use a "active constraints" concept. Active
> constraints are the violated or near critical constraints. The gradients
> are calculated for active constraints only. Thus, we can save times for
> gradient computation (also less memory requirements). In engineering
> problems, lots of constraints are inactive.
>
>
>
>
> Thanks,
>
>
>
> Xiaoming
>
>



More information about the Coin-ipopt mailing list