I am trying to formulate an LP problem. In the problem I have a $\min(X,Y)$ that I would like to formulate linearly as a set of constraints. For example, replacing $\min(X,Y)$ with some variable $Z$, and having a set of constraints on Z.
I believe that there are a minimum of two constraints:
subto: $Z \le X$
subto: $Z \le Y$
That will make it take a value that is less than or equal to $\min(X,Y)$. But, I want it to take the minimum value of $X$ or $Y$. I am missing one constraint, that seems to have the following logic: "$Z \ge X$ or $Z \ge Y$" ... so that it isn't just less than the minimum, it IS the minimum. I know I'm missing something basic.
In addition to fabee's response, I also have found this representation to work well which uses either-or constraint representation. Note that M must be large, see 15.1.2.1 in this document.
param a := 0.8;
param b := 0.4;
param M := 100;
var z;
var y binary;
minimize goal: z;
subto min_za:
z <= a;
subto min_zb:
z <= b;
subto min_c1:
-z <= -a + M*y;
subto min_c2:
-z <= -b + M*(1-y);