Approximation for Connected Dominating Sets

y

Sudipto Guha

Dept of Computer Science

University of MarylandCollege Park

MD

z

Samir Khuller

Dept of Computer Science and UMIACS

University of MarylandCollege Park

MD

Abstract

The problem in graphs asks for a minimum size subset of vertices with the

following prop erty each vertex is required to either b e in the dominating set or adjacent

to some no de 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 b e connected as well This problem arises in network testing as well as in

wireless communication

Two p olynomial time algorithms that achieve approximation factors of O H are

presented where is the maximum and H is the harmonic function This ques

tion also arises in relation to the traveling tourist problem where one is lo oking for the

shortest tour such that each vertex is either visited or has at least one of its neighb ors

visited We study a generalization of the problem when the vertices have weights and

give an which achieves a p erformance ratio of ln n We also consider the more

general problem of nding a connected dominating set of a sp ecied subset of vertices and

provide an O H approximation factor To prove the b ound we also develop an optimal

approximation algorithm for the unit no de weighted Steiner tree problem

Intro duction

The connected dominating set problem is dened 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 NP hard 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 Europ ean Symp osium

on Algorithms ESA

y

Research supp orted by NSF Research Initiation Award CCR Email addr sudiptocsumdedu

z

Research supp orted by NSF Research Initiation Award CCR and NSF CAREER Award CCR

Email addr samircsumdedu

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 neighb ors visited The vertices of the graph corresp ond to monuments the

tourist would like to see and an edge b etween 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

approximation for the traveling tourist problem Consider a of the connected

dominating set S and p erform a tree traversal This yields a walk in which exactly jS j

edges are traversed Any set of vertices visited by the tourist form a connected dominating

set Thus S OPT OPT where OPT denotes an optimal traveling tourist tour

TT TT

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 tourists cost of buying a ticket to visit the

monument

We also consider Steiner generalizations where only a sp ecied subset of vertices have to

b e dominated by a connected dominating set

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 mo dication we are able to show an approximation factor of

H in practice this algorithm app ears to do very well We also provide a very ecient

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 we established a b ound of H H H Using Slaviks

greedy setcover b ound we were able to show that the approximation factor is ln n O

Recently Berman suggested a mo dication to the algorithm which improves the approximation

factor to H We describ e this algorithm and give a simple pro of for a p erformance

guarantee of ln

We also show an approximation preserving reduction from the setcover problem to the con

nected dominating set problem showing that it is hard to improve the approximation guarantee

O log log n

unless NP DTIME n We give a ln n approximation for the version when

the vertices have weights We also show that the upp er b ound of ln k for approximating no de

weighted Steiner trees can b e improved to ln k when all Steiner vertices have unit weight

We then use this result to give a ln k approximation for nding a connected dominating set for

a sp ecied subset of vertices We also outline a second algorithm that gives an approximation

factor of cH min k O where c is the b est approximation ratio for the Steiner

tree problem currently c Even though this algorithm has a b etter approximation

guarantee it is not practical due to the high running time alb eit p olynomial

Preliminaries

The Steiner tree problem is dened 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 no de weighted

Steiner tree problem is essentially the same problem except that the vertices of the graph have

weights asso ciated 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 sp ecial 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

S U U we wish to nd the smallest collection of sets S S such that

S S

The set TSP problem is dened as follows given an edge weighted graph G V E and

a partition of V V V V nd the shortest tour that contains at least one vertex

k

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 numb er of vertices and edges in G We use N v to

denote the set of neighb ors of a vertex v

Applications

The pap er by Paul and Miller discusses applications related to testing no des 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 Halldorsson and Hassin We observe that there is a simple algorithm

for the unweighted connected vertex cover problem that gives a factor approximation the one

given in is more complicated Do a Depth First Search and take all the nonleaf vertices as

the no des in the vertex cover This clearly induces a connected graph and the approximation

ratio is as shown by Savage In practice however this metho d will probably give large

connected vertex covers

Other applications for the connected dominating set problem are in doing broadcasts for

wireless computers in digital battleelds The broadcast is done to the vertices in the con

nected dominating set The no des in the connected dominating set are resp onsible for relaying

messages Each no de not in the dominating set is not resp onsible for relaying any messages

Other relevant issues are regarding the maintenance of the connected dominating set as the

network top ology changes

Algorithm I

We intro duce an algorithm that nds a connected dominating set by growing a tree

The idea b ehind 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 neighb ors not in T In the end we will nd a spanning tree T

and will pick the nonleaf no des as the connected dominating set

Initially all vertices are unmarked white When we scan a vertex color it black we mark

all its neighb ors that are not in T and add them to T color them gray Thus marked no des

that have not b een scanned are leaves in T gray no des The algorithm continues scanning

marked no des until all the vertices are marked gray or black The set of scanned no des black

no des will form the CDS in the end

The main question is the following what rule should we use for picking a vertex to b e

scanned A natural choice is to pick the vertex that has the maximum numb er of unmarked

white neighb ors We call this the yield of the scan step Unfortunately as the following

example shows this may not work well see Fig

u

N u

N v

v

Figure Example to show that the scanning rule fails

Let u and v b e vertices of degree d There is a solution of size four by picking a path from

u to v as the CDS The algorithm b egins by marking and scanning u This adds all of us

neighb ors to T We pick a vertex from N u and scan it adding its only unmarked neighb or

from N v to T At this p oint each vertex has exactly one unmarked neighb or We could

pick a vertex from N u again and scan it adding its only unmarked neighb or to T This

continues until all the vertices from N u have b een scanned Finally we scan a vertex from

N v and mark v At this p oint the algorithm has picked d vertices

Implementation Issues The ab ove 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 numb er of white neighb ors 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 neighb ors We also

maintain an integer maxd that records the maximum i such that DS i nil This makes it

easy to lo cate a gray vertex with the highest yield The main work is in up dating the value

of maxd when DS maxd b ecomes 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

this The other op erations are easy to p erform for example when a vertex is colored gray

we need to up date the entries for its neighb ors 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

b ecause it leads to a heuristic for the maximum leaf spanning tree problem as well

Mo died Greedy Algorithm We now mo dify the scanning rule to prove a go o d approxi

mation ratio for this class of algorithms that grow a connected dominating set We dene a

new op eration of scanning a pair of adjacent vertices u and v Let u b e gray and v b e white

Scanning the pair means rst making u black this makes v along with some other no des gray

and then coloring v black makes more no des gray The total numb er of no des 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 lo okahead

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

What is p erhaps a little surprising is that this simple mo dication lets us prove the following

theorem

Theorem Using the scanning rule described above yields a connected dominating set of

size at most H jOPT j

DS

Proof Let OPT b e the set of vertices in an optimal dominating set The sets of vertices

DS

of G dominated by vertex i OPT is called S we assume that i also b elongs to S If a

DS i i

vertex is dominated by more than one vertex we arbitrarily put it in one of the sets The

pro of will b e 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 b elonging to a

set S for any i is at most H Since there are jOPT j sets in the optimal solution

i DS

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 In some steps we scan two vertices and charge each newly marked

x

The main advantage of the lo okahead is the following The instant we mark some vertex

x

nodes in set S even if vertex i has not been marked since it is adjacent to a marked vertex it

i

becomes eligible to be scanned as part of a pair Without the lo okahead only marked vertices

were candidates to b e scanned

We now prove the upp er b ound on the total charges to vertices b elonging to a single set

S At each step some vertices may get marked The numb er of unmarked vertices is initially

i

u and nally drops to Let u denote the numb er of unmarked vertices after step j For

j

simplicity let us assume that at each step some vertices of S are marked so the numb er of

i

unmarked vertices decreases at each step

The numb er of marked vertices after the rst step is u u Each vertex gets a charge of

at most the actual charge may b e a lot smaller if only one vertex was scanned at this

u u

0 1

step or if we marked many other vertices as well Once some vertex in S is marked vertex i

i

b ecomes an eligible vertex to b e scanned as a part of a pair since it is adjacent to a marked

th

vertex In the j step the numb er of vertices of set S that get marked is u u and the

i j j

as vertex i was an eligible vertex to b e scanned Let u charge to each vertex is at most

k

u

j

Adding up all the charges we get

k

X

u u u u

j j

u u u

j

j

k

X

u u

j j

u

j

j

With some algebraic manipulation see page one can show that this is at most

H 2

Remark We could mo dify the algorithm and at each step scan either one or two vertices

whichever results in a smaller charge to each vertex In practice this should give b etter solu

tions

Implementation Issues A naive implementation app ears to give a worst case running time

of O mn In each iteration we cho ose either one vertex or a pair of vertices and color them

black It is clear that we may have n iterations since the optimal solution may have n

vertices In each iteration we wish to identify a pair of no des with the highest yield For each

gray vertex u we scan its adjacency list and consider all its white neighb ors For each white

neighb or v of u we wish to determine the numb er of vertices that would get marked if we

scanned the pair u v Since u and v have common white neighb ors we cannot simply add

up the numb er of white neighb ors of each vertex to obtain the yield of this pair We need to

identify the numb er of white neighb ors of v that are not adjacent to u since those will not b e

colored gray by u The numb er of steps in a single iteration can b e computed as follows

Let G b e the gray no des in T Let W b e the white vertices that are adjacent to gray vertices

We can upp er b ound the total work done in a single iteration as follows

X X

S dv

uG

v N uv W

In the double summation each vertex in W is counted as many times as the numb er of its gray

neighb ors we obtain the following

X X

S dv n dv O mn

v W v W

This yields a b ound of O mn We now show that the total numb er of steps over all iterations

is O mn by a more careful analysis

For each vertex we can maintain two adjacency lists one of its gray neighb ors and one of

its white neighb ors We use d u to denote the numb er of white neighb ors of u and d u to

W G

denote the numb er of gray neighb ors of u The work done in a single iteration is as follows

X X

S d v

W

uG

v W v N u

X

d v d v

W G

v W

In the double summation each vertex v is counted as many times as the numb er of its gray

neighb ors Observe that at this step we will make a subset of white vertices gray

Lemma The number of white vertices that are made gray in this iteration is at least

max d v

W

v W

Proof We pick the pair of vertices that give the highest yield we certainly consider all such

vertices v and color their white neighb ors gray We might pick a single vertex with a smaller

yield but only if its yield is at least half the yield of a pair of vertices 2

At this step we can charge the vertices whose color changed from white to gray The

charge to each such vertex is at most

P

d v d v

W G

v W

max d v

v W W

X

d v m

G

v W

Since each vertex changes color from white to gray exactly once over the entire algorithm

and there are n such vertices the total numb er of steps is O mn

The only remaining issue is maintaining the required adjacency lists This can b e done each

time we change the color of a vertex from white to gray by scanning its adjacency list and

up dating the structures for its neighb ors

Algorithm II

An alternate approach to growing one connected tree is to grow separate comp onents that

form a dominating set and to then connect them together One straightforward approach is

to nd a dominating set using a greedy heuristic and to use a Steiner tree approximation to

connect it Since memb ers of the optimum connected dominating set along with the memb ers

of the dominating set we found form a spanning tree we can prove a p erformance guarantee of

c H where c is the b est approximation ratio for the unweighted Steiner tree problem

currently c

For the sp ecial case when the required vertices form a dominating set in a graph and all

edges have unit weight Berman and Furer have announced a new algorithm with c

H By applying a simple greedy Thus we can improve the p erformance ratio to

strategy to connect the vertices in the dominating set we proved a b ound of H H H

Here we present a mo dication of the ab ove algorithm as suggested by Berman and

are able to prove a p erformance guarantee of ln Berman has an alternate pro of for a

p erformance ratio of H

The algorithm runs in two phases At the start of the rst phase all no des are colored

white Each time we include a vertex in the dominating set we color it black No des that are

dominated are colored gray once they are adjacent to a black no de In the rst phase the

algorithm picks a no de at each step and colors it black coloring all adjacent white no des gray

A piece is dened as a white no de or a black connected comp onent At each step we pick a

no de to color black that gives the maximum nonzero reduction in the numb er of pieces

We show that at the end of this phase if no vertex gives a nonzero reduction to the numb er

of pieces then there are no white no des left

In the second phase we have a collection of black connected comp onents that we need to

connect Recursively connect pairs of black comp onents by cho osing a chain of two vertices

until there is one black connected comp onent Our nal solution is the set of black vertices

that form the connected comp onent

Lemma At the end of the rst phase there are no white vertices left

Proof Supp ose there is a white no de v at the end of the phase We will show that there is

a vertex that strictly reduces the numb er of pieces If v has a white neighb or then coloring v

black reduces the numb er of white no des by two and increases the numb er of black comp onents

by one thus picking v would reduce the numb er of pieces Otherwise v has a gray neighb or

u Coloring u black would reduce the numb er of white no des and not increase the numb er of

black comp onents since u is adjacent to a black no de Thus picking u reduces the numb er of

pieces 2

We show that at the end of the rst phase there is always a pair of black comp onents that

can b e connected by cho osing a chain of two vertices For each such comp onent i we consider

the shortest path to comp onent j The path go es through vertices u u u u not in

k

comp onents i or j u is dominated by a vertex in comp onent i Observe that u is gray

otherwise picking u would give a strict reduction in the numb er of pieces Thus u is adjacent

to a black comp onent i since we selected the shortest path from i to j Comp onents i

and can b e connected by cho osing a chain of two vertices

Theorem The connected dominating set found by the algorithm is of size at most ln

jOPT j

th

Proof Dene a as the numb er of pieces left after i iteration and a n Since a no de can

i

a

st

0

connect up to pieces jOPT j Consider i iteration The optimal solution can

connect a pieces Hence the greedy pro cedure is guaranteed to pick a no de which connects at

i

m l

a

i

pieces This gives us the recurrence relation least

jOPT j

a

i

a a a

i i i

jOPT j jOPT j

Its solution is

i

X

i j

a a

i

jOPT j jOPT j

j i

a

0

Notice after jOPT j ln iterations the numb er of pieces left is less than jOPT j For

jOPT j

each no de we cho ose we will decrease the numb er of pieces by at least one This will continue

until the numb er of black comp onents is at most jOPT j thus at most jOPT j more vertices are

picked

Assume from this p oint onwards we stop after cho osing a more no des The numb er

f

of pieces left to connect is at most jOPT j a We connect the remaining pieces cho osing

f

chains of two vertices in the second phase The total numb er of no des chosen is at most

a a

0 0

the solution found has jOPT j ln jOPT j a jOPT j a and since jOPT j

f f

jOPT j

at most jOPT j ln no des 2

Remark Berman has an alternate pro of of H of the same algorithm However

since ln H the dierence is very small

Generalizations

Vertex Weighted Graphs

An approximation factor of ln n is p ossible when the vertices have weights The algorithm

rst nds a dominating set and then connects the no des in the dominating set

Step Use a weighted set cover approximation algorithm to nd a dominating set DS A set

cover instance is created by making each vertex an element and each vertex corresp onds to a

set that contains the vertex itself together with its neighb ors The greedy algorithm picks sets

based on the ratio of their weight to the numb er of new elements they cover

Step To connect the vertices in DS we use a no deweighted Steiner tree approximation

algorithm due to Klein and Ravi to nd a Steiner tree that includes all the vertices in DS

after making the weights of all vertices in DS equal to zero This yields a connected dominating

set CDS

Theorem The weight of vertices in CDS is at most ln n jOPT j where OPT is the

minimum weight connected dominating set in G

Proof The weight of the vertices in DS is at most ln jOPT j We now run the algorithm by

Klein and Ravi for the no deweighted Steiner tree case The approximation factor of the

algorithm is ln k where k is the numb er of Steiner vertices Consider the vertices in OPT

these together with the vertices in DS induce a connected subgraph Hence there exists a

no de weighted Steiner tree of weight OPT The total weight of the vertices in the connected

dominating set is the weight of DS together with the weights of optional vertices chosen from

G in the Steiner instance Adding the weight of the two sets gives the required b ound 2

Before lo oking at other generalizations we rst consider a problem closely related to our

discussion

Unit No de Weighted Steiner Trees

The b est known algorithm for no de weighted Steiner trees has a p erformance ratio of ln k

where k is the numb er of required vertices However if the no des have unit weight there

is a simpler algorithm which gives a b etter p erformance ratio

We have k required vertices in a graph G V E which we want to connect using the

least numb er of nonrequired vertices We assume that the nonrequired vertices have weight

and the required vertices have weight

Our algorithm runs in two phases In the rst phase the algorithm greedily picks high

degree stars a star is a vertex that has at least two required vertices b elonging to distinct

comp onents as neighb ors and merges them until very few comp onents are left In the second

phase the algorithm runs a Steiner tree approximation algorithm with each edge having unit

weight

In a prepro cessing phase we merge all adjacent required vertices into their connected com

p onents We pick c where c is the b est approximation ratio for the unweighted Steiner

tree problem

Algorithm A

Step In each iteration cho ose a vertex that merges the largest numb er of required vertices

iteration count

until we reach a stage that the numb er of comp onents left to merge is less than e

ln k

or no merging is p ossible

Step Apply an edge weighted Steiner tree approximation algorithm with each edge having

unit weight

Theorem The above algorithm nds a solution to the unit node weighted Steiner tree

UNST problem with an approximation factor of ln k which is best possible when the optimal

solution is greater than c e

Proof Assume that the set of comp onents remaining after the rst phase is A We claim that

there is a Steiner tree with jA j jOPT j edges Thus when we apply an edge weighted Steiner

tree approximation we get a tree with at most c jA j jOPT j edges

If the numb er of iterations in the rst phase is r the nal solution has a cost r c jA j

jOPT j We now pro ceed to give a b ound on r

th

Let a comp onents b e left after i iteration Since jOPT j no des are capable of merging

i

m l

a

i1 th

these comp onents for each i in the i iteration there must b e a no de that merges

jOPT j

comp onents This gives a b ound on a

i

a

i

a a a

i i i

jOPT j jOPT j

P

i

i j

We can easily verify that a a The second term is a

i

j

jOPT j jOPT j

geometric series that sums to at most jOPT j Thus when i ln k jOPT j the rst term

i

e This guarantees is at most e and the numb er of comp onents a jOPT j e

i

ln k

that the numb er of iterations r ln k jOPT j

If we stop b ecause no merging by stars is p ossible then the comp onents have disjoint

neighb orho o ds and OPT has to pick at least one vertex from each neighb orho o d Thus jA j

jOPT j If we stop b ecause the numb er of comp onents is small then jA j jOPT j e In

any case jA j jOPT j e and this yields a solution of cost at most ln k jOPT j c e

c jOPT j Putting c gives at most ln k jOPT j vertices in our solution when

c

jOPT j c e 2

The optimality of this approximation ratio was established by Berman see

We can mo dify the ab ove algorithm to run until no further merging is p ossible

Algorithm B

Step In each iteration cho ose a vertex that merges the largest numb er of required vertices

at least two

Step Apply an edge weighted Steiner tree approximation algorithm with each edge having

unit weight

Theorem The above algorithm nds a solution to the unit node weighted Steiner tree

UNST problem with an approximation factor of ln c

th

Proof As b efore let a denote the numb er of vertices left after the i iteration and a n

i

a

0

Then after jOPT j ln there are at most jOPT j comp onents to connect Hence we will

jOPT j

continue to merge by stars for jOPT j more iterations then the numb er of comp onents will b e

denitely less than jOPT j

a

0

Since each Steiner vertex can b e adjacent to at most required vertices jOPT j

If at this stage we use a more iterations b efore invoking the edge weighted Steiner tree

f

algorithm there is a tree with jOPT j a jOPT j edges So we nd a solution of cost at

f

a

0

jOPT j most c jOPT j a jOPT j The nal solution has at most jOPT j ln

f

jOPT j

a

0

a c jOPT j a jOPT j no des Since jOPT j we get a p erformance guarantee of

f f

ln c for the algorithm

2

Dominating a Subset of Vertices

We now address the connected dominating set problem when we are required to dominate only

a sp ecied subset S of the vertices The cost of the solution is the size of the smallest connected

dominating set that dominates the vertices in S Notice that the ob jective function is slightly

dierent from the unit no de weighted Steiner tree problem where required vertices have zero

cost In the Steiner CDS problem we are charged for all vertices in the nal solution that are

not leaf no des in the tree that connects S

Unweighted Graphs

Let jS j k and OPT denote the optimal solution we present two algorithm that solve this

problem A straightforward strategy is to rst nd a small dominating set A of the vertices in

S and to then connect these no des

Algorithm A

Step Greedily cho ose a dominating set of the vertices in S We can transform this to a

set cover problem in which corresp onding to each vertex v we have a set that includes all its

neighb ors and itself The greedy algorithm for set cover yields a dominating set A

Step For each element in A cho ose a representative element in S that is adjacent to it Call

this set RA Run the unit no de weighted Steiner tree approximation algorithm to nd a

Steiner tree with required set RA The nal solution is the union of A RA and the Steiner

tree vertices

Theorem The connected dominating set for the subset S of size k is at most ln k times

the optimal

Proof Since we chose the cover greedily we have that jAj jOPT j ln k since OPT forms a

dominating set for S

Notice that jAj k We cannot claim that there is a Steiner tree of size jOPT j connecting

the set A But there is a Steiner tree of size jOPT j connecting the elements of set RA since

the connected dominating set also forms a Steiner tree on the memb ers of S and RA S

Notice that jRAj jAj k Apply Theorem and obtain a Steiner tree of RA of size at

most jOPT j ln jRAj So the nal solution is of cost less than jAj jRAj jOPT j ln jRAj

ln k jOPT j 2

Algorithm B

Step We mo dify the greedy set cover algorithm on the set S to run until no vertex covers

more than one uncovered vertex of S We call the set of vertices chosen as B

Step We now cho ose the uncovered vertices of S calling this set B

Step For each memb er of B cho ose a representative element of S that it dominates

Let this set b e RB We apply an edge weighted Steiner tree approximation with the set of

required no des as RB B The nal solution is the no des of this tree and the no des of B

Theorem The connected dominating set for the subset S is at most c H c

times the optimal where c is the Steiner ratio We dene as the size of the largest subset of

S adjacent to a node in the graph min k

Proof By a slight mo dication to the pro of given in page we can prove jB j H

jOPT j Since the rst step reduces to nding a set cover with the size of the largest set

b eing Since OPT cannot dominate any two vertices of B by one vertex jB j jOPT j

Notice B B dominates the set S

Consider the set RB there is a Steiner tree with jRB j jB j jOPT j edges that connects

the no des of RB B

Apply an edge weighted Steiner tree approximation with all edges having unit weight and

nd a tree of size c jRB j jB j jOPT j where c is the Steiner ratio Since this tree is

edge weighted it has essentially the same numb er of no des including those of RB B Since

we have to add the vertices of B as well we get an upp er b ound of c jRB j jB j jOPT j jB j

Notice that jRB j jB j H jOPT j and jB j jOPT j This gives us a solution of

cost at most c H c jOPT j 2

This denitely is a b etter algorithm in terms of the worst case approximation guarantee

However the rst algorithms is simpler and faster Most of the approximation algorithms that

reduce the Steiner ratio b elow have a high running time

Lower Bounds

Hardness result for Connected Dominating Set

We can prove that the setcover problem can b e reduced to the connected dominating set

problem by an approximation preserving reduction thus showing that the approximation factor

H will b e hard to improve This is based on the hardness results for set cover proven by

Lund and Yannakakis and Feige

Given a set cover instance we reduce it to a connected dominating set problem as follows

Let the set cover instance b e to cover the set U with minimum numb er of sets from the

collection S fS S S g

m

S

Construct a graph G that has vertex set U fu v v v v g An element e U and

m

v has an edge joining them i e S Each v has an edge to v u has an edge only to v see

i i i

Fig

u

v

v v

m

e e e e

n

Figure Reduction of set cover to connected dominating sets

Let us lo ok at a minimum connected dominating set of G Vertex v b elongs to any con

nected dominating set and hence u do es not b elong to any minimal connected dominating set

No vertex e is chosen in a minimal connected dominating set since any no de that it might

j

p otentially dominate is already dominated by v which also provides the connectivity Hence

we will only have v and some v s These v s will corresp ond to the minimum cover for the

i i

given instance of set cover

The size of the connected dominating set is one more than the minimum set cover Thus ap

proximating the connected dominating set with a factor of H would mean approximat

O log log n

ing minimum set cover within the same factor This would imply that NP DTIME n

Hardness results for Generalizations

We show two simple reductions that demonstrate that other generalizations of the CDS prob

lem may b e as hard to approximate as the set TSP problem for which no approximation

algorithms are known For the Euclidean case Mata and Mitchell have given approxima

tion algorithms for this problem

c

j

V

j

Figure Reduction of set TSP problem to edge weighted CDS

Theorem A polynomial approximation algorithm for the edge weighted connected domi

nating set problem with factor f n would imply a polynomial approximation algorithm for the

set TSP problem with factor f n

Proof We show how to reduce the set TSP problem to the edge weighted connected dominating

set problem Consider a set TSP instance G V E where V V V V For each

k

subset V intro duce a sp ecial vertex c and add edges from c to all v V with very high

j j j j

cost edges For u v V if u v E add the edge u v with very high cost Call this new

j

graph G

Any set TSP tour in G cho oses at least one vertex of V to visit Thus all no des of V fc g

j j j

will b e dominated by the corresp onding no de in the tour Since every no de of G o ccurs in some

V this yields a dominating set Since these are no des on a tour they also form a connected

j

set Hence OPT OPT

CDS TOUR

If we have a connected dominating set of G then it must have a vertex of V to dominate

j

c Hence the dominating set must have at least one vertex from each set V If the cost of this

j j

connected dominating set is small f nOPT since we are not using the high cost edges

CDS

in G we are using only the edges of the graph G By traversing this tree twice we can pro duce

a tour in G with cost at most f nOPT f nOPT Thus if we can approximate

CDS TOUR

the connected dominating set with edge weights to a factor f n we can approximate set TSP

within a factor f n 2

Theorem A polynomial approximation algorithm for the node weighted Steiner connected

dominating set problem with factor f n would imply a polynomial approximation algorithm for

the set TSP problem with factor f n

Proof The pro of is similar to the pro of of the previous theorem Given a set TSP instance

G V E where V V V V we construct a graph G First convert the edge

k

weights of the set TSP problem into no de weights For every edge e v v E create an

p q

extra no de v of the same cost connected to v and v All other no des are given cost For

pq p q

every subset V intro duce a sp ecial vertex c of very high cost and connect it to all v V

j j j

We show that the problem reduces to nding a no de weighted connected dominating set of the

subset U fc jj k g of no des of G

j

Any set TSP tour in G cho oses at least one vertex of V to visit Thus each c will b e

j j

dominated The weight of the edges e v v translates to the weight of the corresp onding

p q

vertices v Since the no des form a tour they also form a connected set in G together with

pq

the new no des that sub divide edges Thus OPT OPT

CDS TOUR

Consider a connected dominating set that dominates U To dominate c it must pick a

j

vertex from V Wlog the connected dominating set do es not contain c If the cost of

j j

this connected dominating set is small f nOPT since we are not using the high cost

CDS

no des in G we are using only the no des of the graph G along with no des that corresp ond

to the sub divided edges Thus the dominating set cho oses vertices that are also in G and the

corresp onding vertices for each edge of G that it includes This yields a tree that connects

at least one element from each V using edges of G By traversing this tree twice we can

j

pro duce a tour in G of cost at most f nOPT f nOPT Thus if we able to

CDS TOUR

approximate the connected dominating set of a subset with no de weights to a factor f n we

can approximate set TSP within a factor f n 2

Acknowledgements We thank Ray Miller and Azriel Rosenfeld for rst mentioning the

traveling tourists problem We thank Vaduvur Bharghavan for reigniting our interest in the

connected dominating sets problem We would like to thank Estie Arkin and Randeep Bhatia

for useful discussions We thank Bala ji Raghavachari and Serge Plotkin for raising the questions

ab out the vertex weighted case and the Steiner case resp ectively We thank Piotr Berman for

allowing us to include his improvement to Algorithm I I

References

E Arkin M Halldorsson and R Hassin Approximating the tree and tour covers of a

graph Information Processing Letters

P Berman p ersonal communication May

P Berman and M Furer p ersonal communication May

P Berman and V Ramaiyer Improved approximation algorithms for the Steiner tree

problem J Algorithms

T Cormen C Leiserson and R Rivest Introduction to Algorithms The MIT Press

U Feige A threshold of ln n for approximating setcover th ACM Symposium on

Theory of Computing pages

M R Garey and D S Johnson Computers and Intractability A guide to the theory of

NPcompleteness Freeman San Francisco

S Guha and S Khuller Approximation algorithms for connected dominating sets Proc

of th Annual European Symposium on Algorithms

A Kothari and V Bharghavan Algorithms for unicast and multicast routing in adho c

networks manuscript

P N Klein and R Ravi A nearly b estp ossible approximation algorithm for no de

weighted Steiner trees J Algorithms

D Kleitman and D West Spanning trees with many leaves SIAM Journal on Discrete

Mathematics

M Karpinsky and A Zelikovsky New approximation algorithms for the Steiner tree prob

lem Technical Report Electronic Col loquium on Computational Complexity ECCC

TR

C Lund and M Yannakakis On the hardness of approximating minimization problems

Journal of the ACM

C S Mata and J S B Mitchell Approximation algorithms for geometric tour and

network design problems Proc of the th Annual Symp on Computational Geometry

pages

S Paul and R Miller Lo cating faults in a systematic manner in a large heterogeneous

network IEEE INFOCOM pages

C Savage DepthFirst search and the vertex cover problem Information Processing

Letters

P Slavik A tight analysis of the greedy algorithm for set cover th ACM Symposium

on Theory of Computing pages