Combinatorial Benders' Cuts for Mixed-Integer Linear Programming
Summary (3 min read)
1 Introduction
- The authors first introduce the basic idea underlying combinatorial Benders' cutsmore elaborated versions will be discussed in the sequel.
- The authors work explicitly with the integer variables x only.
- As a consequence of the interaction among the generated CB cuts, other classes of combinatorial cuts are likely to be violated, hence allowing other cut separators to obtain a further improvement.
- Computational results are presented in Section 5, with the aim of verifying whether a simple implementation of the new method can already produce improved performance with respect to the application of a sophisticated MIP solver such as ILOG-Cplex 8.1 (at least, on some problem classes which fit particularly well in their scheme).
2 Combinatorial Benders' cuts
- Otherwise, let x * be an optimal solution (the authors exclude the unbounded case here, under the mild assumption that, e.g., the general-integer variables are bounded).
- There are several important (and difficult) MIP's which fit naturally in their scheme.
- At each iteration the master only contains the distilled combinatorial information (notably, CB cuts) that exclude certain configurations of the binary variables-because they are infeasible or cannot lead to an improved solution.
- The slave verifies the feasibility of the proposed x * (with respect to the LP relaxation of the original MIP, amended by the upper bound constraint), possibly updates the incumbent, and then returns one or more CB cuts related to some forbidden minimal configurations of the binary variables.
4 Fast MIS search
- That fits particularly well within their solution approach.the authors.
- According to their computational experience, the described algorithm is very effective and outperforms (for their applications) an analogous MIS algorithm based on the ILOG-Cplex function IloCplex::getIIS.
5 Computational Results
- To evaluate its effectiveness, the authors implemented their method in C++ and embedded it within the ILOG-Cplex Concert Technology 1.2 framework, based on ILOG-Cplex 8.1 [24, 25] .
- This separation proved quite effective, and allowed for a reduction of up to 50% of the computing time of their method for some instances of the test-bed.
- Due to the heuristic nature of their separation procedures for CB and {0, 1 2 }-cuts, and since the number of generated cuts tends to increase steeply, all cuts are stored in a constraint pool, which is purged from time to time.
- A possible issue is however the impossibility of removing a (globally valid) cut from the current LP.
5.1 The test-bed
- Realistically, one cannot expect their approach works well in all applications.
- Their method proved to have some merits in handling difficult MIP problems where CB cuts play a role in describing in a strong polyhedral way the underlying combinatorial structure.
- The authors test-bed contains 18 map labelling instances, of the so-called 4-slider (4S) and 4-position (4P) type, kindly provided by G.W. Klau.
- The authors have a population whose members can be divided into two distinct classes-for example, people affected or not by a certain disease.
- This problem can be modelled as a MIP problem with big-M coefficients: the unknowns are the coefficients of the linear function, and for every member there is a binary variable used to deactivate the inequality in case of misclassification.
5.2 Results
- The authors experiments have been performed on a PC AMD Athlon 2100+ with 1 GByte RAM, and GNU/Linux (kernel 2.4) Operating System.
- In addition, the authors set the IloCplex::NodeFileInd parameter to 3: this forces Cplex to store the active-node data into the hard disk when physical memory is exhausted (due to the efficiency of this mechanism, they had no memory problems even when handling branching trees much larger than 1GB).
- For the first subset, Table 1 reports the instance names, the optimal objective values (opt), the Cplex and CBC computing times, their ratios and the number of branching nodes enumerated by Cplex and by CBC for the exact solution of the instances.
- Moreover, the authors found that after 28 additional hours of computation the gap would have been only halved.
6 Conclusions
- The authors have proposed and analyzed computationally an automatic MIP reformulation method, aimed at removing the model dependency on the big-M.
- This is an important special case because conditional constraints of this form are a very useful modeling device.
- The authors method proved particularly suited for the MIP's whose objective function only depends on the integer variables, and the continuous variables are linked to the integer ones through linear constraints involving a single binary variable each-typically multiplied by a large coefficient.
- Some preliminary results in this directions are encouraging.
- Finally, one could ask whether it is indeed convenient to use their approach as a decomposition method, rather than simply as a cut generation strategy.
Did you find this useful? Give us your feedback
Citations
506 citations
Cites background from "Combinatorial Benders' Cuts for Mix..."
...Cordeau et al. (2006) studied a stochastic logistic network design problem....
[...]
...8 Codato and Fischetti (2006) Map labeling 24 Osman and Baki (2014) Transfer line balancing...
[...]
...Codato and Fischetti (2006) considered a binary problem where the BD method generates feasibility cuts exclusively....
[...]
417 citations
Cites methods from "Combinatorial Benders' Cuts for Mix..."
...develop a branch-and-cut algorithm based on Benders decomposition ([13]) and the combinatorial Benders cuts introduced by Codato/Fischetti [35]....
[...]
...In addition, the zkrj variables ensure load s. since they represent the implicit assumption that only complete requests change vehicle at TLs. Cortés et al. develop a branch-and-cut algorithm based on Benders decomposition ([13]) and the combinatorial Benders cuts introduced by Codato/Fischetti [35]....
[...]
173 citations
160 citations
Cites result from "Combinatorial Benders' Cuts for Mix..."
...The goal of our approach is similar in spirit to the goal of combinatorial Benders cuts introduced by Codato and Fischetti [41]....
[...]
158 citations
References
12,940 citations
"Combinatorial Benders' Cuts for Mix..." refers methods in this paper
...The raw data from which we have generated our instances has been taken from a public archive maintained at UCI [33], and converted to the final MIP model with a slightly modified version of a program kindly provided us by P. A. Rubin....
[...]
...) The raw data from which we have generated our instances has been taken from a public archive maintained at UCI [33], and converted to the final MIP model with a slightly modified version of a program kindly provided us by P....
[...]
1,750 citations
"Combinatorial Benders' Cuts for Mix..." refers methods in this paper
...Of course, we can get rid of the y variables by using Benders’ decomposition [5], but the resulting cuts are weak and still depend on the big-M values....
[...]
[...]
525 citations
"Combinatorial Benders' Cuts for Mix..." refers methods in this paper
...In Chvátal method, in particular, the nogoods have a proper pathlike structure; other variations on this theme include dynamic backtracking, dependency-directed backtracking, partial-order dynamic backtracking, and generalized partial-order dynamic backtracking [7, 14, 15, 16, 19]....
[...]
500 citations
"Combinatorial Benders' Cuts for Mix..." refers methods in this paper
...Meanwhile, Hooker and Ottosson [22] used logic Benders’ cuts to solve SAT problems and 0-1 programming problems....
[...]
Related Papers (5)
Frequently Asked Questions (13)
Q2. What have the authors stated for future works in "Combinatorial benders’ cuts for mixed-integer linear programming" ?
Future direction of work should address the more general case where the MIP objective function depends on both the continuous and the integer variables, and analyze computationally the merits of the resulting technique.
Q3. What is the usual way implications are modelled within the MIP framework?
The usual way implications (2) are modelled within the MIP framework is to use the (in)famous big-M method, where large positive coefficients
Q4. What is the common strategy for defining subsets of the integer variables?
For MIP problems, the subsets are typically defined by a branching strategy, i.e., by fixing the value of certain subsets of the integer variables.
Q5. How can the authors get rid of the rigid tree paradigm?
Roughly speaking, resolution search can be viewed as an attempt to get rid of the rigid tree paradigm used within enumeration schemes.
Q6. How many map labelling instances are in the test-bed?
Their test-bed contains 18 map labelling instances, of the so-called 4-slider (4S) and 4-position (4P) type, kindly provided by G.W. Klau.
Q7. What is the main exception to the separation code?
An important exception (that the authors exploit in their code) arises for locally-valid cuts, which are automatically removed from the formulation the first time they are no longer guaranteed to be valid (because of a backtracking step); removed cuts are not saved.
Q8. What is the typical example of a map labelling problem?
(5) Another example is the map labelling problem [29], where the binary variables are associated to the relative position of two labels to be placed on a map, the continuous variables give their placement coordinates, and the conditional constraints impose non-overlapping conditions of the type“if label i is placed on the right of label j, then the placement coordinates of i and j must obey a certain linear inequality giving a suitable separation condition”.
Q9. What is the main idea of the classical Benders’ approach?
As a matter of fact, the classical Benders’ approach can be viewed as a tool to speed-up the solution of the LP relaxation, but not to improve its quality.
Q10. What is the MIS of SLAV E(x)?
The authors therefore look for a MIS of SLAV E(x∗), involving the rows of A indexed by C (say), and observe that at least one binary variable xj(i) has to be changed in order to break the infeasibility.
Q11. How many instances of this subset were solved by CBC?
According to the final row of the table, Cplex ran for almost 8.5 hours to solve all the instances of this subset, while CBC requires about 24 minutes, i.e., the latter code was 21 times faster in processing the whole subset.
Q12. What is the way to reformulate a generic MIP?
In particular, one can always reformulate a generic MIP with no generalinteger variables (i.e., involving only binary and continuous variables) as follows.
Q13. How does the method solve a master problem?
Rather than alternating between solving a master problem and subproblem, as in the classical Benders’ method, their approach solves a single master problem and generate Benders’ cuts on the fly.