[Ipopt] Matlab Interface In IPOPT 3.11

Tony Kelman kelman at berkeley.edu
Wed May 8 05:27:03 EDT 2013


Marco,

As briefly explained (perhaps not in enough detail) on lines 122-132 of ipopt.m in the MatlabInterface folder, you should write your iterfunc callback as follows:

function keep_going = iterfunc(iter, obj_value, varstruct)
...
keep_going = true;    % unless you want Ipopt to terminate


varstruct is a structure with fields x, inf_pr, inf_du, mu, d_norm, regularization_size, alpha_du, alpha_pr, and ls_trials, like you would get as inputs to a C++ intermediate_callback.

If you would also like to have auxdata as an input to your iterfunc callback, this is a slight incompatibility with the pre-3.11 input sequence to iterfunc. Have a look at the new wrapper function ipopt_auxdata.m, particularly lines 29-34.

Note for you and any other Matlab interface users out there, I posted pre-compiled mex files for 64-bit Linux, 64-bit Mac, 32 and 64-bit Windows at http://www.coin-or.org/download/binary/Ipopt/?C=M;O=D which might save you some time and hassle.

Let me know if you run into any difficulties with this. I’m pleasantly surprised to see someone wanting to use this new info right away.

-Tony
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20130508/af0f0a07/attachment.html>


More information about the Ipopt mailing list