- It starts with a starting point you seed, called x0 and runs the solver.
- It looks to see how far the solver moved from x0 to find the end point; this creates a "basin" in which the solution it found should "attract" starting points. Basically, points inside this basin should move to the end point it founds. This first run determines the guess for the basin size.
- It then generates a bunch of test points, randomly around the solution space, then uses the basin size it found earlier to make a basin. It also assigns to all the points a "score" based on the objective function and constraints.
- It then iteratively runs trial points outside the basins to try and basically block out all of the solution space into a series of basins with an optimal point in them. It also adjusts the basin size at this point, if necessary.
- Imagine picking points in the space, then seeing where the solver goes and drawing a circle about that distance from the solution. Do this over and over again under your whole space is filled with circles.
How GlobalSearch optimization method works?
조회 수: 2 (최근 30일)
이전 댓글 표시
채택된 답변
jgg
2016년 2월 23일
편집: jgg
2016년 2월 23일
Basically, GlobalSearch takes a problem you've defined, which consists of an objective function and a solver, then repeatedly runs the solver on a larger number of points. Suppose your solver is called solver (it could be fmincon or fminsearch or whatever):
The "solution" it finds is basically the best point in the best basin at the end of the day.
댓글 수: 2
Alan Weiss
2016년 2월 23일
jgg described the MultiStart algorithm pretty well, though there are restrictions on which local solver MultiStart can run.
GlobalSearch works a bit differently. It uses the fmincon solver only, and takes a lot of care to run only those trial points that it thinks have a chance of leading to a better final value. For details, see the algorithm descriptions.
Alan Weiss
MATLAB mathematical toolbox documentation
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Global or Multiple Starting Point Search에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!