[Ipopt] KKT norms

Andreas Waechter awaechter.iems at gmail.com
Mon May 14 22:05:45 EDT 2012

Hi Fabian,

Ipopt uses both scaled and unscaled quantities for the termination 
test.  The scaled versions are defined in equation (5) of the 
implementation paper (see the Ipopt wiki page for the citation).

You can see the detailed values under "Convergence Check" in the 
print_level >= 7 output.

As for the constraint violation, I assume it is an inequality 
constraint(?).  What might be happening is that Ipopt relaxed the right 
hand side (bound) of the constraints a bit, according to the 
bound_relax_factor setting.  So, if the RHS is relaxed by 1e-8, the 
value you report would be considered feasible.

Hope this helps,


Andreas Waechter

Associate Professor
Department of Industrial Engineering and Management Sciences
McCormick School of Engineering
Northwestern University
Evanston, IL 60208

On 05/14/2012 04:17 AM, Fabian Wein wrote:
> Hello,
> no hint? Is there a paper, or a hint where I can find it in the code?
> Thanks,
> Fabian
>> I wanted to confirm the IPOPT KKT norms and I cannot validate the
>> complementarity and feasibility norms of IPOPT.
>> With a high debuglevel (8?) I confirmed, that my function values are
>> the same as in IPOPT.
>> With a tolerance of 1e-6 for tol, constr_viol_tol and
>> acceptable_constr_viol_tol I get a feasible solution.
>> One of my constraints has a violation of 9e-9 and is therefore within
>> the tolerances. However, IPOPT says
>> feasibility 0.0.
>> This constraint with a Lagrange maltilplier of 3e3 makes my maximal
>> complementarity error x*e-5 but IPOPT
>> says something x*e-7.
>> Thanks for any hint - It's not the most urgent stuff but it puzzles me.
>> Fabian
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt

More information about the Ipopt mailing list