Branching rules revisited
Introduction
In this paper we are dealing with mixed integer programs (MIPs), which are optimization problems of the following form: with , , , I⊆N={1,…,n}.
Among the most successful methods are currently linear programming based branch-and-bound (B&B) algorithms where the underlying linear programs (LPs) are possibly strengthened by cutting planes. Most commercial integer programming solvers, see [6], are based on this method. As we will see below, B&B algorithms leave two choices: how to split a problem (branching) and which (sub)problem to select next. In this paper we focus on the branching step and introduce a new generalization that contains many of the known branching rules as special cases. We show that specific choices of parameters for this new class of branching rules perform in most cases better than the current rules when tested on real-world instances.
In Section 2 we review current branching strategies from the literature and present our new generalization. In Section 3 the results of extensive numerical tests on specific parameter choices are presented.
We use the following notation. XMIP denotes the set of feasible solutions of (1), and we set c★=∞ if XMIP=∅. The linear programming relaxation of (1) is obtained by removing the integrality constraints where . We also denote if PLP=∅. Obviously, , since PLP⊇XMIP. A typical LP based B&B algorithm for solving (1) looks as follows:
Algorithm 1 LP-based branch-and-bound
Input: A MIP in the form (1).
Output: An optimal solution x★∈XMIP and its value c★=cTx★ or the conclusion that XMIP=∅, denoted by c★≔∞.
- 1.
Initialize the problem set S≔{PLP} with the LP relaxation of the MIP. Set c★≔∞.
- 2.
If S=∅, exit by returning the value c★
(with an optimal solution x★).
- 3.
Choose a problem Q∈S and delete it from S.
- 4.
Solve the linear program with optimal solution , where Q might have been strengthened by cutting planes.
- 5.
If , goto 2.
- 6.
If , set and , goto 2.
- 7.
Branching: Split Q into subproblems, add them to S and goto 3.
If it is clear from the context we omit Q from all parameters and write c̄, x̄, etc. instead of , , etc.
Section snippets
Branching rules
Since branching is in the core of any B&B algorithm, finding good strategies was important to practical MIP solving right from the beginning [3], [13]. We refrain from giving details of all existing strategies, but concentrate on the most popular rules used in todays MIP solvers. For a comprehensive study of B&B strategies we refer to [8], [10] and the references therein.
The only way to split a problem Q within an LP based B&B algorithm is to branch on linear inequalities in order to keep the
Computational results
In this section we compare computational results for different branching rules and parameter settings on several MIP instances. All calculations were performed on a Alpha 21264 workstation with Cache and RAM.
Conclusion
It was shown that a more intensive dynamic use of strong branching leads to significant improvements in both the number of B&B nodes and the time needed to solve the considered problem instances.
It also became evident, that there is still a gap to the number of nodes needed using full strong branching (Fig. 2). The question is whether it is possible to bridge this gap without increasing the time spent per node too much.
References (15)
- et al.
Computer codes for problems of integer programming
Ann. Discrete Math
(1979) - T. Achterberg, T. Koch, A. Martin, The mixed integer programming library: MIPLIB 2003, 2003....
- D. Applegate, R.E. Bixby, V. Chvátal, W. Cook, Finding cuts in the TSP, Technical Report 95-05, DIMACS, March...
- et al.
Experiments in mixed-integer programming
Math. Programming
(1971) - et al.
Decomposing matrices into blocks
SIAM J. Optim
(1998) - J.M. Clochard, D. Naddef, Using path inequalities in a branch-and-cut code for the symmetric traveling salesman...
2003 Software surveylinear programming
OR/MS Today
(2003)
Cited by (367)
-
A branch-and-cut algorithm for scheduling train platoons in urban rail networks
2024, Transportation Research Part B: Methodological -
Improving energy aware nanosatellite task scheduling by a branch-cut-and-price algorithm
2023, Computers and Operations Research -
Pickup capacitated vehicle routing problem with three-dimensional loading constraints: Model and algorithms
2023, Transportation Research Part E: Logistics and Transportation Review -
BnB-DAQP: A Mixed-Integer QP Solver for Embedded Applications
2023, IFAC-PapersOnLine -
A study of lattice reformulations for integer programming
2023, Operations Research Letters