Fast Algorithms for Weighted Bipartite Matching

  • Justus Schwartz
  • Angelika Steger
  • Andreas Weißl
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3503)


Let G = (V 1V 2, E) be a bipartite graph on n nodes and m edges and let \(w : E \rightarrow {\mathbb R}_{+}\) be a weight function on the edges. We give several fast algorithms for computing a minimum weight (perfect) matching for a given complete bipartite graph (i.e. m = n 2) by pruning the edge set. The algorithm will also output an upper bound on the achieved approximation factor. Under the assumption that the edge weights are uniformly distributed, we show that our algorithm will compute an optimal solution with high probability. From this we deduce an algorithm with fast expected running time that will always compute an optimal solution. For real edge weights we achieve a running time of O(n 2logn) and for integer edge weights a running time of O(n 2).


Bipartite Graph Edge Weight Minimum Weight Dual Solution Complete Bipartite Graph 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ahuja, R., Magnanti, T., Orlin, J.: Network flows. Theory, algorithms, and applications. Prentice Hall Inc, Englewood Cliffs (1993)Google Scholar
  2. 2.
    Belongie, S., Malik, J., Puzicha, J.: Shape matching and object recognition using shape contexts. IEEE Trans. Pattern Anal. Mach. Intell. 24(4), 509–522 (2002)CrossRefGoogle Scholar
  3. 3.
    Cheng, Y., Wu, V., Collins, R., Hanson, A., Riseman, E.: Maximum-weight bipartite matching technique and its application in image feature matching. In: SPIE Conference on Visual Communication and Image Processing (1996)Google Scholar
  4. 4.
    Edmonds, J., Karp, R.: Theoretical improvements in algorithmic efficiency for network flow problems. In: Combinatorial Structures and their Applications, Proc. Calgary Internat. Conf., Calgary, Alta., 1969, pp. 93–96. Gordon and Breach, New York (1970)Google Scholar
  5. 5.
    Erdős, P., Rényi, A.: On random matrices. Magyar Tud. Akad. Mat. Kutató Int. Közl 8, 455–461 (1964)Google Scholar
  6. 6.
    Fredman, M., Tarjan, R.: Fibonacci heaps and their uses in improved network optimization algorithms. J. Assoc. Comput. Mach. 34(3), 596–615 (1987)MathSciNetGoogle Scholar
  7. 7.
    Frieze, A., Sorkin, G.: The probabilistic relationship between the assignment and asymmetric traveling salesman problems. In: Proceedings of the Twelfth Annual ACM-SIAM Symposium on Discrete Algorithms, Washington, DC, pp. 652–660. Philadelphia, PA (2001)Google Scholar
  8. 8.
    Gabow, H., Tarjan, R.: Almost-optimal speed-ups of algorithms for matching and related problems. In: Proceedings 20th Annual ACM Symposium on Theory of Computing, Chicago, IL, pp. 514–527. New York (1988)Google Scholar
  9. 9.
    Gabow, H., Tarjan, R.: Faster scaling algorithms for network problems. SIAM J. Comput. 18(5), 1013–1036 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Goemans, M., Williamson, D.: A general approximation technique for constrained forest problems. SIAM J. Comput. 24(2), 296–317 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Goldberg, A., Kennedy, R.: Global price updates help. SIAM J. Discrete Math. 10(4), 551–572 (1997)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Goldberg, A., Plotkin, Vaidya, P.M.: Sublinear-time parallel algorithms for matching and related problems. J. Algorithms 14(2), 180–213 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Hopcroft, J., Karp, R.: An n 5/2 algorithm for maximum matchings in bipartite graphs. SIAM J. Comput. 2, 225–231 (1973)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Huang, C., Chen, Y., Lin, Y., Hsu, Y.: Data path allocation based on bipartite weighted matching. In: DAC 1990: Proceedings of the 27th ACM/IEEE conference on Design automation, pp. 499–504 (1990)Google Scholar
  15. 15.
    Johnson, D.S., McGeoch, C.C.: Network flows and matching: First DIMACS implementation challenge. AMS, vol. 12 (1993)Google Scholar
  16. 16.
    Karp, R.: An algorithm to solve the m×n assignment problem in expected time O(mn log n). Networks 10(2), 143–152 (1980)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Kuhn, H.: The Hungarian method for the assignment problem. Naval Res. Logist. Quart. 2, 83–97 (1955)CrossRefMathSciNetGoogle Scholar
  18. 18.
    Lin, Y., Chang, H., Lin, Y.: A study on tools and algorithms for 3-d protein structures alignment and comparison. In: Internat. Computer Symposium (ICS 2004), pp. 1000–1005 (2004)Google Scholar
  19. 19.
    Mucha, M., Sankowski, P.: Maximum matchings via gaussian elimination. In: FOCS, pp. 248–255 (2004)Google Scholar
  20. 20.
    Orlin, J., Ahuja, R.: New scaling algorithms for the assignment and minimum mean cycle problems. Math. Programming 54(1, Ser. A), 41–56 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    Varadarajan, K., Agarwal, P.: Approximation algorithms for bipartite and non-bipartite matching in the plane. In: Proceedings of the Tenth Annual ACM-SIAM Symposium on Discrete Algorithms, Baltimore, MD, New York, pp. 805–814 (1999)Google Scholar
  22. 22.
    Wattenhofer, M., Wattenhofer, R.: Fast and simple algorithms for weighted perfect matching (2004) (submitted)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Justus Schwartz
    • 1
  • Angelika Steger
    • 1
  • Andreas Weißl
    • 1
  1. 1.Institute of Theoretical Computer Science, ETH ZentrumETH ZürichZürichSwitzerland

Personalised recommendations