GlobalSearch (global optimization) evaluates initial point only

12 Ansichten (letzte 30 Tage)
James Heald
James Heald am 6 Mai 2017
Kommentiert: Jinsen am 9 Aug. 2022
Thanks in advance for any help.
When I call MATLAB's GlobalSearch, it performs one run of fmincon (and finds a decent solution) but then it doesn't search for any better solutions, i.e. it doesn't use any of the additional trial points generated using the scatter search algorithm, defeating the purpose of using GlobalSearch.
I am searching a 6-8 dimensional parameter space. My objective function (Fit_model) simulates a time series model and returns the sum squared error between model and empirical data.
I call:
gs = GlobalSearch('Display','iter');
obj = @(P) Fit_Model(FIb,nS,nC,nSC,nT,Groups,Cue,mP,y,CueT,ChannelBool,xinit,P);
problem = createOptimProblem('fmincon','x0',x0,'objective',obj,'lb',lb,'ub',ub);
[xmin,fmin,flag,output,solutions] = run(gs,problem);
and get the following response:
Num Pts Best Current Threshold Local Local
Analyzed F-count f(x) Penalty Penalty f(x) exitflag Procedure
0 1295 0.235 0.235 2 Initial Point
GlobalSearch stopped because it analyzed all the trial points.
The local solver ran once and it converged with a positive local solver exit flag.
and global solver output:
output =
struct with fields:
funcCount: 1303
localSolverTotal: 1
localSolverSuccess: 1
localSolverIncomplete: 0
localSolverNoSolution: 0
  1 Kommentar
Jinsen
Jinsen am 9 Aug. 2022
Hi, James, have you figured out the reason for that? I think I am facing exactly the same issue. and once I changed the initial values, the GlobalSearch can return with a different set of parameters etimated, meaning that the global minima has not been found...My objective function also simulate a time series model (sets of ordinary differential equations). Would really appreciate if you can share with your experience. Thanks. Jinsen

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Alan Weiss
Alan Weiss am 8 Mai 2017
I suggest that you try using MultiStart instead. The GlobalSearch algorithm tries not to run the local solver from very many points. MultiStart has no such behavior. See How GlobalSearch and MultiStart Work.
Alan Weiss
MATLAB mathematical toolbox documentation
  1 Kommentar
James Heald
James Heald am 8 Mai 2017
But globalsearch doesn't even run the stage one start point so something is awry...

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Global or Multiple Starting Point Search finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by