[Ipopt] Passing an Error from Callback Function to IPOPT in MATLAB

Arnaud Barré arnaud.barre at gmail.com
Fri Jun 20 11:05:53 EDT 2014

Hi Anil,

I am not an Ipopt guru but in the Matlab documentation of the function ipopt you have this section:

funcs.iterfunc (optional)

     An additional callback routine that is called once per algorithm
     iteration. It takes three inputs: the first is the current iteration
     of the algorithm, the second is the current value of the objective,
     and the third is a structure containing fields x, inf_pr, inf_du, mu,
     d_norm, regularization_size, alpha_du, alpha_pr, and ls_trials. This
     function should always return true unless you want ipopt to terminate
     prematurely for whatever reason. If you would like to use the third
     input to iterfunc along with auxdata functionality, you will need to
     modify the appropriate section of ipopt_auxdata.m.

In your case, if the iterfunc returns false, this should stop the algorithm


On Jun 19, 2014, at 10:32 AM, Anil Rao <anilvrao at gmail.com> wrote:

> All,
> I am using the MATLAB interface of IPOPT.  I would like to know if it is possible to pass to IPOPT an error flag that indicates that the user callback function cannot be evaluated at a particular point?  The idea is to indicate to IPOPT that the current search must be terminated because one or more of the user callback functions cannot be evaluated at the current value of the decision vector and that in order to continue IPOPT needs to choose a different value of the decision vector.  Any help is appreciated.  
> Anil
> -- 
> Anil V. Rao, PhD
> Associate Professor
> Department of Mechanical and Aerospace Engineering
> University of Florida
> Gainesville, FL 32611-6250
> Tel:  (352) 672-1529
> E-mail:  anilvrao at gmail.com
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt

More information about the Ipopt mailing list