Implicit Computation of Maximum Bipartite Matchings by Sublinear Functional Operations

  • Beate Bollig
  • Marc Gillé
  • Tobias Pröger
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7287)


The maximum bipartite matching problem, an important problem in combinatorial optimization, has been studied for a long time. In order to solve problems for very large structured graphs in reasonable time and space, implicit algorithms have been investigated. Any object to be manipulated is binary encoded and problems have to be solved mainly by functional operations on the corresponding Boolean functions. OBDDs are a popular data structure for Boolean functions, therefore, OBDD-based algorithms have been used as an heuristic approach to handle large input graphs. Here, two OBDD-based maximum bipartite matching algorithms are presented, which are the first ones using only a sublinear number of operations (with respect to the number of vertices of the input graph) for a problem unknown to be in NC, the complexity class that contains all problems computable in deterministic polylogarithmic time with polynomially many processors. Furthermore, the algorithms are experimentally evaluated.


Bipartite Graph Boolean Function Input Graph Grid Graph Bipartite Match 
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.K., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms, and Applications. Prentice Hall, Englewood Cliffs (1993)zbMATHGoogle Scholar
  2. 2.
    Berge, C.: Two theorems in graph theory. Proc. of National Academy of Science of the USA 43(9), 842–844 (1957)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Bloem, R., Gabow, H.N., Somenzi, F.: An Algorithm for Strongly Connected Component Analysis in n logn Symbolic Steps. In: Johnson, S.D., Hunt Jr., W.A. (eds.) FMCAD 2000. LNCS, vol. 1954, pp. 37–54. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  4. 4.
    Bollig, B.: Exponential space complexity for OBDD-based reachability analysis. Information Processing Letters 110, 924–927 (2010)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Bollig, B.: Exponential Space Complexity for Symbolic Maximum Flow Algorithms in 0-1 Networks. In: Hliněný, P., Kučera, A. (eds.) MFCS 2010. LNCS, vol. 6281, pp. 186–197. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  6. 6.
    Bollig, B.: On Symbolic OBDD-Based Algorithms for the Minimum Spanning Tree Problem. In: Wu, W., Daescu, O. (eds.) COCOA 2010, Part II. LNCS, vol. 6509, pp. 16–30. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  7. 7.
    Bollig, B.: On Symbolic Representations of Maximum Matchings and (Un)directed Graphs. In: Calude, C.S., Sassone, V. (eds.) TCS 2010. IFIP AICT, vol. 323, pp. 286–300. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  8. 8.
    Bollig, B., Löbbing, M., Wegener, I.: On the effect of local changes in the variable ordering of ordered decision diagrams. Information Processing Letters 59, 233–239 (1996)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Bollig, B., Pröger, T.: An Efficient Implicit OBDD-Based Algorithm for Maximal Matchings. In: Dediu, A.-H., Martín-Vide, C. (eds.) LATA 2012. LNCS, vol. 7183, pp. 143–154. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  10. 10.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Trans. on Computers 35, 677–691 (1986)CrossRefzbMATHGoogle Scholar
  11. 11.
    Charles, D.X., Chickering, M., Devanur, N.R., Jain, K., Sanghi, M.: Fast algorithms for finding matchings in lopsided bipartite graphs with applications to display ads. In: Proc. of ACM Conference on Electronic Commerce 2010, pp. 121–128 (2010)Google Scholar
  12. 12.
    Cherkassky, B.V., Goldberg, A.V., Martin, P., Setubal, J.C., Stolfi, J.: Augment or push: a computational study of bipartite matching and unit-capacity flow algorithms. ACM Journal of Experimental Algorithmics 3, 8 (1998)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Feigenbaum, J., Kannan, S., Vardi, M.V., Viswanathan, M.: Complexity of Problems on Graphs Represented as OBDDs. In: Meinel, C., Morvan, M. (eds.) STACS 1998. LNCS, vol. 1373, pp. 216–226. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  14. 14.
    Gentilini, R., Piazza, C., Policriti, A.: Computing strongly connected components in a linear number of symbolic steps. In: Proc. of SODA, pp. 573–582. ACM Press (2003)Google Scholar
  15. 15.
    Gentilini, R., Piazza, C., Policriti, A.: Symbolic graphs: linear solutions to connectivity related problems. Algorithmica 50, 120–158 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Goldberg, A.V., Plotkin, S.A., Shmoys, D.B., Tardos, E.: Using interior-point methods for fast parallel algorithms for bipartite matching and related problems. SIAM Journal on Computing 21(1), 140–150 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Goldberg, A.V., Plotkin, S.K., Vaidya, P.M.: Sublinear time parallel algorithms for matching and related problems. Journal of Algorithms 14(2), 180–213 (1993)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Hachtel, G.D., Somenzi, F.: A symbolic algorithm for maximum flow in 0-1 networks. Formal Methods in System Design 10, 207–219 (1997)CrossRefGoogle Scholar
  19. 19.
    Hopcroft, J.E., Karp, R.M.: An n 5/2 algorithm for maximum matchings in bipartite graphs. SIAM Journal on Computing 2(4), 225–231 (1973)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Iwano, K.: An improvement of Goldberg, Plotkin, and Vaidya’s maximal node-disjoint paths algorithm. Information Processing Letters 32, 25–27 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Monien, B., Preis, R., Diekmann, R.: Quality matching and local improvement for multilevel graph-partitioning. Parallel Computing 26, 1609–1634 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Möhring, R.H., Müller-Hannemann, M.: Complexity and modeling aspects of mesh refinement into quadrilaterals. Algorithmica 26, 148–172 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Negruseri, C.S., Pasoi, M.B., Stanley, B., Stein, C., Strat, C.G.: Solving maximum flow problems on real world bipartite graphs. In: Proc. of ALENEX, pp. 14–28. SIAM (2009)Google Scholar
  24. 24.
    Sawitzki, D.: Implicit Flow Maximization by Iterative Squaring. In: Van Emde Boas, P., Pokorný, J., Bieliková, M., Štuller, J. (eds.) SOFSEM 2004. LNCS, vol. 2932, pp. 301–313. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  25. 25.
    Sawitzki, D.: Exponential Lower Bounds on the Space Complexity of OBDD-Based Graph Algorithms. In: Correa, J.R., Hevia, A., Kiwi, M. (eds.) LATIN 2006. LNCS, vol. 3887, pp. 781–792. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  26. 26.
    Sawitzki, D.: The Complexity of Problems on Implicitly Represented Inputs. In: Wiedermann, J., Tel, G., Pokorný, J., Bieliková, M., Štuller, J. (eds.) SOFSEM 2006. LNCS, vol. 3831, pp. 471–482. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  27. 27.
    Sawitzki, D.: Implicit simulation of FNC algorithms. ECCC Report TR07-028 (2007)Google Scholar
  28. 28.
    Spencer, T.H.: Parallel Approximate Matching. Parallel Algorithms and Applications 2(1-2), 115–121 (1994)CrossRefzbMATHGoogle Scholar
  29. 29.
    Wegener, I.: Branching Programs and Binary Decision Diagrams - Theory and Applications. SIAM Monographs on Discrete Mathematics and Applications (2000)Google Scholar
  30. 30.
    Woelfel, P.: Symbolic topological sorting with OBDDs. Journal of Discrete Algorithms 4(1), 51–71 (2006)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Beate Bollig
    • 1
  • Marc Gillé
    • 1
  • Tobias Pröger
    • 2
  1. 1.LS2 InformatikTU DortmundGermany
  2. 2.Institut für Theoretische InformatikETH ZürichSwitzerland

Personalised recommendations