6

有没有人知道一个强大的例程/算法(最好在 scipy/python 中)来定位 N 维向量空间的定义(“矩形”)区域中 N 个变量的标量实函数的“所有”局部最小值?

scipy 中的受约束和不受约束的最小化算法都只返回一个最小值(全局或局部)

4

1 回答 1

2

Scipy 的盆地跳跃有一个callback参数可以用来保存所有找到的最小值。

例如:

all_minima = []
def save_minima(x, f, accepted):
    all_minima.append(x)

basinhopping(func, x0, callback=save_minima)

显然,这不一定会返回所有局部最小值。但它确实会返回它找到的所有内容。

于 2017-09-04T14:18:00.460 回答