[Coin-ipopt] nlp info not coherent ?

Andreas Waechter andreasw at watson.ibm.com
Wed Oct 24 11:58:16 EDT 2007


Hi Tran,

Always glad to hear about someone new using Ipopt ;-)

My assumption is that some of the variables (4900-4833=67) in your problem 
formulation are fixed, i.e., their lower and upper bounds are identical, 
so those variables don't need to be considered in the optimization and can 
be treated as constants.  In that case, the layer of the Ipopt code that 
is preparing what the actualy Ipopt solver code sees is removing those 
variables, together with the columns of the Jacobian corresponding to 
those fixed variables.  This would explain the difference in the output 
that you describe.

Just as a side comment:  I see that the number of nonzeros in the Hessian 
is 0.  So, either you are solving an LP (in which case you might want to 
try to set the mehrotra_algorithm option to "yes", which will make Ipopt 
work much like the standard LP interior point algorithm, but it is not 
very much tested and can fail, particularly if you give Ipopt an 
infeasible LP) or you are using a quasi-Newton option to approximate the 
second derivatives.  In the second case, if you can obtain second 
derivatives from your model, it might pay off in terms of speed an 
robustness.

I hope this makes sense.

Andreas

On Wed, 24 Oct 2007, Tran Minh Tuan wrote:

> Hi all,
>
> I am a new commer to Ipopt with an optimal control problem. Here are some 
> infos from my program (in C version):
>
> // values given into CreateIpoptProblem
> ----------------- nlp -----------------
> number of variables = 4900
> number of constraint functions = 3664
> number of non-zero elements in Jacobian of the constraints = 42972
>
> // values read from IpoptProblem structure
> ----------> info from nlp problem <------------
> n = 4900
> m = 3664
> nele_jac = 42972
> nele_hess = 0
> index_style = 0
>
> // values got when calling IpoptSolve
> Number of nonzeros in equality constraint Jacobian...:    42629
> Number of nonzeros in inequality constraint Jacobian.:        0
> Number of nonzeros in Lagrangian Hessian.............:        0
>
> Total number of variables............................:     4833
>                     variables with only lower bounds:        0
>                variables with lower and upper bounds:      594
>                     variables with only upper bounds:        0
> Total number of equality constraints.................:     3664
> Total number of inequality constraints...............:        0
>        inequality constraints with only lower bounds:        0
>   inequality constraints with lower and upper bounds:        0
>        inequality constraints with only upper bounds:        0
>
> So we can see that the values before calling Ipopt are coherent but the value 
> of number of variables and non-zero elements are not correct ? Could you 
> explain me why ?
>
> Thanks a lot,
> _______________________________________________
> Coin-ipopt mailing list
> Coin-ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/coin-ipopt
>



More information about the Coin-ipopt mailing list