Decision making on optimization method
1 次查看(过去 30 天)
显示 更早的评论
Hello Everyone!
I am currently working on a Simulink model for which I want to fit parameters using the Simulink Design Optimization Toolbox (2015b). Since I need to fit quite a few parameters for long lasting simulations I was wondering which optimization method to use in advance.
The design variables are restricted by bounds and do use the sum squared error as cost function. Thus its a Minimization problem.
I read the users guide (<http://www.apmath.spbu.ru/ru/staff/smirnovmn/files/sldo_ug.pdf>) but didnt find other sources.
I understand: - I cant use Simplex pattern due to the bounds on the design variables
I dont understand: - how to choose from the others since all of them appear to be usable to me.
So my question is how to decide which method I should use. Is there any document which shows the reasoning (benefits and drawbacks) in a handy way (for one that doesnt have mathematical background)?
Thanks in Advance!
Best Regards, Stephan
0 个评论
回答(2 个)
Prateek Khandelwal
2017-3-16
I think the section "Optimization Methods and Problem Formulations" in the documentation of Simulink Design Optimization would help you.
Alan Weiss
2017-3-17
For general optimization there are some general guidelines on which solver to choose. For a sum of squares, you should likely choose lsqnonlin, unless your objective function always outputs the sum of squares already calculated, in which case choose fmincon ( lsqnonlin wants to raw components, and internally sums the squares). Be careful, when optimizing a simulation you often have to choose larger-than-default finite differences.
If your objective function is not a smooth function of the control variables, and if you have a Global Optimization Toolbox license, then you might want to try patternsearch.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!