【发布时间】:2020-10-23 16:01:52
【问题描述】:
我想问你一些关于优化线性程序的问题。我已经成功设置了模型。但是,我在设置元启发式算法以减少计算时间时遇到问题。基本的优化模型可以在这里看到:
在元启发式算法中有一个while循环,其条件如下:
while $ \sum_{i=1}^I b_i y_i \leq \sum_{k=1} ^K q_k $ 做
我试图用下面的代码来实现这个条件:
while lpSum(b[i]*y[i] for i in I)<=lpSum(q[k] for k in K):
如果分别计算这两个总和,我会得到两者的正确结果。但是,当我将它们置于这种条件下时,代码会进入无限循环,即使条件得到满足并且它应该中断循环。我想这与数据类型有关,并且参数不能是LpAffineExpression。但是,我真的很难理解这个问题。
我希望您能理解我的问题,并且非常感谢您的想法和解释!如果您需要有关特定内容的更多信息,请告诉我 - 很抱歉成为初学者。
非常感谢提前和最好的问候, 伯恩哈德
【问题讨论】:
标签: python mathematical-optimization equation heuristics pulp