Decision making on optimization method

2 visualizaciones (últimos 30 días)
Stephan Heidrich
Stephan Heidrich el 8 de Mzo. de 2017
Respondida: Alan Weiss el 17 de Mzo. de 2017
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

Respuestas (2)

Prateek Khandelwal
Prateek Khandelwal el 16 de Mzo. de 2017
I think the section "Optimization Methods and Problem Formulations" in the documentation of Simulink Design Optimization would help you.
  1 comentario
Stephan Heidrich
Stephan Heidrich el 16 de Mzo. de 2017
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.

Iniciar sesión para comentar.


Alan Weiss
Alan Weiss el 17 de Mzo. de 2017
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

Categorías

Más información sobre Manual Performance Optimization en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by