251 research outputs found
Locally Optimal Load Balancing
This work studies distributed algorithms for locally optimal load-balancing:
We are given a graph of maximum degree , and each node has up to
units of load. The task is to distribute the load more evenly so that the loads
of adjacent nodes differ by at most .
If the graph is a path (), it is easy to solve the fractional
version of the problem in communication rounds, independently of the
number of nodes. We show that this is tight, and we show that it is possible to
solve also the discrete version of the problem in rounds in paths.
For the general case (), we show that fractional load balancing
can be solved in rounds and discrete load
balancing in rounds for some function , independently of the
number of nodes.Comment: 19 pages, 11 figure
Approximating Semi-Matchings in Streaming and in Two-Party Communication
We study the communication complexity and streaming complexity of
approximating unweighted semi-matchings. A semi-matching in a bipartite graph G
= (A, B, E), with n = |A|, is a subset of edges S that matches all A vertices
to B vertices with the goal usually being to do this as fairly as possible.
While the term 'semi-matching' was coined in 2003 by Harvey et al. [WADS 2003],
the problem had already previously been studied in the scheduling literature
under different names.
We present a deterministic one-pass streaming algorithm that for any 0 <=
\epsilon <= 1 uses space O(n^{1+\epsilon}) and computes an
O(n^{(1-\epsilon)/2})-approximation to the semi-matching problem. Furthermore,
with O(log n) passes it is possible to compute an O(log n)-approximation with
space O(n).
In the one-way two-party communication setting, we show that for every
\epsilon > 0, deterministic communication protocols for computing an
O(n^{1/((1+\epsilon)c + 1)})-approximation require a message of size more than
cn bits. We present two deterministic protocols communicating n and 2n edges
that compute an O(sqrt(n)) and an O(n^{1/3})-approximation respectively.
Finally, we improve on results of Harvey et al. [Journal of Algorithms 2006]
and prove new links between semi-matchings and matchings. While it was known
that an optimal semi-matching contains a maximum matching, we show that there
is a hierarchical decomposition of an optimal semi-matching into maximum
matchings. A similar result holds for semi-matchings that do not admit
length-two degree-minimizing paths.Comment: This is the long version including all proves of the ICALP 2013 pape
Faster Algorithms for Semi-Matching Problems
We consider the problem of finding \textit{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 -time algorithm, where is
the number of vertices and is the number of edges, by exploiting the
geometric structure of the problem. This improves the classical
algorithms by Horn [Operations Research 1973] and Bruno, Coffman and Sethi
[Communications of the ACM 1974].
For the unweighted case, the bound could be improved even further. We give a
simple divide-and-conquer algorithm which runs in time,
improving two previous -time algorithms by Abraham [MSc thesis,
University of Glasgow 2003] and Harvey, Ladner, Lov\'asz and Tamir [WADS 2003
and Journal of Algorithms 2006]. We also extend this algorithm to solve the
\textit{Balance Edge Cover} problem in time, improving the
previous -time algorithm by Harada, Ono, Sadakane and Yamashita [ISAAC
2008].Comment: ICALP 201
All-Norm Load Balancing in Graph Streams via the Multiplicative Weights Update Method
In the weighted load balancing problem, the input is an n-vertex bipartite graph between a set of clients and a set of servers, and each client comes with some nonnegative real weight. The output is an assignment that maps each client to one of its adjacent servers, and the load of a server is then the sum of the weights of the clients assigned to it. The goal is to find an assignment that is well-balanced, typically captured by (approximately) minimizing either the ?_?- or ??-norm of the server loads. Generalizing both of these objectives, the all-norm load balancing problem asks for an assignment that approximately minimizes all ?_p-norm objectives for p ? 1, including p = ?, simultaneously.
Our main result is a deterministic O(log n)-pass O(1)-approximation semi-streaming algorithm for the all-norm load balancing problem. Prior to our work, only an O(log n)-pass O(log n)-approximation algorithm for the ?_?-norm objective was known in the semi-streaming setting.
Our algorithm uses a novel application of the multiplicative weights update method to a mixed covering/packing convex program for the all-norm load balancing problem involving an infinite number of constraints
Exploiting locality in distributed SDN control
Large SDN networks will be partitioned in multiple controller domains; each controller is responsible for one domain, and the controllers of adjacent domains may need to communicate to enforce global policies. This paper studies the implications of the local network view of the controllers. In particular, we establish a connection to the field of local algorithms and distributed computing, and discuss lessons for the design of a distributed control plane. In particular, we show that existing local algorithms can be used to develop efficient coordination protocols in which each controller only needs to respond to events that take place in its local neighborhood. However, while existing algorithms can be used, SDN networks also suggest a new approach to the study of locality in distributed computing. We introduce the so-called supported locality model of distributed computing. The new model is more expressive than the classical models, and it is a better match with the features of SDN networks.Peer reviewe
Improved Bounds for Distributed Load Balancing
In the load balancing problem, the input is an -vertex bipartite graph and a positive weight for each client . The algorithm
must assign each client to an adjacent server . The load of
a server is then the weighted sum of all the clients assigned to it, and the
goal is to compute an assignment that minimizes some function of the server
loads, typically either the maximum server load (i.e., the
-norm) or the -norm of the server loads.
We study load balancing in the distributed setting. There are two existing
results in the CONGEST model. Czygrinow et al. [DISC 2012] showed a
2-approximation for unweighted clients with round-complexity ,
where is the maximum degree of the input graph. Halld\'orsson et al.
[SPAA 2015] showed an -approximation for unweighted
clients and -approximation for weighted clients
with round-complexity polylog.
In this paper, we show the first distributed algorithms to compute an
-approximation to the load balancing problem in polylog rounds. In
the CONGEST model, we give an -approximation algorithm in polylog
rounds for unweighted clients. For weighted clients, the approximation ratio is
. In the less constrained LOCAL model, we give an
-approximation algorithm for weighted clients in polylog rounds.
Our approach also has implications for the standard sequential setting in
which we obtain the first -approximation for this problem that runs in
near-linear time. A 2-approximation is already known, but it requires solving a
linear program and is hence much slower. Finally, we note that all of our
results simultaneously approximate all -norms, including the
-norm
Wake Up and Join Me! An Energy-Efficient Algorithm for Maximal Matching in Radio Networks
We consider networks of small, autonomous devices that communicate with each
other wirelessly. Minimizing energy usage is an important consideration in
designing algorithms for such networks, as battery life is a crucial and
limited resource. Working in a model where both sending and listening for
messages deplete energy, we consider the problem of finding a maximal matching
of the nodes in a radio network of arbitrary and unknown topology.
We present a distributed randomized algorithm that produces, with high
probability, a maximal matching. The maximum energy cost per node is , where is the size of the network. The total latency of our algorithm
is time steps. We observe that there exist families of network
topologies for which both of these bounds are simultaneously optimal up to
polylog factors, so any significant improvement will require additional
assumptions about the network topology.
We also consider the related problem of assigning, for each node in the
network, a neighbor to back up its data in case of node failure. Here, a key
goal is to minimize the maximum load, defined as the number of nodes assigned
to a single node. We present a decentralized low-energy algorithm that finds a
neighbor assignment whose maximum load is at most a polylog() factor bigger
that the optimum.Comment: 14 pages, 2 figures, 3 algorithm
- …