optimize.fminbound 的边界会影响我正在寻找的结果



以下是我在Python中的代码:

import scipy.optimize as opt
q1=opt.fminbound(f, 0.00, 100.00, xtol=1e-9)
q2=opt.fminbound(f, 0.00, 1000.00, xtol=1e-9)

结果表明,q1不等于q2,尽管它们都在区间(1.00,10.00(内。背后的原因是什么?如何获得真正的最优值?

不是100%确定,但我猜fminbound使用的算法的数学实现取决于查找步长的范围。对于您的应用程序来说,这并不重要,因为您可以指定任意的xtol值。

相关内容

最新更新