以函数最小化为任务的快速算法的基准

Benchmark for fast algorithms whose task is function minimization

是否有一组测试函数来衡量给定算法的性能(在速度方面,可能与准确性权衡),其任务是找到 a/the 实值函数的全局最小值在给定的时间间隔内?最终:这个问题是一个悬而未决的问题,还是存在针对此类任务的理论上的最佳算法?

编辑:对函数没有限制,除了它应该有界之外。

取一个函数,它在你计算 f (x) 的每个点都为 0,在你不计算 f (x) 的每个点都取一个未知的 c > 0 的函数。如果你想要它连续,那么如果 x 在 a 和 b 之间,其中 a 和 b 是你计算 f (a) 和 f (b) 的相邻点,那么 f 从 f (a) = 0 到 f ( (a + b)/2) = c 并返回线性到 f (b) = 0。

很明显,每次计算 f (x) 时,都会得到零。由于您从不评估其他任何东西,因此您的算法无法得出全局最大值不为零的结论 - 这是错误的。

除了有界之外对函数没有任何限制,似乎不可能总是找到它的全局最小值,更不用说在合理的时间内了。

考虑在 [0..1] 上定义的实值函数族:

f (x0) = y0
f (x)  = 0    for all other x in [0..1]

对于任何固定的 x0 in [0..1]y0 < 0,最小值在 x0。 尽管如此,任何没有 x0 先验知识的算法都很难找到它。