scispace - formally typeset
Open AccessJournal ArticleDOI

Approximation Algorithms for Connected Dominating Sets

GuhaS., +1 more
- 01 Apr 1998 - 
Reads0
Chats0
TLDR
The dominating set problem in graphs asks for a minimum size subset of vertices with the following property: each vertex is required to be either in the dominating set, or adjacent to some vertex.
Abstract
The dominating set problem in graphs asks for a minimum size subset of vertices with the following property: each vertex is required to be either in the dominating set, or adjacent to some vertex i

read more

Content maybe subject to copyright    Report

Approximation Algorithms for Connected Dominating Sets
Sudipto Guha
y
Dept. of Computer Science
University of Maryland,College Park,
MD 20742
Samir Khuller
z
Dept. of Computer Science and UMIACS
University of Maryland,College Park,
MD 20742
Abstract
The dominating set problem in graphs asks for a minimum size subset of vertices with the
following prop erty: each vertex is required to either be in the dominating set, or adjacent
to some node in the dominating set. We fo cus on the question of nding a
connected
dominating set
of minimum size, where the graph induced by vertices in the dominating set
is required to be
connected
as well. This problem arises in network testing, as well as in
wireless communication.
Two polynomial time algorithms that achieve approximation factors of
O
(
H
()) are
presented, where is the maximum degree, and
H
is the harmonic function. This ques-
tion also arises in relation to the traveling tourist problem, where one is looking for the
shortest tour such that each vertex is either visited, or has at least one of its neighbors
visited. We study a generalization of the problem when the vertices have weights, and
give an algorithm which achieves a p erformance ratio of 3 ln
n
. We also consider the more
general problem of nding a connected dominating set of a specied subset of vertices and
provide an
O
(
H
()) approximation factor. To prove the bound we also develop an optimal
approximation algorithm for the unit node weighted Steiner tree problem.
1 Intro duction
The
connected dominating set problem
is dened as follows. Find a minimum size subset
S
of
vertices, such that the subgraph induced by
S
is connected and
S
forms a dominating set. This
problem is known to b e
N P
-hard [7]. Recall that a dominating set is one in which each vertex
is either in the dominating set, or adjacent to some vertex in the dominating set.
A preliminary version of this pap er will app ear in the Pro ceedings of the Fourth Annual European Symposium
on Algorithms (ESA 1996).
y
Research supp orted by NSF Research Initiation Award CCR-9307462. Email addr:
sudipto@cs.umd.edu
z
Research supported by NSF Research Initiation Award CCR-9307462, and NSF CAREER Award CCR-
9501355. Email addr:
samir@cs.umd.edu
1

A related problem is the
traveling tourist problem
. Given a graph
G
= (
V ; E
) nd the
shortest walk visiting a subset of vertices, such that each vertex is either visited, or has at
least one of its neighbors visited. (The vertices of the graph corresp ond to monuments the
tourist would like to see, and an edge between two vertices denotes visibility of one monument
from another.) The shortest such walk would guarantee that the tourist sees all monuments of
interest.
We show that a
approximation for the connected dominating set problem yields a 2
approximation for the traveling tourist problem. Consider a spanning tree of the connected
dominating set
S
and perform a tree traversal. This yields a walk in which exactly 2(
j
S
j
1)
edges are traversed. Any set of vertices visited by the tourist, form a connected dominating
set. Thus
S
OP T
OP T
T T
, where
OP T
T T
denotes an optimal traveling tourist tour,
and the result follows.
We also study the connected dominating set problem when the vertices have weights, and
we wish to minimize the total weighted sum of the vertices that form the connected dominating
set. This also yields an approximation algorithm for the weighted traveling tourist problem,
where the weights could p otentially denote the tourist's cost of buying a ticket to visit the
monument.
We also consider Steiner generalizations, where only a sp ecied subset of vertices have to
be dominated by a connected dominating set.
1.1 Our Results
We present two approximation algorithms for this problem. The rst algorithm develops a
greedy algorithm for solving the problem. A naive greedy algorithm is shown to do badly.
Surprisingly, with a simple modication we are able to show an approximation factor of 2(1 +
H
()) (in practice, this algorithm appears to do very well). We also provide a very ecient
implementation of this algorithm.
The second algorithm is an improvement of the rst algorithm. The algorithm nds a
dominating set in the rst phase, and in the second phase connects the dominating set. In an
earlier version of this pap er [8] we established a bound of
H
() +
H
(
H
()). Using Slav
ik's
greedy set-cover b ound [17], we were able to show that the approximation factor is ln
n
+
O
(1).
Recently, Berman suggested a mo dication to the algorithm, which improves the approximation
factor to
H
() + 2. We describe this algorithm and give a simple pro of for a p erformance
guarantee of ln + 3.
We also show an approximation preserving reduction from the set-cover problem to the con-
nected dominating set problem, showing that it is hard to improve the approximation guarantee
unless
N P
DT I M E
[
n
O
(log log
n
)
] [13, 6]. We give a 3 ln
n
approximation for the version when
the vertices have weights. We also show that the upp er b ound of 2 ln
k
for approximating node
weighted Steiner trees [10], can be improved to ln
k
, when all Steiner vertices have unit weight.
We then use this result to give a 3 ln
k
approximation for nding a connected dominating set for
a sp ecied subset of vertices. We also outline a second algorithm that gives an approximation
factor of (1 +
c
)
H
(min(
; k
)) +
O
(1), where
c
is the best approximation ratio for the Steiner
2

tree problem (currently
c
= 1
:
644 [12]). Even though this algorithm has a b etter approximation
guarantee, it is not practical due to the high running time, alb eit polynomial.
1.2 Preliminaries
The Steiner tree problem is dened as follows: given a subset of required vertices in an edge
weighted graph, nd a minimum weight tree spanning the required subset of vertices. (Note
that the tree may include other vertices that are not required vertices.) The node weighted
Steiner tree problem is essentially the same problem, except that the vertices of the graph have
weights associated with them and the weight of the tree is the sum of the weights of its vertices.
The Unit No de Weighted Steiner tree is the special case when all vertices that are not required,
have the same weight. The required vertices all have zero weight.
The set cover problem is the following: given a set of elements
U
, and a set of subsets
S
, of
U
, we wish to nd the smallest collection of sets
S
0
S
such that
[
S
2S
0
S
=
U
.
The set TSP problem is dened as follows: given an edge weighted graph
G
= (
V ; E
) and
a partition of
V
= (
V
1
[
V
2
[
: : :
[
V
k
), nd the shortest tour that contains at least one vertex
from each
V
i
.
Given a graph
G
= (
V ; E
), we use to denote the maximum degree of a vertex in the
graph. We use
n
and
m
to denote the number of vertices and edges in
G
. We use
N
(
v
) to
denote the set of neighbors of a vertex
v
.
1.3 Applications
The paper by Paul and Miller [15] discusses applications related to testing nodes in a computer
network using a short \traveling tourist tour". They also consider the related question of nding
a tour that visits each edge of the graph (connected vertex cover). This is needed when one
requires testing the links as well as the no des. Approximation algorithms for the latter problem
were given by Arkin, Halldorsson and Hassin [1]. We observe that there is a simple algorithm
for the unweighted connected vertex cover problem that gives a factor 2 approximation (the one
given in [1] is more complicated). Do a Depth First Search, and take all the non-leaf vertices as
the nodes in the vertex cover. This clearly induces a connected graph, and the approximation
ratio is 2, as shown by Savage [16]. In practice, however this method will probably give large
connected vertex covers.
Other applications for the connected dominating set problem are in doing broadcasts for
wireless computers in digital battleelds. The broadcast is done to the vertices in the con-
nected dominating set. The no des in the connected dominating set are responsible for relaying
messages. Each node not in the dominating set, is not responsible for relaying any messages
[9]. Other relevant issues are regarding the maintenance of the connected dominating set as the
network topology changes.
2 Algorithm I
We introduce an algorithm that nds a connected dominating set, by \growing" a tree.
3

The idea behind the algorithm is the following: grow a tree
T
, starting from the vertex of
maximum degree. At each step we will pick a vertex
v
in
T
and \scan it". Scanning a vertex,
adds edges to
T
from
v
to
al l
its neighbors not in
T
. In the end we will nd a spanning tree
T
,
and will pick the non-leaf nodes as the connected dominating set.
Initially all vertices are unmarked (white). When we scan a vertex (color it black), we mark
all its neighbors that are not in
T
and add them to
T
(color them gray). Thus marked no des
that have not been scanned are leaves in
T
(gray nodes). The algorithm continues scanning
marked no des, until all the vertices are marked (gray or black). The set of scanned no des (black
nodes) will form the
C D S
in the end.
The main question is the following: what rule should we use for picking a vertex to be
scanned? A natural choice is to pick the vertex that has the maximum number of unmarked
(white) neighbors. We call this the \yield" of the scan step. Unfortunately, as the following
example shows this may not work well (see Fig. 1).
u
v
N
(
u
)
N
(
v
)
Figure 1: Example to show that the scanning rule fails.
Let
u
and
v
be vertices of degree
d
. There is a solution of size four, by picking a path from
u
to
v
as the CDS. The algorithm begins by marking and scanning
u
. This adds all of
u
's
neighbors to
T
. We pick a vertex from
N
(
u
) and scan it, adding its only unmarked neighbor
(from
N
(
v
)) to
T
. At this point, each vertex has exactly one unmarked neighbor. We could
pick a vertex from
N
(
u
) again, and scan it, adding its only unmarked neighbor to
T
. This
continues until all the vertices from
N
(
u
) have been scanned. Finally we scan a vertex from
N
(
v
) and mark
v
. At this point, the algorithm has picked
d
+ 2 vertices.
Implementation Issues:
The above algorithm can b e implemented in
O
(
m
) time (and was
implemented). To achieve this running time, we use a data structure
DS
that maintains all
gray vertices in
T
with a key value equal to the number of white neighbors that they have.
Rather than using a heap, we maintain an array of linked lists, where
DS
[
i
] is a p ointer to a
(doubly linked) list containing all the gray vertices that have exactly
i
white neighbors. We also
maintain an integer
maxd
that records the maximum
i
, such that
DS
[
i
]
6
=
nil
. This makes it
easy to locate a gray vertex with the highest \yield". The main work is in updating the value
of
maxd
when
DS
[
maxd
] becomes
nil
. The work that is done is at most
O
(
maxd
), and since
at this step,
maxd
vertices are colored gray, we can \charge" the work done to the vertices
that are colored gray at this step. (Equivalently, we could develop a p otential function to prove
4

this.) The other op erations are easy to perform (for example, when a vertex is colored gray,
we need to update the entries for its neighbors that are already in
DS
and create an entry in
DS for this vertex). The entire algorithm runs in
O
(
m
) steps. This implementation is useful
because it leads to a heuristic for the
maximum leaf spanning tree
problem as well [11].
Modied Greedy Algorithm:
We now modify the scanning rule to prove a go od approxi-
mation ratio for this class of algorithms (that grow a connected dominating set). We dene a
new operation of scanning a pair of adjacent vertices
u
and
v
. Let
u
be gray and
v
be white.
Scanning the pair means, rst making
u
black (this makes
v
along with some other nodes, gray)
and then coloring
v
black (makes more nodes gray). The total number of nodes that are colored
gray is called the \yield" of the scan step.
At each step, we wil l either scan a single vertex, or
a pair of vertices, whichever gives the higher yield.
(In some sense we are doing a \look-ahead"
by one extra vertex, and are willing to scan a pair, if this has a higher yield.)
It is clear that this algorithm nds the optimal solution in the example shown in Fig. 1.
What is perhaps a little surprising, is that this simple modication lets us prove the following
theorem.
Theorem 2.1
Using the scanning rule described above yields a connected dominating set of
size at most
2(1 +
H
())
j
OP T
DS
j
.
Proof:
Let
OP T
DS
be the set of vertices in an optimal dominating set. The sets of vertices
of
G
dominated by vertex
i
2
OP T
DS
is called
S
i
(we assume that
i
also belongs to
S
i
. If a
vertex is dominated by more than one vertex, we arbitrarily put it in one of the sets). The
proof will be based on a charging scheme. Each time we scan a vertex, we add a new vertex to
our connected dominating set. We will \charge" each new vertex marked (colored gray) in this
step. Since each vertex in the graph gets marked exactly once, it is charged exactly once (the
rst time it is marked). We will then prove that the total charge on the vertices belonging to a
set
S
i
(for any
i
) is at most 2(1 +
H
()). Since there are
j
OP T
DS
j
sets in the optimal solution,
the theorem follows.
Assume that when we pick a vertex to scan, we mark
x
new vertices. We will charge each
such newly marked vertex
1
x
. In some steps we scan two vertices, and charge each newly marked
vertex
2
x
. The main advantage of the \lo ok-ahead" is the following.
The instant we mark some
nodes in set
S
i
, even if vertex
i
has not been marked, since it is adjacent to a marked vertex, it
becomes eligible to be scanned as part of a pair.
Without the look-ahead, only marked vertices
were candidates to b e scanned .
We now prove the upper b ound on the total charges to vertices b elonging to a single set
S
i
. At each step, some vertices may get marked. The number of unmarked vertices is initially
u
0
, and nally drops to 0. Let
u
j
denote the number of unmarked vertices after step
j
. For
simplicity, let us assume that at each step some vertices of
S
i
are marked, so the number of
unmarked vertices decreases at each step.
The number of marked vertices after the rst step is
u
0
u
1
. Each vertex gets a charge of
at most
2
u
0
u
1
(the actual charge may b e a lot smaller, if only one vertex was scanned at this
step, or if we marked many other vertices as well). Once some vertex in
S
i
is marked, vertex
i
becomes an \eligible" vertex to be scanned as a part of a pair, since it is
adjacent
to a marked
5

Citations
More filters
Proceedings ArticleDOI

Comparison of broadcasting techniques for mobile ad hoc networks

TL;DR: This paper classifies existing broadcasting schemes into categories and simulating a subset of each, thus supplying a condensed but comprehensive side by side comparison, and proposes and implements protocol extensions using adaptive responses to network conditions that performs well in the comparative study.
Proceedings ArticleDOI

On calculating connected dominating set for efficient routing in ad hoc wireless networks

TL;DR: In this paper, the authors proposed a simple and efficient distributed algorithm for calculating connected dominating set in ad-hoc wireless networks, where connections of nodes are determined by their geographical distances.
Journal ArticleDOI

Dominating sets and neighbor elimination-based broadcasting algorithms in wireless networks

TL;DR: This paper proposes to significantly reduce or eliminate the communication overhead of a broadcasting task by applying the concept of localized dominating sets, which do not require any communication overhead in addition to maintaining positions of neighboring nodes.
Journal ArticleDOI

CEDAR: a core-extraction distributed ad hoc routing algorithm

TL;DR: The performance evaluations show that CEDAR is a robust and adaptive QoS routing algorithm that reacts quickly and effectively to the dynamics of the network while still approximating the performance of link-state routing for stable networks.
Proceedings ArticleDOI

A clustering scheme for hierarchical control in multi-hop wireless networks

TL;DR: This paper presents a clustering scheme to create a hierarchical control structure for multi-hop wireless networks and presents an efficient distributed implementation of the clustering algorithm for a set of wireless nodes to create the set of desired clusters.
Related Papers (5)