- If you are using lsqnonlin or lsqcurvefit, then your objective function should return the vector of function values (I mean fittingdata - realdata in your vocabulary).
- If you are using any other nonlinear optimizer, then your objective function should be the sum of squares of the function values.
When to use cost function or error function for fitting
2 次查看(过去 30 天)
显示 更早的评论
I have look around different ways to fit. So when do you know you have to use the cost function: sum((realdata-fittingdata).^2) or error = realdata-fittingdata? For example, for lsqnonlin, you would use 'error' to find do the optimization. However, for fminsearch or patternsearch, you would use the 'cost function.'
0 个评论
采纳的回答
Alan Weiss
2017-6-26
I'm sorry that you don't find the documentation clear on this issue.
For an example comparing these approaches, including efficiency of each solver, see Nonlinear Data-Fitting.
Alan Weiss
MATLAB mathematical toolbox documentation
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Direct Search 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!