360 likes | 469 Views
Simon Fraser University Industry sponsor: Dynamex Inc. . Courier Routing Problem in Atlanta area. Atlanta area. 07/04/05. 2. Courier routing problem. Same day delivery service in Atlanta area. Approximately 1000 requests per day (each request consists a delivery job). 07/04/05. 3.
E N D
Simon Fraser University Industry sponsor: Dynamex Inc. Courier Routing Problem in Atlanta area
Atlanta area 07/04/05 2
Courier routing problem • Same day delivery service in Atlanta area. • Approximately 1000 requests per day (each request consists a delivery job). 07/04/05 3
Typical input • Requests arrive offline (online requests can be updated). • About 17 vehicles available. • Atlanta area road-map: 125,000 intersections, 154,000 road segments, Approximated 70 miles in diameter. 07/04/05 4
13 10 4 5 7 1 14 6 3 0 12 2 16 8 11 18 15 9 17 Courier routing (static version) 07/04/05 5
new jobs arrive • old job is either cancelled or its specifications have changed. 13 10 4 5 7 1 14 6 3 0 12 2 16 8 11 18 15 9 17 Courier routing (dynamic version) 07/04/05 6
travel time minimize cost(,s) = dsum() or tsum() • more complex objective functions are ‘welcome’. travel distance Vehicle Routing Problem (VRP) 07/04/05 7
Solving methodologies: • Single route optimization: • Efficient graph based TSP algorithms. • Multiple routes inter-exchanging: • Meta-heuristic techniques using local search. • Dynamic programming. 07/04/05 8
Improvement algorithm We start with a feasible solution = (1, 2, …, m). We then obtain a better feasible solution’by means of exchanges of jobs within a route and between the routes. 07/04/05 9
Neighborhood of x x ’ Improvement algorithm We start with a feasible solution = (1, 2, …, m). We then obtain a better feasible solution’by means of exchanges of jobs within a route and between the routes. 07/04/05 10
Neighborhood of x x ’ x’’ Improvement algorithm We start with a feasible solution = (1, 2, …, m). We then obtain a better feasible solution’by means of exchanges of jobs within a route and between the routes. 07/04/05 11
Neighborhood of x x ’ x’’ Improvement algorithm We start with a feasible solution = (1, 2, …, m). We then obtain a better feasible solution’by means of exchanges of jobs within a route and between the routes. 07/04/05 12
Improvement Graph The concept of improvement graph allows one to identify profitable cyclic/ path exchanges with certain constraints. Each node represents a job. Two nodes are adjacent if the corresponding jobs can be exchanged. 07/04/05 13
Improvement graph • Local search • Distance approximation (on graphs): • Well-Separated Sets. • Gabriel neighbours. • TSP heuristics References 07/04/05 14
References Well-Separated Sets: • Paul B. Callahan and S. Rao Kosaraju, A decomposition of multi-dimensional point-sets with applications to k-nearest-neighbors and n-body potential fields, 546-556, 1992 • Binay Bhattacharya et al. The travel time between an arbitrary pair of locations can be computed in logarithmic time(expected). manuscript 2005. Neighborhood Computation: • Michael Houle. SASH: A spatial approximation sample hierarchy for similarity search. Tech. Report RT-0517, IBM Tokyo Research Laboratory, 2003. • Kaustav Mukherjee. Application of the gabriel graph to instance-based learning. M.sc. project, School of Computing Science, SFU, 2004. (Supervised by Binay Bhattacharya) • Binay Bhattacharya, Kaustav Mukherjee and Godfried Toussaint, Geometric decision rules for high dimensions, 2005 (invited paper). Local Search: • T. Ibaraki, S. Imahori, M. Kubo, T. Masuda, T. Uno and M. Yagiura, Effective Local Search Algorithms for Routing and Scheduling Problems with General Time-Window Constraints, 2005. TSP heuristics: • S. Lin and B.W. Kernighan, An effective heuristic algorithm for the TSP, 1973. Improvement Graphs: • R.K. Ahuja, J.B. Orlin, and D. Sharma. Very large-scale neighborhood search, 2000. • R.K. Ahuja, O. Ergun, J.B. Orlin, A.P. Punnen. A survey of very large-scale neighborhood search techniques, 2002. 07/04/05 15
SFU improved algorithms Three types of algorithms: • Inner route optimization (opt #1): • Inter-routes exchange - load balanced (opt #2): • Inter-routes exchange – route deletion (opt #3): 07/04/05 16
SFU improved algorithms Three types of algorithms: • Inner route optimization (opt #1): optimizes only the jobs order within each route (using realistic graph base distances) • Inter-routes exchange - load balanced (opt #2): • Inter-routes exchange – route deletion (opt #3): 07/04/05 17
SFU improved algorithms Three types of algorithms: • Inner route optimization (opt #1): • Inter-routes exchange - load balanced (opt #2): allows job swaps between routes – keep the original number of routes (balanced). • Inter-routes exchange – route deletion (opt #3): 07/04/05 18
SFU improved algorithms Three types of algorithms: • Inner route optimization (opt #1): • Inter-routes exchange - load balanced (opt #2): • Inter-routes exchange – route deletion (opt #3): allows any job swaps which can reduce the number of routes. 07/04/05 19
Dynamex versus SFU: experimental results We have tested 2 sets of daily delivery: • April 26, 200?: 902 jobs • April 27, 200?: 702 jobs Each data set was tested using all three types of optimizations (#1, #2, #3). • Distances are in miles, time: h:m:s 07/04/05 20
Courier Statistics (27/4) 07/04/05 21
Courier Statistics (26/4) 07/04/05 22
Courier Statistics (27/4) 07/04/05 23
Dynamex versus SFU (#1) Cost (in seconds) of each route: 26.4, 902 jobs, dynamex versus #1 optimization 07/04/05 24
Dynamex: single route example Several self intersecting paths, Usually implies that the route can be improved. 07/04/05 25
SFU - #1 improvement The jobs of the route where reordered so there are less self intersecting paths - usually implies an improvement. 07/04/05 26
SFU versus Dynamex distance comp. Dynamex: L2 - free space TSP SFU: graph distance TSP 07/04/05 27
SFU versus Dynamex distance comp. Dynamex: free space SFU: graph distances 07/04/05 28
Dynamex – start / end points Long distance to/from the depot to the start/end point of the route. 07/04/05 29
SFU – #1 start / end points shorter distances from the depot to/from the start/end points of the route. 07/04/05 30
SFU #2 - routes examples By allowing job swaps between routes an improved routes can be computed, while keeping ‘fairness’. 07/04/05 31
Dynamex all routes All 17 routes: • long distance to/from the depot to the start/end point. 07/04/05 32
SFU #3 - all routes Covering all jobs with 14 routes (instead of 17) Shorter distance to/from the depot to the start/end point. Less cars. 07/04/05 33
Conclusion Advantages of the suggested system: • improved results 4-16%. • changes can be updated dynamically. • efficient run time. • robustness & scalability: • more jobs. • complex objective functions. • pickup & delivery with time windows. 07/04/05 34
Future work • Fine tuning the suggested methods. • Dynamic updates on road conditions. • Pick-up and delivery with multiple constrains. 07/04/05 35
Collaborators | students & others Binay Bhattacharya*, SFU Posenjit Bose, Carleton U Daya Ram Gaur, ULethbridge Mark Keil, USask David Kirkpatrick*, UBC Ramesh Krishnamurti, SFU Godfried Toussaint, McGill U Rober Benkoczi Boaz Benmoshe David Breton Stephane Durocher Yuzhuang Hu Benjamin Lewis Rizwan Merchant 07/04/05 36