Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

Use GlobalSearch with another local solver.

1 Ansicht (letzte 30 Tage)
Martina
Martina am 31 Mai 2013
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
I would like to use GlobalSearch with a local solver I wrote myself and not with fmincon. Is there a way to do that? Could I somehow shade fmincon with my solver? Do you know of another (free and if possible open source) solver where I could use my own local solver?
To be more specific about my problem: I want to solve a magnitude least square problem (this is the name used in the MRI-community, is there another name for it?), i.e. I want to find min_x |abs(Ax)-b|^2_2 where A is a complex matrix, x a complex vector and b a real vector. The size of this variables are in my case approximately size(A)=(5000 30), size(x)=(30 1) and size(b)=(30 1).
For local optimization it is faster to use the variable exchange methode (<http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-64.pdf>) than using fmincon: Variable exchange methode means solving instead min_x,z sum_{i=1}^m|A_i x-b_i z_i|^2 where z is a variable containing phases by solving alterantely for x (which is a linear least square problem) and adapting the phase z.
My current strategie is to do first a global search using "GlobalSearch" and putting some additional constraints on x (which I found prevent the solver to fall in local minima) and use the result as a starting point for a local search with the Variable exchange methode. In 90% of the cases this works OK and needs about 10 min. The output of GlobalSearch tells me that quite often the local solver has not converged. At the moment I am playing around with the options for fmincon. But I would like to test if GlobalSearch would not run faster, using the variable exchange methode instead of fmincon.
Thanks in advance for your help.

Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by