Approximating matching size from random streams

We present a streaming algorithm that makes one pass over the edges of an unweighted graph presented in random order, and produces a polylogarithmic approximation to the size of the maximum matching in the graph, while using only polylogarithmic space. Prior to this work the only approximations known were a folklore O(√n) approximation with polylogarithmic space in an n vertex graph and a constant approximation with Ω(n) space. Our work thus gives the first algorithm where both the space and approximation factors are smaller than any polynomial in n. Our algorithm is obtained by effecting a streaming implementation of a simple "local" algorithm that we design for this problem. The local algorithm produces a O(k · n1/k) approximation to the size of a maximum matching by exploring the radius k neighborhoods of vertices, for any parameter k. We show, somewhat surprisingly, that our local algorithm can be implemented in the streaming setting even for k = Ω(log n/log log n). Our analysis exposes some of the problems that arise in such conversions of local algorithms into streaming ones, and gives techniques to overcome such problems.

[1]  Noga Alon,et al.  Space-efficient local computation algorithms , 2011, SODA.

[2]  Sudipto Guha,et al.  Linear programming in the semi-streaming model with application to the maximum matching problem , 2011, Inf. Comput..

[3]  Mohammad Mahdian,et al.  Online bipartite matching with random arrivals: an approach based on strongly factor-revealing LPs , 2011, STOC '11.

[4]  Aranyak Mehta,et al.  Online bipartite matching with unknown distributions , 2011, STOC '11.

[5]  Qin Zhang,et al.  Communication Complexity of Approximate Maximum Matching in Distributed Graph Data , 2013 .

[6]  Venkatesan Guruswami,et al.  Superlinear Lower Bounds for Multipass Graph Processing , 2013, Computational Complexity Conference.

[7]  Claire Mathieu,et al.  Maximum Matching in Semi-streaming with Few Passes , 2011, APPROX-RANDOM.

[8]  Anand Srivastav,et al.  Bipartite Graph Matchings in the Semi-streaming Model , 2009, ESA.

[9]  Yishay Mansour,et al.  A Local Computation Approximation Scheme to Maximum Matching , 2013, APPROX-RANDOM.

[10]  Mikhail Kapralov,et al.  Better bounds for matchings in the streaming model , 2012, SODA.

[11]  Joan Feigenbaum,et al.  On graph problems in a semi-streaming model , 2005, Theor. Comput. Sci..

[12]  Noga Alon,et al.  The Probabilistic Method , 2015, Fundamentals of Ramsey Theory.

[13]  Yuichi Yoshida,et al.  An improved constant-time approximation algorithm for maximum~matchings , 2009, STOC '09.

[14]  Andrew McGregor,et al.  Finding Graph Matchings in Data Streams , 2005, APPROX-RANDOM.

[15]  Richard M. Karp,et al.  An optimal algorithm for on-line bipartite matching , 1990, STOC '90.

[16]  Krzysztof Onak,et al.  Constant-Time Approximation Algorithms via Local Improvements , 2008, 2008 49th Annual IEEE Symposium on Foundations of Computer Science.

[17]  Krzysztof Onak,et al.  A near-optimal sublinear-time algorithm for approximating the minimum vertex cover size , 2011, SODA.

[18]  Sudipto Guha,et al.  Access to Data and Number of Iterations: Dual Primal Algorithms for Maximum Matching under Resource Constraints , 2015, SPAA.

[19]  Ashish Goel,et al.  On the communication and streaming complexity of maximum bipartite matching , 2012, SODA.