Decision making on optimization method

4 次查看(过去 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

回答(2 个)

Prateek Khandelwal
Prateek Khandelwal 2017-3-16
I think the section "Optimization Methods and Problem Formulations" in the documentation of Simulink Design Optimization would help you.
  1 个评论
Stephan Heidrich
Stephan Heidrich 2017-3-16
Hi Prateek,
thank you for your answer, but unfortunately the website is quite redundant with the users guide i linked above. I was looking for some more detailed explanation.

请先登录,再进行评论。


Alan Weiss
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

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by