Approximating Maximum Weight Matching in Near-Linear Time

  • Authors:
  • Ran Duan;Seth Pettie

  • Affiliations:
  • -;-

  • Venue:
  • FOCS '10 Proceedings of the 2010 IEEE 51st Annual Symposium on Foundations of Computer Science
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Given a weighted graph, the {\em maximum weight matching} problem (MWM) is to find a set of vertex-disjoint edges with maximum weight. In the 1960s Edmonds showed that MWMs can be found in polynomial time. At present the fastest MWM algorithm, due to Gabow and Tarjan, runs in $\tilde{O}(m\sqrt{n})$ time, where $m$ and $n$ are the number of edges and vertices in the graph. Surprisingly, restricted versions of the problem, such as computing $(1-\epsilon)$-approximate MWMs or finding maximum cardinality matchings, are not known to be much easier (on sparse graphs). The best algorithms for these problems also run in $\tilde{O}(m\sqrt{n})$ time. In this paper we present the first near-linear time algorithm for computing $(1-\epsilon)$-approximate MWMs. Specifically, given an arbitrary real-weighted graph and $\epsilon0$, our algorithm computes such a matching in $O(m\epsilon^{-2}\log^3 n)$ time. The previous best approximate MWM algorithm with comparable running time could only guarantee a $(2/3-\epsilon)$-approximate solution. In addition, we present a faster algorithm, running in $O(m\log n\log\epsilon^{-1})$ time, that computes a $(3/4-\epsilon)$-approximate MWM.