[Ipopt] Why the optimization result does not follow my constraints?

Andreas Waechter andreasw at watson.ibm.com
Tue Feb 2 11:49:38 EST 2010

Hi James,

Ipopt implements an optimization algorithm of the "infeasible" kind, i.e., 
intermediate step might not satisfy the constraints.  It is only trying to 
achieve feasibility and optimality at the end.  The only thing Ipopt is 
doing is to keep all variables within their bounds (note: read about the 
option bound_relax_factor).  Also, if you have only linear constraints and 
they are satisfied at some point, they will stay satisfied for the rest 
of the optimization (unless the restoration phase is entered, or there 
are numerical issues).

There are some optimization algorithms that try to keep all constraints 
satisfied at all times.  One of them is the FSQP algorithm developed by 
Andre Tits and collaborators.  You will find information about this by 
googling.  In addition, I think the KNITRO code has a "feasible" option, 
but you might need to check with the KNITRO documentation.

Hope this helps,


On Thu, 21 Jan 2010, James Henderson wrote:

> Dear all,
> I used ipopt to optimize a problem with some "hard" constraint, but the result provided for me is not  (fully) following the provided  constraints.
> For my situation, i mainly forcus on the constraints , the objective function is not so important.
> It means that the desired result should be based on the provided constraints (fully follow all constraints), and minimize the objective function as good as possible. Assume all provided constraints are valid.
> Can ipopt do this? or in fact all optimization tool cannot do it?
> Please help! Thanks.
> Regards,
> James
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt

More information about the Ipopt mailing list