Distance and Routing Labeling Schemes in Graphs

Slides:



Advertisements
Similar presentations
Divide and Conquer. Subject Series-Parallel Digraphs Planarity testing.
Advertisements

CS252: Systems Programming Ninghui Li Program Interview Questions.
Compact Routing in Theory and Practice Lenore J. Cowen Tufts University.
Dynamic Planar Convex Hull Operations in Near- Logarithmic Amortized Time TIMOTHY M. CHAN.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
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.
Distributed Data Structures: A Survey Cyril Gavoille (LaBRI, University of Bordeaux)
The Duals to Benzenoid Systems –Which is a simple circuit of the hexagonal grid and the region bounded by this circuit. Thus, they are subgraphs of the.
Routing, Anycast, and Multicast for Mesh and Sensor Networks Roland Flury Roger Wattenhofer RAM Distributed Computing Group.
1 Analyzing Kleinberg’s (and other) Small-world Models Chip Martel and Van Nguyen Computer Science Department; University of California at Davis.
CS728 Lecture 16 Web indexes II. Last Time Indexes for answering text queries –given term produce all URLs containing –Compact representations for postings.
Addressing, Distances and Routing in Triangular Systems with Application in Cellular and Sensor Networks Victor Chepoi, Feodor Dragan, Yan Vaxes University.
Traveling with a Pez Dispenser (Or, Routing Issues in MPLS) Anupam Gupta Amit Kumar FOCS 2001 Rajeev Rastogi Iris Reinbacher COMP670P
Compact Routing Schemes Mikkel Thorup Uri Zwick AT&T Labs – Research Tel Aviv University.
Distance-Based Location Update and Routing in Irregular Cellular Networks Victor Chepoi, Feodor Dragan, Yan Vaxes University of Marseille, France Kent.
Collective Additive Tree Spanners of Homogeneously Orderable Graphs
Collective Tree Spanners of Graphs with Bounded Parameters F.F. Dragan and C. Yan Kent State University, USA.
Collective Tree Spanners of Graphs F.F. Dragan, C. Yan, I. Lomonosov Kent State University, USA Hiram College, USA.
Collective Tree Spanners and Routing in AT-free Related Graphs F.F. Dragan, C. Yan, D. Corneil Kent State University University of Toronto.
Additive Spanners for k-Chordal Graphs V. D. Chepoi, F.F. Dragan, C. Yan University Aix-Marseille II, France Kent State University, Ohio, USA.
1 Analyzing Kleinberg’s (and other) Small-world Models Chip Martel and Van Nguyen Computer Science Department; University of California at Davis.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing © KLMH Lienig 1 FLUTE: Fast Lookup Table Based RSMT Algorithm.
Distance Approximating Trees in Graphs
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
Improved Sparse Covers for Graphs Excluding a Fixed Minor Ryan LaFortune (RPI), Costas Busch (LSU), and Srikanta Tirthapura (ISU)
Kernel Bounds for Structural Parameterizations of Pathwidth Bart M. P. Jansen Joint work with Hans L. Bodlaender & Stefan Kratsch July 6th 2012, SWAT 2012,
Efficient Labeling Scheme for Scale-Free Networks The scheme in detailsPerformance of the scheme First we fix the number of hubs (to O(log(N))) and show.
PCDN Innsbruck, Austria Feb., 2003 Optimum Interval Routing in k-Caterpillars and Maximal Outer Planar Networks Gur Saran Adhar Department of Computer.
Data Structures TREES.
Separability and Topology Control of Quasi Unit Disk Graphs Philippe Giabbanelli CMPT 880 – Spring 2008.
Union Find ADT Data type for disjoint sets: makeSet(x): Given an element x create a singleton set that contains only this element. Return a locator/handle.
CSCE350 Algorithms and Data Structure Lecture 19 Jianjun Hu Department of Computer Science and Engineering University of South Carolina
Data Structures and Algorithms in Parallel Computing Lecture 2.
Speeding Up Enumeration Algorithms with Amortized Analysis Takeaki Uno (National Institute of Informatics, JAPAN)
Distance and Routing Labeling Schemes in Graphs with Applications in Cellular and Sensor Networks Feodor F. Dragan Computer Science Department Kent State.
PC-Trees & PQ-Trees. 2 Table of contents Review of PQ-trees –Template operations Introducing PC-trees The PC-tree algorithm –Terminal nodes –Splitting.
Implicit Representation of Graphs Paper by Sampath Kannan, Moni Naor, Steven Rudich.
Stephen Alstrup (U. Copenhagen) Esben Bistrup Halvorsen (U. Copenhagen) Holger Petersen (-) Aussois – ANR DISPLEXITY - March 2015 Cyril Gavoille (LaBRI,
Succinct Routing Tables for Planar Graphs Compact Routing for Graphs Excluding a Fixed Minor Ittai Abraham (Hebrew Univ. of Jerusalem) Cyril Gavoille (LaBRI,
PC-Trees & PQ-Trees. 2 Table of contents Review of PQ-trees –Template operations Introducing PC-trees The PC-tree algorithm –Terminal nodes –Splitting.
Graphs and Algorithms (2MMD30)
Algorithms for Finding Distance-Edge-Colorings of Graphs
Succinct Data Structures
School of Computing Clemson University Fall, 2012
Forbidden-Set Distance Labels for Graphs of Bounded Doubling Dimension
Labeling Schemes with Forbidden-Sets
Lectures on Network Flows
PC trees and Circular One Arrangements
Accessing nearby copies of replicated objects
Algorithms and Complexity
Orthogonal Range Searching and Kd-Trees
CS120 Graphs.
Graph Algorithms Using Depth First Search
Adjacency labeling schemes and induced-universal graphs
Graphs & Graph Algorithms 2
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Distance and Routing Labeling Schemes in Graphs
Graphs Chapter 11 Objectives Upon completion you will be able to:
Distance Approximating Trees in Graphs Brandstaedt & Chepoi & Dragan, ESA’97, J. of Algorithms ’99, European J. of Combinatorics 2000 A graph G=(V,E)
Lectures on Graph Algorithms: searching, testing and sorting
Elementary Graph Algorithms
Compact Routing Schemes
Compact routing schemes with improved stretch
How to use spanning trees to navigate in Graphs
Switching Lemmas and Proof Complexity
Routing in Networks with Low Doubling Dimension
Forbidden-set labelling in graphs
Distance and Routing Labeling Schemes in Graphs with Applications in Cellular and Sensor Networks Feodor F. Dragan Computer Science Department Kent State.
Presentation transcript:

Distance and Routing Labeling Schemes in Graphs Feodor F. Dragan Computer Science Department Kent State University http://www.cs.kent.edu/~dragan

Talk is based on Known results for trees Kannan&Naor&Rudich’88, Peleg’99 and ’00, Thorup&Zwick’01, Fraigniaud&Gavoille’01

Traditional graph representation Store adjacency information in global data structure Requires much storage Node labels contain no information, serve only as “pointers” to global data structure

Local graph representation IDEA: Store local pieces of information, i.e., Associate label Label(v) with each node v, s.t. labels allow inferring adjacency information locally, without using additional memory and information Question: Can this be done compactly & efficiently?

“Ancient” Example: Hamming adjacency labeling Goal: Label each node v with m-bit label Label(v) s.t. Label(v), Label (u) allow deciding if u and v are adjacent: [Breuer&Folkman’67]: For any n-node graph there exists a Hamming distance adjacency labeling with m=2nD, T=4D -4, where D = max node degree. Question: Can this be done with short labels?

Interest Revived: Adjacency Labeling [Kannan&Naor&Rudich’88] What’s in label? Adjacency-labeling (for graph family F ): Function Label labeling nodes of any graph in F with short distinct labels (compactness) Efficient algorithm for deciding adjacency of two nodes given their labels (efficiency) (polylogarithmic labels  polylogarithmic time) Note: - Algorithm knows nothing beyond the labels (even, it does not know which graph they come from)

Adjacency Labeling on Trees [Kannan&Naor&Rudich’88] Labeling: 1. Arbitrarily root the tree and prelabel each node v with distinct integer I(v) from [1..n]. 2. Label root r by Label(r)=(I(r)). 3. Label each non-root node v with parent w by Label(v)=(I(v),I(w)). Labels contain bits

Adjacency Labeling on Trees [Kannan&Naor&Rudich’88] Labeling: (with bits) 1. Arbitrarily root the tree and prelabel each node v with distinct integer I(v) from [1..n]. 2. Label root r by Label(r)=(I(r)). 3. Label each non-root node v with parent w by Label(v)=(I(v),I(w)). Adjacency Decoder for u,v: Check if 1st entry in Label(v) = 2nd entry in Label(u) or vice versa. Constant time!

Extensions Labels contain bits Bounded arboricity graphs Bounded degree Bounded-genus graphs (e.a., planar graphs) Intersection-based graphs (e.a., interval graphs) c-decomposable graphs Question (compactness): Is this doable for all graphs with -bit labels?

Negative results Note: Graph class F is adjacency-labelable using -bit labels  each G from F is fully defined by bits  # of represented graphs Therefore: Graph family F containing n-node graphs is not adjacency-labelable using -bit labels. Negative examples: Bipartite / chordal graphs

Question: Can this be done for other. types of information Question: Can this be done for other types of information beyond adjacency? In general graphs Distance Edge / node connectivity Routing Flow … In trees Ancestry Lowest common ancestor (LCA or NCA) Depth of NCA (separation level) Distance

Question: Can this be done for other. types of information Question: Can this be done for other types of information beyond adjacency? In general graphs Distance Edge / node connectivity Routing Flow … In trees Ancestry Lowest common ancestor (LCA or NCA) Depth of NCA (separation level) Distance

Distance Labeling Scheme Goal: Short labels that encode distances and distance decoder, an algorithm for inferring the distance between two nodes only from their labels (in time polynomial in the label length) …a method for storing and extracting distances in a “distributed” fashion… Labeling: v  Label(v) Distance decoder: D(Label(v), Label(u))  dist(u,v) Distance

Simple examples Enjoy -bit distance labeling schemes with constant-time decoder Distance

[Gavoille,&Peleg&Perennes&Raz’01] General graphs Easy labeling: Label each node in n-node graph G on with all distances Hence, for the class of all n-node graphs Distance Currently: [Gavoille,&Peleg&Perennes&Raz’01] Similar bounds apply for other large graph families (bipartite / chordal / …)

Distance labeling on trees [Peleg’99] Preprocessing: Arbitrarily label each node v of T with distinct integers I(v) from [1..n]

Recursive partitioning and decomposition tree Tree separator: node v in n-node tree T, whose removal breaks T into subtrees of size at most n/2. Known fact: Every tree has a separator (can be found in linear time) H T

Labeling H T Construct for H Depth of NCA labeling scheme ( -bit labels [Peleg’00] and constant (can be made) decision time) Then, v  A(v) Hence, -bit labels

Constant Time Distance Decoder H T (A(u),2,2,0)) (A(v),6,2,1,0)) Given Label(u) and Label(v) Function distance_decoder_trees(Label(u),Label(v)) Extract A(u), A(v) Use A(u), A(v) to find the depth k of NCA(u,v) in H  1 Output , by extracting appropriate entries from labels  2+2=4

Lower bounds and Planar graphs [Gavoille,&Peleg&Perennes&Raz’01]

Routing Labeling Scheme Goal: Short labels that encode the routing information and routing protocol, an algorithm for inferring port number of the first edge on a shortest path from source to destination, giving only labels and nothing else Labeling: v  Label(v) Distance decoder: R(Label(v), Label(u))  port(v,u) Distance

General graphs Easy labeling (full routing tables): Label each node in n-node graph G on with full routing information Hence, for the class of all n-node graphs one needs nlogn -bit labels Distance Currently: Nothing better can be done for general graphs if we insist on routing via shortest paths

Labeling trees with -bit labels Construct for H Depth of NCA labeling scheme ( -bit labels Then, v  A(v) Hence, -bit labels

Constant Time Routing Decision H Given Label(v) and Label(u) Function routing_decision_trees(Label(u),Label(v)) Extract A(v), A(u) Use A(v), A(u) to find the depth k of NCA(v,u) in H  1 If k<h(v) output from Label(v)  port(4,12)=1 else (i.e., k=h(v)) output from Label(u)

Best routing labeling scheme for trees and Planar graphs [Thorup&Zwick’01] For family of n-node trees there is a routing labeling scheme with labels of size O(logn)-bits per node and constant time routing decision. [Fraigniaud&Gavoille’01] For family of n-node trees there is a routing labeling scheme with labels of size -bits per node and constant time routing decision. [Gavoille&Hanusse’99] For family of n-node planar graphs there is a routing labeling scheme with labels of size (8n +o(n))-bits per node.