Distributed 2-approximation algorithm for the semi-matching problem

  • Authors:
  • Andrzej Czygrinow;Michal Hanćkowiak;Edyta Szymańska;Wojciech Wawrzyniak

  • Affiliations:
  • School of Mathematical and Statistical Sciences, Arizona State University, Tempe, AZ;Faculty of Mathematics and Computer Science, Adam Mickiewicz University, Poznań, Poland;Faculty of Mathematics and Computer Science, Adam Mickiewicz University, Poznań, Poland;Faculty of Mathematics and Computer Science, Adam Mickiewicz University, Poznań, Poland

  • Venue:
  • DISC'12 Proceedings of the 26th international conference on Distributed Computing
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

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\choose 2}$ where dM(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+\frac{1}{\alpha})$-approximation (where $\alpha=\max\left\{1, \frac 12\left(\frac{|U|}{|V|} +1\right)\right\}$) and has time complexity $O\left(\Delta^5\right),$ 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.