我想找到一个带有3个args的函数的最小值,但想要修复两个并且只改变其中一个,例如,
def f(x, y, z):
result = f(x,y,z)
return result
y
和z
是常量。 x
是我想要改变的唯一参数。
optimize.fmin(http://docs.scipy.org/doc/scipy-0.17.0/reference/generated/scipy.optimize.fmin.html)似乎是理想的,但文档不清楚如何指定哪些参数是常量以及哪些参数是变化的。关于如何做的任何提示
答案 0 :(得分:1)
optimize总是假定第一个参数是变化的,其余的必须事先修复,可以通过创建部分函数或通过将其他参数作为args
传递,因此
print fmin(foo, x0=..., args={'y': ..., 'z': ...})