Save all the optimization results from MultiStart and Global Search

6 vues (au cours des 30 derniers jours)
Hello Matlab Community,
I have a questio about the Matlab Global Optimization features.
I would like to get, at the end of the optimization, all the solutions, also the ones with negative exit flags and respective parameters values.
I use the following syntax
[x,fval,exitflag,output,solutions] = run(...)
but I only get, in [solutions], the local minima with a positive exit flag, and I would like to check all the others as well.
Is there a way to accomplish what I need, that I have missed?
Many thanks and best regards.

Réponse acceptée

Alan Weiss
Alan Weiss le 14 Déc 2018
Sorry, no, GlobalSearch and MultiStart do not consider the points corresponding to negative local exit flags as being solutions, and so do not store them in the returned GlobalOptimSolution object.
Why do you want these points?
Alan Weiss
MATLAB mathematical toolbox documentation
  3 commentaires
Alan Weiss
Alan Weiss le 14 Déc 2018
Certainly, use your output function to save the point.
Alan Weiss
MATLAB mathematical toolbox documentation
Maria Angela Agizza
Maria Angela Agizza le 14 Déc 2018
Many thanks for the advice.
Best regards.

Connectez-vous pour commenter.

Plus de réponses (1)

Kurt Stewart
Kurt Stewart le 20 Mar 2019
You can make your solutions as global variables that get saved into a matrix
  1 commentaire
Maria Angela Agizza
Maria Angela Agizza le 20 Mar 2019
Hello, thanks for the advice.
I actually solved the problem with an output function, where I exploit the "state" of the optimization to get the parameters when the calculation reaches the maximum number of iterations (attached code).
switch state
case 'done'
save('myParametersVector','parameters');
otherwise
end

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by