如何模式搜索查询作品

上下文

patternsearch发现点的序列,X0X1X2,...,即接近最佳点。目标函数的值或者降低或保持从各点是相同的序列到下一英寸本节介绍的功能模式搜索是如何工作的描述优化使用GPS算法

为了便于说明,本节介绍的广义化搜索(GPS)是如何工作使用的最大的2正基ñ规模调成网孔选项。

此部分不显示怎么patternsearch算法可与边界或线性约束。对于边界和线性约束,patternsearch修改轮询分是可行的,这意味着满足所有边界和线性约束。

此部分不包括非线性约束。要了解如何patternsearch非线性约束条件的作品,看非线性约束求解算法

问题设置:

成功的民意调查

模式搜索在初始开始点X0您提供的。在这个例子中,X0 = [2.1 1.7]

迭代1

在第一迭代中,筛目大小为1和GPS算法增加模式矢量到初始点X0 = [2.1 1.7]计算如下网格点:

[1 0] + X0 = [3.1 1.7] [0 1] + X0 = [2.1 2.7] [-1 0] + X0 = [1.1 1.7] [0 -1] + X0 = [2.1 0.7]

该算法在上面示出的顺序的网格点计算目标函数。下图显示的值ps_example在初始点和网格点。

通过计算它们的目标函数值,直到它找到一个其值大于4.6347时,在值的算法轮询网格点X0。在这种情况下,它找到的第一个这样的点是[1.1 1.7],在该目标函数的值是4.5146,所以在迭代1中的轮询是成功。该算法集序列中的下一个点等于

X1 = [1.1 1.7]

注意

默认情况下,GPS模式搜索算法停止当前迭代只要它找到一个网点,其锻炼价值比当前点小。因此,该算法可能不轮询所有网格点。你可以使算法民意测验设置的所有网点完成调查

迭代2

一个成功的投票之后,算法乘以当前网格由2大小,的默认值膨胀系数在里面网孔选择窗格中。因为初始网格尺寸为1时,在第二次迭代的筛目大小为2在迭代2中的网格包含以下几点:

2 * [1 0] + X1 = [3.1 1.7] 2 * [0 1] + X1 = [1.1 3.7] 2 * [ -  1 0] + X1 = [-0.9 1.7] 2 * [0 -1] + X1= [1.1 -0.3]

下图显示了点X1和网格点,用相应的值加在一起ps_example

该算法轮询网格点,直到它找到一个,其值是4.5146较小,在值X1。找到的第一个这样的点是[-0.9 1.7],在该目标函数的值是3.25,所以在迭代2投票再次成功。该算法集合的序列中的第二点等于

X2 = [-0.9 1.7]

由于轮询成功,则算法乘以当前网格尺寸由2到在第三次迭代获得的4的筛目大小。

不成功的民意调查

通过第四次迭代,当前点是

X3 = [-4.9 1.7]

和网孔大小为8,所以网格由点

8 * [1 0] + X3 = [3.1 1.7] 8 * [0 1] + X3 = [-4.9 9.7] 8 * [ -  1 0] + X3 = [-12.9 1.7] 8 * [0 -1] +X3 = [-4.9 -1.3]

下图显示了网格点,他们的目标函数值。

在此迭代中,无网格点具有比在值小的目标函数值X3,所以投票是不成功。在这种情况下,算法不在下一个迭代改变当前点。那是,

X4 = X3;

在下一迭代中,算法乘以当前网格0.5大小,的默认值收缩系数在里面网孔选项窗格中,从而在下一迭代的筛目大小为4。然后,该算法具有较小筛目大小轮询。

在MADS成功和不成功的民意调查

设置PollMethod选项'MADSPositiveBasis2N'要么'MADSPositiveBasisNp1'原因patternsearch使用这两种不同的轮询类型和轮询不同于其他轮询算法反应。

新生成的伪随机甲MADS轮询用途在每次迭代啮合向量。向量被随机地从一个随机下三角矩阵的列重排部件。基质的组分具有整数尺寸高达1 / 网格尺寸 。在调查中,网格向量由筛目大小相乘,所以轮询点可高达 网格尺寸 从目前的点。

不成功的投票通过的因素承包网4,无视MeshContractionFactor选项。同样,成功的投票通过的因素扩大网4,无视MeshExpansionFactor选项。最大网格尺寸1尽管的任何设置MaxMeshSize选项。

此外,当有一个成功的民意调查显示,patternsearch在成功的开始点和投票一次。这额外的调查采用了相同的网格载体,通过倍扩大4同时保持低于大小1。额外的调查再次看起来沿着只是成功的方向相同。

显示结果在每次迭代

您可以在通过设置每次迭代显示模式搜索结果显示器的水平迭代在里面显示到命令窗口选项。这使您可以评估模式的前进搜索和进行修改,选项如果需要的话。

通过此设置,该图案搜索有关在命令行每次迭代显示信息。前四个迭代

ITER F-计数F(X)MeshSize方法0 1 4.63474 1 1 4 4.51464 2成功轮询2 7 3.25 4成功轮询3 10 -0.264905 8成功轮询4 14 -0.264905 4精确网

入口投票成功下面方法表明当前迭代是成功的。例如,在迭代2投票成功。其结果是,在迭代2中计算出的点的目标函数值,下面显示F(X),小于在迭代1的值。

在迭代4,入境瑞风网告诉你,投票不成功。其结果是,在迭代4保持从迭代3不变函数值。

默认情况下,模式搜索双打每个不成功的轮询之后每个成功的投票和半之后的网目尺寸。

更多的迭代

停车前的模式搜索进行60次迭代。下面图显示在模式搜索的前13次迭代中计算出的序列中的点。

点下面的数字表示在该算法找到该点的第一次迭代。该图只显示对应成功民调迭代次数,因为最好的点没有不成功的调查之后更改。例如,在迭代4和5的最佳点是一样的在迭代3。

投票方法

在每次迭代中,模式搜索调查在信息点的网格,也就是说,它在计算网格点的目标函数,看看是否有一个其功能值小于在当前点的函数值。如何模式搜索查询作品提供轮询的一个例子。您可以指定由定义网格模式投票方法选项。默认的模式,GPS正基2N,由以下部分组成2ñ方向,其中,ñ对于目标函数的自变量的数量。

[1 0 0 ... 0]
[0 1 0 ... 0]
...
[0 0 0 ... 1]
[-1 0 0 ... 0]
[0 -1 0 ... 0]
[0 0 0 ...- 1]。

例如,如果目标函数有三个独立变量中,GPS正基2N,由以下六个矢量。

[1 0 0]
[0 1 0]
[0 0 1]
[-1 0 0]
[0 -1 0]
[0 0 -1]。

另外,您也可以设置投票方法GPS正基NP1中,图案由以下的ñ+ 1点的方向。

[1 0 0 ... 0]
[0 1 0 ... 0]
...
[0 0 0 ... 1]
[-1 -1 -1 ...- 1]。

例如,如果目标函数有三个独立变量中,GPS正基NP1,由以下四个向量。

[1 0 0]
[0 1 0]
[0 0 1]
[-1 -1 -1]。

模式搜索有时会跑得更快使用GPS正基NP1而不是GPS正基2N作为投票方法,由于算法搜索在每次迭代点较少。虽然没有在本例中被寻址,使用时也是如此MADS正基NP1MADS正基2N,同样地,对于GSS。例如,如果运行在描述上的例子的图案搜索线性约束问题中,该算法执行与1588个的功能评价GPS正基2N,默认投票方法,但只有877使用功能评估GPS正基NP1。更多详细信息,请参阅比较投票选项的效率

但是,使用如果目标函数有很多局部极小,GPS正基2N作为投票方法可避免找到一个当地最低,是不是全球最小的,因为搜索探索周围的每个迭代当前点更多的积分。

完成投票

默认情况下,如果模式搜索发现,提高了目标函数值的网点,停止投票,并设置点作为当前点为下一次迭代。当这种情况发生时,一些网点可能无法得到调查。有些unpolled点可能的目标函数值比第一种模式搜索发现甚至更低。

对于其中有几个局部极小的问题,有时最好使模式搜索调查所有在每次迭代网格点,选择一个最佳的目标函数值。这使得搜索模式在每次迭代,探索更多的积分,从而有可能避免局部最小,是不是全球最低。在优化应用程序,你可以让模式搜索调查整个网格设置完成调查轮询选项。在命令行中使用optimoptions设置UseCompletePoll选项真正

停止条件的模式搜索

停止模式搜索算法的标准中列出停止标准优化应用程序的部分:

当任何下列条件发生算法停止:

  • 网格尺寸小于网宽容

  • 由算法执行的迭代次数达到的值最大迭代

  • 所述算法执行的目标函数评估的总数达到的值最大功能评估

  • 的时间,以秒为单位的算法运行,直到它达到的值时限

  • 一个成功的调查后,点之间的距离在前面的两次迭代发现和网目尺寸均小于X宽容

  • 一个成功的调查后,在之前的两次迭代的目标函数的变化小于功能公差和网孔尺寸小于X宽容

非线性约束宽容不作为停止准则。它决定相对于非线性约束的可行性。

的MADS算法使用被称为轮询参数,Δ的附加参数p在网目尺寸停止​​准则:

Δ p = { ñ Δ 正依据 ñ + 1 轮询 Δ 正依据2 ñ 轮询,

其中Δ是网格尺寸。该MADS停止准则是:

Δp网宽容

模式搜索的健壮性

该模式搜索算法是相对于目标函数失败强劲。这表示patternsearch容忍导致功能评估为NaN天道酬勤或复数值。当在初始点处的目标函数X0是一个真正的,有限的值,patternsearch对待民意调查点故障仿佛目标函数值大,并且忽略它们。

例如,如果在调查的所有点计算为为NaNpatternsearch考虑投票不成功,缩小了网,并重新评估。如果在调查评估为较小的值甚至一点比任何还没有看到,patternsearch考虑投票成功,并扩大了目。

相关话题