recent advances in exact algorithms for the capacitated vehicle routing...
TRANSCRIPT
Recent Advances in Exact Algorithms for theCapacitated Vehicle Routing Problem
Eduardo Uchoa
Universidade Federal Fluminense
Niteroi-RJ, Brazil
June, 2014
COSI’2014 - Bejaia Recent advances for the CVRP
Vehicle Routing Problem (VRP)
One of the most widely studied families of problems inCombinatorial Optimization:
Direct applications in the real world systems that distributegoods and services, vital to the modern economies.
COSI’2014 - Bejaia Recent advances for the CVRP
Vehicle Routing Problem (VRP)
Reflecting the variety of aspects present in those systems, the VRPliterature is spread into dozens of variants, that consider:
Time windows
Multiple depots,
Mixed vehicle fleet,
Split delivery, pickup and delivery,
Complex loading constraints, etc.
“Rich” variants try to consider as many of those aspects as possible
COSI’2014 - Bejaia Recent advances for the CVRP
The Capacitated Vehicle Routing Problem (CVRP)
The “poorest” VRP variant:
Instance: Complete graph G = (V ,E ) with V = 0, . . . , n;vertex 0 is the depot, N = 1, . . . , n is the set of customers. Eachedge e ∈ E has a cost ce . Each customer i ∈ N has a demand di .There is a fleet of K identical vehicles with capacity Q.
Solution: A set of K routes starting and ending at the depot,attending all customers, and respecting the capacities, withminimal total cost.
The most classical VRP variant, proposed by Dantzig andRamser in 1959.
COSI’2014 - Bejaia Recent advances for the CVRP
CVRP Instance: n = 62,K = 8,Q = 100, indicateddemands, euclidean distance
COSI’2014 - Bejaia Recent advances for the CVRP
CVRP Solution: n = 62,K = 8,Q = 100, indicateddemands, euclidean distance
COSI’2014 - Bejaia Recent advances for the CVRP
Why CVRP is a particularly important variant?
General strategy in scientific research:
1 Study the simplest (but still representative) case of aphenomenon
2 Try to generalize the discoveries for more complex cases
Several good ideas were first proposed for the CVRP and thensuccessfully generalized for many other variants.
Example: Clarke and Wright heuristic (1964)
Moreover, there is a significant number of real world systems thatcan be satisfactorily modeled as a CVRP
COSI’2014 - Bejaia Recent advances for the CVRP
Digression: What to do with NP-hard CombinatorialProblems?
Unless P = NP, all exact algorithms for NP-hard problems willhave an exponential complexity.
1 - Use heuristics
There are sophisticated heuristics/metaheuristics for manycombinatorial problems, able to find solutions with very goodquality (say, less than 1% from optimal) in short times.
On the other hand:
Optimal is better than near-optimalActually, you do not know how far you are from optimal.
COSI’2014 - Bejaia Recent advances for the CVRP
Digression: What to do with NP-hard CombinatorialProblems?
2 - Use approximation algorithms
Those are heuristics that provide a quality guarantee.
However:
Several important problems can not have constant factorapproximation algorithms unless P=NP.Approximation algorithms rarely provide really goodguarantees, less than 10% is very rare (unless in PTAS,FPTAS, but those more theoretical constructs are seldomimplementable).
COSI’2014 - Bejaia Recent advances for the CVRP
Digression: What to do with NP-hard CombinatorialProblems?
3 - Use exact algorithms algorithms with exponential complexity!
Exponential algorithms can be effective up to a certaininstance size
In several problems, this size can be large enough for practicalapplications
COSI’2014 - Bejaia Recent advances for the CVRP
Some exponential algorithms are better than others
COSI’2014 - Bejaia Recent advances for the CVRP
Some exponential algorithms are better than others
From Alg1 to Alg3, the size of the instances that can tackledin “reasonable time” increased from 50 to 200
An important observation is that the time to solve instanceswith n = 50 decreased from more than 1 day to 10s =⇒Probably, there is no more reason for using heuristics on thoseinstances.
COSI’2014 - Bejaia Recent advances for the CVRP
Some exponential algorithms are better than others
This chart is a simplification. Actually, instances of the same sizecan take more or less time, depending on their characteristics.
COSI’2014 - Bejaia Recent advances for the CVRP
The Traveling Salesman Problem (TSP)
The TSP is a good example.
From 1978 to 2010, the size of the “typical” TSP instancesthat can be solved in “reasonable time” increased from around120 to more than 10,000 (largest ever solved: 85,000 - 23years of cpu).
Instances with 1,000 points can now be solved in less than 1minute.
Instances with less than 300 points take a fraction of a second.
For most practical applications, TSP is now a well-solved problem.
For most practical applications, CVRP is not a well-solvedproblem. But progress is being made.
COSI’2014 - Bejaia Recent advances for the CVRP
Combinatorial Optimization and Integer Programming
The TSP is also a good example of an approach for obtaining toobtain those “effective” exact algorithms for NP-hard problems:
Formulate the problems as Integer Programs (IPs).
Look for techniques for solving those specially structured IPs.
This approached was pioneered by Dantzig, Fulkerson and Johnson[1954]. All the best TSP algorithms use now the classicalbranch-and-cut technique.
It turned out that the branch-and-cut technique was not enoughfor CVRP. Recent progress is being made by combining it withother IP techniques.
COSI’2014 - Bejaia Recent advances for the CVRP
Edge formulation (Laporte and Nobert [1983])
Variables xe indicate how many times an edge e is traversed.
min∑e∈E
cexe (1)
S.t.∑e∈δ(i)
xe = 2 ∀ i ∈ N, (2)
∑e∈δ(0)
xe = 2K , (3)
∑e∈δ(S)
xe ≥ 2d∑i∈S
di/Qe ∀ S ⊆ N, S 6= ∅, (4)
xe ∈ 0, 1 ∀ e ∈ E \ δ(0), (5)
xe ∈ 0, 1, 2 ∀ e ∈ δ(0). (6)
Constraints (4) are the Rounded Capacity Cuts
COSI’2014 - Bejaia Recent advances for the CVRP
CVRP and Cut Generation
A lot of investigation (inspired by the TSP) was done in order toimprove the edge formulation. Known families of cuts:
Framed Capacities
Strengthened Combs
Multistars
Extended Hypotours
Branch-and-cut became the dominant approach for the CVRP inthe 1990s and early 2000s:
Araque, Kudva, Morin, and Pekny [1994]
Augerat, Belenguer, Benavent, Corberan, Naddef, and Rinaldi[1995]
Blasum and Hochstattler [2000]
Ralphs, Kopman, Pulleyblank, and Trotter Jr. [2003]
Achuthan, Caccetta, and Hill [2003]
Lysgaard, Letchford, and Eglese [2004]
COSI’2014 - Bejaia Recent advances for the CVRP
Benchmark instances: A Series (Augerat [1995])
22 instances with n from 37 to 80, Q = 100, demands fromU[1, 30], 10% of them are multiplied by 3. Random depot andcustomer positioning in the grid [1,100]x[1,100], euclideandistances
Figure: Instance A-n80-k10
COSI’2014 - Bejaia Recent advances for the CVRP
Benchmark instances: B Series (Augerat [1995])
20 instances with n from 38 to 78, Q = 100, demands fromU[1, 30], 10% of them are multiplied by 3. Random depot andclustered customers, euclidean distances
Figure: Instance B-n78-k10
COSI’2014 - Bejaia Recent advances for the CVRP
Benchmark instances: P Series (Augerat [1995])
Adapted from previous instances in the literature, includingreal-world problems. 24 instances with n from 16 to 101.
Figure: Instance P-n50-k8
COSI’2014 - Bejaia Recent advances for the CVRP
Benchmark instances: E Series (Christofides and Eilon[1969])
The most classical benchmark. 9 instances with n from 51 to 101.
Figure: Instance E-n101-k14
COSI’2014 - Bejaia Recent advances for the CVRP
Benchmark instances: F series (Fisher [1994])
Only 3 instances, n from 45 to 135. Large Q, small demands =⇒long routes.
Figure: Instance F-n135-k7
COSI’2014 - Bejaia Recent advances for the CVRP
Benchmark instances: M Series (Christofides, Mingozziand Toth [1979])
Only 5 larger instances: M-n101-k10, M-n121-k7, M-n151-k12,M-n200-k16 and M-n200-k17.
Figure: Instance M-n151-k12
COSI’2014 - Bejaia Recent advances for the CVRP
Results of LLE04 over the benchmark instances
LLE04Class NP Unsolved Root Gap Avg. TimeA 22 7 2.06 6638B 20 1 0.61 8178E-M 12 9 2.10 39592F 3 0 0.06 1016P 24 8 2.26 11219
Total 81 25
Machine Intel Celeron 700MHz
Root gaps and average times measured only over solved instances.
J. Lysgaard, A. Letchford, and R. Eglese. A new branch-and-cut
algorithm for the capacitated vehicle routing problem. Mathematical
Programming, 100:423–445, 2004
Branch-and-cut algorithms may perform quite well oninstances with few vehicles and long routes, like F-n135-k7(because they are closer to the TSP?)However, shorter routes (n/K < 15) are more typical. Somesmaller instances, like P-n50-k8, could not be solved.
COSI’2014 - Bejaia Recent advances for the CVRP
Set Partitioning Formulation (Balinski and Quandt [1964])
Ω is the set of all routes, a route r has cost cr , air counts howmany times r passed at customer i
min∑r∈Ω
crλr (7)
S.t.∑r∈Ω
airλr = 1 ∀ i ∈ N, (8)∑r∈Ω
λr = K , (9)
λr ∈ 0, 1 ∀ r ∈ Ω. (10)
Too many variables =⇒ column generation / branch-and-pricemust be used
Pricing true (elementary) routes is strongly NP-hard =⇒ relaxthe definition of Ω to allow some non-elementary routes
COSI’2014 - Bejaia Recent advances for the CVRP
q-routes (Christofides, Mingozzi and Toth [1981])
Ω is redefined as the set of all q-routes: walks leaving andreturning to the depot respecting the capacity Q. A customer maybe visited more than once, but its demand is counted again in eachrevisit.
Pricing can now be done in pseudo-polynomial O(n2Q) time
Of course, the gap of SPF linear relaxation becomes larger
A compromise between pricing complexity and gap are theq-routes without k-cycles: a customer may be revisited onlyafter k visits to other customers.
Pricing in O(k2k!n2Q) time (Irnich and Villeneuve [2006]),efficient for k up to 4.
COSI’2014 - Bejaia Recent advances for the CVRP
Combining Column and Cut Generation
The SPF (even with near-elementary routes) is not strong enoughto yield effective branch-and-price algorithms for the CVRP.
Root gaps around 3% are typical, worse than the 2% that istypical with cutting planes
Fukasawa et al. [2006] realized that both approaches could becombined:
Let aer be the number of times that a given edge e appears inroute r , xe =
∑r∈Ω aerλr .
So, a general inequality∑
e∈E αexe ≥ b for the edgeformulation is included in the SPF as∑
r∈Ω(∑
e∈E αeaer )λr ≥ b.
This combination yields typical gaps around 1%.
COSI’2014 - Bejaia Recent advances for the CVRP
Robust Branch-Cut-and-Price
A key issue when combining Column and Cut Generation is howthe dual variables of the new constraints will be affect the pricingsubproblem:
A cut is robust (Poggi and Uchoa, 2003) when its dual valuecan be translated into costs in the pricing subproblem.Therefore, the structure and the size of that subproblemremain unaltered, regardless of the number of robust cutsadded.
Non-robust cuts change the pricing, each additional cutmakes it harder.
The robust BCP in Fukasawa et al. [2006] solved the instancesfrom the literature with up to 135 vertices. The 3 larger Minstances remained open.
COSI’2014 - Bejaia Recent advances for the CVRP
Results of FLL+06 over the benchmark instances
LLE04 FLL+06Class NP Unsolved Gap Time Unsolved Gap TimeA 22 7 2.06 6638 0 0.81 1961B 20 1 0.61 8178 0 0.47 4763E-M 12 9 2.10 39592 3 1.19 126987F 3 0 0.06 1016 0 0.14 2398P 24 8 2.26 11219 0 0.76 2892
Total 81 25 3
Machine Intel Celeron 700MHz Pentium 4 2.4GHz
R. Fukasawa, H. Longo, J. Lysgaard, M. Poggi de Aragao, M. Reis,
E. Uchoa, and R.F. Werneck. Robust branch-and-cut-and-price for the
capacitated vehicle routing problem. Mathematical programming, 106(3):
491–511, 2006
The BCP approach works better on instances with shortroutes (n/K < 10).
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature Review
Since Fukasawa et al. [2006], all the exact CVRP algorithms foundin the literature are based on combinations of column and cutgeneration.
A very active area, important new ideas are being proposedand significant improvements obtained.
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature: Baldacci et al. [2008]
Column-and-cut generation algorithm:
Columns are associated to elementary routes.
Also uses (a limited number of) non-robust StrengthenedCapacity and Clique Cuts, defined directly over the SPFvariables.
The typical root gaps are much reduced. Many tricks to keep thepricing subproblem tractable.
R. Baldacci, N. Christofides, and A. Mingozzi. An exact algorithm for the
vehicle routing problem based on the set partitioning formulation with
additional cuts. Mathematical Programming, 115(2):351–385, 2008
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature: Baldacci et al. [2008]
An important new idea:
Instead of branching, the algorithm finishes by enumeratingall routes with reduced cost smaller than the gap. A SPP withthose routes is given to a MIP solver.
Since solving such SPPs is usually fast (when the number ofroutes is less than 30K), this can save a lot of time on someinstances.
COSI’2014 - Bejaia Recent advances for the CVRP
Results of BCM08 over the benchmark instances
LLE04 FLL+06 BCM08Class NP US Gap Time US Gap Time US Gap TimeA 22 7 2.06 6638 0 0.81 1961 0 0.20 118B 20 1 0.61 8178 0 0.47 4763 0 0.16 417E-M 12 9 2.10 39592 3 1.19 126987 4 0.69 1025F 3 0 0.06 1016 0 0.14 2398 3P 24 8 2.26 11219 0 0.76 2892 2 0.28 187Total 81 25 3 9Machine Intel Celeron 700MHz Pentium 4 2.4GHz Pentium 4 2.6GHz
Solved almost all the instances solved in Fukasawa et al. [2006],usually taking much less time. However, very sensitive to n/K ,some instances with larger routes were not solved.
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature: Baldacci et al. [2011]
ng-routes, a new relaxation that is more effective than q-routes isintroduced.
For each i ∈ N, let NG (i) ⊆ N be the neighborhood of i , itsng closest customers. A ng -route can only revisit customer iafter it passes by another costumer j such that i /∈ NG (j).
Defining Ω as the set of 8-routes is already (usually) betterthan performing 5-cycle elimination, but costs less in thepricing.
Subset Row Cuts (Jepsen et al. [2008]) are used instead of CliqueCuts, less impact on the pricing.R. Baldacci, A. Mingozzi, and R. Roberti. New route relaxation and
pricing strategies for the vehicle routing problem. Operations Research,
59(5):1269–1283, 2011
COSI’2014 - Bejaia Recent advances for the CVRP
Results of BMR11 over the benchmark instances
LLE04 FLL+06 BCM08Class NP US Gap Time US Gap Time US Gap TimeA 22 7 2.06 6638 0 0.81 1961 0 0.20 118B 20 1 0.61 8178 0 0.47 4763 0 0.16 417E-M 12 9 2.10 39592 3 1.19 126987 4 0.69 1025F 3 0 0.06 1016 0 0.14 2398 3P 24 8 2.26 11219 0 0.76 2892 2 0.28 187Total 81 25 3 9Machine Intel Celeron 700MHz Pentium 4 2.4GHz Pentium 4 2.6GHz
BMR11Class NP US Gap TimeA 22 0 0.13 30B 20 0 0.06 67E-M 12 3 0.49 303F 3 1 0.11 164P 24 0 0.23 85Total 81 4Machine Xeon X7350 2.93GHz
Faster and more stable, could also solve instances with reasonablymany customers per route.
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature: Contardo [2012]
New twists on the use of non-robust cuts and on enumeration:
The columns are q-routes without 2-cycles. The partialelementarity of the routes is enforced by non-robust cuts.
The enumeration generates a pool with up to a few millionroutes and the pricing starts to be performed by inspection.At that point, an aggressive separation of non-robust cuts andfixing by reduced costs can lead to small gaps.
Instance M-n151-k12 was solved to optimality in 5.5 hours, settinga new record.
C. Contardo. A new exact algorithm for the multi-depot vehicle routing
problem under capacity and route length constraints. Technical report,
Archipel-UQAM 5078, Universite du Quebec a Montreal, Canada, 2012
COSI’2014 - Bejaia Recent advances for the CVRP
Results of Con12 over the benchmark instances
LLE04 FLL+06 BCM08Class NP US Gap Time US Gap Time US Gap TimeA 22 7 2.06 6638 0 0.81 1961 0 0.20 118B 20 1 0.61 8178 0 0.47 4763 0 0.16 417E-M 12 9 2.10 39592 3 1.19 126987 4 0.69 1025F 3 0 0.06 1016 0 0.14 2398 3P 24 8 2.26 11219 0 0.76 2892 2 0.28 187Total 81 25 3 9Machine Intel Celeron 700MHz Pentium 4 2.4GHz Pentium 4 2.6GHz
BMR11 Con12Class NP US Gap Time US Gap TimeA 22 0 0.13 30 0 0.07 59B 20 0 0.06 67 0 0.05 89E-M 12 3 0.49 303 2 0.30 2807F 3 1 0.11 164 1 0.06 3P 24 0 0.23 85 0 0.13 43Total 81 4 3Machine Xeon X7350 2.93GHz Xeon E5462 2.8GHz
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature: Røpke [2012]
Back to robust BCP.
The more effective ng -routes are used.
A sophisticated and aggressive strong branching, greatlyreducing the size of the enumeration trees.
In spite of larger root gaps, results comparable with Contardo[2012] and Baldacci et al. [2011].
M-n151-k12 solved in 5 days.
S. Røpke. Branching decisions in branch-and-cut-and-price algorithms for
vehicle routing problems. Presentation in Column Generation 2012, 2012
COSI’2014 - Bejaia Recent advances for the CVRP
Results of Con12 over the benchmark instances
LLE04 FLL+06 BCM08Class NP US Gap Time US Gap Time US Gap TimeA 22 7 2.06 6638 0 0.81 1961 0 0.20 118B 20 1 0.61 8178 0 0.47 4763 0 0.16 417E-M 12 9 2.10 39592 3 1.19 126987 4 0.69 1025F 3 0 0.06 1016 0 0.14 2398 3P 24 8 2.26 11219 0 0.76 2892 2 0.28 187Total 81 25 3 9Machine Intel Celeron 700MHz Pentium 4 2.4GHz Pentium 4 2.6GHz
BMR11 Con12 Rop12Class NP US Gap Time US Gap Time US Gap TimeA 22 0 0.13 30 0 0.07 59 0 0.57 53B 20 0 0.06 67 0 0.05 89 0 0.25 208E-M 12 3 0.49 303 2 0.30 2807 2 0.96 44295F 3 1 0.11 164 1 0.06 3 0 0.25 2163P 24 0 0.23 85 0 0.13 43 0 0.69 280Total 81 4 3 2Machine Xeon X7350 2.93GHz Xeon E5462 2.8GHz Core i7-2620M 2.7GHz
COSI’2014 - Bejaia Recent advances for the CVRP
Recent Literature: Pecin et al. [2014]
A BCP that borrows from all previously mentioned works andintroduces a number of new elements.
D. Pecin, A. Pessoa, M. Poggi, and E. Uchoa. Improved
branch-cut-and-price for capacitated vehicle routing. In J. Lee and
J. Vygen, editors, Proceedings of the 17th IPCO, pages 393–403.
Springer, 2014
COSI’2014 - Bejaia Recent advances for the CVRP
Pecin et al. [2014]: Cuts
Robust cuts
Rounded CapacityStrengthened Comb
Non-robust cuts
lm-Subset Row Cut
Post-enumeration cuts
Subset Row CutClique
COSI’2014 - Bejaia Recent advances for the CVRP
Pecin et al. [2014]: Pricing
The most critical part of the BCP.
A label setting dynamic programming algorithm handles:
ng -routeslm-SRCs (1SRCs, 3SRCs, 4SRCs, 5SRCs)
Features:
Bidirectional Search (Righini and Salani [2006]).Completion Bounds (Contardo [2012])Some implementation tricks, like data structures over bitmaps,etc.Fast and effective heuristics. Exact pricing called a few timesper node.
COSI’2014 - Bejaia Recent advances for the CVRP
Pecin et al. [2014]: Non-robustness control
Even with all the care in their separation, non-robust cuts areindeed “non-robust”:
The pricing may be handling several hundreds such cutsefficiently. Then, in some node of the tree, it suddenlybecomes 100 or even 1000 times slower!
In those cases it is necessary to roll back, removing theoffending cuts. The node lower bound decreases, but the BCPdoes not halt.
COSI’2014 - Bejaia Recent advances for the CVRP
Pecin et al. [2014]: Miscellanea
A number of strategies are hybridized:
Strong Branching:
Hierarchical, 3 levelsUses history of past branchingsAggressive, up to 200 candidates can be testedUses estimates of the subtree size determining the SB effort ineach node
Enumeration:
Performed when the node gap is sufficiently small forgenerating a pool with less than 20M routesOrdinary branching occurs in enumerated nodesThe MIP solver only finishes the node when the pool has lessthan 30K routes
Branch-and-cut: In the root node, when column generation ishaving severe convergence problems, it may try BC
COSI’2014 - Bejaia Recent advances for the CVRP
Results of PPPU14 over the benchmark instances
BMR11 Con12 Rop12Class NP US Gap Time US Gap Time US Gap TimeA 22 0 0.13 30 0 0.07 59 0 0.57 53B 20 0 0.06 67 0 0.05 89 0 0.25 208E-M 12 3 0.49 303 2 0.30 2807 2 0.96 44295F 3 1 0.11 164 1 0.06 3 0 0.25 2163P 24 0 0.23 85 0 0.13 43 0 0.69 280Total 81 4 3 2Machine Xeon X7350 2.93GHz Xeon E5462 2.8GHz Core i7-2620M 2.7GHz
PPPU14Class NP US Gap TimeA 22 0 0.03 5.6B 20 0 0.04 6.2E-M 12 0 0.19 3669F 3 0 0.00 3679P 24 0 0.07 33Total 81 0Machine Core i7-3770 3.4GHz
COSI’2014 - Bejaia Recent advances for the CVRP
Detailed Results: M-n151-k12
Algo Machine Root LB Final LB Total Time
BMR11 X7350 2.93GHz 1004.3 1004.3 380Contardo12 E5462 2.8GHz 1012.5 1015 19699
Ropke12 i7-2620M 2.7GHz 1001.5 1015 417146PPPU14 i7-3770 3.4GHz 1012.8 1015 212
COSI’2014 - Bejaia Recent advances for the CVRP
Detailed Results: M-n200-k17
Algo Machine Root LB Final LB Total Time
BMR11 X7350 2.93GHz 1258.7 1258.7 436Contardo12 E5462 2.8GHz 1265.1 1265.1 34350
Ropke12 i7-2620M 2.7GHz 1255.3 1261.4 7200PPPU14 i7-3770 3.4GHz 1268.7 1275 3581
COSI’2014 - Bejaia Recent advances for the CVRP
Detailed Results: M-n200-k16
Algo Machine Root LB Final LB Total Time
BMR11 X7350 2.93GHz 1256.6 1256.6 319Contardo12 E5462 2.8GHz 1263.0 1263.0 265588
Ropke12 i7-2620M 2.7GHz 1253.0 1258.2 7200PPPU14 i7-3770 3.4GHz 1266.5 1274 39869
Previous upper bound: 1278.
COSI’2014 - Bejaia Recent advances for the CVRP
Optimal solution of M-n200-k16 (Q = 200), cost 1274
182623
27
27
25 29
19
12
219
10
1
27
1628 511
341
15
7
8
21
1426
1123
3
23
1616
17
9
5
19
26
6
72
23
35
716
20
7
8
7
16
11
25
18
29 25
22
6
28
1913
2117
52119
1414
31
12
6
19
20
22
11
16
36
1327
5
11
30
925
107
13
10
3
14
31
17
8
6
20
15
25
249
5
1517
5
16
17
1914
12
2919
28
9
26
125
13
119
18
1527
19
13
9911
3
19
14
1613
236 15
8 9
312
26
1818
1421
9
9
28 8
2318
5
10
10297
93
12218
108
17181
41
22 28 20
1530 19
1117
106
36
152713
10
10
1637
16
28
26
11
1530
16
20
15
33
2716
612 18
19
16
COSI’2014 - Bejaia Recent advances for the CVRP
Book chapter reviewing all those recent algorithms
M. Poggi and E. Uchoa. New exact approaches for the capacitated VRP.
In P. Toth and D. Vigo, editors, Vehicle Routing: Problems, Methods,
and Applications, chapter 3. SIAM, second edition, To Appear
COSI’2014 - Bejaia Recent advances for the CVRP
The remainder of this talk aims to explain a key issue in CVRPalgorithms based on cut and column generation: how the routedefinition and the non-robust cuts interfere with the pricing.
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
The pricing in CVRP algorithms is done by labeling dynamicprogramming algorithms:
Each (i , q), i ∈ V , q ∈ di , . . . ,Q defines a bucket
A label L(P) is a data structure representing a partial path P,with cost c(P). All labels corresponding to paths ending in iwith load q are kept in bucket B(i , q)
An initial label representing a null path is put in B(0, 0)
Labels are expanded producing other labels
Labels in B(0, q), q > 0, are complete routes
Dominated labels should be removed along the algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
The Labeling Algorithm
COSI’2014 - Bejaia Recent advances for the CVRP
Domination in the Labeling Algorithm
Rule
A label L(P1) dominates another label L(P2) in the same bucket ifc(P1) ≤ c(P2) and every valid completion of P2 is also a validcompletion for P1.
q-routes: at most one non-dominated label per bucket.
q-routes without 2-cycles: the least costly label in B(i , q), P1,can not be extended to its predecessor j . As the second leastcostly label P2 can be extended to j , P1 does not dominateP2. Both labels should be kept.
q-routes without k-cycles: at most k! non-dominated labels ineach bucket. Large values of k may cause an exponentialproliferation of labels.
COSI’2014 - Bejaia Recent advances for the CVRP
Domination in the Labeling Algorithm
Rule
A label L(P1) dominates another label L(P2) in the same bucket ifc(P1) ≤ c(P2) and every valid completion of P2 is also a validcompletion for P1.
ng -routes: Let Π1 and Π2 be the forbidden immediateextensions of paths P1 and P2, due to NG -sets. If Π1 ⊆ Π2
then every valid completion of P2 is also a valid completionfor P1. At most 2ng−1 labels per bucket.
ng = 8 is a safe choice for avoiding an exponentialproliferation of labels.
COSI’2014 - Bejaia Recent advances for the CVRP
Subset Row Cuts (SRCs)
Given C ⊆ N and a multiplier p, the (C , p)-Subset Row Cut is:
∑r∈Ω
⌊p∑i∈C
ari
⌋λr ≤ bp|C |c (11)
Non-robust cut obtained by a Chvatal-Gomory rounding of |C |constraints in the SPF.
M. Jepsen, B. Petersen, S. Spoorendonk, and D. Pisinger. Subset-row
inequalities applied to the vehicle-routing problem with time windows.
Operations Research, 56(2):497–511, 2008
COSI’2014 - Bejaia Recent advances for the CVRP
3SRCs
Given an SRC with base set C , for each integer d , define ydC as thesum of all variables λr such that
∑i∈C ari = d .
The cuts where |C | = 3 and p = 1/2 are called 3-Subset RowCuts (3SRCs), expressed as:
y2C + y3
C + 2y4C + 2y5
C + . . . ≤ 1.
Used in Contardo [2012] and Baldacci et al. [2011]
Potentially very effective
Other interesting SRCs do exist.
COSI’2014 - Bejaia Recent advances for the CVRP
How 3SRCs affect the Labeling Algorithm
Suppose there are nS 3SRCs, σs < 0 is the dual variableassociated to SRC s, C (s) its base set.
The labels now carry nS additional binary dimensions, S(P)[s]is the parity of the number of times that path P visited avertex in C (s).
When a label L(P) is expanded to L(P ′), if S(P)[s] = 1 andS(P ′)[s] = 0 then the reduced cost of P ′ should be penalizedby adding to σs to it.
A label L(P1) can only dominate a label L(P2) if
c(P1) ≤ c(P2) +∑
1≤s≤nS :S(P1)[s]>S(P2)[s]
σs .
COSI’2014 - Bejaia Recent advances for the CVRP
How 3SRCs affect the Labeling Algorithm
Rule
A label L(P1) dominates another label L(P2) in the same bucket ifc(P1) ≤ c(P2) +
∑1≤s≤nS :S(P1)[s]>S(P2)[s] σs and every valid
completion for P2 is also a valid completion for P1 (this dependson the definition of Ω).
As more 3SRCs are added, the dominance gets weaker
In many instances, 100 3SRCs already causes a combinatorialexplosion in the number of labels
COSI’2014 - Bejaia Recent advances for the CVRP
limited memory Subset Row Cuts (lm-SRCs)
Given C ⊆ V+, a memory set M, C ⊆ M ⊆ V+, and a multiplierp, the limited memory (C ,M, p)-Subset Row Cut is:∑
r∈Ω
α(C ,M, p, r)λr ≤ bp|C |c , (12)
where the coefficient of a route r is computed as:1: function α(C , M, p, r)2: coeff ← 0, state ← 03: for every vertex i ∈ r (in order) do4: if i /∈ M then5: state ← 06: else if i ∈ C then7: state ← state + p8: if state ≥ 1 then9: coeff ← coeff + 1, state ← state − 1
10: return coeff
COSI’2014 - Bejaia Recent advances for the CVRP
limited memory Subset Row Cuts (lm-SRCs)
1: function α(C , M, p, r)2: coeff ← 0, state ← 03: for every vertex i ∈ r (in order) do4: if i /∈ M then5: state ← 06: else if i ∈ C then7: state ← state + p8: if state ≥ 1 then9: coeff ← coeff + 1, state ← state − 1
10: return coeff
If M = V+, the function returns bp∑i∈C
ari c
Otherwise, the lm-SRC may be a weakening of the corresponding SRC
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
If a violated (C , p)-SRC exists, it finds a minimal set M such thatthe lm-(C ,M, p)-SRC has the same violation.
Eventually (perhaps in more iterations), the lower boundsobtained with the lm-SRCs will be the same that would beobtained with the SRCs.
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
0
2
1
3
Route r1, λr1=0.5
λr1 has coefficient 1 in the 3-SRC with C = 1, 2, 3
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
0
2
1
3
Route r1, λr1=0.5
Included in the memory set
λr1 still has coefficient 1 in the lm 3-SRC
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
0
2
1
3
Route r2, λr2=0.5
λr2 has coefficient 1 in the 3-SRC with C = 1, 2, 3
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
0
2
1
3
Route r2, λr2=0.5
Included in the memory set
λr2 still has coefficient 1 in the lm 3-SRC
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
0
2
1
3
Route r3, λr3=0.5
λr3 has coefficient 1 in the 3-SRC with C = 1, 2, 3
COSI’2014 - Bejaia Recent advances for the CVRP
Separation of lm-SRCs
0
2
1
3
Route r3, λr3=0.5
Included in the memory set
λr3 still has coefficient 1 in the lm 3-SRC
COSI’2014 - Bejaia Recent advances for the CVRP
Why it is good to reduce the set M as much as possible?
Rule
A label L(P1) dominates another label L(P2) in the same bucket ifc(P1) ≤ c(P2) +
∑1≤s≤nS :S(P1)[s]>S(P2)[s] σs and every valid
completion for P2 is also a valid completion for P1.
Let B(i , q) be a bucket such that, for a certain 3SRC s, i /∈ C (s).This means that S(P)[s] = 0 for all labels L(P) in that bucket.Therefore, σs will not affect the dominance in B(i , q).
The separation of lm-SRCs with minimal memory-set setsmitigates the effect of those non-robust cuts in the pricing:
Many more cuts can be separated before it becomesintractable
COSI’2014 - Bejaia Recent advances for the CVRP
Why it is good to reduce the set M as much as possible?
0
2
i
1
3
Solid path may only dominate the dashed path because the lm3-SRC 1, 2, 3 is already forgotten at i .
COSI’2014 - Bejaia Recent advances for the CVRP
The State-Of-the-Art
How large are the CVRP instances that can be solved tooptimality?
COSI’2014 - Bejaia Recent advances for the CVRP
Golden’s Instances
Golden, Wasil, Kelly, and Chao [1998] proposed 12 instances,ranging from 240 to 483 customers.
Appear frequently in the literature on heuristic methods
Until now, considered to be far beyond the reach of exactmethods
Four instances could be solved, those with 240, 300, 320, and 360customers.
COSI’2014 - Bejaia Recent advances for the CVRP
Optimal solution of Golden 14 (320 customers,Q = 1000), cost 1080.55, 30 routes
8.1
6.96.9
6
5.25.25.25.2
5.2
5.2
5.2
5.2
5.2 6 6.9 8.1
8.1
6.96.9
6
5.25.25.25.2
5.2
5.2
5.2
5.2
5.2 6 6.9 8.1
10
8.1 6.9 6
6
6
66
6.9
6.98.1
10
12.8
12.8108.16.965.2
5.2 6 6.9 8.1 10 12.8
10
8.1 6.9 6
6
6
66
6.9
6.98.1
10
12.8
12.8 10 8.1 6.9 6 5.2
5.266.98.11012.8
12.8
10
8.1
6.9
66
5.2 5.2 5.2
6
6.9
8.1
10
18 18
183018
18 18
30
18
1818
30
12.8
10
8.1
6.9
6 6
5.25.25.2
6
6.9
8.1
10
12.8
10
8.1
6.9
6 6
5.25.25.2
6
6.9
8.1
10
1818
18 30
12.8
10
8.1
6.9
66
5.2 5.2 5.2
6
6.9
8.1
10
30
1818
30
12.8
10
8.1
6.9
6
5.2 5.2
6
6.9
8.1
10
12.8
3018
18 30
30 18
1830
30
18 18
30
12.8 10 8.1 6.9 6 5.2
5.266.98.11012.8
12.8 10 8.1 6.9 6 5.2
5.266.98.11012.8
12.8
10
8.1
6.9
6
5.25.2
6
6.9
8.1
10
12.8
8.1
6.9 6.9
6
5.2 5.2 5.2 5.2
5.2
5.2
5.2
5.2
5.266.98.1
12.8
10
8.1
6.9
6
5.2 5.2
6
6.9
8.1
10
12.8
12.8
10
8.1
6.9
6
5.25.2
6
6.9
8.1
10
12.8
12.8108.16.965.2
5.2 6 6.9 8.1 10 12.8
10
8.16.96
6
6
6 6
6.9
6.9 8.1
10
12.8
10
8.16.96
6
6
6 6
6.9
6.9 8.1
10
12.8
12.8108.16.965.2
5.2 6 6.9 8.1 10 12.8
8.1
6.9 6.9
6
5.2 5.2 5.2 5.2
5.2
5.2
5.2
5.2
5.266.98.1
COSI’2014 - Bejaia Recent advances for the CVRP
Optimal solution of Golden 19 (360 customers, Q = 20),cost 1365.60, 33 routes
1
1
1
1
1
4
411
11
11
1
1
11
114
4
11
11
11
1
2
2
2
1
1
4
1
1
1
1
2
2
2
2
1
2
1
41
4
1
1
1
1
11
1
44
1
1
11
2
2
1
11
1
1
4
411
11
1
1
1
4
4
4 1
1 1
1
214
2
11
4 1 1
1 1
1
2
2
1
4
1
4
1
2
1
11
1
4 4 4
11
11
1
2
2
2
1 2
1
41
41
11
2
1
2
1
4 1
4 1 2
1
11
11
4
4
4
2
2 1 4
1
4121
1
1
2
2
2
1
2
1
4
14
12
2
1
1
1
1
4 1 1
2
2
2
444
11
11
1
2
1
41
412
121
1
1
1
14
1
4 1 2 1
2
2
2
1
4
1
4
2
2
2
1
1
2
214
1
4 1 2 1
1
1
2
1
2
1
2
1
4 1
4 1
1
4
4
4
4
1
11
1
1
1
1
4
1
4
1
2
1
2
2
2 1 41
4
2
21
11
1
2
1
1
4
4 1 1
1 12
2
2
2
2
1
2
1
4
1
4
1
1
1
2
1
4
1
4
1
2
1
2
1
1
41
2
1
1
4
1
1
1
11
4
4
4
41
1
1
1
11
11
11
4 4
1
1
11
2
1
1
1
2
1
2
1
41
41
1
1
1
1
1
4
1
2
1
2
1
4
1
COSI’2014 - Bejaia Recent advances for the CVRP
New X Instances
A benchmark set with 100 instances, ranging from 100 to 1000customers, was recently proposed by Uchoa, Pecin, Pessoa, Poggi,Subramanian and Vidal [2014].
Designed to cover a wide range of characteristics found in realapplications
Available at http://vrp.atd-lab.inf.puc-rio.br/index.php/en/
COSI’2014 - Bejaia Recent advances for the CVRP
Results on the new X Instances
40 instances could be solved to optimality:
100 ≤ n < 200 : 21 out of 22
200 ≤ n < 300: 14 out of 21
300 ≤ n < 500: 4 out of 25
500 ≤ n < 1000: 1 out of 32
Smallest unsolved: X-n190-k8Largest solved: X-n655-k131 (2491s)
COSI’2014 - Bejaia Recent advances for the CVRP
Optimal solution of X-655-k131 (unitary demands, Q = 5),cost 106780, 131 routes
277
112
172
581
31
587
97
412577
111
66
21
213
307
271
8
286
141
572
208
434
91
484
360
430
106
564
522
648
382
540
477
482
599
655
463
107
47
460
456
420
421
37
490
153
218
105
459 339
207
88
48
573509
77
5
315
634
452
550
211
52470
276
582
130
99
415
119
388
136
16
427
442
188
102
24
386
140
535
280
238
389
242
384
73
134
451
646
519
372
12
609210
109
431
481
367
560
497
13
192
261
621
144
379
151
524
252
123
486
170
654
505
549
114
312
336
555
60
69
94
507
504
38
533
362
164483
403
50822
603
357
322
184596
300
653
87
383
79
20
380
132
447
110
593
429
202
344
155
330
199
9
370
10
17
214
605
195
424
266
638
449
516
122
455
250
635
50
58932 598
215
597
186462
272
618
528
185
521
259
147
294
492
262
512
256
281
305
608
396
376
247
395
627
410
338
302263
643
469
641
458
196
299
293
78
511
75
222
558
453
243
480
576
586
90
127
49
212
103
557
95
260
510
552
289
157
35
150401
264
525
40
489
64
650
568
308
561
644
104
544
332
358
345
563
244
224
607
584257
393
18
475
197
637
177
220
341
478
96
121
180
614
628
601
59
166
375
340
551
461
255
295
273
407
26
542
390
642
468
349
145
283543
327
7
80
465
515
3
282
84
258
600
11
287
371
81
479168
29
118
98
363
487
343
398
359
428
160
348
171146
189
142
513
200
488
590471
230
19649
532
113
346
34
517
350
457
115
65
125
335
89
131
92647
409
624
473
161
319530
553
53
216
620
595
297
433
14503
265
162
25
2256
356496
570
241
93
623
514
502
352
70
536
474
354
100
436
304
269
320
245
323
318
143
645
314
159
612
219
402
476
228
529
652
419
74
574
633
301
636
169
466
493
381
275303
418
583
506
306
240
594
351
268
137
2198
566
67
602
167368
500
124
173
438
324
585
45
41
135
413
537
158
4
44
639
163
63
365
108
387
378
310
333
448
626
254
152
71179
334
579
571
201
58538
406
426
33
337
182
23
541554
615
588
580
464
183
397235
175
630
248
575
274
373
217
292
181
374
526
391
46229
68
42
342
191
518
329
83
416
29636
546
309
178
165
498
278
203
625193
400
221631
85
249
417399
231
439
187
556
531
237
539
444
622
495
56
267
408
206
629
62
361
209
443
394
72
617
606
366
619
291
194
129
15
377
527
279
138
347
578
316
101
355
405
632
149
414
126
385
133
423
28
174
298
611
392
592
353523
454
128
8227
176
591
491
569
445616
499
313
234
117
39
565
54
331251
223
559
441
116
139
411
190
311
253
232
472
328
288
364
369
239
42561
440
317610
520
450
226156
326
494
246
204
86
640
435
154
205
55 285
120
290
30
43
321148
651
562
57
270
604
51
422
467
233
545
548
485
227
534
567
404
446
437
613
501
432
76
236325
284
547
COSI’2014 - Bejaia Recent advances for the CVRP
Thank you for your attention!
COSI’2014 - Bejaia Recent advances for the CVRP
N. Achuthan, L. Caccetta, and S. Hill. An improvedbranch-and-cut algorithm for the capacitated vehicle routingproblem. Transportation Science, 37:153–169, 2003.
J. Araque, G. Kudva, T. Morin, and J. Pekny. A branch-and-cutalgorithm for the vehicle routing problem. Annals of OperationsResearch, 50:37–59, 1994.
P. Augerat. Approche polyedrale du probleme de tournees devehicules. PhD thesis, Institut National Polytechnique deGrenoble-INPG, 1995.
P. Augerat, J. Belenguer, E. Benavent, A. Corberan, D. Naddef,and G. Rinaldi. Computational results with a branch and cutcode for the capacitated vehicle routing problem. TechnicalReport 949-M, Universite Joseph Fourier, Grenoble, France,1995.
COSI’2014 - Bejaia Recent advances for the CVRP
R. Baldacci, N. Christofides, and A. Mingozzi. An exact algorithmfor the vehicle routing problem based on the set partitioningformulation with additional cuts. Mathematical Programming,115(2):351–385, 2008.
R. Baldacci, A. Mingozzi, and R. Roberti. New route relaxationand pricing strategies for the vehicle routing problem.Operations Research, 59(5):1269–1283, 2011.
M.L. Balinski and R.E. Quandt. On an integer program for adelivery problem. Operations Research, 12(2):300–304, 1964.
U. Blasum and W. Hochstattler. Application of the branch and cutmethod to the vehicle routing problem. Technical ReportZPR2000-386, Zentrum fur Angewandte Informatik Koln, 2000.
N. Christofides and S. Eilon. An algorithm for thevehicle-dispatching problem. Operational Research Quarterly,20:309–318, 1969.
COSI’2014 - Bejaia Recent advances for the CVRP
N. Christofides, A. Mingozzi, and P. Toth. The vehicle routingproblem. In N. Christofides, A. Mingozzi, P. Toth, and C. Sandi,editors, Combinatorial Optimization, A Wiley-IntersciencePublication, Based on a series of lectures, given at the SummerSchool in Combinatorial Optimization, held in Sogesta, Italy,May 30th-June 11th, 1977, Chichester: Wiley, 1979, edited byChristofides, Nicos, volume 1, pages 315–338, 1979.
C. Contardo. A new exact algorithm for the multi-depot vehiclerouting problem under capacity and route length constraints.Technical report, Archipel-UQAM 5078, Universite du Quebec aMontreal, Canada, 2012.
M.L. Fisher. Optimal solution of vehicle routing problems usingminimum k-trees. Operations research, 42(4):626–642, 1994.
R. Fukasawa, H. Longo, J. Lysgaard, M. Poggi de Aragao, M. Reis,E. Uchoa, and R.F. Werneck. Robust branch-and-cut-and-pricefor the capacitated vehicle routing problem. Mathematicalprogramming, 106(3):491–511, 2006.
COSI’2014 - Bejaia Recent advances for the CVRP
S. Irnich and D. Villeneuve. The shortest-path problem withresource constraints and k-cycle elimination for k ≥ 3.INFORMS Journal on Computing, 18(3):391–406, 2006.
M. Jepsen, B. Petersen, S. Spoorendonk, and D. Pisinger.Subset-row inequalities applied to the vehicle-routing problemwith time windows. Operations Research, 56(2):497–511, 2008.
G. Laporte and Y. Nobert. A branch and bound algorithm for thecapacitated vehicle routing problem. OR Spectrum, 5(2):77–85,1983.
J. Lysgaard, A. Letchford, and R. Eglese. A new branch-and-cutalgorithm for the capacitated vehicle routing problem.Mathematical Programming, 100:423–445, 2004.
D. Pecin, A. Pessoa, M. Poggi, and E. Uchoa. Improvedbranch-cut-and-price for capacitated vehicle routing. In J. Leeand J. Vygen, editors, Proceedings of the 17th IPCO, pages393–403. Springer, 2014.
COSI’2014 - Bejaia Recent advances for the CVRP
M. Poggi and E. Uchoa. New exact approaches for the capacitatedVRP. In P. Toth and D. Vigo, editors, Vehicle Routing:Problems, Methods, and Applications, chapter 3. SIAM, secondedition, To Appear.
T. Ralphs, L. Kopman, W. Pulleyblank, and L. Trotter Jr. On thecapacitated vehicle routing problem. MathematicalProgramming, 94:343–359, 2003.
G. Righini and M. Salani. Symmetry helps: bounded bi-directionaldynamic programming for the elementary shortest path problemwith resource constraints. Discrete Optimization, 3(3):255–273,2006.
S. Røpke. Branching decisions in branch-and-cut-and-pricealgorithms for vehicle routing problems. Presentation in ColumnGeneration 2012, 2012.
COSI’2014 - Bejaia Recent advances for the CVRP