[Ipopt] Observe Nonlinear Constraints in IPOPT's output

Andreas Waechter andreasw at watson.ibm.com
Fri Apr 23 16:16:34 EDT 2010

Hi Drosos,

If you set the (file_)print_level to at least 8, you will see output like

DenseVector "curr_c" with 3 elements:
curr_c[    1]=-8.9059358798010635e-02
curr_c[    2]= 8.0229226361030470e-03
curr_c[    3]=-4.4000000000005457e-01
DenseVector "curr_d" with 8 elements:
curr_d[    1]= 3.0087600000000389e+01
curr_d[    2]=-5.6529999999999994e+01
curr_d[    3]= 3.1180278787878610e+01
curr_d[    4]= 5.8395373737373738e+01
curr_d[    5]=-3.5467739684915401e+01
curr_d[    6]= 1.3468170140510699e+02
curr_d[    7]= 3.6227739684915399e+01
curr_d[    8]=-1.3176363779727271e+02
DenseVector "curr_d - curr_s" with 8 elements:
curr_d - curr_s[    1]= 0.0000000000000000e+00
curr_d - curr_s[    2]= 0.0000000000000000e+00
curr_d - curr_s[    3]= 0.0000000000000000e+00
curr_d - curr_s[    4]= 0.0000000000000000e+00
curr_d - curr_s[    5]=-5.9393302974015683e-03
curr_d - curr_s[    6]= 0.0000000000000000e+00
curr_d - curr_s[    7]= 0.0000000000000000e+00
curr_d - curr_s[    8]=-9.3636480572712344e-02

Here, "curr_c" are the current values of the equality constraints 
(feasible would mean that these values are zero), and "curr_d" are the 
values of the inequalirt constraints (those are feasbile if the values 
are within the "d_l" and "d_u" bounds).  Ipopt handles inequality 
constraints with slacks ("curr_s") so that "curr_d - curr_s" tells you by 
how much the reformlated inequality constriants (now as equality 
constraints) are violated.


On Fri, 23 Apr 2010, Drosos Kourounis wrote:

> Dear all, does anybody know if it is possible to have 
> nonlinear-constraints at each IPOPT's iteration appear on output. In 
> many cases where the number of the nonlinear-contraints is just one or 
> lets say bounded < 5, there should be a print_level which would allow us 
> to see the value of the constraints 'g' next to the objective. I checked 
> all print_levels and I didn't see anything like that. I guess that 
> print_level more than 5 is hardly going to be used by anybody else but 
> the developers themselves. However, it would be nice to see how and to 
> what extent our constraints are violated at some print_level.
> Any ideas?
> Cheers,
>   Drosos.
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt

More information about the Ipopt mailing list