How to write a Disjunctive Problem into GAMS
The procedure to write a problem in GAMS is the following:
  1. Write in a GAMS input file (extension gms) the sets, scalars, parameters, variables, equations and constraints, and any other component necessary for the problem as if you were writing a mathematical problem. You must be familiar with the GAMS notation to do so. You must even declare and define in this section the equations and constraints for the disjunction terms. You must declare and define binary variables to handle disjunction terms, these variables will work as Boolean variables. Make sure to write at least a dummy equation that uses them in order to avoid the GAMS compiler take out from the model if they are not used in other equation/constraint of the model.
  2. Write in the same GAMS input file the sentences:
    $ONECHO > ""
    The dollar sign must be in the 1st column. Between these two sentences you must include the disjunction declaration and definitions. The complete section including the sentences above are treated as a comment by the GAMS compiler, so it is ignored by it. The LogMIP compiler compiles this section.

  3. Write between the sentences of section b) the disjunction declaration and definitions according to the rules of the proposed language.

User's Manual