Approximation Algorithms For Distributed
Approximation Algorithms For Distributed
2010
Recommended Citation
Pandit, Saurav. "Approximation algorithms for distributed systems." dissertation, University of Iowa, 2010.
htp://ir.uiowa.edu/etd/870.
by
Saurav Pandit
An Abstract
December 2010
ABSTRACT
Geometry. This thesis focuses on the design and analysis of distributed algorithms
resource constrained networks, e.g. wireless ad-hoc and sensor networks, P2P systems,
mobile networks etc. These problems can often be abstracted by variations of well-
Many of these problems are known to be hard (NP-complete). But we need fast
and light-weight distributed algorithms for these problems, that yield near-optimal
solutions.
The results presented in this thesis can be broadly divided in two parts. The
first part contains a set of results that obtain improved solutions to the classic problem
theoretic terms, the goal is to compute a spanning subgraph of the input graph, that
is sparse, lightweight and has low stretch. The term “low stretch” indicates that in
spite of dropping many edges, the distance between any two nodes in the graph is not
increased by much. We model WSNs as geometric graphs - unit ball graphs, quasi-
unit ball graphs etc. in Euclidean spaces, as well as in more general metric spaces of
In the second part of the thesis we focus on distributed algorithms for cluster-
problems (e.g., minimum dominating set, facility location problems) that improve on
best known results so far. The main contribution here is the design of distributed
algorithms where the running time is a “tunable” parameter. The advent of dis-
tion guarantees even after very few rounds of computation and message exchanges.
Abstract Approved:
Thesis Supervisor
Date
APPROXIMATION ALGORITHMS
by
Saurav Pandit
December 2010
CERTIFICATE OF APPROVAL
PH.D. THESIS
Saurav Pandit
Kasturi Varadarajan
Sukumar Ghosh
James Cremer
Eunjin Jung
Jeffrey Ohlmann
ACKNOWLEDGEMENTS
investing so much time in me and guiding me through my thesis. Not only that he
helped me understand new concepts, investigate problems and obtain solutions, but
he made me acquainted with the customs of academic life and research. For the
(NSF Grant CCF 0915543). It has been a tremendous pleasure working so closely
I would also like to thank Sukumar Ghosh; it was his Distributed Systems and
Algorithms class that first sparked my interest in the subject. He has always provided
for working with us on our topology control results. I also thank Kasturi Varadarajan
for his general guidance and introducing me to several geometric techniques I found
Raman, Kevin Lillis, Imran Pirwani, Benton McCune, Erik Krohn, Matt Gibson,
Gaurav Kanade and members of the Algorithms Reading Group, for many stimulating
exchange of ideas. My sincere thanks to EJ Jung, Jim Cremer and Jeff Ohlmann for
ii
Finally, many thanks to my parents, my family and Swagata, a special some-
one, for all the support and encouragement. And a big shout out to all my friends
in Iowa City who has helped make this town my home for the last six years. This
iii
TABLE OF CONTENTS
CHAPTER
1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Overview of Our Approach . . . . . . . . . . . . . . . . . 4
1.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.1 Topology Control . . . . . . . . . . . . . . . . . . . . . . 13
1.2.2 Clustering Problems . . . . . . . . . . . . . . . . . . . . . 15
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.1 Network model . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.2 Our result . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.3 Topology control . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.4 Spanners in computational geometry . . . . . . . . . . . . 24
2.1.5 Summary of our contributions . . . . . . . . . . . . . . . 26
2.1.6 Extensions to our main result . . . . . . . . . . . . . . . . 27
2.2 Sequential Relaxed Greedy Algorithm . . . . . . . . . . . . . . . 28
2.2.1 Processing Edges in E0 . . . . . . . . . . . . . . . . . . . 29
2.2.2 Processing Long Edges . . . . . . . . . . . . . . . . . . . 30
2.2.3 The Three Desired Properties . . . . . . . . . . . . . . . . 39
2.3 Distributed Relaxed Greedy Algorithm . . . . . . . . . . . . . . 49
2.3.1 Distributed Processing of Short Edges . . . . . . . . . . . 49
2.3.2 Distributed Processing of Long Edges . . . . . . . . . . . 50
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.1.1 Topology Control In Doubling Metric . . . . . . . . . . . 57
3.1.2 Net Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.2 Spanners for Doubling UBGs . . . . . . . . . . . . . . . . . . . . 62
3.2.1 Properties of H . . . . . . . . . . . . . . . . . . . . . . . 63
3.2.2 Altering H for Bounded Degree . . . . . . . . . . . . . . 69
3.2.3 Eliminating Virtual Edges . . . . . . . . . . . . . . . . . 74
iv
3.3 Leapfrog Property . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.4 Distributed Implementation . . . . . . . . . . . . . . . . . . . . . 87
3.5 Extension to Quasi-Unit Ball Graphs . . . . . . . . . . . . . . . 93
3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.1.1 Related work . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.1.2 Main results . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2 Sequential Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 104
4.2.1 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.3 Distributed Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 112
4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
v
7 FUTURE WORK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
vi
LIST OF FIGURES
1.1 Integer Program for FacLoc and the dual of its LP-relaxation . . . . . . 11
2.1 u, v, z are three points in Rd with ∠vuz ≤ θ(a) Edge {u, v} is covered:
{u, z} followed by a t-spanner zv-path is a t-spanner uv-path. . . . . . . 32
2.2 Edges interior to disks are intra-cluster edges. Edge {a, b} is an inter-
cluster edge because spG′i−1 (a, b) ≤ Wi−1 , and {b, c} is an inter-cluster
edge because {u, v} is in G′i−1 . An st-path in G′i−1 , shown by the dashed
curve may be approximated by the path s, a, b, t in Hi−1 . . . . . . . . . . 35
2.3 If {y, z} is a query edge, then by the argument above we have that G′
contains a t-spanner yz-path p. Otherwise, if {y, z} is not a query edge,
since its length is less than the length of {x, y}, by the inductive hypothesis
we get that there is a t-spanner yz-path p. (a) {x, y} is a covered edge
(b) {u, v} is a query edge: if Gi contains a t-spanner uv-path, then Gi
contains a t-spanner xy-path. . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4 Leapfrog Property. (a) Region χ contains two neighbors v and z of u. (b)
Definition of the t-leapfrog property with S = {{u1, v1 }, {u2, v2 }, {u3 , v3 }}. 43
3.3 An example to demonstrate the tightness result. (a) Graph H with total
weight wt(H) = Ω(log ∆) · wt(MST ) (b) Net tree for the vertex set V of
H; V0 = V1 = V , and Vk = {u1+i·2k , i = 0, 1, 2, . . .}, for k ≥ 2. . . . . . 69
3.4 A short ab-path passes through virtual edge {u, v}. After replacing virtual
edge {u, v} by real edge {x, y}, there is a short ab-path through {x, y}. . 76
3.5 Definition of the t-leapfrog property with S = {{u1, v1 }, {u2, v2 }, {u3 , v3 }}. 78
vii
3.7 The metric space defined by dΓ has doubling dimension. . . . . . . . . . 92
4.1 A UDG with eight vertices. Opening costs are integers shown next to the
vertex names and connection costs of edges are assumed to be Euclidean
lengths. Vertices b, g, and e have been opened as facilities. The solid
lines indicate the assignments of vertices (clients) to open facilities and
the dotted lines indicate edges in the UDG that are not being used for any
facility-client connection. Only the disks around the three open facilities
are shown in the figure. The cost of this solution is 4 units (for opening
facilities) plus |f g| + |ab| + |cb| + |de| + |he|. . . . . . . . . . . . . . . . 96
5.1 An instance of standard FacLoc. The table shows the pairwise connection
costs between clients and facilities. OPT consists of open facilities 2 and
3 with clients a, b and c connected to facility 2 and client d to facility 3.
Total cost of OPT is 11. Note that any solution with a single open facility
or with all the facilities open, will have cost more than 11. So is the case
for any solution that opens facility 1. . . . . . . . . . . . . . . . . . . . 118
5.2 Suppose that a temporarily open facility i is positively paid for by Clients
1, 2 and 3 (i.e., βi1 , βi2 , βi3 > 0). Further suppose that client 1 positively
pays for 6 temporarily open facilities, client 2 pays for 4, and client 3 for 5
temporarily open facilities. This leads to 3 cliques in H of sizes 6, 4, and
5 respectively. If each facility i thinks of itself as belonging to the clique
of the client with lowest ID, then Clique 1 will have size 6, Clique 2 will
have size 2, and Clique 3 will have size 2. This allows i to figure out that
its degree is 6 + 2 + 2 = 10. . . . . . . . . . . . . . . . . . . . . . . . . . 131
5.3 Client j is indirectly connected to i because i′ was closed after the MIS
computation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.4 Shows the partition of the nodes of a graph into interior, boundary, and
exterior nodes with degree threshold τ set to 2. . . . . . . . . . . . . . . 142
5.5 Client j was initially connected to facility i′ that was closed during spar-
sification. In that case, j will find a facility i to connect to so that
distance(i, i′ ) ≤ 2k2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
viii
6.1 Example execution of one iteration of the pruning process. Fig. (a) shows
the original graph H with S (square vertices) and B (round vertices).
Suppose p = 1. Fig. (b) shows two vertices, 1 and 3 of S, being opened.
These two open vertices cover 4 vertices in B. Then the two open vertices
and the four covered vertices are deleted from H. Fig. (c) shows the
resulting graph. Vertex 4 in S is no longer being paid for and is also
deleted. This renders vertices 6 and 7 (in B) isolated and so these are also
deleted. Fig. (d) shows the graph at the end of the iteration. . . . . . . 154
ix
1
CHAPTER 1
INTRODUCTION
1.1 Background
Distributed approximation is a new and emerging area that bridges two well-
connected by physical wires or they could be wireless devices communicating via ra-
decentralized networks (e.g. the Internet, P2P systems, sensor networks etc.) is giv-
ing rise to a large variety of challenges. Although, many of these challenges can be
ized control and the limitation to local knowledge renders most of the traditional
we will study later in detail, is minimum weight spanner construction. It is often nec-
functional at a time, yet not to disconnect any node from the network at any point
of time. This problem roughly reduces to the problem of constructing a low weight
spanning subgraph. However, most traditional sequential algorithms for this problem
are greedy and require a strict ordering of edges (according to their weight). Such
generally, many algorithms that provide guaranteed approximation factors are greedy
for distributed approximation algorithms is to relax the need for a global ordering on
topology is either too resource consuming or simply impossible due to mobility, dy-
state about the network and ideally each node should base its decision on local in-
formation only. This is the first and foremost challenge in distributed computing
and provokes the question of what can and cannot be computed locally [66, 50, 55].
Furthermore, the integration of handheld mini devices into the Internet and advent
of wireless ad hoc and sensor networks pose many additional and fundamentally new
challenges. Firstly, most of these devices/nodes are battery powered. Hence energy
ensure that only the necessary nodes are awake at any time and the remaining nodes
are in some type of a sleep mode. This gives rise to various clustering and scheduling
problems. Additionally many of the real life ad hoc and sensor networks are made of
radio sensors that are built using off-the-shelf components. Not only do they have
very limited bandwidth and working memory, often their communication capabilities
are unreliable due to hardware issues, as well as due to interference of radio signals.
3
Due to these difficulties and due to the dynamic nature of such networks, we need
algorithms that are not only local, but also fast so that they can be run repeatedly.
lems (e.g. set cover, facility location etc.) is an extremely active area of research in
cover [11] in 1979, a O(1)-approximation for metric facility location [36] in 2001, a
O(1)-approximation for weighted minimum dominating set in unit disk graphs [2] in
2006 - these are just few of the many examples that demonstrate the attention re-
searchers have been paying to approximation algorithms for decades. In the quest for
there is very little hope for achieving optimal results. Hence, approximation al-
gorithms seem to be a natural fit for this scenario. With the emergence of more
and more complex distributed environments every day, distributed approximation has
emerged as a rapidly developing field. For example, let us look at minimum domi-
4
nating set1 (MDS), which has been studied for decades. It is an NP-complete problem.
However it has been shown that it can be approximated well by a natural greedy
algorithm which repeatedly adds the node that covers the most number of uncovered
the maximum degree of a node plus one [38, 62]. In the distributed setting, Jia et
al. [37] then relax this greedy algorithm that, in each step, picks several good nodes
instead of picking the single best choice. This speeds up the process, but hurts the
quality of the solution by selecting more nodes than necessary. To compensate for
In spite of all the aforementioned challenges, there are some aspects of dis-
tributed systems and computing that allow us to design fast and near-optimal al-
gorithms. The first set of results in my thesis utilize the geometric nature of some
distributed systems, especially those that arise in wireless radio networks. Another
“local” nature of the problem. This issue is usually not important in a sequential
setting, but is critical in a distributed setting and we try to exploit it to obtain our
Unlike the Internet, P2P systems etc., the nodes in a wireless network reside
in Euclidean space. Also in such networks, each node can only communicate with a
restricted set of other nodes. Given a node u, let Γ(u) (also known as the neighborhood
are generally shaped likes disks, polygons or more generally, geometric fat objects.
Researchers have utilized the geometric structure of the network graphs to come up
If we start with the assumption that each node has a transmission range that
is disk-like, we obtain several different models for wireless networks. The simplest of
these is known as the unit disk graph [64] or UDG2. A natural 3-dimensional extension
is a unit ball graph (UBG). These models are useful due to their simplicity, but one
could argue they are not a very realistic representation of wireless networks. Some of
the criticisms of the UDG (or UBG) model can be deflected by a further improved
model called α-quasi unit ball graph [15, 40] or α-qUBG3 . The α-UBG model goes
beyond the unrealistic “flat world” assumption of UDGs and also takes into account
transmission errors, fading signal strength, and physical obstructions. We also study
2 In an UDG, the nodes lie on an Euclidean plane. Two nodes have an edge between
them if they are at most unit distance away.
3 In an α-qUBG (α < 1), a node is guaranteed to have an edge between other nodes
within distance α, and not to have an edge beyond unit distance. No guarantees in the
annulus in between.
6
doubling metric). Doubling metrics are robust under distortions in distance measures
and its bounded growth property seem to be the characteristics of large-scale wireless
networks.
UDGs than in general graphs. The problems considered include maximum indepen-
dent set, minimum vertex cover, minimum coloring, minimum dominating set etc.
Marathe et al. [64] present a series of heuristics for these problems is UDGs and
use the geometric properties to establish good approximation factors. Most topology
control problems become easier in UDGs (or other geometric graphs) as well.
complexity and hardness of the problems arising in these networks. Some of these
assumptions are: whether nodes know the coordinates of their neighbors, or just
the distance information; whether the nodes know the total number of nodes in the
Our next set of results can be credited to a the inherent “local” nature of some
of the problems we consider. For example, MDS, facility location, coloring problems
4 The doubling dimension of a metric space is the smallest ρ such that any ball in this
metric space can be covered by 2ρ balls of half the radius.
7
etc. are local in nature, i.e. near-optimal distributed algorithms could be constructed
for the problem where nodes do not need information about the whole network. In
rounds for most of these problems. But the more interesting fact is that the approx-
number of communication rounds, message size etc.) and the quality of the algorithm
(i.e. the approximation factor). Such trade-offs are not very common in sequential
algorithms. In the sequential setting, often the best known or best possible ap-
proximation factors is achieved via fairly sophisticated and efficient algorithms. For
example, Jain and Vazirani present a 3-approximation [36] for metric, uncapacitated
facility location. But it is not possible to run this algorithm for more number of
rounds, exchange more information and obtain a better solution. But, in the dis-
tributed setting, there seems to be a more visible (negative) correlation between the
approximability and the number of rounds or message size. Researchers have provided
approximation guarantees for various problems with algorithms that run in polyno-
provide non-trivial approximation guarantees for even smaller number of rounds, e.g.
inherent trade-off between the approximability and running time in seeking answers
to such questions.
A resource that play key role in the above mentioned trade-off is the amount
8
of information available and the locality of that information. One common measure
for the amount of available information is the message size. We describe our message
passing models based on a classification by David Peleg [71]. In the LOCAL model,
each node can send one message per round to its neighbors. But there is no bound on
the message size. This is a crucial point in distributed computing as, with unlimited
message size, a node can send out the whole neighborhood information in one round.
ideal abstraction layer for analyzing the effects of locality on distributed computation.
Even if, all the neighborhood data can simply be made available with one round of
message transactions, some problems (e.g. k-median, minimum spanning tree) still
remain hard. This indicates that to solve those problem we need more than just local
hand, the algorithm by Jia et al. [37] demonstrates a O(log n)-approximation for MDS
needs the nodes to know information only from their O(log n)-neighborhood. The
importance of the LOCAL model also stems from the fact that it provides a one-to-
which distributed decision makers at the nodes of a graph must base their decision on
(complete) knowledge about their k-hop neighborhood. To see this, note that because
messages are unbounded, every node can collect the identifiers and interconnections
complete k-neighborhood can be achieved if all nodes send their complete states to all
their neighbors in every round. After round i, all nodes know their i-neighborhood.
(i + 1)-neighborhood. On the other hand, a node cannot obtain any information from
Such systems are modeled by the CON GEST model, where each node can send one
message per round to each neighbor, where message size in bounded by O(log n) bits.
The significance of O(log n) bits is that we need only log n bits to represent n unique
node IDs. Also, the input constants are assumed to be representable using log n bits.
The network diameter itself is not of much concern in this model, but the amount
of information in the neighborhood itself could be high. For example, consider the
facility location problem on a complete bipartite graph with m facilities and n clients.
It is only a diameter 2 graph. But there are mn pieces of information just to define
all the connection costs. A successful algorithm in the CON GEST model will have to
make a smart and careful decision about which of these pieces of information need to
us successfully utilize the trade-off and design better approximation algorithms, even
when message size is bounded and only small number of rounds are available.
10
At the core of several of our results, especially those in the later half of this
e.g. vertex cover, facility location etc. Say, we are given a minimization problem. In
a primal-dual scheme, we start with an integer program (IP) formulation of the given
problem. We call this the primal. Then we consider its LP-relaxation (LP). However,
we do not bother solving the LP, instead we obtain the dual of the LP-relaxation.
The goal is to obtain an integral, feasible solution (say L) of the LP and a feasible
solution D of the DP and show that cost(L) is within a factor c of cost(D). By the
problem. In a sequential setting, we start with a small but feasible dual solution and
continuously increase the dual variables until their corresponding dual constraints
become tight. Every time that happens we (integrally) add to the primal solution
and freeze the dual variables involved. We found the primal-dual technique is an
Firstly, for many problems the tightness of the dual constraints can be checked
locally in O(1) rounds of message transactions, even in the CON GEST model.
rithms. In a distributed setting, we need a fast and discrete increase of the dual
variables. First we find an upper bound (say, D ∗ ) on the value of the dual objective
function. Then we need to find an initial dual feasible solution (say, D) that is not
11
X X X
minimize c(i, j) · xij + f (i) · yi maximize αj
i∈F,j∈C i∈F j∈C
X
subject to xij ≥ 1, j ∈ C subject to αj − βij ≤ c(i, j), i ∈ F, j ∈ C
i∈F
X
IP: DP: βij ≤ f (i), i ∈ F
yi − xij ≥ 0, i ∈ F, j ∈ C j∈C
Figure 1.1: Integer Program for FacLoc and the dual of its LP-relaxation
too small. Starting from D we increase the dual variables by a certain factor in every
round. For example, in our algorithm for metric FacLoc (see Chapter 5), the gap
we increase the dual variables geometrically (say, by a constant b), we can finish the
algorithm in log2b n rounds. We also show that this geometric increase only introduces
an factor b to the approximation factor. In case of the k-round algorithm, our increase
1
in n r in the rth round. Note that, this technique underlines the trade-off between
the running time and approximation factor. For example, if we want to finish the
algorithm in smaller number of rounds, our increase in dual variables per round will
finer increase in dual variables will result in a better approximation factor at the cost
However, this discrete increase can be seen as a relaxation and makes a pruning
1.2 Results
Now, let us give a more technical overview of our results. In my thesis, we study
two types of problems. The first set of problems fall under the category of topology
control problems. These problems arise in wireless networks where each pair of nodes
may or may not have an open communication link between them. Maintaining many
passing itself is considered to have a high overhead in terms of resources (e.g. battery
power). Hence, given a network graph, we try to find a spanning subgraph (or
spanner ) by selecting only a few of the given communication links, represented here
by edges. However, dropping too many edges can increase (stretch) the shortest-path-
distance between two nodes, and in turn increase communication overhead, e.g. more
dependence on routing. We need to choose a sparse set of edges that spans the graph,
select certain nodes in the network to be leaders and every other node is assigned
to a leader. The goal is to find a backbone of the network, so that at any point of
time, the nodes in the backbone can effectively represent the whole network. The MDS
problem, as well as its weighted version, WMDS) are standard examples of clustering
problems. However, we pay close attention to the communication costs as well, i.e.
we intend not to select too many leaders, but if we select too few the other nodes
13
may have to incur high costs trying to communicate with their cluster leader. This
problem can be abstracted by variations of the classic facility location problem. All
these problems are studied within the geometric or the resource trade-off context (or
both).
Each of the following chapters represents a result (or a set of results) motivated
by one of the two (or both) factors mentioned earlier, i.e., utilizing the geometric
the trade-off between various resources and their effect on the quality of the output.
Also, each problem encountered in these chapters can fall under the category of either
The next two chapters contain algorithms and analysis from the domain of
topology control in wireless networks. For an overview of topology control, see the
survey by Rajaraman [73]. Since an ad-hoc network does not come with fixed in-
frastructure, there is no topology to start with and informally speaking, the topology
control problem is one of selecting neighbors for each node so that the resulting topol-
ogy has a number of useful properties such as sparseness, small weight, or maximum
technical terms.
R+ . Naturally V represents the nodes and E represents the set of edges, i.e. the set
14
of communication links. An edge weight is a measure for the cost of unit message
subgraph G′ of G such that for all pairs of vertices u, v ∈ V , the length of a shortest
constructing a sparse t-spanner, for small t, of a given graph G has been extensively
more recently by researchers in ad-hoc wireless networks. Let us briefly discuss the
lightweight, linear size, (1 + ε)-spanner for any given ε > 0. The wireless network is
modeled by a d-dimensional α-UBG. The main result in this chapter is the following:
for any fixed ε > 0, 0 < α ≤ 1, and d ≥ 2 there is a distributed algorithm running in
weight w(G′) = O(w(MST (G)). The technical contributions in this chapter include a
new, sequential, greedy algorithm with relaxed edge ordering and lazy updating, and
clustering techniques for filtering out unnecessary edges. This result, as mentioned
and improves on existing topology control algorithms along several dimensions. The
results in this chapter were published [15] in the 25th Annual ACM SIGACT-SIGOPS
chapter subsumes the results in Chapter 2 that apply to Euclidean metric spaces, and
extends these results to doubling metrics. Given a quasi unit ball graph G residing
in a metric space of constant doubling dimension, our algorithm constructs, for any
In addition, we show that H is “lightweight”, in the following sense. Let ∆ denote the
aspect ratio of G, that is, the ratio of the length of a longest edge in G to the length of
where MST denotes a minimum spanning tree of the metric space. Finally, we show
that H satisfies the so called leapfrog property, an immediate implication being that,
for the special case of Euclidean metric spaces with fixed dimension, the weight of
H is bounded above by O(wt(MST )). We employ the idea of net trees to obtain a
role in determining which edges to keep and which to drop. As mentioned before,
UBGs in doubling metric spaces are robust models of wireless networks and this
paper is motivated by topology control for wireless networks. These results were
Our second set of results deal with efficiently partitioning the network in small
clusters, so that one node from each cluster can collectively represent the whole
16
network. Clustering can play a critical role in increasing the performance and lifetime
of wireless networks. Each cluster will have a cluster leader and we need to pay a
cost for opening a node as the cluster leader. The cluster leaders stay awake at
one time and the non-leader nodes can go into sleep mode and stay in touch with
their respective cluster leaders time to time. As mentioned before, these scenario
can be abstracted by various classic problems, e.g. minimum dominating set problem
(MDS), domatic partition problem, facility location problem etc. Most of our results
in this area deal with the facility location problems. Unlike many other clustering
problems, the facility location problem pay attention to the connection costs and this
lead to better clustering. Formally, the facility location problem takes as input a
graph G = (V, E), opening costs f : V → R+ associated with nodes, and connection
of nodes to open (as “facilities”) and a function φ : V → I that assigns every node
(“client”) to an open facility in such a way that the total cost of opening the facilities
Like the previous two chapters, the result in Chapter 4 is also motivated by
the geometry of wireless networks. In this chapter, we present the first constant-
factor approximation algorithm for the facility location problem on UDGs. In this
version of the problem, connection costs are not metric, i.e., they do not satisfy
the triangle inequality, because the cost of connecting to any non-neighbor can be
O(log n)-factor approximation, but we are able to use structural properties of UDGs
17
primal-dual algorithm for facility location due to Jain and Vazirani [36] with recent
results on the weighted MDS problem for UDGs [2, 34]. We then show that the
facility location problem on UDGs is inherently local and one can solve local sub-
problems independently and combine the solutions in a simple way to obtain a good
solution to the overall problem. This leads to a distributed version of our algorithm
in the LOCAL model that runs in constant rounds and still yields a constant-factor
approximation. Even if the UDG is specified without geometry, we are able to combine
recent results on maximal independent sets and clique partitioning of UDGs, to obtain
an O(log n)-approximation that runs in O(log∗ n) rounds. This paper [68] won the
algorithms for the metric facility location problem in the CON GEST model, where
message sizes are bounded by O(log N) bits, N being the network size. We first
show how to obtain a 7-approximation in O(log m + log n) rounds via the primal-dual
method; here m is the number of facilities and n is the number of clients. Subse-
quently, we generalize this to a k-round algorithm, that for every constant k, yields
√ √
an approximation factor of O(m2/ k
· n2/ k
). These results answer a question posed
by Moscibroda and Wattenhofer (PODC 2005 ). Our techniques are based on the
same primal-dual algorithm due to Jain and Vazirani [36] and a recent rapid random-
18
ized sparsification technique due to Gfeller and Vicari [24]. These results complement
the results of Moscibroda and Wattenhofer [65] for non-metric facility location and
extend the results of Gehweiler et al. [23] for uniform metric facility location. This
paper was published [69] in the 28th Annual ACM SIGACT-SIGOPS Symposium on
In Chapter 6 we present our most recent work. This chapter provides further
insight into how a rapid pruning mechanism can be fit into our primal-dual framework
to design k-round algorithms. This chapter also explores the equivalence of primal-
dual and greedy approaches. We start by defining a pruning process involving sellers
on one side and buyers on the other. The goal is to quickly select a subset of the sellers
so that the products that these sellers bring to the market has small cost ratio, i.e.,
the ratio of the total cost of the selected sellers’ products to amount that interested
buyers are willing to pay. As modeled here, the pruning process can be used to speed
etc). We present a randomized instance of the pruning process that, for any positive
k, runs in O(k) communication rounds in the CON GEST model, yielding a cost ratio
of O(N c/k ). Here N is the product of the number of sellers and number of buyers
and c is a small constant. Using this O(k)-round pruning algorithm as the basis, we
MDS and facility location (both metric and non-metric versions). Our algorithms
shave a “logarithmic factor” off the best, known, approximation factor, typically
19
achieved using LP-rounding techniques. This paper has recently been accepted [70]
well as to approach new problems that we hope can be solved with smart applications
CHAPTER 2
LOCAL APPROXIMATION SCHEMES FOR TOPOLOGY CONTROL
2.1 Introduction
linear size, lightweight t-spanner of bounded degree for any given t > 1, on wireless
We model wireless networks using d-dimensional quasi unit ball graphs. For
any fixed α, 0 < α ≤ 1 and integer d ≥ 2, a d-dimensional α-quasi unit ball graph
(α-UBG, in short) is a graph G = (V, E) whose vertex set V can be placed in one-one
correspondence with a set of points in the d-dimensional Euclidean space and whose
edge set E satisfies the constraint: if |uv| ≤ α then {u, v} ∈ E and if |uv| > 1 then
{u, v} 6∈ E. Here we use |uv| to denote the Euclidean distance between the points
corresponding to vertices u and v. The α-UBG model does not prescribe whether a
pair of vertices whose distance is in the range (α, 1] are to be connected by an edge or
21
not. Specifically, if |uv| ∈ (α, 1], then it is assumed that an adversary determines if
{u, v} ∈ E or not. This is an attempt to take into account transmission errors, fading
signal strength, and physical obstructions. Our algorithm does not need to know the
locations of nodes of the α-UBG in d-dimensional Euclidean space; just the pairwise
Euclidean distances.
plistic unit disk graph (UDG) model of wireless networks that is popular in literature.
attractive due to their mathematical simplicity, but have been deservedly criticized
for being unrealistic models of wireless networks [45]. In our view, d-dimensional
α-UBGs are a significant step towards a more realistic model of wireless networks.
works with unstable transmission ranges and the difficulty of doing geometric routing
that does not account for channel access and collision issues. Time is divided into
rounds and in each round, each node can send a different message to each of its neigh-
bors, receive different messages from all neighbors and perform arbitrary (polynomial)
the number of nodes. We measure the cost of our algorithm in terms of the number of
For any edge weighted graph J, we use w(J) to denote the sum of the weights
of all the edges in J and MST (J) to denote a minimum weight spanning tree of J.
For any fixed ε > 0, 0 < α ≤ 1, and d ≥ 2 our algorithm runs in O(log n · log∗ n)
spanner G′ of G whose maximum degree ∆(G′ ) = O(1) and whose total weight
w(G′ ) = O(w(MST (G)). Since any spanner of G has weight bounded below by
w(MST (G)), the weight of the output produced by the algorithm is within a constant
times the optimal weight. As far as we know, our result significantly improves all
known results of a similar kind along several dimensions. More on this further below.
networks. In Chapter 1 we have already provided an intuition for the topology control
problems. Let us look into further technical details. Let V be a set of nodes that can
communicate via wireless radios and for each v ∈ V , let N(v) denote the set of all
nodes that v can reach when transmitting at maximum power. The induced digraph
G = (V, E), where E = {(u, v) | v ∈ N(u)}, represents the network in which every
node has chosen to transmit at maximum power and has designated every node it can
reach as its neighbor. The topology control problem is the problem of devising an
efficient and local protocol P for selecting a set of neighbors NP (v) ⊆ N(v) for each
is typically required the satisfy properties such as symmetry (if v ∈ NP (u) then
u ∈ NP (v)), sparseness (|EP | = O(|V |)) or bounded degree (|NP (v)| ≤ c for all nodes
v and some constant c), and the spanner property. Sometimes stronger versions of
desired, both for providing fault-tolerance and for improving throughput [28, 29]. If
the input graph consists of nodes in the plane, it is quite common to require that
the output graph be planar [57, 58, 59, 79, 81]. This requirement is motivated by
body of literature on the problem to which the above sample of citations do not do
justice. However, many of the topology control protocols that provide worst case
guarantees on the quality of the topology, assume that the network is modeled by a
UDG. A recent example [59] presents a distributed algorithm that requires a linear
of a given UDG with t ≈ 6.2 and in which each node has degree at most 25. These
two constants can be slightly tuned – t can be brought down to about 3.8 with a
significant increase in the degree bound. We improve on the result in [59] along several
the “flat world” assumption and the identical transmission range assumption of UDGs
are unrealistic [45]. By using an α-UBG we generalize our model of wireless networks,
hopefully moving much closer to reality. For any ε > 0, our algorithm returns a (1+ε)-
24
spanner; as far as we know, this is the first distributed algorithm that produces an
arbitrarily good spanner for an α-UBG model of wireless networks. We also guarantee
that the total weight of the output is within constant times optimal – a guarantee
that is not provided in [59]. Finally, using algorithmic techniques and distributed data
structures that might be of independent interest, we ensure that our protocol runs
in O(log n · log∗ n) communication rounds. We are not aware of any topology control
tempted to find sparse, lightweight spanners for complete Euclidean graphs. Given
a set P of n points in Rd , the tuple (P, E), where E is the set of line segments
and whose weight is bounded by the weight of a minimum spanning tree on P . For
an early example, see [56] in which the authors show that there are “planar graphs
almost as good as the complete graphs and almost as cheap as minimum spanning
trees.” This was followed by a series of improvements [13, 16, 17, 25], with the most
25
recent paper [13] presenting algorithms for constructing Euclidean subgraphs that
provide the additional property of k-fault tolerance. Most of the papers mentioned
width 4.7in
2. E ′ ← φ, G′ ← (V, E ′ )
(a) E ′ ← E ′ ∪ {e}
(b) G′ ← (V, E ′ )
Output G′ .
It is well-known [17] that if the input graph G = (V, E) is the complete Eu-
clidean graph, then the output graph G′ = (V, E ′ ) produced by SEQ-GREEDY has the
following useful properties: (i) G′ is a t-spanner of G, (ii) ∆(G′ ) = O(1), and (iii)
dynamic graph with O(n) edges. Consequentially, papers in this area [17, 25] focus
[17] show how to use certain kind of graph clustering to answer shortest path queries
efficiently, thereby reducing the running time of SEQ-GREEDY to O(n log2 n). One of
our main contributions presented in this chapter is to show how a variant of the Das-
26
distributed setting.
In obtaining the main result, our technical contributions are the following:
1. We first show that sparse, lightweight t-spanners for arbitrarily small t > 1, not
only exist for d-dimensional α-UBGs, but can be computed using SEQ-GREEDY.
Note that sparse t-spanners for arbitrarily small values of t ≥ 1 do not exist
for general graphs. For example, there is a classical graph-theoretic result that
shows that for any t ≥ 1, there exist (infinitely many) unweighted n-vertex
graphs for which every t-spanner needs Ω(n1+1/(t+2) ) edges (see Page 179 in
[71]).
are all shorter than edges in Bi+1 . It is then shown that any ordering of the
the edges in B2 , etc., is good enough for the correctness of SEQ-GREEDY, even
for d-dimensional α-UBGs. More importantly, we show that the update step
in SEQ-GREEDY (Step 3(a)) need not be performed after each edge is queried.
Instead, a more lazy update may be performed, after each bin is completely
processed. Being able to perform a lazy update is critical for a distributed im-
27
plementation; roughly speaking, we want the nodes to query all edges in a bin
bin.
queried per node. Reducing the number of query edges per node, is critical to
being able to guarantee that the output of our distributed version of SEQ-GREEDY
— such that each phase requires O(log∗ n) rounds. Each phase requires the
show that the derived graphs are unit ball graphs of constant doubling dimension
[51] and use the O(log∗ n)-round MIS algorithm of Kuhn et al. [51].
Here we briefly report on extensions to our main result that we have obtained.
1. Let G = (V, E) be an edge-weighted graph. For any t > 1 and positive integer
from [13] we can extend our algorithm to produce a k-vertex (or a k-edge)
2. So far we have used Euclidean distances as weights for the edges of the input
used in place of Euclidean distances |uv|, we can show that our algorithm still
distances, such as the function mentioned above, may be used to produce energy
spanners.
output of our algorithm is not only lightweight with respect to the usual weight
measure (sum of the weights of all edges) but also with respect to the power
cost measure.
with all three desired properties, even when the input is not a complete Euclidean
graph, but is a d-dimensional, α-UBG for fixed d and α. Relaxing the requirement in
SEQ-GREEDY that the edges be totally ordered by length and allowing for the output
Let r > 1 be a constant to be fixed later and let Wi = r i α/n for each i =
29
m = ⌈logr αn ⌉. Then, since no edge has length greater than 1, the length of any edge
the algorithm has processed in phase i and earlier. We use G′i to denote the output of
the algorithm at the end of phase i. In other words, G′i is the spanning subgraph of G
We start by stating a property of G0 that follows easily from the fact that all
three steps (i) determine the connected components of G0 , (ii) use SEQ-GREEDY to
compute a t-spanner for each connected component (that is, a clique), and (iii) let G′0
30
be the union of the t-spanners computed in Step (ii) and output G′0 . The following
Theorem 2. G′0 satisfies the following properties. (i) For every edge {u, v} ∈ E0 , G′0
contains a uv-path of length at most t · |uv|, (ii) ∆(G′0 ) = O(1), and (iii) w(G′0 ) =
O(w(MST (G))).
We now describe how edges in Ei are processed, for i > 0. The algorithm
PROCESS-LONG-EDGES has five steps: (i) computing a cluster cover for G′i−1 , (ii) se-
lecting query edges in Ei , (iii) computing a cluster graph Hi−1 for G′i−1 , (iv) answering
shortest path queries for the query edges selected in Step (ii), and (v) adding edges
to G′i−1 to obtain G′i and then removing redundant edges from G′i . These steps are
For any graph J, let V (J) denote the vertex set for J. For any pair of vertices
u, v ∈ V (J) let spJ (u, v) denote the length of a shortest uv-path in J. Define a cluster
of J with center u ∈ V (J) and radius r to be a set of vertices Cu ⊆ V (J) such that,
for each v ∈ Cu , spJ (u, v) ≤ r. A set of clusters {Cu1 , Cu2 , . . .} of J is a cluster cover
of J of radius r if every cluster in the set has radius r, every vertex in V (J) belongs
to at least one cluster, and for any pair of cluster centers ui and uj , spJ (ui , uj ) > r.
31
δ < 1 is a constant that will be fixed later. We start with an arbitrary vertex u ∈ V
and run Dijkstra’s shortest path algorithm with source u on G′i−1 , in order to identify
nodes v ∈ V with the property that spG′i−1 (u, v) ≤ δWi−1 ; each such node v gets
included in the cluster Cu . Once Cu has been identified, recurse on V \ Cu until all
nodes belong to some cluster and we have a cluster cover of G′i−1 of radius δWi−1 .
while the cluster cover for G′i−1 has radius δWi−1 , with δ < 1. This implies that each
edge in Ei has endpoints in different clusters. Our goal is to select a unique query
edge per pair of clusters. This will guarantee that there are a constant number of
query edges incident on any node (see Lemma 4) and this fact will be critically used
by the distributed version of our algorithm to guarantee the degree bound on the
π
Let θ be a quantity that satisfies 0 < θ < 4
and t ≥ 1/(cos θ − sin θ). Note
that for any value t > 1, no matter how small, there always exists a θ that satisfies
to be a covered edge if there is a z ∈ V such that (i) {u, z} ∈ G′i−1 , |vz| ≤ α and
∠vuz ≤ θ or (ii) {v, z} ∈ G′i−1 , |uz| ≤ α and ∠uvz ≤ θ. Any edge in Ei that is
not covered is a candidate query edge. The motivation for these definitions is the
32
π 1
Lemma 3 (Czumaj and Zhao [13]). Let 0 < θ < 4
and t ≥ cos θ−sin θ
. Let u, v, z be
three points in Rd with ∠vuz ≤ θ. Suppose further that |uz| ≤ |uv|. Then the edge
Figure 2.1).
v
θ
z
u
Figure 2.1: u, v, z are three points in Rd with ∠vuz ≤ θ(a) Edge {u, v} is covered:
{u, z} followed by a t-spanner zv-path is a t-spanner uv-path.
Now note that for each covered edge {u, v} ∈ Ei , there exists z that satisfies
the preconditions of Lemma 3 (by definition), and using this lemma we can show that
G′i−1 already contains a uv-path of length at most t · |uv|. This suggests that covered
edges need not be queried and therefore we can start with the complement of the set
Now we show that the set of candidate query edges can be further pared down.
For each pair of clusters Ca and Cb , let Ei [Ca , Cb ] denote the subset of candidate query
edges in Ei with one endpoint in Ca and the other endpoint in Cb . Our algorithm
33
selects a unique query edge {x, y} from each nonempty subset Ei [Ca , Cb ]. Assuming
The quantity in (2.1) is carefully chosen to guarantee that, if a t-spanner path between
the endpoints of an edge {x, y} that minimizes (2.1) exists in G′i , then t-spanner paths
between the endpoints of all edges in Ei [Ca , Cb ] exist in G′i (this property will later
be shown in the proof of Theorem 10). This implies that, for each pair of clusters Ca
and Cb , it is sufficient to query just the edge {x, y} in Ei [Ca , Cb ] that minimizes (2.1).
The following lemma shows that selecting query edges as described above
filters all but a constant number of edges per cluster. The proof follows from two
observations: (i) if a pair of cluster centers are connected by an edge in Ei , then the
clusters are not too far from each other in Euclidean space (in particular, no farther
than (4δ +r)Wi−1 ), and (ii) the Euclidean distance between any pair of cluster centers
is bounded from below by δWi−1 /t, because they would otherwise be part of the same
cluster.
Lemma 4. The number of query edges in Ei that are incident on any cluster is a
For each selected query edge {x, y} ∈ Ei , we need to know if G′i−1 contains an
xy-path of length at most t · |xy|. In general, the number of hops in a shortest xy-
path in G′i−1 can be quite large and having to traverse such a path would mean that
34
the shortest path query corresponding to edge {x, y} could not be answered quickly
enough. To get around this problem, we use an idea from [17] in which the authors
construct an approximation to G′i−1 , called a cluster graph, and show that for any
edge {x, y} ∈ Ei , the shortest path query for {x, y} can be answered approximately
on Hi−1 in a constant number of steps. The goal of Das and Narasimhan [17] was
show that the Das-Narasimhan data structure can be constructed and maintained in a
distributed fashion for efficiently answering shortest path queries for edges belonging
cluster cover of G′i−1 of radius δWi−1 , and builds a cluster graph Hi−1 of G′i−1 . This
algorithm is identical to the one in Das and Narasimhan [17] and is included mainly
for completeness.
The vertex set of Hi−1 is V and the edge set of Hi−1 contains two types of
cluster centers. An edge {a, b} is an inter-cluster edge if a and b are cluster centers,
and at least one of the following two conditions holds: (i) spG′i−1 (a, b) ≤ Wi−1 , or (ii)
there is an edge in G′i−1 with one endpoint in Ca and the other endpoint in Cb . See
Figure 2.2.
Regardless of the type of a cluster edge e = {a, b} (inter- or intra-), the weight
of e is the value of spG′i−1 (a, b). The following lemma follows easily from the definition
of inter-cluster edges.
35
Cc
Ca
Cb
a c
b
s u v
t
Figure 2.2: Edges interior to disks are intra-cluster edges. Edge {a, b} is an inter-
cluster edge because spG′i−1 (a, b) ≤ Wi−1 , and {b, c} is an inter-cluster edge because
{u, v} is in G′i−1 . An st-path in G′i−1 , shown by the dashed curve may be approximated
by the path s, a, b, t in Hi−1 .
Lemma 5. For any inter-cluster edge {a, b} in Hi−1 , we have that spG′i−1 (a, b) ≤
(2δ + 1)Wi−1 .
The above upper bound also implies that |ab| ≤ (2δ + 1)Wi−1 . Using this and
arguments similar to those used for Lemma 4, we can show that the number of inter-
cluster edges incident to a cluster center is O((5 + 1/δ)d ), so we have the following
lemma.
The main reason for constructing the cluster graph Hi−1 is that lengths of
paths in Hi−1 are close to lengths of corresponding paths in G′i−1 and shortest path
queries for edges in Ei can be answered quickly in Hi−1 . The following lemma (whose
proof appears in Das and Narasimhan [17]) shows that we can construct Hi−1 such
that path lengths in Hi−1 approximate path lengths in G′i−1 to any desired extent,
Lemma 7. For any edge {x, y} ∈ Ei , if there is a path between x and y in G′i−1
of length L1 , then there is a path between x and y in Hi−1 of length L2 such that
1+6δ
L1 ≤ L2 ≤ L.
1−2δ 1
For query edges {x, y} ∈ Ei , we are interested in knowing whether G′i−1 has
an xy-path of length at most t · |xy|. We ask this question on the cluster graph Hi−1 .
If Hi−1 contains an xy-path of length at most t · |xy|, we do not add {x, y} to G′i ;
otherwise we do. If Hi−1 contains an xy-path of length at most t · |xy|, then so does
G′i−1 (by Lemma 7, since L1 ≤ L2 ). Therefore, not adding {x, y} to the spanner is
not a dangerous choice. On the other hand, even if Hi−1 does not contain an xy-path
of length at most t · |xy|, G′i−1 might contain such a path and in this case adding
edge {x, y} is unnecessary. Adding extra edges is of course not problematic for the t-
spanner property. It will turn out that this is not a problem even for the requirement
that the spanner should have bounded degree and small weight, given that paths in
Given the structure of the cluster graph, all but at most 2 edges in any simple
xy-path are inter-cluster edges. Since the radius of each cluster is δWi−1 , each inter-
cluster edge has weight greater than δWi−1 . We are looking for a path of length at
most t · |xy|. Since |xy| ∈ (Wi−1 , Wi ], we are looking for a path of length at most
t · Wi = t · r · Wi−1 . Any simple path in Hi−1 of length at most t · r · Wi−1 has at most
Lemma 8. For any edge {x, y} ∈ Ei , if spHi−1 (x, y) ≤ t · |xy|, then Hi−1 contains a
One issue we need to deal with, especially when attempting to construct and
answer queries in Hi−1 in a distributed setting, is that edges in Hi−1 need not be
present in the underlying network G. Specifically, for an intra-cluster edge {u, a},
where Ca is a cluster and u ∈ Ca , it may be the case that |ua| > α and {u, a} may
G. However, for any edge {x, y} in Hi−1 (intra- or inter-cluster edge), we have the
bound spG′i−1 (x, y) ≤ (2δ + 1)Wi−1 . This follows from Lemma 5 and the fact that
the radius of each cluster is δWi−1 . Thus a shortest xy-path in G′i−1 lies entirely
of G, this implies that there is a shortest xy-path P in G that lies entirely in the
d-dimensional ball of radius (2δ + 1)Wi−1 centered at x. Since any two vertices in P
that are two hops away from each other are at least α apart (in the d-dimensional
Euclidean space), P contains at most ⌈2(2δ + 1)Wi−1 /α⌉ < ⌈2(2δ + 1)/α⌉ hops. This
Theorem 9. For any edge {x, y} ∈ Ei , if spHi−1 (x, y) ≤ t · |xy|, then G contains a
shortest xy-path with O(1) hops (no more than ⌈2(2δ + 1)/α⌉).
This theorem implies that brute force search initiated from one of the end-
points, say x, will be able to answer the shortest path query on edge {x, y} in O(1)
Recall that shortest path queries for edges in Ei are answered on Hi−1 , and so
updates to G′i in phase i do not influence subsequent shortest path queries in phase
i. Thus it is possible that in phase i two edges {u, v} and {u′ , v ′} get added to G′i−1 ,
Note that, since spG′i−1 (x, y) ≤ spHi−1 (x, y) holds for any pair of nodes x and y,
conditions (i) and (ii) above imply that G′i − {u, v} contains a t-spanner path from
u to v and G′i − {u′ , v ′ } contains a t-spanner path from u′ to v ′ . We call two edges
{u, v} and {u′, v ′ } satisfying conditions (i) and (ii) above mutually redundant: one of
from G′i because our proof that G′ has small weight (Theorem 13) depends on the
To do this, we build a graph J that has a node for each edge in a mutually
redundant pair and an edge between every pair of nodes that correspond to a mutually
redundant pair of edges in G′i . We construct an MIS I of J and eliminate from G′i all
Recall that G′ = G′m is the spanner at the end of phase m. We now prove
that G′ satisfies the three properties that the output of SEQ-GREEDY was guaranteed
to have. The proofs of these theorems form the technical core of this chapter and are
t−1
Theorem 10. For any t > 1, 0 < δ ≤ 4
, the output G′ is a t-spanner.
Proof. We first prove that the theorem holds for all query edges in E, then we extend
the argument to non-query edges as well. Let {x, y} be an arbitrary query edge and
let i ≥ 1 be such that {x, y} ∈ Ei . Then either (i) {x, y} is added to the spanner
in phase i, or (ii) spHi−1 (x, y) ≤ t · |xy|. If the former is true and {x, y} is not a
redundant edge, then the theorem holds. If {x, y} is a redundant edge but does not
get removed from G′i , then again the theorem holds. If {x, y} is a redundant edge that
gets removed from Gi , then at least one mutually redundant counterpart edge must
remain in G′i (since removed edges form a maximal independent set), ensuring a t-
spanner xy-path in Gi . If (ii) is true, then from Lemma 7, spG′i−1 (x, y) ≤ spHi−1 (x, y)
The base case corresponds to edges in E0 , for which SEQ-GREEDY ensures that the
theorem holds.
Assume that the theorem is true for any edge in E of length no greater than
some value q, and consider a smallest non-query edge {x, y} in G of length greater
than q. We prove that spG′ (x, y) ≤ t · |xy|. Let i be such that {x, y} ∈ Ei . We now
40
consider two cases, depending on whether {x, y} is a candidate query edge in phase
i or not.
If {x, y} is not a candidate query edge, then it is a covered edge. That is, there
exists an edge {x, z} in G′i−1 such that |yz| ≤ α and ∠yxz ≤ θ, or an edge {y, z} in
G′i−1 such that |xz| ≤ α and ∠xyz ≤ θ. The two cases are symmetric and so without
loss of generality, assume that the former is true. Here θ satisfies the hypothesis of
π 1
the Czumaj-Zhao lemma (Lemma 3), that is, 0 < θ < 4
and t ≥ cos θ−sin θ
. Since
π
since 0 < θ < 4
, we have |yz| < |xy|. Refer to Figure 2.3(a). If {y, z} is a query
edge, then by the argument above we have that G′ contains a t-spanner yz-path p.
Otherwise, if {y, z} is not a query edge, since its length is less than the length of
{x, y}, by the inductive hypothesis we get that there is a t-spanner yz-path p. In
either case, Lemma 3 tells us that {x, z} followed by p is a t-spanner path from x to
y x
a y
u
<θ
b
z v
x
(a) (b)
Figure 2.3: If {y, z} is a query edge, then by the argument above we have that G′
contains a t-spanner yz-path p. Otherwise, if {y, z} is not a query edge, since its
length is less than the length of {x, y}, by the inductive hypothesis we get that there
is a t-spanner yz-path p. (a) {x, y} is a covered edge (b) {u, v} is a query edge: if Gi
contains a t-spanner uv-path, then Gi contains a t-spanner xy-path.
41
We now consider the case when {x, y} is a candidate query edge in phase i,
but not a query edge. Let a and b be such that x ∈ Ca and y ∈ Cb , and let {u, v}
be the query edge selected in phase i, with u ∈ Ca and v ∈ Cb . Refer to Figure 2.3b.
Recall that G′i is the partial spanner at the end of phase i. We show that
spG′i (x, y) ≤ t · |xy|. We discuss two cases, depending on whether {u, v} was added
to G′i or not.
Assume first that {u, v} was not added to G′i . This means that spHi−1 (u, v) ≤
≤ t · |uv|. (2.3)
We now evaluate
≤ t · |xy|.
This latter inequality involves simple substitutions that use inequalities (2.2) and (2.3),
Now assume that {u, v} was added to G′i . Since u ∈ Ca and Ca has radius
δWi−1 , we have that spG′i−1 (a, u) ≤ δWi−1 . Similarly, spG′i−1 (b, v) ≤ δWi−1 . These
weight
since spG′i (a, u) ≤ spG′i−1 (a, u) ≤ δWi−1 , and same for spG′i (v, b). We can now con-
In deriving this chain of inequalities, we have used (2.4), (2.5) and the fact that
t−1
|uv| > Wi−1 . Note that for any δ ≤ 4
, the quantity 4δWi−1 − (t − 1) · Wi−1 above
is negative, yielding spGi (x, y) < t · |xy|. This completes the proof.
χ θ
v v2
v1
u2
z
u1 u3
α
α
2
u 2 v3
Figure 2.4: Leapfrog Property. (a) Region χ contains two neighbors v and z of u. (b)
Definition of the t-leapfrog property with S = {{u1 , v1 }, {u2 , v2 }, {u3, v3 }}.
Proof. Let θ be a quantity satisfying the conditions of Lemma 3. Fix a vertex u and
consider the d-dimensional unit radius ball centered at u. For some T that depends
only on θ and d, this ball can be partitioned into T cones, each with apex u, such that
for any x, y in a cone, ∠xuy ≤ θ. Yao [83] shows how to construct such a partition
with T = O(d3/2 · sin−d (θ/2) · log(d sin−1 (θ/2))) cones. Place an infinite axis-parallel
α α α
grid of d-dimensional cubes, each of dimension √
d
× √
d
× ··· × √
d
, on the plane.
See Figure 2.4(c) for a 2-dimensional version of this picture. There are O(1/αd) cells
that intersect the unit ball centered at u, and therefore there are O(1/αd) cells that
intersect each cone in the cone partition of this unit ball. Thus the cones and the
square cells together partition the unit ball centered at u into O(T /αd) regions. We
d (4δ+r)d
show that in G′ , u has O( t δd
) neighbors in each region, which is a constant.
of generality, assume that |uv1 | ≥ |uvj |, for j = 2, . . . , k, and let i be such that
{u, v1 } ∈ Ei . Since |uvj | ≤ |uv1 |, we have that for all j = 2, . . . , k, {u, vj } ∈ Eℓ , with
ℓ ≤ i.
44
assume that there is a j > 1 such that {u, vj } ∈ Eℓ , with ℓ < i. This means that just
before edge {u, v1 } is processed, G′ contains edge {u, vj }. Also note that since v1 and
vj lie in the same region, |v1 vj | ≤ α. But, this means that {u, v1 } is a covered edge in
phase i and will not be queried. This contradicts the presence of edge {u, v1 } in G′ .
We have shown that {u, vj } ∈ Ei for all j. Recall that our algorithm picks a
unique query edge per pair of clusters. This along with Lemma 4 proves that k is
constant.
In the next theorem, we show that the spanner produced by the algorithm
has small weight. The proof relies on the line segments in the spanner satisfying
a property known as the leapfrog property [13, 25]. For any t ≥ t′ > 1, a set of
line segments, denoted F , has the (t′ , t)-leapfrog property if for every subset S =
s
X X
s−1
′
t · |u1 v1 | < |ui vi | + t · |vi ui+1 | + |vs u1 | . (2.6)
i=2 i=1
Informally, this definition says that if there exists an edge between u1 and v1 , then any
path not including {u1 , v1 } must have length greater than t′ |u1 v1 | (see Figure 2.4(c)
for an illustration of this definition). The following implication of the (t′ , t)-leapfrog
Lemma 12. Let t ≥ t′ > 1. If the line segments F in d-dimensional space satisfy
the (t′ , t)-leapfrog property, then wt(F ) = O(wt(MST )), where MST is a minimum
spanning tree connecting the endpoints of line segments in F . The constant in the
45
Theorem 13. Let 0 < δ < (t − 1)/(6 + 2t). Let tδ denote t · (1 − 2δ)/(1 + 6δ). Let
1 < r < (tδ + 1)/2. When the relaxed greedy algorithm is run with these values of δ
Proof. Let β > 1 be a constant picked as follows. When tα < 1, pick β satisfying
1 < β < min{2, 1/(1 − tα)}. Otherwise, pick β satisfying 1 < β < 2. Partition the
each j > 0, Fj = {{u, v} ∈ G′ | αβ j−1 < |uv| ≤ αβ j }. Let ℓ = ⌈logβ α1 ⌉. Then every
tδ + 1 2 t 2 1
1 ≤ t′ < min{ − 1, , , , tα + }. (2.7)
r r r β β
It is easy to check that our choice for δ, r, and β guarantee that each quantity inside
the min operator is strictly greater than 1. Showing the (t′ , t)-leapfrog property for Fj
would imply that w(Fj ) = O(w(MST (G))), and since the edges of G′ are partitioned
prove inequality (2.6) for S, it suffices to consider the case when {u1 , v1 } is a longest
The F0 case. If for any 1 ≤ k < s, |vk uk+1| > |u1 v1 | or |vs u1 | > |u1 v1 |, then
the leapfrog property holds. So we assume that for all 1 ≤ k < s, |vk uk+1 | ≤ |u1 v1 | and
|vs u1 | ≤ |u1 v1 |. Let i be the phase in which {u1 , v1 } gets processed, i.e., {u1 , v1 } ∈ Ei .
46
Since |u1 v1 | ≤ α, it is the case that for all 1 ≤ k < s, |vk uk+1| ≤ α and |vs u1 | ≤ α.
Hence, {{vs , u1 }} ∪ {{vk , uk+1} | 1 ≤ k < s} is a subset of edges of G and each edge
Assume first that at least one edge in the set {{vs , u1 }} ∪ {{vk , uk+1} | 1 ≤
k < s} gets processed in phase i. Then the right hand side of inequality (2.6) is at
least tWi−1 , since edges in Ei have weights in the interval Ii = (Wi−1 , rWi−1 ]. Also
since t′ |u1v1 | ≤ t′ rWi−1 , and since the inequality t′ rWi−1 < tWi−1 is guaranteed by
the values of r and t′ in (2.7), the leapfrog property holds for this case.
Assume now that all edges in {{vs , u1 }} ∪ {{vk , uk+1} | 1 ≤ k < s} have
been processed in phase i − 1 or earlier, meaning that t-spanner paths between their
endpoints exist in G′i−1 at the time {u1 , v1 } gets processed. For 1 ≤ k < s, let Pk be
the subset S ∩ Ei .
(i) |S ∩ Ei | > 2. Then, w(P ) ≥ 2Wi−1 . We also have that |u1 v1 | ≤ rWi−1 , since
{u1 , v1 } ∈ Ei . It follows that w(P ) > t′ |u1, v1 | for any t′ < 2r . Furthermore,
w(P ) is no greater than the right hand side of the (t′ , t)-leapfrog inequality (2.6),
1 < k ≤ s. It the (t′ , t)-leapfrog inequality (2.6) holds, we are done and so let
47
s
X X
s−1
′
t · |u1 v1 | ≥ |ui vi | + t · |vi ui+1 | + |vs u1 | . (2.8)
i=2 i=1
Since all edges {uj , vj }, 1 ≤ j ≤ s, except for {u1 , v1 } and {uk , vk } are in G′i−1 ,
and since G′i−1 contains t-spanner vj uj+1 -paths for all j, 1 ≤ j < s, and a
Multiplying both sides by (1 + 6δ)/(1 − 2δ) and using t′ < tδ (which is implied
Ps−1
Let ∆ = i=1 |vi ui+1 | + |vs u1 |. We now observe that
k−1
X s
X
tδ · |uk vk | < |ui vi | + |ui vi | + t · ∆ (2.10)
i=1 i=k+1
implies the (t′ , t)-leapfrog property. To see this use the fact that both {u1 , v1 }
and {uk , vk } belong to Ei and therefore |u1v1 | < r · |uk vk |, which substituted
in (2.10) yields:
s
X
tδ · |uk vk | − (r − 1) · |uk vk | < |ui vi | + t · ∆.
i=2
We get the lower bound t′ · |u1v1 | on the left hand side of the above inequality
by using |uk vk | > |u1 v1 |/r again and our choice of t′ < (tδ + 1)/r −1. This yields
the (t′ , t)-leapfrog property. So we assume that inequality (2.10) does not hold,
48
that is,
k−1
X s
X
tδ · |uk vk | ≥ |ui vi | + |ui vi | + t · ∆.
i=1 i=k+1
Since all edges {uj , vj }, 1 ≤ j ≤ s, except for {u1 , v1 } and {uk , vk } are in G′i−1 ,
and since G′i−1 contains t-spanner vj uj+1 -paths for all j, 1 ≤ j < s, and a
Inequalities (2.9) and (2.11) imply that edges {u1 , v1 } and {u2 , v2 } are mutually
(iii) |S ∩ Ei | = 1. This means that P exists in G′i−1 at the time {u1 , v1 } is processed.
Furthermore, w(P ) > t · |u1 v1 | > t′ · |u1v1 |, otherwise {u1 , v1 } would not have
The Fj case, j > 0. In this case, |uk vk | > |u1 v1 |/β for all k = 2, 3, . . . , s. If
|S| ≥ 3, then the right hand side of the (t′ , t)-leapfrog inequality (2.6) is at least 2 ·
|u1 v1 |/β and therefore the (t′ , t)-leapfrog inequality goes through for any 1 < t′ < 2/β.
Otherwise, if |S| = 2, then we need to show that t′ ·|u1v1 | < |u2 v2 |+t·(|u1v2 |+|u2v1 |).
If each of |u1 v2 | and |u2v1 | is at most α, then using the same argument as in the F0 -
case with |S ∩Ei | = 2, we can show that {u1, v1 } and {u2 , v2 } are mutually redundant
and will not both exist in the spanner. Otherwise, if one of |u1 v2 | or |u2 v1 | is greater
49
than α, then the right hand side of the (t′ , t)-leapfrog inequality (2.6) is greater
than |u1 v1 |/β + tα. To ensure that the inequality goes through, we require that
|u1 v1 |
t′ · |u1v1 | ≤ β
+ tα. Since |u1 v1 | ≤ 1, the above inequality is satisfied for any
Section 2.2. Like the sequential relaxed greedy algorithm, this algorithm also runs in
O(log n) phases — with edges in Ei being processed in phase i. We will show that
edges in E0 can be processed in O(1) rounds. Recall that each subsequent phase
consists of the following five steps: (i) computing a cluster cover of G′i−1 , (ii) selecting
query edges in Ei , (iii) computing a cluster graph Hi−1 of G′i−1 , (iv) answering shortest
path queries for selected query edges, and (v) deleting some redundant edges. We
will show that Steps (ii), (iii), and (iv) can be completed in O(1) rounds and Steps (i)
and (v) take O(log∗ n) rounds. Step (i) and Step (v) will each involve computing an
MIS in a certain derived graph and in both cases, we will show that the derived graph
is a UBG that resides in a metric space of constant doubling dimension. Putting this
all together, we will show that the algorithm runs in O(log n · log∗ n) communication
rounds.
clique and therefore can communicate in one hop with each other. In the distributed
50
version of the algorithm, each vertex u obtains the topology of its closed neighborhood
along with pairwise distances between neighbors in one hop. Using this information,
of the t-spanner incident on itself and informs all its neighbors of this.
In this section, we show how long edges, that is, edges in Ei , i > 0, can be
processed in a distributed setting. The first step of this process is the computation
of a cluster cover for the spanner G′i−1 updated at the end of the previous phase.
Recall that in this step our goal is to compute a cluster cover {Cu1 , Cu2 , . . .} of
G′i−1 of radius δWi−1 . To do this, each node u first identifies all nodes v in G satisfying
spG′i−1 (u, v) ≤ δWi−1 . Using arguments similar to those in Section 2.2.2.4, we can
show that any node v satisfying spG′i−1 (u, v) ≤ δWi−1 must be at most 2δWi−1 /α
hops from u. So each node u constructs the subgraph of G′i−1 induced by nodes that
are at most 2δWi−1 /α hops away from it in G. Node u then runs a (sequential) single
source shortest path algorithm with source u on the local view of G′i−1 it has obtained
At the end of the above process, every node u in the network is a cluster center.
We now force some nodes to cease being cluster centers, so that all pairs of cluster
51
centers are far enough from each other. Let J be the graph with vertex set V and
edge in J, it is the case that spG′i−1 (x, y) ≤ δWi−1 . Now assign to every pair of nodes
{x, y} in V a weight w(x, y) = spG′i−1 (x, y). The weights w form a metric simply
because shortest path distances in any graph form a metric. Thus J is a graph whose
nodes reside in a metric space and whose edges connect pairs of nodes separated by
distance of at most δWi−1 (in the metric space). By scaling the quantity δWi−1 up
to one, we see that J is a UBG in the underlying metric space defined by the weights
w. Recall from [51] that the doubling dimension of a metric space is the smallest ρ
such that every ball can be covered by at most 2ρ balls of half the radius. To see that
the metric space induced by the weights w has constant doubling dimension, start
with a ball of radius R centered at an arbitrary vertex u. Every vertex v in this ball
satisfies spJ (u, v) ≤ R. Now cover the vertices in this ball using balls of radius R/2
as follows: repeatedly pick an uncovered vertex v in the radius-R ball and grow a
radius R/2 ball centered at v. It is easy to see that the number of radius R/2 balls
is bounded because any pair of centers of these balls are far apart.
Lemma 15. J is a UBG that resides in a metric space of constant doubling dimen-
sion.
space of constant doubling dimension. Then each node in V \ I has one or more
attaches itself to the neighbor in I with the highest identifier. This gives us the
Theorem 16. A cluster cover of G′i−1 of radius δWi−1 can be computed in O(log ∗n)
rounds of communication.
Only nodes that are cluster heads need to participate in the process of selecting
query edges. Each cluster head a seeks to gather information on all edges in Ei
between the cluster Ca and any other cluster Cb . Using the argument in Section
2.2.2.4, we know that every node in Ca is at most 2δWi−1 /α hops away from a in
1 + 2δWi−1 /α hops away from a. So a gets information from nodes that are at most
1 + 2δWi−1 /α hops away from it and it identifies all edges in Ei [Ca , Cb]. Recall that
this is the set of edges in Ei which connect a node in Ca and a node in Cb . Node a
then discards all covered edges from Ei [Ca , Cb ], leaving only candidate query edges
in Ei between Ca and Cb . Finally, from among the candidate query edges, node a
selects an edge {u, v} that minimizes t · |uv| − spG′i−1 (a, u) − spG′i−1 (b, v).
Theorem 17. Query edges from Ei can be selected in O(1) rounds of communication.
As in the query edge selection step, only the cluster heads need to perform
actions to compute the cluster graph. Any member u of a cluster Ca lies at most
53
2δWi−1 /α hops away from a in G. Thus a can identify intra-cluster edges incident
with spG′i−1 (a, b) ≤ Wi−1 , then node a can identify the inter-cluster edge {a, b} by
gathering information from at most 2Wi−1 /α hops away. If Cb is a cluster such that
there is an edge {u, v} in G′i−1 with u ∈ Ca and v ∈ Cb , then node a can identify
the inter-cluster edge {a, b} by gathering information from at most 2(2δ + 1)Wi−1 /α
hops away. Note that the information that a gathers contains a local view of G′i−1
along with all pairwise distances. Using this information, node a is able to run a
single source shortest path algorithm with source a and determine the weights of all
Theorem 18. Computing the cluster graph Hi−1 of G′i−1 takes O(1) communication
rounds.
Each node u knows all the query edges incident on it. As proved in Section
2.2.2.4, node u only needs to gather information from nodes that are at most a
constant number of hops away, to be able to determine locally, for all incident query
edges {u, v} ∈ Ei , whether spHi−1 (u, v) ≤ t · |uv|. Thus, after constant number of
communication rounds, u knows the subset of incident query edges {u, v} for which
spHi−1 (u, v) > t · |uv| and u identifies these as the incident edges to be added to G′i .
Theorem 19. Answering shortest path queries takes O(1) communication rounds.
54
Two edges {u, v} and {u′, v ′ } in G′i are mutually redundant if (i) spHi−1 (v, u′)+
|u′v ′ | + spHi−1 (v ′ , u) ≤ t · |uv| and (ii) spHi−1 (v ′ , u) + |uv| + spHi−1 (v, u′) ≤ t · |u′v ′ |.
Each node u takes charge of all edges {u, v} added to Gi in phase i and for which the
identifier of u is higher than the identifier of v. For each such edge {u, v} that u is in
charge of, u determines all edges {u′ , v ′ } such that {u, v} and {u′ , v ′ } form a mutually
redundant pair. Note that the nodes u and v ′ are a constant number of hops away
from each other in G, and similarly for nodes v and u′ . Node u then contributes to
the construction of the graph J by adding to V (J) a vertex for each redundant edge
u is in charge of, and to E(J) an edge connecting nodes in V (J) that correspond
Lemma 20. J is a UBG that resides in a metric space of constant doubling dimen-
sion.
Let I be an MIS of J constructed using the MIS algorithm in [51] that takes
doubling dimension. Each node u then removes from Gi all incident edges in V (J) \ I.
2.4 Conclusion
dimension Euclidean spaces, and do not directly generalize to doubling metric spaces.
55
However, the techniques presented in this paper use a key property (the leapfrog
property) that does not seem to generalize to metrics of low doubling dimension.
Hence we looked for new techniques, with the goal of constructing an O(log∗ n)-round
distributed algorithm that, for low dimensional doubling metric spaces, produces a
(1 + ε)-spanner with constant maximum degree. Our findings are described in the
next chapter.
56
CHAPTER 3
DISTRIBUTED SPANNER CONSTRUCTION IN DOUBLING
METRIC SPACES
3.1 Introduction
Before we start, let us revisit the concept of doubling metric spaces. The
doubling dimension of a metric space is the smallest ρ such that any ball in this
metric space can be covered by 2ρ balls of half the radius. It is easy to verify that
the d-dimensional Euclidean space, equipped with any of the Lp norms, has doubling
dimension Θ(d). If ρ is a fixed constant, then we call the metric a doubling metric. For
convenience, let us call an UBG on a doubling metric a doubling UBG. In this chapter
Precisely stated, our result is this: for any fixed ε > 0, our algorithm runs
the metric space in which G resides. Recall that log∗ n = min{t | log(t) n ≤ 2}, where
show that H is “lightweight,” in the following sense. Let ∆ denote the aspect ratio of
G, that is, the ratio of the length of a longest edge in G to the length of a shortest edge
where MST denotes a minimum spanning tree of G (Section 3.2). Thus we obtain
57
weight. We also show that H satisfies the so called leapfrog property [17] described
in the previous chapter, which informally says that any uv-path in H (not including
{u, v}) must have length greater than {u, v} by a constant factor. An immediate
implication of this property is that, for the special case of Euclidean metric spaces
with fixed dimension, the weight of H is bounded above by O(wt(MST )) [16]. Thus,
our current result subsumes the results in [15] that apply to Euclidean metric spaces,
and extends these results to metric spaces with constant doubling dimension. Finally,
we show that the result of this chapter extends to the more general qUBG network
model.
Like the results in Chapter 2, the results in this chapter are also motivated
by the topology control problem in wireless ad-hoc networks. Most topology control
protocols that provide worst case guarantees on the quality of the topology assume
that the network is modeled by a unit disk graph (UDG) (see [59] for a recent exam-
ple). The results in this chapter apply to the more general model of doubling unit
ball graphs (UBG). Doubling metric spaces have received a great deal of attention
recently [6, 46, 47, 51, 77], partly because they are thought to capture real-world
phenomena such as latencies in peer-to-peer networks and in the Internet. Also, dou-
bling metrics are robust in the sense that the doubling dimension is roughly preserved
under distortion (see Proposition 3 in [77]). Thus distorted versions of low dimen-
58
sional Euclidean space also have small doubling dimension. Consequently, doubling
UBGs can model wireless networks in which nodes have non-uniform transmission
metrics imply the following “bounded growth” phenomenon that seems to be charac-
teristic of large scale wireless ad-hoc and sensor networks: the number of nodes that
are far away from each other and yet are all in the vicinity of a particular node, is
small. In other words, no node can have an arbitrarily large independent set in its
neighborhood.
a recent paper, Chan, Gupta, Maggs, and Zhou [7] show how to construct, via a
algorithm. The problem of constructing a spanner for a metric space can be thought
of as a special case of our problem, in which the given UBG is a complete graph.
Underlying the result in [7] is the notion of net trees, independently proposed by
Har-Peled and Mendel [31]. Let B(u, r) denote the ball of radius r centered at point
Such nets always exist for any r > 0, and can be easily computed using a greedy
algorithm. Assume without loss of generality that the largest pairwise distance in V
59
is exactly 1 (this can be achieved by appropriate scaling). Pick constant α such that
√
3
√
1+ε≤α< 1+ε (3.1)
These constraints on α are necessary to ensure that our spanner satisfies various
2α 4α
properties and will become clear later. Let γ = α−1
1+ ε
. Let h be the smallest
1 1
positive integer such every pairwise distance is greater than αh
. Let r0 = αh
and let
that V0 = V and Vi is an ri -net of Vi−1 , for i > 0. Note that every Vi , including
since the maximum separation between any pair of points is 1. To view the sequence
each v ∈ V , i(v) + 1 copies of v appear as nodes in the tree. These are denoted
(0, v), (1, v), . . . , (i(v), v), where (i, v) represents the occurrence of v in Vi . For each
0 ≤ i < i(v), the parent of node (i, v) is (i + 1, v). Node (i(v), v) has no parent and
is the root of the net tree, if i(v) = h; otherwise, vertex v 6∈ Vi(v)+1 and there is some
vertex u ∈ Vi(v)+1 such that B(u, ri(v)+1 ) contains v. Arbitrarily pick one such u and
let (i(v) + 1, u) be the parent of (i(v), v). Informally speaking, higher levels in the net
tree (leaves are at level 0) represent the structure of V at lower resolution. Figure 3.1
shows an example of a net tree with 6 levels. Below we present the CGMZ algorithm
[7]. For any two points u, v ∈ V , we use d(u, v) to denote the distance between u and
V5
V4
V3
V2
V1
V0
2α 4α
2. Let γ = α−1
1+ ε
. Construct the edge sets
E0 = {{u, v} ∈ V0 × V0 | d(u, v) ≤ γ · r0 },
and
b = ∪i Ei .
for each i = 1, . . . , h and let E
Chan and coauthors [7] work with the version of the algorithm for α = 2. They
the metric space and has linear number of edges, but may not satisfy the bounded
degree requirement. Short paths in H can be obtained from the net tree in a natural
by traveling up the net tree from the leaf u and from the leaf v until some level i is
reached, such that the ancestors of u and v at level i are connected by an edge in
61
is replaced by at most one new edge. This step, which will be described in detail in
Section 3.2.2, redistributes the edges so that all vertex-degrees are bounded above by
a constant. The techniques used by Chan and coauthors for bounding vertex degrees
play a critical role in our results as well. In [15] (refer to Chapter 2) we also describe
but our results rely on purely geometric arguments to bound the vertex degree of the
constructed spanner. Chan and coauthors [7] obtain the following theorem.
Theorem 22. [Chan, Gupta, Maggs, Zhou] Let (V, d) be a finite metric with
doubling dimension bounded by ρ. For any ε > 0, there is a (1 + ε)-spanner for (V, d),
1 O(ρ)
with maximum degree bounded above by ε
.
Our algorithm is a modification of the CGMZ algorithm [7] that takes into
account the fact that pairs of points separated by a distance greater than 1 are not
connected by an edge and therefore such edges cannot be used in the spanner. A
high-level view of our algorithm is as follows. Using a slightly modified version of the
CGMZ algorithm, we construct a graph H that may contain some virtual edges, that
is, edges of length more than 1. H has all the desired properties with respect to the
most one real edge, that is, an edge of length at most 1. The resulting graph is a
we use an algorithm due to Kuhn, Moscibroda, and Wattenhofer [51]. For a given
62
such that each cluster has diameter 1 and the resulting cluster graph has chromatic
number O(1). We use the same algorithm to compute a net tree. After computing the
net tree, we require a constant number of additional rounds to construct the spanner.
Let (V, d) be a metric space with doubling dimension ρ. Let G = (V, E) be the
UBG induced by this metric space. Thus, for all u, v ∈ V , u 6= v, {u, v} ∈ E if and
only if d(u, v) ≤ 1. For a fixed ε > 0, let the quantities h, ri , α and γ be defined as
in Section 3.1.2. Run Steps (1) and (2) of the CGMZ Algorithm to construct a set of
points whose pairwise distance is more than 1. So the sequence hV0 , V1 , . . . , Vh i should
b = ∪h Ei
be viewed as a forest of net trees, rooted at points in Vh . Recall that E i=0
and further recall that for i > 0, Ei consists of edges connecting all pairs of points
u, v ∈ V such that d(u, v) ∈ (γ · ri−1 , γ · ri ]. Note that there are values of i for which
the right endpoint of the interval (γ · ri−1 , γ · ri ] may be greater than 1 and for such
values of i, Ei may contain edges that are not in E. Thus H is not necessarily a
for i = h − δ + 1, the edge-set Ei may contain some edges in E and some edges not
in E; and for i > h − δ + 1, all edges in Ei are outside E. We call edges in H that
also belong to E, real edges. Any edge in H that is not real is a virtual edge. Clearly,
63
a spanner for G may not contain virtual edges, however virtual edges in H do carry
important proximity information that will provide clues on how to replace them with
real edges.
3.2.1 Properties of H
metric induced by shortest paths in H. Specifically, we will show that H satisfies the
2. Degree Property. Edges of H can be oriented in such a way that the out-
1 O(ρ)
degree of H is bounded by ε
(Lemma 28).
1 O(ρ)
3. Weight Property. The weight of H is wt(H) = O(log ∆) · ε
· wt(MST )
(Lemma 29).
2 implies that H has a linear number of edges, though it does not imply that H has
bound the in-degree of H as well, while maintaining all the properties listed above.
The proofs of these properties are based on some intermediate results, that we now
establish. Proofs of Lemma 27 and Lemma 28 are similar to those in [8]. The next
metric space.
Ni (u).
1 O(ρ)
Lemma 24. For each u ∈ Vi , |Ni (u)| ≤ ε
.
Proof. That the aspect ratio of Ni (u) is bounded by 2γ follows from two observations:
(1) any two points in Ni (u) are more than distance ri apart, and (2) any point in
Ni (u) is at distance at most γ ·ri from u and therefore, by using the triangle inequality,
any two points in Ni (u) are at most 2γ · ri apart. Then Proposition 23 implies the
lemma.
b for some
Lemma 25. Suppose u, v ∈ Vi and d(u, v) ≤ γ · ri . Then {u, v} ∈ Ej ⊂ E,
j ≤ i.
Otherwise, (a) d(u, v) ≤ γ · r0 or (b) for some j < i, γ · rj−1 < d(u, v) ≤ γ · rj . Since
Lemma 26. For each u ∈ V and for each i, there exists v ∈ Vi such that dH (u, v) ≤
α
α−1
· ri .
α
α−1
· r0 , proving this case true. For i > 0, apply the inductive hypothesis to infer that
α
there exists w ∈ Vi−1 such that dH (u, w) ≤ α−1
· ri−1 . Furthermore, since Vi is an
65
...
...
V3 ... c ...
Vs x y
V2 ... b c ...
V1 ... a b c ...
u v
V0 ... ...
u a b c
(a) (b)
Figure 3.2: Illustrated proofs of Lemmas. (a) Proof of Lemma 26: in V0 , dH (u, u) =
α α
0 < α−1 · r0 ; in V1 , dH (u, a) ≤ r1 < α−1 · r1 ; in V2 , dH (u, b) ≤ dH (u, a) + dH (a, b) ≤
α α
α−1
· r 2 ; and in V 3 , d H (u, c) ≤ d H (u, b) + dH (b, c) ≤ α−1 · r3 (b) Proof of Lemma 27:
The uv-path via x and y.
ri -net of Vi−1 , there exists v ∈ Vi ⊆ Vi−1 such that d(w, v) ≤ ri ≤ γ · ri−1 . This along
α
triangle inequality we have that dH (u, v) ≤ dH (u, w) + dH (w, v) ≤ α−1
· ri−1 + ri =
α
α−1
· ri . See Figure 3.2a for an example.
implies a certain path from vertex u to v ∈ Vi . Start from node (0, u) in the tree (that
is, the copy of u corresponding to a leaf) and follow the path through a sequence of
parents, until a level-i node (i, v) is reached. Lemma 26 shows that the distance in
α
H along this path is at most α−1
· ri .
d(u, v).
α
Proof. For ease of presentation, let λ = α−1
. Let q be the smallest integer such that
66
4λ 8λ 4λ
αq
≤ε< αq
. Thus q = ⌈logα ε
⌉. Let k be such that rk ≤ d(u, v) < rk+1 , and assume
8λ 4α
8λ
first that k ≤ q − 1. Then d(u, v) < αq · r0 ≤ ε
· r0 ≤ γr0 , since γ = 2λ 1 + ε
> ε
.
b This
Also since both u and v belong to V0 , by Lemma 25, we have that {u, v} ∈ E.
implies that dH (u, v) = d(u, v), proving the lemma true for this case. Assume now
= rs (2λ + α · αq ) (since rk = αq · rs )
≤ rs (2λ + α 8λ
ε
)
= γ · rs
≤ 2λ · rs + d(x, y)
4λ
≤ (1 + αq
) · d(u, v) (since ri = αq · rs ≤ d(u, v))
≤ (1 + ε) · d(u, v)
Simply follow the sequence of parents, starting at the node (0, u) in the tree and
similarly, starting at the node (0, v). At a certain level (denoted s in the proof), the
We now prove that H has degree bounded above by a constant. Recall the
b direct
notation: for each point u, i(v) = max{i | v ∈ Vi }. For each edge {u, v} ∈ E,
{u, v} from u to v, if i(u) < i(v). If i(u) = i(v), pick an arbitrary orientation. This
→
−
edge orientation is identical to the one used in [7]. Call the resulting digraph H .
→
−
Lemma 28. [Degree Property] The out-degree of H is bounded above by ( 1ε )O(ρ) .
that δ = ⌈logα γ⌉). This, along with the fact that Vi+δ is an ri+δ -net, implies that it is
not possible for both u and v to exist in Vi+δ . Since i(u) ≤ i(v) (by our assumption),
Summarizing, we have that i(u) − δ ≤ i ≤ i(u). This tells us that there are at
most δ + 1 = O(logα γ) values of i for which Ei may contain an edge outgoing from
1 O(ρ)
u. For each such i, by Lemma 24 there are at most |Ni (u)| ≤ ε
edges in Ei
b outgoing from u is
outgoing from u. It follows that the total number of edges in E
1 O(ρ)
1 O(ρ)
ε
· O(logα γ) = ε
.
aspect ratio of G.
1 O(ρ)
Proof. We show that, for each i, wt(Ei ) = ε
· wt(MST ). This along with the
1
fact that there are h + 1 = logα r0
+ 1 = O(logα ∆) levels i, proves the claim of the
lemma.
Recall that any edge {u, v} ∈ Ei satisfies ri < d(u, v) ≤ γ · ri . Thus, any spanning
wt(MST ) ≥ (t − 1) · ri . Also note that the weight of Ei is bounded by Σu∈Ui |Ni (u)| ·
1 O(ρ)
γ · ri ≤ ε
·t·γ · ri , using the upper bound on |Ni (u)| given by Lemma 24. Using
the lower bound on wt(MST ), we see that the weight of Ei is bounded above by
1 O(ρ)
ε
· γ · (wt(MST ) + ri ). Summing this expression over all Ei , yields the upper
The graph example from Figure 3.3 shows that the bound of Lemma 29 is
tight. Vertices of the graph are placed at equal distance slightly larger than r0 along
a line segment (recall that the Euclidean space is a doubling metric space). The
value of α in this example is 2, and satisfies the lower bound from inequality (3.1);
the upper bound from (3.1) is only used in Theorem 38, which applies to an altered
version of H and needs not hold for our example. Since d(ui , ui+1) ≈ r0 < γr0 , all
edges {ui , ui+1 }, for i = 1, 2, . . ., are in H (cf. Lemma 25). Note that these are
69
...
...
...
V3 u1
... ... ...
u1 u2 u3 u4 u5 V2 u1 u5
...
r0 r0 r0 r0 r0
... V1 u1 u3 u5 u7
r1 r1 r1
...
r2 r2 V0 u1 u2 u3 u4 u5 u6 u7 u8
(a) (b)
Figure 3.3: An example to demonstrate the tightness result. (a) Graph H with
total weight wt(H) = Ω(log ∆) · wt(MST ) (b) Net tree for the vertex set V of H;
V0 = V1 = V , and Vk = {u1+i·2k , i = 0, 1, 2, . . .}, for k ≥ 2.
precisely the edges that constitute a MST. Consider now all pairs of points in Vk , for
some k ≥ 2, at distance ≈ rk . Since rk < γrk , edges connecting such pairs of points
are all in H (cf. Lemma 25). For a fixed k, these edges span the entire line segment
(see Figure 3.3b), therefore the total weight of these edges is equal to the length of
the segment, which is precisely wt(MST ). Since there are Ω(log ∆) levels k, we have
has bounded out-degree. Next we describe a method that carefully replaces some
→
−
directed edges in H by others so as to guarantee constant bound on the in-degree
the one used in [7], slightly adjusted to work with UBGs. Assume without loss of
1
that ε ≤ 2
in the proof of Lemma 32. Let ℓ be the smallest positive integer such that
1
αℓ−1
≤ ε. Thus ℓ = O(logα 1ε ).
be the set of all vertices v ∈ Vi such that {v, u} is an edge in Ei directed from v
→
−
to u in H . Let I(u) = hi1 , i2 , . . .i be the increasing sequence of all indices ik for
which M(u, ik ) is nonempty. For 1 ≤ k ≤ ℓ, we do not disturb any of the edges from
points in M(u, ik ) to u. For each k > ℓ such that ik ≤ h − δ − 3, real edges {v, u}
connecting v ∈ M(u, ik ) to u are replaced by other edges. Specifically, an edge {v, u},
important observation here is that the replacement procedure above is carried out
only for real edges in Ei , with i ≤ h − δ − 3 (that is, only edges of length no greater
than 1/α3 ). This is to ensure that only real edges get replaced and no virtual edges
e\E
Lemma 30. E b contains no virtual edges.
Proof. Let {v, u} be an edge that gets replaced by {v, w}, with v ∈ M(u, ik ) and
w ∈ M(u, ik−ℓ ). Recall that k > ℓ and ik ≤ h − δ − 3. Using the definitions of Eik and
1
Eik−ℓ and the fact that αℓ−1
≤ ε, it follows that d(w, u) ≤ ε · d(v, u). By the triangle
71
inequality, d(v, w) ≤ d(v, u) + d(w, u) ≤ (1 + ε)d(v, u). Now note that d(v, u) ≤ 1/α3 .
This is because edges in Eik have length no greater than γ · rik ≤ 1/α3 , for any
Second we show that the metric distance dJ induced by shortest paths in J is a good
→
−
Proof. Let A be the maximum out-degree of a vertex of H . By Lemma 28, A ≤
( 1ε )O(ρ) . Let B be the largest of |Ni (u)|, for all i and all u. By Lemma 24, B ≤ ( 1ε )O(ρ) .
procedure, and continue to be bounded above by ( 1ε )O(ρ) . Thus, we can simply focus
e ∩ E)
arbitrary vertex x with respect to old edges (in E b and with respect to new edges
e \ E);
(in E b we show that both in-degrees are bounded above by ( 1 )O(ρ) .
ε
by an edge not incident to x. We end this case by noting that B(ℓ + δ + 3) = ( 1ε )O(ρ) .
72
e \ E.
In-degree of x with respect to E b Vertex x has a new in-coming edge
the edge-replacement procedure, w and v are both in-neighbors of u. For each edge
(w, u), there are at most B edges (v, u) directed into u that may get replaced by
(v, w). Furthermore, there are A edges (w, u) outgoing from w. This gives an upper
is provided by the proof of Lemma 30. In that proof, it is shown that when {v, w}
replaces {v, u}, d(w, u) ≤ ε · d(v, u) and d(v, w) ≤ (1 + ε) · d(v, u). Thus, if the
d(w, u) ≤ ε · d(v, u), the extra cost of replacing {w, u} is marginal and the eventual
sum of all of these lengths is still bounded above by (1 + 2ε) · d(v, u). Thus we have
(1 + 2ε) · dH (v, u). Assume without loss of generality that edge {v, u} directs into u,
and let k be such that v ∈ M(u, ik ). Then it must be that k > ℓ and ik ≤ h − δ − 3,
tion, w1 ∈ M(u, ik−ℓ ). We now show that d(w1 , u) ≤ ε · d(w0, u) and d(w0 , w1) ≤
This implies that rik−ℓ ≤ rik −ℓ , which in turn implies that d(w1, u) ≤ γ · rik −ℓ =
γ · rik /αℓ .
2. d(w0 , u) ≥ γ · rik −1 = γ · rik /α (by definition). This along with the first obser-
e then the claim of the lemma follows immediately from the ob-
So if {w1 , u} ∈ E,
e ∩ E.
in J that leads to an edge {wr , u} ∈ E b The replacement procedure ensures that
such a path always exists. This means that {w0 , w1 }, {w1 , w2 }, . . . , {wr−1 , wr } are all
e ∩ E.
new edges in E b The three observations above translated to lower levels yield,
for each j = 1, 2, . . . , r, the following two inequalities: (i) d(wj , u) ≤ ε · d(wj−1, u),
and (ii) d(wj−1, wj ) ≤ (1 + ε) · d(wj−1, u). Repeated application of the first inequality
r
X
dJ (v, u) ≤ d(wj−1, wj ) + d(wr , u)
j=1
r
X
≤ (1 + ε) εj−1d(w0 , u) + εr d(w0, u)
j=1
≤ d(w0 , u) · (1 + ε)/(1 − ε)
≤ (1 + 2ε) · d(v, u)
This latter inequality follows from the fact that, for 0 < ε < 1/2, (1+ε)(1−ε) ≤
1 + 2ε.
UBG G is the presence of virtual edges in J. Recall that these are edges of length
greater than 1 and clearly do not exist in G. In this section we show that there exist
real edges that can take over the role of virtual edges in J, without violating the
Let {u, v} ∈ E be an arbitrary (real) edge and let k be such that rk ≤ d(u, v) <
α
rk+1 . Let q be as in the proof of Lemma 27: the smallest integer such that α−1
· α4q ≤
α
ε< α−1
· α8q . As mentioned in Section 3.2.1, the proof of Lemma 27 implies a certain
The Edge Replacement Procedure (Section 3.2.2) ensures that only real edges are
replaced, and each real edge is replaced by a path consisting only of real edges. This
(1 + 2ε) · d(u, v), consisting of real edges only. If k ≥ q, the uv-path in H implied
75
by Lemma 27 may have more than one edge. Let s = k − q and (s, u∗ ) (respectively,
(s, v ∗ )) be the level-s ancestor of the leaf (0, u) (respectively, the leaf (0, v)) in the
b and
net tree hV0 , V1 , . . . , Vh i. Then the edge {u∗ , v ∗ } is guaranteed to be present in E
the uv-path implied by Lemma 27 starts at (0, u), goes up the net tree via parents to
(s, u∗ ), then to (s, v ∗ ), and then follows the unique path down the tree from (s, v ∗ ) to
(0, v). It is easy to check that of all the edges in this path, only {u∗, v ∗ } may be virtual
then s = k − q ≥ h − δ + 1 and the edge {u∗ , v ∗ } may belong to Es . Recall that for
edge. Since the uv-path implied by Lemma 27 passes through edge {u∗, v ∗ }, one
has to be careful in replacing {u∗, v ∗ } by a real edge. Our virtual edge replacement
For any node (i, v) in the net tree, let T (i, v) denote the set of all vertices
u ∈ V , such that the subtree of the net tree rooted at (i, v) contains a copy of u. In
is a real edge {x, y} already in the spanner H, with x ∈ T (i, u) and y ∈ T (i, v), then
simply delete {u, v}. Similarly, if there is no such real edge {x, y} in the input graph
G with x ∈ T (i, u) and y ∈ T (i, v) then simply delete {u, v}. Otherwise, find a real
edge {x, y} ∈ E, x ∈ T (i, u) and y ∈ T (i, v), and replace {u, v} by {x, y}.
The reason why this replacement procedure works can be intuitively explained
76
u virtual edge
v
real edge
x y
b
a
T(i, u) T(i, v)
Figure 3.4: A short ab-path passes through virtual edge {u, v}. After replacing virtual
edge {u, v} by real edge {x, y}, there is a short ab-path through {x, y}.
as follows. A virtual edge {u, v} ∈ Ei is important for pairs of vertices {a, b}, with
a ∈ T (i, u) and b ∈ T (i, v), for which all ab-paths of length at most (1+ε)·d(a, b) pass
through {u, v}. Replacing {u, v} by {x, y} provides the following alternate ab-path
that is short enough: starting at the leaf a, go up the tree rooted at (i, u) via parents
until an ancestor common to a and x is reached, then come down to x, take edge
{x, y}, go up the tree rooted at (i, v) until an ancestor common to b and y is reached,
and finally go down to b. Figure 3.4 illustrates this alternate path. Note that this
We finally state our main result. Let G′ be the graph obtained from J by
A proof similar to that of Lemma 27 can be used to show the spanner property
of G′ . The fact that G′ is lightweight simply follows from the fact that a virtual edge
of length greater than 1 in J, either gets eliminated, or gets replaced by at most one
77
real edge of length at most 1 in G′ . The constant degree bound follows from the
observation that, for a vertex x to acquire a new incident edge, there is an ancestor
of x in the net tree at level h − δ + 1 or higher, that loses an incident edge at that
level. There are a constant number of such ancestors and from Lemma 24, we know
that any vertex has a constant number of incident edges at any particular level.
constant doubling dimension ρ, the upper bound is within O(log ∆) times the optimal
value. In an attempt to show a bound that is within O(1) times the optimal value, we
use a tool that is widely used in the computational geometry literature [17, 13, 26].
In the context of building lightweight (1 + ε)-spanners for Euclidean spaces, Das and
Narasimhan [17] have shown that, if the set of edges in the spanner satisfy a property
known as the leapfrog property, then the total weight of the spanner is bounded above
by O(wt(MST )). Refer to Chapter 2 (Equation 2.6) for a detailed definition of the
leapfrog property.
v1 v2
u2
u1 u3
v3
Figure 3.5: Definition of the t-leapfrog property with S = {{u1 , v1 }, {u2, v2 }, {u3, v3 }}.
Das and Narasimhan [17] show the following connection between the leapfrog
Lemma 34. Let t ≥ t′ > 1. If the line segments F in d-dimensional space satisfy
the (t′ , t)-leapfrog property, then wt(F ) = O(wt(MST )), where MST is a minimum
79
spanning tree connecting the endpoints of line segments in F . The constant in the
It is well known that, if a spanner is built “greedily”, then the set of edges in
the spanner satisfies the leapfrog property [17, 13, 26]. In [15] we showed that even a
“relaxed” version of the greedy algorithm would ensure that the spanner edges have
the leapfrog property. This was critical to showing that the spanner constructed in a
distributed manner for UBGs in Euclidean spaces [15] had total weight bounded above
by O(wt(MST )). Here we ask if it is possible to do the same for UBGs in metric spaces
that, using a variant of the Spanner algorithm (outlined at the end of Section 3.2),
we can build, for a given UBG G in a doubling metric space, a (1 + ε)-spanner with
degree bounded above by a constant and with the (t, t′ )-leapfrog property, for some
constants t ≥ t′ > 1. Note that this does not give us the desired O(wt(MST )) bound
on the weight of the constructed spanner because we do not know if the equivalent
of Lemma 34 holds for non-Euclidean metric spaces. The proof of Lemma 34 in [17]
is quite geometric and does not suggest an approach to its generalization to metric
To guarantee that the output spanner satisfies the (t′ , t)-leapfrog property, we
need to make two modifications to the Spanner algorithm as follows. First, in step
2 of the algorithm, we add an edge {u, v} to Ei only if the partial spanner Hi−1
call two edges {u1 , v1 } and {u2 , v2 } in Ei mutually redundant if both of the following
conditions hold:
These two conditions imply that (i) H \ {u1 , v1 } contains a u1 v1 -path of length at
(1 + ε) · d(u2, v2 ). Thus, one of the edges {u1 , v1 } and {u2 , v2 } can potentially be
fact, it is necessary to eliminate such pairs of edges in order to ensure the leapfrog
property for H (and ultimately for the output spanner). To this end, we construct
connected components, one for each i (since mutually redundant edges belong to a
and eliminate from H all edges associated with nodes in Γ that are not in I. The
for 1 ≤ i ≤ h.
In the rest of this section we show that output of the Leapfrog-Spanner algorithm
b be the graph
is indeed a spanner that satisfies the leapfrog property. Let H = (V, E)
obtained after Step (3) of the Leapfrog-Spanner algorithm, in which all redundant
Lemma 35. Let u, v ∈ Vi such that d(u, v) ≤ γ · ri . Then dHi (u, v) ≤ (1 + ε) · d(u, v)
Proof. This is the analogous of Lemma 25. We first show that the lemma is true for
we have that dH0 (u, v) = d(u, v). If {u, v} is not eliminated from Γ in Step (3) of
the algorithm, then dH (u, v) = d(u, v). Otherwise, there exists in Γ an edge {x, y}
mutually redundant with respect to {u, v}; such an edge would correspond to a node
that H contains a uv-path passing through {x, y} of length dH (u, v) ≤ (1 + ε) · d(u, v).
82
Assume now that i > 0 and let j ≤ i be such that γ · rj−1 < d(u, v) ≤ γ · rj .
of the algorithm, unless Hj−1 already contains a uv-path of length no greater than
(1 + ε) · d(u, v). Arguments similar to the ones used for the case i = 0 proves the
Lemma 36. [Spanner Property] For each edge {u, v} ∈ E, dH (u, v) ≤ (1 + 3ε) ·
d(u, v).
Proof. This is the analogous of Lemma 27. Let λ, k, q and s be as in the proof of
α 4λ
Lemma 27: λ = α−1
; q = ⌈logα ε
⌉; k is such that rk ≤ d(u, v) < rk+1 ; and s =
min(0, k − q). As shown in that proof, there exist x, y ∈ Vs such that d(x, y) ≤ γ · rs .
By Lemma 35 we have that dH (x, y) ≤ (1 + ε) · d(x, y). Following the same proof idea
≤ 2λ · rs + dH (x, y)
≤ 2λ · rs + (1 + ε)d(x, y)
4λ
< (1 + 3ε) · d(u, v) (since αq
≤ ε)
The following lemma shows a similar result, but this time restricted to partial
spanner Hi , for each i ≥ 1. This result will be used in proving the leapfrog property
of H in Theorem 38.
83
Lemma 37. Let i > 0 and let u, v be such that d(u, v) ≤ γ · ri−1 . Then dHi (u, v) ≤
α 4λ
Proof. Let λ, q, and k be as in the proof of Lemma 27: : λ = α−1
; q = ⌈logα ε
⌉;
and k is such that rk ≤ d(u, v) < rk+1 . Since we restrict our attention to Hi only, we
choose s = min(i, k − q). We show that there exist x, y ∈ Vs such that dHi (x, y) ≤
(1+ε)·d(x, y). This enables us to use the proof of Lemma 36 to show that dHi (u, v) ≤
that there exist x, y ∈ Vs such that d(x, y) ≤ γ · rs . Cf. Lemma 37 we have that
2. s = i > k − q. In this case rk > αq · rs and therefore we cannot use the proof
of Lemma 27 to show a similar result. Note however that, cf. Lemma 26, there
exist x, y ∈ Vi such that dHi (u, x) ≤ λ · ri and dHi (v, y) ≤ λ · ri . Using the
triangle inequality,
≤ λ · ri + d(u, v) + λ · ri since d(x, u) ≤ dHi (x, u), d(v, y) ≤ dHi (v, y))
Thus we can apply the result of Lemma 35 to show that dHi (x, y) ≤ (1 + ε) ·
d(x, y).
Leapfrog-Spanner algorithm satisfies the (t′ , t)-leapfrog property, for any 1 < t′ <
t
√
3
√
α2
and any 1+ε<α < 1 + 3ε. Here t = 1 + 3ε.
b To
Proof. Consider an arbitrary subset S = {{u1 , v1 }, {u2, v2 }, . . . , {um , vm }} of E.
prove inequality (2.6) for S, it suffices to consider the case when {u1 , v1 } is a longest
edge in S. First observe that, if either d(vm , u1) > d(u1 , v1 ) or d(vk , uk+1) > d(u1 , v1 )
for any k, 1 ≤ k < s, then inequality (2.6) holds. Thus it suffices to discuss the case
when d(vm , u1 ) ≤ d(u1 , v1 ) and d(vk , uk+1) ≤ d(u1, v1 ) for each k, 1 ≤ k < s.
Let i be such that {u1 , v1 } ∈ Ei . Consider first the case in which at least one
of the edges in the set S ′ = {{vm , u1 }} ∪ {{vk , uk+1} | 1 ≤ k < s} has length greater
than γri−2 . Then the right hand side of the inequality (2.6) is at least t · γ · ri−2 . We
also have that t′ · d(u1, v1 ) ≤ t′ · γ · ri = t′ · γ · α2 · ri−2 < t · γ · ri−2 for any 1 < t′ < t/α2 ,
√ √
and so the leapfrog property holds for this case, for any α < t= 1 + 3ε.
Consider now the case in which each edge in the set S ′ has length no greater
than γri−2 . Cf. Lemma 35, the partial spanner Hi−1 induced by the edge set E0 ∪
E1 ∪. . . ∪Ei−1 contains spanner paths between the endpoints of each edge in S ′ . More
precisely, for each edge {v, u} ∈ S ′ , dHi−1 (v, u) ≤ (1 + 3ε) · d(v, u) = t · d(v, u).
85
shortest vm u1 -path. From the discussion above it follows that wt(Pk ) ≤ t · d(vk , uk+1)
and wt(Pm ) ≤ t · d(vm , u1 ). We discuss three cases, depending on the number of edges
in Ei that belong to S.
is no greater than the right hand side of the leapfrog inequality (2.6). Furthermore,
wt(P ) > t · d(u1 , v1 ) > t′ · d(u1, v1 ), otherwise the edge {u1, v1 } would not have been
d(u1 ,v1 )
Case 2: |S ∩ Ei | > 2. We use the fact that d(u, v) > α
for each edge
{u, v} ∈ |S ∩ Ei |, to show that the right hand side of the leapfrog inequality (2.6) is
2·d(u1 ,v1 )
greater than α
. Thus the leapfrog property holds for any t′ < α2 .
S ∩ Ei = {{u1, v1 }, {uk , vk }}. Our proof that the leapfrog inequality holds for this
case is by contradiction. Assume to the contrary that the leapfrog inequality (2.6)
m
X m−1
X
′
t · d(u1 , v1 ) ≥ d(ui , vi ) + t · d(vi , ui+1 ) + d(vm , u1 ) . (3.2)
i=2 i=1
This along with the fact that Hi−1 contains t-spanner paths P1 , P2 , . . . , Pm , yields
first that
k−1
X m
X m−1
X
t · d(uk , vk ) ≥ d(ui , vi ) + d(ui , vi ) + t · d(vi , ui+1) + d(vm , u1) .
i=1 i=k+1 i=1
However, inequalities (3.3) and (3.4) tell us that the edges {u1 , v1 }, {uk , vk } ∈ Ei are
mutually redundant and therefore they cannot coexist in the spanner after Step (3.3)
So it must be that
k−1
X m
X m−1
X
t · d(uk , vk ) < d(ui , vi ) + d(ui , vi ) + t · d(vi , ui+1) + d(vm , u1) .
i=1 i=k+1 i=1
Adding d(uk , vk ) and subtracting d(u1 , v1 ) from both sides of this inequality yields
m
X m−1
X
t·d(uk , vk )+d(uk , vk )−d(u1 , v1 ) ≤ d(ui , vi )+t· d(vi , ui+1)+d(vm , u1 ) . (3.5)
i=2 i=1
d(u1 ,v1 )
Now note that, since d(uk , vk ) > α
, the quantity ( t+1
α
− 1) · d(u1 , v1 ) is no greater
than the left side of the inequality (3.5). Thus we have that
m
X m−1
X
t′ · d(u1 , v1 ) ≤ d(ui , vi ) + t · d(vi , ui+1 ) + d(vm , u1 ) .
i=2 i=1
t t+1
for any 1 < t′ < α2
< α
− 1. Thus the leapfrog property holds for this case as
well.
in an Euclidean metric space of fixed dimension, then wt(H) = O(wt(MST (G))) (cf.
87
Lemma 34). Arguments similar to the ones used in proving Theorem 33 show that
wt(Gℓ ) = O(wt(H)). Furthermore, it can be verified that the other properties listed
In this section, we show that both the Spanner algorithm (Section 3.2) and
Spanner Algorithm. It turns out that Step (1) of this algorithm takes O(log∗ n)
rounds, whereas the remaining steps take O(1) additional rounds. We first examine
by a virtual edge. The main difficulty here is that the endpoints of a virtual edge
{u, v} may not be neighbors in the network. Consider a virtual edge {u, v} ∈ Ei .
that the hop distance between u and v in G be similarly bounded above. Let us call
88
a virtual edge {u, v} ∈ Ei , useful , if there exist x ∈ T (i, u) and y ∈ T (i, v) such
that {x, y} ∈ E. Notice that only useful virtual edges need to be considered by our
algorithm. If a virtual edge {u, v} is not useful, then even though it is added in Step
(2), it is eliminated in Steps (7)-(9). In the following lemma we show that the hop
Lemma 40. The hop distance in G between the endpoints of any useful virtual edge
2α
{u, v} ∈ Ei is at most 2( α−1 + 1).
Proof. By definition of a useful virtual edge, there are points x ∈ T (i, u) and y ∈
T (i, v) such that {x, y} is an edge in G. Thus a path in G between u and v is the
following: start at node (i, u) in the net tree and travel down to a copy of x, follow
the edge {x, y}, and then travel up to node (i, v). Note that the edge {x, y} ∈ E,
2α
1, implying that dG (u, v) ≤ α−1
+ 1. Now consider a shortest uv-path in G, say
hw0 = u, w1 , . . . , wk+1 = vi. Because G is a UBG and due to the triangle inequality,
d(wi , wi+2) > 1 for all 0 ≤ i ≤ k − 1 (otherwise wi+1 could be eliminated from the
uv-path to obtain an even shorter uv-path in G). This yields a lower bound of k/2
on d(u, v), and since dG (u, v) ≥ d(u, v), we have that dG (u, v) ≥ k/2. Combining this
2α 2α
with the upper bound of α−1
+ 1, we obtain that k ≤ 2( α−1 + 1).
Thus, in Steps (2)-(9) of the Spanner algorithm, a node only needs to com-
1
municate with nodes that are at most O( α−1 ) hops away. This suggests a simple way
of implementing Steps (2)-(9): after Step (1) is completed, each node u gathers neigh-
89
1
borhood information and the values of i(v) from all nodes v that are O( α−1 ) hops
away. After this, node u can do all of its computation with no further communication.
The fact that Step (1) can be implemented in O(log∗ n) rounds of communica-
tion follows from a clever argument in [51]. Suppose that we have computed the set
Vi−1 . The computation of the set Vi , which is an ri -net of Vi−1 , reduces to a maximal
graph, say Gi , whose vertex set is Vi−1 and whose edges connect any pair of vertices
Vi−1 . Furthermore, the fact that Gi has bounded degree follows from the fact that the
underlying metric space has bounded doubling dimension. There is a well-known de-
terministic algorithm due to Linial [61] for computing an MIS, that runs in O(log∗ n)
communication rounds on graphs with bounded degree. Using this algorithm, one can
compute the ri -net Vi of Vi−1 in O(log∗ n) rounds. Since there are h + 1 = O(log ∆)
such sets to compute, it seems like this approach will take O(log ∆ · log∗ n) rounds.
However, in [51] it is shown that in this algorithm, each node uses information only
from nodes that are at most O(log∗ n) hops away in G. Therefore, this algorithm
has a O(log∗ n)-round implementation in which each node u first gathers information
from nodes that are at most O(log∗ n) hops away and then performs all steps of the
that may incur communication cost in addition to the communication cost of the
90
Spanner algorithm. We show that the construction of each set Ei in Step (2) of
the algorithm takes a constant number of communication rounds. We also show that
As mentioned before, by collecting information from nodes that are O(log∗ n) hops
away, each node can run Step (3) of the Leapfrog-Spanner algorithm locally.
of (real or useful virtual) edges and determines, for each such edge {u, v}, whether
Hi−1 contains a path from u to v of length no greater than (1 + ε) · d(u, v). Cf.
2α
Lemma 40, node u needs to gather neighborhood information that is O(2(1+ε)( α−1 +
to the construction of the redundancy graph Γ. To this end, each node u takes charge
of all edges {u, v} for which the identifier of u is higher than the identifier of v.
For each such edge {u, v} ∈ Ei , u determines its mutually redundant correspondents
{u′ , v ′} ∈ Ei , and adds this information to Γ. Arguments similar to the ones above
show that the nodes u, u′ , v and v ′ are a constant number of hops away from one
dimension.
First we show that the weights defined by dΓ form a metric. Clearly dΓ (a, a) = 0 and
dΓ (a, b) = dΓ (b, a). To prove the triangle inequality, consider three vertices a, b and c
ua va ua va
a
ub
b vb ub
vb
c uc vc uc vc
(a) (b) (c)
(1) dΓ (a, c) = dH (ua , uc ) + dH (va , vc ) (see Fig. 3.6b). Since dH is itself a metric, it
(2) dΓ (a, c) = dH (ua , vc )+dH (va , uc ) (see Fig. 3.6c). Then it must be that dΓ (a, c) ≤
We have shown that dΓ defines a metric space. We now show that Γ is a quasi-UBG
residing in the metric space defined by dΓ . For each edge {a, b} in Γ, the following
Recall that {ua , va } and {ub , vb } are edges that belong to a same set Ei , for some
ri−1 < d(ua , va ) ≤ γ · α · ri−1 and γ · ri−1 < d(ub, vb ) ≤ γ · α · ri−1 . Thus the right
hand side of the inequalities (a) and (b) above is a quantity that lies in the interval
((1 + ε) − α)ri−1, ((1 + ε)α − 1)ri−1). By scaling ((1 + ε)α − 1)ri−1 to unit distance we
(1+ε)−α
can say that Γ is an (1+ε)α−1
- qUBG in the underlying metric space defined by dΓ .
It remains to show that the metric space defined by dΓ has constant doubling
dimension. Throughout the rest of the proof we use BΓ (BH ) to denote a ball in the
To cover all vertices in BΓ (x, R), do the following repeatedly: (i) pick an uncovered
vertex a ∈ Γ, (ii) grow a ball BΓ (a, R/2), and (iii) grow two balls BH (ua , R/4) and
H Γ a
ua va
R/4 R/2
R ux vx x
R R
b
ub R/2
vb
Let a, b ∈ Γ be be such that dΓ (a, b) > R/2 (see Fig. 3.7). Assume w.l.o.g. that
dΓ (a, b) = dH (ua , ub ) + dH (va , vb ). Then either dH (ua , ub ) > R/4, or dH (va , vb ) > R/4,
or both. Assume w.l.o.g. that dH (ua , ub) > R/4. If d(ua , ub ) ≤ 1, then there
exists i ≥ 0 such that d(ua , ub ) ≤ γri and for which Lemma 35 guarantees that
R
d(ua , ub) ≥ dH (ua , ub)/(1 + ε). This implies that d(ua , ub) ≥ min{1, 4(1+ε) } and
therefore ua and ub cannot be too close to each other in the metric space defined by
d. This along with the fact that the metric space defined by d has constant doubling
dimension implies that only a constant number of such pairs (ua , ub ) (and therefore
quadruples (ua , ub , va , vb )) exist in BH (ux , R) ∪ BH (vx , R). This further implies that
only a constant number of balls of radii R/2 are used to cover BΓ (x, R), proving that
using the MIS algorithm in [51]. In Step (2.4), each node u removes from Ei all
incident edges corresponding to nodes not in I. This completes the proof that Step
It can be verified that the Spanner algorithm described at the end of Sec-
tion 3.2.3 works for β-QUBG as well, for fixed 0 < β ≤ 1. Let δ = ⌈logα βγ ⌉ be the
new value of δ to be used by these methods (in place of the value ⌈logα γ⌉ defined
in Section 3.2). Then all properties of H listed in Section 3.2.1 hold unaltered: δ is
94
γ
used only in the proof of Lemma 28, but since δ = logα β
> logα γ, the lemma holds
for the new δ value as well. The Edge Replacement Procedure from Section 3.2.2 is
carried out only for edges in Ei , with i ≤ h − δ − 3; these are all real edges of length
no greater than β/α3 < β. It follows from the proof of Lemma 30 that such edges
get replaced by real edges as well (if edge {v, u} gets replaced by edge {v, w}, then
d(v, w) ≤ β). Other proofs in Section 3.2.2 use δ as a constant only and therefore
they hold for the new δ value as well. The Virtual Edge Replacement Procedure from
Section 3.2.3 is carried out for each edge in J that is not in the input β-QUBG (which
may include edges of length in the interval (β, 1]), producing the spanner G′ with the
3.6 Conclusion
The question of whether the leapfrog property for the edge set of a spanner
H implies that the total weight of H is bounded above by O(wt(MST )) for doubling
metric spaces, remains open. Were this question to be positively resolved, the (1 + ε)-
spanner constructed in this chapter would have not only degree bounded above by
a constant, but also low weight bounded above by O(wt(MST )). Alternately, con-
metric spaces, without relying on the leapfrog property, is an interesting open prob-
lem.
95
CHAPTER 4
FACILITY LOCATION IN UNIT DISK GRAPHS
4.1 Introduction
The widespread use of wireless multi-hop networks such as ad hoc and sensor
examples of topology control problems. Another such challenge is posed by the need
for efficient clustering algorithms. Clustering can play a critical role in increasing
the performance and lifetime of wireless networks and has been proposed as a way
to improve MAC layer protocols (e.g., [32, 82]), higher level routing protocols (e.g.,
[78, 79, 80]), and energy saving protocols (e.g., [18, 39]). Clustering problems can
the minimum dominating set (MDS) problem, the k-median problem, etc. are some
physical space and since transmission ranges of nodes can be modeled as geometric
objects (e.g., disks, spheres, fat objects, etc.), wireless networks can be modeled
[77, 5, 10, 2, 20] and attempt to develop efficient distributed algorithms for these. Most
of these clustering problems are NP-hard even for fairly simple geometric graphs and
In this chapter, we present the first constant-factor approximation algorithm for the
96
open
not open
a(1)
g(1)
f(5)
b(1)
c(1) h(2)
e(2)
d(3)
Figure 4.1: A UDG with eight vertices. Opening costs are integers shown next
to the vertex names and connection costs of edges are assumed to be Euclidean
lengths. Vertices b, g, and e have been opened as facilities. The solid lines indicate
the assignments of vertices (clients) to open facilities and the dotted lines indicate
edges in the UDG that are not being used for any facility-client connection. Only
the disks around the three open facilities are shown in the figure. The cost of this
solution is 4 units (for opening facilities) plus |f g| + |ab| + |cb| + |de| + |he|.
facility location problem on unit disk graphs (UDGs). For points u and v in Euclidean
space we use |uv| to denote the Euclidean distance in L2 norm between u and v.
|uv| ≤ 1. The facility location problem on UDGs (in short, UDG-FacLoc) takes as
that assigns every vertex (“client”) to an open facility in its neighborhood in such
a way that the total cost of opening the facilities and connecting clients to open
facilities is minimized. In other words, the problem seeks to minimize the objective
P P
function i∈I f (i) + j∈V c(j, φ(j)). See Fig. 4.1 for an illustration. The opening
97
cost f (i) reflects the available battery power at node i; less the battery power, greater
the cost f (i). The connection cost c(j, φ(j)) represents the power needed for j to
communicate with φ(j). Hence it is safe to assume that the connection costs of
edges are determined by their Euclidean lengths via a fairly general function. More
growth, i.e., for some constant B ≥ 1, g(x) ≤ B · g(x/3) for all x ∈ [0, 1]. We assume
that each edge {i, j} ∈ E get assigned a connection cost c(i, j) = g(|ij|). Note that
the restriction that g has bounded growth still permits cost functions that are quite
general from the point of view of wireless networks. For example, if g(x) = β · xγ for
constants β and γ (as might be the case if connection costs represent power usage),
then B = 3γ . It should be noted that every vertex in G is a “client” and every vertex
connected to (i.e., “serviced” by) another vertex (“facility”) in its neighborhood and
do not satisfy the triangle inequality. This is because a vertex cannot be connected
metric version of facility location, even for UDGs. In one sense, this is not surprising
(WMDS) problem on UDGs. This can be seen by noting that an instance of WMDS,
which the connection costs (of edges) are set to 0 and each opening cost f (i) is set to
the vertex weight w(i). Unlike the WMDS problem that ignores the cost of connecting
a result, solutions to WMDS may lead to clustering that is quite poor. There have
with the result of Ambühl et al. [2] being the first constant-factor approximation for
WMDS on UDGs. Subsequently, Huang et al. [34] have improved the approximation
ratio significantly. Our technique combines the well known primal-dual algorithm of
Jain and Vazirani [36] with these recent constant-factor approximation algorithms for
cability of our technique to more general models of wireless networks, for example,
unit ball graphs in higher dimensional spaces or doubling metric spaces, disk graphs,
tion algorithms for the WMDS problem on these graph classes. Using our technique, a
constant-factor approximation algorithm for WMDS on any of these graph classes would
class.
UDGs are simple and popular models of wireless networks and the facility
sets in wireless networks, which is to save energy by sending all dominatees into a
low power sleep mode and having the network be serviced exclusively by the domi-
99
nators. While it makes sense to keep the size or weight of the dominating set small
so that most nodes are in the sleep mode, ignoring the connection costs could yield
a dominating set in which each dominator has to spend a lot of energy in order to
reach its dominatees. By using an objective function that takes opening costs as well
as connection costs into account, UDG-FacLoc yields a set of cluster heads that can
service the network with smaller overall cost and for a longer duration. For more
background see the recent survey by Frank [21] on the facility location problem as it
([48, 76, 3, 43, 12]), that arises in contexts such as locating hospitals in a city or
problem takes as input a complete bipartite graph G = (F, C, E), where F is the set
c(i, j ′ ) + c(i′ , j ′ ) + c(i′ , j). In the metric facility location problem the connection costs
satisfy the triangle inequality; when they don’t we have the more general non-metric
for all i ∈ V , and inheriting the remaining connection costs and opening costs in the
natural way. O(log n)-approximation algorithms for the non-metric facility location
problem are well known [33, 60]. Starting with an algorithm due to Shmoys, Tardos
and Aardal [75] the metric facility location problem has had a series of constant-
previous. We make use of an elegant primal-dual schema algorithm due to Jain and
Vazirani [36] that provides a 3-approximation to the metric facility location problem.
Since UDG-FacLoc is not a metric version of the facility location problem, we cannot
use the Jain-Vazirani algorithm directly. We use the Jain-Vazirani algorithm to get
a “low cost,” but infeasible solution to UDG-FacLoc and then “repair” this solution
via the use of a “low weight” dominating set and show that the resulting solution is
facility location problem; these attempts differ in the restrictions placed on the facility
location problem and in the network and distributed computing models. For example,
Moscibroda and Wattenhofer [65] present a distributed algorithm for the standard
non-metric facility location problem. The network on which their algorithm runs is the
complete bipartite graph on F , the set of facilities and C, the set of cities. Since this
network has diameter 2, one way to solve the problem would be for a node to gather
and just run a known sequential algorithm locally. Thus this problem is uninteresting
in the LOCAL model [71] of distributed computation. The problem becomes more
interesting in the CON GEST model, where a reasonable bound, such as O(log n)
bits, is imposed on each message size. The message size of O(log n) bits allows each
message to contain at most a constant number of node identifiers and constants that
rounds and Moscibroda and Wattenhofer [65] present an approximation algorithm for
√ √
non-metric facility location that, for every k, achieves an O( k(mρ)1/ k log(m + n))-
n is the number of clients, and ρ is a coefficient that depends on the numbers (i.e.,
opening costs and connection costs) that are part of the input. The main thrust of
this result is that even with a constant number of communication rounds, a non-trivial
Ω(log(m + n)).
Frank and Römer [22] consider facility location on multi-hop networks (like
we do), but assume that given edge weights, the connection cost c(i, j) for any pair of
vertices i and j is simply the shortest path distance between i and j. This turns their
problem into a metric problem and thus they can use known sequential algorithms;
in particular, they use the 1.61-approximation due to Jain et al. [35]. Frank and
Römer [22] show how to implement the sequential algorithm of Jain et al. [35] in a
distributed setting without any degradation in the approximation factor, but they do
102
not provide any non-trivial running time guarantees. These authors [22] do mention
the version of the problem in which connection costs between non-neighboring vertices
is ∞, but they just observe that since this is a non-metric problem, constant-factor
tributed algorithm using only O(log n)-bits per message, for the uniform facility lo-
cation problem. In this problem, all opening costs are identical and the underlying
network is a clique. The authors make critical use of the fact that all facility open-
ing costs are identical in order to obtain the constant-approximation. The uniform
opening costs assumption is restrictive for certain settings. For example, if we want
opening costs to reflect the amount of battery power that nodes have available – more
the available power at a node, cheaper it is to open that node, then this assumption
requires the battery power at all nodes to remain identical through the life of the net-
work. This may be untenable because nodes will tend to expend different amounts
of power as they perform different activities. The interesting aspect of the Gehweiler
et al. [23] algorithm is that all message sizes are bounded above by O(log n).
We assume that we are given a UDG along with its geometric representation.
i.e., there exists a constant B such that g(x) ≤ B · g(x/3) for all x ∈ [0, 1]. Each
edge {i, j} ∈ E gets assigned a connection cost c(i, j) = g(|ij|), representing the
103
dependence of the connection cost on the Euclidean distance between the involved
UDG-FacLoc. To put this result in context, observe that if connection costs are exactly
If the connection costs are meant to represent energy usage, then a function such as
then present a distributed implementation of our algorithm that runs in just O(1)
In the LOCAL model, every node v ∈ V can send an arbitrarily large message
to ever neighbor u in each round of communication. This model abstracts away all
the restricting factors (e.g. congestion and asynchronicity) and focus on the impact of
can be solved “locally” with only a constant-factor degradation in the quality of the
solution. One aspect of our result, namely the constant approximation factor, depends
are given only a combinatorial representation of the input n-vertex UDG, then our
depends on two recent results: (i) an O(log∗ n)-round algorithm for computing a
maximal independent set (MIS) in growth-bounded graphs [74] and (ii) an algorithm
that partitions a UDG, given without geometry, into relatively small number of cliques
[72]. Overall, our results indicate that UDG-FacLoc is as “local” a problem as MIS is,
104
Now we present a high level three step description of our algorithm for finding
with an opening cost f (i) for each vertex i ∈ V and connection cost c(i, j) for each
[0, 1] → R+ satisfying g(x) ≤ B · g(x/3) for all x ∈ [0, 1] for some B ≥ 1, such that
c(i, j) = g(|ij|).
Step 1. Convert the given instance of UDG-FacLoc into a standard non-metric in-
section. Run the primal-dual algorithm of Jain and Vazirani [36] on this in-
stance to obtain a solution S. The solution S may contain connections that are
infeasible for UDG-FacLoc; these connections have connection cost ∞ and they
set of G with small weight. For this we can use the (6 + ε)-approximation
algorithm due to Huang et al. [34]. Let D ∗ denote the resulting solution.
D ∗ as facilities and declare them all open. Let the new solution to UDG-FacLoc
be called S ∗ .
Theorem 42. Let OP T denote the cost of an optimal solution to a given instance of
4.2.1 Analysis
dual algorithm used in Step 1. For a more complete description see [36]. The starting
point of this algorithm is the following Integer Program (IP) representation of facility
location. Here yi indicates whether facility i is open and xij indicates if city j is
connected to facility i. The first set of constraints ensure that every city is connected
to a facility and the second set of constraints guarantee that each city is connected
to an open facility.
X X
minimize c(i, j) · xij + f (i) · yi
i∈F,j∈C i∈F
X
subject to xij ≥ 1, j∈C
i∈F
yi − xij ≥ 0, i ∈ F, j ∈ C
replacing the integrality constraints by xij ≥ 0 for all i ∈ F and j ∈ C and yi ≥ 0 for
X
maximize αj
j∈C
αj ≥ 0, j∈C
βij ≥ 0, i ∈ F, j ∈ C
The dual variable αj can be interpreted as the amount that city j is willing to
pay in order to connect to a facility. Of this amount, c(i, j) goes towards paying for
connecting to facility i, whereas the “extra,” namely βij , is seen as the contribution
of city j towards opening facility i. Initially all the αj and βij values are 0. The
Jain-Vazirani algorithm initially raises all of the αj values in sync. When αj reaches
c(i, j) for some edge {i, j}, then the connection cost c(i, j) has been paid for by j
so that the first dual constraint is not violated. The quantity βij is j’s contribution
P
towards opening facility i and when there is enough contribution, i.e., j βij = f (i),
then the facility i is declared temporarily open. Furthermore, all unconnected cities j
that make positive contribution towards f (i), i.e., βij > 0, are declared connected to
i. Also, any unconnected city j that has completely paid its connection cost c(i, j),
but has not yet started paying towards βij , i.e., βij = 0, is also declared connected
107
connected to it, then the dual variables of these cities are no longer raised; otherwise
P
the dual constraint j∈C βij ≤ f (i) would be violated. The algorithm proceeds in
this way until every city has been connected to some open facility. This is the end of
It is easy to check that at the end of Phase 1, {αj , βij } define a feasible dual
solution and {yi , xij } define a feasible integral solution. If the cost of the primal
solution is not too large compared to the cost of the dual solution, then by the Weak
Duality Theorem, we would have a solution to facility location that is not too far
from a lower bound on OP T . However, the gap between the costs of the dual and the
primal solutions can be quite high because a single city may be contributing towards
the connection costs and opening costs of many facilities. To fix this problem, Phase
2 of the algorithm is run. Let Ft be the set of temporarily open facilities. Define a
graph H on this set of vertices with edges {i, i′ } whenever there is a city j such that
βij > 0 and βi′ j > 0; in other words, city j is contributing a positive amount towards
the opening of both facilities i and i′ . Compute a maximal independent set (MIS) I
of H and declare all facilities in I open (permanently) and close down all facilities in
Ft \ I, i.e., set yi = 0 for all i ∈ Ft \ I. Due to the shutting down of some facilities,
some cities may be connected to closed facilities implying that the primal solution
Class I city if it is connected to an open facility. Denote the set of Class I cities by
108
C1 . We will call cities outside of C1 , Class II cities. At this point in the algorithm
the primal and the dual solution satisfy the following properties.
Lemma 43. [Jain-Vazirani [36]] The dual solution {αj , βij } is feasible. The
primal solution {yi , xij } is integral, but may not be feasible. Furthermore,
X X X
αj = c(j, φ(j)) + f (i).
j∈C1 j∈C1 i∈I
i i’
(closed)
(open)
j’ j
Figure 4.2: Client j is connected to temporarily open facility i at the end of Phase
1. Client j ′ contributes positively to the opening cost of both i and i′ . Facility i′ is
closed at the beginning of Phase 2 and facility i becomes a candidate for connecting
j to.
The above Lemma is essentially saying that the Class I cities completely pay
for connections to and the opening of facilities in I. The goal now is to fix the
infeasibility of the primal solution, i.e., find connections for cities outside C1 , without
increasing the cost of the primal solution too much relative to the cost of the dual.
Let j be a city that is connected to a closed facility. If there is a open city i to which
j has already paid connection cost, i.e., αj ≥ c(i, j), then simply connect j to one
109
such city. Since αj ≥ c(i, j), the connection cost is paid for by αj and furthermore the
opening cost of i has been paid for by other cities. This leaves a set C ′ of cities such
that for each j ∈ C ′ , αj < c(i, j) for all open cities i. This may happen, for example,
if none of j’s neighbors in G have been opened as facilities and therefore for every
open facility i, c(i, j) = ∞. Note that at the end of Phase 1, there was a temporarily
open facility, say i, to which j was connected and in Phase 2, i was shut down. This
implies that (i) αj ≥ c(i, j) and (ii) there exists a city j ′ that is paying a positive
amount towards the opening of two facilities i and i′ and this “double payment” is
responsible for i being shut down. See Fig. 4.2 for an illustration. In such a case,
case, Jain and Vazirani are able to show that the connection cost c(j, i′ ) is not too big
relative to c(i, j) (they show, c(j, i′ ) ≤ 3 · c(i, j)). In our case, i′ may be outside the
costly. This possible mistake is fixed in the subsequent two steps of our algorithm,
via the use of a WMDS solution. We now include the last two steps of our algorithm
in the analysis to show that we are able to find a facility that is not too costly for
and we are able to show that connecting i to j ′ is a good idea. On the other hand,
WMDS solution D ∗ will not increase the cost of the solution too much. We make use
of the following inequalities that Jain and Vazirani prove. The first inequality was
mentioned earlier in this paragraph, but the remaining two inequalities take a little
110
bit of work to prove and we refer the reader to the Jain-Vazirani paper [36].
Lemma 45. Let B satisfy g(x) ≤ B · g(x/3) for all x ∈ [0, 1]. If j ′ is a neighbor of
Let y denote the largest of the three terms on the left hand side above. Then y ≥
|ij ′ |/3. Suppose that j ′ is a neighbor of i. Then |ij ′ | ≤ 1 and c(i, j ′ ) = g(|ij ′ |) < ∞.
Then,
′ ′ |ij ′ |
c(i, j ) = g(|ij |) ≤ B · g (due to bounded growth of g)
3
≤ B · g(y) (due to monotonicity of g)
Now suppose that j ′ is not a neighbor of i. Then |ij ′ | > 1 and for any neighbor
j ∗ of i, |ij ′ | > |ij ∗ |. Since y ≥ |i′ j|/3, it follows that y > |ij ∗ |/3. Then, by the same
≤ B · αj .
111
Lemma 46. Let S ∗ be the solution produced by our algorithm. Then, cost(S ∗ ) ≤
P
By Lemma 43, the first term in the above sum equals j∈C1 αj . Let OP TDOM denote
the weight of an optimal dominating set when each vertex i of G is assigned weight
f (i). Then,
X
f (i) ≤ (6 + ε) · OP TDOM ≤ (6 + ε) · OP T (4.1)
i∈D ∗
X X
c(φ(j), j) ≤ B · αj . (4.2)
j∈C2 j∈C2
we can show that the above analysis is tight in the sense that there exists a UDG
112
along with an assignment of opening and connection costs for which our algorithm
WMDS used.
above algorithm in the LOCAL model [71]. In this model there is no upper bound
placed on the message size and due to this, a node can collect all possible information
independently on small squares and combine the solutions in a simple way to get the
overall solution. We partition the plane into squares by placing on the plane an infinite
√ √
grid of 1/ 2 × 1/ 2 squares. This is a standard and simple way of partitioning a
UDG with geometric representation into cliques. The square Sij for i, j ∈ Z, contains
given UDG. For a square Sij that has at least one node in V , let Vij ⊆ V be the
set of vertices whose centers lie in Sij . Let N(Vij ) denote the set of all vertices in
V \Vij that are adjacent to some vertex in Vij . Now consider the subproblem, denoted
UDG-FacLocij , in which we are allowed to open facilities from the set Vij ∪N(Vij ) with
the aim of connecting all the nodes in Vij as clients to these facilities. The objective
113
function of the problem remains the same: minimize the cost of opening facilities plus
Let {Fij , φij } denote a solution to UDG-FacLocij , where Fij ⊆ Vij ∪N(Vij ) is the
set of open facilities and φij : Vij → Fij is the assignment of clients to open facilities.
Let ∪ij {Fij , φij } denote a solution to UDG-FacLoc in which the set of open facilities is
∪ij Fij and the assignment φ : V → ∪ij Fij is defined by φ(v) = φij (v) if v ∈ Vij . Thus
∪ij {Fij , φij } defines a simple way of combining solutions of UDG-FacLocij to obtain a
solution of UDG-FacLoc. The following Lemma shows that if the small square solutions
∪ij {Fij , φij } are good then combining them in this simple way yields a solution to
UDG-FacLoc that is also quite good. This Lemma is a generalization of a result due
to Ambühl et al. [2] that was proved in the context of the WMDS problem for UDGs.
The proof of this Lemma is omitted due to space constraints, but it appears in [67].
Lemma 47. For each i, j ∈ Z, let OP Tij denote the cost of an optimal solution to
UDG-FacLocij and let {Fij , φij } be a solution to UDG-FacLocij such that for some c,
cost({Fij , φij }) ≤ c · OP Tij . Then cost(∪ij {Fij , φij }) ≤ 16c · OP T . Here OP T is the
Step 1. Each node v gathers information (i.e., coordinates of nodes, opening costs
of nodes, and connection costs of edges) about the subgraph induced by its
2-neighborhood.
Step 2. Each node v in Sij then identifies Vij and N(Vij ). Recall that Vij ⊆ V is the
114
set of nodes that belong to square Sij and N(Vij ) ⊆ V \ Vij is the set of nodes
Step 3. Each node v locally computes the solution of UDG-FacLocij , thereby deter-
Based on the above description, it is easily verified that the algorithm takes
3 is slightly different from UDG-FacLoc, in that only certain vertices (namely, the
vertices in Vij ) need to connect to open facilities, whereas every vertex (both in Vij
and in N(Vij )) is a potential client. This difference is minor and the (6 + B + ε)-
without any changes, to solve UDG-FacLocij . Lemma 47 then implies that the dis-
We can do better by making use of an intermediate result due to Ambühl et al. [2]
that presents a 2-approximation algorithm for the WMDS problem on each square Sij .
Using arguments from the previous section, we can use this to obtain a (B + 2)-
4.4 Conclusion
One open question implied by this work is whether we can obtain a constant-
factor approximation algorithm for facility location on more general classes of wireless
network models. We believe that a first step towards solving this problem would
115
input UDG is given without any geometry. The only obstacle to obtaining such an
to WMDS on UDGs given without geometry. Without geometry, the best algorithm we
the UDG-FacLoc problem. That algorithm appears in the full version of the ICDCN
paper [67].
LOCAL model, which assumes that message sizes are unbounded. We wanted to
extend our distributed algorithm to the CON GEST model where only messages of
size O(log n) are allowed. The results in the next chapter describes our findings in
that area.
116
CHAPTER 5
A PRIMAL-DUAL APPROACH FOR METRIC FACILITY LOCATION
5.1 Introduction
Recent research in the area of distributed approximation algorithms [19, 44, 49,
50, 54, 55, 65, 23] has led to interesting and sometimes optimal trade-offs between the
etc.) and the quality of solution (i.e., approximation factor) obtained. In recent
years, such trade-offs have been especially well-studied for the minimum spanning
tree problem [44] and the dominating set problem [50, 54, 55]. One theme in this
algorithms that provide non-trivial approximation guarantees even when run for very
few (e.g., constant) number of rounds? The earliest example of such an algorithm, as
far as we know, is the dominating set algorithm due to Kuhn and Wattenhofer [54]
that runs in k 2 rounds, for any k, and outputs a dominating set whose expected size
is within O(k 2∆2/k log ∆) of OPT. Here ∆ is the maximum degree of the network. In
this paper, we investigate this question for the metric facility location problem. For
running in O(log m + log n) rounds and then generalize this algorithm to a k-round
√ √
algorithm that yields an O(m2/ k
· n2/ k
)-approximation, for any constant k. In
fact, the k-round algorithm yields this approximation factor for all k = O(( logloglogmm )2 ).
A key constraint of our model of distributed computation is that message sizes are
117
Although we have already defined the facility location problem (from the UDG
the problem for this chapter. The traditional facility location problem takes as input
a complete bipartite graph G = (F, C, E), where F is the set of facilities and C is
the set of clients (or cities), facility opening costs f : F → R+ , and connection costs
opening facilities and connecting clients to open facilities. This version of the problem
is old and well studied in operations research [12], that arises in contexts such as
problem has also been recently used as an abstraction for the problem of locating
resources in wireless networks [21, 68]. The facility location problem comes in two
main versions: the non-metric version and the metric version. In Chapter 4 we
have seen the metric facility location problem. In the metric version, the connection
costs satisfy the triangle inequality; when they don’t, we have the more general non-
metric facility location problem. See Figure 5.1 for an illustration. This distinction
problem ([9, 36, 75] are some examples), whereas for the non-metric facility location
problem, the best known approximation factor is O(log n) and this is optimal [33, 60].
118
1 2 3
a 4 1 6
f(1) = 10
b 7 1 9
f(2) = 5
c 5 1 7
f(3) = 2
d 4 6 1
c(i,x) values
Figure 5.1: An instance of standard FacLoc. The table shows the pairwise connection
costs between clients and facilities. OPT consists of open facilities 2 and 3 with clients
a, b and c connected to facility 2 and client d to facility 3. Total cost of OPT is 11.
Note that any solution with a single open facility or with all the facilities open, will
have cost more than 11. So is the case for any solution that opens facility 1.
[65] who consider the non-metric facility location problem and design an approxi-
mation algorithm that in O(k) rounds, for any constant k, yields a non-trivial ap-
proximation factor that depends on k and the input size. The underlying network
on which this algorithm runs is the complete bipartite graph G = (F, C, E), induced
by the facilities and the clients. Given that the network has diameter 2, the prob-
lem is trivial (i.e., simply reduces to the sequential setting) if arbitrary amounts of
a reasonable bound, such as O(log(m + n)), on the message sizes makes the problem
trade-off between the number of communication rounds of the algorithm and the ap-
proximation factor achieved. Specifically, they present an algorithm that runs in O(k)
√ √
rounds and yields an approximation of O( k(mρ)1/ k log(m + n)), where m is the
119
the numbers in the given instance (i.e., the opening costs and the connection costs).
since Moscibroda and Wattenhofer [65] assume that ρ can be stored in a message of
size O(log n) bits, implying that the value of ρ is bounded above by a polynomial in
metric facility location problem is a special case of the non-metric problem, this leads
such as this, in which network diameter is not a concern (since it is just a constant),
factors that are as good as the best approximation factors possible in a sequential
setting. Since the metric facility location problem has a sequential constant-factor
how large we make k, the smallest value achieved by their approximation factor of
√ √
O( kn2/ k log(n)) is just O(log2 n). At a high level, the reason for this is that the
the fractional solution, in the second step; unfortunately, in both of these steps there
are needed.
facilities and clients. Also, the network executes algorithms synchronously and in
each round nodes receive messages from neighbors, perform polynomial-time local
passing model with a logarithmic bound (in the network size) on the message size has
been called the CON GEST model by Peleg [71]. The CON GEST model is a “point-
to-point” communication model and allows a node to send a different O(log n)-bit
message to each of its neighbors, but in our algorithm it suffices for each node to send
the same O(log n)-sized message to all of its neighbors. This is the local broadcast
focus more clearly of the challenges of using the CON GEST model, we assume that
each piece of information that a node possesses (IDs, fi ’s, cij ’s, etc.) can fit into an
O(log(m + n))-bit message. We consider the metric facility location problem in this
model and present two results: (i) a 7-approximation running in O(log m + log n)
√ √
rounds and (ii) a k-round algorithm that yields an O(m2/ k
· n2/ k
)-approximation.
121
These results answer a question on fast distributed approximation algorithms for the
metric facility location problem, posed by Moscibroda and Wattenhofer [65]. Our
techniques are based on the Jain-Vazirani primal-dual algorithm [36] and a rapid,
Vicari [24]. In fact the success of the primal-dual approach in this setting contradicts
the claim by Moscibroda and Wattenhofer [65] that the Jain-Vazirani primal-dual
Another motivation for our work comes from the elegant constant-round, constant-
factor approximation algorithm for the uniform metric facility location problem by
Gehweiler et al. [23]. The adjective “uniform” in the title refers to the assumption
that all facility opening costs are identical. The Gehweiler et al. [23] algorithm also
assumes the CON GEST model and further assumes that the underlying network is
a clique, with each node being a client as well as a possible location for a facility.
The results in this paper are partly motivated by the desire to extend the Gehweiler
et al. algorithm [23] to instances that allow arbitrary facility opening costs. While
we describe our algorithm for a bipartite network, the algorithm works more or less
Organization. The rest of the chapter is organized in three sections. Section 5.2 is
to our k-round algorithm, and Section 5.4 contains a brief discussion of related open
122
algorithm will set the stage for the more complicated k-round approximation algo-
rithm described in the next section. We assume that each message can be O(log N)
bits long and that all node IDs can be represented in log N bits. Note that in a com-
plete bipartite graph, every node can learn the total number of facilities and clients
assume that all nodes know m and n. As the formulation of the primal and dual
programs and their relaxations, as well as the idea behind the primal-dual approach
have already been described in Chapter 4, we move on to the algorithm. Unless oth-
erwise mentioned, the related notations (primal and dual variables, constants etc.)
Algorithm 5.1.
but several challenges have to be dealt with in order for the algorithm to run in
logarithmic number of rounds in the CON GEST model. For example, we have to
quickly find an initial feasible solution to the DP that is not too far away from the
123
“final” feasible solution so that the Primal-Dual Phase can terminate in O(log n)
rounds.
1
Set αj := n
min(fi + cij ) for all j ∈ C. For each j ∈ C, if i∗ is such that
i
fi∗ + ci∗ j = mini (fi + cij ), then set φ(j) := i∗ . For each i ∈ F , j ∈ C, set βij :=
Lemma 48. The set of αj -values and βij -values defined above constitute a feasible
fi
βij ≤ (5.1)
n
On the other hand, if βij > 0, then it must be the case that βij = αj − cij . For this
1 1
αj = min(fi + cij ) = (fi∗ + ci∗ j ) .
n i n
fi 1 1
βij − = fi∗ + ci∗ j −ncij −fi = (fi∗ + ci∗ j ) −(fi + cij ) −(n−1)cij ≤ 0. (5.2)
n n n
X
Summing over all j, using inequalities (5.1) and (5.2), we get βij − fi ≤ 0.
j∈C
Now, let us define α∗ = maxj αj and let j ∗ = arg max αj . Any j ∈ C with
αj ≤ α∗ /n will be called a low-paying client and the facility φ(j) (for low-paying j)
will be called a cheap facility. The reason for identifying these low-paying clients and
cheap facilities is that their overall opening and connection cost is so low that they
can be dealt with much further ado (so shown in the next lemma). Furthermore,
eliminating these clients is critical in guaranteeing that the next phase (i.e., the
125
primal-dual phase) runs in O(log n) rounds. In preparation for the next lemma, let
L be the set of low-paying clients and OP T be the cost of an optimal solution to the
Lemma 49. The total cost of opening all cheap facilities and connecting each low-
Proof. The total cost of opening the cheap facilities and connecting each low-paying
X X X α∗
cφ(j)j + fφ(j) = αj ≤ .
j∈L j∈L j∈L
n
Since the total number of clients is n, the right hand side above is bounded above by
α∗ . Note that there is a client j ∗ is such that αj ∗ = α∗ and furthermore the αj ’s are
P
all part of a feasible solution to the DP. Therefore, by weak duality α∗ ≤ j∈C αj ≤
OP T .
clients and cheap facilities can be accomplished quite easily in just O(1) rounds of
opened. To prevent low-paying clients and cheap facilities from getting in the way
of the primal-dual phase, for each low-paying client j, we set color(j) := grey and
126
status(φ(j)) := open. The color of a client j will indicate to the primal-dual phase
whether j is still active or not; the color grey will denote inactivity (i.e., αj is not
raised any more). The status of a facility can be one of {closed, temporarily-open, open}
and the cheap facilities are all declared open and do not participate in the primal-dual
phase.
Recalling that L denotes the set of low-paying facilities, let αmin := minj ∈L
/ αj .
Thus αmin is the smallest αj value, excluding the “very small” αj values belonging to
Dual Algorithm (see Algorithm 5.3). Initially, every client j (that is not low-paying)
sets its αj -value to αmin and sets its color to white indicating that it is ready to be
the payment αj of client j first goes towards paying off the connection costs cij for
all i ∈ F . The sign of γij (Line 5) indicates whether j has paid for a connection
cost cij or not. If, during an iteration , j discovers that it has paid enough towards
a connection cost cij , then there are two possibilities: (i) i is already open, in which
case the client j is connected to i, by setting φ(j) to i (Line 9) and (ii) i is not open
and in this case j’s payments will go towards opening the facility i, i.e., towards βij .
The color of a client denotes whether it has been connected or not. Initially
all active clients are white. Each client changes its own color to grey as soon as they
get connected.
All facilities that are not cheap, are initialized to have a closed status. During
the course of a typical iteration (say, iteration s) of facility i’s algorithm (shown
in Algorithm 5.4), the facility receives payments αj from clients, determines their
residual payments βij (after accounting for payment towards connection costs), and
checks if the residual payments βij , for all j ∈ C are sufficient to pay for the cost of
opening fi (in Line 6). When the opening cost of a facility is completely paid for, it
take place in a synchronous manner. All activities in the primal-dual algorithm cease
when all clients become grey. This is because when clients become grey they no
128
longer increase their αj -values and without any change in the αj -values no new fa-
cilities will be paid for. We now prove two important properties of the Primal-Dual
Algorithm.
Lemma 50. The Primal-Dual Algorithm runs for at most 6 log n communication
rounds.
Proof. For client j, let αj (s) denote the value of αj after iteration s. We know αj (0) =
(t)
αmin and also αmin > α∗ /n. Since αj ’s double in each iteration, αj > n · α∗ for
t := 2 log n. Now recall from the initialization phase that α∗ = maxj mini (fi +
(t)
cij )/n. Therefore, αj will exceed mini (fi + cij ), which means that client j, all by
itself, is paying for more than the amount needed to open facility i∗ , where i∗ is
argmini (fi + cij ). Therefore client j, for all j ∈ C, turns grey in round t = 2 log n or
X
Lemma 51. After the Primal-Dual Algorithm has terminated, αj ≤ 2 · OP T .
j ∈L
/
Proof. Set αj = 0 for all j ∈ L and αj = αj /2 for all j 6∈ L. Set β ij := max{cij −αj , 0}
for all i ∈ F, j ∈ C. It is easy to check that this is a feasible solution to the DP and
P
therefore by weak duality j∈C αj ≤ OP T . This yields the claim.
At the end of the Primal-Dual Phase we have a solution (albeit, a costly one,
possibly) to the facility location problem, given by the open and temporarily open
facilities and each client connecting to an open or temporarily open facility. The goal
the dual variables and since the sum of the dual variables is within a constant times
the last phase in the Jain-Vazirani algorithm [36]; our contribution here is to show
Let Ft be the set of temporarily open facilities at the end of the Primal-Dual
temporarily open facilities i and i′ for which there is a client j such that βij > 0 and
βi′ j > 0; in other words, j makes a positive payment towards the opening of both i
and i′ . The high level algorithm for the sparsification phase is shown in Algorithm
5.5.
Note that since M is an MIS of H, for every client j that finds out that the
In the Sparsification Phase, Steps 2 and beyond are all easy to implement in
Step 1. The difficulty with using Luby’s algorithm [1, 63] “as is” is to compute the
MIS of H is that nodes in H do not have edges to each other in the underlying network
and will have to communicate via clients. Given the restriction on the message sizes,
this may be hard to do in constant rounds. For example, it is impossible for a node
out the IDs of all its neighbors in H since all this information may have to arrive at
undecided vertices.
2. Each node i that is marked in Step 1 unmarks itself if it finds a neighbor j with
131
Clique 2
Clique 1
Clique 3
Figure 5.2: Suppose that a temporarily open facility i is positively paid for by Clients
1, 2 and 3 (i.e., βi1 , βi2 , βi3 > 0). Further suppose that client 1 positively pays for 6
temporarily open facilities, client 2 pays for 4, and client 3 for 5 temporarily open
facilities. This leads to 3 cliques in H of sizes 6, 4, and 5 respectively. If each facility
i thinks of itself as belonging to the clique of the client with lowest ID, then Clique 1
will have size 6, Clique 2 will have size 2, and Clique 3 will have size 2. This allows i
to figure out that its degree is 6 + 2 + 2 = 10.
lower degree that has marked itself. Ties can be resolved via the use of IDs.
The nodes that mark themselves in a stage of Luby’s algorithm have “decided”
to join the MIS and neighbors of such nodes have “decided” not to join the MIS; the
undecided nodes continue to the next phase. For Step 1, node i ∈ Ft needs to know
its degree in the subgraph of H induced by currently undecided nodes and for Step 2
node i needs to know the lexicographically smallest tuple (ID(i′ ), degree(i′)) over all
constant number of rounds in the CON GEST model and to do this we take advantage
compute degree(i) in a constant number of rounds. The information needed for Step
132
5.2.5 Analysis
We now we analyze the quality of the computed solution as well as the number
of rounds it takes to compute the solution in the CON GEST model. We start off
with a lemma showing that the cost of reconnecting j to an open facility in the
and Vazirani’s analysis [36] as well; our proof is slightly different since events in our
algorithm happen in discrete rounds whereas the Jain-Vazirani algorithm grows dual
variables continuously.
Proof. Consider a facility i′ that is responsible for j turning grey. That is, client j
finds, in some round that status(i′ ) is either open or temporarily-open and γi′ j =
be the case that i′ was shut down during the Sparsification Phase and facilities i and
133
i′ are neighbors in H. Hence, there exists a client j ′ such that βij ′ > 0 and βi′ j ′ > 0
(refer to Fig. 5.3). We will show αj ≥ ci′ j ′ and αj ≥ cij ′ . The rest will follow from
triangle inequality.
spectively. Note that at the beginning of these rounds all white clients’ α-values were
α(t1 ) and α(t2 ) respectively. We have also argued before that j become grey either in
round t2 or after. Hence αj ≥ α(t2 ) . As βij ′ > 0 and βi′ j ′ > 0, αj ′ > ci′ j ′ and αj ′ > cij ′ .
i i’
(closed)
(open)
j’ j
Figure 5.3: Client j is indirectly connected to i because i′ was closed after the MIS
computation.
The following lemma can be proved by routine accounting and we skip its
proof.
134
Lemma 53. The algorithm presented above terminates in O(log m + log n) rounds
Proof. We can assign unique IDs to all clients and facilities using log2 N bits. We
also assume that the constants involved (fi and cij values) and αj and βij values can
also be represented by O(log N) bits. We show that the bounds on total number of
rounds and message size are respected in every stage of the algorithm.
Initialization phase. We have already shown that the “low-paying” facilities can
be identified in O(1) rounds. The messages sent contain fi values, αj values and node
Primal-dual phase. Lemma 50 shows it is enough to let the facility process and
the client process run for O(log n) rounds. The messages involved contain αj values,
H in O(1) rounds. The messages involved are client IDs, c(i) values and d(j) values.
All these values are at most N and can be represented in O(log N) bits. Finally,
we use Luby’s MIS algorithm that runs in O(log m) rounds using messages of size
O(log m).
Lemma 54. Let I be the set of facilities opened by our algorithm. Then,
X X
fi + cφ(j)j ≤ 7 · OP T.
i∈I j∈C
Proof. Let I ′ ⊆ I denote the facilities that are not cheap and were therefore opened
in the Primal-Dual Phase. Let COST denote the total cost of opening facilities in
I ′ and the connection cost of clients that are not low-paying. Clients that are not
low-paying can be partitioned into sets, A, consisting of clients that directly connect
X X X
COST = fi + cφ(j)j + cφ(j)j
i∈I ′ j∈A j∈B
XX X X
≤ βij + (αj − βφ(j)j ) + 3 · αj (5.3)
i∈I ′ j∈A j∈A j∈B
X X X
≤ βφ(j)j + (αj − βφ(j)j ) + 3 · αj (5.4)
j∈A j∈A j∈B
X X
≤ αj + 3 · αj
j∈A j∈B
X
≤ 3· αj ≤ 6 · OP T (5.5)
j6∈L
lier and the fact that if client j is directly connected to φ(j), then αj ≥ cφ(j)j and
P P
so βφ(j)j = αj − cφ(j)j . Inequality (5.4 is obtained by rewriting i∈I ′ j∈A βij as
P P
j∈A i∈I ′ βij and then noting that for each j ∈ A, βij > 0 for exactly one i, namely
i = φ(j). This is the result of the Sparsification Phase. The first part of Inequality
(5.5) follows from the fact that A ∪ B is the set of clients that are not low-paying.
Earlier we had used L to denote the set of low-paying clients. The second part of this
The total cost of the solution, including opening cost of cheap facilities and
using a very small (e.g., a constant) number of rounds, we present in this section a
O(n2/k1 ·m2/k2 )-approximation algorithm. Recall that m is the number of facilities and
n is the number of clients. Here k1 can take any value whereas k2 can take any value
Algorithm, which does not exhibit the desired behavior for larger values of k2 . This is
because for larger k2 the degree of the graph being sparsified falls below log m and at
algorithm. However, the other two phases (especially the Sparsification Phase) are
quite different and furthermore, how the Primal-Dual Phase and the Sparsification
Phase interact is also quite different. Rather than running the Sparsification Phase
after the Primal-Dual Phase is completed, we now interleave the iterations of the two
137
Primal-Dual Algorithm.
client j raises the αj -value by a multiplicative factor of n2/k1 . Recall from Section 5.2.3
that each αj for j 6∈ L is initialized to αmin , where αmin · n2 > mini (fi + cij ) for every
then its αj value would grow from αmin to αmin · (n2/k1 )k1 = αmin · n2 > mini (fi + cij ).
At this point the αj -value is more than sufficient to pay for the opening cost of a
facility all by itself and therefore client j would have turned grey and been connected
Lemma 55. Every client that enters the Primal-Dual Phase colored white turns grey
during one of the k1 iterations of the Primal-Dual Phase and gets connected to some
Also, similar to Lemma 51, we can show that the αj -values, when scaled down
138
by a factor of n2/k1 and the corresponding βij values form a feasible solution to the
DP, yielding the following lemma; the proof is similar to the proof of Lemma 51 and
is skipped.
X
Lemma 56. After the k-round Algorithm has terminated, αj ≤ n2/k1 · OP T .
j ∈L
/
The Sparsification Phase is the fundamental challenge for the k-round algo-
rithm. Recall from the analysis of the Logarithmic-round algorithm that the goal of
the Sparsification Phase is to bound, for each client j, the size of Kj = {i ∈ F | βij >
0 and i is open}. If we permanently open all the nodes in Ft (the set of temporarily
open facilities), Kj can become arbitrarily large. This motivated the definition of the
such that there is a client j with βij > 0 and βi′ j > 0. Then an MIS M on H is
computed and only nodes in M are permanently opened. As a result, |Kj | ≤ 1 for
down (due to not being in M) then some neighbor i′ of i in H is open and j can be
reconnected to i′ without the cost of the reconnection being too high relative to αj .
Given that we now have a very small number of rounds in which to do sparsi-
fication, we can no longer use a Luby-like algorithm because it does not sparsify the
graph rapidly enough to make adequate progress in a small number of rounds. Since
we can relax the requirement that we need to shut down enough temporarily open
facilities to ensure that |Kj | = O(1) for all clients j. Instead, we would like to use
k2 rounds to sparsify H and select a set of nodes M that induces a sparse subgraph
139
with maximum degree O(m1/k2 ). M needs to satisfy the additional “maximality” re-
quirement that each node in H has a neighbor in M. This maximality property will
guarantee that if for a client j, facility i = φ(j) is shut down (due to not being in M)
then some neighbor i′ of i in H is open and j can be reconnected to i′ without the cost
of the reconnection being too high relative to αj . Unfortunately, we do not know how
next subsection we present an algorithm that runs for k2 rounds and selects a node
subset M of H and guarantees, with high probability, the following two properties:
1. ∆(H[M]) ≤ 6 · m2/k2 .
Here ∆(·) refers to the maximum degree of a given graph and distance(i, M) is the
shortest number of hops in H between a facility i and the set of selected vertices M.
Note that our algorithm only satisfies a relaxed version of the maximality requirement
— a node in H may not find a node in M in its neighborhood, but will find a node in
M within 2 · k2 hops. This means that there may be a client j for which the facility
i = φ(j) is shut down (due to not being in M) and now client j has to be reconnected
to a facility i′ that is relatively far away. Given this, we are no longer able to ensure
that the cost of reconnecting j to i′ is small enough. However, if all the αj -values are
identical, then we can guarantee that the cost of reconnecting j to i′ is O(αj ·k2 ). This
bound on the reconnection cost suffices for our analysis and in order to ensure that
all of the αj -values are identical, we run the Sparsification Algorithm repeatedly and
140
separately, on just the facilities that were temporarily opened in each Primal-Dual
Algorithm iteration (Lines 7-10). This modification by itself would still allow Kj to
be quite large because a client j could be making positive payments to facilities that
also additionally shut down (in Lines 4-6) each facility i that was temporarily opened
in an iteration p but which has a facility i′ “nearby” that was temporarily opened in
a previous iteration.
due to Gfeller and Vicari [24]. These authors are interested in quickly computing an
MIS on growth-bounded graphs. While our graphs are not growth-bounded, the first
phase of the Gfeller-Vicari algorithm runs on arbitrary graphs and here we essentially
show that even a few iterations of a variant of this algorithm guarantees enough
progress.
graph G = (V, E). It is worth noting that in the context of Algorithm 5.7, the
immediately shut down in Line 5; as usual Et is the set of edges connecting pairs of
facilities i, i′ in Ft for which there is a client j with βij > 0 and βi′ j > 0.
in iteration s of the Sparsification Phase when run on graph Gs−1 and let Gs :=
G[Ms ]. We now describe a typical iteration s of the Sparsification Phase. For ease
so that the maximum degree in G[Ms ] is at most m2/r . Let τ := m2/r . Any node in
Gs−1 with degree no greater that τ is called a small degree node. Any small degree
node, all of whose neighbors are also small degree nodes, is called an interior node; all
other small degree nodes are called boundary nodes. Nodes that are not small degree
nodes are called exterior nodes. See Figure 5.4 for an illustration of these definitions.
ensuring that all node degrees are bounded by m2/r , the interior vertices are not
of concern because of their small degrees and their neighbors’ small degrees and
they can simply be included in the output. The boundary vertices and the exterior
Small−degree components
Interior node
Boundary node
Exterior node
Figure 5.4: Shows the partition of the nodes of a graph into interior, boundary, and
exterior nodes with degree threshold τ set to 2.
also have small degrees, we do have to worry about their degrees. We can inductively
upper bound the degree of exterior vertices entering iteration s and if we choose the
vertices by m2/r also. This is proved in the next two lemmas. Of course, if the goal
was solely to bound the degrees, then we could achieve this trivially by including no
5.7 is to show that after k2 iterations of the executed, the output M := Mk2 satisfies
Lemma 59 shows that in each iteration the selected vertices can get at most 2 hops
Lemma 57. For some constant c1 > 0, for all s ≤ c1 · logloglogmm , if the maximum degree
3
in Gs−1 is at most m (s+2) , then with high probability, the maximum degree of Gs is at
2
most 6 · m (s+2) .
interior or a boundary node during iteration s, then the degree of u in Gs−1 is at most
143
m2/r . As vertices are only dropped during the iteration, the degree of u in Gs is also
at most m2/r . Hence we can simply consider the case when u is an exterior node in
1
can join Ms with probability 1 ,
mr
3 1 2
E[Xu ] ≤ m r · 1 = mr
m r
Since Xu is the sum of independent binary random variables, using a simple version
2 2
P rob[Xu ≥ 6m r ] ≤ 2−6m r .
log m
Since r ≤ c1 · log log m
− 2,
log log m
2
−6m c1 log m
P rob[X ≥ 6m ] ≤ 2
r .
It is easy to verify that for some constant c1 > 0, the right hand side above is
bounded by 1/m2 . This proves that with probability at least 1 − 1/m2 , the maximum
2
degree of node u in Gs is at most 6m r . Using the union bound, we see that the
2
probability that all vertices (at most m) have degree at most 6m r in Gs is at least
1 1
(1 − m · m2
) = (1 − m
).
The hypothesis of the above lemma required that the maximum degree of Gs−1
3
be upperbounded by m s+2 . We now inductively show that this is true.
Lemma 58. For some constant c2 > 0, for all s ≤ c2 · log m, the maximum degree in
3
Gs−1 is at most m s+2 , with high probability.
144
Proof. We show this by induction. The base case of s = 1 is trivial since every
node has degree at most m at all times. For the inductive step, consider iteration
s > 1. Assuming, using the inductive hypothesis, that the maximum degree in Gs−1
3 2
is m (s+2) , we get by Lemma 57, that the maximum degree in Gs is at most 6m (s+2) .
It is easy to verify that for large enough m, there exists a constant c2 > 0 such that
2 3
for all s ≤ c2 · log m, 6m (s+2) ≤ m (s+3) .
The next lemma shows that with each iteration of the Sparsification algorithm,
the selected set of nodes “move” at most 2 hops further away from the rest of the
graph.
log m
Lemma 59. For some constant c3 and for s ≤ c3 · log log m
, if u ∈ Ms−1 , then with
is greater than m2/r . The probability that none of u’s neighbors are selected for Ms
is at most
1 2
mr
3
(1 − 1 ) ≤ e−m r .
mr
It is easy to verify that there exists a constant c3 > 0, such that for all r ≤ c3 ·
log m
log log m
− 2, this probability is at most 1/m2 . If u is a boundary node, then it has
at least one exterior node as a neighbor and therefore, using what we have shown for
exterior nodes, we conclude that with probability at least 1 − 1/m2 , there is node
Phase (Line 3) and not immediately shut down in Line 5 and Et is the set of edges
connecting pairs of facilities i, i′ in Ft for which there is a client j with βij > 0 and
log m
Lemma 60. There is a constant c > 0 such that for any k2 ≤ c · log log m
, after k2
with high probability, the property that distance(i, M) ≤ 2k2 for all nodes i in H.
Here, distance(i, M) is the shortest path distance in hops in H from node i to some
node in M.
Proof. Let Ti be the nodes selected in the ith iteration and let us set T0 = V . Due
to Lemma 59, Ti is a 2-ruling set of Ti−1 . Note that T0 is a 0-ruling set. Hence the
The next lemma shows that our efforts at careful sparsification have paid off
Lemma 61. At the end of the k-round algorithm, each client j, with high probability,
2k2 hops
...
j j j j=j
q 2 1 0
Figure 5.5: Client j was initially connected to facility i′ that was closed during sparsi-
fication. In that case, j will find a facility i to connect to so that distance(i, i′ ) ≤ 2k2 .
If client j is indirectly connected to facility i, there could be two possible reasons for
it:
(i) j was directly connected to a facility i′ that was shut down in Line 5 of the
k-round algorithm (Algorithm 5.7). Say this happened in the p-th iteration of
the outer loop. Hence i′ just became temporarily open in that iteration. From
the conditions stated in Line 4 of Algorithm 5.7, there must also be another
and a client j ′ such that βij ′ > 0 and βi′ j ′ > 0. Hence, cij ′ ≤ αj ′ and ci′ j ′ ≤ αj ′ .
Notice that αj ′ cannot increase after the end iteration p′ as client j would have
had a temporarily open facility that it has positively contributed to. Hence,
triangle inequality,
(ii) j was directly connected to a facility i′ that was shut down during an iteration
5.7). From Lemma 60, it follows that distance(i, i′ ) ≤ 2k2 . See Figure 5.5.
For each pair im and im+1 , to be neighbors in H, they must have had a client
jm+1 such that cim jm+1 ≤ αjm+1 and cim+1 jm+1 ≤ αjm+1 and also αjm+1 ≤ αj .
Given, j was directly connected to i′ , hence ci′ j ≤ αj . Again, using the triangle
Our final lemma proves the approximation guarantee for the solution produced
by the k-round algorithm. The proof is similar to the proof of Lemma 54 and is
skipped.
Lemma 62. For any k = k1 · k2 , with k2 = O( logloglogmm ), the k-round algorithm com-
putes a solution that is an O(n2/k1 m2/k2 )-approximation to the metric facility location
problem.
5.4 Conclusion
approximation factor and the number of rounds of communication for the metric
facility location problem in the CON GEST model. Specifically, we present an algo-
√ √
rithm that runs in k rounds and yields an O(m2/ k
· n2/ k
)-approximation. Setting
k = c · log2 (m + n) for some constant c, would make this approximation factor reduce
148
is a small gap at the upper end in the desired range of values that k can take and
facility location problem with uniform facility opening costs. The Logarithmic-round
lower bounds in this setting? Moscibroda and Wattenhofer [65] call the problem of
ter approximation factor versus communication rounds trade-off for the non-metric
Wattenhofer [65] for k-round algorithms. This is our most current work and the re-
sults are described in the next chapter. The results in this chapter and the next also
highlight how the primal-dual approach can be a powerful tool in order to obtain a
CHAPTER 6
DISTRIBUTED APPROXIMABILITY OF NONMETRIC FACILITY
LOCATION
6.1 Introduction
ety of optimization problems such as minimum dominating set (MDS) and facility lo-
cation. Despite their simplicity, these greedy algorithms are challenging to implement
made sequentially. In a breakthrough result, Jia et al. [37] showed that it is possible
high probability), ∆ being the maximum degree of the input graph. This algorithm
balances the need for parallelism with the need to control the size of the dominating
set by first allowing several “good” choices to be picked independently (as opposed
to picking one “best” choice at a time) and then efficiently pruning away some of
these choices. In our view, the key contribution of the Jia et al. paper [37] is showing
that the pruning process can be implemented efficiently, i.e., in O(log n) rounds with
high probability, while pruning enough candidates so that only a constant overhead
one side and buyers on the other. The goal is to quickly select a subset of the sellers
so that the products that these sellers bring to the market has small cost ratio, i.e.,
the ratio of the total cost of the selected sellers’ products to amount that interested
buyers are willing to pay. See Section 6.1.1 for details. As modeled here, the pruning
process applies not just to the MDS greedy algorithm, but to greedy algorithms in
general (e.g., we describe how this pruning process applies to a greedy algorithm for
facility location). We present an instance of the pruning process that, for any positive
k, runs in O(k) communication rounds with O(log N)-sized messages, yielding a cost
ratio of O(N c/k ). Here N is the product of the number of sellers and number of buyers
and c is a small constant. The pruning process in the Jia et al. algorithm [37] should
be viewed as a special case (with k = Θ(log N) and cost ratio O(1)) of our algorithm.
Using this k-round pruning algorithm as the basis, we derive several simple, greedy,
k-round approximation algorithms for MDS and facility location. Our approximation
algorithms shave a “logarithmic factor” off the best, known, approximation factor,
To place these results in context, we refer to the 2003 result due to Kuhn
and Wattenhofer [53], that described, for any parameter k, an MDS algorithm run-
√
ning in O(k) rounds and yielding an approximation factor of O(k∆2/ k
log ∆). This
rounds. The Kuhn-Wattenhofer algorithm [53] used the technique of first approxi-
151
mately solving the LP relaxation of MDS and then doing (independent) randomized
rounding on the fractional MDS solution. Moscibroda and Wattenhofer [65] use the
same technique to solve the facility location problem in the CON GEST model; they
√ √
achieve, for every constant k, an O( k(mn)1/ k log(m + n))-approximation1 in O(k)
paper improve both of the above results by logarithmic-factor and achieve optimal
can achieve a O(∆c/k log ∆)-approximation. This is asymptotically the same as the
ity Location, our result is at least a logarithmic factor improvement over previously
known results. Also, our results indicate that the original Jia et al. greedy algorithm
the set of sellers, B as the set of buyers, and E as the set of edges representing buyers’
1 The approximation factor, as stated in Moscibroda and Wattenhofer [65], depends also
on ρ, a quantity that is a function of the numbers in the given instance (i.e., the opening
costs and the connection costs). To focus more clearly on the growth of this approximation
factor as a function of k, we assume that ρ = m = n.
152
that each vertex j ∈ B makes. For any i ∈ S ∪ B, let N(i) denote the set of neighbors
of vertex i. The costs and the payments satisfy the property that for each i ∈ S,
p · |N(i)| ≥ f (i). In other words, the cost of every vertex i ∈ S is “paid for” by all of
its neighbors. A typical iteration of the pruning process starts with vertices in some
be covered. After this, several vertices are deleted from H. First, all vertices in S ′
and all neighbors of vertices in S ′ are deleted. As a result of the deletion of some
vertices in B, the “paid for” condition p · |N(i)| ≥ f (i) may no longer be satisfied for
some i ∈ S. That is, the number of neighbors of i may have fallen below f (i)/p. All
such vertices i ∈ S are now deleted. Finally, all isolated vertices in B are deleted.
This ends one iteration of the pruning process and iterations of the pruning process
We evaluate the pruning process along two dimensions: (i) running time, i.e.,
the number of iterations of the process before H becomes empty and (ii) cost ratio,
i.e., the ratio of the total cost of the vertices in S that were opened to the total
payment by the vertices that were covered. For randomized versions of the pruning
process, we defined the cost ratio as ratio of the expected total cost of the open
vertices to the expected total payment by the covered vertices. Assume that Figure
6.1 illustrated the first iteration of the pruning process and in the second iteration
vertex 2 (in S) was opened and as a result, vertex 3 (in B) was covered. The total cost
that the pruning process, as described above, is incompletely specified in the sense
153
that it does not prescribe how vertices in S are picked for opening. We are interested
in designing an instance of the pruning process that minimizes both running time and
cost ratio. It is easy to see how to minimize one of these measures, while ignoring
the other. For example, if in the first iteration all vertices in S are opened then we
have a pruning process that completes in one iteration, but could have cost ratio |S|.
On the other hand, if we opened exactly one vertex in S in each iteration, then the
pruning process would have cost ratio one but could take |S| iterations to terminate.
In this paper we describe a randomized instance of the pruning process that, for every
positive integer k, has running time O(k) (with high probability) and expected cost
To see how this abstraction of the pruning process makes sense in the context
of distributed greedy algorithms, the reader might want to consider the primal-dual
interpretation of the greedy algorithms for MDS [11, 62] and facility location [27, 35].
According to this interpretation, the sequential greedy algorithm for MDS (in which
which vertices raise their dual variable synchronously and vertices get selected as
dominators in the order in which their dual constraints become tight. Thus a vertex
that gets selected as a dominator is one whose cost of selection has been “paid for”
dominator, all vertices u (in the closed neighborhood of v) whose dual variables were
standard way to speed up this algorithm by allowing parallelism, is to raise the dual
154
1 2 3 4 5 6 7 1 2 3 4 5 6 7
(a) (b)
3 6 7 3
(c)
(d)
Figure 6.1: Example execution of one iteration of the pruning process. Fig. (a) shows
the original graph H with S (square vertices) and B (round vertices). Suppose p = 1.
Fig. (b) shows two vertices, 1 and 3 of S, being opened. These two open vertices
cover 4 vertices in B. Then the two open vertices and the four covered vertices are
deleted from H. Fig. (c) shows the resulting graph. Vertex 4 in S is no longer being
paid for and is also deleted. This renders vertices 6 and 7 (in B) isolated and so these
are also deleted. Fig. (d) shows the graph at the end of the iteration.
155
variables by a big amount in each step. As a result, when the dual variables move from
one value to the next higher value, several vertices may find themselves “paid for”
bad dominating set. The pruning process models the problem of selecting a subset
of these “paid for” vertices whose total cost does not exceed the payment made by
the dual variables by too large a factor. More specifically, the vertices i ∈ S that are
opened in the pruning process are exactly the ones that are selected as dominators.
As mentioned earlier, our work draws inspiration from the elegant work of
Jia et al. [37]. Our results are most closely comparable to results due to Kuhn and
Wattenhofer [53] on a k-round algorithm for MDS and Moscibroda and Wattenhofer
[65] on a k-round algorithm for non-metric facility location. Our own recent work
(see Chapter 5), presents a k-round primal-dual algorithm for metric facility location.
Since there is a greedy O(1)-approximation for metric facility location [27], even this
Greedy algorithms for MDS and non-metric facility location are quite old
[11, 62] and are often discussed in the context of set cover. Lovász [62] and Chvatal
[11] present a dual-fitting-based analysis of the greedy set cover algorithm and this
provides a natural primal-dual framework within which to view the algorithms. The
first constant-factor approximation algorithm for metric facility location via a greedy
algorithm along with a better approximation ratio is due to Jain et al. [35].
Our main result is a randomized instance of the pruning process that, for any
positive k, runs in O(k) communication rounds, with high probability, uses messages
of size O(log m) and has cost ratio O((mn)2/k ). Here m is the number of sellers and
greedy algorithms for MDS and facility location. On a graph with n vertices and
maximum degree ∆, for any positive k, our algorithm for MDS runs in O(k) rounds,
√
uses messages of size O(log n) and yields a solution of size O(∆3/ k
log ∆) times OP T .
For instances with m facilities and n clients, for any positive k, our algorithm for non-
metric facility location runs in O(k) rounds using messages of size O(log m + log n)
√
and yields a solution of size O((mn)5/ k
· log n) times OP T . We also show that this
√
algorithm produces a solution of size O((mn)5/ k
) times OP T if the connection costs
of the instance form a metric. All our running times are “with high probability”
and all our approximation ratios are in expectation. Also note that we have not
paid particular attention to minimizing the constants, 3, 5, etc. that appear in the
Here we describe an instance of the pruning process that we call Rapid Ran-
domized Pruning (RRP). Recall that RRP runs on a bipartite graph H = (S, B, E).
Here we let m = |S|, n = |B|, and for a given positive k, we let d = (mn)1/k . As
157
al. [37].
Let S ′ be the set of vertices just opened. All neighbors of vertices in S ′ are said to
be covered.
Prune Graph. Delete from H all vertices in S ′ and all neighbors of vertices in
S ′ . Then delete all vertices i ∈ S that no longer satisfy the “paid for” condition
p · |N(i)| ≥ f (i). Finally, delete all isolated vertices in B.
1. In the Split Coverage step, we choose an item split(i) from L(i) so that there
are roughly d times as many elements in T op(i) as there are in Bot(i). This
generalizes how Jia et al. split L(i); they choose split(i) to be the median of
L(i) (i.e., take d = 1). Choosing to split in the middle provides for them the
right balance between running time and cost ratio. Choosing split(i) so that
158
|T op(i)| ≈ d · |Bot(i)| ensures that for larger values of d, split(i) will be a lower
ranked element and as a result 1/split(i) will tend to be larger. The probability
get a controlled boost in the probability that i opens and this in turn speeds up
the pruning process, while only incurring a factor d overhead in the cost ratio.
6.2.1 Analysis
We start with a technical lemma (whose easy proof is skipped) that shows that
the choice of split(i) is such that Bot(i) is roughly a fraction 1/(d + 1) of N(i) in size.
Lemma 64. Let f be the total cost of vertices in S that were opened during RRP
and let c be the number of vertices in B that were covered during RRP. Then E[f ] ≤
8(2d + 3) ln d · p · E[c].
159
The last inequality follows from Lemma 63. Now define b(j) to be the set {i ∈ N(j) |
X X
E[f ] ≤ (2d + 3) · p · E [t(j)] = (2d + 3) · p · E [t(j) | t(j) > 0] · Prob [t(j) > 0] .
j∈B j∈B
In Lemma 65 below we show an upper bound of 8 ln d on E [t(j) | t(j) > 0]. Using
this we obtain
X
E[f ] ≤ 8(2d + 3) · ln d · p · Prob[t(j) > 0] ≤ 8(2d + 3) · ln d · p · E[c].
j∈B
The last inequality above follows from the fact that if t(j) > 0 then vertex j is
covered.
X X Prob[i is opened ]
E[t(j) | t(j) > 0] = Prob [i is opened | t(j) ≥ 1] = .
i∈W i∈W
Prob[t(j) ≥ 1]
n o
4 ln d
Now recall that a vertex i ∈ S is opened with probability Po (i) = min ,1 .
split(i)
1
Let q(i) = . Then q(i) ≤ Po (i) ≤ 4 ln d · q(i). Thus,
split(i)
P P
i∈W Po (i) 4 ln d i∈W q(i)
E[t(j) | t(j) > 0] = Q ≤ Q .
1 − i∈W (1 − Po (i)) 1 − i∈W (1 − q(i))
160
Q P P
Using the algebraic inequality i∈W (1 − q(i)) ≤ 1− i∈W q(i) + x,y∈W,x6=y q(x)q(y),
we get
P !
i∈W q(i)
E[t(j) | t(j) > 0] ≤ 4 ln d P P . (6.1)
i∈W q(i) − x,y∈W,x6=y q(x)q(y)
1 1 1
Now note that for i ∈ W , since j ∈ Bot(i), we have q(i) = ≤ ≤ .
split(i) |N (j)| |W |
P P
Thus i∈W q(i) ≤ 1 and from this we obtain the inequality x,y∈W,x6=y q(x)q(y) ≤
P
i∈W q(i)/2. Substituting this into (6.1), we obtain E[t(j) | t(j) > 0] ≤ 8 ln d.
Note that E[f ]/(p · E[c]) is the cost ratio of RRP. Therefore Lemma 64 leads
to the following.
Next we show that RRP terminates in k rounds with high probability. Recall
that for each i ∈ S, each item in the sequence S(i) is called an entry. As vertices get
P
deleted from H the total number of entries, i.e., i∈F |L(i)|, falls. Determining this
facilities in N(j) are good for j. For a vertex j ∈ B, let Pc (j) denote the probability
that j will be covered in this iteration. The following lemma places a lower bound on
Now consider an i ∈ N(j) and suppose that i is good for j. If Po (i) = 1 then
Pc (j) = 1. Otherwise,
4 ln d 4 ln d
Po (i) = ≥
split(i) |N(j)|
Y
Pc (j) = 1 − (1 − Po (i))
i∈N (j)
Y
≥ 1− (1 − Po (i))
i is good for j
|N(j)|
4 ln d 4
≥ 1− 1−
|N(j)|
−4 ln d |N(j)|
4
> 1 − e |N(j)|
1
= 1−
d
For each i ∈ S, entries in L(i) are classified in two ways. An entry j in L(i) is
4
Lemma 68. At least (1 − 3d
)-fraction of the total entries are nice top entries.
P
Proof. Let x denote the total number of entries, i.e., i∈S |L(i)|, and w denote the
number of non-nice top entries. By definition, for a nice entry j, there are at least
|N (j)|
4
vertices in N(j) such that j ∈ T op(i). Hence, there are more than 3w non-nice
162
bottom entries. We know that the total number of bottom entries is x/(d + 1). Using
the fact that this is more than 3w, we obtain the inequality w < x/3d. Thus, the
1 1 1 4
(1 − )x − w ≥ (1 − )x − ( )x = (1 − )x.
d d 3d 3d
Lemma 69. Let Φ and Φ′ denote the total number of covered entries, respectively
Φ
E[Φ′ ] ≤ .
d/3
Proof. Let E denote the set of entries before the iteration. Thus, Φ = |E|. Let E1
X X X
E[Φ′ ] = P rob[entry j is deleted] = Prob[entry j is deleted]+ Prob[entry j is deleted].
j∈E j∈E1 j∈E1
The first term on the right hand side is bounded above by Φ· d1 , since |E1 | ≤ Φ and by
Lemma 67, the probability that a nice top entry is deleted in an iteration is at most
1 4
d
. The second term is bounded above by Φ · 3d
since the size of E1 is at most the
4
fraction 3d
of Φ according to Lemma 68. These bounds yield the claimed probabilistic
recurrence.
obtain a bound on the running time of RRP. Let, T (P ) denote the number of rounds
remaining when the total number of entries at the beginning of the round is P . Note
163
T (·).
T (P ) = 1 + T (P ′),
where, P ′ is the random variable denoting the number of entries at the end of
the round. P can be at most mn at the beginning. Also, T (P ) = 0 for P < c for
some positive constant c. Note that the solution to the deterministic counter part
P
of this probabilistic recurrence relation, τ (P ) = 1 + τ ( d/3 ), is αk for some constant
α > 0. Hence, applying Theorem 1.3 of [42] and noting that the maximum number
w
3
Prob[T (mn) ≥ αk + w] ≤ .
d
1
If we set w = Θ(k), the right hand side of the above inequality is O .
poly(mn)
Hence the running time RRP is O(k) with high probability. Here, the running time
denotes the number of iterations of RRP before it terminates. Since each iteration
Theorem 70. For any positive k, RRP runs in O(k) rounds (with high probability),
2 2
yielding a cost ratio of O(m k n k ).
repeatedly picking the most effective stars. For each facility i ∈ F and subset of
164
clients C ′ ⊆ C, we call the ordered pair (i, C ′ ) a star. The effectiveness of a star
The greedy algorithm for facility location simply picks the most effective star itera-
tively. Once a star (i, C ′ ) is picked, facility i is opened, all clients in C ′ are connected
to i. The clients in C ′ are no longer considered, but facility i still participates in the
algorithm, but with its opening cost reset to 0. This algorithm is just an instance of
the greedy set cover algorithm with C being the ground set and each star (i, C ′ ) cov-
P
ering the subset C ′ ⊆ C and having weight fi + j∈C ′ cij . By the well-known analysis
of the greedy set cover algorithm [62, 11] this produces an O(log n)-approximation,
There is a simple way to view this greedy algorithm in the primal-dual frame-
work. To see this consider the following Integer Program (IP) for facility location.
Here yi indicates whether facility i is open and xij indicates if client j is connected to
facility i. The first set of constraints ensure that every client is connected to a facility
and the second set of constraints guarantee that each client is connected to an open
replacing the integrality constraints by xij ≥ 0 for all i ∈ F , j ∈ C and yi ≥ 0 for all
i ∈ F . We also construct the dual (DP) of this LP-relaxation. For convenience of the
Facility Location IP
165
X X
minimize cij · xij + fi · yi
i∈F,j∈C i∈F
X
subject to xij ≥ 1, j∈C
i∈F
yi − xij ≥ 0, i ∈ F, j ∈ C
αj ≥ 0, j∈C
βij ≥ 0, i ∈ F, j ∈ C
The dual variable αj can be interpreted as the amount that client j is willing
to pay in order to connect to a facility. Of this amount, cij goes towards paying
for connecting to facility i, whereas the “extra”, namely βij , is seen as the payment
of client j towards opening facility i. Now consider the following procedure that
2. While C ′ 6= 0, uniformly raise the duals αj (∀j ∈ C ′ ) and βij (∀{i, j} pair such
P
• j βij = fi for some i ∈ F \F ′. In this case, let C(i) = {j ∈ C ′ |βij > 0}.
Set βi′ j ← 0 for all i′ ∈ F \{i} and j ∈ C(i). Set F ′ ← F ′ ∪ {i} and
Note that in the second type of event (where i is a newly opened facility), any
j ∈ C(i) withdraws its payments from any other facility that j may have positively
contributed to. It is easy to check that the outcome of this process are identical to
the outcomes of the greedy algorithm that picks the most effective star. In particular,
the “stars” induced by the primal-dual algorithm and the order in which they arise
Our goal is the same as that of Moscibroda and Wattenhofer [65]: to design
a distributed approximation algorithm for facility location in the CON GEST model
assuming that the underlying network is the complete bipartite graph induced by
facilities and clients. The CON GEST model of distributed computing is a message
passing model, where nodes communicate with each other in synchronous rounds. In
each round, a node is allowed to send a message of O(log n) bits to its neighbors. It
is a realistic bound as log n bits are necessary to assign unique IDs to n nodes. This
bound on message size is also significant in terms of the hardness of the problem.
If nodes were allowed to send messages of unlimited size, they could exchange all
167
the neighborhood information in each round. In that case it would take each node
at most D rounds to have all the knowledge about the whole network, where D is
the diameter of the network graph. And if we were allowed D rounds of message
case, the diameter of the input graph is 2, this restriction on message size is what
algorithm needs to pick many “good” choices instead of the one “best” choice at every
step (round). In case of a primal-dual algorithm this translates into increasing the
dual variables faster, for example, in a geometric manner (say, by a factor b). Of
course, the larger b is, the less closely we expect to approximate the behavior of the
sequential algorithm. Recall that in the sequential primal-dual algorithm, each client
pays positively to exactly one open facility as it withdraws its payments from all the
other facilities as soon as it is assigned to some open facility. But in the distributed
algorithm, clients not only can end up paying b times more than what was necessary,
but also may end up positively paying to many facilities. This is where the pruning
process is necessary. We use RRP to “undo” some of the “imperfect” choices that we
have made. During each round some temporarily open facilities can be permanently
opened. Clients that paid positively towards any of these facilities will be connected
to them and withdraw their contribution from all other facilities. Note that the clients
do not get a chance to withdraw their contributions from the facilities that opened
6.3.1.1 Algorithm
1
Initialization. Set αj := n
min(fi + cij ) for all j ∈ C. For each j ∈ C, let i∗ be
i
such that fi∗ + ci∗ j = mini (fi + cij ), and set φ(j) := i∗ . For each i ∈ F , j ∈ C, set
βij := max{αj − cij , 0}. Now, let us define α∗ = maxj αj and let j ∗ = arg max αj .
Any j ∈ C with αj ≤ α∗ /n will be called a low-paying client and the facility φ(j)
(for low-paying j) will be called a cheap facility. Let OP T be the cost of an optimal
Lemma 71. The total cost of opening all cheap facilities and connecting each low-
This proof is the same as in the metric case described in Chapter 5.2.2. It can
also be easily verified that the aforementioned process of identifying the low-paying
clients and cheap facilities can be accomplished in just O(1) rounds of communication
the f or-loops (p = 1 to k) at the beginning of Algorithms 6.3 and 6.4 describes one
phase. The cheap facilities are already opened in the Initialization phase and the
3
low-paying clients do not participate in this process. Let b = n k . Every client, that is
not low-paying starts with an initial αj value set at the largest power of b that is less
than or equal to α∗ /n2 . In each phase the αj values are increased geometrically by
factor b and the set of facilities that are paid for are temporarily open. Then we run
the pruning algorithm described below and a subset of these facilities are permanently
opened.
Let us fix a phase (say, p = t) and let Ft be the set of temporarily open
facilities in that phase. Let, H denote the graph induced by the stars of all facilities
positively contributed towards that facility. The stars are identified via 3 rounds of
message communication between the facilities and the clients. Note that due to the
geometric increase of dual variables, a client j can belong to multiple stars. Finally,
170
6.3.1.2 Analysis
This section is devoted to the proof of the following theorem. Note that if
whp.
171
Theorem 72. For any positive k, our distributed algorithm runs in O(k 2) communi-
5
cation rounds (with high probability) and yields a solution of expected cost O((mn) k Hn )·
Approximation Ratio. Let aj be the final αj value of client j. Note that aj must
be a power of b. In the primal-dual scheme the sum of all the aj values can be seen
as the dual objective function. We show a logarithmic bound on this sum in Lemma
73.
X
Lemma 73. aj ≤ bHn · OP T .
j∈C
Proof. Consider a facility i in the optimal OP T and the star (i, C(i)). Recall that, si
P
denote the total cost of opening the star, i.e. si = fi + j∈C(i) cij and let l =| C(i) |.
172
We sort all j ∈ C(i) in non-decreasing order of aj values, i.e. in the order they were
assigned. If two or more clients were assigned in the same phase, they will have the
same aj value. Let, j1 , j2 , . . . , jl be the sequence obtained this way. First, we claim
si
ajk ≤ b · l−k+1
, 1 ≤ k ≤ l. We prove this claim by induction.
We start by considering the base case (j1 ) and showing that aj1 ≤ b sli . Let,
si
j1 was assigned in phase p. If aj1 exceeds the value b · l
then, at the end of phase
si
p, the payment from all the remaining l − 1 clients also exceed b · l
by the end of
phase p. This means the star (i, C(i)) should have been completely paid for and all
j ∈ C(i) should have been assigned to i by the end of phase p − 1, which presents a
si
contradiction. Hence aj1 ≤ b · l
.
si
Let our inductive hypothesis be, for some k, 1 ≤ k < l, ajk ≤ b · l−k+1
. We
si
show, ajk+1 ≤ b · l−k
. By definition, the client jk+1 cannot be connected before jk
is connected. However, they both can be connected in the same round. If they
si si
are connected in the same round, ajk+1 = ajk ≤ b · l−k+1
≤ b· l−k
. If the client
jk+1 is connected in a round after jk is connected, let us consider the set of clients
si
C ′ (i) = C(i)\{j1 ∪j2 ∪· · ·∪jk }. If ajk+1 reach b· l−k in some phase p′ , all the remaining
si
αjr values (k < r ≤ l will also reach b · l−k
in that phase. Hence, at the end of phase
enough to open the star (i, C(i)) and hence, enough to open the star (i, C ′ (i)). Also,
jk must have paid for its connection cost to i by this phase. Thus, jk+1 will have
to be connected to i before the phase can end and αjk+1 will not be raised further.
si si
Hence, ajk+1 ≤ b · l−k
. This concludes the inductive proof that ajk ≤ b · l−k+1
.
173
Hence we have,
X l
X si si si
aj = b ajk ≤ b( + + . . . ) = bHl · si ≤ bHn · si
k=1
l l−1 1
j∈C(i)
X X X X
aj ≤ b aj ≤ b Hn · si = bHn · OP T
j∈C i∈OP T j∈C(i) i∈OP T
Lemma 74. Let R be the set of stars open in a phase and J be the clients that get
connected in this particular phase. Let sR denote the total cost of the set pf stars R.
P
Then E[sR ] ≤ 8d ln d · E[ j∈J aj ]
ˆ ≥
Proof. For any facility i ∈ R, d(i) si
. So we have,
b|C(i)|
X X X
sR = si ≤ aj
i∈R i∈R j∈C(i)
Lemma 74 (adding over all phases) and Lemma 73 yield the expectation results
in Theorem 72. The high-probability results are obtained from this via Chernoff
Running Time. Next we will verify that, after the initialization phase, the primal-
dual phase needs at most k phases to connect all the clients. We already know that
the RRP algorithm is executed in each phase, which takes O(k) rounds with high
probability. Also it takes a constant number of O(log n) bit messages per client per
terminates in O(k 2 ) rounds with high probability with messages of size O(log n).
First, is easy to see that the initialization phase takes only a constant number
of message transactions per facility or client and, assuming the input constants can
be represented by O(log n) bits, each of those messages are at most of size O(log n)
Proof. For a client j, let αmin denote the initial value of αj . We know αmin ≥ α∗ /n2
and hence αmin · n3 > mini (fi + cij ). Therefore, if client j were to run k phases, then
its αj value would grow from αmin to αmin · (n3/k )k = αmin · n3 > mini (fi + cij ). At
this point the αj -value is more than sufficient to pay for the opening cost of a facility
i all by itself and therefore if client j is not connected to any other facility, it would
Lemma 76, along with the fact that RRP terminates in O(k) rounds with high
Based on the nature of the connection costs, the facility location problem has
two main versions: the non-metric version and the metric version. The connection
costs in a facility location instance are said to satisfy the triangle inequality if for
any i, i′ ∈ F and j, j ′ ∈ C, c(i, j) ≤ c(i, j ′ ) + c(i′ , j ′ ) + c(i′ , j). In the metric facil-
ity location problem the connection costs satisfy the triangle inequality; when they
175
don’t, we have the more general non-metric facility location problem. This distinc-
tion is important from an approximation point of view because there are a number of
problem ([9, 36, 75] are some examples), whereas for the non-metric facility loca-
tion problem, the best known approximation factor is O(log n) and this is optimal
[33, 60]. In Chapter 5, we presented the first constant factor distributed algorithm
(in the CON GEST model) for the metric case. We claim that, in the metric case,
mic round. More generally, the approximation factor of our hyper-local algorithm
can improved by a factor of O(log n) if the input instance is a metric. This can be
accounted for by Lemma 78, which is the metric version of Lemma 73. But first we
Lemma 77. For a facility i and clients j, j ′ ∈ C such that aj ≥ cij and aj ′ ≥ cij ′ ,
aj
b
≤ cij + 2aj ′ .
Proof. If aj ≤ baj ′ , the proof is trivial. Let us assume, aj > baj ′ . In this case, j was
still unassigned when j ′ got assigned in phase p (to some facility i′ ). However as per
our assumption aj > baj ′ , j could not have been assigned phase p. Let j was assigned
(to i) at a later phase p′ . By the end of the phase p′ − 1, i′ was completely paid for
and the payment of j has reached aj /b. Hence aj /b ≤ ci′ j , as otherwise βi′ j would be
aj
Hence, b
≤ ci′ j ≤ 2aj ′ + cij .
X
Lemma 78. If the connection costs form a metric, aj ≤ 3b · OP T .
j∈C
Proof. As in Lemma 73, let us start with a facility i ∈ OP T and the star (i, C(i)).
in non-decreasing order of aj values, i.e. in the order they were assigned to some
facility. Note that aj values will be same for all the clients assigned in the same
phase of the primal-dual stage. Let j1 was assigned in phase p. First we assume that
P
j∈C(i) max{0, aj1 − cij } ≤ fi . Because otherwise, at the end of phase p, i will have
enough payments from all j ∈ C(i) to be opened and all j ∈ C(i) would be assigned
P
to i. In that case, j∈C(i) aj ≤ bsi and the proof is trivial. Hence, we consider the
P
case where j∈C(i) max{0, aj1 − cij } ≤ fi .
X X
aj ≤ b (2aj1 + cij )
j∈C(i) j∈C(i)
X X
= 3b cij + 2b (aj1 − cij )
j∈C(i) j∈C(i)
X
≤ 3b cij + 2bfi
j∈C(i)
X
≤ 3b cij + fi
j∈C(i)
j ′ = j1 in Lemma 77.
177
As in the non-metric case, Lemma 74 (adding over all phases) and Lemma 78
Theorem 79. If the connection costs form a metric, then the output of our distributed
5
algorithm has expected cost O((mn) k ) times OP T .
that each vertex j is either in D, or there exists at least one vertex i ∈ D such that
(i, j) ∈ E. The minimum dominating set problem (MDS) seeks to find the smallest
such D. MDS can be seen as a special case of the facility location problem, where each
vertex is as facility (with unit opening cost), as well as a client and all connection costs
are zero. However let us consider the MDS problem independently and examine how
it can fit into our RRP/Primal-dual framework. Note that the underlying network in
this case is slightly different than the facility location cases. Here each vertex can be
a seller if it is paid for by other vertices in its closed neighborhood. Hence, once it is
reduced to the stage when the RRP routine is called, we can “view” it as a bipartite
graph. Note that unlike the facility location instance, this virtual bipartite graph is
not necessarily a complete bipartite graph. This could pose some challenges for a
distributed implementation. However, as can be seen (both intuitively and from the
IP formulation below) that nodes only need information from their direct neighbors.
We also assume that each node has knowledge of ∆, the maximum closed degree of
To begin with let us describe the integer program (IPM DS ) representing MDS.
X
minimize xi
i∈V
X
subject to xi ≥ 1, j∈V
i∈N [j]
be a dominator. Let us consider the natural LP-relaxation (LPM DS ) and its dual
(DPM DS ). We do not need an initialization phase. Each vertex starts their dual
where ∆ is the maximum degree of the graph. At the beginning of a phase each vertex
checks if the sum payments from its neighbors reach or exceed 1 and temporarily opens
itself if that is the case. Let Ft be the set of temporarily open vertices and Ct be
the yet uncovered neighbors of vertices in Ft . This sets us up for the RRP, which
takes O(k) rounds as discussed earlier. Note that after k phases the payment of each
yet uncovered vertex reaches 1, which is enough to temporarily open itself. Such
vertices will open with probability 1 during RRP. Hence, following the same analysis,
3
we obtain a O(∆ k log ∆) · OP T in O(k 2 ) rounds with high probability.
179
6.4 Conclusion
algorithm, to be a valuable tool for obtaining k-round algorithms for some covering
problems. We believe this opens up the possibility of obtaining such algorithms for
CHAPTER 7
FUTURE WORK
For the remainder of the thesis, we intend to focus on two problems. Both of
these problems are related to our current work on facility location and we have some
intuition and ideas on how to effectively approach these problems. We conclude this
report by describing these two problems, the challenges we face and our ideas on how
to overcome them.
from recent results (by us [69, 70] and others [54, 65]) that the primal-dual scheme is
an effective tool for exposing the inherent trade-off between the approximation factor
approximation factors even in small number of rounds. We believe this opens up the
vertex cover, minimum edge cover ), the dual of it will be a packing (maximization)
problem (e.g. maximum set packing, maximum matching, maximum independent set
general LP form:
minimize bT x
subject to AT x ≥ c
181
x≥0
such that matrix A and vectors b and c are non-negative. The dual takes the
general form:
maximize cT y
subject to Ay ≤ b
y≤0
In the future, we would like to claim that fast increase of the dual variables
(y), each increase followed by fast pruning of the covering set would yield non-trivial
expect the approximation factor to reach or improve the best known results so far.
We also want to venture into the capacitated versions of facility location prob-
lems. There are two types of capacitated facility location problems. In hard capacitated
facility location problem each facility i, if opened, can serve at most ui clients. The
term ui denotes the capacity of facility i. As usual, F being the set of facilities and
C being the set of clients, the goal is to find a set of facilities I ⊆ F to open and a
function φ : C → I that assigns every client to an open facility, while maintaining the
P P
capacity constraint for each facility, so as to minimize i∈I f (i) + j∈C c(j, φ(j)).
Facilities have limited capacities in this variant as well. But we allow each facility to
182
it can serve at most ui yi clients. From the primal-dual standpoint, this provision
X
∀i ∈ F : ui yi − xij ≥ 0.
j∈C
Jain and Vazirani [36] obtained a 4-approximation for the metric case via
knowledge, no constant factor approximation exists for this problem in UDGs, even
Chapter 4). The idea behind that result was to run a primal-dual algorithm followed
by pruning of facilities. If, due to pruning, a client looses its connections to all
temporarily open facilities, then we reconnect that client. To ensure a small (constant-
for UDG-WMDS. Following the same footsteps, we hope to use a primal-dual algorithm
• Run the primal-dual algorithm for CapFacLoc. We can use an existing algorithm
• Compute some capacitated version of UDG-MDS and open a facility at each node
a client does not have such a facility in its neighborhood, connect them to any
facility in Fd .
general graphs and even with uniform capacities, CapMDS is inherently non-local i.e.,
time complexity that essentially grows linearly with the network diameter. However,
becomes much more local. Additionally we hope to utilize the geometric properties of
unit disks for better approximability. In summary, we intend to study and solve the
UDG-CapFacLoc problem, and in the process, expect to get a clear idea of the locality
of the problem.
184
REFERENCES
[1] Noga Alon, László Babai, and Alon Itai. A fast and simple randomized parallel
algorithm for the maximal independent set problem. J. Algorithms, 7(4):567–583,
1986.
[2] Christoph Ambühl, Thomas Erlebach, Matús Mihalák, and Marc Nunkesser.
Constant-factor approximation for minimum-weight (connected) dominating sets
in unit disk graphs. In APPROX-RANDOM, pages 3–14, 2006.
[5] Vittorio Bilò, Ioannis Caragiannis, Christos Kaklamanis, and Panagiotis Kanel-
lopoulos. Geometric clustering to minimize the sum of cluster sizes. In ESA,
pages 460–471, 2005.
[6] H-T.H. Chan and A. Gupta. Small hop-diameter sparse spanners for doubling
metrics. In SODA ’06: Proceedings of the 17th annual ACM-SIAM symposium
on Discrete algorithm, pages 70–78, 2006.
[7] Hubert T-H. Chan, Anupam Gupta, Bruce M. Maggs, and Shuheng Zhou. On
hierarchical routing in doubling metrics. In SODA ’05: Proceedings of the six-
teenth annual ACM-SIAM symposium on Discrete algorithms, pages 762–771,
2005.
[9] Moses Charikar and Sudipto Guha. Improved combinatorial algorithms for the
facility location and k-median problems. In FOCS ’99: Proceedings of the 40th
Annual Symposium on Foundations of Computer Science, page 378, Washington,
DC, USA, 1999. IEEE Computer Society.
[10] Xiuzhen Cheng, Xiao Huang, Deying Li, Weili Wu, and Ding-Zhu Du. A
polynomial-time approximation scheme for the minimum-connected dominating
set in ad hoc wireless networks. Networks, 42(4):202–208, 2003.
185
[11] Vasek Chvátal. A greedy heuristic for the set cover problem. Mathematics of
Operations Research, 4(3):233–235, 1979.
[13] A. Czumaj and H. Zhao. Fault-tolerant geometric spanners. Discrete & Compu-
tational Geometry, 32(2):207–230, 2004.
[14] Mirela Damian, Saurav Pandit, and Sriram V. Pemmaraju. Distributed spanner
construction in doubling metric spaces. In OPODIS, pages 157–171, 2006.
[15] Mirela Damian, Saurav Pandit, and Sriram V. Pemmaraju. Local approximation
schemes for topology control. In PODC, pages 208–217, 2006.
[17] G. Das and G. Narasimhan. A fast algorithm for constructing sparse euclidean
spanners. Int. J. Comput. Geometry Appl., 7(4):297–315, 1997.
[18] Budhaditya Deb and Badri Nath. On the node-scheduling approach to topology
control in ad hoc networks. In MobiHoc ’05: Proceedings of the 6th ACM inter-
national symposium on Mobile ad hoc networking and computing, pages 14–26,
2005.
[20] Thomas Erlebach and Erik Jan van Leeuwen. Domination in geometric intersec-
tion graphs. Lecture Notes in Computer Science, 4957:747–758, 2008.
[21] Christian Frank. Algorithms for Sensor and Ad Hoc Networks. Springer, 2007.
[22] Christian Frank and Kay Römer. Distributed facility location algorithms for
flexible configuration of wireless sensor networks. In Proceedings of the 3rd IEEE
International Conference on Distributed Computing in Sensor Systems (DCOSS
2007), pages 124–141, Santa Fe, NM, USA, jun 2007.
[24] Beat Gfeller and Elias Vicari. A randomized distributed algorithm for the max-
imal independent set problem in growth-bounded graphs. In PODC ’07: Pro-
ceedings of the twenty-sixth annual ACM symposium on Principles of distributed
computing, pages 53–60, 2007.
[27] Sudipto Guha and Samir Khuller. Improved methods for approximating node
weighted steiner trees and connected dominating sets. Inf. Comput., 150(1):57–
74, 1999.
[31] S. Har-Peled and M. Mendel. Fast construction of nets in low dimensional met-
rics, and their applications. In SCG’05: Proceedings of the 21st annual sympo-
sium on Computational geometry, pages 150–158, 2005.
[33] Dorit S. Hochbaum. Heuristics for the fixed cost median problem. Mathematical
Programming, 22(1):148–162, 1982.
[34] Yaochun Huang, Xiaofeng Gao, Zhao Zhang, and Weili Wu. A better constant-
factor approximation for weighted dominating set in unit disk graph. Journal of
Combinatorial Optimization, 2008.
187
[35] Kamal Jain, Mohammad Mahdian, Evangelos Markakis, Amin Saberi, and Vi-
jay V. Vazirani. Greedy facility location algorithms analyzed using dual fitting
with factor-revealing lp. J. ACM, 50(6):795–824, 2003.
[36] Kamal Jain and Vijay V. Vazirani. Approximation algorithms for metric facility
location and k-median problems using the primal-dual schema and lagrangian
relaxation. J. ACM, 48(2):274–296, 2001.
[37] Lujun Jia, Rajmohan Rajaraman, and Torsten Suel. An efficient distributed algo-
rithm for constructing small dominating sets. Distributed Computing, 15(4):193–
205, 2002.
[39] Jaewon Kang, Yanyong Zhang, and Badri Nath. Analysis of resource increase
and decrease algorithm in wireless sensor networks. In ISCC ’06: Proceedings of
the 11th IEEE Symposium on Computers and Communications, pages 585–590,
2006.
[40] Iyad A. Kanj, Ge Xia, and Fenghui Zhang. Local construction of spanners in the
3-d space. In DCOSS ’09: Proceedings of the 5th IEEE International Conference
on Distributed Computing in Sensor Systems, pages 315–328, 2009.
[41] B. Karp and H. T. Kung. Greedy perimeter stateless routing for wireless net-
works. In MobiCom, pages 243–254, 2000.
[43] Leon Kaufman, Marc Vanden Eede, and Pierre Hansen. A plant and warehouse
location problem. Operational Research Quarterly, 28(3):547–554, 1977.
[45] David Kotz, Calvin Newport, and Chip Elliot. The mistaken axioms of wireless-
network research. Technical Report TR2003-467, Dartmouth College, Depart-
ment of Computer Science, 2003.
[46] R. Krauthgamer, A. Gupta, and J.R. Lee. Bounded geometries, fractals, and
low-distortion embeddings. In FOCS ’03: Proceedings of the 44th Annual IEEE
Symposium on Foundations of Computer Science, pages 534–543, 2003.
188
[47] R. Krauthgamer and J.R. Lee. Navigating nets: simple algorithms for proximity
search. In SODA ’04: Proceedings of the 15th annual ACM-SIAM symposium
on Discrete algorithms, pages 798–807, 2004.
[48] Alfred A. Kuehn and Michael J. Hamburger. A heuristic program for locating
warehouses. Management Science, 9(4):643–666, 1963.
[50] Fabian Kuhn, Thomas Moscibroda, and Roger Wattenhofer. What cannot be
computed locally! In PODC ’04: Proceedings of the twenty-third annual ACM
symposium on Principles of distributed computing, pages 300–309, New York,
NY, USA, 2004. ACM.
[51] Fabian Kuhn, Thomas Moscibroda, and Roger Wattenhofer. On the locality of
bounded growth. In PODC ’05: Proceedings of the twenty-fourth annual ACM
SIGACT-SIGOPS symposium on Principles of distributed computing, pages 60–
68, 2005.
[52] Fabian Kuhn, Thomas Moscibroda, and Roger Wattenhofer. The price of being
near-sighted. In SODA, pages 980–989, 2006.
[54] Fabian Kuhn and Roger Wattenhofer. Constant-time distributed dominating set
approximation. In PODC ’03: Proceedings of the twenty-second annual sympo-
sium on Principles of distributed computing, pages 25–32, New York, NY, USA,
2003. ACM.
[55] Christoph Lenzen, Yvonne Anne Oswald, and Roger Wattenhofer. What can be
approximated locally?: case study: dominating sets in planar graphs. In SPAA
’08: Proceedings of the twentieth annual symposium on Parallelism in algorithms
and architectures, pages 46–54, New York, NY, USA, 2008. ACM.
[56] C. Levcopoulos and A. Lingas. There are planar graphs almost as good as the
complete graphs and almost as cheap as minimum spanning trees. Algorithmica,
8:251–256, 1992.
[60] Jyh-Han Lin and Jeffrey Scott Vitter. e-approximations with minimum pack-
ing constraint violation (extended abstract). In STOC ’92: Proceedings of the
twenty-fourth annual ACM symposium on Theory of computing, pages 771–782,
1992.
[62] L. Lovász. On the ratio of optimal integral and fractional covers. Discrete
Mathematics, 13:383–390, 1975.
[63] M Luby. A simple parallel algorithm for the maximal independent set problem.
In STOC ’85: Proceedings of the seventeenth annual ACM symposium on Theory
of computing, pages 1–10, 1985.
[64] Madhav V. Marathe, Heinz Breu, Harry B. Hunt III, S. S. Ravi, and Daniel J.
Rosenkrantz. Simple heuristics for unit disk graphs. Networks, 25:59–68, 1995.
[65] Thomas Moscibroda and Roger Wattenhofer. Facility location: distributed ap-
proximation. In PODC ’05: Proceedings of the twenty-fourth annual ACM sym-
posium on Principles of distributed computing, pages 108–117, 2005.
[66] Moni Naor and Larry Stockmeyer. What can be computed locally? In STOC ’93:
Proceedings of the twenty-fifth annual ACM symposium on Theory of computing,
pages 184–193, 1993.
[67] Saurav Pandit and Sriram Pemmaraju. Finding facilities fast. In Full Paper,
2009. http://cs.uiowa.edu/ spandit/research/icdcn2009.pdf.
[68] Saurav Pandit and Sriram V. Pemmaraju. Finding facilities fast. In ICDCN,
pages 11–24, 2009.
[69] Saurav Pandit and Sriram V. Pemmaraju. Return of the primal-dual: Dis-
tributed metric facility location. In PODC, pages 180–189, 2009.
190
[70] Saurav Pandit and Sriram V. Pemmaraju. Rapid randomized pruning for fast
distributed greedy algorithms. In PODC (to appear), 2010.
[72] Sriram Pemmaraju and Imran Pirwani. Good quality virtual realizations of unit
ball graphs. In Algorithms - ESA 2007, pages 311–322, 2007.
[75] David B. Shmoys, Éva Tardos, and Karen Aardal. Approximation algorithms for
facility location problems (extended abstract). In STOC ’97: Proceedings of the
twenty-ninth annual ACM symposium on Theory of computing, pages 265–274,
1997.
[76] John F. Stollsteimer. A working model for plant numbers and locations. Man-
agement Science, 45(3):631–645, 1963.
[77] Kunal Talwar. Bypassing the embedding: algorithms for low dimensional met-
rics. In STOC ’04: Proceedings of the thirty-sixth annual ACM symposium on
Theory of computing, pages 281–290, 2004.
[78] Peng-Jun Wan, Khaled M. Alzoubi, and Ophir Frieder. Distributed construction
of connected dominating set in wireless ad hoc networks. Mob. Netw. Appl.,
9(2):141–149, 2004.
[79] Yu Wang and Xiang-Yang Li. Localized construction of bounded degree and
planar spanner for wireless ad hoc networks. In DIALM-POMC ’03: Proceedings
of the 2003 joint workshop on Foundations of mobile computing, pages 59–68,
2003.
[80] Yu Wang, Weizhao Wang, and Xiang-Yang Li. Distributed low-cost backbone
formation for wireless ad hoc networks. In MobiHoc, pages 2–13, 2005.