【发布时间】:2016-12-14 13:54:05
【问题描述】:
我正在尝试专门使用 scipy.optimize.minimize 中的 dogleg 方法求解一个函数。为了更好地理解它,我正在修改帮助页面底部的示例并使用 dogleg 方法:
from scipy.optimize import minimize
def fun(x):
return (x[0] - 1)**2 + (x[1] - 2.5)**2
# solver
res = minimize(fun, (2, 0), method='dogleg', jac=False) # or jac=None, it doesn't matter
print(res)
我收到一个错误ValueError: Jacobian is required for dogleg minimization.
这类似于一个较老的问题:"Jacobian is required for Newton-CG method" when doing a approximation to a Jacobian not being used when jac=False?,似乎没有得到解决。
所以我的问题是:minimize 中是否真的存在错误,或者我没有正确使用它?
【问题讨论】:
-
请注意,Scipy 和 Python 是两个完全独立的项目,具有不同的发布周期和版本号。问题标题表明您认为 SciPy 是 Python 3.5 的一部分,但它绝对不是。 Scipy 的每个版本都可以与多个 Python 版本一起使用,Scipy 版本号与您的问题的相关性比 Python 版本号要高得多。
标签: python numpy optimization scipy