[Ipopt] [*****SPAM*****] Ipopt Digest, Vol 68, Issue 2

Edson Cordeiro do Valle edsoncv at enq.ufrgs.br
Thu Aug 5 12:43:17 EDT 2010


  Hello Baudin
First, congratulations for the initiative to integrate Scilab and Ipopt, 
I'm eager to use ipopt with Scilab.
I worked on the JNI integration of Ipopt with Rafael Soares and can say 
something about 
https://projects.coin-or.org/Ipopt/browser/trunk/Ipopt/contrib/JavaInterface/jipopt.cpp
The function Jipopt::eval_h in line 424 send a double array to Java and 
returns the Hessian which is calculated in the Java side (in our case, 
it is implemented in the Java side an Automatic Differentiation method 
to evaluate Jacobian and Hessian, developed by our company which is not 
part of the JNI code). This function also returns the sparsity pattern 
of the Hessian (also mounted in the Java side).
The env->CallBooleanMethod in line 450 will returns false if the Java 
method return false.
Regards

                                                  Edson C. do Valle
                                                edsoncv at enq.ufrgs.br
                                                   Skype: edson.cv



ipopt-request at list.coin-or.org escreveu:
> Send Ipopt mailing list submissions to
> 	ipopt at list.coin-or.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://list.coin-or.org/mailman/listinfo/ipopt
> or, via email, send a message with subject or body 'help' to
> 	ipopt-request at list.coin-or.org
>
> You can reach the person managing the list at
> 	ipopt-owner at list.coin-or.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Ipopt digest..."
>
>
> Today's Topics:
>
>    1. Hessian of the Lagrangian (Micha?l Baudin)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 05 Aug 2010 14:27:02 +0200
> From: Micha?l Baudin <michael.baudin at scilab.org>
> Subject: [Ipopt] Hessian of the Lagrangian
> To: ipopt at list.coin-or.org
> Message-ID: <4C5AAE16.5090406 at scilab.org>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> Hi,
>
> I and Yann Collette are working at the connection between
> Scilab and ipopt.
> I am searching informations about the use of the
> Hessian matrix by ipopt and, since, I did not find what I
> am looking for, I am posting this message.
>
> (1) If the eval_h method is defined, but returns false, what is
> used by ipopt for the Hessian ?
>
> In the tutorial example for Hock and Schittkowski #71,
> the eval_h function implements the Hessian and returns the
> boolean value "true".
>
> I read the section : "Introduction to IPOPT/Special Features/Quasi-Newton
> Approximation of Second Derivatives" at :
>
> http://www.coin-or.org/Ipopt/documentation/node54.html
>
> but did not find what I was looking for. The C and fortran cases are
> clearly explained, though. But nothing is said in the case
> where the C++ method is defined, but has no hessian
> to provide. (In our Scilab connector, we always define the method,
> but switch depending on the existence of the macro defined by the
> user : this is dynamical.)
>
> I found that some C++ source codes return false, as for example :
> https://projects.coin-or.org/Ipopt/browser/trunk/Ipopt/contrib/JavaInterface/jipopt.cpp
>
> (2) Is there a BFGS algorithm provided in ipopt ?
> The documentation is clear about the L-BFGS algorithm, but
> there seem to be no BFGS. Am I right ?
>
> Best regards,
>
> Micha?l Baudin
>
>   



More information about the Ipopt mailing list