2024-09-20 23:03:06 发布
网友
假设我有两个实变量:X&;Y和两个二进制变量x&;y
我想添加以下约束pyomo:
when X>0 x--->1 else x-->0 when Y>0 y--->1 else y-->0 and x+y==1
我的方法是 结论1: x>=X 结论2: y>=Y 结论3: x+y==1
但上述方法似乎不起作用,x和y的值是随机的
前两个条件需要大的M约束。你可以试试类似的东西
M_x * x >= X、M_y * y >= Y和x + y == 1其中M_x和M_y是常数,您将其设置为不会不必要地绑定x和y的值。这些约束不会将x和y的值限制为1,当x>;当y>;0.
M_x * x >= X
M_y * y >= Y
x + y == 1
前两个条件需要大的M约束。你可以试试类似的东西
M_x * x >= X
、M_y * y >= Y
和x + y == 1
其中M_x和M_y是常数,您将其设置为不会不必要地绑定x和y的值。这些约束不会将x和y的值限制为1,当x>;当y>;0.相关问题 更多 >
编程相关推荐