这是一组测试函数,可以用来测试全局优化算法的有效性。有些很容易优化(rosenbrock, leon,…),有些几乎不可能(crosslegtable, bukin6,…)。
所有测试函数都取自[1]、[2]或[3](见下文)。所有函数都可以通过两种方式调用:
[dims, lb, ub, sol, fval_sol] = fun()
(例如,没有输入参数)返回函数的维数,默认的下界和上界,所有全局最小值的解向量和相应的函数值。要计算输入X的函数值,使用:
Val = fun([x1, x2,…], xn])
维数[n]取决于特定的函数[fun](对于大多数函数,n=2)。注意单个向量参数——这样做是为了方便地将函数插入到全局优化器中,在这些函数中插入一个[N x N]的试验向量矩阵。
我还包含了一个函数来显示大部分函数。它叫做EZIMAGE,可以用函数句柄参数来调用:
ezimage(@himmelblau)(绘制himmelblau函数)
ezimage(@sinenvsin)(见截图)
...
或者就像这样:
ezimage ()
它列出所有函数并等待用户输入。这是为了对测试函数必须提供的挑战有一个初步的印象。
未来工作:
-约束单目标函数
-(约束)多目标函数
来源:
[1] Mishra, Sudhanshu。“关于排斥粒子群方法全局优化和性能的一些新的测试函数”。MPRA, 2006年8月23日。http://mpra.ub.uni-muenchen.de/2718/
z.k Silagadze。“寻找二维峰值”。二四年三月十一日。arXiv预打印:arXiv:physics/0402085v3
[3] W.孙,Ya-X。元。最优化理论与方法。非线性规划”。施普林格verlag, 2006。isbn - 13:978 - 0 - 387 - 24975 - 9。
引用作为
Rody Oldenhuis(2023)。全局优化算法的测试函数GitHub (https://github.com/rodyo/FEX-testfunctions/releases/tag/v1.5)。检索.
single-objective-unconstrained
无法下载使用GitHub默认分支的版本
版本 | 发表 | 发布说明 | |
---|---|---|---|
1.5 | 参见GitHub上此版本的发布说明:https://github.com/rodyo/FEX-testfunctions/releases/tag/v1.5 |
||
1.4.0.0 | 描述更新 |
|
|
1.3.0.0 | [链接到Github] |
|
|
1.2.0.0 | 修正leon函数中的bug(方块->方块) |
||
1.1.0.0 | 更新了所有的功能,自动找到它的尺寸/边界 |
||
1.0.0.0 |