如何建模复杂的if-then整数编程语句

问题描述 投票:-2回答:1

我试图模拟一个IF-THEN的MIP条件。该MIP看起来像

最大化SUM_i H(我) - c

S.T.,

  SUM_j x(i, j) <= D(i) and 

  SUM_i x(i, j) <= S(j)

其中H(I)= 1,如果SUM_j X(I,J)= d(i)中,否则为0

和C = SUM_i,J(如果x(I,J)> 1,则1,否则为0)

我知道如何简单的if-then条件下在MIP模型。但是不能够模拟这一个。

modeling linear-programming
1个回答
0
投票

我们可以通过引入松弛变量v的需求方程,然后说这个处理

h(i)=1 => v(i)=0

这个含义是很容易为不等式实现:

v(i) <= (1-h(i))*D(i)

完整的模型如下所示:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.