Gurobi中具有底层函数的线性约束

时间:2013-05-04 16:37:57

标签: mathematical-optimization

我正在构建一个MILP约束系统。以下是我需要构建的约束。

floor(a-b) <= 2c - 1 

这里,a和b是实值的。 c是整数变量。我需要floor函数才能为变量分配适当的值。如何在Gurobi中添加此约束?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

假设a以常数MaxA为界,并且类似地让b <= MaxB。 然后,使用不等式

(1):a&lt; b + c * MaxA

(2):b&lt; = a +(1-c)* MaxB。

设a&gt; = b,因此(1)意味着c = 1,并且(c)在c上独立地满足。除此以外, 假设a小于b,现在(2)暗示c = 0并且(1)变得微不足道。 (你应该跳过(2),如果你只是想确保a> = b意味着c = 1,否则不关心c。)