python - Python scipy.optimize 中最小化二维函数的问题

标签 python scipy minimize

我想最小化二维函数并有这样的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')

由于这样的错误,它不起作用(这是错误的最后一行):

 TypeError: f() missing 1 required positional argument: 'y'

这是什么意思以及如何解决它?

最佳答案

如果您想使用scipy.optimize.minimize优化多维函数,则需要将其表示为采用数组的函数:

res = minimize(lambda x: f(*x), x0=...)

关于python - Python scipy.optimize 中最小化二维函数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36927213/

相关文章:

python - 尝试存储神经网络时获取 'can' t pickle _thread.RLock 对象

Python 弃用警告

python - 凯拉斯, tensorflow : How to set breakpoint (debug) in custom layer when evaluating?

python - <lambda>() 接受 1 个位置参数,但给出了 2 个

html - 如何取消最小化 min.css 文件?

python - 传递cursor.execute mysql 查询中的元素列表

python - scipy周期图和自行实现的功率谱密度的区别

python - 是否有用于非标准类代数对象的稀疏矩阵运算的Python库?

python - Scipy loadmat 只加载整数?

swift - 以编程方式最小化所有窗口或除了我的 Cocoa 应用程序?