OAR Lib: An Open Source Arc Routing Library

Slides:



Advertisements
Similar presentations
The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
Advertisements

Instructor Neelima Gupta Table of Contents Approximation Algorithms.
22C:19 Discrete Math Graphs Fall 2010 Sukumar Ghosh.
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
Chapter 4 The Greedy Approach. Minimum Spanning Tree A tree is an acyclic, connected, undirected graph. A spanning tree for a given graph G=, where E.
CS171 Introduction to Computer Science II Graphs Strike Back.
Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.
Modeling Rich Vehicle Routing Problems TIEJ601 Postgraduate Seminar Tuukka Puranen October 19 th 2009.
Combinatorial Algorithms
Transit Vehicle Routing Methods for Large-Scale Evacuation Mark Hickman and Moshe Dror University of Arizona INFORMS November 15, 2011.
Graph theory at work.  Examine the procedure utilized by snow plows in Iowa City  Systemize and minimize routes  Review mathematical concepts involved.
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 21: Graphs.
The Min-Max Split Delivery Multi- Depot Vehicle Routing Problem with Minimum Delivery Amounts X. Wang, B. Golden, and E. Wasil INFORMS San Francisco November.
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
Math443/543 Mathematical Modeling and Optimization
Implicit Hitting Set Problems Richard M. Karp Harvard University August 29, 2011.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Monday, 12/2/02 Design Patterns for Optimization Problems Greedy.
Spring 2010CS 2251 Graphs Chapter 10. Spring 2010CS 2252 Chapter Objectives To become familiar with graph terminology and the different types of graphs.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Steiner trees Algorithms and Networks. Steiner Trees2 Today Steiner trees: what and why? NP-completeness Approximation algorithms Preprocessing.
The Shortest Path Problem
NetworkModel-1 Network Optimization Models. NetworkModel-2 Network Terminology A network consists of a set of nodes and arcs. The arcs may have some flow.
Management Science 461 Lecture 9 – Arc Routing November 18, 2008.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Graph Algorithms: Minimum.
1.3 Modeling with exponentially many constr.  Some strong formulations (or even formulation itself) may involve exponentially many constraints (cutting.
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
University of Texas at Arlington Srikanth Vadada Kishan Kumar B P Fall CSE 5311 Solving Travelling Salesman Problem for Metric Graphs using MST.
Computer Science 112 Fundamentals of Programming II Introduction to Graphs.
Modeling and Evaluation with Graph Mohammad Khalily Dermany Islamic Azad University, Khomein branch.
Compact Routes for the Min-Max K Windy Rural Postman Problem by Oliver Lum 1, Carmine Cerrone 2, Bruce Golden 3, Edward Wasil 4 1. Department of Applied.
Combinatorial Optimization Minimum Cuts in Undirected Graphs Global Minimum Cuts.
COSC 2007 Data Structures II Chapter 14 Graphs III.
A Two-Stage Partitioning Approach for the Min-Max K Windy Rural Postman Problem Oliver Lum Carmine Cerrone Bruce Golden Edward Wasil 1.
Spring 2015 Mathematics in Management Science Network Problems Networks & Trees Minimum Networks Spanning Trees Minimum Spanning Trees.
© B.Raghavachari & J.Veerasamy, UTD 1 Euler tours, postman tours and mixed graphs Jeyakesavan Veerasamy* * Joint work with Balaji Raghavachari Samsung.
© B.Raghavachari & J.Veerasamy, UTD 1 Approximation Algorithms for Postman Problems Jeyakesavan Veerasamy* * Joint work withBalaji Raghavachari Samsung.
1 A Guided Tour of Several New and Interesting Routing Problems by Bruce Golden, University of Maryland Edward Wasil, American University Presented at.
Graphs Rosen, Chapter 8. Isomorphism (Rosen 560 to 563) Are two graphs G1 and G2 of equal form? That is, could I rename the vertices of G1 such that the.
Trees and Distance. 2.1 Basic properties Acyclic : a graph with no cycle Forest : acyclic graph Tree : connected acyclic graph Leaf : a vertex of degree.
The Colorful Traveling Salesman Problem Yupei Xiong, Goldman, Sachs & Co. Bruce Golden, University of Maryland Edward Wasil, American University Presented.
Data Structures & Algorithms Graphs
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Chapter 8 Maximum Flows: Additional Topics All-Pairs Minimum Value Cut Problem  Given an undirected network G, find minimum value cut for all.
OAR Lib: An Open Source Arc Routing Library By Oliver Lum Advised By Professor Bruce Golden 1.
Introduction to Graph Theory By: Arun Kumar (Asst. Professor) (Asst. Professor)
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Introduction to Multiple-multicast Routing Chu-Fu Wang.
Data Structures and Algorithm Analysis Graph Algorithms Lecturer: Jing Liu Homepage:
Constraint Programming for the Diameter Constrained Minimum Spanning Tree Problem Thiago F. Noronha Celso C. Ribeiro Andréa C. Santos.
Grade 11 AP Mathematics Graph Theory Definition: A graph, G, is a set of vertices v(G) = {v 1, v 2, v 3, …, v n } and edges e(G) = {v i v j where 1 ≤ i,
Traveling Salesman Problem DongChul Kim HwangRyol Ryu.
1 Minimum Spanning Tree: Solving TSP for Metric Graphs using MST Heuristic Soheil Shafiee Shabnam Aboughadareh.
Hamiltonian Cycle and TSP
1.3 Modeling with exponentially many constr.
Graph Algorithm.
Connected Components Minimum Spanning Tree
Lecture 16 Maximum Matching
Graphs Chapter 13.
Maximum Flows of Minimum Cost
Finding Subgraphs with Maximum Total Density and Limited Overlap
3.5 Minimum Cuts in Undirected Graphs
Great Ideas: Algorithm Implementation
Introduction Basic formulations Applications
Lecture 19-Problem Solving 4 Incremental Method
Section 2: Multiple choice
1.3 Modeling with exponentially many constr.
5.4 T-joins and Postman Problems
Trees-2, Graphs Data Structures with C Chpater-6 Course code: 10CS35
Presentation transcript:

OAR Lib: An Open Source Arc Routing Library By Oliver Lum Carmine Cerrone Bruce Golden Edward Wasil

OAR Lib (Motivation) Solution: Problem: A (perceived) barrier to entry that coding experience in a non- modeling language is required No centralized, standardized implementations of many routing algorithms Existing APIs are frequently developed with graph theoretic research in mind Realistic test data procurement Figure generation for papers An open-source java library aimed at new operations researchers in the field of arc-routing An architecture for future software development in routing and scheduling Design Philosophy: Usability First, Performance Second OSM Integration Gephi toolkit (open source graph visualization) Integration

OAR Lib (Content) Single-Vehicle Solvers Multi-Vehicle Solvers Un/Directed Chinese Postman (UCPP/DCPP) Mixed Chinese Postman (MCPP) Windy Chinese Postman (WPP) Directed Rural Postman Problem (DRPP) Windy Rural Postman Problem (WRPP) Multi-Vehicle Solvers Min-Max K Windy Rural Postman Problem (MM-k WRPP)

OAR Lib (Content) Common Algorithms: Single-Source Shortest Paths All-Pairs Shortest Paths Min-Cost Matching (JNI) Min-Cost Flow Hierholzer’s Algorithm (Stochastic) Minimum Spanning Tree Minimum Spanning Arborescence (JNI) Connectivity Tests

Applications Ubiquitous: Various interesting wrinkles: Package Delivery Snow Plowing Military Patrols Various interesting wrinkles: Time-Windows Close-Enough Turn Penalties Asymmetric Costs

The Min-Max K WRPP A natural extension of the WRPP Objective: Minimize the max route cost Homogenous fleet, K vehicles Asymmetric Traversal Costs Required and unrequired edges Generalization of the directed, undirected, and mixed variants Takes into account route balance, and customer satisfaction

The Min-Max K WRPP = Required = Included in route = Untraversed Depot

The Min-Max K WRPP Existing Literature: Benavent, Enrique, et al. “Min-Max K-vehicles windy rural postman problem.” Networks 54.4 (2009): 216-226. Benavent, Enrique, Angel Corberan, Jose M. Sanchis. “A metaheuristic for the min-max windy rural postman problem with K vehicles.” Computational Management Science 7.3 (2010): 269-287. Benavent, Enrique, et al. “A branch-price-and-cut method for the min-max k-windy rural postman problem.” Networks (2014, to appear).

Existing Algorithm Solve the single-vehicle variant. This produces a solution that can be represented as an ordered list of required edges (where any gaps are traversed via shortest paths). Depot 9

Existing Algorithm Set up a directed, acyclic graph with m+1 vertices, (0,1,…m) where the cost of the arc (i-1,j) is the cost of the tour starting at the depot, going to the tail of edge i, continuing along the single-vehicle solution through edge j, and then returning to the depot. 1 2 8

Existing Algorithm Calculate a k-edge narrowest path from v0 to vm in the DAG, corresponding to a solution (a simple modification to Dijkstra’s single-source shortest path algorithm suffices). 1 2 3 4 5 6 7 8

A Partitioning Scheme Transform the graph into a vertex-weighted graph in the following way: Create a vertex for each edge in the original graph Connect two vertices i and j if, in the original graph, edge I and edge j shared an endpoint 4 4 4 2 2 3 5 5 2 3 1 3 7 7 1 5 6 1 Depot 6

A Partitioning Scheme Change the vertex weights to account for known dead- heading and distance to the depot. 4 4 2 5 2 3 1 3 7 5 1 Depot 6

A Partitioning Scheme Partition the transformed graph into k approximately equal parts. 4 4 2 5 2 3 1 3 7 5 1 Depot 6

A Partitioning Scheme Route the subgraphs induced by each partition using a single-vehicle solver. 4 4 4 2 2 2 1 3 1 3 1 3 5 5 5 Depot Depot Depot

Cross-Section of Helsinki, Finland Test Instance: Cross-Section of Helsinki, Finland |V|=1230 |E|=1468 = Required Edge = Unrequired Edge = Depot

Existing Approach Route 1

Existing Approach Route 2

Partitioning Approach

Results Instance |V| |E| Partition Obj. Benavent Obj. % Diff San Francisco 705 844 11645 10188 14.3 Washington D.C. 592 663 10742 10649 .87 London, UK 845 994 6116 5866 4.2 Istanbul, TR 629 780 7388 7516 -1.7 Perth, AUS 535 597 7379 6970 5.8 Auckland, AUS 1045 1130 13655 13368 2.1 Helsinki, FI 1230 1468 6640 6866 -2.5 Vienna, AU 483 557 3875 3947 -1.9 Paris, FR 1931 2256 14862 N/A Calgary, CA 1733 2283 22644

Conclusions / Future Work Advantages: Capable of solving large instances Service contiguity – adjacent links are more likely to be serviced by the same vehicle Memory usage – the widest path calculation in the existing algorithm is extremely memory intensive ( order ) Future Work: Incorporate / apply existing improvement procedures to both procedures and compare. Exploring relationship between number of vehicles, and tuning parameters

Cross-Section of Greenland A Large Instance Test Instance: Cross-Section of Greenland |V|=3047 |E|=3285 Runtime: 328.3 s

References Ahr, Dino, and Gerhard Reinelt. "New heuristics and lower bounds for the Min-Max k-Chinese PostmanProblem." Algorithms|ESA 2002. Springer Berlin Heidelberg, 2002. 64-74. Benavent, Enrique, et al. "New heuristic algorithms for the windy rural postman problem." Computers& operations research 32.12 (2005): 3111-3128. Campos, V., and J. V. Savall. "A computational study of several heuristics for the DRPP." ComputationalOptimization and Applications 4.1 (1995): 67-77. http://community.topcoder.com/tc?module=Static&d1=tutorials&d2= minimumCostFlow2 Edmonds, Jack, and Ellis L. Johnson. "Matching, Euler tours and the Chinese postman." Mathematicalprogramming 5.1 (1973): 88-124.

References Eiselt, Horst A., Michel Gendreau, and Gilbert Laporte. "Arc routing problems, part II: The ruralpostman problem." Operations Research 43.3 (1995): 399-414. Derigs, Ulrich. Optimization and operations research. Eolss Publishers Company Limited, 2009. http://en.wikipedia.org/wiki/Dijkstra's_algorithm http://en.wikipedia.org/wiki/Floyd\OT1\textendashWarshall_algorithm http://en.wikipedia.org/wiki/Prim%27s_algorithm Dussault, Benjamin, et al. "Plowing with precedence: A variant of the windy postman problem."Computers & Operations Research (2012). Frederickson, Greg N. "Approximation algorithms for some postman problems." Journal of the ACM(JACM) 26.3 (1979): 538-554.

References Grotschel, Martin, and Zaw Win. "A cutting plane algorithm for the windy postman problem." Math-ematical Programming 55.1-3 (1992): 339-358. Hierholzer, Carl, and Chr Wiener. "Uber die Moglichkeit, einen Linienzug ohne Wiederholung und ohneUnterbrechung zu umfahren." Mathematische Annalen 6.1 (1873): 30-32. Karypis, George, and Vipin Kumar. "A fast and high quality multilevel scheme for partitioning irregulargraphs." SIAM Journal on scientic Computing 20.1 (1998): 359-392. Kolmogorov, Vladimir. "Blossom V: a new implementation of a minimum cost perfect matching algo-rithm." Mathematical Programming Computation 1.1 (2009): 43-67. Lau, Hang T. A Java library of graph algorithms and optimization. CRC Press, 2010. Letchford, Adam N., Gerhard Reinelt, and Dirk Oliver Theis. "A faster exact separation algorithm forblossom inequalities." Integer programming and combinatorial optimization. Springer Berlin Heidelberg,2004. 196-205.

References Padberg, Manfred W., and M. Ram Rao. "Odd minimum cut- sets and b-matchings." Mathematics ofOperations Research 7.1 (1982): 67-80 Thimbleby, Harold. "The directed chinese postman problem." Software: Practice and Experience 33.11(2003): 1081-1096. Win, Zaw. "On the windy postman problem on Eulerian graphs." Mathematical Programming 44.1-3(1989): 97-112. Yaoyuenyong, Kriangchai, Peerayuth Charnsethikul, and Vira Chankong. "A heuristic algorithm for themixed Chinese postman problem." Optimization and Engineering 3.2 (2002): 157-187