如何找到限制在 scipy 中输入值总和的函数的最优值?

问题描述

我有两个输入值的线性函数,根据以下(params 已经计算):

def objective(x):
    return x[0] * params[0] + x[1] * params[1] + params[2]

现在我想用 scipy.optimize.minimize 计算函数的最优(最小值),并限制输入值范围:输入的总和不允许大于 1000 . 我可以将各自的两个输入限制在范围内:

bounds = ((0.0,1000.0),(0,1000.0))
scipy.optimize.minimize(objective,0),method="TNC",bounds=bounds)

并且它给出了 1000,1000 作为最优输入值的候选,正如预期的那样。但是,正如我所说,我需要输入值对在值的总和受到限制的范围内进行优化,而不仅仅是独立的单独输入值。我应该如何修改我的代码才能做到这一点?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)