Seeking Feasibility in Mixed-Integer Linear Programs
Mixed-integer linear programs (MIPs or MILPs) are much harder to solve than linear programs. The requirement that some variables take on integer or binary values means that simple linear programming cannot be used directly since it yields fractional values for the integer variables. The initial temptation is to relax the integrality restrictions, solve as an LP and simply round the solutions for the integer variables to the closest integer values. This frequently causes constraint violations or yields non-optimum solutions, and hence is ineffective in general (though there are a few simple special cases such as assignment problems for which LP is guaranteed to yield integral solutions).
In general, MIPs are solved by a solution space subdivision strategy, normally via a branch and bound or branch and cut algorithm. Branch and bound has a long history, dating to the 1960s (Land and Doig 1960) and has been extensively developed since then (e.g. Johnson et al. (2000)). The general steps of the method, summarized in Alg. 3.1, are fairly standard, but there are numerous variations in the details. Branch and bound generates a tree structure. At each node in the tree an LP-relaxation of the MIP which ignores the integrality restrictions is solved. If the LP relaxation solution does not provide integer values for all of the integer variables, the solution space is subdivided and the process continues.
KeywordsChild Node Candidate Variable Integer Variable Active Constraint Continuous Relaxation
Unable to display preview. Download preview PDF.