Scheduling independent tasks to reduce mean finishing time
Communications of the ACM
Maximum Matchings via Gaussian Elimination
FOCS '04 Proceedings of the 45th Annual IEEE Symposium on Foundations of Computer Science
Semi-matchings for bipartite graphs and load balancing
Journal of Algorithms
Faster algorithms for semi-matching problems
ICALP'10 Proceedings of the 37th international colloquium conference on Automata, languages and programming
Distributed 2-approximation algorithm for the semi-matching problem
DISC'12 Proceedings of the 26th international conference on Distributed Computing
Hi-index | 0.00 |
The problem of finding an optimal semi-matching is a generalization of the problem of finding classical matching in bipartite graphs. A semi-matching in a bipartite graph G=(U, V, E) with n vertices and m edges is a set of edges M⊆E, such that each vertex in U is incident to at most one edge in M. An optimal semi-matching is a semi-matching with degM(u)=1 for all u∈U and the minimal value of $\sum_{v \in V} \frac{deg_M(v).(deg_M(v)+1)}2$ . We propose a schema that allows a reduction of the studied problem to a variant of the maximum bounded-degree semi-matching problem. The proposed schema yields to two algorithms for computing an optimal semi-matching. The first one runs in time $O(\sqrt{n} \cdot m \cdot \log{n})$ that is the same as the time complexity of the currently best known algorithm. However, our algorithm uses a different approach that enables some improvements in practice (e.g. parallelization, faster algorithms for special graph classes). The second one is randomized and it computes an optimal semi-matching with high probability in O(nω ·log1+o(1)n), where ω is the exponent of the best known matrix multiplication algorithm. Since ω≤2.38, this algorithms breaks through O(n2.5) barrier for dense graphs.