PLANAR SHORTEST PATH & R-DIVISIONS Dwyane George March 10, 2015.

Slides:



Advertisements
Similar presentations
Graph Algorithms - 3 Algorithm Design and Analysis Victor AdamchikCS Spring 2014 Lecture 13Feb 12, 2014Carnegie Mellon University.
Advertisements

Single Source Shortest Paths
Every edge is in a red ellipse (the bags). The bags are connected in a tree. The bags an original vertex is part of are connected.
22C:19 Discrete Math Graphs Fall 2010 Sukumar Ghosh.
O(N 1.5 ) divide-and-conquer technique for Minimum Spanning Tree problem Step 1: Divide the graph into  N sub-graph by clustering. Step 2: Solve each.
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
1 Discrete Structures & Algorithms Graphs and Trees: III EECE 320.
Compact and Low Delay Routing Labeling Scheme for Unit Disk Graphs Chenyu Yan, Yang Xiang, and Feodor F. Dragan (WADS 2009) Kent State University, Kent,
Breadth-First Search Seminar – Networking Algorithms CS and EE Dept. Lulea University of Technology 27 Jan Mohammad Reza Akhavan.
Graphs Chapter 12. Chapter Objectives  To become familiar with graph terminology and the different types of graphs  To study a Graph ADT and different.
 Graph Graph  Types of Graphs Types of Graphs  Data Structures to Store Graphs Data Structures to Store Graphs  Graph Definitions Graph Definitions.
MIN-COST ABORESCENCES YQ Lu. Aborescence Definition: Given a directed graph G=(V,E) and a root r, an aborescence rooted at r is a subgraph T that each.
HCS Clustering Algorithm
What is the next line of the proof? a). Let G be a graph with k vertices. b). Assume the theorem holds for all graphs with k+1 vertices. c). Let G be a.
Chapter 9: Greedy Algorithms The Design and Analysis of Algorithms.
Traveling with a Pez Dispenser (Or, Routing Issues in MPLS) Anupam Gupta Amit Kumar FOCS 2001 Rajeev Rastogi Iris Reinbacher COMP670P
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Graphs Chapter 12. Chapter 12: Graphs2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study a Graph.
Spring 2010CS 2251 Graphs Chapter 10. Spring 2010CS 2252 Chapter Objectives To become familiar with graph terminology and the different types of graphs.
Is the following graph Hamiltonian- connected from vertex v? a). Yes b). No c). I have absolutely no idea v.
1 Separator Theorems for Planar Graphs Presented by Shira Zucker.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Tools for Planar Networks Grigorios Prasinos and Christos Zaroliagis CTI/University of Patras 3 rd Amore Research Seminar – Oegstgeest, The Netherlands,
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 O’Rourke Chapter 8 Motion Planning.
The Shortest Path Problem
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
Using Dijkstra’s Algorithm to Find a Shortest Path from a to z 1.
A Shortest Path Algorithm. Motivation Given a connected, positive weighted graph Find the length of a shortest path from vertex a to vertex z.
A Simple Parallel Algorithm for the Single-Source Shortest Path Problem on Planar Digraphs Authors: Jesper L. Traff and Christos D. Zaroliagis Citation:
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
Lecture 12-2: Introduction to Computer Algorithms beyond Search & Sort.
Planar Graphs: Euler's Formula and Coloring Graphs & Algorithms Lecture 7 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.:
COSC 2007 Data Structures II Chapter 14 Graphs III.
7.1 and 7.2: Spanning Trees. A network is a graph that is connected –The network must be a sub-graph of the original graph (its edges must come from the.
Module 5 – Networks and Decision Mathematics Chapter 23 – Undirected Graphs.
Shortest Paths and Dijkstra’s Algorithm CS 105. SSSP Slide 2 Single-source shortest paths Given a weighted graph G and a source vertex v in G, determine.
Shortest Path Algorithms. Definitions Variants  Single-source shortest-paths problem: Given a graph, finding a shortest path from a given source.
The countable character of uncountable graphs François Laviolette Barbados 2003.
Partial Soluti on and Entropy Tadao Takaoka Department of Computer Science University of Canterbury Christchurch, New Zealand.
A deterministic near-linear time algorithm for finding minimum cuts in planar graphs Thank you, Steve, for presenting it for us!!! Parinya Chalermsook.
Data Structures and Algorithms in Parallel Computing Lecture 2.
Graphs Chapter 12. Chapter 12: Graphs2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study a Graph.
Minimum- Spanning Trees
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Introduction to Algorithms All-Pairs Shortest Paths My T. UF.
Great Theoretical Ideas in Computer Science for Some.
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.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. Fast.
The geometric GMST problem with grid clustering Presented by 楊劭文, 游岳齊, 吳郁君, 林信仲, 萬高維 Department of Computer Science and Information Engineering, National.
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
Trees.
Minimum Spanning Trees
Greedy Technique.
Computing Connected Components on Parallel Computers
The countable character of uncountable graphs François Laviolette Barbados 2003.
Minimum Spanning Tree 8/7/2018 4:26 AM
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
Minimum Spanning Trees
Polygon Triangulation
Graph.
Haitao Wang Utah State University SoCG 2017, Brisbane, Australia
Chapter 15 Graph Theory © 2008 Pearson Addison-Wesley.
EE5900 Advanced Embedded System For Smart Infrastructure
Sorting and Divide-and-Conquer
CSE 417: Algorithms and Computational Complexity
GRAPH THEORY Properties of Planar Graphs Ch9-1.
Agenda Review Lecture Content: Shortest Path Algorithm
Treewidth meets Planarity
GRAPH THEORY Properties of Planar Graphs Ch9-1.
Presentation transcript:

PLANAR SHORTEST PATH & R-DIVISIONS Dwyane George March 10, 2015

Outline  Definitions  Algorithm: Single-Source Shortest Path (SSSP)  r-Division (Clustering)  Runtime Analysis  Proof of Correctness

Planar Graphs  Definition: a graph G that can be embedded in a plane, such that the edges only intersect at the endpoints Figure 1: Example of Planar Graph, G

Problem: Single Source Shortest Path (SSSP)  Given planar graph G = (V, E) and a source node v in V  Goal: Compute shortest path distance d G (s, v) for all v in V and encode the shortest path tree  Assumption: Non-negative edge lengths

Problem Example What’s the SSSP solution for the above planar graph with a source node at 4?

Known Algorithms  General Graphs  Dijkstra’s Algorithm: O(m+nlogn)  Planar Graphs – can we do better?  Idea: r-Division

r-Division  Definition: A decomposition of G into:  O(n/r) edge disjoint pieces – sub-graphs (not necessarily connected)  Each piece has ≤ r vertices  O(√r) boundary vertices – vertices with edges to at least two pieces  Exists O(nlogr) time algorithm to compute

Example: r-Division Figure 2: Example of r-division Source: [Fre87, p. 1006, Fig. 1] In this r-division, what is r?

SSSP Algorithm  Idea: Dijkstra’s SSSP algorithm but with limited attention span  Dijkstra’s is much cheaper on a cluster than on G  Dijkstra’s: O(nlogn)  Mostly working on vertex sets of size log 4 n  Algorithm Main Idea  Run r-Division on G with r = log 4 n  Repeat: Choose piece P with the minimum edge in G Run Dijkstra’s algorithm on P for logn iterations

SSSP Runtime  Runtime: O(nloglogn)  Can use vector r-Division to achieve further speedup to O(n)  Significantly more complex

Planar Separator Theorem  For any n-vertex planar graph G = (V, E), there exists partitions of vertices A, S, B s. t. each of A and B has at most 2n/3 vertices, S has O(√n) vertices, and there are no edges with one endpoint in A and one in B. A and B need not be connected sub-graphs. S is called the separator.

Separator Theorem to Form r-Division  While a piece has size > r  Invoke theorem recursively to compute r-division  Runtime Analysis  T(n) = 2T(n/2) + O(n)  O(nlogn) time  Can we do better?

Fast r-Division  Theorem: r-Division can be computed in O(nlogr) time  Use ρ -clustering to improve over O(nlogn)  Definition: ρ -clustering is a decomposition of G into O(n/ ρ ) vertex-disjoint connected pieces each with Θ ( ρ ) vertices  Computable in O(n) time, assuming degree ≤ 3 for all v in V

Fast r-Division Algorithm  Algorithm:  ρ -clustering with ρ =√r  Contract pieces into single nodes to form G*: simple planar graph on n* = O(n/√r) vertices  Run naïve r-Division on G*  Expand pieces back, new pieces have size between r and r 3/2 Size r if no nodes in a division is a piece Size r*√r = r 3/2 if all nodes in a division is a piece Runtime: Σ O(S i logS i ) = O(nlogr)

r-Division Runtime Analysis OperationCost per CallNumber of CallsTotal Operation Cost ρ -clustering O(n)*O(1)O(n) Contraction of Pieces O(n/√r)O(1)O(n/√r) Naïve r-DivisionO((n/√r)log(n))O(1)O((n/√r)log(n)) Expansion of Pieces = O(S i logS i ) = O(S i logr) = O((n/√r)logr) O(√r)O(nlogr) TotalO(nlogr) *Assumes degree ≤ 3 for all v in V

r-Division Correctness  Fast r-Division is equivalent to the naïve algorithm  ρ -clustering with ρ =√r ensures that we produce O(√r) boundary vertices  Contracting nodes does not lose data encoded in original graph  Expanding the pieces back to the original G preserves the original graph structure with r pieces and O(n/r) edge disjoint pieces  r-Division critical in many algorithms, such as SSSP  Speed is important