K. *_*lev 2 python minimize scipy
我想最小化二维函数并拥有这样的 Python 代码:
def f(x,y):
return (x-1.0)**2 + (y-2.0)**2
res = minimize(f, x0 = [0.0,0.0], bounds = ((-5,5),(-5,5)), method = 'L-BFGS-B')
Run Code Online (Sandbox Code Playgroud)
它不起作用,因为这样的错误(这是错误的最后一行):
TypeError: f() missing 1 required positional argument: 'y'
Run Code Online (Sandbox Code Playgroud)
这是什么意思,我该如何解决?
如果你想用 优化一个多维函数scipy.optimize.minimize,你需要把它表示为一个接受数组的函数:
res = minimize(lambda x: f(*x), x0=...)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1123 次 |
| 最近记录: |