ILOG CPLEX:x2 > x1(整数约束)
ILOG CPLEX: x2 > x1 (integer constraint)
我正在尝试构建一个整数程序,当 x3 = 1 时,它的解为 x2 > x1,但是 cplex 似乎对约束 c1 (x2 - x1 + 99 x3 > -99) 做了一些奇怪的事情,也许这是一个舍入错误。我可以使用不同的语法来表达 c1 (x2 - x1 + 99 x3 > -99) 以获得所需的结果吗?
谢谢
问题文件
Maximize
obj: x1 + x2
Subject To
c1: x2 - x1 + 99 x3 > -99
c3: x3 = 1
Bounds
1 <= x1 <= 2
1 <= x2 <= 2
Binary
x3
General
x1
x2
复杂的解决方案
MIP - Integer optimal solution: Objective = 4.0000000000e+00
Solution time = 0.00 sec. Iterations = 0 Nodes = 0
Deterministic time = 0.00 ticks (1.11 ticks/sec)
CPLEX> Incumbent solution
Variable Name Solution Value
x1 2.000000
x2 2.000000
CPLEX 中不能有 "strictly greater than" 约束。因此,CPLEX 将您提供的内容解释为 "greater than or equal to"。尝试
x2 - x1 + 99 x3 >= -98.99999999
P.S:CPLEX 的默认精度为 8 位。
我正在尝试构建一个整数程序,当 x3 = 1 时,它的解为 x2 > x1,但是 cplex 似乎对约束 c1 (x2 - x1 + 99 x3 > -99) 做了一些奇怪的事情,也许这是一个舍入错误。我可以使用不同的语法来表达 c1 (x2 - x1 + 99 x3 > -99) 以获得所需的结果吗? 谢谢
问题文件
Maximize
obj: x1 + x2
Subject To
c1: x2 - x1 + 99 x3 > -99
c3: x3 = 1
Bounds
1 <= x1 <= 2
1 <= x2 <= 2
Binary
x3
General
x1
x2
复杂的解决方案
MIP - Integer optimal solution: Objective = 4.0000000000e+00
Solution time = 0.00 sec. Iterations = 0 Nodes = 0
Deterministic time = 0.00 ticks (1.11 ticks/sec)
CPLEX> Incumbent solution
Variable Name Solution Value
x1 2.000000
x2 2.000000
CPLEX 中不能有 "strictly greater than" 约束。因此,CPLEX 将您提供的内容解释为 "greater than or equal to"。尝试
x2 - x1 + 99 x3 >= -98.99999999
P.S:CPLEX 的默认精度为 8 位。