TY - GEN
T1 - Distributed 2-Approximation Algorithm for the Semi-matching Problem
AU - Czygrinow, Andrzej
AU - Hanćkowiak, Michal
AU - Szymańska, Edyta
AU - Wawrzyniak, Wojciech
PY - 2012/11/9
Y1 - 2012/11/9
N2 - In this paper we consider the problem of matching clients with servers, each of which can process a subset of clients. It is known as the semi-matching or load balancing problem in a bipartite graph G = (V,U,E), where U corresponds to the clients, V to the servers, and E is the set of available connections between them. The goal is to find a set of edges M ⊆ E such that every vertex in U is incident to exactly one edge in M. The load of a server v ε V is defined as (d M (v)+1/2) where d M (v) is the degree of v in M, and the problem is to find an optimal semi-matching, i.e. a semi-matching that minimizes the sum of the loads of the servers. An optimal solution can be found sequentially in polynomial time but the distributed complexity is not well understood. Our algorithm yields (1 + 1/α)-approximation (where α = max{1, 1/2 (|U|/|V| + 1)}) and has time complexity O(Δ 5), where Δ is the maximum degree of a vertex in V. In particular, for Δ = O(1) it gives constant approximation with constant time complexity. We also give a fast algorithm for the case when Δ is large and the degrees in V and U satisfy some additional properties. Both algorithms are deterministic.
AB - In this paper we consider the problem of matching clients with servers, each of which can process a subset of clients. It is known as the semi-matching or load balancing problem in a bipartite graph G = (V,U,E), where U corresponds to the clients, V to the servers, and E is the set of available connections between them. The goal is to find a set of edges M ⊆ E such that every vertex in U is incident to exactly one edge in M. The load of a server v ε V is defined as (d M (v)+1/2) where d M (v) is the degree of v in M, and the problem is to find an optimal semi-matching, i.e. a semi-matching that minimizes the sum of the loads of the servers. An optimal solution can be found sequentially in polynomial time but the distributed complexity is not well understood. Our algorithm yields (1 + 1/α)-approximation (where α = max{1, 1/2 (|U|/|V| + 1)}) and has time complexity O(Δ 5), where Δ is the maximum degree of a vertex in V. In particular, for Δ = O(1) it gives constant approximation with constant time complexity. We also give a fast algorithm for the case when Δ is large and the degrees in V and U satisfy some additional properties. Both algorithms are deterministic.
UR - http://www.scopus.com/inward/record.url?scp=84868359325&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84868359325&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-33651-5_15
DO - 10.1007/978-3-642-33651-5_15
M3 - Conference contribution
AN - SCOPUS:84868359325
SN - 9783642336508
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 210
EP - 222
BT - Distributed Computing - 26th International Symposium, DISC 2012, Proceedings
T2 - 26th International Symposium on Distributed Computing, DISC 2012
Y2 - 16 October 2012 through 18 October 2012
ER -