Bipartite Graph Matchings in the Semi-streaming Model

We present an algorithm for finding a large matching in a bipartite graph in the semi-streaming model. In this model, the input graph G = (V, E) is represented as a stream of its edges in some arbitrary order, and storage of the algorithm is bounded by O(n , polylog n) bits, where n = |V|. For e> 0, our algorithm finds a \(\frac{1}{1+\epsilon}\)-approximation of a maximum-cardinality matching and uses \(O{({(\frac{1}{\epsilon})^8})}\) passes over the input stream. The only previously known algorithm with such arbitrarily good approximation – though for general graphs – required exponentially many \(\Omega({{(\frac{1}{\epsilon})^{\frac{1}{\epsilon}}}})\) passes (McGregor 2005).

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

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

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

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

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

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

[7]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

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