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].
- David Abraham. 2003. Algorithmics of Two-Sided Matching Problems. Master's Thesis. Department of Computer Science, University of Glasgow.Google Scholar
- Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin. 1993. Network Flows: Theory, Algorithms, and Applications. Upper Saddle River, NJ, Prentice Hall. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Shimon Even and Robert Endre Tarjan. 1975. Network flow and testing graph connectivity. SIAM Journal on Computing 4, 4, 507--518.Google ScholarDigital Library
- 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 ScholarDigital Library
- Harold N. Gabow and Robert Endre Tarjan. 1989. Faster scaling algorithms for network problems. SIAM Journal on Comput. 18, 5, 1013--1036. Google ScholarDigital Library
- 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 ScholarDigital Library
- Tibor Gallai. 1959. Über extreme Punkt- und Kantenmengen. Annales Universitatis Scientiarum Budapestinensis de Rolando Eötvös Nominatae. Sectio Mathematica 2, 133--138.Google Scholar
- 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 ScholarCross Ref
- Yuta Harada, Hirotaka Ono, Kunihiko Sadakane, and Masafumi Yamashita. 2007. Optimal balanced semi-matchings for weighted bipartite graphs. IPSJ Digital Courier, 693--702.Google Scholar
- 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 ScholarDigital Library
- 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 Scholar
- Nicholas J. A. Harvey. 2009. Algebraic algorithms for matching and matroid problems. SIAM Journal on Computing 39, 2, 679--702. Google ScholarDigital Library
- 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 ScholarDigital Library
- W. A. Horn. 1973. Minimizing average flow time with parallel machines. Operations Research 21, 846--847. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- 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 ScholarCross Ref
- 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 ScholarCross Ref
- Rasaratnam Logendran and Fenny Subur. 2004. Unrelated parallel machine scheduling with job splitting. IIE Transactions 36, 4, 359--372.Google ScholarCross Ref
- László Lovász. 1997. The membership problem in jump systems. Journal of Combinatorial Theory, Series B 70, 1, 45--66. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Renita Machado and Sirin Tekinay. 2008. A survey of game-theoretic approaches in wireless sensor networks. Computer Networks 52, 16, 3047--3061. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 Scholar
- 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 ScholarDigital Library
- Alexander Schrijver. 2003. Combinatorial Optimization: Polyhedra and Efficiency. Springer, 135--138.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- 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 ScholarCross Ref
- 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 ScholarDigital Library
- Subhash Suri, Csaba D. Tóth, and Yunhong Zhou. 2007. Selfish load balancing and atomic congestion games. Algorithmica 47, 1, 79--96. Google ScholarDigital Library
- 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 ScholarDigital Library
- Tami Tamir and Benny Vaksendiser. 2010. Algorithms for storage allocation based on client preferences. Journal of Combinatorial Optimization 19, 3, 304--324.Google ScholarCross Ref
- Robert Endre Tarjan. 1983. Data Structures and Network Algorithms. Philadelphia, Society for Industrial and Applied Mathematics. Google ScholarDigital Library
- N. Tomizawa. 1971/72. On some techniques useful for solution of transportation network problems. Networks 1, 173--194.Google ScholarCross Ref
- 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 Scholar
Index Terms
- Faster Algorithms for Semi-Matching Problems
Recommendations
On Computing an Optimal Semi-matching
A semi-matching in a bipartite graph $$G = (U, V, E)$$G=(U,V,E) is a set of edges $$M \subseteq E$$M⊆E such that each vertex in U is incident to exactly one edge in M, i.e., $$deg_M(u)=1$$degM(u)=1 for each $$u \in U$$uźU. An optimal semi-matching is a ...
An approximation algorithm for the load-balanced semi-matching problem in weighted bipartite graphs
A semi-matching on a bipartite graph G = (U ∪ V, E) is a set of edges X ⊆ E such that each vertex in U is incident to exactly one edge in X. The sum of the weights of the vertices from U that are assigned (semi-matched) to some vertex v ∈ V is referred ...
Faster algorithms for semi-matching problems
ICALP'10: Proceedings of the 37th international colloquium conference on Automata, languages and programmingWe 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 case.
For the weighted case, we give an O(...
Comments