skip to main content
research-article

Faster Algorithms for Semi-Matching Problems

Published:01 May 2014Publication History
Skip Abstract Section

Abstract

We consider the problem of finding semi-matching in bipartite graphs, which is also extensively studied under various names in the scheduling literature. We give faster algorithms for both weighted and unweighted cases.

For the weighted case, we give an O(nmlog n)-time algorithm, where n is the number of vertices and m is the number of edges, by exploiting the geometric structure of the problem. This improves the classical O(n3)-time algorithms by Horn [1973] and Bruno et al. [1974b].

For the unweighted case, the bound can be improved even further. We give a simple divide-and-conquer algorithm that runs in O(√nmlog n) time, improving two previous O(nm)-time algorithms by Abraham [2003] and Harvey et al. [2003, 2006]. We also extend this algorithm to solve the Balanced Edge Cover problem in O(√nmlog n) time, improving the previous O(nm)-time algorithm by Harada et al. [2008].

References

  1. David Abraham. 2003. Algorithmics of Two-Sided Matching Problems. Master's Thesis. Department of Computer Science, University of Glasgow.Google ScholarGoogle Scholar
  2. Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin. 1993. Network Flows: Theory, Algorithms, and Applications. Upper Saddle River, NJ, Prentice Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Jacek Blazewicz, Klaus H. Ecker, Erwin Pesch, Günter Schmidt, and Jan Weglarz. 2007. Handbook on Scheduling: From Theory to Applications (International Handbooks on Information Systems). Springer. DOI:http://dx.doi.org/10.1007/s10951-008-0099-z Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Drago Bokal, Bostjan Bresar, and Janja Jerebic. 2012. A generalization of Hungarian method and Hall's theorem with applications in wireless sensor networks. Discrete Applied Mathematics 160, 4--5, 460--470. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. John Bruno, E. G. Coffman, Jr., and Ravi Sethi. 1974a. Algorithms for minimizing mean flow time. In Proceedings of the IFIP Congress, Stockholm, 1974. 504--510.Google ScholarGoogle Scholar
  6. John L. Bruno, Edward G. Coffman Jr., and Ravi Sethi. 1974b. Scheduling independent tasks to reduce mean finishing time. Communications of the ACM 17, 7, 382--387. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Efim A. Dinic. 1970. Algorithm for solution of a problem of maximum flow in networks with power estimation (in Russian). Soviet Mathematics Doklady 11 (1970), 1277--1280. http://www.cs.bgu.ac.il/∼dinitz/D70.pdf.Google ScholarGoogle Scholar
  8. Yefim Dinitz. 2006. Dinitz' algorithm: The original version and Even's version. In Theoretical Computer Science: Essays in Memory of Shimon Even. Springer, 218--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Jack Edmonds and Richard M. Karp. 1972. Theoretical improvements in algorithmic efficiency for network flow problems. Journal of the ACM 19, 2 (April 1972), 248--264. DOI:http://dx.doi.org/10.1145/321694.321699 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Shimon Even and Robert Endre Tarjan. 1975. Network flow and testing graph connectivity. SIAM Journal on Computing 4, 4, 507--518.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Jittat Fakcharoenphol, Bundit Laekhanukit, and Danupon Nanongkai. 2010. Faster algorithms for semi-matching problems (extended abstract). In Proceedings of the 37th International Colloquium on Automata, Languages and Programming. 176--187. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Harold N. Gabow and Robert Endre Tarjan. 1989. Faster scaling algorithms for network problems. SIAM Journal on Comput. 18, 5, 1013--1036. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Frantisek Galcík, Ján Katrenic, and Gabriel Semanisin. 2011. On computing an optimal semi-matching. In Graph Theoretic Concepts in Computer Science. Lecture Notes in Computer Science, Vol. 6986. 250--261. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Tibor Gallai. 1959. Über extreme Punkt- und Kantenmengen. Annales Universitatis Scientiarum Budapestinensis de Rolando Eötvös Nominatae. Sectio Mathematica 2, 133--138.Google ScholarGoogle Scholar
  15. R. L. Graham, E. L. Lawler, J. K. Lenstra, and A. H. G. Rinnooy Kan. 1979. Optimization and approximation in deterministic sequencing and scheduling: A survey. Annals of Discrete Mathematics 5, 287--326.Google ScholarGoogle ScholarCross RefCross Ref
  16. Yuta Harada, Hirotaka Ono, Kunihiko Sadakane, and Masafumi Yamashita. 2007. Optimal balanced semi-matchings for weighted bipartite graphs. IPSJ Digital Courier, 693--702.Google ScholarGoogle Scholar
  17. Yuta Harada, Hirotaka Ono, Kunihiko Sadakane, and Masafumi Yamashita. 2008. The balanced edge cover problem. In Proceedings of the 19th International Symposium on Algorithms and Computation. 246--257. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Nicholas J. A. Harvey. 2003. Semi-Matchings for Bipartite Graphs and Load Balancing (slides). Retrieved April 14, 2014, from http://people.csail.mit.edu/nickh/Publications/SemiMatching/Semi-Matching.ppt.Google ScholarGoogle Scholar
  19. Nicholas J. A. Harvey. 2009. Algebraic algorithms for matching and matroid problems. SIAM Journal on Computing 39, 2, 679--702. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Nicholas J. A. Harvey, Richard E. Ladner, László Lovász, and Tami Tamir. 2006. Semi-matchings for bipartite graphs and load balancing. Journal of Algorithms 59, 1, 53--78. DOI:http://dx.doi.org/10.1016/j.jalgor.2005.01.003 Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. W. A. Horn. 1973. Minimizing average flow time with parallel machines. Operations Research 21, 846--847. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Ming-Yang Kao, Tak Wah Lam, Wing-Kin Sung, and Hing-Fung Ting. 2001. An even faster and more unifying algorithm for comparing trees via unbalanced bipartite matchings. Journal of Algorithms 40, 2, 212--233. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Alexander V. Karzanov. 1973. On finding maximum flows in networks with special structure and some applications (in Russian). Matematicheskie Voprosy Upravleniya Proizvodstvom 5, 81--94.Google ScholarGoogle Scholar
  24. Anshul Kothari, Subhash Suri, Csaba D. Tóth, and Yunhong Zhou. 2004. Congestion games, load balancing, and price of anarchy. In Proceedings of the 1st Workshop on Combinatorial and Algorithmic Aspects of Networking. 13--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Kangbok Lee, Joseph Y.-T. Leung, and Michael L. Pinedo. 2011. Scheduling jobs with equal processing times subject to machine eligibility constraints. Journal of Scheduling 14, 12, 27--38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Joseph Y.-T. Leung and Chung-Lun Li. 2008. Scheduling with processing set restrictions: A survey. International Journal of Production Economics 116, 2 (December 2008), 251--262. Retrieved April 14, 2014, from http://ideas.repec.org/a/eee/proeco/v116y2008i2p251-262.html.Google ScholarGoogle ScholarCross RefCross Ref
  27. Chung-Lun Li. 2006. Scheduling unit-length jobs with machine eligibility restrictions. European Journal of Operational Research 174, 2 (October 2006), 1325--1328. Retrieved April 14, 2014, from http://ideas.repec.org/a/eee/ejores/v174y2006i2p1325-1328.html.Google ScholarGoogle ScholarCross RefCross Ref
  28. Yixun Lin and Wenhua Li. 2004. Parallel machine scheduling of machine-dependent jobs with unit-length. European Journal of Operational Research 156, 1 (July 2004), 261--266. Retrieved April 14, 2014, from http://ideas.repec.org/a/eee/ejores/v156y2004i1p261-266.html.Google ScholarGoogle ScholarCross RefCross Ref
  29. Rasaratnam Logendran and Fenny Subur. 2004. Unrelated parallel machine scheduling with job splitting. IIE Transactions 36, 4, 359--372.Google ScholarGoogle ScholarCross RefCross Ref
  30. László Lovász. 1997. The membership problem in jump systems. Journal of Combinatorial Theory, Series B 70, 1, 45--66. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Chor Ping Low. 2002. An efficient retrieval selection algorithm for video servers with random duplicated assignment storage technique. Information Processing Letters 83, 6, 315--321. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Chor Ping Low. 2006. An approximation algorithm for the load-balanced semi-matching problem in weighted bipartite graphs. Information Processing Letters 100, 4, 154--161. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Renita Machado and Sirin Tekinay. 2008. A survey of game-theoretic approaches in wireless sensor networks. Computer Networks 52, 16, 3047--3061. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Silvio Micali and Vijay V. Vazirani. 1980. An O(√|V||E|) algorithm for finding maximum matching in general graphs. In Proceedings of the 21st Annual Symposium on Foundations of Computer Science. 17--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Robert Z. Norman and Michael O. Rabin. 1959. An algorithm for a minimum cover of a graph. Proceedings of the American Mathematical Society, 315--319.Google ScholarGoogle Scholar
  36. Michael Pinedo. 2001. Scheduling: Theory, Algorithms, and Systems (2nd ed.). Prentice Hall. Available at http://www.amazon.com/exec/obidos/redirect?tag=citeulike07-20&path=ASIN/0130281387.Google ScholarGoogle Scholar
  37. Narayanan Sadagopan, Mitali Singh, and Bhaskar Krishnamachari. 2006. Decentralized utility-based sensor network design. Mobile Networks and Applications 11, 3, 341--350. DOI:http://dx.doi.org/10.1007/s11036-006-5187-8 Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Alexander Schrijver. 2003. Combinatorial Optimization: Polyhedra and Efficiency. Springer, 135--138.Google ScholarGoogle Scholar
  39. René Sitters. 2001. Two NP-hardness results for preemptive minsum scheduling of unrelated parallel machines. In Proceedings of the 8th International Conference on Integer Programming and Combinatorial Optimization. 396--405. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Constantine D. Spyropoulos and David J. A. Evans. 1985. Analysis of the Q.A.D. algorithm for an homogeneous multiprocessor computing model with independent memories. International Journal of Computer Mathematics 3, 237--255.Google ScholarGoogle ScholarCross RefCross Ref
  41. Ling-Huey Su. 2009. Scheduling on identical parallel machines to minimize total completion time with deadline and machine eligibility constraints. International Journal of Advanced Manufacturing Technology 40, 5, 572--581.Google ScholarGoogle ScholarCross RefCross Ref
  42. Subhash Suri, Csaba D. Tóth, and Yunhong Zhou. 2004. Uncoordinated load balancing and congestion games in P2P systems. In Proceedings of the 9th International Conference on Peer-to-Peer Systems. 123--130. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Subhash Suri, Csaba D. Tóth, and Yunhong Zhou. 2007. Selfish load balancing and atomic congestion games. Algorithmica 47, 1, 79--96. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Arie Tamir. 1995. Least majorized elements and generalized polymatroids. Mathematics of Operations Research 20, 3 (August 1995), 583--589. DOI:http://dx.doi.org/10.1287/moor.20.3.583 Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Tami Tamir and Benny Vaksendiser. 2010. Algorithms for storage allocation based on client preferences. Journal of Combinatorial Optimization 19, 3, 304--324.Google ScholarGoogle ScholarCross RefCross Ref
  46. Robert Endre Tarjan. 1983. Data Structures and Network Algorithms. Philadelphia, Society for Industrial and Applied Mathematics. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. N. Tomizawa. 1971/72. On some techniques useful for solution of transportation network problems. Networks 1, 173--194.Google ScholarGoogle ScholarCross RefCross Ref
  48. Zsuzsanna Vaik. 2005. On Scheduling Problems with Parallel Multi-Purpose Machines. Technical Report TR-2005-02. Egerváry Research Group, Budapest. Retrieved April 14, 2014, from http://www.cs.elte.hu/egres/tr/egres-05-02.pdf.Google ScholarGoogle Scholar

Index Terms

  1. Faster Algorithms for Semi-Matching Problems

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM Transactions on Algorithms
                ACM Transactions on Algorithms  Volume 10, Issue 3
                June 2014
                176 pages
                ISSN:1549-6325
                EISSN:1549-6333
                DOI:10.1145/2620785
                Issue’s Table of Contents

                Copyright © 2014 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 May 2014
                • Accepted: 1 June 2012
                • Revised: 1 May 2012
                • Received: 1 May 2011
                Published in talg Volume 10, Issue 3

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader