我想解决一个 lp 优化问题,其中几个变量的上限不是整数,而是另一个变量的函数。例如,i
, j
和k
是三个变量,界限是 0<=i<=100
, 0<=j<=i-1
和0<=k<=j-1
。我们如何在 scipy lp 求解器中表示这样的非整数界限?
最佳答案
目前 scipy 的方法都不允许应用动态边界。您可以对 scipy.optimize.minimize
或 fsolve
进行非标准扩展,或者使用动态边界实现您自己的优化器。
现在讨论这样做是否是一个好主意:不!
这是因为对于一个精心制定的优化问题,您希望设计变量及其界限正交独立。如果边界根据其他设计变量而变化,则问题不是正交独立的。
关于python - 如何表示 scipy.optimization 中变量的界限,其中界限是另一个变量的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54267193/