最大限度地减少许多本地最小值的功能

描述

本节介绍了一个示例,该示例显示了如何使用模拟退火查找函数的本地最小值。

De Jong的第五个功能是具有许多(25)本地最小值的二维功能:

dejong5fcn.

许多标准优化算法陷入局部最小值。因为模拟退火算法进行了宽的随机搜索,所以捕获在局部最小值的可能性会降低。

笔记:

由于模拟退火使用随机数发生器,因此每次运行此算法时都可以获得不同的结果。看重现你的结果想要查询更多的信息。

最小化命令行

在没有约束的情况下运行模拟退火算法,呼叫Simulannealbnd.在命令行使用目标函数dejong5fcn.m.,由匿名函数指针引用:

RNG(10,'Twister')%以获得再现性乐趣= @ dejong5fcn;[x,fval] = simulannealbnd(乐趣,[0 0])

这是回报

优化终止:更改最佳函数值小于options.functiontolerance。x = -16.1292 -15.8214 fval = 6.9034

在哪里

  • X是算法返回的最后一点。

  • fval.是最后一点的目标函数值。

最小化使用优化应用程序

使用优化应用程序运行最小化,

  1. 设置您的问题如优化应用程序中所示

  2. 点击开始在下面运行求解器并查看结果

    您的结果可能与所示,因为Simulannealbnd.使用随机数流。

也可以看看

相关话题