Perfect matchings via uniform sampling in regular bipartite graphs

  • Authors:
  • Ashish Goel;Michael Kapralov;Sanjeev Khanna

  • Affiliations:
  • Stanford University, Palo Alto, CA;Stanford University, Palo Alto, CA;University of Pennsylvania, Philadelphia, PA

  • Venue:
  • ACM Transactions on Algorithms (TALG)
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this article we further investigate the well-studied problem of finding a perfect matching in a regular bipartite graph. The first nontrivial algorithm, with running time O(mn), dates back to König's work in 1916 (here m=nd is the number of edges in the graph, 2n is the number of vertices, and d is the degree of each node). The currently most efficient algorithm takes time O(m), and is due to Cole et al. [2001]. We improve this running time to O(min{m, n2.5ln n/d}); this minimum can never be larger than O(n1.75&sqrt;ln n). We obtain this improvement by proving a uniform sampling theorem: if we sample each edge in a d-regular bipartite graph independently with a probability p = O(n ln n/d2) then the resulting graph has a perfect matching with high probability. The proof involves a decomposition of the graph into pieces which are guaranteed to have many perfect matchings but do not have any small cuts. We then establish a correspondence between potential witnesses to nonexistence of a matching (after sampling) in any piece and cuts of comparable size in that same piece. Karger's sampling theorem [1994a, 1994b] for preserving cuts in a graph can now be adapted to prove our uniform sampling theorem for preserving perfect matchings. Using the O(m&sqrt;n) algorithm (due to Hopcroft and Karp [1973]) for finding maximum matchings in bipartite graphs on the sampled graph then yields the stated running time. We also provide an infinite family of instances to show that our uniform sampling result is tight up to polylogarithmic factors (in fact, up to ln2 n).