Route Optimization Problems and Google Maps

Slides:



Advertisements
Similar presentations
Problem solving with graph search
Advertisements

Traveling Salesperson Problem
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
Shortest Paths Text Discrete Mathematics and Its Applications (5 th Edition) Kenneth H. Rosen Chapter 9.6 Based on slides from Chuck Allison, Michael T.
1Other Network ModelsLesson 6 LECTURE SIX Other Network Models.
Dynamic Programming In this handout A shortest path example
Traveling Salesman Problem By Susan Ott for 252. Overview of Presentation Brief review of TSP Examples of simple Heuristics Better than Brute Force Algorithm.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
Lecture 21 Paths and Circuits CSCI – 1900 Mathematics for Computer Science Fall 2014 Bill Pine.
9.2 The Traveling Salesman Problem. Let us return to the question of finding a cheapest possible cycle through all the given towns: We have n towns (points)
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
© 2006 Pearson Addison-Wesley. All rights reserved14 A-1 Chapter 14 Graphs.
Directed Graph Algorithms CSE 373 Data Structures Lecture 14.
Graphs CS-240/341. Uses for Graphs computer networks and routing airline flights geographic maps course prerequisite structures tasks for completing a.
Math443/543 Mathematical Modeling and Optimization
The Stagecoach Problem
Graphs & Graph Algorithms 2 Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
EAs for Combinatorial Optimization Problems BLG 602E.
Trip Planning Queries F. Li, D. Cheng, M. Hadjieleftheriou, G. Kollios, S.-H. Teng Boston University.
ECE669 L10: Graph Applications March 2, 2004 ECE 669 Parallel Computer Architecture Lecture 10 Graph Applications.
MNG221 - Management Science
Package Transportation Scheduling Albert Lee Robert Z. Lee.
Programming & Data Structures
1 Network Models Chapter 4 2 For a given network find the path of minimum distance, time, or cost from a starting point, the start node, to a destination,
Using Dijkstra’s Algorithm to Find a Shortest Path from a to z 1.
Scott Perryman Jordan Williams.  NP-completeness is a class of unsolved decision problems in Computer Science.  A decision problem is a YES or NO answer.
Graph Theory Hamilton Paths and Hamilton Circuits.
Representing and Using Graphs
Combinatorial Optimization Chapter 1. Problems and Algorithms  1.1 Two Problems (representative problems)  The Traveling Salesman Problem 47 drilling.
Spring 2015 Mathematics in Management Science Traveling Salesman Problem Approximate solutions for TSP NNA, RNN, SEA Greedy Heuristic Algorithms.
I can add multi-digit numbers using an open number line. Graphics:
Online Algorithms By: Sean Keith. An online algorithm is an algorithm that receives its input over time, where knowledge of the entire input is not available.
CSE 326: Data Structures Lecture #20 Graphs I.5 Alon Halevy Spring Quarter 2001.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Michael Walker. From Maps to Graphs  Make Intersections Vertices  Make Roads Edges  Result is Weighted Directed Graph  Weights: Speed Limit Length.
 Graphs  Paths  Circuits  Euler. Traveling Salesman Problems.
L3-Network Algorithms L3 – Network Algorithms NGEN06(TEK230) – Algorithms in Geographical Information Systems by: Irene Rangel, updated Nov by Abdulghani.
Shortest Paths Text Discrete Mathematics and Its Applications (5 th Edition) Kenneth H. Rosen Chapter 8.6 Based on slides from Chuck Allison, Michael T.
Genetic Algorithms and TSP Thomas Jefferson Computer Research Project by Karl Leswing.
1 Euler and Hamilton paths Jorge A. Cobb The University of Texas at Dallas.
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
Transportation, Assignment, and Network Models 9 To accompany Quantitative Analysis for Management, Twelfth Edition, by Render, Stair, Hanna and Hale Power.
© Copyright 2012 by Pearson Education, Inc. All Rights Reserved. 1 Chapter 22 Graphs and Applications.
A MapReduced Based Hybrid Genetic Algorithm Using Island Approach for Solving Large Scale Time Dependent Vehicle Routing Problem Rohit Kondekar BT08CSE053.
Hamilton Paths and Hamilton Circuits
Graphs Chapter 20.
An Example of Analyses of a Distance Matrix
Shortest Path Problems
Redraw these graphs so that none of the line intersect except at the vertices B C D E F G H.
Routing Through Networks - 1
Algorithms Detour - Shortest Path
Unsolvable Problems December 4, 2017.
EECS 203 Lecture 20 More Graphs.
Finding Heuristics Using Abstraction
Refresh and Get Ready for More
Shortest Paths Discrete Mathematics and Its Applications (7th Edition)
Discrete Mathematics and Its Applications (5th Edition)
Genome Assembly.
Shortest Paths Discrete Mathematics and Its Applications (7th Edition)
Chapter 2: Business Efficiency Business Efficiency
4. Computational Problem Solving
Discrete Mathematics and Its Applications (5th Edition)
Chapter 6 Network Flow Models.
Shortest Paths.
CSC 380: Design and Analysis of Algorithms
CSC 380: Design and Analysis of Algorithms
Shortest Paths Discrete Mathematics and Its Applications (8th Edition)
Shortest Paths Discrete Mathematics and Its Applications (7th Edition)
Shortest Paths Discrete Mathematics and Its Applications (7th Edition)
Presentation transcript:

Route Optimization Problems and Google Maps Will Cranford

Abstract Abstract: The focus of this presentation is the Shortest Path problem as well as the Travelling Salesman problem. I will consider suitable algorithms to solve these problems, computational limits on these algorithms, and data-driven approaches to solving these problems. Outside applications will also be examined.

Importance In 2016, the U.S. spent $1.4 trillion on transportation (7.5% of GDP). Small changes in efficiency make big impact.

Theoretical Underpinnings Edsger Dijkstra created a simple algorithm in 1959 which guarantees an optimal solution to any shortest path problem.

Dijkstra’s Algorithm Divide nodes into three sets: Set 1 contains all nodes for which the minimum path is known. Set 2 contains all nodes which are adjacent to the nodes in set 1 Set 3 contains the remaining nodes.

Dijkstra’s Algorithm Steps: Add the starting point to set 1. A. Consider the node just added to set 1. Remove all nodes from set 3 which are adjacent to the node just added to set 1 and add them to set 2. B. Connecting nodes in set 1 with exactly one node in set 2, find the path of least time from the starting point. Remove the node from set 2 which is the end point of the shortest path, and add it to set 1. C. Go back to step A, unless the destination has been added to set 1, in which case the shortest path has been found.

Another Visualization

Computers How do you represent a graph on a computer? One possible solution: Runtime: O(E+V*log(V))

Other Algorithms A* algorithm: Uses heuristics to find solution quickly. Bidirectional Search: Works forward from the start and backwards from the end simultaneously.

A* Algorithm

Stochasticity Lengths between nodes are never certain. Variance introduced from traffic, road conditions. What is objective: lowest expected value or highest probability of getting to the destination on time? Also have to factor in difficulty of route.

Google Maps Data driven approach. GPS allows Google to track position and velocity of all Google Maps users. Acquisition of Waze in 2013. Machine Learning?

Application Solving the Rubik’s cube: Each state is a node, each rotation is a branch. 18 branches extending from each node (3 rotations per face, 6 faces)

Traveling Salesman Problem What if you want to visit multiple destinations in one trip, and return to your starting point? (Order doesn’t matter)

Matrix Representation   # Cities   city_names = ["New York", "Los Angeles", "Chicago", "Minneapolis", "Denver", "Dallas", "Seattle",                 "Boston", "San Francisco", "St. Louis", "Houston", "Phoenix", "Salt Lake City"]   # Distance matrix   dist_matrix = [     [   0, 2451,  713, 1018, 1631, 1374, 2408,  213, 2571,  875, 1420, 2145, 1972], # New York     [2451,    0, 1745, 1524,  831, 1240,  959, 2596,  403, 1589, 1374,  357,  579], # Los Angeles     [ 713, 1745,    0,  355,  920,  803, 1737,  851, 1858,  262,  940, 1453, 1260], # Chicago     [1018, 1524,  355,    0,  700,  862, 1395, 1123, 1584,  466, 1056, 1280,  987], # Minneapolis     [1631,  831,  920,  700,    0,  663, 1021, 1769,  949,  796,  879,  586,  371], # Denver     [1374, 1240,  803,  862,  663,    0, 1681, 1551, 1765,  547,  225,  887,  999], # Dallas     [2408,  959, 1737, 1395, 1021, 1681,    0, 2493,  678, 1724, 1891, 1114,  701], # Seattle     [ 213, 2596,  851, 1123, 1769, 1551, 2493,    0, 2699, 1038, 1605, 2300, 2099], # Boston     [2571,  403, 1858, 1584,  949, 1765,  678, 2699,    0, 1744, 1645,  653,  600], # San Francisco     [ 875, 1589,  262,  466,  796,  547, 1724, 1038, 1744,    0,  679, 1272, 1162], # St. Louis     [1420, 1374,  940, 1056,  879,  225, 1891, 1605, 1645,  679,    0, 1017, 1200], # Houston     [2145,  357, 1453, 1280,  586,  887, 1114, 2300,  653, 1272, 1017,    0,  504], # Phoenix     [1972,  579, 1260,  987,  371,  999,  701, 2099,  600, 1162,  1200,  504,   0]] # Salt Lake City

Solving the TSP The Travelling Salesman problem is classified as NP-hard. Many algorithms only approximate the optimal path. Record algorithm: found optimal solution for 85,000 nodes

Applications of TSP Using a machine to drill holes in a circuit board (need optimal path)

Applications of TSP Solution:

Applications of TSP 3D printing. Supermarket shopping. Warehouse product access.

Vehicle Routing Problem A wrinkle to TSP: What if you have multiple vehicles that you can deploy across the country? (Vehicle Routing Problem) Look to minimize the maximum length of the vehicle’s trips.

Further Ideas What if you look to minimize cost (labor, gas, tolls, repair) as well as time? How will self-driving cars change things?

Recap Examined Dijkstra’s algorithm to solve the Shortest Path problem. Looked at how this algorithm would be transferred to a computer. Examined other algorithms, such as A*. Expanded to the Travelling Salesman problem. Considered applications of the TSP. ANY QUESTIONS?

Sources https://motherboard.vice.com/en_us/article/4x3pp9/the-simple- elegant-algorithm-that-makes-google-maps-possible https://en.wikipedia.org/wiki/Travelling_salesman_problem http://www- m3.ma.tum.de/foswiki/pub/MN0506/WebHome/dijkstra.pdf https://developers.google.com/optimization/routing/tsp http://algo2.iti.kit.edu/documents/routeplanning/weaOverview.pdf