Use of a DUMMY equation
We recommend the user to write a dummy equation into the GAMS section for the binary variables that handle disjunction terms (disjunction conditions) in order to avoid that GAMS compiler eliminate those variables from the model (and from the matrix). It occurswhen some or all variables are not used in other equations/constraints of the model. Suppose the following variables handling disjunction’s terms defined in GAMS section:
Binary variables Y(J);
If some or all variables of Y are not included in any equation or constraint defined in GAMS section they will be eliminated from the model, and LogMIP compiler will show an error even when they handle disjunction terms. To avoid that, you must write the following constraint:
DUMMY.. SUM(J, Y(J)) =G= 0;
which should be always satisfied.
Another example could be:
Binary variables y, w, z;
DUMMY .. y + w + z =G=0;
A combination of the previous examples could be:
DUMMY.. y + w + z + SUM(j, Y(j)) =G= 0;