In principle, all you need in building MIP models are continuous variables and binary variables. But it is convenient to extend the set of modeling entities to embrace objects that frequently occur in practice.
Integer decision variables
- values 0, 1, 2, ... up to small upper bound
- model discrete quantities
- try to use partial integer variables instead of integer variables with a very large upper bound
Semi-continuous variable
- may be zero, or any value between the intermediate bound and the upper bound
- Semi-continuous integer variables also available: may be zero, or any integer value between the intermediate bound and the upper bound
Special ordered sets
- set of decision variables
- each variable has a different ordering value, which orders the set
- Special ordered sets of type 1 (SOS1): at most one variable may be non-zero
- Special ordered sets of type 2 (SOS2): at most two variables may be non-zero; the non-zero variables must be adjacent in ordering