我正在尝试使用SciPy optimize.minimize使用几个变量,我在Structure of inputs to scipy minimize function中找到了一个很好的解释,当对象函数是f(x,y)类型和参数时被优化的是“x”。 但问题出现了: 如果我的目标函数是f(x,y,z,u,v),并且我想对“y”和“u”进行优化(假设f返回标量),该怎么办。
答案 0 :(得分:1)
只需创建一个新函数,目标变量首先出现在参数列表中:
def g(y, u, x, z, v):
return f(x, y, z, u, v)
(或使用类似的lambda)。