Computing Minimum-Weight Perfect Matchings

We make several observations on the implementation of Edmonds' blossom algorithm for solving minimum-weight perfect matching problems and we present computational results for geometric problem instances ranging in size from 1,000 nodes up to 5,000,000 nodes. A key feature in our implementation is the use of multiple search trees with an individual dual-change e for each tree. As a benchmark of the algorithm's performance, solving a 100,000-node geometric instance on a 200 Mhz Pentium-Pro computer takes approximately 3 minutes.

[1]  William J. Cook,et al.  Solving Large-Scale Matching Problems , 1991, Network Flows And Matching.

[2]  Ulrich Derigs,et al.  A matching-based approach for solving a delivery/pick-up vehicle routing problem with time constraints , 1992 .

[3]  Michel Minoux,et al.  A new algorithm for general matching problems using network flow subproblems , 1989, Networks.

[4]  Colin E. Bell,et al.  Weighted matching with vertex weights: An application to scheduling training sessions in NASA space shuttle cockpit simulators , 1994 .

[5]  S. Micali,et al.  Priority queues with variable priority and an O(EV log V) algorithm for finding a maximal weighted matching in general graphs , 1982, FOCS 1982.

[6]  Steven Fortune,et al.  A sweepline algorithm for Voronoi diagrams , 1986, SCG '86.

[7]  Ulrich Derigs,et al.  Solving non-bipartite matching problems via shortest path techniques , 1988 .

[8]  W. Cunningham,et al.  A primal algorithm for optimum matching , 1978 .

[9]  Harold N. Gabow,et al.  A scaling algorithm for weighted matching on general graphs , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[10]  G. M. Weber Sensitivity analysis of optimal matchings , 1981, Networks.

[11]  Harold N. Gabow,et al.  Data structures for weighted matching and nearest common ancestors with linking , 1990, SODA '90.

[12]  Thomas M. Liebling,et al.  Euclidean matching problems and the metropolis algorithm , 1986, Z. Oper. Research.

[13]  Michael B. Dillencourt Toughness and Delaunay triangulations , 1990, Discret. Comput. Geom..

[14]  J. Edmonds,et al.  Facets of I-matching polyhedra , 1974 .

[15]  David Avis,et al.  A survey of heuristics for the weighted matching problem , 1983, Networks.

[16]  David P. Williamson,et al.  A general approximation technique for constrained forest problems , 1992, SODA '92.

[17]  Ulrich Derigs,et al.  Solving large-scale matching problems efficiently: A new primal matching approach , 1986, Networks.

[18]  Jonathan Richard Shewchuk,et al.  Triangle: Engineering a 2D Quality Mesh Generator and Delaunay Triangulator , 1996, WACG.

[19]  ZVI GALIL,et al.  Efficient algorithms for finding maximum matching in graphs , 1986, CSUR.

[20]  Timothy F. Havel,et al.  The combinatorial distance geometry method for the calculation of molecular conformation. I. A new approach to an old problem. , 1983, Journal of theoretical biology.

[21]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[22]  Ulrich Derigs,et al.  A shortest augmenting path method for solving minimal perfect matching problems , 1981, Networks.

[23]  Robert E. Tarjan,et al.  Faster scaling algorithms for general graph matching problems , 1991, JACM.

[24]  Les E. Atlas,et al.  Index assignment for progressive transmission of full-search vector quantization , 1994, IEEE Trans. Image Process..

[25]  Jack Edmonds,et al.  Maximum matching and a polyhedron with 0,1-vertices , 1965 .

[26]  Donald E. Knuth,et al.  The art of computer programming. Vol.2: Seminumerical algorithms , 1981 .

[27]  Joseph F. Pekny,et al.  A Staged Primal-Dual Algorithm for Perfect b-Matching with Edge Capacities , 1995, INFORMS J. Comput..

[28]  Zvi Galil,et al.  Efficient implementation of graph algorithms using contraction , 1984, JACM.

[29]  Michael A. Trick Networks with additional structured constraints , 1987 .

[30]  Lawrence Bodin,et al.  A Matching Based Heuristic for Scheduling Mass Transit Crews and Vehicles , 1983 .

[31]  Bahman Kalantari,et al.  A generalized hypergreedy algorithm for weighted perfect matching , 1993, BIT.

[32]  Silvio Micali,et al.  Priority queues with variable priority and an O(EV log V) algorithm for finding a maximal weighted matching in general graphs , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[33]  Harold Neil Gabow,et al.  Implementation of algorithms for maximum matching on nonbipartite graphs , 1973 .

[34]  Ulrich Derigs,et al.  An analysis of alternative strategies for implementing matching algorithms , 1983, Networks.

[35]  Ulrich Derigs,et al.  Solving (large scale) matching problems combinatorially , 1991, Math. Program..

[36]  M. R. Rao,et al.  Combinatorial Optimization , 1992, NATO ASI Series.

[37]  Kazuo Murota,et al.  Heuristics for planar minimum-weight perfect metchings , 1983, Networks.

[38]  Alfred V. Aho,et al.  On Finding Lowest Common Ancestors in Trees , 1976, SIAM J. Comput..

[39]  Jon Jouis Bentley,et al.  Fast Algorithms for Geometric Traveling Salesman Problems , 1992, INFORMS J. Comput..

[40]  Snjólfur Ólafsson Weighted Matching in Chess Tournaments , 1990 .

[41]  Robert E. Tarjan,et al.  On a Greedy Heuristic for Complete Matching , 1981, SIAM J. Comput..

[42]  R. Burkard,et al.  Assignment and Matching Problems: Solution Methods with FORTRAN-Programs , 1980 .

[43]  Brian W. Kernighan,et al.  An Effective Heuristic Algorithm for the Traveling-Salesman Problem , 1973, Oper. Res..

[44]  Brian W. Kernighan,et al.  The C Programming Language , 1978 .

[45]  M. Grötschel,et al.  Solving matching problems with linear programming , 1985, Math. Program..

[46]  David S. Johnson,et al.  Asymptotic experimental analysis for the Held-Karp traveling salesman bound , 1996, SODA '96.

[47]  David P. Williamson,et al.  Computational experience with an approximation algorithm on large-scale Euclidean matching instances , 1994, SODA '94.

[48]  J. Edmonds Paths, Trees, and Flowers , 1965, Canadian Journal of Mathematics.

[49]  M. Iri,et al.  Practical use of Bucketing Techniques in Computational Geometry , 1985 .