主要内容

解释TrustogateOpplot.

TrustogateOpplot.Plot函数提供了关于代理优化步骤的大量信息。

最小化有界功能

例如,考虑步骤的曲线代理人孔采用内置的测试功能Restriginsfcn..此函数在点[0,0]的全局最小值为0。

创建一个表面图Restriginsfcn.

Ezsurf(@(x,y)rastriginsfcn([x(:),y(:)]));

绘制最小化过程

通过给予不对称的界限,你鼓励代理人孔远离全局最小值。设置不对称的界限[-3,-3][9,10].设置选项以使用TrustogateOpplot.绘图函数,然后致电代理人孔

lb = [-3,-3];UB = [9,10];选项= Optimoptions('trustogateopt''plotfcn''trustogateptplot');RNG.默认[x,fval] = trustogateopt(@ restriginsfcn,lb,Ub,选项);

Trustogateopt停止,因为它超出了“选项”QuaxFunctioneValuations'设置的函数评估限制。

解释情节

开始从左侧解释情节。有关算法步骤的详细信息,请参阅代理优化算法

  • 第一点是黑色三角形,指示问题范围内的函数的QuAsirandom样本。这些观点来自于构建替代阶段。

  • 接下来是指示自适应点的黑点,在搜索最小相位中创建的点。

  • 厚绿线表示找到的最佳(最低)目标函数值。评估后不久30,代理人孔在局部最小值中陷入了局部最小值,附近的客观函数值5.放大以更清楚地看到此行为。

XLIM([20 100])ylim([0 10])

  • 近估值数120,垂直线表示替代重置。此时,该算法返回到构造代理阶段。

  • 深蓝色X点代表现任者,这是自以前替代重置以来的最佳点。

  • 在评估号码160附近,现任者通过达到约4.在该评估号之后,通过达到约4的值来改善前一点,最佳点慢慢降低。放大以更清楚地看到这个行为。

XLIM([140 200])ylim([0 6])

  • 优化在评估号200处停止,因为它是2-D问题的默认函数评估限制。

非线性约束的问题

TrustogateOpplot.当您具有非线性约束时显示更改。强加约束x(1)是整数值,还是非线性约束 X 2 X 1 2 - 2 .有关实现此约束的函数,请参见Rasfcn.在这个例子的最后。

有趣= @rasfcn;

通过设置设置整数约束Intcon.= 1,并运行最小化。

Intcon = 1;[x,fval] = trustogateopt(有趣,lb,Ub,Intcon,选项);

Trustogateopt停止,因为它超出了“选项”QuaxFunctioneValuations'设置的函数评估限制。

剧情现在显示了红色标记在哪里代理人孔评估一个不可行的点。最终点接近[0,0]的真实最小点。

DISP(x)
1.0E-03 * 0 -0.3913

整数约束可能有所帮助代理人孔通过减少搜索空间来查找真实的最小值。

功能f = rasfcn(x)f.fval = rastriginsfcn(x);f.ineq = x(1)^ 2  -  2  -  x(2);结尾

也可以看看

相关的话题