 Research
 Open Access
 Published:
An energy efficient MCDS construction algorithm for wireless sensor networks
EURASIP Journal on Wireless Communications and Networking volume 2012, Article number: 83 (2012)
Abstract
In wireless sensor network, a connected dominating set (CDS) can be used as a virtual backbone for efficient routing. Constructing a minimal CDS (MCDS) is good for packet routing and energy efficiency, but is an NPhard problem. In this article, an efficient approximation MCDS construction algorithm EMCDS (energy efficient MCDS construction algorithm) is proposed which explicitly takes energy consumption into account. EMCDS contains two stages: the CDS construction stage and the pruning stage. The constructed CDS is approximately composed of two independent sets (IS). The performance ratio of EMCDS is analysed in both unit disk graph and disk graphs with bidirectional links, being 9.33opt and 17.33n_{ k }opt, respectively. The message complexity of EMCDS is O(n). The simulation results have shown that EMCDS performs well both in terms of the size of CDS constructed and the energy efficiency.
1. Introduction
The design of wireless sensor networks (WSNs) [1] is a highly complicated task with substantial impact on the quality, cost, and efficiency of reallife sensor applications. The sensor nodes are small electronic devices with limited energy, memory, and transmit power capabilities, which in some sensor network applications are also limited in number because of their high cost [2]. A typical goal in these network designs is to form a longlived WSN, such that the sensor nodes, using their sensing capabilities and wireless transceivers, effectively cover a region of interest and forward important information to a common collection point, usually referred as data sink.
Topology control is one way to optimize the network's topology by removing redundant links and active nodes. Topology control can improve bandwidth utilization, delivery ratio, extend network lifetime, and reduce interference [3] and the packet retransmission [4]. The topology control has mainly two types [5]: power control and hierarchical topology control. Power control is to adjust the transmission power of nodes to construct a graph with better properties, such as minimal interference and minimal packet transmission cost or to improve the robustness of the network topology. The hierarchical topology aims to construct a connected dominating set (CDS) for improving the routing performance and saving energy of the network. A CDS serves as a virtual backbone for wireless network where all nodes in the network are dominated by the CDS, and the packets are forwarded through the CDS from the source node to the destination node.
In order to improve the routing performance in wireless network, such as reducing the interference and saving the energy as well as restraining flooding in the network, the size of CDS should be minimized. Finding a minimal CDS (MCDS) is usually an NPhard problem [6]. Thus, an approximation to MCDS is usually utilized in practice. This paper article proposes such as an approximation algorithm called EMCDS.
In the research of MCDS construction, two types of network topology graphs are utilized, i.e., unit disk graph (UDG) and disk graphs with bidirectional links (DGB). In UDG, all nodes have the same transmission range, whereas in DGB nodes have different transmission ranges. UDG is a special case of DGB, and DGB expresses the real environment more accurately. In the real wireless networks, heterogeneous networks are widespread, each of different transmission range, among other different features.
In this article, the proposed algorithm EMCDS is distributed and designed for DGB. The key point of the proposed algorithm lies in the fact that it also explicitly takes into consideration the residual energy of nodes when constructing a CDS, which is less concerned in the literature. In EMCDS, all nodes have different transmission ranges, and the size of constructed CDS is smaller than the compared algorithms by simulation. As for the energy performance, EMCDS is more energy efficient compared with the LEACH algorithm [7], and improves the network's lifetime by at least 20%.
The remainder of the article is organized as follows. Based on a discussion on related study in Section 2, Section 3 presents the proposed algorithm in terms of its basic concepts, different stages, and the corresponding algorithm for each stage. The numerical analysis of the proposed algorithm is detailed in Section 4, whereas Section 5 presents simulation results of the proposed algorithm and their corresponding analysis. The article concludes in Section 6.
2. Related study
In this section, some approximation MCDS construction algorithms are introduced. At first, we classify the algorithms for constructing a CDS into two kinds, which are maximal independent set (MIS)based algorithm and nonMISbased algorithm. Here, MIS is used to express the set of independent nodes in the network. A MISbased algorithm performs two steps, namely, to first generate a MIS and then to generate a CDS. In nonMISbased algorithm, algorithm for constructing a MIS is not needed and the algorithm for constructing a CDS is mainly based on one simple principle such as Rule1 in [8].
In [6], Blum et al. introduce some MCDS approximation algorithms in WSNs and Mobile Adhoc Networks. They point out that the two algorithms in [9] have motivated many designs of CDS construction. One of the algorithms in [9] is growing a spanning tree in a single phase, and the other is growing separate components in the first phase and connecting the components together in the second phase.
Alzoubi et al. proposed several distributed MCDS approximation algorithms in [10–12]. In [10], the distance between any pair of complementary subsets in the constructed MIS is exactly two hops. The algorithm has two phases. The first phase is constructing a MIS and the second phase is to construct a CDS where the connectors are selected. This algorithm's performance ratio is 8opt + 1, the message complexity is O(n log n), and the time complexity is O(n). The algorithm in [11] has two phases, and in the first phase the dominator selection is based on the lower level neighbour' states. In the second phase, the grey node with the maximum dominator nodes' degree is selected as the connector. The performance ratio is 8opt2. Its time complexity is O(n), and the message complexity is O(n log n). In [12], the author proposed a more complex algorithm containing two phases. The first phase is constructing a MIS, and the second phase is finding some connectors. Its performance ratio is 192opt + 48, and its time complexity is O(n), and the message complexity is O(n). The algorithms proposed by K.M. Alzoubi et al. are very classical of the MIS based kind. The performance ratios and message complexity as well as the time complexity are analysed, which motivated the following researchers in the process of designing the MIS based algorithms.
In [13–15], Thai et al. proposed some distributed CDS construction algorithms. In [13], a greedy algorithm called SMIS is proposed. SMIS has two phases. In the first phase, the MIS construction algorithm is described in [11]. In the second phase, the blackblue component is proposed. The black node is the dominator of the first phase, and the blue node is the dominator of the second phase. In the second phase, a greedy algorithm is used to find some grey nodes adjacent to at least 2 black nodes in different blackblue components. The performance of SMIS is (5.8 + ln 4)opt + 1.2. In [14], Thai et al. proposed two algorithms called TFA and TSA, respectively. TFA is an extension of SMIS in the DGB, and the algorithm codes are not changed, which explain that the algorithms implemented in UDG can be easily extended in DGB. The second algorithm TSA is an improved algorithm for TFA. TSA has two phases, and in the first phase, an MIS is constructed by choosing the nodes with the biggest radius as the dominators. The size of MIS constructed by TSA is smaller than that constructed by TFA. The second phases of TFA and TSA are the same. The performance ratio of TFA is (K + 2 + ln K)opt and TSA's performance ratio is not introduced in [14]. In [15], a onephase based CDS construction algorithm is proposed. The algorithm is better at maintenance since there is no need to build a tree or select a leader. The dominator nodes form an MIS, and the performance ratio of the algorithm is 172opt + 43. The time complexity is O(Δ) and message complexity is O(n Δ^{2}), where Δ is the maximum degree. Thai's algorithms described the CDS construction process in DGB, and proposed the performance ratios analysis method in DGB. Many researchers referred the methods proposed by Thai and get many achievements.
Except for the Alzoubi's and Thai's algorithms, there are also many MIS based algorithms such as [16–23], which also mainly have two stages and the CDS construction algorithms have different criterions. In [16–18], the criterion is the node degree. For example, in [16], the node degree is the number of the unmarked neighbour in the first stage, and in the second stage, the node degree is the number of unmarked nodes adjacent to the nonfragment nodes. The algorithm in [16] has the performance ratio 2H (Δ) + 1. The time and message complexities are O((n + C)Δ) and O(nC+ m + n log n respectively. In [19], the criterion for constructing a CDS is a timer, which is based on the transmission ranges of nodes. In [20], the criterion is the weight of node, and the weight is composed of the node degree and the battery power. In [21, 22], the criterion is the node id. The node with the largest id will become a dominator in [21], while the node with the smallest id will become a dominator in [22]. In [23], Kim et al. proposed two approximation MCDS construction algorithms called DCDSUBG and CCDSUBG respectively. In this article, the unit ball graph (UBG) is proposed to replace the UDG, and the 3D MCDS problem is researched in this article. The algorithms in this article also have two stages, respectively. And the first stage is constructing the MIS, the second stage is constructing a CDS. The performance ratio of CDSUBG is 14.937, and the message complexity is O(n^{2}). The algorithms introduced in this paragraph have good performance ratios and the size of CDS is very small. Every CDS constructed by these algorithms has a MIS and some connecters. But the energy of the network is not considered and most of the studies do not perform the energy efficient evaluations.
There are also some nonMISbased algorithms in [8, 24–28]. In [8, 24], Wu et al. proposed some distributed algorithms in UDG and DGB. In [8], a very simple marking process is proposed. All the marked nodes form a CDS. The CDS constructed in the first phase contains many redundant nodes. Wu et al. proposed two pruning algorithms called Rule1 and Rule2 to delete some redundant marked nodes. The performance ratio is not given in [8], but in [11] the performance ratio of this algorithm is proved O(n), where n is the number of nodes. The message complexity is Θ(m), where m is the number of edges in the UDG. The time complexity is O(Δ^{3}), where Δ is the maximum degree. In [24], the authors proposed an extended algorithm for the algorithm in [8]. The marking process is the same as that in [8], but the pruning process is improved and denoted by Rulek. Based on the Rulek, the size of the final constructed CDS is reduced. In [23], a hierarchical graph is constructed at first, and then the essential nodes are determinate in the graph according to the Rule1 in [23]. After the essential nodes determination phase is ended, there are some redundant dominators, which are deleted according to the Rule2 in [23]. The performance ratio of the algorithm in [23] is O(log n). In [26], Misra proposed an algorithm for constructing a MCDS by using Steiner tree, and the performance ratio of the algorithm is (4.8 + ln 5)opt + 1.2, the message complexity is O(n Δ^{2}) and the time complexity is O(n). In [27], Sakai et al. proposed timebased CDS construction algorithms named SI (SingleInitiator) version and MI (MultiInitiator) version, where SI version generates the smallest CDS with single initiator and MI version generates the smallest CDS with multiple initiators. Both have the mobility handling capability. In [28], Ding et al. proposed a distributed algorithm named α2hopCDS construction algorithm, where the node pair is used as the criterion to select the dominators. And the parameter α is adjustable, which is an upper bound times of the length of the shortest path. The performance ratio is H (δ*(δ1)/2), where H is a harmonic function and δ is the maximum degree in the graph. The algorithms introduced in this paragraph have very simple principles and the process of constructing CDS is very simple and rapid. In general, the distributed nonMISbased algorithms have the higher performance ratios compared with MISbased algorithms. But if the pruning stages are designed well, the size of CDS can be smaller. Most of the algorithms of nonMISbased algorithms are fully distributed and most of the MIS based algorithms are heuristic distributed algorithms. The algorithms introduced in this paragraph also have not the energy consideration, and none of them have the energy evaluations in these articles.
The objectives of the algorithms described above are minimizing the size of the CDS. But in some researches such as [29–38], the objectives of CDS construction are not or not only minimizing the size of the CDS. For example, in [29], Kim et al. proposed two centralized algorithms. The two algorithms have the constant performance ratios of the size and diameter of the constructed CDS. The diameter of the CDS is a new term considered for the constructed CDS. In [30], Thai et al. proposed a constant approximation algorithm for the strongly CDS (SCDS) problem. In [31], Thai et al. proposed a new algorithm CDSA to construct a 2connected virtual backbone. CDSA can resist the failure of one node. In [32], Wu et al. developed a notation of directional network backbone by using the directional antenna model, and then formed the problem of constructing a directional CDS (DCDS). Wu et al. also proposed a localized heuristic algorithm as well as two extensions of the algorithm for constructing a DCDS in [33].
In this article, we propose a distributed algorithm named EMCDS using heuristics, which belongs to the nonMIS type, but the constructed CDS approximately have the IS properties. In other words, the CDS constructed by EMCDS is approximately composed of two IS, and the size of CDS is very small. As for the energy consideration, we propose the dominator nodes selection rules which will be introduced later. In the simulation, the size of CDS is compared with some classical CDS construction algorithms and the energy efficient of EMCDS is also compared with LEACH.
3. Proposed algorithm EMCDS
3.1. Basic concepts
Sensor nodes are randomly distributed in the network field and have different transmission ranges. The link between any pair of nodes is bidirectional and the neighbour of one node is defined in Definition 1.
Definition 1: If and only if d(u, v) < min{r_{ u }, r_{ v }}, node v is a neighbour of u, and node u is a neighbour of v. d(u, v) denotes the distance between node u and v, r_{ u }, and r_{ v } denote the transmission ranges of node u and v, respectively.
A neighbour set N_{ v } records the neighbour of node v as defined in Definition 1. At the same time, node v has two sets Pa_{ v } and Ch_{ v }, which denote the parent node set and children node set, respectively.
Any node i has a tuple $\left({E}_{i},\mid R{N}_{v}^{i}\mid \right)$, where E_{ i } denotes the residual energy of node v and $R{N}_{v}^{i}$ denotes the reduced neighbour set computed by node i, and v is a neighbour of i. The reduced neighbour set is illustrated in Figure 1.
In Figure 1, node 1 covers nodes 2, 10, 11, 12, 10, 13, 14. Node 2 covers nodes 1, 10, 11, 12, 3, 4, 5, 6, 7, 8, 9. Assume all these nodes have the same transmission range, then we get that node 1's neighbour set is N_{1} = {2,10,11,12,13,14} and node 2's neighbour set is N_{2} = {1,3,4,5,6,7,8,9,10,11,12}. Then we define the reduced neighbour set $R{N}_{2}^{1}={N}_{2}{N}_{1}$, thus we get $R{N}_{2}^{1}=\left\{3,4,5,6,7,8,9\right\}$ and $\mid R{N}_{2}^{1}\mid =7$.
The reduced neighbour set $R{N}_{v}^{i}$ is a very important basis for both selecting the backbone nodes and constructing a MCDS in WSN.
3.2. Algorithm description
In order to understand EMCDS better, we first give the overview of the algorithm and then describe each part of EMCDS in detail.
3.2.1. Overview of EMCDS
In EMCDS, there are mainly two stages, which are CDS construction stage and pruning stage, respectively. In order to execute the EMCDS, all nodes have to be given an initial status and then exchange neighbour information among themselves to get ready for the CDS construction. We call this progress as the initial or bootstrapping stage. Following the bookstrapping stage are the main operations for generating a nearoptimal MCDS, which are composed of two steps: CDS construction and the CDS pruning stages.
In the initial stage, every node exchanges one message with their neighbour and put onehop neighbour into its own neighbour set N_{ i } at first, and then each node exchanges their neighbour's information with their neighbour and computes the reduced neighbour sets of every neighbour. For example, node i exchanges the neighbour's information with its all neighbours and then N_{ i } can be obtained. If node i get N_{ i }, then it exchanges N_{ i } with all its neighbours, and computes the reduced neighbour set $R{N}_{v}^{i}={N}_{v}{N}_{i}\left(v\in {N}_{i}\right)$ for any neighbour v and stores $R{N}_{v}^{i}$ for the following computation.
The CDS construction stage is divided into two substages, which are CS construction stage and DS construction stage, respectively. In the CS construction stage, an initial node is selected by the BS as the root node according to its residual energy. In order to select some nodes belonging to CDS it executes the algorithm in this stage. And after the nodes selected by initial node, all the selected nodes need to execute the algorithm in this stage and select their neighbour nodes as the backbone nodes. This backbone nodes selection progress is executed constantly in this substage, and only the newly selected backbone nodes execute this progress. If there are no new backbone node selected, this substage is ended. The resulting set is a connected set. Then we need to make sure the nodes in this set can cover all or almost all other nodes in the network, which triggers the next stage, i.e., DS construction. In the DS construction stage, the uncovered nodes by the CS will select its neighbour nodes covered by CS according to some mechanism as backbone node, and the progress is executed repeatedly until there are no newly selected backbone nodes. At the end of the DS construction stage, the constructed CS is expanded to a CDS.
In order to minimize the size of CDS, the pruning stage is designed. If all of a backbone node's nonbackbone neighbour are covered by at least two backbone nodes (including the backbone node itself), the backbone node is redundant and deleted from the CDS.
In the following, the two main stages, namely CDS construction stage and the pruning stage, are introduced in detail. In order to simplify the algorithm description, it is assumed that each node receives the messages broadcasted from their neighbour and updates its neighbour' information accordingly in the following stages.
3.2.2. CDS construction
CDS construction follows two steps: firstly to construct a CS and then to update this CS into a dominating set, i.e., CDS.
CS construction substage: In this substage, the node with the maximum residual energy is selected as the initial node, which is also called root node. If the initial node is selected, it marks itself black, and selects the black nodes from its neighbour. The selection criterion is defined as ProcedureI, which is also used by other selected black nodes. In order to execute the ProcedureI, the initial node or the newly selected black nodes need define a temp set denoted as ${N}_{i}^{new}$. The ProcedureI is only executed once at the newly selected black node.
The ProceduceI's algorithm is shown as follow:
ProcedureI: The black node selection criterion of the newly selected black node i
Step1: ${N}_{i}^{new}=\Phi $, puts the white neighbour into ${N}_{i}^{new}$
Step2: Selects white nodes $\left\{{v}_{1},{v}_{2},...,{v}_{n}\right\}\left({v}_{k\left(1\le k\le n\right)}\in {N}_{i}^{new},{E}_{{v}_{k}}\ge {E}_{u},\forall u\in {N}_{i}^{new},u\ne {v}_{k}\right)$, TE_{ i } = TE_{ i } ∪{v_{k(1 ≤ k ≤ n)}}.
Step3: Selects nodes $\left\{{v}_{1},{v}_{2},...,{v}_{n}\right\}\left({v}_{k\left(1\le k\le n\right)}\in T{E}_{i},\mid R{N}_{{v}_{k}}^{i}\mid \ge \mid R{N}_{u}^{i}\mid ,\forall u\in T{E}_{i},u\ne {v}_{k}\right)$, TRN_{ i } = TRN_{ i } ∪{v_{k(1 ≤ k ≤ n)}}.
Step4: Selects a node v(v ∈ TRN_{ i }, id_{ u } > id_{ u }, ∀u ∈ TRN_{ i }, u ≠ v), B_{ i } = B_{ i }∪{v}.
Step5: ${N}_{i}^{new}=\Phi $, and selects white nodes {u_{1},u_{2,...,}u_{ n }}(u_{k(1 ≤ k ≤ n)}∈N_{ i },∀v ∈ B_{ i }, u ∉ N_{ v }), ${N}_{i}^{new}={N}_{i}^{new}\cup \left\{{u}_{k\left(1\le k\le n\right)}\right\}$
Step6: if ∀v ∈N_{ i }\B_{ i }, ∃u ∈B_{ i }, v ∈N_{ u }, return B_{ i }, Ch_{ i } = B_{ i }, else go to Step2.
In ProcedureI, E_{ v } and E_{ u } denote the energy of v and u, respectively. TE_{ i } and TRN_{ i } are temp set used for computing. B_{ i } denotes the selected black node set. The selection criterion is illustrated in Figure 2.
In Figure 2, node 1 computes the black nodes. At first, node 1 selects the nodes with the maximum residual energy, then nodes 2 and 4 are selected and TE_{1} = {2,4}. Then node 1 selects the node with the maximum size $R{N}_{v}^{1}$ from TE_{1}. Because $R{N}_{2}^{1}=\left\{7,8,9\right\}$ and $R{N}_{4}^{1}=\left\{11,12\right\}$, thus node 2 is selected and B_{1} = {2}, which is shown in Figure 2b. According to Step4, ${N}_{1}^{new}=\left\{4,5,6\right\}$. Then node 1 computes the next black node, and according to Step1, TE_{1} = {4}. Then node 4 is selected as a black node, and B_{1} = {2, 4} shown in Figure 2c. According to Step4, ${N}_{1}^{new}=\left\{5\right\}$, thus node 5 is selected as a black node, and B_{1} = {2, 4, 5} shown in Figure 2d. Finally, the selected neighbour of node 1 covers all the node 1's neighbour.
The CS construction algorithm is implemented according to the ProcedureI. At first we defined the node set of the network as N. The distributed algorithm is shown as follow.
CS construction algorithm (CCA)
For the BaseStation (BS)

1.
Selects the initial node i (E_{ i } > E_{ k }, ∀k∈ N)

2.
Sets CS construction timer (ctimer)

3.
Sets DS construction timer (dtimer)

4.
Sets pruning stage timer (ptimer)

5.
Sends a black flag to i, broadcasts the timers in the network
For the newly selected black node i

1.
If N_{i} contains white nodes

2.
Executes ProcedureI

3.
Broadcasts black message containing B_{i}
For any white node u

1.
If received a black message from v

2.
If count (black message) > 1

3.
Mark itself grey, broadcasts a grey message

4.
Else if count (black message) = 1

5.
If u ∈ B_{ v }

6.
Marks itself black, Pa_{ u } = Pa_{ u }∪{v}

7.
End

8.
End

9.
End
For the stopping criterion

1.
If the ctimer is up or no black nodes are newly selected, the stage is completed

2.
For any white node u

3.
If count (black message) = 1

4.
Marks itself grey, broadcasts a grey message

5.
End

6.
End
After the CS construction substage is ended, if the network is redundant and all nodes are fully covered, maybe the CS can cover all the nodes in the network. But some special cases maybe also exist, which are shown in Figure 3.
In Figure 3a, the node 1 is the initial node selected by the BS. Then node 1 computes the black nodes, according to ProcedureI, nodes 2 and 3 are selected as black node. Then nodes 2 and 3 compute their black children according to ProcedureI, finally, nodes 4 and 5 are selected. Then node 6 received two black messages from nodes 4 and 5, thus node 6 turns grey. Thus nodes 7, 8, 9 are isolated and not covered by CS. According to the CCA, the isolated nodes in Figure 3b are nodes 4, 8 and 9.
In order to solve the isolating nodes problem, another construction algorithm should be designed, which is used for constructing a DS based on the CS constructed in the first substage. The DS construction algorithm is implemented at the second substage called the DS construction substage.
DS construction substage: After the timer of the first substage is up, the DS construction substage is beginning. In this substage, if white node i covers grey neighbour, it selects the grey node as the black node according to the ProcedureII, which is shown as follows:
ProcedureII: The black node selection criterion of the isolated white node i
Step1: Selects all grey neighbour {v_{1}, v_{2},...v_{ n }}⊆ N_{ i }, G_{ i } = Φ,G_{ i } = G_{ i }∪{v_{1}, v_{2},...v_{ n }}
Step2: Selects grey nodes $\left\{{v}_{1},{v}_{2},...,{v}_{n}\right\}\left({v}_{k\left(1\le k\le n\right)}\in {G}_{i},{E}_{{v}_{k}}\ge {E}_{u},\forall u\in {G}_{i},u\ne {v}_{k}\right)$, TE_{ i } = TE_{ i } ∪{v_{k(1 ≤ k ≤ n)}}.
Step3: Selects nodes $\left\{{v}_{1},{v}_{2},...,{v}_{n}\right\}\left({v}_{k\left(1\le k\le n\right)}\in T{E}_{i},\mid R{N}_{{v}_{k}}^{i}\mid \le \mid R{N}_{u}^{i}\mid ,\forall u\in T{E}_{i},u\ne {v}_{k}\right)$, TRN_{ i } = TRN_{ i } ∪{v_{k(1 ≤ k ≤ n)}}.
Step4: Selects a node v (v ∈ TRN_{ i }, id_{ u } > id_{ u }, ∀u ∈ TRN_{ i }, u ≠ v), B_{ i } = B_{ i } ∪{v}.
ProcedureII is similar to ProcedureI, and the isolated white node selects the grey with the maximum residual grey neighbour, and then selects the grey neighbour with the minimum reduced neighbour set size. Thus in general, white node selects the node with more energy and closest to itself. An example is shown in Figure 4.
In Figure 4a, nodes 4, 8 and 9 are isolated, and according to ProcedureII, nodes 4 and 9 have grey neighbour, then node 4 selects nodes 2 and 10 as the node with the maximum residual energy, TE_{4} = {2,10}, node 9 selects node 7 as the node with the maximum residual energy, TE_{9} = {7}. According to ProcedureII, node 4 selects nodes 2 and 10 as the nodes with the minimum reduced neighbour set size, because $\mid R{N}_{2}^{4}\mid =2$ and $\mid R{N}_{10}^{4}\mid =2$, mean while node 9 selects 7 as the nodes with the minimum reduced neighbour set size. According to Step4, node 4 selects 10 as its black node, and node 9 selects 7 as its black node shown in Figure 4b. If node 8 received the black messages from node 4, it executes the ProcedureII and selects the only grey node 4 as a black node, which is shown in Figure 4c.
The algorithm of construction the DS is shown as follow:
DS construction algorithm (DCA)

1.
Computes its grey neighbour set G_{i} = {v_{1},v_{2,...,}v_{ n }}, v_{k(1 ≤ k ≤ n)}is grey

2.
If G_{i} ≠ Φ

3.
Executes ProcedureII, sends an inviting black message containing B_{ i }

4.
Marks itself grey, broadcasts a grey message

5.
End
For any grey node v

1.
If received an inviting black message from i

2.
If v ∈ B_{ i }

3.
Marks itself black, broadcasts a black message

4.
End

5.
End
For the stopping criterion
1. If the dtimer is up or no black nodes are produced, the stage is completed
As the example in Figure 4, nodes 4 and 9 select nodes 10 and 7 as their black nodes, respectively. Then nodes 4 and 9 send messages to nodes 10 and 7, respectively, thus nodes 10 and 7 mark themselves black and broadcast a black message as shown in Figure 4b. At the same time, nodes 4 and 9 broadcast a grey message, thus node 8 knows node 4 has turn grey. Then node 8 will select node 4 as its black node according to ProcedureII, and at last node 8 marks itself grey and node 4 turns black as shown in Figure 4c.
The first stage contains two substages, and the first stage is constructing a CS, the second stage is constructing a DS, and finally, a CDS is constructed. In the following section, a prune stage is introduced, which deletes the redundant black node for minimize the size of CDS.
The constructed CDS in the first stage is connected and dominating all the nodes in the network. But in order to construction an approximation minimum CDS, the size of the CDS should be the smaller the better. Thus deleting the redundant black nodes in the CDS is necessary.
As to the CDS constructed in the first stage, the redundant black nodes always exist, and in Figure 5 some examples are introduced.
In Figure 5a, nodes 4 and 6 are isolated, and according to the DS construction substage, Figure 5b can be got, and nodes 2, 5 turn black, nodes 4 and 6 turn grey. In Figure 5b, all the grey neighbour of node 5 is covered by node 2 and thus node 5's grey neighbour can send packets to node 2, thus black node 5 is redundant and turns grey shown in Figure 5c. The algorithm of pruning stage is described as follow in detail.
3.2.3. Pruning stage
At first, we define the number of nodes in the network as n, and id_{ i } denotes the identifier of node i. G_{ i } denotes the grey nodes set of node i.
The algorithm of Pruning Stage is shown as follow:
Pruning redundant black nodes algorithm (PRA)
For any black node i

1.
If Ch_{i} = Φ

2.
Sets a timer T_{ i } = ptimer•(id_{ i }/n)

3.
If T_{ i } is up

4.
Requires N_{ v }(∀v ∈G_{i})

5.
If ∀v ∈ G_{ i }, ∃black node u, u ∈ N_{ v }, i ≠ u

6.
Marks itself grey, broadcasts a grey message

7.
End

8.
End

9.
End
For the stopping criterion
1: if the dtimer is up, the stage is completed
In Figure 5b, nodes 2 and 5 are leaf nodes and set T_{2} and T_{5}, respectively. Clearly, T_{5} > T_{2}, thus node 2 requires the N_{6} and N_{4}, and by computation the condition ∀v ∈ G_{ i }, ∃black node u, v ∈ N_{ u } is not met and node 2 stays black. When T_{5} is up, node 5 requires the N_{4}, and by computation node 4 is covered by node 2, then node 5 turns grey and broadcasts a grey message. Thus, Figure 5c is the final topology.
4. Numerical analysis of the proposed algorithm
In this section, the properties of EMCDS are analysed and all nodes have the same residual energy. At first, the coverage of the CS constructed by CCA is analysed. Then we introduce a kLink network, in which the CS can approximately dominate all the nodes in the network. Then we give some proprieties of the CS, and analyse the performance ratio of the CS in the kLink network. Finally, the message complexity is analysed.
4.1. Dominant of CS
In order to introduce the dominant of CS, we first propose a notion called kLink Network, where the k stands for the network's connectivity.
4.1.1. kLink network
In this network, any node i has a neighbour set N_{ i }, and kLink network is defined as follow:
Definition 2: Any node i in the network, if condition $\mid pat{h}_{i}^{v}\mid \ge k\left(\forall v\in {N}_{i},k\ge 1\right)$ is satisfied, then this network is a kLink Network (kLN).
In Definition 2, $pat{h}_{i}^{v}$ is a collection which records the twohop and onehop paths between nodes i and v. Figure 6 illustrates the meaning of this definition.
In Figure 6a, N_{1} = {2,3,4,5,6}, N_{2} = {1,3,6}, N_{3} = {1,2,5}, N_{4} = {1,5}, N_{5} = {1,3,4}, N_{6} = {1,2}, then we can get the following paths:
In Figure 6a, the minimum $\mid pat{h}_{1}^{v\left(2\le v\le 6\right)}\mid =2$, thus the network of this figure is a 2Link Network. Meanwhile, Figure 6b is a 1Link Network. In general, the k is bigger, the connectivity of the network is stronger.
4.1.2. Relationship between klink network and dominant of CS
The dominant of CS is to be verified by the simulation in Section 5. By simulation, we find that the CS can dominate almost all the nodes in the network. And as the k increases, the number of uncovered nodes by CS becomes smaller, which illustrates that if the network's connectivity is stronger the dominant of CS is stronger. Thus, the CS is approximately a CDS.
4.2. Properties of EMCDS
In this section, some key properties of the proposed EMCDS are analysed. The properties and the way the analysis are conducted follow more or less these proposed in [39]. However, these analyses are carried out in a new algorithm context where energy efficiency is considered.
Lemma 1: The CS constructed by the CCA is a connected set.
Prove: Given any pair of black nodes (u, v)(u ∈ CS, v ∈ CS, u ≠ v), because u, v have their parent nodes, respectively, and according to CCA, u, v have a path connecting the root node. If u, v is disconnected, then the root nodes of u and v are not the same node, and thus the network has at least two root nodes, which contradicts with the CCA, where there is only one root node. Thus, u and v are connected, and the CS is a connected set.
Lemma 2: The DS constructed by the DCA is a dominating set.
Prove: Assume DS is not a dominating set, then at least one white node i exists after the timer is up. And the white node i has no grey neighbour, or it will execute the ProcedureII and select a grey neighbour as a black node. If i has no white neighbour also, then i is isolated, else we can get a white node v mhop away from node i with grey neighbour, then v will select a grey neighbour as a black node, and change its state grey, and after sever times, node i will turn grey, which contradicts with the assumption, thus the DS constructed by the DCA is a dominating set.
Lemma 3: Any black node belonging to the CS has only one parent black node.
Prove: Given any black node i, which belongs to the CS. If i has more than one parent black nodes, then before i turns black, it received two black messages. According to the CCA, i should turn grey and broadcast a grey message, which contradicts with the condition that i is a black node. Thus, any black node belonging to the CS has only one parent black node.
Lemma 4: In the CS, if any pair nodes which are not parentchild relationship are not adjacent.
Prove: Given any pair of black nodes (u, v)(u ∈ CS, v ∈ CS, u ≠ v), and the relation of the two nodes is not parentchild relationship. If u and v are adjacent, then suppose u turns black before v. v will receive a black message from u, and v also receives a black message from its parent, thus v will turn grey and broadcast a grey message, which contradicts with the condition that u and v are black nodes. Thus Lemma 4 is proven.
According to the CCA, we know that the constructed CS is a tree, and the initial node selected by BS is the root node. Assume every node in this tree has a level, then we define the level of the root node is 0, and the level of the root node's children is 1. As the CCA is executed, all the black nodes in CS have a level.
Lemma 5: The CS is composed by two independent sets.
Prove: In CS, each node has a level, and we use ES and OS storing the nodes with even level and odd level, respectively.
Given any pair of nodes(u, v)(u ∈ ES, v ∈ ES, u ≠ v), if u and v are adjacent, then suppose u turns black before v. Let v^{parent} denotes the parent node of v, then the level of v^{parent} is odd level. When all the nodes executes the CCA, v will receive two black messages from u and v^{parent}, thus v will turn grey, which contradicts with the condition that u and v are black nodes. Thus any pair of nodes belonging to ES are not adjacent. And similarly, any pair of nodes belonging to OS are not adjacent. Thus we get that ES and OS are independent set and Lemma 5 is proven. This lemma will be used in the performance ratio analysis below.
4.3. Performance ratio
In this section, the performance ratio is introduced, which is a notion about the ratio of the size of constructed CDS to the minimum size of the CDS in this network. In general, the performance ratio is always multiplied by the size of the MCDS and is described as the upper bound of constructed CDS.
Because this algorithm can be used in both UDG and DGB, EMCDS have two bounds. In the next section, we introduce the CDS bound in UDG at first and then introduce the CDS bound in DGB. The performance ratio is an approximation ratio. This is because the analysis is based on the CS, which is composed of two IS.
4.3.1. Upper bound of EMCDS in UDG
According to [14], we have the following equation:
where k = r_{ max }/r_{ min }. And K is an upper bound number of a node's independent neighbour. In UDG, the upper bound is 5, and r_{ max } = r_{ min }.
According to [22], the black nodes in CDS have two kinds of coverage types. The first type is that a black node is not covered by another black node when it selects its children black nodes. The second type is that a black node is covered by other black nodes when it selects its children black nodes. In EMCDS only initial node belongs to the first type, and all other node belongs to the second type.
In UDG, if a node is the first type, then it dominates at most five independent neighbours. If a node is the second type, then in general it dominates at most three independent neighbours, shown in Figure 7.
In Figure 7, x and u cover each other, and node x covers the least area size of node u, then angle ∠yxz = 2π/3, and node u has at most 4π/3 area to select its independent black neighbour. Then the maximum number of independent neighbour is 3.33 in general, in this article we define the maximum black neighbour number of the second type as 3.
According to [22], the following formula gives the upper bound of the CDS both in UDG and DGB:
In (2), OPT is an optimal solution or minimum solution of CDS problem in UDG and DGB, opt is the size of OPT, which is an minimum size of CDS in UDG and DGB. ${n}_{k}=\u2308\frac{\mathsf{\text{ln}}k}{\mathsf{\text{ln}}\left(2\mathsf{\text{cos}}\left(\pi /5\right)\right)}\u2309$, and S are the size of the MIS.
In this article, if in the UDG network, (2) can be changed into follow:
According to [22], t/(optt) ≤ 5/1, then we can get the following formulas:
Because the CDS constructed in the first stage approximately dominates all the nodes in the network, and the CDS is composed of two independent sets ES and OS, then the size of CDS is bounded by follows:
4.3.2. Upper bound of EMCDS in DGB
In DGB, if a black node is the first type, then it at most dominates 9n_{ k } independent neighbour. And if a black node is the second type, then it at most dominates⌈(4/3)π/α⌉n_{ k } independent neighbour, where α = π/5, thus the maximum dominated independent neighbour size is 7n_{ k }.
Then we can get the upper bound of the MIS:
According to (4), the following formula is derivated:
The size of CDS constructed in the first stage has the upper bound:
4.3.3. The unified upper bound of EMCDS in UDG and DGB
In order to bound the size of EMCDS both in UDG and DGB, then we find the critical condition as follow:
And if k > 1.45, then CDS is bounded by $17\frac{1}{3}{n}_{k}opt$, else CDS is bounded by $9\frac{1}{3}opt$.
4.4. Message complexity
EMCDS contains two stages, and the first stage is the main stage. The constructed CS in the first stage dominates almost all of the nodes in the network.
In the first stage, the number of messages broadcasted in the CS construction stage accounts for almost all messages broadcasted in the first stage. According to the CCA, every white node only broadcasts one message, which is black message or grey message. Then the message complexity in this stage is O(n), where n is the number of nodes in the network.
In the second stage (pruning stage), the redundant black nodes should be deleted. By simulation, we can found that, the number of the black nodes pruned in the second stage is small, and the messages broadcasted in this stage can be ignored.
Thus the message complexity of EMCDS is O(n).
5. Performance evaluation and analysis
5.1. Evaluation design
In this section, the performance of EMCDS is evaluated. In order to compare the size of CDS, we involve other algorithms, which are the second algorithm of Xiang's (denoted by XSA) in [22] and the second algorithm of Thai's (denoted by TSA) in [14]. We adopt the LEACH protocol to compare the energy efficient of EMCDS against. At the same time, the dominant of CS constructed by the CCA is evaluated, aiming to illustrate that the CS dominates almost all the nodes in the network, namely a good approximation can be achieved. In summary, the evaluation part is composed of three parts: the CS domination evaluation, the CDS size evaluation and the energy efficient evaluation.
Before simulation, some symbols are defined. M denotes the side length of the square network area, and N denotes the number of nodes in the network. Tr_{ min } denotes the minimum transmission range of nodes, and Tr_{ max } denotes the maximum transmission range of nodes in the network. The transmission radio of node i is computed by TR = Tr_{ min } + Random(0,1)*(Tr_{ max }Tr_{ min }), where Random(0,1) is a random number between 0 and 1.
5.2. Domination of CS
In this section, we set the transmission range [20,50] and [20,60]. And according to the kLinked Network definition, k is set as 1, 2 and 3. We set the number of nodes of the network from 50 to 95 with the step by 5. All nodes are randomly distributed in the network.
In order to illustrate the domination of CS, we evaluated the number of uncovered nodes after the first substage CCA. We define the network side length M as 100 m. The network with different transmission ranges which are [20,50] and [20,60] are evaluated and the following figures are obtained.
From Figure 8, we find that the number of uncovered nodes by the CS is very small both with the transmission ranges [20,50] and [20,60]. And Figure 8a, b illustrates that the CS dominates almost all the nodes in the network. And from Figure 8, we find that the number of uncovered nodes is smaller as the K is bigger, which explains that the connectivity of the network is stronger the domination of CS is stronger.
Because the CS dominates almost all the nodes in the network, we find that the CS is approximately a CDS of the network. Thus the performance ratio of CDS is analysed based on the CS, and the performance ratio is an approximation performance ratio.
5.3. CDS size
In this section, M = 100, and the number of nodes is from 10 to 100 with the step by 10. In order to fully evaluate the performance of CDS size, we define four scenarios which have transmission ranges [20,40], [30,50], [40,60] and [50,70], respectively. The nodes are randomly distributed in the network, and all points in the figures are simulated 50 times. The performance of CDS size of EMCDS is shown in Figure 9.
From Figure 9, we find that the CDS size of EMCDS is the smallest among all the compared algorithms, and the size of CDS is increases as the number of nodes becomes bigger. And the CDS size of EMCDS is always the smallest among the compared algorithms as the number of nodes increases. By compared with (a), (b), (c) and (d), we can find that the CDS size becomes smaller as the transmission range increases, which is because that the transmission range is bigger the covered area is larger, and at the same time the network area size is finite, then the size of CDS is smaller. From Figure 9, we get a conclusion that the CDS size of EMCDS is better than the compared algorithms.
5.4. Energy efficiency
In this section, we compare the routing protocol LEACH [7] with EMCDS, and compare the EMCDS with itself by changing the parameters. As we known, LEACH is a protocol with some clusters and cluster heads collect and confuse the collected packets and then send the confused packets to base station (BS). In this simulation, every node sends one packet to its cluster head and every cluster head receives packets from all the nodes in its cluster in each round. In similarly, EMCDS constructs one CDS through CCA and DCA and PRA, and after the CDS is constructed all nodes send one packet to its parent nodes, and all parent nodes confuse the received packets and send the confused packets to its parents in each round.
In the following simulation, we use the notion TD, which denotes that in each round every node send TD packets to its parent node or its cluster head. The definition of TD means that if TD = 1, we only combine one round into a single round, and if TD = 2, we combine two rounds into a single round and the nodes in this scenario send two packets each. In the simulation, we let TD = 1, 2, 3, 4, and compare the network lifetime in this scenarios with LEACH.
In this article, the network lifetime is defined as the round when the first node dies (the residual energy of the node is zero). The initial energy of nodes is set 0.5 J, the other parameters of the amplifier are the same as in [7]. The network area size is 100 m * 100 m, and the number of nodes is from 10 to 100 with the step by 10. All the nodes are randomly distributed in the network. In order to fully compare with LEACH, we select two transmission ranges, which are [60,8] and [142,142], respectively. In the [142,142] scenarios, all nodes cover other nodes in the network, which is similar with the LEACH. The following figures give the results.
From Figure 10, we find that the network lifetime of EMCDS is bigger than LEACH with different values of TD. The network lifetime based on EMCDS is longer than that of LEACH at least by 20%.
As the TD increases, the network lifetime decreases, which is because that the cluster head or the nodes in CDS received and transferred too many packets in a rounds and causes energy balance of nodes worse. So, as the TD increases the energy balance is worse, and the network lifetime is smaller.
In order to compare with EMCDS itself, we defined the values of TD as 1, 2, 3 and 4. The transmission ranges are selected as [20,40], [30,50], [40,60], [142,142]. The number of nodes and the network area size are the same as that of LEACH. Through simulation, we get the following results.
From Figure 11, we find that the network based on EMCDS with different TDs has different lifetimes. In general, the TD is smaller the lifetime is bigger, and as the transmission range increases the network lifetime increases.
According to the definition of TD, if we use TDL(i) denotes the TD*lifetime, which means TDL(1) = 1*lifetime (TD = 1), TDL(2) = 2*lifetime (TD = 2), TDL(3) = 3*lifetime (TD = 3), TDL(4) = 4*lifetime (TD = 4), we find that TDL(1), TDL(2), TDL(3) and TDL(4) are approximately equal to each other at a finite number of nodes.
According to the definition of TDL(i), the TDL(i) also denotes the number of packets sent by nodes. Thus, although the TD increases, the number of the network packets sent by nodes is almost not changed, which indicates that the energy of the network is mainly consumed by the data packets and the messages complexity of the EMCDS is low.
6. Conclusions
In this article, an approximation MCDS distributed construction algorithm EMCDS is proposed. In EMCDS, there are two stages, which are CDS construction stage and pruning stage respectively. The constructed CDS is approximately composed of two IS. The performance ratio is approximately determined according to the parameter k, if k > 1.45, the performance ratio is 17.33n_{ k }opt, else the performance ratio is 9.33opt. By simulation, the size of CDS constructed by EMCDS is smaller than the compared algorithms, and the energy efficient of EMCDS is better than compared algorithm LEACH.
In the future work, we will study the CDS construction algorithms further in wireless network with mobility and directional links.
References
 1.
Akyildiz IF, Su W, Sankarasubramaniam Y, Cayirci E: A survey on sensor networks. IEEE Commun Mag 2002, 40(8):102114. 10.1109/MCOM.2002.1024422
 2.
Pottie GJ: Wireless sensor networks. In Proceedings of Information Theory Workshop. Killarney, Ireland; 1998:139140.
 3.
Burkhart M, Rickenbach PV, Wattenhofer R, Zollinger A: Does topology control reduce interference? In Proceedings of ACM MobiHoc. Roppongi, Japan; 2004:919.
 4.
Jain K, Padhye J, Padmanabhan VN, Qiu L: Impact of interference on multihop wireless network performance. Wirel Netw 2005, 11(4):471487. 10.1007/s1127600517699
 5.
Bao L, GarciaLunaAceves JJ: Topology management in ad hoc networks. In Proceedings of ACM MobiHoc. Annapolis, Maryland, USA; 2003:129140.
 6.
Blum J, Ding M, Thaeler A, Cheng X: Connected Dominating Set in Sensor Networks and MANETs. Handbook of Combinatorial Optimization, Kluwer Academic Publishers; 2004:329369.
 7.
Heinzelman WB, Chandrakasan AP, Balakrishnan H: An applicationspecific protocol architecture for wireless microsensor networks. IEEE Trans Wirel Commun 2002, 1(4):660670. 10.1109/TWC.2002.804190
 8.
Wu J, Li H: On calculating connected dominating set for efficient routing in ad hoc wireless networks. In Proceedings of the 3rd International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communications. Seattle, Washington, USA; 1999:714.
 9.
Guha S, Khuller S: Approximation algorithms for connected dominating sets. Algorithmica 1998, 20(4):374387. 10.1007/PL00009201
 10.
Alzoubi KM, Wan PJ, Frieder O: New distributed algorithm for connected dominating set in wireless ad hoc networks. In Proceedings of the 35th Annual Hawaii International Conference on System Sciences (HICSS'02). Big Island, Hawaii, USA; 2002:38493855.
 11.
Wan PJ, Alzoubi KM, Frieder O: Distributed construction of connected dominating set in wireless ad hoc networks. In Proceedings of the TwentyFirst Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 2002). New York, New York USA; 2002:15971604.
 12.
Alzoubi KM, Wan PJ, Frieder O: Messageoptimal connected dominating sets in mobile ad hoc networks. In Proceedings of the 3rd ACM International Symposium on Mobile Ad Hoc Networking & Computing. EPFL Lausanne, Switzerland; 2002:157164.
 13.
Li Y, Thai MT, Wang F, Y CW, Wan PJ, Du DZ: On greedy construction of connected dominating sets in wireless networks. Wirel Commun Mobile Comput 2005, 5(8):927932. 10.1002/wcm.356
 14.
Thai MT, Wang F, Liu D, Zhu S, Du DZ: Connected dominating sets in wireless networks with different transmission ranges. IEEE Trans Mobile Comput 2007, 6(7):721730.
 15.
Li Y, Zhu S, Thai MT, Du DZ: Localized construction of connected dominating set in wireless networks. In Proceedings of US Nat'l Science Foundation Int'l Workshop Theoretical Aspects of Wireless Ad Hoc, Sensor and PeertoPeer Networks. Ft. Lauderdale, Florida, USA; 2004:19.
 16.
Das B, Bharghavan V: Routing in ad hoc networks using minimum connected dominating sets. In Proceedings of IEEE International Conference on Communications. Montreal, Quebec, Canada; 1997:376380.
 17.
Raei H, Sarram M, Adibniya F, Tashtarian F: Optimal distributed algorithm for minimum connected dominating sets in wireless sensor networks. In Proceedings of the 5th IEEE International Conference on Mobile Ad Hoc and Sensor Systems (MASS 2008). Atlanta, Georgia; 2008:695700.
 18.
Rai M, Verma S, Tapaswi S: A heuristic for minimum connected dominating set with local repair for wireless sensor networks. In Proceedings of the Eighth International Conference on Networks (ICN'09). Gosier, Guadeloupe, France; 2009:10611.
 19.
Raei H, Fathi MA, Akhlaghi A, Ahmadipoor B: A new distributed algorithm for virtual backbone in wireless sensor networks with different transmission ranges. In Proceedings of IEEE/ACS International Conference on Computer Systems and Applications. Rabat, Morocco; 2009:983988.
 20.
Zeng Y, Jia X, He Y: Energy efficient distributed connected dominating sets construction in wireless sensor networks. In Proceedings of Int'l Wireless Comm and Mobile Computing Conf (IWCMC'06). Vancouver, British Columbia, Canada; 2006:797802.
 21.
Funke S, Kesselman A, Meyer U, Segal M: A simple improved distributed algorithm for minimum CDS in unit disk graphs. ACM Trans Sensor Netw 2006, 2(3):444453. 10.1145/1167935.1167941
 22.
Xiang Y, Kai X, Cheng W, Park EK, Rotenstreich S: Distributed virtual backbone construction in sensor networks with asymmetric links. Wirel Commun Mobile Comput 2009, 11(8):10511060.
 23.
Kim D, Zhang Z, Li X, Wang W, Wu W, Du DZ: A better approximation algorithm for computing connected dominating sets in unit ball graphs. IEEE Trans Mobile Comput 2010, 9(8):11081118.
 24.
Dai F, Wu J: An extended localized algorithms for connected dominating set formation in ad hoc wireless networks. IEEE Trans Parallel Distrib Syst 2004, 15(10):908920. 10.1109/TPDS.2004.48
 25.
Xie R, Qi D, Li Y, Wang JZ: A novel distributed MCDS approximation algorithm for wireless sensor networks. Wirel Commun Mobile Comput 2009, 9(3):427437. 10.1002/wcm.547
 26.
Misra R, Mandal C: Minimum connected dominating set using a collaborative cover heuristic for ad hoc sensor networks. IEEE Trans Parallel Distrib Syst 2010, 21(3):292302.
 27.
Sakai K, Huang SCH, Ku WS, Sun MT, Cheng X: Timerbased cds construction in wireless ad hoc networks. IEEE Trans Mobile Comput 2011, 10(10):13881402.
 28.
Ding L, Wu W, Willson J, Du H, Lee W, Du DZ: Efficient algorithms for topology control problem with routing cost constraints in wireless networks. IEEE Trans Parallel Distrib Syst 2011, 22(10):16011609.
 29.
Kim D, Wu Y, Li Y, Zou F, Du DZ: Constructing minimum connected dominating sets with bounded diameters in wireless networks. IEEE Trans Parallel Distrib Syst 2009, 20(2):147157.
 30.
Thai MT, Tiwari R, Du DZ: On construction of virtual backbone in wireless ad hoc networks with unidirectional links. IEEE Trans Mobile Comput 2008, 7(9):10981109.
 31.
Wang F, Thai MT, Du DZ: On the construction of 2connected virtual backbone in wireless networks. IEEE Trans Wirel Commun 2009, 8(3):12301237.
 32.
Yang S, Wu J, Dai F: Efficient directional network backbone construction in mobile ad hoc networks. IEEE Trans Parallel Distrib Syst 2008, 19(12):16011613.
 33.
Wu J, Dai F: Virtual backbone construction in MANETs using adjustable transmission ranges. IEEE Trans Mobile Comput 2006, 5(9):11881200.
 34.
Adjih C, Jacquet P, Viennot L: Computing connected dominated sets with multipoint relays. Ad Hoc Sensor Netw 2005, 1: 2739.
 35.
Wang Y, Wang W, Li XY: Efficient distributed lowcost backbone formation for wireless networks. IEEE Trans Parallel Distrib Syst 2006, 17(7):681693.
 36.
Stojmenovic I, Seddigh M, Zunic J: Dominating sets and neighbor eliminationbased broadcasting algorithms in wireless networks. IEEE Trans Parallel Distrib Syst 2002, 13(1):1425. 10.1109/71.980024
 37.
Wu J, Lou W, Dai F: Extended multipoint relays to determine connected dominating sets in MANETs. IEEE Trans Comput 2006, 55(3):334347.
 38.
Wu J, Dai F, Yang S: Iterative local solutions for connected dominating sets in ad hoc wireless networks. IEEE Trans Comput 2008, 57(5):702715.
 39.
Liu Z, Wang B, Tang Q: Approximation two independent sets based connected dominating set construction algorithm for wireless sensor networks. Inf Technol J 2010, 9(5):864876.
Author information
Additional information
Competing interests
The authors declare that they have no competing interests.
Authors’ original submitted files for images
Below are the links to the authors’ original submitted files for images.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
About this article
Cite this article
Tang, Q., Yang, K., Li, P. et al. An energy efficient MCDS construction algorithm for wireless sensor networks. J Wireless Com Network 2012, 83 (2012). https://doi.org/10.1186/16871499201283
Received:
Accepted:
Published:
Keywords
 wireless sensor networks (WSNS)
 topology control
 connected dominating set (CDS)
 minimal CDS
 approximation algorithm
 energy efficiency