主要内容

Multistart

找到多个本地最小值

描述

一种Multistart对象包含影响方式的属性(选项)反复运行本地求解器以生成一个GlobalOptimsolution目的。运行时,求解器试图通过从各个点开始找到问题解决问题的多个局部解决方案。万博 尤文图斯

创建

描述

例子

MS = Multistart创建小姐, 一种Multistart其属性设置为默认值的求解器。

例子

MS = Multistart(名称,值)使用名称值对设置属性。

例子

MS = Multistart(Oldms,Name,Value)创建一个副本奥尔德姆斯Multistart求解器,并使用名称值对设置属性。

例子

MS = Multistart(GS)创建小姐, 一种Multistart求解器,具有来自GSGlobalSearch求解器。

特性

展开全部

显示到命令窗口的级别,指定为以下字符向量或字符串之一:

  • '最终的'- 报告摘要结果完成。

  • 'iTer'- 初始报告结果Fmincon在第1阶段之后,每200个起点之后,每次运行一次Fmincon,除了最后的摘要。

  • '离开'- 没有显示。

例子:'iTer'

数据类型:char|细绳

对函数值的耐受性考虑相等的溶液,指定为非负标量。万博 尤文图斯解决者考虑两个解决方案在内万博 尤文图斯XTOLERANCE彼此的相对距离,并具有目标函数值函数授体彼此的相对差异。如果不满足两种条件,求解器将解决方案报告为不同。万博 尤文图斯放函数授体0获得每个本地求解器运行的结果。放函数授体更大的价值,结果较少。为了GlobalSearch详细信息,请参阅更新解决方案集当Fmincon运行时。为了Multistart详细信息,请参阅创建GlobalOptimsolution对象

例子:1E-4

数据类型:双倍的

多步中运行的最大时间,指定为正标量。多派及其本地求解器停止maxtime自跑步开始以来,秒已经过去抽动TOC

maxtime在运行期间不会中断本地求解器,因此总时间可以超过maxtime

例子:180在180秒后,本地求解器通话第一次完成求解器。

数据类型:双倍的

报告求解器进度或停止求解器,指定为函数句柄或功能手柄的单元格数组。输出功能在每个本地求解器调用后运行。当全球求解器启动和结束时,它们也会运行。使用中描述的语法编写输出功能outputfcn。看GlobalSearch输出功能

数据类型:细胞|function_handle

绘图求解器进度,指定为函数手柄的函数手柄阵列。绘图功能在每个本地求解器调用之后运行。当全球求解器启动和结束时,它们也会运行。使用中描述的语法编写图函数outputfcn

有两个内置的图功能:

  • @gsplotbestf绘制最佳目标函数值。

  • @gsplotfunccount绘制功能评估的数量。

多结构图功能

例子:@gsplotbestf

数据类型:细胞|function_handle

运行的起点,指定为:

  • '全部'- 运行所有起点。

  • “界限”- 仅运行满足界限的起点。

  • “界限”- 仅运行满足界限和不平等约束的起点。

例子:“界限”运行只能满足所有界限的点。

数据类型:char|细绳

将本地求解器调用分发给多个处理器,指定为错误的或者真的

  • 错误的- 不要并行运行。

  • 真的- 将本地求解器调用分发给多个处理器。

例子:真的

数据类型:逻辑

考虑相等的溶液的距离公差,指定为非负标量。万博 尤文图斯解决者考虑两个解决方案在内万博 尤文图斯XTOLERANCE彼此的相对距离,并具有目标函数值函数授体彼此的相对差异。如果不满足两种条件,求解器将解决方案报告为不同。万博 尤文图斯放XTOLERANCE0获得每个本地求解器运行的结果。放XTOLERANCE更大的价值,结果较少。为了GlobalSearch详细信息,请参阅更新解决方案集当Fmincon运行时。为了Multistart详细信息,请参阅创建GlobalOptimsolution对象

例子:2E-4

数据类型:双倍的

对象功能

运行多开始求解器

例子

全部收缩

考虑具有多个局部最小值的功能。

fun = @(x)x。^2 + 4*sin(5*x);fplot(有趣,[-5,5])

图包含一个轴对象。轴对象包含一个类型函数线的对象。

要搜索全球最低限度,请运行Multistart在20个问题的情况下,使用Fmincon'SQP'算法。

RNG默认%可再现性opts = optimoptions(@fmincon,,'算法',,,,'SQP');问题= createOptimproblem('fmincon',,,,'客观的',,,,...乐趣,'x0',3,'磅',-5,'ub',5,'选项',选择);MS = Multistart;[x,f] =运行(MS,问题,20)
Multistart从所有起点完成了运行。所有20个本地求解器均与正面的本地求解器出口标志融合。
X = -0.3080
F = -3.9032

创建一个Multistart具有默认属性的对象。

MS = Multistart
MS =多属性属性:useParallel:0显示:'Final'函数授权:1.0000E-06 maxtime:Inf Outputfcn:[] plotfcn:[] StartpointStorun:'All'XTOLERANE:1.0000E-066

创建一个Multistart对象具有比默认值较宽的对象,因此求解器返回彼此接近的较少的解决方案。万博 尤文图斯也有Multistart仅运行相对于边界和不平等约束可行的初始点。

ms =多派(“功能耐受性”,2e-4,'XTOLERANCE',5e-3,...'StartpointStorun',,,,“界限”
MS =多属性属性:useParallel:0显示:'Final'函数授权:2.0000E-04 maxtime:Inf Outputfcn:[] plotfcn:[] startpointStorun:'Bounds-ineqs'Xtolerance:0.0050

创建一个非违约GlobalSearch目的。

GS = GlobalSearch(“功能耐受性”,2e-4,'numTrialPoints',2000年)
GS =带有属性的GlobalSearch:NumTrialPoints:2000 Basinradiusfactor:0.2000 DistancEthresholdFactor:0.7500 MaxWaitCycle:20 numStageOnePoints:200惩罚性ThresholdFactor:0.2000'XTOLERANE:1.0000E-06

创建一个Multistart使用可用属性的对象GS

MS = Multistart(GS)
MS =多属性属性:useParallel:0显示:'Final'函数授权:2.0000E-04 maxtime:Inf Outputfcn:[] plotfcn:[] StartpointStorun:'All'XTOLERANE:1.0000E-066

小姐具有相同的非默认值函数授体作为GS。但小姐不使用数字财产。

创建一个Multistart带有A的对象函数授体1E-4

ms =多派(“功能耐受性”,1E-4)
MS =多属性属性:useParallel:0显示:'Final'函数授权:1.0000E-04 maxtime:Inf Outputfcn:[] plotfcn:[] StartpointStorun:'ALL'XTOLERANE:1.0000E-066

更新XTOLERANCE财产为1E-3,和StartpointStorun财产为“界限”

MS = MULTISTART(MS,'XTOLERANCE',1E-3,'StartpointStorun',,,,“界限”
MS =多属性属性:useParallel:0显示:'Final'函数授权:1.0000E-04 maxtime:Inf Outputfcn:[] plotfcn:[] startpointStorun:'BundsStorun:'bunds'XTOLERANE:1.0000E-03

您还可以使用点符号一次更新一个属性。

女士maxtime = 1800
MS =属性属性:useParallel:0 Display:'Final'函数TOLERANE:1.0000E-04 MAXTIME:1800 outputfcn:[] plotfcn:[] startpointStorun:'bunds'XTOLERANE:1.0000E-03

算法

有关该算法的详细说明,请参见多设施算法

扩展功能

版本历史记录

在R2010a中引入