In integer linear programming, how to simplify a constraint with $\min$?

328 Views Asked by At

I have a linear integer program that has constraints like these:

$$\sum_{i=1}^kw_{ij}x_{ij}\leq C+\min\limits_{i}\left(x_{ij}a_{ij}\right), \forall\,j\in\{1,\dots,k\},$$ where $k$, $C$, $w_{ij}$ and $a_{ij}$ are all parts of the input. Note that $k$, $C$ and $w_{ij}$ are positive integers but $a_{ij}$ are integers (it could positive or negative).

Here the variables are $x_{ij}$ which are in $\{0, 1\}$.

Is there a way to simplify these constraints?

1

There are 1 best solutions below

1
On BEST ANSWER

You can expand the constraint by introducing a constraint of the form

$$\sum_{i=1}^kw_{ij}x_{ij}\leq C+\left(x_{ij}a_{ij}\right), \forall i, j,$$

Since if you're less than the minimum, you're less than each term in the minimum.