What is the correct meaning of running 'multistart' for a single start point several times?
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I have a simple question.
Imagine that:
1) We wish to perform an optimization problem in which the objective function is differentiable of any order.
2) We wish to use a 'deterministic' optimization algorithm like fmincon
If we consider an initial point x0 then classical algorithms like fmincon should easily tackle this in a single run. Another try should
give us exactly the same solution (given a fixed step size) and fmincon should follow a completely deterministic approach toward the local minimum. Now, consider the following from MATLAB pages
rng default % For reproducibility
ms = MultiStart;
sixmin = @(x)(4*x(1)^2 - 2.1*x(1)^4 + x(1)^6/3 ...
+ x(1)*x(2) - 4*x(2)^2 + 4*x(2)^4);
problem = createOptimProblem('fmincon','x0',[-1,2],...
'objective',sixmin,'lb',[-3,-3],'ub',[3,3]);
[xmin,fmin,flag,outpt,allmins] = run(ms,problem,30);
My question: Why we need to run the above problem 30 times? There is just a single starting point and there is a fixed default step size (I think, 10^(-6)).
Any idea?
Babak
0 个评论
回答(1 个)
Gokul Nath S J
2023-4-20
编辑:Gokul Nath S J
2023-4-20
Hi Mohammed,
Based on my understanding, it seems that you would like to know why we need to run the above problem 30 times. Please note that the run command takes three inputs, the thrid one was 30.
The thrid input specifies the STARTPOINTSETS which calls the specified optimization. STARTPOINTSETS is a start point set object or a cell array. Also please note that the argument won't make the specified number of iterations.
For more information on STARTPOINTSETS, kindly type the following code in the command window.
help RANDOMSTARTPOINTSET
Thanks,
Gokul Nath S J
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!