A New Branch-and-Cut Algorithm for the Capacitated Vehicle Routing Problem: Safe Shrinking of Customer SetsResearch Paper
Motivation
The capacitated vehicle routing problem (CVRP) asks for minimum-cost routes, starting and ending at a depot, that serve every customer exactly once without any vehicle carrying more than its capacity. It is one of the central problems of operations research and logistics, and exact algorithms for it have been built on branch-and-cut for three decades: a linear programming relaxation is strengthened at every node of a search tree by adding valid inequalities that the current LP solution violates.
The most important of these inequalities are the capacity inequalities. Deciding whether an LP solution violates one of them is strongly NP-hard, so practical codes rely on heuristics, and most heuristics first shrink the support graph: groups of customers are contracted into single supervertices so that the search runs on a smaller graph. Shrinking is only useful if it is safe, meaning it cannot hide a violated inequality. Before the work of Lysgaard, Letchford and Eglese, the standard safe rule allowed shrinking a single edge whose LP value is at least one (Augerat et al. 1998; Ralphs et al. 2003). Lysgaard, Letchford & Eglese (2004), whose separation routines were released as the widely used CVRPSEP package, generalized the rule to customer sets of any size in their Proposition 1, the only numbered result of the paper.
Setting
Let be the complete undirected graph on . Vertex is the depot and are the customers. Vehicles have capacity and each customer has an integer demand with . An LP point is a vector ; and are the same variable, and LP solutions satisfy .
For a vertex set , is the set of edges with exactly one end-vertex in (edges to the depot included), and is its cut value. For a customer set :
- is its total demand;
- , the bin-packing number, is the minimum number of bins of capacity into which the items of sizes , , can be packed;
- is the rounded capacity bound.
The capacity inequalities and the rounded capacity inequalities (RCIs) are
The violation of such an inequality at is (resp. ); it is violated when this is positive.
Shrinking a customer set contracts it to one supervertex. The supervertices of the shrunk graph are then and the single customers outside , so a union of supervertices is a customer set with or . Shrinking is safe if for every customer set with whose inequality is violated, there is such a union with and at least the same violation.
Formalization targets
Goal: Proposition 1
For every and every customer set with
shrinking is safe for the capacity inequalities .
Milestones (proof of Proposition 1, p. 426)
- Monotonicity of the bin-packing number: .
- Submodularity of the cut function, in the paper's arrangement: for .
- The crossing-set inequality: if crosses (, , all nonempty), then .
Further statements on the same page
- The same shrinking condition is safe for the rounded capacity inequalities , which are the inequalities the algorithm separates.
- The paper's first separation heuristic checks the RCI for each connected component of the support graph on the customers, for each complement , and for the union of the components with no support edge to the depot. At an integer point satisfying the degree equations and the bounds , , this heuristic finds a violated RCI whenever one exists. This claim is stated in the paper without proof and is not needed for the goal.
Significance
Proposition 1 justifies contracting whole groups of customers before running separation heuristics, which shrinks the graph those heuristics work on while preserving every violated capacity inequality up to its violation. The rule is part of the separation routines of CVRPSEP and of later branch-and-cut and branch-cut-and-price codes for vehicle routing that reuse them.
The result is proved in the paper; to the best of the platform's records, none of it is formalized. The mission produces a reusable formal layer for the two-index CVRP formulation: cut values on the complete graph with a depot, the bin-packing number, the rounded capacity bound, and the notion of safe shrinking. Submodularity of the cut function (target 2) is a classical fact that the paper cites rather than proves; the platform already has a related statement for symmetric weight matrices on Boolean regions (EmergentGeometry.cutWeight_submodular), in a different representation. Target 5 records a claim of the paper that it asserts without proof.
Difficulty
When the violated set contains or misses it, itself is a union of supervertices and there is nothing to show. The difficulty is a set that crosses : no union of supervertices is obviously as violated as , because enlarging can raise its cut value — can be smaller or larger than depending on the edges leaving — and the hypotheses on say nothing about directly. Both hypotheses on and the sign condition matter here; for signed the statement fails. A violated strictly inside is not a crossing set in the paper's sense and has to be handled as well.
On the formal side, the bin-packing number is an optimum of a combinatorial problem; its properties must be derived from a definition by assignments to bins, and it is well defined only because every demand fits in one vehicle. Target 5 needs a structural understanding of integer points satisfying the degree equations, which the paper does not supply.
Formalization scope
Vertices are Fin (n+1), the depot is 0, and a customer set is a Finset (Fin (n+1)) not containing 0. The edge vector is a function x : Sym2 (Fin (n+1)) → ℝ on unordered pairs, and the cut value is ∑ i ∈ S, ∑ j ∈ Sᶜ, x s(i, j), which includes the edges to the depot. The capacity is real (the paper does not say it is an integer) and demands are natural numbers with for customers. The bin-packing number is the least number of bins over assignments of the customers of to bins of total demand at most ; under this minimum exists. Of the LP point only is assumed in Proposition 1 and targets 1–4, which is at least as strong as the paper's setting. The hypothesis " for all " ranges over nonempty proper subsets.
A formalization that lets in that hypothesis is vacuous, because ; one that drops the condition " or " from safe shrinking is trivial (take ); and one that defines as , as an arbitrary monotone function, or with a junk value , or that omits the depot edges from the cut, states a different result. None of these is the mission's statement.
Needed infrastructure: finite sums over cuts of Sym2-indexed vectors, a working API for the bin-packing number, and, for target 5, connected components of the support graph (SimpleGraph.Reachable). The cut-function lemmas and the bin-packing number are reusable for any later formalization of CVRP polyhedra (framed capacity, comb and multistar inequalities). Contributions of general lemmas about cut functions on complete graphs are welcome as separate theorems.
Selected references
- J. Lysgaard, A. N. Letchford, R. W. Eglese, A new branch-and-cut algorithm for the capacitated vehicle routing problem, Mathematical Programming Ser. A 100 (2004) 423–445. https://doi.org/10.1007/s10107-003-0481-8
- G. L. Nemhauser, L. A. Wolsey, Integer and Combinatorial Optimization, Wiley, 1988. https://doi.org/10.1002/9781118627372
- P. Augerat, J. M. Belenguer, E. Benavent, A. Corberán, D. Naddef, Separating capacity constraints in the CVRP using tabu search, European Journal of Operational Research 106 (1998) 546–557. https://doi.org/10.1016/S0377-2217(97)00290-7
- T. K. Ralphs, L. Kopman, W. R. Pulleyblank, L. E. Trotter, On the capacitated vehicle routing problem, Mathematical Programming 94 (2003) 343–359. https://doi.org/10.1007/s10107-002-0323-0