现在我有三个5乘3矩阵,X,Y,Z。它们中的所有元素都是二进制变量。我想添加以下约束:
我知道我应该在这里介绍一个辅助二进制变量。但我真的坚持如何将这些简单的条件等式写成线性约束。有什么建议,窍门和建议吗?
非常感谢提前!
答案 0 :(得分:3)
实际上你不需要额外的二进制变量。
x(i,j)=1 and x(i+1,j)=0 => z(i+1,j)=1
可以解释为:
z(i+1,j) >= x(i,j)*(1-x(i+1,j))
这可以写成线性不等式:
z(i+1,j) >= x(i,j) - x(i+1,j)
同样,
x(i,j)=0 and x(i+1,j)=1 => y(i+1,j)=1
可以表述为:
y(i+1,j) >= x(i+1,j) - x(i,j)