Approximation Algorithms for Connected Dominating Sets
Total Page:16
File Type:pdf, Size:1020Kb
Approximation Algorithms 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 dominating set 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 degree 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 algorithm 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 spanning tree 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