[Coin-ipopt] Re: TAUCS and COIN/Ipopt

Andreas Waechter andreasw at watson.ibm.com
Wed Sep 10 22:39:57 EDT 2003

Dear Sivan,

Many thanks for your message and the update on TAUCS.

We have not added an interface to TAUCS in Ipopt.  But we are still very
interested in alternative linear solvers that might be of use for Ipopt.

The sparse matrix that we need to factorize is of the form

 /  H   A \
 \ A^T  0 /

i.e. it is symmetric, but indefinite.  The requirement on the linear
solver is that is needs to be able to tell us the inertia of this system
after factorization, i.e. how many positive and negative eigenvalues the
matrix has.  The Harwell routines provide this information.

Does your solver compute the inertia during the factorization?  I had a
look at the documentation, and on the first sight it seemed to me that it
doesn't.  Is that correct?  (I assume that the option for TAUCS used in a
linear interior point method that you mention in your message does not
refer to the above system, but rather one of the form A^T D A ...?)

Unfortunately, I only know of the Harwell routines as direct linear
solvers for symmetric indefinite systems that compute the inertia.  It
would be great to be able to offer more alternatives in Ipopt, in
particular even a parallel code like yours.

Do you think this is something your code can or could do? Any comments
would be welcome.  I'm also sending this message to the mailing list in
case someone else has some ideas.

Thanks again,


On Wed, 10 Sep 2003, Sivan Toledo wrote:

> Dear Andreas and Kirk,
> I found a discussion between you two on a mailing list from about a year ago
> about replacing MA27 with my code, TAUCS, in COIN/Ipopt. I am curious to know
> whether anything came out of that idea.
> I would like to mention two things: First, when Yifan Hu of Wolfram Research
> added TAUCS to Mathematica 5, he modified the sparse cholesky factorization
> code slightly in order to allow it to solve semidefinite systems that arise
> in iterior point algorithms (by replacing diagonal values near 0 with large
> values, which effectively drops the corresponding equation and variable from
> the system). I have not incoroporated his modification into the main code,
> but I'll be happy to do so if you need such functionality in order to use
> TAUCS in COIN/Ipopt.
> Second, I have made improvements in the code over the summer. The main changes
> that might have a positive impact on you if you have not yet done the
> integration, is a clean build on many more OS's (including linux, irix,
> solaris, Windows, MacOS, and freeBDS; I don't have an up-to-date AIX or HPUX
> systems, but it shouldn't be hard to build on them), and an easy way to
> configure the library. The configuration support should allow you to build
> automatically a version of TAUCS with just the functionality that you need,
> say only the real double-precision sparse Choleksy code.
> Regards, Sivan Toledo
> ------------------------
> Prof. Sivan Toledo
> School of Computer Science
> Tel-Aviv University
> Tel-Aviv 69978, Israel
> Phone: +972-3-640 5285
> Fax:   +972-3-640 9357
> Email: stoledo at tau.ac.il
> Web:   http://www.tau.ac.il/~stoledo

More information about the Coin-ipopt mailing list