IF,THEN,ELSE整数约束问题
IF, THEN, ELSE Integer Constraint Problem
一段时间以来,我一直坚持制定这个逻辑约束。我试图转化为整数约束的是:
如果 x1i + x2i + x3i 等于 3,
那么 yi 等于 1,否则 yi 等于 0。
我找到了这样的作品:
x1i + x2i + x3i >= 3*yi,但在 x1i + x2i + x3i 等于 3 的情况下,yi 可以取值 0 或 1。我只希望它严格为一个这种情况。
如有任何见解,我们将不胜感激。
根据上下文,我怀疑 x 变量是二进制的。所以这将是我的假设。您基本上是在询问如何线性化约束:
y = x1*x2*x3
这个等式可以改写为:
y >= x1+x2+x3-2
y <= x1
y <= x2
y <= x3
y,x1,x2,x3 ∈ {0,1}
一段时间以来,我一直坚持制定这个逻辑约束。我试图转化为整数约束的是:
如果 x1i + x2i + x3i 等于 3, 那么 yi 等于 1,否则 yi 等于 0。
我找到了这样的作品:
x1i + x2i + x3i >= 3*yi,但在 x1i + x2i + x3i 等于 3 的情况下,yi 可以取值 0 或 1。我只希望它严格为一个这种情况。
如有任何见解,我们将不胜感激。
根据上下文,我怀疑 x 变量是二进制的。所以这将是我的假设。您基本上是在询问如何线性化约束:
y = x1*x2*x3
这个等式可以改写为:
y >= x1+x2+x3-2
y <= x1
y <= x2
y <= x3
y,x1,x2,x3 ∈ {0,1}