Branch-and-Cut Algorithms for Combinatorial Optimization Problems

Branch-and-cut methods are very successful techniques for solving a wide variety of integer programming problems, and they can provide a guarantee of optimality. We describe how a branch-and-cut method can be tailored to a specific integer programming problem, and how families of general cutting planes can be used to solve a wide variety of problems. Other important aspects of successful implementations are discussed in this chapter. The area of branch-and-cut algorithms is constantly evolving, and it promises to become even more important with the exploitation of faster computers and parallel computing.