Selected Topics in Column Generation I: Discretization — Every Integer Point of a Rational Polyhedron Is a Generating Integer Point Plus an Integer Combination of Integer RaysResearch Paper
Motivation
Dantzig–Wolfe decomposition and column generation solve large integer programs by replacing a set of "easy" constraints with a description of its feasible points, and then pricing out the points one at a time. For linear programs this rests on the Minkowski–Weyl representation: every point of a polyhedron is a convex combination of its extreme points plus a nonnegative combination of its extreme rays. For integer programs that representation is not enough. Imposing integrality on the convex multipliers of the extreme points of does not give back the integer program, because an optimal integer point may lie in the interior of .
Lübbecke and Desrosiers, in their survey Selected Topics in Column Generation (Operations Research 53(6), 2005), present discretization (Johnson 1989, Vanderbeck 2000) as the true integer analogue of the decomposition principle. Its basis is their Theorem 1: the integer points of a rational polyhedron are generated by finitely many integer points and finitely many integer rays with integer multipliers. The paper states this result and refers its proof to Nemhauser and Wolsey, Integer and Combinatorial Optimization (1988). It underlies the integer master problem (25) of branch-and-price.
Setting
Let be an matrix and an -vector with rational entries. The polyhedron is
and its set of integer points is , the points of whose coordinates are all integers. Because , .
The recession cone of is . An integer ray of is a nonzero vector of in this cone. Extreme rays are not required.
In Lean these are polyhedronP D d, integerPoints D d, recessionConeP D and IsIntegerRay D w in the namespace Lubbecke2005.Discretization, with integer vectors cast to real vectors by castVec.
Formalization targets
Goal: Theorem 1 (pp. 1011–1012)
If , there exist a finite set of integer points and a finite set of integer rays of such that
Since the multipliers are nonnegative integers summing to one over , (24) says that is the union, over , of the translates of the monoid generated by the rays. No bound on or is part of the goal.
Milestone: Remark in §3.3 (p. 1012)
If , every point of is a vertex of . In this case convexification and discretization coincide.
Significance
The result. Theorem 1 converts an integer program into the integer master program (25) over the multipliers , with one column per generating point and per generating ray. When is bounded the rays disappear, exactly one equals one, and (25) is a linear integer program even for a nonlinear cost . The representation is what makes branching on master variables, and the passage between compact and extensive formulations, well defined in branch-and-price.
Formalizing it. The result is classical (Nemhauser–Wolsey 1988, going back to Giles and Pulleyblank and to Meyer's theorem that the integer hull of a rational polyhedron is a polyhedron). On Prove2Me, the real representation (8) is formalized as LinearOptimization.polyhedron_resolution (Bertsimas–Tsitsiklis Thm 4.15) and the integer hull theorem as LinearOptimization.integer_hull_is_polyhedron (Thm 11.3); both are included as reference items. The convexification counterpart of §3.2, that the Lagrangian dual equals the LP over , is LinearOptimization.lagrangean_dual_eq_lp_over_hull. No machine-checked statement of the integer representation (24), with integer multipliers and integer rays, was found on the platform. The mission produces that statement and, once solved, its proof.
Difficulty
The obvious attempt applies the real representation (8) and rounds. It fails twice. First, the extreme points of need not be integral, and an integer point written as a real combination of vertices and rays has no reason to have integer multipliers. Second, the extreme rays of generate the recession cone over , but the integer points of that cone are not in general nonnegative integer combinations of the (scaled) extreme rays; a generating set of the lattice points of a cone must usually contain non-extreme vectors. The finiteness of is also not automatic: itself is typically infinite, and taking trivializes the statement.
Rationality of the data is essential. For , every integer ray has slope below , so finitely many base points and rays generate only points with for some , while contains for every .
Formalization scope
- Vectors are
Fin n → ℝ; integer vectors areFin n → ℤcast coordinatewise. Both sides of (24) are sets of real vectors. - and are
ℚ-valued and cast toℝ. This is an addition: the paper names no field, and the theorem is false for irrational data (see Difficulty). The cited source, Nemhauser–Wolsey, works with rational data. - The hypothesis is kept as on the page. may still be empty (e.g. ); then and both sides of (24) are empty. The statement allows this.
- and are
Fin kandFin lfor existentially chosen ; the finiteness is the content of the theorem. The multiplier vector is written as a pair ofℕ-valued vectors. - "Integer rays of " is read as nonzero integer vectors in the recession cone ; extremality is not required, as the page does not require it (contrast (8), which says "extreme rays").
- The constraint on the right side of (24) is kept although it is implied.
- In the Remark, "vertices of " is read as extreme points of the convex hull; is finite there, so the two notions agree.
A formalization with real multipliers would be the resolution theorem (8), already on the platform, and one with or infinite would be trivial; both are excluded by the statement.
Useful infrastructure: lattice points of rational polyhedral cones (Hilbert bases, Gordan's lemma), the integer hull theorem, and the real resolution theorem. A proof of Gordan's lemma for rational cones in this vocabulary would be reusable well beyond this mission. Contributions toward any of these are welcome.
Selected references
- M. E. Lübbecke and J. Desrosiers, Selected Topics in Column Generation, Operations Research 53(6):1007–1023, 2005. https://doi.org/10.1287/opre.1050.0234
- G. L. Nemhauser and L. A. Wolsey, Integer and Combinatorial Optimization, Wiley, 1988. https://doi.org/10.1002/9781118627372
- R. R. Meyer, On the existence of optimal solutions to integer and mixed-integer programming problems, Mathematical Programming 7:223–235, 1974. https://doi.org/10.1007/BF01585518
- F. Vanderbeck, On Dantzig–Wolfe decomposition in integer programming and ways to perform branching in a branch-and-price algorithm, Operations Research 48(1):111–128, 2000. https://doi.org/10.1287/opre.48.1.111.12453
- A. Schrijver, Theory of Linear and Integer Programming, Wiley, 1986.