Localized Data Structures

Slides:



Advertisements
Similar presentations
all-pairs shortest paths in undirected graphs
Advertisements

Distance and Routing Labeling Schemes in Graphs
Competitive fault tolerant Distance Oracles and Routing Schemes Weizmann Open U Weizmann Bar Ilan Shiri Chechik Michael Langberg David Peleg Liam Roditty.
Dynamic Graph Algorithms - I
Compact Routing in Theory and Practice Lenore J. Cowen Tufts University.
Fast Algorithms For Hierarchical Range Histogram Constructions
Cse 521: design and analysis of algorithms Time & place T, Th pm in CSE 203 People Prof: James Lee TA: Thach Nguyen Book.
Distributed Data Structures: A Survey Cyril Gavoille (LaBRI, University of Bordeaux)
CS774. Markov Random Field : Theory and Application Lecture 17 Kyomin Jung KAIST Nov
Information Networks Small World Networks Lecture 5.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
Navigating Nets: Simple algorithms for proximity search Robert Krauthgamer (IBM Almaden) Joint work with James R. Lee (UC Berkeley)
Chapter 3 The Greedy Method 3.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
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.
1 Approximate Distance Oracles Mikkel Thorup AT&T Research Uri Zwick Tel Aviv University.
Collective Tree Spanners of Graphs with Bounded Parameters F.F. Dragan and C. Yan Kent State University, USA.
1 Analyzing Kleinberg’s (and other) Small-world Models Chip Martel and Van Nguyen Computer Science Department; University of California at Davis.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
Roger ZimmermannCOMPSAC 2004, September 30 Spatial Data Query Support in Peer-to-Peer Systems Roger Zimmermann, Wei-Shinn Ku, and Haojun Wang Computer.
Distributed Algorithms on a Congested Clique Christoph Lenzen.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Improved Sparse Covers for Graphs Excluding a Fixed Minor Ryan LaFortune (RPI), Costas Busch (LSU), and Srikanta Tirthapura (ISU)
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.
Complexity of Bellman-Ford
Approximate Distance Oracles Mikkel Thorup and Uri Zwick Presented By Shiri Chechik.
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.
A correction The definition of knot in page 147 is not correct. The correct definition is: A knot in a directed graph is a subgraph with the property that.
Distance and Routing Labeling Schemes in Graphs with Applications in Cellular and Sensor Networks Feodor F. Dragan Computer Science Department Kent State.
Graphs Slide credits:  K. Wayne, Princeton U.  C. E. Leiserson and E. Demaine, MIT  K. Birman, Cornell U.
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,
1 Plaxton Routing. 2 History Greg Plaxton, Rajmohan Rajaraman, Andrea Richa. Accessing nearby copies of replicated objects, SPAA 1997 Used in several.
Introduction to NP Instructor: Neelima Gupta 1.
Stephen Alstrup (U. Copenhagen) Esben Bistrup Halvorsen (U. Copenhagen) Holger Petersen (-) Aussois – ANR DISPLEXITY - March 2015 Cyril Gavoille (LaBRI,
Data Structures for Emergency Planning Cyril Gavoille (LaBRI, University of Bordeaux) 8 th FoIKS Bordeaux – March 3, 2014.
Succinct Routing Tables for Planar Graphs Compact Routing for Graphs Excluding a Fixed Minor Ittai Abraham (Hebrew Univ. of Jerusalem) Cyril Gavoille (LaBRI,
Fully Dynamic Approximate Distance Oracles for Planar Graphs via Forbidden-Set Distance Labels Presented by: Shiri Chechik (Weizmann Institute) Joint with:
Algorithms for Finding Distance-Edge-Colorings of Graphs
Forbidden-Set Distance Labels for Graphs of Bounded Doubling Dimension
Chapter 5 : Trees.
Progress and Challenges for Labeling Schemes
Improved Randomized Algorithms for Path Problems in Graphs
Labeling Schemes with Forbidden-Sets
Parameterized complexity Bounded tree width approaches
Accessing nearby copies of replicated objects
Algorithms and Complexity
Adjacency labeling schemes and induced-universal graphs
Graphs & Graph Algorithms 2
Randomized Algorithms CS648
Distance and Routing Labeling Schemes in Graphs
Near-Optimal (Euclidean) Metric Compression
Bart Jansen Polynomial Kernels for Hard Problems on Disk Graphs
REDUCESEARCH Polynomial Kernels for Hitting Forbidden Minors under Structural Parameterizations Bart M. P. Jansen Astrid Pieterse ESA 2018 August.
cse 521: design and analysis of algorithms
Introduction Wireless Ad-Hoc Network
Compact Routing Schemes
Approximate Distance Oracles
2018, Spring Pusan National University Ki-Joune Li
Compact routing schemes with improved stretch
How to use spanning trees to navigate in Graphs
Distance-preserving Subgraphs of Interval Graphs
Important Problem Types and Fundamental Data Structures
New Jersey, October 9-11, 2016 Field of theoretical computer science
GRAPHS.
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:

Localized Data Structures Cyril Gavoille (LaBRI, University of Bordeaux) LOCALITY 2007 Portland, Oregon

Contents Efficient data structures Localized data structures Informative labeling schemes Conclusion

1. Efficient data structures (Tarjan’s like) Example 1: A tree (static) T with n vertices Question: nearest common ancestor nca(x,y) for some vertices x,y? Note: queries (x,y) are not known in advance (on-line queries on a static tree)

[Harel-Tarjan ’84] Each tree with n vertices has a data structure of O(n) space (computable in linear time) such that nca queries can be answered in constant time.

with dist(x,y) ≤ δ(x,y) ≤ k.dist(x,y) Example 2: A weighted graph G with n vertices, and a parameter k≥1 Question: a k-approximation δ(x,y) on dist(x,y) in G for some vertices x,y? with dist(x,y) ≤ δ(x,y) ≤ k.dist(x,y)

[Thorup-Zwick - J.ACM ’05] Each undirected weighted graph G with n vertices, and each integer k≥1, has a data structure of O(k.n1+1/k) space (computable in O(km.n1/k) expected time) such that (2k-1)-approximated distance queries can be answered in O(k) time. Essentially optimal, related to an Erdös Conjecture.

2. Localized data structures A network x Typical questions are: Answer to query Q with the local knowledge of x (or its vicinity), so without any access to a global data structure.

Example 1: Distributed Hash Tables (DHT) set of peers logical network x Query at x: who has any mpeg file named ‘‘Sta*Wa*’’? Answer: go to w and ask it. x does not know, but w certainly knows … at least a pointer

Example 2: Routing in a physical network Query at x: next hop to go to y?

Example 3: in a dynamic setting A growing rooted tree Query at x: the number of descents of x (or a constant approximation of it) It is possible to maintain a 2-approximation on the number of descendants with O(log2n) amortized messages of O(loglogn) bits each, n number of inserted vertices. [Afek,Awerbuch,Plokin,Saks – J.ACM ’96]

The same as for global data structures: Goals are: The same as for global data structures: Low preprocessing time Small size data structure Fast query time Efficient updates + Smaller and balanced local data structures + Low communication cost (trade-offs), for multiple hops answers

3. Informative Labeling Schemes For the talk A static network/graph Queries: involve only vertices Answers: do not require any communication (direct data structures)

Question: dist(x,y) in a graph G? (with localized data structure) for graph G x y Answering to dist(x,y) consists only in inspecting the local data structure of x and of y. Main goal: minimize the maximal size of a local data structure. Wish: |DS(x,G)| « |DS(G)|, ideally |DS(x,G)| ≈ (1/n).|DS(G)|

[Thorup-Zwick - J.ACM ’05] … Moreover, each vertex w  L(w) of Õ(n1/k) bits such that a (2k-1)-approximation on dist(x,y) can be answered from L(x) and L(y) only. n1+1/k w x y Overlap: Õ(1) n1/k

Informative Labeling Schemes (more formally) [Peleg ’00] Let P be a graph property defined on pairs of vertices (can be extended to any tuple), and let F be a graph family. A P-labeling scheme for F is a pair ‹L,f› such that:  G  F , u,v G: (labeling) L(u,G) is a binary string (decoder) f(L(u,G),L(v,G)) = P(u,v,G)

Some P-labeling schemes Adjacency Distance (exact or approximate) First edge on a (near) shortest path (compact routing, labeled-based routing) Ancestry, parent, nca, sibling relation in trees Edge/vertex connectivity, flow Proof labeling systems [Korman, Kutten, Peleg] Small-world & navigability Forbidden set [Courcelle, Twigg]

Ancestry in rooted trees Motivation: [Abiteboul,Kaplan,Milo ’01] The <TAG> … </TAG> structure of a huge XML data-base is a rooted tree. Some queries are ancestry relations in this tree. Use compact index for fast query XML search engine. Here the constants do matter. Saving 1 byte on each entry of the index table is important. Here n is very large, ~ 109. Ex: Is <“distributed computing”> descendant of <book_title>?

Folklore? [Santoro, Khatib ’85] DFS labeling 1 L(x)=[2,18] 3 4 5 6 7 8 9 10 [13,18] 18 [22,27] 24 27 12 11 14 16 23 26 25 17 15 21 20 19 [a,b] [c,d]? 2logn bit labels

Upper bound: logn + O(logn) bits [Alstrup,Rauhe – Siam J.Comp. ’06] Upper bound: logn + O(logn) bits Lower bound: logn + (loglogn) bits 1 22 19 2 27 8 21 20 23 24 3 7 10 25 26 9 13 4 5 6 12 18 11 15 14 17 16

Adjacency Labeling / Implicit Representation P(x,y,G)=1 iff xy in E(G) [Kanan,Naor,Rudich – STOC ’92] O(logn) bit labels for: trees (and forests) bounded arboricity graphs (planar, …) bounded treewidth graphs In particular: 2logn bits for trees 4logn bits for planar

Small Universal Induced Graph Acutally, the problem is equivalent to an old combinatorial problem: [Babai,Chung,Erdös,Graham,Spencer ’82] Small Universal Induced Graph U is an universal graph for the family F if every graph of F is isomorphic to an induced subgraph of U b e a c d f g

b b f c a g e c a g c g d e e Universal graph U (fixed for F) Graph G of F |L(x,G)| = log2|V(U)|

Best known results/Open questions Bounded degree graphs: 1.867 logn [Alon,Asodi - FOCS ’02] Trees: logn + O(log*n) [Alstrup,Rauhe - FOCS ’02]  Planar: 3logn + O(log*n) Planar: 2logn + O(loglogn) [Gavoille,Labourel - ESA ’07] x v Z y log*n = min{ i0 | log(i)n 1}

logn + O(1) bits for this family? Lower bounds?: logn + (1) for planar No hereditary family with n!2O(n) labeled graphs (trees, planar, bounded genus, bounded treewidth,…) is known to require labels of logn + (1) bits. logn + O(1) bits for this family?

message header=hop-count Distance P(x,y,G)=dist(x,y) in G Motivation: [Peleg ’99] If a short label (say of polylogarithmic size) can be added to the address of the destination, then routing to any destination can be done without routing tables and with a “limited” number of messages. dist(x,y) x y message header=hop-count

A selection results (n) bits for general graphs 1.56n bits, but with O(n) time decoder! [Winkler ’83 (Squashed Cube Conjecture)] 11n bits and O(loglogn) time decoder [Gavoille,Peleg,Pérennès,Raz ’01] (log2n) bits for trees and bounded treewidth graphs, … [Peleg ’99, GPPR ’01] (logn) bits and O(1) time decoder for interval, permutation graphs, … [ESA ’03]:  O(n) space O(1) time data structure, even for m=(n2)

Results (cont’d) (logn.loglogn) bits and (1+o(1))- approximation for trees and bounded treewidth graphs [GKKPP – ESA ’01] More recently: doubling dimension- graphs Every radius-2r ball can be covered by  2 radius-r balls Euclidean graphs have =O(1) Include bounded growing graphs Robust notion

Distance labeling for doubling dimension- graphs (-O() logn.loglogn) bits (1+)-approximation for doubling dimension- graphs [Gupta,Krauthgamer,Lee – FOCS ’03] [Talwar – STOC ’04] [Mendel,Har-Peled – SoCG ’05] [Slivkins - PODC ’05]

Distance labeling for planar O(log2n) bits for 3-approximation [Gupta,Kumar,Rastogi – Siam J.Comp ’05] O(-1log2n) bits for (1+)-approximation [Thorup – J.ACM ’04] (n1/3)  ?  Õ(n) for exact distance O(-1log2n) bits for (1+)-approximation for graphs excluding a fixed minor (K5,K6,…) [Abraham,Gavoille – PODC ’06]

Small-World & Navigability [Kleinberg] v t u Augmented graph: (G,P) [base graph,distributions] P(u,v) = Pr(u has v as long range contact) Greedy Routing: closest neighbor (in G) Expected number of hops (according to P)

Small-World & Navigability u Uniform distribution: P(u,v)=1/n r-harmonic distribution: P(u,v)  1/d(u,v)r Note: for harmonic need to know distances in G in order to compute P

Small-World & Navigability How much complicated is P? Design a “simple” distribution with a low expected number of hops for G k-navigability labeling scheme is a labeling scheme <L,f> st: u,v of G P(u,v)=f(L(u,G),L(v,G)) Expected #hops  k

Navigability: Results All graphs [uniform]: O(√n)-navigability with logn-bit labels Grids [in DISC ’05]: O(logn)-navigability with logn-bit labels Trees [Fraigniaud et al.]: O(log2n)-navigability with O(log2n) bits O(log3n)-navigability with logn bits

Navigability: Results (cont’d) Bounded path-shape graphs [SPAA ‘07]: O(ps(G)·log2n)-navigability with logn bits [bounded tree-width, bounded path-length, AT-free, permutation, interval graphs … have ps=O(logn)] All graphs: Õ(n1/3)-navigability, but with O(n) bits! Questions: - smallest k=k(n) for k-navigability graphs currently: c√logn  k  Õ(n1/3) - o(√n)-navigability with polylog(n) labels

Forbidden-Set Labeling [Courcelle,Twigg ‘07] Problem: Design a routing scheme for G st for every subset X of “forbidden” nodes (crashes, malicious, …) routing tables can be updated efficiently provided X.  This capture routing policies Extension: Forbidden-set P-labeling <L,f> st X, P(u,v,G\X)=f(L(u,G),L(u,G),L(X,G))

Forbidden-Set Labeling: Results Example: Connectivity in trees: P(u,v,T\X)=TRUE iff u and v are in the same connected component of T\X.  can be done with O(logn)-bit labels. [Courcelle, Twigg – STACS ‘07] If G has bounded “clique-width” (generalization of tree-width) and every monadic second order predicate P (distances, connectivity, …) then labels of O(log2n)-bit suffice. Note: same (optimal) bounds for distances in trees as the static case, but do not include planar …

Conclusion Labeling scheme for distributed computing is a rich concept. Many things remain to do, specially lower bounds

Lower bounds for planar [Gavoille,Peleg,Pérennès,Raz – SODA ’01] n=#vertices ~ k3 #critical edges ~ k2 #labels =2k   |label|> k2/ 2k ~ n1/3

Proof Labeling Systems [Korman,Kutten,Peleg – PODC ’05] A graph G with a state Su at each vertex u: (G,S) A global property P (MST, 3-coloring, …) A marker algorithm applied on (G,S) that returns a label L(u) for u A binary decoder (checker) for u applied on N(u): fu = f(Su,L(u),L(v1)…L(vk)) ∈ {0,1} G has property P  fu=1 u G hasn't prop. P  w, fw=0 whatever the labels are S1 S4 S2 S3 S5 u v1 v3 v2

What is the knowledge needed for local verifications of global properties?