Optimization tools: handling error output from objective functions

6 views (last 30 days)
Hello,
I'm working with two optimization MATLAB codes (lsqcurvefit & fminsearch). With these tools I use a user-customized objective function, which is basically a MATLAB function I made. The issue here is that, sometimes this function passes out error outputs, like Inf.
How can I make the optimization tools exclude these error answers from the optimization analysis?
Thanks,
Hussain

Answers (1)

Alan Weiss
Alan Weiss on 10 Jan 2021
I suggest that you test for unexpected results within your objective function code and handle it appropriately. For example, if you get an Inf or NaN as a result of evaluating your objective function, you can try returning a large, finite value instead.
The real problem is when you have this kind of result at the initial point x0. In that case your optimization should halt immediately and ask for a better initial value.
Alan Weiss
MATLAB mathematical toolbox documentation

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!