Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees Wei Wang joint with Zishen Yang, Xianliang Liu School of Mathematics and Statistics, Xi an Jiaotong University Dec 20, 2016 1 / 59
Table of Contents 1 Background 2 Introduction 3 Lower Bounds 4 Complexity 5 An Approximation Algorithm 2 / 59
Table of Contents 1 Background 2 Introduction 3 Lower Bounds 4 Complexity 5 An Approximation Algorithm 3 / 59
Background Wireless Sensor Network 4 / 59
Background Traffic Control Wireless Sensor Network Health Care Military Affairs Environmental Monitorin 5 / 59
Background Wireless Sensor 6 / 59
Background Wireless Sensor Perceptual; Computing; Communication Small size; Low cost 6 / 59
Background Wireless Sensor Perceptual; Computing; Communication Small size; Low cost Driven by batteries; Energy is limited 6 / 59
Illustration of Disjoint Connected Dominating Sets 7 / 59
Illustration of Disjoint Connected Dominating Sets 7 / 59
Illustration of Disjoint Connected Dominating Sets 7 / 59
Illustration of Disjoint Connected Dominating Sets 7 / 59
Illustration of Disjoint Connected Dominating Sets 7 / 59
Table of Contents 1 Background 2 Introduction 3 Lower Bounds 4 Complexity 5 An Approximation Algorithm 8 / 59
Definitions Dominating Set (DS) A node subset D V is called a dominating set (DS) of a graph G = (V, E) if for each node in V, either it belongs to D or it is adjacent to a vertex in D. (Namely, V = D N(D).) 9 / 59
Definitions Dominating Set (DS) A node subset D V is called a dominating set (DS) of a graph G = (V, E) if for each node in V, either it belongs to D or it is adjacent to a vertex in D. (Namely, V = D N(D).) Connected Dominating Set (CDS) A dominating set D is also called connected dominating set (CDS) if the induced subgraph G[D] is connected. 9 / 59
Motivation Trivial facts: Loops and parallel edges do no contribution to DS. 10 / 59
Motivation Trivial facts: Loops and parallel edges do no contribution to DS. Each simple graph has a DS (the vertex set itself for example) but not a CDS. 10 / 59
Motivation Trivial facts: Loops and parallel edges do no contribution to DS. Each simple graph has a DS (the vertex set itself for example) but not a CDS. Each connected graph has a CDS (the vertex set itself for example) but may not have a pair of them (with no overlapping). 10 / 59
Our Interest Given a graph G = (V, E). 11 / 59
Our Interest Given a graph G = (V, E). Problem Are there two connected dominating sets C 1 and C 2 in G with C 1 C 2 =? 11 / 59
Our Interest Given a graph G = (V, E). Problem Are there two connected dominating sets C 1 and C 2 in G with C 1 C 2 =? Or Equivalently, can V be partitioned into two disjoint sets V 1 and V 2 such that V 1 and V 2 are both connected dominating sets of G? 11 / 59
Our Interest Given a graph G = (V, E). Problem Are there two connected dominating sets C 1 and C 2 in G with C 1 C 2 =? Or Equivalently, can V be partitioned into two disjoint sets V 1 and V 2 such that V 1 and V 2 are both connected dominating sets of G? There are still some more interesting problems if the answer is NO. 11 / 59
Our Interest Given a graph G = (V, E) with the answer NO. 12 / 59
Our Interest Given a graph G = (V, E) with the answer NO. Problem Let Ḡ = (V, Ē) be the complement graph of G. Find an edge set E Ē (implies E E = ) in the complement graph Ḡ with minimum cardinality such that G = (V, E E ) has a pair of disjoint connected dominating sets (DCDS). 12 / 59
Some Related Problems Computing the domination number and connected domination number; 13 / 59
Some Related Problems Computing the domination number and connected domination number; Computing the domatic number (=dominating chromatic number) and connected domatic number; 13 / 59
Some Related Problems Computing the domination number and connected domination number; Computing the domatic number (=dominating chromatic number) and connected domatic number; All are NP-hard problems! 13 / 59
Our Contributions We solve the problems on non-trivial trees (at least order 3): Two sharp lower bounds on the minimum size edge number E min (T ), when T is a tree. The N P-hard proof of DCDS problem on trees. An approximation algorithm with performance ratio 3 2 + O( 1 n ) on an arbitrary tree. 14 / 59
Table of Contents 1 Background 2 Introduction 3 Lower Bounds 4 Complexity 5 An Approximation Algorithm 15 / 59
Preliminary Lemma Let V 1 and V 2 be a partition of graph G (ordered n) such that V i (i = 1, 2) is a DS. Then 1. E(V 1, V 2 ) max{ V 1, V 2 }, where E(V 1, V 2 ) denotes the subset of edges of G with one endpoint in V 1 and the other in V 2. 2. Further more, E(V 1, V 2 ) n 2, and equality holds if and only if either i) V 1 = V 2 and E(V 1, V 2 ) is a perfect matching of G, or ii) V 1 V 2 = 1 and E(V 1, V 2 ) is a maximum matching of G with one more edge which is incident to a unsaturated vertex and a saturated one. 16 / 59
Proof of Lemma-1 E(V 1, V 2 ) max{ V 1, V 2 }, where E(V 1, V 2 ) denotes the set of edges with one endpoint in V 1 and the other in V 2. V 1 V 2 17 / 59
Proof of Lemma-1 E(V 1, V 2 ) max{ V 1, V 2 }, where E(V 1, V 2 ) denotes the set of edges with one endpoint in V 1 and the other in V 2. V 1 V 2 17 / 59
Proof of Lemma-1 E(V 1, V 2 ) max{ V 1, V 2 }, where E(V 1, V 2 ) denotes the set of edges with one endpoint in V 1 and the other in V 2. V 1 V 2 17 / 59
Proof of Lemma-1 E(V 1, V 2 ) max{ V 1, V 2 }, where E(V 1, V 2 ) denotes the set of edges with one endpoint in V 1 and the other in V 2. V 1 V 2 17 / 59
Proof of Lemma-2 Further more, E(V 1, V 2 ) n 2, and equality holds either V 1 = V 2 and E(V 1, V 2 ) is a perfect matching of G, or V 1 V 2 = 1 and E(V 1, V 2 ) is a maximum matching of G with one more edge incident to the isolate vertex. V 1 = V 2 V 1 V 2 18 / 59
Proof of Lemma-2 Further more, E(V 1, V 2 ) n 2, and equality holds either V 1 = V 2 and E(V 1, V 2 ) is a perfect matching of G, or V 1 V 2 = 1 and E(V 1, V 2 ) is a maximum matching of G with one more edge incident to the isolate vertex. V 1 = V 2 V 1 V 2 = 1 V 1 V 2 V 1 V 2 18 / 59
A Global Bound Theorem (Global Bound) Let T = (V, E) be a tree of order n. Then E min (T ) n 2 1. 19 / 59
A Global Bound Theorem (Global Bound) Let T = (V, E) be a tree of order n. Then E min (T ) n 2 1. V 1 V 2 19 / 59
A Global Bound Theorem (Global Bound) Let T = (V, E) be a tree of order n. Then E min (T ) n 2 1. Connected Connected V 1 V 2 19 / 59
A Global Bound Theorem (Global Bound) Let T = (V, E) be a tree of order n. Then E min (T ) n 2 1. Connected Dominating Connected V 1 V 2 19 / 59
A Global Bound Theorem (Global Bound) Let T = (V, E) be a tree of order n. Then E min (T ) n 2 1. V 1 1 V 2 1 n 2 Connected Dominating Connected V 1 V 2 Remark: If G is a forest with k components, then E min (G) n 2 + k 2. 19 / 59
The Proof: A sketch 1 n = V and m = E(T ). 2 Suppose that V can be partitioned as V 1 and V 2 s.t. they are CDS in the new graph. 3 Let C 1, C 2,, C r be the connected components of T [V 1 ] and C 1, C 2,, C s be the connected components of T [V 2 ]. 4 Let E T (V 1, V 2 ) be the set of edges of T with one endpoint in V 1 and the other in V 2. Then E T (V 1, V 2 ) = m r (n i 1) i=1 s (n i 1) = m n + r + s. 5 The number of vertices covered by these edges is at most 2(m n + r + s). The number of vertices uncovered by the edges in E T (V 1, V 2 ) is at least n (2(m n + r + s)) = 3n 2m 2(r + s). i=1 20 / 59
The Proof: A sketch - contd. 1 The number of new edges needed to cover these vertices is at least 3n 2m 2r 2s 3n 2m = (r + s). 2 2 2 The total number of new edges needed is at least ( 3n 2m (r + s)) + (r + s 2) = n + (n m) 2. 2 2 21 / 59
Global Bound Necessary and Sufficient Condition for the Equality to Hold Corollary Let T be a tree of order n. Then E min (T ) = n 2 1 if and only if the vertex set V can be partitioned into V 1 and V 2 such that the following two conditions hold: V 1 and V 2 differ by at most one; E T (V 1, V 2 ) (edges of T with one endpoints in V 1 and the other in V 2 ) is either a matching of T or the union of a matching of T and an additional edge which is incident to an unsaturated vertex in V 1 and a saturated vertex in V 2 (assume V 1 V 2 ). 22 / 59
Global Bound Necessary and Sufficient Condition for Equality V 1 V 2 V 1 V 2 23 / 59
Global Bound Applications Example Let T be a tree with n vertices. Let T be obtained from T by adding a pendent edge at each vertex of T. Then E min (T ) = n 1. 24 / 59
Global Bound Applications Example Let T be a tree with n vertices. Let T be obtained from T by adding a pendent edge at each vertex of T. Then E min (T ) = n 1. Proof: Let V 1 = V (T ) and V 2 = V (T ) \ V (T ). The conclusion is just the direct result from the global bound theorem and its corollary. 24 / 59
Global Bound Applications Example Let G = K n be a a null graph. Then E min (G) = 3n 2 2. 25 / 59
Global Bound Applications Example Let G = K n be a a null graph. Then E min (G) = 3n 2 2. The ladder graph attains the minimum. The result may be generalized to disjoint k-cds. The weighted case may be non-trivial. 25 / 59
Result 2 - Local Bound Theorem (Local Bound) Let T = (V, E) be a tree ordered n. Then E min (T ) 1, where denotes the maximum vertex degree of T. 26 / 59
Result 2 - Local Bound Theorem (Local Bound) Let T = (V, E) be a tree ordered n. Then E min (T ) 1, where denotes the maximum vertex degree of T. r neighbors s neighbors v V 1 V 2 26 / 59
Result 2 - Local Bound Theorem (Local Bound) Let T = (V, E) be a tree ordered n. Then E min (T ) 1, where denotes the maximum vertex degree of T. r neighbors At least r connected components at least (r 1) edges v s neighbors V 1 V 2 26 / 59
Result 2 - Local Bound Theorem (Local Bound) Let T = (V, E) be a tree ordered n. Then E min (T ) 1, where denotes the maximum vertex degree of T. r neighbors At least r connected components at least (r 1) edges v s neighbors At least s vertices not be dominated at least s edges V 1 V 2 26 / 59
Table of Contents 1 Background 2 Introduction 3 Lower Bounds 4 Complexity 5 An Approximation Algorithm 27 / 59
N P-hardness on Trees Theorem DCDS problem is N P-hard on trees. 28 / 59
N P-hardness on Trees Theorem DCDS problem is N P-hard on trees. General idea of proof: Transform the partition problem (a well-known N P-complete problem) to the DCDS problem on special trees in polynomial time. 28 / 59
N P-hardness Proof Decision Problem of DCDS Problem on Trees For any given tree T = (V, E) and a positive integer K N +. The decision problem of DCDS problem on trees is to determine whether there is an edge set E E( T ) with E K, such that the new graph T = (V, E E ) has a pair of disjoint connected dominating sets. 29 / 59
N P-hardness Proof Partition Problem The Partition Problem is the task of deciding whether a given multiset S of positive integers can be partitioned into two subsets S 1 and S 2 such that the sum of the numbers in S 1 equals the sum of the numbers in S 2. 30 / 59
N P-hardness Proof Properties of Partition Problem Multiplicity in the multiset S is allowed. Partition problem is N P-complete without any limitation. 31 / 59
N P-hardness Proof Properties of Partition Problem Multiplicity in the multiset S is allowed. Partition problem is N P-complete without any limitation. Lemma for Partition Problem For any multiset S = {a 1,, a n } (a i N +, i = 1, 2,, n) as an instance of partition problem, the answer is the same for S and ks := {ka 1,, ka n }, k N +. 31 / 59
N P-hardness Proof Instance Transformation: Partition Problem S DCDS Problem (T, K) 32 / 59
N P-hardness Proof Instance Transformation: Partition Problem S DCDS Problem (T, K) P 2n v1 v 2 v 3 v 4 v 2n 1 v 2n 32 / 59
N P-hardness Proof Instance Transformation: Partition Problem S DCDS Problem (T, K) a 1 2 a 2 2 a n 2 v 1 v 2 v 3 v 4 v 2n 1 v 2n 33 / 59
N P-hardness Proof Instance Transformation: Partition Problem S DCDS Problem (T, K) T S : v 1 v 2 v 3 v 4 v 2n 1 v 2n A 1 = a 1 A 2 = a 2 A n = a n 34 / 59
N P-hard Proof Proof of the Equivalence Objective The answer to the Partition Problem with multiset S is YES if and only if for the tree T = T S and the positive integer K = ( S)/2 1, the answer to the decision problem of DCDS problem is YES. 35 / 59
N P-hard Proof Proof of the Equivalence Instance S (Partition Problem): YES Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES 36 / 59
N P-hard Proof Proof of the Equivalence Instance S (Partition Problem): YES Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES S = {a 1 a 2 a 3 a 4 a n } 36 / 59
N P-hard Proof Proof of the Equivalence Instance S (Partition Problem): YES Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES S = {a 1 a 2 a 3 a 4 a n } T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n 36 / 59
N P-hard Proof Proof of the Equivalence Instance S (Partition Problem): YES Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES S = {a 1 a 2 a 3 a 4 a 2n } T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n 37 / 59
N P-hard Proof Proof of the Equivalence Instance S (Partition Problem): YES Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES S = {a 1 a 2 a 3 a 4 a n } T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n 38 / 59
N P-hard Proof Proof of the Equivalence Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES Instance S (Partition Problem): YES (The Tricky Part) 39 / 59
N P-hard Proof Proof of the Equivalence Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES Instance S (Partition Problem): YES (The Tricky Part) T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n 39 / 59
N P-hard Proof Proof of the Equivalence Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES Instance S (Partition Problem): YES (The Tricky Part) T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n S = {a 1 a 2 a 3 a 4 a n } 39 / 59
N P-hard Proof Proof of the Equivalence Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES Instance S (Partition Problem): YES T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n S = {a 1 a 2 a 3 a 4 a n } 40 / 59
N P-hard Proof Proof of the Equivalence Instance T = T S and K = ( S)/2 1 (Decision Problem of DCDS Problem on Trees): YES Instance S (Partition Problem): YES T S : A 1 = a 1 A 2 = a 2 A 3 = a 3 A 4 = a 4 A n = a n S = {a 1 a 2 a 3 a 4 a n } 41 / 59
The Key Idea Sj =the sum of the numbers in S j for j = 1, 2. S 1 V 1 n and S 2 V 2 n S 1 S 2 S 1 V 1 + S 2 V 2 2n. Assume 3n a i i = 1, 2,, n by previous lemma, which implies 3n divides S 1 S 2. Therefore, S 1 = S 2. 42 / 59
Table of Contents 1 Background 2 Introduction 3 Lower Bounds 4 Complexity 5 An Approximation Algorithm 43 / 59
What and Why an Approximation Algorithm? For an NP-hard combinatorial optimization problem, it is unlikely to find a polynomial time algorithm for it, unless P = NP. For minimization problems, an approximation algorithm with performance ratio ρ means, the running time is bounded by a polynomial in the input size, and it guarantees to return a solution with objective function within ρ of the optimal one. Designing approximation algorithms for various NP-hard problems is challenging! 44 / 59
General Idea for Approximation Algorithm for DCDS on Trees The number of added edges can be computed precisely for given vertex partition. The number of component in each part is not too big. The difference between the sizes of two parts is not too large. 45 / 59
Algorithm 1 - Seeking a Good Vertex Partition Algorithm 1 DCDS on Trees (Partition Part) Input: A tree T = (V, E). Output: Vertex partition V = V 1 V 2. 1: e 0 = (u, v) := arg min e E V 1 (T, e) V 2 (T, e). (assuming V 1 (T, e) V 2 (T, e) ) 2: if V 2 (T, e 0 ) n 3 then 3: V 1 = V 1 (T, e 0 ) and V 2 = V 2 (T, e 0 ). 4: else 5: Root the tree at r = V 1 (T, e 0 ) {u, v}. 6: Let N(r) = {v 1,, v k }, with T r (v 1 ) T r (v k ), where T r (v) means the branch rooted at v of tree (T, r). 7: V 1 = i is odd {V (T r (v i ))} and V 2 = i is even {V (T r (v i ))} {r}. 8: end if 46 / 59
Algorithm 1 - Getting Vertex Partition CASE 1: V 2 (T, e 0 ) n 3 V 1 = V 1 (T, e 0 ) V 2 = V 2 (T, e 0 ) u e 0 v 47 / 59
Algorithm 1 - Getting Vertex Partition CASE 1: V 2 (T, e 0 ) n 3 V 1 = V 1 (T, e 0 ) V 2 = V 2 (T, e 0 ) u e 0 v 48 / 59
Algorithm 1 - Getting Vertex Partition CASE 2: V 2 (T, e 0 ) < n 3 V 1 (T, e 0 ) V 2 (T, e 0 ) r = u e 0 v 49 / 59
Algorithm 1 - Getting Vertex Partition CASE 2: V 2 (T, e 0 ) < n 3 r = u e 0 v 1 = v v 2 v 3 v 4 v k 50 / 59
Algorithm 1 - Getting Vertex Partition CASE 2: V 2 (T, e 0 ) < n 3 r = u e 0 v 1 = v v 2 v 3 v 4 v k 51 / 59
Algorithm 2 - Counting Adding Edges Algorithm 2 DCDS on Trees (Count Part) Input: A tree T = (V, E), vertex partition V = V 1 V 2. Output: A feasible edge-adding number E Sol. 1: Compute the number of connected components of induced graphs T [V 1 ] and T [V 2 ], denoted by c T (V 1 ) and c T (V 2 ) respectively. 2: Compute the number of vertices in vertex set V 1 (resp. V 2 ) but not dominated by vertex set V 2 (resp. V 1 ). 3: E Sol = c T (V 1 ) + c T (V 2 ) + max{ V 1 \ N(V 2 ), V 2 \ N(V 1 ) } 2. 52 / 59
Performance Ratio Theorem Algorithm for DCDS problem on trees gives the performance ratio ρ = 3 2 + O( 1 n ) 53 / 59
Performance Ratio Theorem Algorithm for DCDS problem on trees gives the performance ratio ρ = 3 2 + O( 1 n ) General idea of proof: Discuss two cases mentioned in Algorithm 1 (Partition Part) respectively by using the formula given in Algorithm 2 (Count Part). 53 / 59
Performance Ratio CASE 1: V 2 (T, e 0 ) n 3 V 1 V 2 u e 0 v Both T [V 1 ] and T [V 2 ] are connected. At most V 1 1 edges is needed for dominating part. E Sol 2 3 n 1 54 / 59
Performance Ratio CASE 2: V 2 (T, e 0 ) n 3 r = u e 0 v 1 = v v 2 v 3 v 4 v k 55 / 59
Performance Ratio e 0 v 1 v 2 r = u Connectivity: T [V 1 ] has N(r) 2 ( 2 ) connected components. T [V 2 ] is connected. At most 2 1 edges are needed for connectivity. 56 / 59
Performance Ratio e 0 v 1 v 2 r = u Domination: V 1 \ N(V 2 ) = iis odd V (T r (v i )) k/2 V 2 \ N(V 1 ) = iis even V (T r (v i )) { max iis odd V (T r (v i )) k/2, } iis even V (T r (v i )) edges are needed for domination. 57 / 59
Performance Ratio The algorithm for DCDS problem on trees gives the performance ratio ρ = = Algorithm Solution OPT Algorithm Solution Lower Bound E Sol max{ n/2, } 1... 3 2 + O ( 1 n ) 58 / 59
Thanks for your attention! Questions & Answers 59 / 59