In a recent work, Muter et al. (2013a) identified and characterized a general class of linear programming (LP) problems - known as problems with column-dependent-rows (CDR-problems). These LPs feature two sets of constraints with mutually exclusive groups of variables in addition to a set of structural linking constraints, in which variables from both groups appear together. In a typical CDR-problem, the number of linking constraints grows very quickly with the number of variables, which motivates generating both columns and their associated linking constraints simultaneously on-the-fly. In this paper, we expose the decomposable structure of CDR-problems via Benders decomposition. However, this approach brings on its own theoretical challenges. One group of variables is generated in the Benders master problem, while the generation of the linking constraints is relegated to the Benders subproblem along with the second group of variables. A fallout of this separation is that only a partial description of the dual of the Benders subproblem is available over the course of the algorithm. We demonstrate how the pricing subproblem for the column generation applied to the Benders master problem does also update the dual polyhedron and the existing Benders cuts in the master problem to ensure convergence. Ultimately, a novel integration of Benders cut generation and the simultaneous generation of columns and constraints yields a brand-new algorithm for solving large-scale CDR-problems. We illustrate the application of the proposed method on a time-constrained routing problem. Our numerical experiments confirm the outstanding performance of the new decomposition method.
Muter, I., Birbil, S. I., and Bulbul, K. (2018). Benders Decomposition and Column-and-Row Generation for Solving Large-Scale Linear Programs with Column-Dependent-Rows. European Journal of Operational Research, 264(1):29-45. http://dx.doi.org/10.1016/j.ejor.2017.06.044.
View Benders Decomposition and Column-and-Row Generation for Solving Large-Scale Linear Programs with Column-Dependent-Rows