Optimization tools: handling error output from objective functions

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 日

0 投票

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

カテゴリ

ヘルプ センター および File ExchangeNonlinear Optimization についてさらに検索

質問済み:

2021 年 1 月 6 日

回答済み:

2021 年 1 月 10 日

Community Treasure Hunt

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

Start Hunting!

Translated by