语法
x = run(gs, problem); % 运行GlobalSearch以找到问题的解决方案或多个本地解决problem方案
[x,fval] = run(gs, problem); %返回目标函数值在x点出找到的最佳值
实例
rng default
gs = GlobalSearch;
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]);
x = run(gs,problem)
运行结果
GlobalSearch stopped because it analyzed all the trial points.
All 8 local solver runs converged with a positive local solver exit flag.
x = 1×2
-0.0898 0.7127
调用run时,可以使用下面的语法得到x处的run目标函数值:
[x,fval] = run(gs, problem)
当忽略fval时,仍然可以计算处x处的目标函数值。
fval = sixmin(x);
fval = -1.0316
参考:
matlab官方文件doc run