Author_Institution :
EECS Dept., Univ. of Michigan, Ann Arbor, MI, USA
Abstract :
Given a weighted graph, the 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 Õ(m√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 - ϵ)-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 Õ(m√n) time. In this paper we present the first near-linear time algorithm for computing (1 - e)-approximate MWMs. Specifically, given an arbitrary real-weighted graph and ϵ > 0, our algorithm computes such a matching in O(mϵ-2 log3 n) time. The previous best approximate MWM algorithm with comparable running time could only guarantee a (2/3 - ϵ)-approximate solution. In addition, we present a faster algorithm, running in O(m log n log ϵ-1) time, that computes a (3/4 - ϵ)-approximate MWM.
Keywords :
approximation theory; computational complexity; graph theory; MWM algorithm; arbitrary real-weighted graph; maximum cardinality matchings; maximum weight matching problem; near-linear time algorithm; polynomial time; vertex-disjoint edges; Approximation algorithms; Approximation methods; Bipartite graph; Clustering algorithms; Data structures; Nickel; Polynomials; approximation; graph; matching;