主要内容

多层的

找到多个本地最小值

描述

一种多层的对象包含影响如何的属性(选项)跑步反复运行本地求解器以生成一个GlobalOptimsolution.目的。运行时,通过从各个点开始,求解器会尝试为问题找到多个本地解决方案。金宝搏官方网站

创建

描述

例子

MS = MultiStart.创造多发性硬化症, 一种多层的求解器与其属性设置为默认值。

例子

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

例子

MS = MultiStart(OLDMS,NAME,VALUE)创造了一份副本OLDMS.多层的求解器,使用名称值对设置属性。

例子

ms = multiStart(GS)创造多发性硬化症, 一种多层的求解器,具有来自的常见参数值GS.Globalsearch.求解器。

特性

展开全部

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

  • '最后'- 报告摘要结果后跑步完成。

  • 'iter'- 初始化后的报告结果粉刺在第1阶段之后运行,每200开始点,并在每次运行之后粉刺除最后的摘要外。

  • '离开'- 没有显示。

例子:'iter'

数据类型:char|细绳

考虑到相等的解决方案的功能值的容忍度指定为非负标量。金宝搏官方网站如果其中,求解器会考虑两个解决方案金宝搏官方网站Xtolerance.彼此相对距离并在内部具有客观函数值functiontolerance.彼此的相对差异。如果两个条件都不满足,则求解器将解决方案报告为截然不同。金宝搏官方网站放functiontolerance.0.获取每个本地求解器运行的结果。放functiontolerance.更大的值越来越少。为了Globalsearch.细节,参见更新解决方案集粉刺跑步时.为了多层的细节,参见创建GlobalOptimSolution对象

例子:1E-4

数据类型:双倍的

MultiStart运行的最长时间,指定为正标量。MultiStart及其本地求解器停止MaxTime.从运行开始以来已经通过了秒数Tic.TOC.

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

例子:180.第一次停止求解器第一次在180秒后完成本地求解器呼叫。

数据类型:双倍的

关于求解器进度或停止求解器的报告,指定为函数句柄或功能句柄阵列。输出函数在每个本地求解器呼叫后运行。当全球求解器开始和结束时,它们也会运行。使用描述的语法写入输出函数outputfcn..看GlobalSearch输出功能

数据类型:细胞|function_handle.

绘图求解器进度,指定为函数句柄或功能句柄阵列。绘制函数在每个本地求解器呼叫后运行。当全球求解器开始和结束时,它们也会运行。使用描述的语法写入绘图函数outputfcn.

有两个内置绘图功能:

  • @gsplotbestf.绘制最佳的客观函数值。

  • @gsplotfunccount.绘制函数评估的数量。

MultiStart绘图功能

例子:@gsplotbestf.

数据类型:细胞|function_handle.

开始点运行,指定为:

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

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

  • '界限'- 仅运行满足界限和不等式约束的起点。

例子:'界限'仅运行满足所有界限的点。

数据类型:char|细绳

将本地求解器调用分发到多个处理器,指定为错误的要么真的

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

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

例子:真的

数据类型:逻辑

考虑距离相等的距离的距离公差,指定为非负标量。金宝搏官方网站如果其中,求解器会考虑两个解决方案金宝搏官方网站Xtolerance.彼此相对距离并在内部具有客观函数值functiontolerance.彼此的相对差异。如果两个条件都不满足,则求解器将解决方案报告为截然不同。金宝搏官方网站放Xtolerance.0.获取每个本地求解器运行的结果。放Xtolerance.更大的值越来越少。为了Globalsearch.细节,参见更新解决方案集粉刺跑步时.为了多层的细节,参见创建GlobalOptimSolution对象

例子:2E-4

数据类型:双倍的

对象功能

跑步 运行多个启动求解器

例子

全部收缩

考虑具有几个本地最小值的函数。

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

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

搜索全局最小值,运行多层的在使用20个问题的情况下粉刺'SQP'算法。

RNG.默认重复性的%选择= Optimoptions(@Fmincon,'算法''SQP');问题= createOptimproblem('粉丝''客观的'......乐趣,'x0',3,“磅”,-5,'UB',5,'选项',选择);ms = multiStart;[x,f] =运行(ms,问题,20)
MultiStart完成了所有起始点的运行。所有20个本地解算器运行融合,并使用正本地求解器退出标志。
x = -0.3080.
f = -3.9032.

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

MS = MultiStart.
MS = MultiStart具有属性:DISPERPLILLE:0显示:'Final'功能特许:1.0000E-06 MAXTIME:INF OUTPORFCN:[] PLOTFCN:[] STARTPOINTSTORUN:'所有'XTOLERANCE:1.0000E-06

创建一个多层的对象具有宽松的公差而不是默认值,因此求解器返回彼此靠近的更少的解决方案。金宝搏官方网站也有多层的仅运行与界限和不等式约束可行的初始点。

ms = multiStart('functiontolerance',2e-4,“XTolerance”,5e-3,......'startpoinstorun''界限'
MS = MultiStart具有属性:DESPELLELLE:0显示:'Final'功能特许:2.0000E-04 MAXTIME:INF OUTPUTFCN:[] PLOTFCN:[] STARTPOINTSTORUN:'界限 -  INEQS'XTolerance:0.0050

创造一个不合理的Globalsearch.目的。

gs = globalsearch('functiontolerance',2e-4,'numtrialpoints',2000)
GS = Globalsearch'Xtolerance:1.0000E-06

创建一个多层的使用可用属性的对象GS.

ms = multiStart(GS)
MS = MultiStart具有属性:DEVERPLASE:0显示:'FING'功能特许:2.0000E-04 MAXTIME:INF OUTPUTFCN:[] PLOTFCN:[] STARTPOINTSTORUN:'全部'XTOLERANCE:1.0000E-06

多发性硬化症具有相同的非义法价值functiontolerance.作为GS..但多发性硬化症不使用numtrialpoints.财产。

创建一个多层的与A的对象functiontolerance.1E-4

ms = multiStart('functiontolerance',1E-4)
MS = MultiStart具有属性:DemantPlaller:0显示:'Final'功能特许:1.0000E-04 MaxTime:INF OpertFCN:[] PlotFCN:[] SpartPointStorun:'全部'Xtolerance:1.0000E-06

更新Xtolerance.财产1E-3,而且startpointorun.财产'界限'

ms = multiStart(MS,“XTolerance”,1e-3,'startpoinstorun''界限'
MS = MultiStart具有属性:DISPERSILLEX:0显示:'Final'FunctionTolerance:1.0000E-04 MAXTIME:INF OUTPUTFCN:[] PLOTFCN:[] StartPointStorun:'界限'Xtolerance:1.0000E-03

您还可以使用点表示法在一次更新属性。

MS.MAXTIME = 1800.
MS = MultiStart具有属性:DESULEPLILLE:0显示:'Final'FunctionTolerance:1.0000E-04 MaxTime:1800 OpertFCN:[] PlotFCN:[] SignsStorun:'界限'Xtolerance:1.0000E-03

算法

有关算法的详细描述,请参阅多际轨道算法

扩展能力

在R2010A介绍