Optimization tools: handling error output from objective functions

10 次查看(过去 30 天)
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

回答(1 个)

Alan Weiss
Alan Weiss 2021-1-10
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

类别

Help CenterFile Exchange 中查找有关 Nonlinear Optimization 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by