我有一个ILP问题,其中我表达了一些约束来实现A或B,其中A和B是逻辑AND的结果(假设A = A1和A2,B = B1和B2和B3)。在我的问题的这一点上,A和B之间的一个被认为等于1.A和B都是二进制变量。 我想表达的,与IF-THEN-ELSE,这种说法: if (A == true)
/* Choose one between C and D */
C_OR_D >=
我想知道为什么以下线性程序之间存在差异。他们写在LP file format。我认为x=1在这两种情况下都是最佳解决方案。 程序A: min: x;
x >= 1;
bin x;
输出: Value of objective function: 0
Actual values of the variables:
x 0
方案B(模拟与整数约束和两个附加约束二进制约束