【发布时间】:2022-01-15 23:56:52
【问题描述】:
我不明白为什么这段代码的结果是 11 而不是 4,7
import scipy.optimize as sp
def f(x):
return np.sin(x)
min = sp.minimize(f, x0=1.6).x
print(min)
【问题讨论】:
标签: scipy scipy-optimize scipy-optimize-minimize
我不明白为什么这段代码的结果是 11 而不是 4,7
import scipy.optimize as sp
def f(x):
return np.sin(x)
min = sp.minimize(f, x0=1.6).x
print(min)
【问题讨论】:
标签: scipy scipy-optimize scipy-optimize-minimize
当最小化具有多个(在我们的例子中是无限的)最小值的函数scipy.optimize.minimize 并不能保证收敛到最接近初始估计值x0。
优化方法的方向和步长取决于f'(x0) 的值(或其数值估计)。
对于 3 * pi / 4* pi < x0 < 5 * pi / 4,scipy.optimize.minimize 的默认方法将收敛到3 * pi/2 = 4.71238898038469
【讨论】: