[Ipopt] Direction of descent during iterations

Stefan Vigerske svigerske at gams.com
Fri Sep 25 04:07:40 EDT 2020


Hi,

since you mention the intermediate_callback() as well, the 
IpoptCalculatedQuantities object that is passed on has plenty of 
information available:
https://coin-or.github.io/Ipopt/classIpopt_1_1IpoptCalculatedQuantities.html

Vectors, etc, usually refer to the internal representation of the NLP, 
so you would need to translate them back to your TNLP form, see, e.g., 
https://coin-or.github.io/Ipopt/classIpopt_1_1TNLP.html#a2f962a4c43464adb7928771af84503d6 
for something similar.

Not sure whether the information in there is also uptodate during an 
evaluation callback.

Stefan



On 9/25/20 6:17 AM, Panos Lambrianides wrote:
> Hi Everyone,
> 
> I am researching a different way to construct the Hessian in a control
> setting.
> 
> Is there a way to know the direction of descent during a given calculation
> step in Ipopt?  In particular is there a way, from a user's point of view,
> to access the calculated values of *d_k^x, d_k^\lambda* and *d_k^z* as well
> as the step sizes *\alpha_k* and *\alpha_k^z *from the Ipopt paper below?
> Are they available from the root TNLP class?
> 
> I see from the header that there is a method that I suspect may contain
> these quantities.  Are there example of usage anywhere?
>      virtual bool intermediate_callback(AlgorithmMode mode,
>                                         Index iter, Number obj_value,
>                                         Number inf_pr, Number inf_du,
>                                         Number mu, Number d_norm,
>                                         Number regularization_size,
>                                         Number alpha_du, Number alpha_pr,
>                                         Index ls_trials,
>                                         const IpoptData* ip_data,
>                                         IpoptCalculatedQuantities* ip_cq)
> 
> 
> http://cepac.cheme.cmu.edu/pasilectures/biegler/ipopt.pdf
> 
> Thank you,
> 
> 
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> https://list.coin-or.org/mailman/listinfo/ipopt
> 



More information about the Ipopt mailing list