Abstract
We consider the maximum-cardinality matching problem in bipartite graphs. The input graph G = (V,E) is not available for random access, but only as a stream, and random-access memory is limited to storing Θ(n) edges at a time, n = |V|. The number of passes over the input stream required to achieve the desired approximation is an important measure. It was shown by Eggert et al. (2009, 2011) that a \(1 + 1 {\diagup} k\) approximation can be computed in O(k 5) passes, independently of the input size. In this work, we present a new algorithm with the same approximation guarantee of \(1 + 1 {\diagup} k\), but show experimentally that it requires two orders of magnitude fewer passes. The proven bound on the number of passes is O(kn). This bound depends on the input size, and so in principle is inferior to O(k 5). But we emphasize that in experiments, we do not find any correlation between theoretical bounds and actual performance: for all algorithms the number of passes observed in experiments is far below the corresponding theoretical bound. The most interesting insight comes from an experimental comparison of the previous and the new algorithm: e.g., for k = 9, the new one never needed more than 94 passes, even for instances with up to 2×106 vertices, whereas the previous one went up to more than 32000 passes. Our main new technique is aimed at making the most out of each pass: we maintain a complex structure, using trees, for building augmenting paths.
Permanent ID of this document: dda51148-ac5b-4655-9c4f-e01f26511235This version is dated 2011-02-28.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Cherkassky, B.V., Goldberg, A.V., Martin, P.: Augment or push: A computational study of bipartite matching and unit-capacity flow algorithms. ACM Journal of Experimental Algorithms 3 (1998), http://www.jea.acm.org/1998/CherkasskyAugment/
Eggert, S., Kliemann, L., Munstermann, P., Srivastav, A.: Bipartite matching in the semi-streaming model. Tech. Rep. 1101, Institut für Informatik, Christian-Albrechts-Universität zu Kiel, document ID: 519a88bb-5f5a-409d-8293-13cd80a66b36 (2011), http://www.informatik.uni-kiel.de/~lki/tr_1101.pdf
Eggert, S., Kliemann, L., Srivastav, A.: Bipartite graph matchings in the semi-streaming model. In: Fiat, A., Sanders, P. (eds.) ESA 2009. LNCS, vol. 5757, pp. 492–503. Springer, Heidelberg (2009), http://dx.doi.org/10.1007/978-3-642-04128-0_44 , available also at http://www.informatik.uni-kiel.de/~discopt/person/asr/publication/streaming_esa_09.pdf , Presented also at the MADALGO Workshop on Massive Data Algorithmics, Århus, Denmark (June 2009)
Feigenbaum, J., Kannan, S., McGregor, A., Suri, S., Zhang, J.: On graph problems in a semi-streaming model. In: Díaz, J., Karhumäki, J., Lepistö, A., Sannella, D. (eds.) ICALP 2004. LNCS, vol. 3142, pp. 531–543. Springer, Heidelberg (2004), http://dx.doi.org/10.1007/b99859
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)
Langguth, J., Manne, F., Sanders, P.: Heuristic initialization for bipartite matching problems. ACM Journal of Experimental Algorithmics 15, 1.3:1.1–1.3:1.22 (2010), http://doi.acm.org/10.1145/1712655.1712656
McGregor, A.: Finding graph matchings in data streams. In: Chekuri, C., Jansen, K., Rolim, J.D.P., Trevisan, L. (eds.) APPROX 2005 and RANDOM 2005. LNCS, vol. 3624, pp. 170–181. Springer, Heidelberg (2005), http://dx.doi.org/10.1007/11538462_15
Muthukrishnan, S.M.: Data streams: Algorithms and applications. Foundations and Trends in Theoretical Computer Science 1(2), 67 pages (2005), http://algo.research.googlepages.com/eight.ps
Setubal, J.C.: Sequential and parallel experimental results with bipartite matching algorithms. Tech. Rep. IC-96-09, Institute of Computing, University of Campinas, Brazil (1996), http://www.dcc.unicamp.br/ic-tr-ftp/1996/96-09.ps.gz
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kliemann, L. (2011). Matching in Bipartite Graph Streams in a Small Number of Passes. In: Pardalos, P.M., Rebennack, S. (eds) Experimental Algorithms. SEA 2011. Lecture Notes in Computer Science, vol 6630. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-20662-7_22
Download citation
DOI: https://doi.org/10.1007/978-3-642-20662-7_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-20661-0
Online ISBN: 978-3-642-20662-7
eBook Packages: Computer ScienceComputer Science (R0)