[Coin-ipopt] lagrange multipliers

Andreas Waechter andreasw at watson.ibm.com
Mon Feb 4 15:15:08 EST 2008

Hi Susana,

> I am trying to solve the Goddard rocket problem with and without the 
> AMPL interface.
> Is AMPL only responsible for solving the matrices, or does this also 
> give the values for the Lagrange multipliers to IPOPT?

AMPL does not solve (= factorize) any matrix, nor does it compute the 
Lagrangian multipliers.  AMPL is only a tool to write an optimization 
problem that is then solved by an optimization code.  What AMPL does is 
that it converts the text you give to AMPL as your problem description 
into some data structures that encode the mathematical formulations for 
the objective and constraint functions.  The optimization code can then 
use this to compute the values of these functions, as well as their first 
and second derivatives, in order to solve the problem.

The optimization code then is it that has to deal with the matrices and 
factorizes them (with a linear solver, such as MA27, Pardiso, Mumps, or 
WSMP).  And the Lagrangian multipliers are also determined by the 
optimization code, since they are necessary to conclude if a solution was 

> Is the computing of the Lagrange multipliers through IPOPT good 
> approximatied? or could it also lead to errors?

When Ipopt solves the problem, it will compute the Lagrange multipliers, 
and then return them to AMPL so that the user can examine them.  AMPL 
itself does not compute Lagrange multipliers.

If you are doing a warm start (see 
https://projects.coin-or.org/Ipopt/wiki/IpoptAddFeatures), you can give 
Ipopt estimates of the multipliers in the hope that this will accellerate 
the solution of a new problem.

I hope this clarifies,


More information about the Coin-ipopt mailing list