Motivation
Taxi fleets, ride-hailing services and dial-a-ride systems assign incoming customer requests to vehicles under time constraints. Bertsimas, Jaillet and Martin (Online Vehicle Routing: The Edge of Optimization in Large-Scale Applications, Operations Research 67(1), 2019) model the online taxi routing problem, a special case of the online dial-a-ride problem with time windows in which a vehicle serves one customer at a time. They show that mixed-integer optimization over a sparsified graph can dispatch thousands of New York City taxis in real time. The offline problem, in which all requests are known in advance, is the building block of their online algorithms, and its structure determines which offline methods are fast.
The structural fact this mission formalizes is the paper's Theorem 1. When every customer has a fixed pick-up time, the mixed-integer formulation of the offline problem is integral: its linear relaxation has only binary extreme points. So the problem is a linear program in disguise, which the paper uses for its maxflow heuristic.
The source is the authors' accepted manuscript (March 2018, 46 pages); every page and display number below refers to that manuscript, not to the typeset article.
Setting
Let C be a finite set of customers and K a finite set of taxis. Customer c has a pick-up time window [tcmin,tcmax], and taxi k becomes available at time tkinit. For customers c′,c, the number Tc′,c is the travel time from serving c′ to picking up c, and Rc′,c is the profit earned when c is served right after c′. The numbers Tk,c and Rk,c are the travel time and profit when c is the first customer of taxi k.
The graph G has the customers and taxis as nodes. Between customers there is an arc c→c′ exactly when
tcmin+Tc,c′≤tc′max.(1)
Taxi nodes have outgoing arcs only. Throughout the paper G is assumed acyclic (§2.1, p. 7).
The mixed-integer formulation (5)–(14) (pp. 11–12) has binary variables xc′,c (customer c is picked up right after c′), yk,c (c is the first customer of taxi k) and pc (c is served), and continuous pick-up times tc. It maximizes ∑k,cRk,cyk,c+∑c′,cRc′,cxc′,c subject to the flow constraints
pc=k∑yk,c+c′∑xc′,c,c∑xc′,c≤pc′,c∑yk,c≤1,(6)–(8)
the binary constraints (9)–(11), and the time constraints
tcmintc−tc′tc≤tc≤tcmax,≥(tcmin−tc′max)+(Tc′,c−(tcmin−tc′max))xc′,c,≥tcmin+(tkinit+Tk,c−tcmin)yk,c.(12)(13)(14)
Constraints (13) and (14) are strengthened Big-M constraints: with xc′,c=1, (13) reads tc−tc′≥Tc′,c.
The LP relaxation replaces (9)–(11) by 0≤x,y,p≤1. A formulation is integral when every extreme point of its LP relaxation has x,y,p∈{0,1}.
Formalization targets
Goal: Theorem 1 (p. 13)
If tcmin=tcmax=tc∗ for every customer c (and G is acyclic, the standing assumption), then
every extreme point (x,y,p,t) of the LP relaxation of (5)–(14) satisfies xc′,c,yk,c,pc∈{0,1}.
Milestones (proof of Theorem 1 and the remark before it)
- Display (15), p. 13: with fixed windows, (12) gives t=t∗, and (13) becomes (Tc′,c−(tc∗−tc′∗))xc′,c≤0.
- p. 13: with fixed times the relaxation is exactly {t=t∗} times the relaxed flow system (6)–(11). In that system xc′,c is removed when Tc′,c>tc∗−tc′∗, and yk,c is removed when tkinit+Tk,c>tc∗.
- pp. 12–13: the relaxed flow system (6)–(11), on any subset of arcs, has 0/1 extreme points.
Three further statements from the same pages are included as plain theorems. The first is the paragraph after Theorem 1: a solution with fixed times tc∗∈[tcmin,tcmax] is feasible for the formulation with windows. The other two are the conditions (3) and (4) of §2.1, which exclude 2-cycles and all cycles of G.
Significance
Theorem 1 turns a mixed-integer program into a linear program when the time windows shrink to points. The fixed-time problem can then be solved by the simplex method or by a max-flow algorithm. By the paragraph after the theorem, any choice of times inside the windows then gives a feasible solution of the original problem. This is the maxflow heuristic, and the paper reports it to be near-optimal when windows are small. The theorem also locates the source of the integrality gap: the time constraints (12)–(14), not the flow structure.
The result is proved on the page, briefly. No machine-checked version exists. Formalizing it means making the page's "equivalent to a formulation in which variable xc′,c is removed" precise. The extreme points of the relaxation in (x,y,p,t)-space must correspond to those of a flow polytope in (x,y,p)-space. The integrality of that flow polytope must then be proved, which the page settles by appeal to max-flow.
Difficulty
The reduction to the flow system is elementary linear arithmetic. The substance is milestone 3. The system (6)–(8) is not literally in the standard form of a network-flow problem: it mixes an equation defining pc with inequalities, has unit upper bounds, and allows arbitrary arc sets, including cycles and loops (c,c). Neither the integrality theorem for standard-form network flows nor total unimodularity can be applied without first exhibiting a network and checking that the polytope corresponds to its flow polytope. Mathlib has the definition of total unimodularity but not the Hoffman–Kruskal theorem.
The page's phrase "the formulations are equivalent" also hides a step: the goal speaks of extreme points in (x,y,p,t)-space, while the flow system lives in (x,y,p)-space, and the two notions of extreme point have to be related explicitly.
Formalization scope
- Customers and taxis are arbitrary finite types; empty sets of customers or taxis are allowed, and the statements remain the paper's there.
- A point (x,y,p,t) is an element of the real vector space (C×C→R)×(K×C→R)×(C→R)×(C→R). Extreme points are Mathlib's
Set.extremePoints ℝ.
- All constraints are indexed by all pairs, the diagonal c′=c included, exactly as printed. The variables are not restricted to the arcs of G.
- No sign conditions are imposed on the data T, R, tinit.
- Fixed times are the hypothesis tcmin=tcmax for all c. The acyclicity of G is kept on the goal as the paper's standing assumption, although the conclusion does not need it; milestones and companions omit it, which makes them stronger.
- Milestone 3 is stated for an arbitrary arc subset, which covers both the system (6)–(11) as printed and the system with variables removed that the proof uses.
Two trivializing readings are ruled out. "Integral" is the extreme-point property of the relaxation, not the existence of an integral optimum for a given objective, and not the integrality of the mixed-integer feasible set, which holds by definition. Integrality is never demanded of the continuous times t.
A complete development needs an integrality theorem for flow polytopes with integer bounds, which Mathlib does not have. Such a result is reusable well beyond this mission. Contributions of general network-flow integrality lemmas are welcome.
Selected references
- D. Bertsimas, P. Jaillet, S. Martin, Online Vehicle Routing: The Edge of Optimization in Large-Scale Applications, Operations Research 67(1):143–162, 2019; authors' accepted manuscript, March 2018. https://doi.org/10.1287/opre.2018.1763
- A. J. Hoffman, J. B. Kruskal, Integral boundary points of convex polyhedra, in Linear Inequalities and Related Systems, Annals of Mathematics Studies 38, 1956. https://doi.org/10.1515/9781400881987-013
- J.-F. Cordeau, G. Laporte, The dial-a-ride problem: models and algorithms, Annals of Operations Research 153:29–46, 2007. https://doi.org/10.1007/s10479-007-0170-8