Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University.

Slides:



Advertisements
Similar presentations
Lower Bounds for Additive Spanners, Emulators, and More David P. Woodruff MIT and Tsinghua University To appear in FOCS, 2006.
Advertisements

Iterative Rounding and Iterative Relaxation
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.
Finding Cycles and Trees in Sublinear Time Oded Goldreich Weizmann Institute of Science Joint work with Artur Czumaj, Dana Ron, C. Seshadhri, Asaf Shapira,
Great Theoretical Ideas in Computer Science
Bart Jansen 1.  Problem definition  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least k leaves?
Covers, Dominations, Independent Sets and Matchings AmirHossein Bayegan Amirkabir University of Technology.
Instructor Neelima Gupta Table of Contents Approximation Algorithms.
Great Theoretical Ideas in Computer Science for Some.
Bart Jansen, Utrecht University. 2  Max Leaf  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
Combinatorial Algorithms
Approximating Average Parameters of Graphs Oded Goldreich, Weizmann Institute Dana Ron, Tel Aviv University.
A Randomized Linear-Time Algorithm to Find Minimum Spanning Trees David R. Karger David R. Karger Philip N. Klein Philip N. Klein Robert E. Tarjan.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Approximation Algorithms
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Approximation Algorithms: Concepts Approximation algorithm: An algorithm that returns near-optimal solutions (i.e. is "provably good“) is called an approximation.
1 Algorithms for Large Data Sets Ziv Bar-Yossef Lecture 8 May 4, 2005
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
Michael Bender - SUNY Stony Brook Dana Ron - Tel Aviv University Testing Acyclicity of Directed Graphs in Sublinear Time.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs K. Chaudhuri, S. Rao, S. Riesenfeld, K. Talwar UC Berkeley.
1 On approximating the number of relevant variables in a function Dana Ron & Gilad Tsur Tel-Aviv University.
1 On the Benefits of Adaptivity in Property Testing of Dense Graphs Joint work with Mira Gonen Dana Ron Tel-Aviv University.
1 Algorithmic Aspects in Property Testing of Dense Graphs Oded Goldreich – Weizmann Institute Dana Ron - Tel-Aviv University.
1 On the Benefits of Adaptivity in Property Testing of Dense Graphs Joint works with Mira Gonen and Oded Goldreich Dana Ron Tel-Aviv University.
Approximating the Distance to Properties in Bounded-Degree and Sparse Graphs Sharon Marko, Weizmann Institute Dana Ron, Tel Aviv University.
Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University.
Finding a maximum independent set in a sparse random graph Uriel Feige and Eran Ofek.
Approximation Algorithms Motivation and Definitions TSP Vertex Cover Scheduling.
Finding Cycles and Trees in Sublinear Time Oded Goldreich Weizmann Institute of Science Joint work with Artur Czumaj, Dana Ron, C. Seshadhri, Asaf Shapira,
Approximating the MST Weight in Sublinear Time Bernard Chazelle (Princeton) Ronitt Rubinfeld (NEC) Luca Trevisan (U.C. Berkeley)
Theory of Computing Lecture 10 MAS 714 Hartmut Klauck.
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
GRAPHS CSE, POSTECH. Chapter 16 covers the following topics Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component,
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.
Expanders via Random Spanning Trees R 許榮財 R 黃佳婷 R 黃怡嘉.
On Centralized Sublinear Algorithms and Some Relations to Distributed Computing Dana Ron Tel-Aviv University ADGA, October 2015.
Data Structures & Algorithms Graphs
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Minimum Spanning Trees CS 146 Prof. Sin-Min Lee Regina Wang.
Topics in Algorithms 2007 Ramesh Hariharan. Tree Embeddings.
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
Graph Algorithms Maximum Flow - Best algorithms [Adapted from R.Solis-Oba]
Complexity and Efficient Algorithms Group / Department of Computer Science Testing the Cluster Structure of Graphs Christian Sohler joint work with Artur.
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.
Approximation Algorithms by bounding the OPT Instructor Neelima Gupta
Instructor Neelima Gupta Table of Contents Introduction to Approximation Algorithms Factor 2 approximation algorithm for TSP Factor.
1 CS270 Project Overview Maximum Planar Subgraph Danyel Fisher Jason Hong Greg Lawrence Jimmy Lin.
On Local Partition Oracles and their Applications
Dana Ron Tel-Aviv University
On Testing Dynamic Environments
Minimum Dominating Set Approximation in Graphs of Bounded Arboricity
Approximating the MST Weight in Sublinear Time
Finding Cycles and Trees in Sublinear Time
Hamiltonian Cycle and TSP
Hamiltonian Cycle and TSP
Dana Ron Tel-Aviv University
Graph theory Definitions Trees, cycles, directed graphs.
Haim Kaplan and Uri Zwick
From dense to sparse and back again: On testing graph properties (and some properties of Oded)
Great Theoretical Ideas in Computer Science
Lecture 18: Uniformity Testing Monotonicity Testing
Introduction Wireless Ad-Hoc Network
Winter 2019 Lecture 11 Minimum Spanning Trees (Part II)
Autumn 2019 Lecture 11 Minimum Spanning Trees (Part II)
Presentation transcript:

Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University

Graph Parameters A Graph Parameter: a function  that is defined on a graph G (undirected / directed, unweighted / weighted). For example: Average degree Number of subgraphs H in G Number of connected components Minimum weight of a spanning tree Minimum size of a vertex cover Maximum size of a matching Number of edges that should be added to make graph k-connected (distance to k-connectivity) Comment: Functions over metric spaces (e.g., Clustering measures) can be viewed as graph parameters (on weighted graphs), but that deserves a survey of its own.

Sublinear Approximation on Graphs Algorithm is given query access to G. Types of queries that consider: Neighbor queries – “who is i th neighbor of v?” Degree queries – “what is deg(v)?” Vertex-pair queries – “is there an edge btwn u and v?” ? After performing number of queries that is sublinear in size of G, should output approximation  ’ of  (G). Types of approximation that consider:  (G) ≤  ’ ≤ (1+  )  (G) (for given  : a (1+  )- approx. )  (G) ≤  ’ ≤  (G) (for fixed  : an  - approx. )  (G) ≤  ’ ≤  (G) +  n (for fixed  and given  where n is size of range of  (G) : an ( ,  )- approx. ) + weight of edge

Survey Results in 4 Parts I. Average degree and number of subgraphs II. Minimum weight spanning tree III. Minimum vertex cover and maximum matching IV. Distance to having a property (e.g. k-connectivity)

Part I: Average Degree Let d avg = d avg (G) denote average degree in G, d avg  1 Given only degree queries, can obtain (2+  )- approximation of d avg by performing O(n 1/2 /  ) queries [Feige]. Going below 2:  (n) queries With degree and neighbor queries, can obtain (1+  )- approximation by performing Õ(n 1/2 poly(1/  )) queries [Goldreich,R]. In both cases, can replace n 1/2 with (n/d avg ) 1/2 In both case, results are tight (in terms of dependence on n/d avg ). Observe: approximating average of general function with range {0,..,n-1} (degrees range) requires  (n) queries, so must exploit non-generality of degrees

Part I: Average Degree Ingredient 1: Consider partition of all graph vertices into r=O((log n)/  ) buckets: In bucket B i vertices v s.t. (1+  ) i-1 < deg(v) ≤ (1+  ) i ( = / 8 ) ) Claim: (1/n)   large i b i  (1+  ) i  d avg /(2+  ) (**) Ingredient 2: ignore small B i ’s. Take sum in (*) only over large buckets (|B i | > (  n) 1/2 /2r). Suppose can obtain for each i estimate b i =|B i |  (1  ) (1/n)   i b i  (1+  ) i = (1  )  d avg (*) How to obtain b i ? By sampling. Difficulty: if B i is small ( > n 1/2 )

Part I: Average Degree Claim: (1/n)   large i b i  (1+  ) i  d avg /(2+  ) (**) Sum of degrees = 2  num of edges small bucketslarge buckets counted twice counted once not counted Using (**) get (2+  )-approximation with Õ(n 1/2 /  2 ) degree queries (small: |B i | ≤ (  n) 1/2 /2r) Ingredient 3: Estimate num of edges counted once and compensate for them.

Part I: Average Degree small buckets large buckets Ingredient 3: Estimate num of edges counted once and compensate for them. BiBi For each large B i estimate num of edges between B i and small buckets by sampling neighbors of (random) vertices in B i. By adding this estimate to (**) get (1+  )-approx. (1/n)   large i b i  (1+  ) i (**)

Part I(b): Number of stars subgraphs Approximating avg. degree same as approximating num of edges. What about other subgraphs? [Gonen,R,Shavitt] considered length-2 paths, and more generally, s-stars. Let N s =N s (G) denote num of s-stars. Give (1+  )-approx algorithm with query complexity (degree+neighbors): Show that upper bound is tight.

Part I(b): Number of stars subgraphs N s ≤ n 1+1/s : O(n/(N s ) 1/(1+s) ) n 1+1/s ≤ N s ≤ n s : O(n 1-1/s ) N s > n s : O(n 1-1/s /(N s ) 1-1/s ) Example: s=3. (a) N s = n : O(n 3/4 ); (b) N s = n 2 : O(n 2/3 ); (c) N s = n 4 : O(1) Idea of algorithm for s=2: Also partition into buckets. Can estimate num of 2-stars with centers in large buckets. Also estimate num of 2-stars with centers in (“significant”) small buckets and at least one endpoint in large bucket by estimating num of edges between pairs of buckets.

Part II: MST (following [Czumaj,Sohler]) Consider graphs with degree bound d and weights in {1,..,W}. [Chazelle,Rubinfeld,Trevisan] give (1+  )-approximation alg using Õ(d  W/  2 ) neighbor queries. Result is tight and extends to d=d avg and weights in [1,W]. Suppose first: W=2 (i.e., weights either 1 or 2) E 1 = edges with weight 1, G 1 =(V,E 1 ), c 1 = num of connected components in G 1. Weight of MST: 2  (c 1 -1) + 1  (n-1-(c 1 -1)) = n-2+c 1 Estimate MST weight by estimating c 1

Part II: MST More generally (weights in {1,..,W}) E i = edges with weight ≤ i, G i =(V,E i ), c i = num of connected components (cc’s) in G i. Weight of MST: n - W +  i=1..W-1 c i Estimate MST weight by estimating c 1,…,c W-1. Idea for estimating num of cc’s in graph H (c(H)): For vertex v, n v = num of vertices in cc of v. Then: c(H) =  v (1/n v )

Part II: MST c(H) =  v (1/n v ) (n v = num of vertices in cc of v) Can estimate c(H) by sampling vertices v and finding n v for each (using BFS). Difficulty: if n v is large, then “expensive” Let S = {v : n v ≤ 1/  }.  v  S (1/n v )  c(H) – n/(1/  ) = c(H) -  n Alg for estimating c(H) selects  (1/  2 ) vertices, runs BFS on each selected v until finds n v or determines that n v > 1/  (i.e. v  S). Uses  (1/n v ) for sampled vertices in S to estimate c(H). Complexity: O(d/  3 ) Alg for estimating MST can run above alg on each G i with  =  /(2W) (so that when sum estimates of c i over i=1,…,W get desired approximation).

Part II: MST Comment 1: [Chazelle,Rubinfeld,Trevisan] get better complexity (total of Õ(d  W/  2 ) ) by more refined alg and analysis for cc alg. Comment 2: Have sublinear algorithm for MST in metric spaces [Czumaj,Sohler]: (1+  )-approx with complexity Õ(n poly(1/  )) (note: linear is in n 2 ). Implies (2+  )-approx with same complexity for metric TSP and min Steiner tree.

Part III: Min VC Initially considered in [Parnas,R]. First basic idea: Suppose had an oracle that for given vertex v says if v  VC for some VC that is at most factor  larger than min VC. Could get ( ,  )-approximation by sampling  (1/  2 ) vertices and querying oracle. Second idea: Can use distributed algorithms to implement oracle – If dist. alg. works in k rounds of communication, then oracle, when called on v, will emulate dist. alg. on k-distance-neighborhood of v Query complexity of each oracle call: O(d k )

Part III: Min VC By applying dist. alg. of [Kuhn,Moscibroda,Wattenhofer] get (c,  )-approx. (c>2) with complexity d O(log d) /  2, and (2,  )-approx. with complexity d O(d)poly(1/  ). Comment 1: Can replace max deg d with d avg / . Comment 2: Going below 2 :  (n 1/2 ) queries (Trevisan) 7/6:  (n) [Bogdanov,Obata,Trevisan] Comment 3: Any (c,  )-approximation:  (d avg ) queries. Sequence of improvements for (2,  )-approx [Marko,R]: d O(log(d/  )) - using dist. alg. similar to max ind. set alg of [Luby] ) [Nguyen,Onak]: 2 O(d) /  2 – emulate classic greedy algorithm (maximal matching) [Gavril],[Yanakakis] [Yoshida,Yamamoto,Ito]: O(d 4 /  2 )– better emulation [Onak,R,Rosen,Rubinfeld]: Õ(d avg poly(1/  ))

Part III(b): Maximum Matching and more [Nguyen,Onak] give (1,  )-approx for max match with complexity 2 d*O(1/  ), improved [Yoshida,Yamamoto,Ito] to d 6/  *2 (1/  ) O(1/  ) Recursive application of oracles using augmenting paths. [Hassidim,Kelner,Nguyen,Onak],[Elek] give (1,  )-approx algs on restricted graphs (e.g., planar) Can get (O(log d),  )-approx for min dominating set with complexity d O(log d) /  2 using [Kuhn,Moscibroda,Wattenhofer]

Part IV: Approximating Distance to P For graph property P, estimate fraction of edges that should be added/removed to obtain P (fraction with respect to (ub on) num of edges m). Assume m=  (n). Study of distance approximation first explicitly introduced in [Parnas,R,Rubinfeld]. Note: Already discussed alg for distance to connectivity in sparse graphs (estimate num of cc’s) For dense graphs where m=  (n 2 ) and perform vertex- pair queries, some known testing results directly give dist. approx. results: e.g.,  -cut (having a cut of size at least  n 2 ): (1,  )-approx using poly(1/  ) queries (exp(poly(1/  )) time). [Fischer,Newman]: all testable properties (comp. independent of n) have dist. approx. algs. Direct Analysis for monotone properties [Alon,Shapira,Sudakov]

Part IV: Approximating Distance to P Dist. app. for sparse graphs studied in [Marko,R] poly(k/(  d avg ))1sparsek-Edge- Connectivity d O(log(d/  )) 3bounded- degree Triangle- Freeness O(1/(  d avg ) 4 )1sparseEulerian O(1/  3 )1bounded- degree Cycle- Freeness Property Model  Complexity distance w.r.t, d  n cannot get sublin with  =1  (n 1/2 ) for sparse model Extends to subgraph-free [Hassidim,Kelner,Nguyen,Onak] give (1,  )-approx for restricted graphs: e.g. dist. to 3-col in planar graphs.

Summary Presented sublinear approximation algorithms for various graph parameters: I. Average degree and number of subgraphs II. Minimum weight spanning tree III. Minimum vertex cover and maximum matching IV. Distance to having a property (e.g. k-connectivity)

Thanks