Bounded-degree minimum-radius spanning trees ... - Semantic Scholar

17 downloads 271324 Views 520KB Size Report
Department of Computer Science, University of Texas at Dallas, Richardson, ... where OPT is the minimum possible radius of any spanning tree with degree ...
Theoretical Computer Science 498 (2013) 46–57

Contents lists available at SciVerse ScienceDirect

Theoretical Computer Science www.elsevier.com/locate/tcs

Bounded-degree minimum-radius spanning trees in wireless sensor networks Min Kyung An, Nhat X. Lam, Dung T. Huynh ∗ , Trac N. Nguyen Department of Computer Science, University of Texas at Dallas, Richardson, TX 75080, United States

a r t i c l e

i n f o

Article history: Received 15 August 2012 Received in revised form 30 March 2013 Accepted 28 May 2013 Communicated by P. Widmayer Keywords: Bounded-degree Bounded-diameter Bounded-radius Spanning tree Disk graph Bicriteria approximation

a b s t r a c t In this paper, we study the problem of computing a spanning tree of a given undirected disk graph such that the radius of the tree is minimized subject to a given degree constraint ∗ . We first introduce an (8, 4)-bicriteria approximation algorithm for unit disk graphs (which is a special case of disk graphs) that computes a spanning tree such that the degree of any nodes in the tree is at most ∗ + 8 and its radius is at most 4 · OPT, where OPT is the minimum possible radius of any spanning tree with degree bound ∗ . We also introduce an (α , 2)-bicriteria approximation algorithm for disk graphs that computes a spanning tree whose maximum node degree is at most ∗ + α and whose radius is bounded by 2 · OPT, where α is a non-constant value that depends on M and k with M being the number of distinct disk radii and k being the ratio of the largest and the smallest disk radius. © 2013 Elsevier B.V. All rights reserved.

1. Introduction Given an undirected graph, the problem of computing a spanning tree which satisfies certain constraints such as node degree, diameter (or radius) or total cost has been the focus of many researchers as the tree can serve as the pre-defined network infrastructure in wireless sensor networks (WSNs) and other applications. Such problems are known as constrained spanning tree problems in the literature. The Minimum-Degree Spanning Tree (MDeST) problem is one of the constrained spanning tree problems, and its objective is to compute a spanning tree such that the maximum node degree of the tree is minimized. The NP-completeness of the problem has been proved in [1] for general graphs whereas [2] showed an iterative polynomial time approximation algorithm, which is currently the best, that computes a spanning tree whose maximum node degree is at most ∗ + 1, where ∗ is the degree of the optimal tree. A problem related to the MDeST problem is the Degree-Bounded Minimum-Cost Spanning Tree (DBMCST) problem. Given a nonnegative cost function on the edges of a graph and a degree constraint ∗ , its objective is to compute a minimum cost spanning tree with the maximum node degree ∗ . [3] proposed a bicriteria approximation algorithm that computes a spanning tree with maximum node degree O (∗ + log | V |) and cost O (optc ), where V is the set of nodes of the given graph and optc is the minimum cost of any spanning tree whose maximum node degree is at most ∗ . Later, [4] introduced an improved bicriteria approximation algorithm that computes a spanning tree with maximum node degree ∗ + 2 and cost optc . It has again been improved by a bicriteria approximation algorithm in [5] that yields a spanning tree with maximum node degree ∗ + 1 and cost optc .

*

Corresponding author. E-mail addresses: [email protected] (M.K. An), [email protected] (N.X. Lam), [email protected] (D.T. Huynh), [email protected] (T.N. Nguyen). 0304-3975/$ – see front matter © 2013 Elsevier B.V. All rights reserved. http://dx.doi.org/10.1016/j.tcs.2013.05.033

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

47

Besides bounding the node degree, the problem of computing a spanning tree with bounded-diameter has also been investigated by several researchers. The objective of the Minimum-Diameter Spanning Tree (MDiST) problem is to compute a spanning tree such that the diameter of the tree is minimized. [6] described an O (| V |3 ) algorithm that solves the MDiST problem in the polynomial time. Later, [7] showed that the MDiST problem on general graphs is reducible to the absolute 1-center problem [8] which can be solved in O (| V || E | + | V |2 log | V |) time [9], where E is the set of edges of the given graph. While these works concerned only the node degree constraint or the diameter constraint, recently [10] has focused on bounding both the node degree and radius. The Bounded-Degree Minimum-Radius Spanning Tree (BDMRST) problem is to construct a spanning tree such that the radius of the tree is minimized subject to a given degree constraint ∗ . [10] introduced a (10, 7)-bicriteria approximation algorithm for the BDMRST problem for UDGs that computes a spanning tree whose maximum node degree is bounded by ∗ + 10 and whose diameter is at most 7 · OPT, where OPT is the minimum possible radius for the given degree bound ∗ . A problem closely related to BDMRST is the problem of computing a spanning tree of a given undirected edge-weighted unit disk graph such that the radius of the tree is minimized subject to a given degree constraint ∗ . The edges of the given graph are endowed with a metric length function. [11] introduced an ( O (log2 | V |), O (log | V |))-bicriteria approximation algorithm that computes a spanning tree whose maximum node degree is bounded by O (∗ · log2 | V |) and whose diameter is bounded by  O (log | V | · OPT  ), where OPT  is the minimum possible diameter for the given degree bound ∗ . Later, [12] proposed a (1, log∗ | V | )-bicriteria approximation algorithm that computes a spanning tree whose maximum node degree  is bounded by ∗ and whose diameter is bounded by O ( log∗ | V | · OPT  ). The algorithm in [12], however, works only for undirected complete unit disk graphs, and ∗  3. In this paper, we continue the study of the Bounded-Degree Minimum-Radius Spanning Tree (BDMRST) problem on disk graphs (DGs) as well as unit disk graphs (UDGs). Note that the sole existing work [10] studied the problem for unit disk graphs (UDGs) only. We first introduce an (8, 4)-bicriteria approximation algorithm that constructs a spanning tree for a UDG whose maximum node degree is at most ∗ + 8 and whose radius is bounded by 4 · OPT. This is an improvement over the bound (10, 7) obtained in [10]. We also propose a simple (α , 2)-bicriteria approximation algorithm that computes a spanning tree for a DG where the maximum node degree is at most ∗ + α and whose radius is bounded by 2 · OPT, where α is a non-constant value that depends on M and k with M being the number of distinct disk radii and k being the ratio of the largest and the smallest disk radius. To the best of our knowledge, the latter is the first result for DGs. This paper is organized as follows. Section 2 describes our network model and defines the Bounded-Degree MinimumRadius Spanning Tree (BDMRST) problem. Section 3 introduces a bicriteria approximation algorithm for the BDMRST problem for unit disk graphs (UDGs), whereas Section 4 deals with a bicriteria approximation algorithm for disk graphs (DGs). 2. Preliminaries 2.1. Network model A wireless sensor network (WSN) consists of a set V of sensor nodes, and each node u ∈ V is assigned a transmission power level p (u ). The signal sent by a node u can be received by another node v if the distance between u and v, denoted by d(u , v ), is  p (u ). We consider the bidirectional case where two nodes u and v can communicate via a communication edge which exists between nodes u and v, if and only if d(u , v )  p (u ) and d( v , u )  p ( v ). In this paper, the communication graph is modeled as an undirected graph G ( V , E ), where E = {(u , v ) | u , v ∈ V , d(u , v )  p (u ) and d( v , u )  p ( v )}. In the literature, a communication graph is called a disk graph (DG) if all nodes are assigned various power levels, and if all nodes are assigned the same power level, it is called a unit disk graph (UDG). We now introduce some definitions and notations that will be used subsequently:

• Graph Center: Given a communication graph G = ( V , E ), we call a node c a center node if the distance from c to the farthest node from c is minimum.

• Maximal Independent Set (MIS): A subset V  ⊆ V of the graph G is said to be independent if for any vertices u , v ∈ V  , (u , v ) ∈ / E. An independent set is said to be maximal if it is not a proper subset of another independent set. • Connected Dominating Set (CDS): A dominating set (DS) is a subset V  ⊆ V such that every vertex v is either in V  or adjacent to a vertex in V  . A DS is said to be connected if it induces a connected subgraph.

2.2. Problem definition Given a disk graph G = ( V , E ) and an integer constant ∗  2, the objective of the Bounded-Degree Minimum-Radius Spanning Tree (BDMRST) problem is to construct a bounded-degree minimum-radius spanning tree T = ( V , E T ⊆ E ) of G such that the radius of T is minimized while the degree of any node in T is at most ∗ . Formally, BDMRST is defined as follows:

48

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

Fig. 1. Example of an MIS that consists of black nodes. c is the center node of G.

Input. A disk graph G = ( V , E ), where V is a set of nodes and E is a set of communication edges, and a degree constraint ∗  2. Output. A minimum-radius spanning tree T = ( V , E T ⊆ E ) whose degree is bounded by ∗ . In this paper, we focus on designing an (α , β)-bicriteria approximation for the BDMRST problem. An (α , β)-bicriteria approximation algorithm provides a spanning tree for any instance of BDMRST satisfying the following two conditions as in [10]: 1. The degree of any nodes in the spanning tree is at most α + ∗ . 2. The radius of the spanning tree is at most β · OPT, where OPT is the minimum possible radius of any spanning tree whose degree is bounded by ∗ . 2.3. NP-completeness of the BDMRST problem First note that [13] showed that the Hamilton Path problem on grid graphs is NP-complete. Now, observe that a special case of the BDMRST problem is to compute Hamiltonian path on UDGs, which is clearly NP-complete [13] since grid graphs are a special case of UDGs. Thus, we have Theorem 1. The Bounded-Degree Minimum-Radius Spanning Tree (BDMRST) problem is NP-complete. 3. Bounded-degree minimum-radius spanning tree on unit disk graphs In this section, we introduce an (8, 4)-bicriteria approximation algorithm for the Bounded-Degree Minimum-Radius Spanning Tree (BDMRST) problem for unit disk graphs. Given a UDG G = ( V , E ) where all nodes are assigned the same power level r, we assume without loss of generality that G is connected. 3.1. Algorithm Our algorithm, BDMRST-UDG (Algorithm 1), starts with an initial tree which is the data aggregation tree T I , that is a spanning tree of G, computed in [14] as follows. A center node c of G is picked as the root node, and a breadth-first-search (BFS) tree T B F S (cf. [15]) on G is constructed. We then [14] find a Maximal Independent Set (MIS) of G using an algorithm in [16] starting with T B F S . The nodes in the MIS are called dominators, and the others are called dominatees. Here, the MIS constructed by [16] guarantees that the shortest hop-distance between any two complementary pairs, A and M I S \ A, where A ⊆ M I S, is exactly two hops. For example, in Fig. 1, consider one pair A = { v 1 , v 2 } and B = M I S \ A = { v 3 , v 4 , v 5 , c }. The shortest hop-distance between the sets A and B on G is exactly two hops. Next, based on the MIS, we obtain a Connected Dominating Set (CDS) of G by connecting the dominators using some connectors that were originally dominatees. If there exist dominatees that are not connected to the CDS, then each of such dominatees is connected to its neighboring dominator that has the smallest hop-distance to c. We use the newly formed tree denoted by T I = ( V , E T ⊆ E ) as an initial tree. Fig. 2(a) shows an example for the construction of the CDS, and Fig. 2(b) shows an example for the construction of an initial tree T I . Once T I is obtained we compute a backbone tree which is a subtree T B ⊆ T I that consists of the dominators and their connectors, and the tree edges of T I connecting them. Our algorithm is divided into three phases:

• Phase 1 (Removing Redundant Connectors): We remove redundant connectors on the initial backbone tree T B , and obtain the modified backbone tree T B .

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

49

Algorithm 1 Bounded-Degree Minimum-Radius Spanning Tree of a UDG (BDMRST-UDG) Input: A UDG G = ( V , E ), and a degree constraint ∗  2 Output: Minimum-radius tree T F whose node degree is bounded by ∗ + 8 1: T I ← data aggregation tree of G as constructed in [14] 2: T B = ( V B , E B ) ← the set V B ⊆ V of dominators and their connectors, and the tree edges E B of T I connecting them 3: T B ← RRC( T B ) // Phase 1 4: for each dominator u ∈ V do 5: Partition u’s broadcasting disk into 8 sectors each of which has an angle of 28π radian. 6: end for 7: T B ← BTC( T B ) // Phase 2 8: T L = ( V L , E L ) ← the set V L ⊆ V of dominators and their dominatees, and the tree edges E L of T I connecting them 9: T F ← LCT-UDG(( T B ∪ T L ), ∗ ) // Phase 3 10: return Bounded-degree minimum-radius spanning tree T F

Fig. 2. (a) Example of the construction of a CDS which consists of the set of nodes that are connected by bold lines. Black nodes represent dominators and gray nodes represent dominatees. (b) Example of the construction of an initial tree T I whose edges are represented by bold lines. Black nodes represent dominators, gray nodes represent connectors, and white nodes represent dominatees.

Fig. 3. Example of RRC (Phase 1). Black nodes represent dominators, gray nodes represent connectors, and white nodes represent dominatees.

• Phase 2 (Modifying Backbone Tree): We modify the backbone tree T B by reconnecting the connectors, and obtain the modified backbone tree T B . • Phase 3 (Constructing Local Trees): For the dominatees, we build several local trees by reconnecting the dominatees, and obtain the final bounded-degree minimum-radius spanning tree T F .

Phase 1. Once T I is obtained, we remove redundant connectors so that the number connectors of a dominator is minimized. Denoting the level (depth) of a node u in a tree T by  T (u ), let us consider a dominator u with  T B (u ) =  and its 2-hop-away dominators v and w with  T B ( v ) =  T B ( w ) =  + 2. Let v  and w  with  T B ( v  ) =  T B ( w  ) =  + 1 be the corresponding connectors in T B for v and w, respectively. There may exist the case that v and w can be shared by one of the connectors, v  and w  (see Lemma 2). If that happens, we remove one of the connectors, and therefore three dominators, u, v and w, are connected via only one connector. This phase is denoted by RRC and its details are contained in Algorithm 2. Fig. 3 shows an example of RRC. Phase 2. For each dominator u, we partition its broadcasting disk into 8 sectors each of which has an angle of 28π radian (see Fig. 4). The ith sector of u is denoted by seci , 1  i  8. We note that the connectors of u in each seci form a complete graph. Now, for each seci , letting C u be the set of u’s connectors in T B , with  T  =  T  (u ) + 1, we choose a node v  ∈ C u B

B

as a local sink such that d( v  , u ) is smallest. As the next step, we build a local tree T v  rooted at v  with the remaining connectors. In order to construct the local trees, we consider the following two cases (see Lemma 3):

50

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

Algorithm 2 Removing Redundant Connectors (RRC) Input: Backbone tree T B = ( V B , E B ) Output: The modified backbone tree T B 1: for each dominator u ∈ V B do 2: E B ← E B 3: X ← u’s 2-hop-away dominators in T B with  T B =  T B (u ) + 2 4: Y ← u’s connectors in T B with  T B =  T B (u ) + 1 5: for each connector v  ∈ Y do 6: Z ← {w | (v  , w ) ∈ / E B , w ∈ X } 7: for each dominator w ∈ Z do 8: Pick w  which is the connector that connects u and w. 9: if d( w , v  )  r then 10: E B ← E B − {( w , w  )}, E B ← E B ∪ {( w , v  )} 11: Z ← Z − {w} 12: if ∃ no more dominators in Z connected to u via w  then 13: Mark w  as a dominatee. 14: Y ← Y − {w} 15: end if 16: end if 17: end for 18: end for 19: end for 20: return T B = ( V B , E B )

Fig. 4. Partitioning u’s broadcasting disk into 8 sectors.

• Case 1: 1 < |C u |  4. • Case 2: 4 < |C u |  8. In Case 1, all remaining connectors are connected to the local sink v  , but v  is still connected to its dominator u. Then, v  is connected to at most 3 connectors as children in T B . In Case 2, we divide C u into two subsets, C u1 and C u2 , such that |C u1 | and |C u2 | are almost equal. (If |C u | is even, we divide it into the two equal-sized subsets, otherwise one subset’s size is one greater than the other subset’s size.) Without loss of generality, assume that the local sink v  of seci is in C u1 . Then, we choose a node w  ∈ C u2 arbitrarily as a temporary local sink of the set C u2 . Next, for each C u1 and C u2 , the remaining connectors in each set are connected to their local sink. Then, we connect w  to v  , but v  is still connected to its dominator u. Here, v  is connected to at most 4 connectors as children, and w  is connected to at most 3 connectors as children in T B . The details are contained in Algorithm 3, and Fig. 5 shows an example of Phase 2 for the case |C u | = 8. Phase 3. In this phase, we consider only dominatees. For each dominator u, the dominatees of u in each sector seci , 1  i  8, form a complete graph. Letting D u be the set of dominatees of u in each seci , we choose one node x ∈ D u such that d(x, u ) is smallest. We then construct a local tree T x rooted at x spanning all nodes in D u as follows. Let Y ⊆ D u be the set of nodes that are not connected to T x yet, and X ⊆ D u be the set of nodes that are connected to T x but their degree is 1, where the local sink x is initially an element of X . We select up to ∗ − 1 nodes closest to x from Y , if they exist, and connect them to x. Then, x is removed from X , and the (up to) ∗ − 1 newly selected nodes are removed from Y and added to X . Next, we pick one node x , whose level (that is its depth in the tree T x ) is smallest, from X , and we select (up to) ∗ − 1 nodes closest to x from Y , if they exist, and connect them to x . Then, x is removed from X , and the newly connected ∗ − 1 nodes are also removed from Y and become new elements of X . We repeat this process until all nodes in D u are connected in T x . The details are contained in Algorithm 4.

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

51

Algorithm 3 Backbone Tree Construction (BTC) Input: Backbone tree T B = ( V B , E B ) Output: Modified backbone tree T B whose maximum node degree is bounded by 10 1: E B ← E B 2: for each dominator u ∈ V B do 3: for each sector seci of u do 4: C u ← all connectors of u in seci with  T  =  T  (u ) + 1 B

B

5: Choose a local sink v  ∈ C u such that d( v  , u ) is smallest. 6: if 1 < |C u |  4 then 7: for each connector w  ∈ (C u − { v  }) do 8: E B ← E B − {(u , w  )}, E B ← E B ∪ {( w  , v  )} 9: end for 10: else if 4 < |C u |  8 then 11: if |C u | mod 2 = 0 then |C | 12: Divide C u into two subsets, C u1 and C u2 , such that |C u1 | = |C u2 | = 2u . 13: else |C |+1 14: Divide C u into two subsets, C u1 and C u2 , such that |C u1 | = |C u2 | + 1 = u2 . 15: end if 16: for each C ui ∈ {C u1 , C u2 } do 17: if v  ∈ C ui then 18: for each x ∈ (C ui − { v  }) do 19: E B ← E B − {(x , u )}, E B ← E B ∪ {(x , v  )} 20: end for 21: else if v  ∈ / C ui then 22: Choose a node w  ∈ C ui arbitrarily. 23: for each y  ∈ (C ui − { w  }) do 24: E B ← E B − {( y  , u )}, E B ← E B ∪ {( y  , w  )} 25: end for 26: end if 27: end for  28: E B ← E B − {( w  , u )}, E B ← E B ∪ {( w  , v  )} 29: end if 30: end for 31: end for 32: return T B = ( V B , E B )

Fig. 5. Example of BTC (Phase 2). Black nodes represent dominators, and gray nodes represent connectors.

Next, we consider the following two cases:

• Case 1: |C u |  1. • Case 2: |C u | = 0. In Case 1, there already exists the local sink v  , which is a connector, for seci which was chosen in Phase 2. We connect x to v  . In Case 2, there exist only dominatees in seci , and therefore we choose x as the local sink for seci . In this case, x is still connected to its dominator u. The details are contained in Algorithm 4, and Fig. 6 shows an example of Phase 3 in case of |C u |  1 with ∗ = 4. 3.2. Analysis In this section, we analyze the BDMRST-UDG algorithm (Algorithm 1), and show that it gives an (8, 4)-bicriteria approximation.

52

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

Algorithm 4 Local Tree Construction (LTC-UDG) Input: Tree Tˆ = ( T B ∪ T L ) and degree constraint ∗  2 Output: Tree T F 1: E T ← Tree edges of Tˆ 2: Let Q be a set of dominatees in V . 3: for each dominator u ∈ V do 4: E T ← E T − {(x, y ) | d(x, y )  r and x, y ∈ ( Q ∪ { v })} 5: for each sector seci of u do 6: D u ← all dominatees of u in seci 7: C u ← all connectors of u in seci 8: if | D u |  1 then 9: Choose one node x ∈ D u such that d(x, u ) is smallest. 10: /* Steps 10–18: Construct a spanning tree T x rooted at x spanning all nodes in D u */ 11: X ← {x}, Y ← D u − {x}, V x ← {x}, E x ← ∅, T x ← ( V x , E x ) 12: while X = ∅ or Y = ∅ do 13: Pick a node x ∈ X whose level (the depth on T x ) is smallest. 14: Select ∗ − 1 nodes which are closest to x from Y . If |Y | < ∗ − 1, then pick all nodes in Y . Let Y  ⊆ Y be the set of such selected nodes. 15: Connect each node y  ∈ Y  to x . 16: E T ← E T ∪ {( y  , x )} E x ← E x ∪ {( y  , x )} 17: Y ← Y − Y  , X ← X − {x }, X ← X ∪ Y  18: end while 19: if |C u |  1 then 20: Let v  ∈ Y be the local sink in seci . 21: E T ← E T ∪ {(x, v  )} 22: else if |C u | = 0 then 23: Let x be the local sink in seci . 24: E T ← E T ∪ {(x, u )} 25: end if 26: end if 27: end for 28: end for 29: return T F = ( V , E T )

Fig. 6. Example of Phase 3 for the case |C u |  1 with ∗ = 4. Black nodes represent dominators, gray nodes represent connectors, and white nodes represent dominatees.

Lemma 2. (See [14,17].) Suppose that dominators v and w are within 2 hops from dominator u, and v  and w  are the corresponding connectors for v and w, respectively. If vu w  2 arcsin 14 , then either w v   r or v w   r. Lemma 3. The number of connectors in one sector is bounded by 8. Proof. First, let sec(u , θ, r ) denote a sector with an angle of θ radian of a circle (broadcasting disk) centered at a node u with the radius of r (the gray sector in Fig. 7). Consider a dominator u and let us first bound the number of connectors in a sector seci (u , 28π , r ), 1  i  8, (one sector in Fig. 4) before removing redundant connectors.

Let sec(u , θ  , 2r ) be the union of the three sectors, sec(u , π2 , 2r ), seci (u , 28π , 2r ) and sec(u , π2 , 2r ), where θ  = π2 + 28π +

π = 5π (see Fig. 7). Since a connector connects a dominator u to other dominators which are 2 hops away from u in 2 4 the CDS, the connectors in sec (u , 2π , r ) can connect u to only dominators which reside in the area of sec(u , θ  , 2r ) − i

8

sec(u , θ  , r ). Therefore, the number of connectors in seci (u , 28π , r ) cannot exceed the number of dominators in the area of sec(u , θ  , 2r ) − sec(u , θ  , r ), and it is sufficient to bound the number of such dominators. Observing that θ  < 4, let us bound the number of dominators in the area of sec(u , 4, 2r ) − sec(u , 4, r ). We partition the area into 16 cells as in Fig. 8. In Fig. 8, p 1 p 0 p 3 = p 3 p 0 p 5 = p 5 p 0 p 7 = 1 radian, where pk , 0  k  9, represents a point, and p 1 p 0 p 2 = p 3 p 0 p 4 =

p 5 p 0 p 6 = p 7 p 0 p 8 = 0.5 radian. Here, the largest distance in each cell is  r [18], and therefore there exists at most 1 dominator in each cell. This implies that there exist at most 16 connectors in seci (u , 28π , r ).

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

53

Fig. 7. Example of sec(u , θ, r ) and sec(u , θ  , 2r ), where θ = 28π radian, θ  = π2 radian, and θ  = θ  + θ + θ  = 54π radian.

Fig. 8. Bounding the number of connectors in a sector. Radius of innermost circle is r, radius of dotted circle is 1.5r, and radius of outermost circle is 2r.

Next, let us bound the number of connectors after removing redundant connectors. Consider the case that we have the maximum number of connectors, namely 16. Without loss of generality, let us assume that a connector v j connects u to a dominator w j in the cell c j , where 1  j  16. Considering two dominators w q and w q+8 , 1  q  8, and their corresponding connectors v q and v q+8 , as w q u w q+8  0.5 radian  (2 arcsin 14 ) radian, by Lemma 2, one of the two connectors v q and v q+8 is removed during the removal procedure. Therefore, after removing all redundant connectors, we can have at most 8 connectors remaining in seci (u , 28π , r ). 2 Lemma 4. The node degree of a dominator is bounded by 8. Proof. Consider a dominator u. It is connected to nodes in its 8 sectors each of which has at most one local sink which is a connector or a dominatee. Therefore, the node degree of a dominator in T F is bounded by 8. 2 Lemma 5. The node degree of a connector is bounded by 10. Proof. Consider a dominator u with  T B (u ) = . After Phase 1 (RRC), u is connected to at most 8 connectors with  T  (u ) = B  + 1 in each sector seci , 1  i  8 (Lemma 3). Let us denote the set of such connectors in seci by C . After Phase 1, each   v ∈ C is connected at most 5 connectors [19] in T B (1 dominator with  T B =  T  = , and the other 4 dominators with B  T B =  T B =  + 2). In Phase 2, at most 4 connectors with  T B =  T B =  + 1 become children of v  in T B (see Fig. 5). In Phase 3, at most 1 dominatee with  T B =  + 1 becomes a child of v  in T F (see Fig. 6). For each sector of every dominator in the final tree T F , we can observe that a connector is connected to at most 10 nodes, and thus the lemma holds. 2 Corollary 6. The node degree of any nodes in the backbone tree T B of T F is at most 10. Lemma 7. The radius R ( T F ) of T F is at most 4 · OPT.

54

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

Proof. Let us first bound the radius R ( T B ) of the backbone tree T B in T F . T B is constructed based on the initial tree T I whose radius is R. After Phase 1, T B is modified to T B and its radius is still the same as the radius of T I , namely R. It is because, during Phase 1, a dominator, denoted by v, with  T B ( v ) =  + 2 is reconnected to a dominator, denoted by u, with  T B (u ) =  via the new connector, denoted by w  , with  T B ( w  ) =  + 1 which is the same level as its original connector’s, denoted by v  (see Fig. 3). After Phase 2, T B is transformed into T B . Observe that during Phase 2, at each level of the tree, a connector’s level is increased by at most 2. Therefore, after Phase 2, the radius of T B is increased to at most 3R which implies that the radius of T B is at most 3R. Next, let us bound the radius of the local trees. In Phase 3, each of the local trees were constructed from a complete graph, and therefore it is an optimal tree in which every node has the node degree ∗ (except the leaves and the last parent). Thus the radius of each local tree is OPT. Furthermore, noting that R is also the radius of a graph G where the maximum node degree is at most , having such a degree constraint with 2  ∗   can only increase the radius of a tree, and hence R  OPT. Therefore R ( T F )  3 · R + OPT = 4 · OPT. 2 Theorem 8. Algorithm BDMRST-UDG is an (8, 4)-approximation algorithm. Proof. The degree of any nodes in T F is at most max{∗ , 10}  ∗ + 8 for any ∗  2. The radius of T F is at most 4 · OPT by Lemma 7. Therefore, BDMRST-UDG is an (8, 4)-approximation algorithm. 2 In BDMRST-UDG (Algorithm 1), Step 1 takes O (n2 ) time [14,16]. During Step 3 (the sub-procedure of removing redundant connectors, contained in Algorithm 2), the outermost for-loop in Algorithm 2 takes O (n) time, but all inner for-loops in Algorithm 2 take constant time. Therefore, Step 3 takes O (n) time. Steps 4–6 simply take O (n) time. In Step 7 (the subprocedure of constructing the backbone tree, contained in Algorithm 3), the outermost for-loop in Algorithm 3 takes O (n) time, but all inner for-loops in Algorithm 3 take constant times, and therefore the Step 7 takes O (n) time. The last step (Step 9) for constructing the local spanning trees, contained in Algorithm 4, takes O (n3 ) time since the outermost for-loop in Algorithm 3 takes O (n) time and the inner while-loop takes O (n2 ) time. Thus, BDMRST-UDG has O (n3 ) time complexity. 4. Bounded-degree minimum-radius spanning tree on disk graphs In this section, we introduce a simple (α , β)-bicriteria approximation algorithms for the Bounded-Degree MinimumRadius Spanning Tree (BDMRST) problem on disk graphs. Given a disk graph G = ( V , E ), let P be the set of power levels {r1 , r2 , . . . , r M }, i.e., each node u ∈ V is assigned a power level p (u ) ∈ P by a power assignment function p : V → P . We assume that G is connected, and r1  r2  · · ·  r M . 4.1. Algorithm Like the algorithm for unit disk graph in Section 3, namely BDMRST-UDG, our new algorithm (Algorithm 5) also starts with an initial tree T I = ( V , E T ⊆ E ) which is a data aggregation tree in [14]. Once T I is obtained, we also compute a backbone tree which is a subtree T B ⊆ T I that consists of the dominators and their connectors, and the tree edges of T I connecting them. Algorithm 5 Bounded-Degree Minimum-Radius Spanning Tree of a Disk Graph (BDMRST-DG) Input: A disk graph G = ( V , E ) and a degree constraint ∗  2 Output: Minimum-radius tree T F whose node degree is bounded by ∗ 1: T I ← data aggregation tree of G as constructed in [14] 2: for each dominator u ∈ V do 3: Partition its broadcasting disk into several pieces as described in Section 4.1. 4: end for 5: T F ← LTC-DG( T I , ∗ ) 6: return Bounded-degree minimum-radius spanning tree T F

In this algorithm, we focus on constructing local trees by replacing tree edges of T I . Let us denote a node u whose power level p (u ) = rm , 1  m  M, by um . For each dominator um , we partition its broadcasting disk into 8 sectors each of which has an angle of 28π radian (see Fig. 4). We again partition the broadcasting disk into m concentric circles (disks) centered at um . Each of the concentric circles has radius r1 , . . . , rm . Fig. 9 shows an example of partitioning the broadcasting disk of u 4 into 4 concentric disks with radius r1 , r2 , r3 and r4 . Denoting the ith sector of um by seci , 1  i  8, and a concentric disk with radius r j by d j , 1  j  m, let ai1 represent the area of seci ∩ d1 , ai2 represent the area of seci ∩ (d2 − d1 ), and in general, ai j represent the are of seci ∩ (d j − d j −1 ). Then, the dominatees of um in each area ai j , 1  i  8, 1  j  m, form a complete graph. In each ai j , we build a local tree rooted at one of the dominatees as follows. Let Q i j be the set of dominatees located in ai j that are connected to um . We pick a node w ∈ Q i j as a local sink such that d( w , um ) is smallest. We then construct a local tree T w rooted at w spanning all nodes in Q i j as done in Phase 3 in BDMRST-UDG (Algorithm 1). The details are contained in Algorithm 6, and Fig. 10 shows an example of the construction of local trees.

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

55

Fig. 9. Partitioning um ’s broadcasting disk into m concentric circles (disks) centered at um .

Fig. 10. Example of Local Tree Construction (LTC-DG) with ∗ = 4. Black nodes represent dominators, and white nodes represent dominatees. Nodes filled with upward diagonals are dominatees that are selected as local sinks.

Algorithm 6 Local Tree Construction (LTC-DG) Input: Initial tree T = ( V , E T ) and degree constraint ∗  2 Output: Modified tree T F 1: Let Q be a set of dominatees in V . 2: for each dominator um ∈ V do 3: for i = 1 to 8 do 4: Q i ← all dominatees of um in seci 5: if | Q i |  2 then 6: for j = 1 to M do 7: Q i j ← { v | v ∈ Q i and v is located in ai j } 8: if | Q i j |  2 then 9: Choose one node w ∈ Q i j such that d( w , um ) is smallest. 10: for each node w  ∈ ( Q i j − { w }) do 11: E T ← E T − {( w  , um )} 12: end for 13: /* Steps 15–22: Construct a spanning tree T w rooted at w spanning all nodes in Q i j */ 14: X ← { w }, Y ← Q i j − { w }, V w ← { w }, E w ← ∅, T w ← ( V w , E w ) 15: while X = ∅ or Y = ∅ do 16: Pick a node x ∈ X whose level (the depth on T w ) is smallest. 17: Select ∗ − 1 nodes (which are closest to x ) from Y . If |Y | < ∗ − 1, then pick all nodes in Y . Let Y  ⊆ Y be the set of such selected nodes. 18: Connect each node y  ∈ Y  to x . 19: E T ← E T ∪ {( y  , x )}, E w ← E w ∪ {( y  , x )} 20: Y ← Y − Y  , X ← X − {x }, X ← X ∪ Y  21: end while 22: end if 23: end for 24: end if 25: end for 26: end for 27: return T F = ( V , E T )

56

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

Fig. 11. Bounding the number of connectors.

4.2. Analysis In this section, we analyze the BDMRST-DG algorithm (Algorithm 5), and show that it gives an (α , β)-bicriteria approximation. Lemma 9. (See [19].) The degree of each connector in T F is bounded by K = 6(3 log2 k + 2), where k =

rM r1

.

Lemma 10. Each dominator has at most 4π M (k + 1) connectors. Proof. Consider a dominator um whose power level is rm , 1  m  M. um is connected to 2-hop-away dominators via its connectors, and therefore it is sufficient to bound the number of such dominators to bound the number of connectors of um . Let us bound the number of 2-hop-away dominators whose power level is r i , 1  i  M. Let sec( v , θ, r ) denote a sector with an angle of θ radian of a circle (broadcasting disk) centered at a node v with the radius of r, and consider a sector r sec(um , θ, rm + r i ), where θ = r +i r . We partition the area of sec(um , θ, rm + r i ) − sec(um , θ, rm ) into 2 cells as in Fig. 11. m i Here, the largest distance in each cell is  r i [18], and hence there exists at most 1 dominator whose level is r i in each 2π (rm +r i ) cell. This implies that there exist at most 2 connectors for the dominators in sec(um , θ, rm ). As um has sectors, the r 2π (r +r )

i

m i = 4π ( rrmi + 1). Note that D i is largest number of connectors for the dominators whose power level is r i is D i = 2 · ri um can be assigned different levels in P . Therefore, the number when rm = r M , and the 2-hop-away dominators  of  M power M M rM M 1 of connectors of a dominator is bounded by i =1 (4π ( r i + 1)) = 4π · r M i =1 r i + i =1 4π < 4π · r M · r1 + 4π · M = 4π M (k + 1). 2

Lemma 11. A dominator is connected to at most 8M dominatees in T F . Proof. Consider a dominator um , where 1  m  M. For each ai j , 1  i  8, 1  j  m, of um , at most one dominatee which is a local sink is connected to um , and hence um is connected to at most 8m dominatees in T . Thus, the number of dominatees that are connected to a dominator in T is bounded by 8M. 2 Corollary 12. The degree of each dominator in T F is at most L = 4π M (k + 1) + 8M. Corollary 13. The degree of any node in T B is at most max{ K , L }. Lemma 14. The radius R ( T F ) of T F is at most 2 · OPT. Proof. It is obvious that the radius R ( T B ) of T B is R. Next, let us bound the radius of each local tree. For each dominator um , 1  m  M, a local tree in an area ai j , 1  i  8, 1  j  m, is constructed on a complete graph. Therefore, it is possible to construct an optimal spanning tree whose maximum node degree is ∗ and whose radius is minimized subject to the degree constraint ∗ in each area. Thus, the radius R ( T F ) of T F is R + OPT. Since 2  ∗  , R  OPT, it follows that R ( T F ) = R + OPT  OPT + OPT  2 · OPT. 2 Theorem 15. It is an (α , β)-approximation algorithm, where α = K + L − 2 and β = 2. Proof. The degree of any nodes in T F is at most max{∗ , max{ K , L }}  ∗ + K + L − 2 for any ∗  2. The radius of the tree is at most 2 · OPT by Lemma 14. Therefore, it is an (α , β)-approximation algorithm, where α = K + L − 2 and β = 2. 2

M.K. An et al. / Theoretical Computer Science 498 (2013) 46–57

57

In BDMRST-DG (Algorithm 5), Step 1 takes O (n2 ) time [14,16], and Steps 2–4 simply take O (n) time. In Step 5 for constructing the local spanning trees in Algorithm 6, the outermost for-loop (Steps 2–26) takes O (n) time, and the second for-loop (Steps 3–25) takes constant time. The other for-loop (Steps 6–23) takes O (n) time, but Steps 10–21 including the innermost while-loop take O (n2 ) time. Thus, BDMRST-DG has O (n4 ) time complexity. References [1] M.R. Garey, D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H. Freeman, 1979. [2] M. Fürer, B. Raghavachari, Approximating the minimum degree spanning tree to within one from the optimal degree, in: SODA, 1992, pp. 317–324. [3] J. Könemann, R. Ravi, A matter of degree: Improved approximation algorithms for degree-bounded minimum spanning trees, SIAM J. Comput. 31 (6) (2002) 1783–1793. [4] M.X. Goemans, Minimum bounded degree spanning trees, in: FOCS, 2006, pp. 273–282. [5] M. Singh, L.C. Lau, Approximating minimum bounded degree spanning trees to within one of optimal, in: Proceedings of the 39th Annual ACM Symposium on Theory of Computing, 2007, pp. 661–670. [6] J.-M. Ho, D.T. Lee, C.-H. Chang, C.K. Wong, Minimum diameter spanning trees and related problems, SIAM J. Comput. 20 (5) (1991) 987–997. [7] R. Hassin, A. Tamir, On the minimum diameter spanning tree problem, Inform. Process. Lett. 53 (2) (1995) 109–111. [8] S.L. Hakimi, Optimum locations of switching centers and the absolute centers and medians of a graph, Oper. Res. 12 (3) (1964) 450–459. [9] O. Kariv, S.L. Hakimi, An algorithmic approach to network location problems. I: The p-centers, SIAM J. Appl. Math. 37 (1979) 513–538. [10] A. Ghosh, Ö.D. Incel, V.S.A. Kumar, B. Krishnamachari, Multichannel scheduling and spanning trees: Throughput-delay tradeoff for fast data collection in sensor networks, IEEE/ACM Trans. Netw. 19 (6) (2011) 1731–1744. [11] R. Ravi, Rapid rumor ramification: Approximating the minimum broadcast time, in: FOCS, 1994, pp. 202–213. [12] J. Könemann, A. Levin, A. Sinha, Approximating the degree-bounded minimum diameter spanning tree problem, Algorithmica 41 (2) (2004) 117–129. [13] A. Itai, C.H. Papadimitriou, J.L. Szwarcfiter, Hamilton paths in grid graphs, SIAM J. Comput. 11 (4) (1982) 676–686. [14] X.-Y. Li, X. Xu, S. Wang, S. Tang, G. Dai, J. Zhao, Y. Qi, Efficient data aggregation in multi-hop wireless sensor networks under physical interference model, in: IEEE MASS, 2009, pp. 353–362. [15] T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein, Introduction to Algorithms, 3rd edition, MIT Press and McGraw–Hill, 2009. [16] P.-J. Wan, K. Alzoubi, O. Frieder, Distributed construction of connected dominating set in wireless ad hoc networks, in: INFOCOM, 2002, pp. 1597–1604. [17] P.-J. Wan, C.-W. Yi, X. Jia, D. Kim, Approximation algorithms for conflict-free channel assignment in wireless ad hoc networks, Wirel. Commun. Mob. Comput. 6 (2) (2006) 201–211. [18] Z. Chen, C. Qiao, J. Xu, T. Lee, A constant approximation algorithm for interference aware broadcast in wireless networks, in: INFOCOM, 2007, pp. 740–748. [19] M.T. Thai, D.Z. Du, Connected dominating sets in disk graphs with bidirectional links, IEEE Commun. Lett. 10 (2006) 138–140.