minimize(method=’Nelder-Mead’)#

scipy.optimize.minimize(fun, x0, args=(), method=None, jac=None, hess=None, hessp=None, bounds=None, constraints=(), tol=None, callback=None, options=None)

使用 Nelder-Mead 算法对一个或多个变量的标量函数进行最小化。

另请参阅

有关其余参数的文档,请参阅 scipy.optimize.minimize

选项:
——-
disp布尔值

设置为 True 以打印收敛消息。

maxiter, maxfev整型

允许的最大迭代次数和函数评估次数。如果未设置 maxitermaxfev,则默认为 N*200,其中 N 是变量的数量。如果 maxitermaxfev 都设置了,则最小化将在两者中首先达到者时停止。

return_all布尔值,可选

设置为 True 以返回每次迭代的最佳解决方案列表。

initial_simplex形状为 (N + 1, N) 的类数组

初始单纯形。如果给出,将覆盖 x0initial_simplex[j,:] 应包含单纯形中 N+1 个顶点的第 j 个顶点的坐标,其中 N 是维度。

xatol浮点型,可选

迭代之间 xopt 的绝对误差,可接受的收敛值。

fatol数值,可选

迭代之间 func(xopt) 的绝对误差,可接受的收敛值。

adaptive布尔值,可选

根据问题的维度调整算法参数。对于高维最小化很有用 [1]

bounds序列或 Bounds,可选

变量的边界。有两种方法来指定边界

  1. Bounds 类的实例。

  2. 对于 x 中的每个元素,是 (min, max) 对的序列。使用 None 表示没有边界。

请注意,这只是根据边界裁剪单纯形中的所有顶点。

参考文献

[1]

Gao, F. and Han, L. 实施具有自适应参数的 Nelder-Mead 单纯形算法。2012. Computational Optimization and Applications. 51:1, pp. 259-277