我想知道在使用Python PuLP时是否有两种方法具有两个不同约束的变量。
prob += lpSum([evaptwohundredF[i] * component_vars[i] for i in name]) >= 30.0000, "evaptwohundredFrequirement"
prob += lpSum([evaptwohundredF[i] * component_vars[i] for i in name]) <=70.0000, "evaptwohundredFrequirement"
这是我想要的一个例子,其中同一个变量有两个约束,所以&gt; = 30和&lt; = 70,但问题是我得到一个错误,上面写着&#39; pulp.constants.PulpError :重叠约束名称:evaptwohundredrequirement&#39;,那么如何让它允许两种约束?
答案 0 :(得分:1)
我不是一个很大的纸浆用户,但你在线性编程中显然允许你所要求的(因此可能在所有的建模工具中)。
您的案例中的问题:纸浆需要每个约束的唯一标识符/ str (并且您的相同)。
执行类似的操作(仅更改约束名称):
prob += lpSum([evaptwohundredF[i] * component_vars[i] for i in name]) >= 30.0000, "evaptwohundredFrequirement_a"
prob += lpSum([evaptwohundredF[i] * component_vars[i] for i in name]) <=70.0000, "evaptwohundredFrequirement_b"