Engineering a Bipartite Matching Algorithm in the Semi-Streaming Model

We describe the Algorithm Engineering process for designing a pass-efficient semi-streaming algorithm for the bipartite maximum matching problem, using the augmenting paths technique. This algorithm was first published by the author at SEA 2011. This text not only discusses the algorithm, but also describes how Algorithm Engineering helped to invent and refine it.

[1]  Philippe Flajolet,et al.  Probabilistic Counting Algorithms for Data Base Applications , 1985, J. Comput. Syst. Sci..

[2]  Krzysztof Onak,et al.  Streaming Algorithms for Estimating the Matching Size in Planar Graphs and Beyond , 2015, SODA.

[3]  Kurt Mehlhorn,et al.  Computing a Maximum Cardinality Matching in a Bipartite Graph in Time O(^1.5 sqrt m/log n) , 1991, Inf. Process. Lett..

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

[5]  Anand Srivastav,et al.  Bipartite Matching in the Semi-streaming Model , 2012, Algorithmica.

[6]  Yang Li,et al.  Tight Bounds for Linear Sketches of Approximate Matchings , 2015, ArXiv.

[7]  Sanjeev Khanna,et al.  Approximating matching size from random streams , 2014, SODA.

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

[9]  Bala Kalyanasundaram,et al.  The Probabilistic Communication Complexity of Set Intersection , 1992, SIAM J. Discret. Math..

[10]  J. Ian Munro,et al.  Selection and sorting with limited storage , 1978, 19th Annual Symposium on Foundations of Computer Science (sfcs 1978).

[11]  Graham Cormode,et al.  Parameterized streaming: maximal matching and vertex cover , 2015, SODA 2015.

[12]  Piotr Sankowski,et al.  Maximum matchings via Gaussian elimination , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[13]  Dexter Kozen,et al.  The Design and Analysis of Algorithms , 1991, Texts and Monographs in Computer Science.

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

[15]  Michael Crouch,et al.  Improved Streaming Algorithms for Weighted Matching, via Unweighted Matching , 2014, APPROX-RANDOM.

[16]  C Berge,et al.  TWO THEOREMS IN GRAPH THEORY. , 1957, Proceedings of the National Academy of Sciences of the United States of America.

[17]  Mohammad Taghi Hajiaghayi,et al.  New Streaming Algorithms for Parameterized Maximal Matching & Beyond , 2015, SPAA.

[18]  Peter Sanders,et al.  Heuristic initialization for bipartite matching problems , 2010, JEAL.

[19]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[20]  Mariano Zelke,et al.  Algorithms for streaming graphs , 2009 .

[21]  Joan Feigenbaum,et al.  Graph Distances in the Data-Stream Model , 2008, SIAM J. Comput..

[22]  Andrew V. Goldberg,et al.  Augment or push: a computational study of bipartite matching and unit-capacity flow algorithms , 1998, JEAL.

[23]  Chris Schwiegelshohn,et al.  Sublinear Estimation of Weighted Matchings in Dynamic Data Streams , 2015, ESA.

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

[25]  Lasse Kliemann,et al.  Matching in Bipartite Graph Streams in a Small Number of Passes , 2011, SEA.

[26]  Noga Alon,et al.  The Space Complexity of Approximating the Frequency Moments , 1999 .

[27]  Christian Konrad,et al.  Maximum Matching in Turnstile Streams , 2015, ESA.

[28]  S. Muthukrishnan,et al.  Data streams: algorithms and applications , 2005, SODA '03.