纸浆MILP问题,条件约束,基于已知参数的条件

问题描述 投票:0回答:1

我正在寻求有关使用预定义参数将条件约束纳入线性规划模型的建议。具体来说,我需要根据泵率对加油站的燃料购买施加限制。条件是如果泵速为零,则购买的燃料也应为零。泵速是已知参数,变量“x”代表购买的燃料。

这是我目前的方法:

    if (pump_rate[i] <= 0):
            x[i].setInitialValue(0)
            x[i].lowBound = 0
            x[i].upBound = 0
    else:      
         lp_prob += x[i] <= pump_rate[i] * time_at_pump[i]

linear-programming pulp
1个回答
0
投票

不要修改变量属性......如果条件为真,只需将其限制为零:

if (pump_rate[i] <= 0):
     lp_prob += x[i] == 0
else:      
     lp_prob += x[i] <= pump_rate[i] * time_at_pump[i]
© www.soinside.com 2019 - 2024. All rights reserved.