# Construction Low Complexity and Low Delay CDS for Big Data Code Dissemination

Authors: Xiao Liu; Mianxiong Dong; Yuxin Liu; Anfeng Liu; Neal N. Xiong
Journal: Complexity
 (2018)

---

## Abstract

The diffusion of codes is an important processing technology for big data networks. In previous scheme, data analysis was conducted for small samples of big data and complex problems that cannot be processed by big data technology. Due to the limited capacity of intelligence device, a better method is to select a set of nodes (intelligence device) to form a connected dominating set (CDS) to save energy, and constructing CDS is proved to be a complete NP problem. However, it is a challenge to reduce the communication delay and complexity for urgent data transmission in big data. In this paper, an appropriate duty cycle control (ADCC) scheme is proposed to reduce communication delay and complexity while improving energy efficient in CDS-based WSNs. In ADCC scheme, the method for constructing CDS is proposed at lower complexity. Nodes in CDS are selected according to the degree of nodes. Then, duty cycle of dominator nodes in CDS is higher than that of dominated nodes, so the communication delay in the proposed scheme is far less than that of previous scheme. The duty cycle of dominated nodes is small to save energy. This is because the number of dominator nodes in CDS is far less than the number of dominated nodes whose duty cycle is small; thus, the total energy consumption of the network is less than that of the previous scheme. As a result, the performance of energy consumption and communication delay and complex have been improved. Its complexityO∑i=0vm−i+2m−2v−s is reduced a lot for big data. The theoretical analysis shows that compared to the previous scheme, the transmission delay can be reduced 25–92% and the energy efficiency is improved by about 80% while retaining network lifetime.


---

## Body

## 1. Introduction

Big data needs new processing modes to own stronger decision-making power, insight discovery, and the diversified information assets [1–3]. More and more data are generated in the network as the information technology of a new generation based on IoT [4–6] as well as cloud computing [7–10]. Emergence of data intensive applications such as online gaming and video sharing has resulted in an exponential increase. As data volumes continue to increase, providing efficient data transfer in existing networks faces a huge challenge [11–15]. However, the traditional scientific analysis method records the samples of the thing statuses, which is a method of small data, and perceives things based on small sample data. Most data analyses were conducted for small samples of big data; in the big data, the quantitative data description of complex huge system is no longer the mere experimental sample data. Addressing this ever-increasing demand of data hungry devices in an efficient and effective manner has driven the wireless industry to look into new paradigms. Device-to-device (D2D) and machine-to-machine (M2M) communications are viewed as promising solutions to this complex problem and hence, a key enabling technology for 5G IoT [16–20].Wireless sensor networks (WSNs) are important components for IoT, in which each node senses information from surrounding environment and where each node in the network helps in routing by forwarding data to other nodes [21–27]. To reduce the complexity of processing big data in the network, big data codes need to be reprogrammed. Data packets can be fused by reprogramming codes to reduce the amount of data. In big data networks, program codes need to be timely transmitted to processing nodes. Therefore, the diffusion of codes is an important processing technology for big data networks (big data technology). However, due to the limited energy of sensor nodes in the network, when nodes communicate with other nodes, an important question is how to ensure that big data codes are transmitted to destinations quickly at lower complexity [27–30].However, designing a method for WSNs with higher network lifetime and lower complexity and communication delay is a challenging issue [25, 30–39]. In WSNs, data codes are transmitted for device-to-device communication (D2D) by multihop transmission way. To save energy, the duty cycle work model is adopted by nodes [38, 40, 41]. In the duty cycle work model, the node has two status: sleep and active. Nodes send and receive codes only when nodes are in an active status; thus, its energy consumption is 10–1000 times more than the energy consumption of nodes in sleep status [42]. Although the duty cycle work model saves energy consumption effectively, it can cause huge communication delay [43]. The reason for this is that when a sender node transmits data to receiver nodes who are in sleep status, the communication must wait until the receiver node wakes up. The lapse time from the time of transmitting program codes to the time that receiver node awakens is called sleep delay [44]. Relatively speaking, the time for transmitting data is shorter, and the period of duty cycle is longer; thus, the sleep delay is larger in the total delay. Thus, reducing sleep delay is a key factor to reduce delay.On the other side, for efficient routing, some researchers proposed minimum connected dominating set (MCDS) for D2D communication [45]. In this method, some nodes are selected to be as MCDS and form a virtual backbone. Nodes in MCDS are called as dominator nodes (or called dominators), and other nodes are called dominatee nodes (or called dominatees). The MCDS must ensure the communication among dominators, but any dominatee connects one dominator directly. So, any node in the network can communicate with another node in the network using MCDS. Due to the lower number of nodes in MCDS, a pair of nodes can communicate to each other effectively along nodes in MCDS [46, 47]. The method is used to study minimum-transmission broadcast (MTB) problem [27, 28]. In big data program diffusion, minimum-transmission broadcast (MTB) problem is NP hard. Xu et al. [27] point out that the MTB problem in duty-cycled networks (MTB-DC problem) is also proved to be NP-hard problem; it is still a challenge to design another algorithm which has better results [27].However, the MCDS strategy is mainly ensuring communication among nodes (D2D communication), without considering how to reduce communication delay and complexity. Because MTB-DC is NP hard problem, reducing its transmission delay is a very challenging issue. The most difficult issue is how to construct CDS. It is proved that constructing CDS is a NP hard problem. Its complex for constructing CDS in previous scheme isO∑i=0mm−i. To reduce complexity and transmission delay, an appropriate duty cycle control (ADCC) scheme is proposed to reduce communication delay and complexity while improving energy utilization rate in MCDS-based WSNs. The main contributions of this paper are as follows:
(1)
An appropriate duty cycle control (ADCC) scheme is proposed to achieve a lower communication delay and complexity while retaining higher network lifetime for WSNs. First, a CDS construction approach is proposed to select nodes as dominators under the principle that if one node covers more nodes, its residual energy is higher than its neighboring node’s. In previous scheme, its complexity for constructing CDS isO∑i=0mm−i; however, its complexity for constructing CDS in this paper is O∑i=0vm−i+2m−2v−s. It can be seen that the proposed scheme can obviously reduce the complexity a lot for big data because v is the number of dominators and s is the number of virtual dominator; those parameters always are smaller than the number of all nodes. Second, the duty cycles of nodes are adjusted according to its energy consumption and the energy consumption of neighboring dominators. Nodes with less energy consumption adopt a larger duty cycle, and nodes with larger energy consumption adopt small duty cycles. As a result, the transmission delay can be quickly reduced when codes are transmitted in the network. In such way, the dominator adopts the larger duty cycle than the dominated node. The innovations are as follows. (a) The effective reduction in communication delay: when a dominator sends codes, it wakes up and then it sends the codes to another dominator, thus creating a smaller duty cycle that does not affect delay. (b) High energy utilization: the larger the number of the dominated nodes is, the smaller the duty cycle is. That is to say, the energy consumption of most nodes in the network is less, while the duty cycle of dominator is bigger, and the number of dominators is smaller. Thus, the energy consumption of network is lower, and energy utilization is higher. (c) Energy consumption balance: after a period of time, dominators and dominated nodes are rotated according to energy consumption, which can balance energy consumption of the whole network. It shows that the ADCC scheme has better performances than previous schemes.
(2)
The optimized initial network parameters in the ADCC scheme are given in theory and can make the ADCC scheme reach the stable state more quickly; thus, the communication delay can be reduced. Based on our theoretical analysis, the initial value of the duty cycle of nodes for dominators and dominated nodes is given in the ADCC scheme, respectively, which is superior to the random selection strategy.
(3)
Through our extensive theoretical analysis study, we have demonstrated that the ADCC scheme proposed in this paper has better performances. Compared to the scheme with the same duty cycle, the ADCC scheme has the following advantages: (a) it makes full use of the energy left of nodes in the network; thus, its energy efficiency is improved by 25–92% and (b) it can reduce the communication delay by 80% while retaining same network lifetime.The rest of this paper is organized as follows: in Section2, the related research is reviewed. The system model and problem statement are described in Section 3. In Section 4, a novel appropriate duty cycle control (ADCC) scheme is proposed to achieve lower communication delay and longer lifetime for WSNs. The performance analysis of ADCC scheme is provided in Section 5. We present our conclusions in Section 6.


## 2. Related Work

In WSNs, nodes monitor the area of interest together, communicating with other nodes in the network, and transmit information to its destination. This provides a series of nodes that can correspond quickly. There are several kinds of studies about different application requirements. Communication delay and network lifetime are an important property in WSNs. How to balance the tradeoff between the communication delay and network lifespan is the challenge. However, there are several studies about this problem.(1)
The minimum-transmission broadcast problem: in these schemes, the method focuses on how to reduce transmission times and thus how to reduce the communication delay. However, this research does not consider energy consumption. As nodes sense information and transmit information at any time, it is not sensible to just consider the transmission delay. Das et al. [46] proposed an improved algorithm. In this scheme, at the beginning of constructing the tree, the first node is selected as the root of tree. In the following, the nodes are selected as the children nodes of the root of tree. Then, the selected nodes are as the children nodes of the last selected nodes. So it can reduce the number of nodes in flood, thus reducing the energy consumption and transmission delay.
Although nodes can reduce the transmission delay, the energy consumption of nodes is also huge, thus damage the network lifespan.
(2)
The second kind of schemes is to reduce the active time of nodes so as to reduce energy consumption and transmission delay. These schemes can reduce total energy consumption.Le Duc et al. [47] proposed the level-based approximation scheme. In this scheme, nodes are in an active status all the time, but the method aims to find the forwarding nodes and the destination, then contributes a broadcast backbone. When nodes transmit a data packet to the network center, nodes transmit the data packet along the broadcast backbone.Zhao et al. [48] considered MLBS in duty-cycled WSNs. In this scheme, nodes do not wake up simultaneously; thus, not all neighbor nodes can receive data packet from nodes in the same time. This method increases the transmission delay. Yet, this scheme shows two improved algorithms to reduce maximum transmission delay.However, nodes can only receive a data packet when they are in active time, but if one node, say A, transmits data packet to the next node, say B, and node B is in sleep status, node A must wait for the next active status of node B, thus increasing the transmission delay.


## 3. System Model and Problem Statement

### 3.1. The System Model

(1)
We consider a network consisting ofm homogenous static sensor-equipped devices vi∣i∈1,…,m and the central node as v0, M≜v=v0,v1,v2,…,vm deployed over a 2-D round surveillance field, the network radius is R. Node v0 is the center of the network. Sensor nodes sense the surrounding environment and transmit codes to other nodes [49, 50].
(2)
In this paper, we consider a pair of nodes can communicate with each other through dominators in the CSD, the dominator nodes cover all nodes in the network. When nodes connect with their destination node, the code is transmitted to destination node directly; the codes can be transmitted to one node in CDS, then the code is transmitted to the destination. The number of nodes in CDS should be reduced as soon as possible when the system constructs the CDS.
(3)
Each node has two status, active and sleep status. In WSNs, most nodes spend less time on transmitting codes. Due to the limited energy of sensor nodes, nodes go to sleep status to save energy to which improves network lifespan. However, when nodes want to receive the code, nodes are in active status. Each node has its own duty cycle.


### 3.2. Energy Consumption Model

A sensor node has two status: sleep and active status. In order to save energy and reduce the transmission delay, the sensing part and communication subunit can be switched off periodically according to a specified duty cycle. The duty cycle of a node refers to the ratio of the active period to the working period. In this paper, the working period isτcom and the active period of node i is τai. In this example, each node has its own duty cycle to make full use of energy left of node in the network, the duty cycle τi of node i is as follows.
(1)τi=τaiτcom.Only when nodei in this state, node i can receive a data packet. Table 1 describes some basic notations used throughout this paper.Table 1
Network parameters.
Parameter
Value
Value
τcom
Communication duration
100 ms
ϖs
Transmission power dissipation
0.0511 W
ϖr
Received power dissipation
0.0588 W
Θd
Packet duration
0.93 ms
Θp
Header packet duration
0.26 ms
Θa
Confirm window duration
0.26 ms
ϱjk
The energy consumption of a neighboring nodek of node j
τaci
The active period of nodei at l m away from sink
τaclmin
The active period of nodes nearest to the network center
δ
The ratio ofτaci to τaclmin


### 3.3. Problem Statements

The main focus of this paper is to design a new effective ADCC scheme to reduce the communication delay and improve energy efficiency in WSNs. The goal of the ADCC scheme is to transmit data packet to destination as soon as possible, which can be categorized in following aspects.(1)
The scheme can transmit the data packet quickly, that is, the scheme can reduce the transmission delay.
The transmission delayT is evaluated in terms of the time of transmitting a data packet from one node to its destination. Obviously, if the route of the transmitted data is from one node to its destination, the data packet may be transmitted to destination through multiple routes.
Considering the routing pathdik of data transmission from node i to node k, Γab is the transmission delay of transmitted data packet from node a to node b, and node b is a neighbor node of node a. Therefore, minT means the minimum transmission delay of nodes in the network, and so
(2)minT=min∑i∈dikΓik.
(2)
Maximization of network lifetime: the aim of this paper is to maximize the network lifetime. The network lifetime is defined as the time until the first node dies [18]. This is because when the first node is dead, the connection and coverage are damaged; when one node wants to transmit one data packet, the data packet will be lost when data packet is transmitted to the dead node. Hence, the definition of network lifetime in this paper is consistent with other references [7, 13]. We denote Ei as the energy consumption of node i and Einit as the energy consumption of node i. The formula of maximizing network lifetime ℓ can be expressed as follows:
(3)maxℓ=maxi∈1,…,mEiEinit.
(3)
Maximization of energy utilization: in the network, the energy consumption of nodes is mainly determined by the amount of data received and transmitted by nodes. However, in the network, the amount of data packets loaded by nodes in different areas is different. However, in the network, according to the literature [18], when the network is dead, the remaining energy of network reaches 90% of total initial energy in the network. It causes larger energy waste. In this paper, the scheme uses energy left in the network to improve the duty cycle of nodes, thus improving network performance. So, one goal of this paper is maximization of energy utilization. We denote Ei as the energy consumption of node vi. The formula of maximizing energy utilization Ξ can be expressed as follows:
(4)maxΞ=maxmaxi∈1,…,mEimaxi∈1,…,mEini.Generally, compromising optimization exists in the performance indexes above. The less transmission delayT, the larger network lifetime ℓ and the higher energy efficient Ξ. But nodes need larger storage space and this affects the network lifetime. In summary, the optimization purpose of the scheme in this paper is
(5)minT=min∑i∈dikΓikmaxℓ=maxi∈1,…,mEiEinit,maxΞ=maxmaxi∈1,…,mEimaxi∈1,…,mEini.


## 3.1. The System Model

(1)
We consider a network consisting ofm homogenous static sensor-equipped devices vi∣i∈1,…,m and the central node as v0, M≜v=v0,v1,v2,…,vm deployed over a 2-D round surveillance field, the network radius is R. Node v0 is the center of the network. Sensor nodes sense the surrounding environment and transmit codes to other nodes [49, 50].
(2)
In this paper, we consider a pair of nodes can communicate with each other through dominators in the CSD, the dominator nodes cover all nodes in the network. When nodes connect with their destination node, the code is transmitted to destination node directly; the codes can be transmitted to one node in CDS, then the code is transmitted to the destination. The number of nodes in CDS should be reduced as soon as possible when the system constructs the CDS.
(3)
Each node has two status, active and sleep status. In WSNs, most nodes spend less time on transmitting codes. Due to the limited energy of sensor nodes, nodes go to sleep status to save energy to which improves network lifespan. However, when nodes want to receive the code, nodes are in active status. Each node has its own duty cycle.


## 3.2. Energy Consumption Model

A sensor node has two status: sleep and active status. In order to save energy and reduce the transmission delay, the sensing part and communication subunit can be switched off periodically according to a specified duty cycle. The duty cycle of a node refers to the ratio of the active period to the working period. In this paper, the working period isτcom and the active period of node i is τai. In this example, each node has its own duty cycle to make full use of energy left of node in the network, the duty cycle τi of node i is as follows.
(1)τi=τaiτcom.Only when nodei in this state, node i can receive a data packet. Table 1 describes some basic notations used throughout this paper.Table 1
Network parameters.
Parameter
Value
Value
τcom
Communication duration
100 ms
ϖs
Transmission power dissipation
0.0511 W
ϖr
Received power dissipation
0.0588 W
Θd
Packet duration
0.93 ms
Θp
Header packet duration
0.26 ms
Θa
Confirm window duration
0.26 ms
ϱjk
The energy consumption of a neighboring nodek of node j
τaci
The active period of nodei at l m away from sink
τaclmin
The active period of nodes nearest to the network center
δ
The ratio ofτaci to τaclmin


## 3.3. Problem Statements

The main focus of this paper is to design a new effective ADCC scheme to reduce the communication delay and improve energy efficiency in WSNs. The goal of the ADCC scheme is to transmit data packet to destination as soon as possible, which can be categorized in following aspects.(1)
The scheme can transmit the data packet quickly, that is, the scheme can reduce the transmission delay.
The transmission delayT is evaluated in terms of the time of transmitting a data packet from one node to its destination. Obviously, if the route of the transmitted data is from one node to its destination, the data packet may be transmitted to destination through multiple routes.
Considering the routing pathdik of data transmission from node i to node k, Γab is the transmission delay of transmitted data packet from node a to node b, and node b is a neighbor node of node a. Therefore, minT means the minimum transmission delay of nodes in the network, and so
(2)minT=min∑i∈dikΓik.
(2)
Maximization of network lifetime: the aim of this paper is to maximize the network lifetime. The network lifetime is defined as the time until the first node dies [18]. This is because when the first node is dead, the connection and coverage are damaged; when one node wants to transmit one data packet, the data packet will be lost when data packet is transmitted to the dead node. Hence, the definition of network lifetime in this paper is consistent with other references [7, 13]. We denote Ei as the energy consumption of node i and Einit as the energy consumption of node i. The formula of maximizing network lifetime ℓ can be expressed as follows:
(3)maxℓ=maxi∈1,…,mEiEinit.
(3)
Maximization of energy utilization: in the network, the energy consumption of nodes is mainly determined by the amount of data received and transmitted by nodes. However, in the network, the amount of data packets loaded by nodes in different areas is different. However, in the network, according to the literature [18], when the network is dead, the remaining energy of network reaches 90% of total initial energy in the network. It causes larger energy waste. In this paper, the scheme uses energy left in the network to improve the duty cycle of nodes, thus improving network performance. So, one goal of this paper is maximization of energy utilization. We denote Ei as the energy consumption of node vi. The formula of maximizing energy utilization Ξ can be expressed as follows:
(4)maxΞ=maxmaxi∈1,…,mEimaxi∈1,…,mEini.Generally, compromising optimization exists in the performance indexes above. The less transmission delayT, the larger network lifetime ℓ and the higher energy efficient Ξ. But nodes need larger storage space and this affects the network lifetime. In summary, the optimization purpose of the scheme in this paper is
(5)minT=min∑i∈dikΓikmaxℓ=maxi∈1,…,mEiEinit,maxΞ=maxmaxi∈1,…,mEimaxi∈1,…,mEini.


## 4. Main Design of TAIV

### 4.1. Research Motivation

In the network, the transmission radius isr, and the network radius is R. The structure of data transmission is shown in Figure 1. A pair of nodes in the network can communicate to each other in the network. Nodes communicate other nodes in the network using CDS. The nodes with blue color are dominators in Figure 1, and those blue nodes form CDS. Thus, when node 1 wants to transmit the data packet to node 12, the codes will be transmitted along nodes in CDS. Thus, the data packet is transmitted to a node in CDS, but the node is in the range of transmission. Thus, codes are transmitted to node 3 in CDS, then to the other 12 nodes along the CDS.
(1)
In the previous scheme, if the duty cycle is large, the energy consumption of nodes is large. Thus, the network lifetime is low.
The reason for reducing lifecycle is that in the previous scheme, if the duty cycle of nodes is too large, the energy consumption of nodes for sensing information is also large. The duty cycle refers to the ratio of the active time to the working period. When nodes are in active status, nodes sense information from neighbor nodes, then transmit data packets to adjacent nodes. While nodes are in sleep status, nodes stop sensing information to save energy. The larger the duty cycle is, the active period is longer. The energy consumption is large, so the network lifetime is lower. This is shown in Figure2. The energy consumption of nodes in different areas in ADCC scheme with duty cycle 0.8 is higher than the energy consumption of nodes in the network with duty cycle 0.5; the energy consumption of nodes near to the network center is higher than the energy consumption of nodes far from the network center, and it shows that the higher duty cycle of nodes can cause higher energy consumption. Figure 3 shows how the network lifetime is reduced with the increase of the duty cycle.
(2)
In the previous scheme, if the duty cycle is small, despite small energy consumption by nodes, the transmission delay of data is large.Figure 1
Network structure diagram.Figure 2
The energy consumption of nodes in the network with different duty cycles.Figure 3
The network lifetime of network lifetime with different duty cycles.The reason is that nodes transmit information to another node only when nodes are in active status. Thus, if the duty cycle is too small, when one node cannot transmit information to another because the relayed nodes are in sleep status, the information must be transmitted to another node in next time slot, and the delay can be increased.This is shown in Figure4, it can be seen that when the duty cycle of nodes is small, the energy consumption is also small. But the transmission delay is large. In this paper, we study a circle network, where a pair of nodes can communicate to each other node. Thus, a large amount of data can be transmitted by nodes near to the network center and consume more energy. And the energy consumption of nodes on the edge of the network is lower, which leads to unbalanced energy consumption of nodes in the network. When the network is dead, nodes in the network still have a lot of residual energy. At the same time, in the past scheme, selecting a large duty cycle makes the network energy consumption large; thus, the network lifetime is low. The smaller duty cycle will provide a lower communication delay of data packet.Figure 4
The transmission delay of each hop of network with different duty cycle.


### 4.2. Overview of the Proposed Scheme

The main idea of the scheme is to make full use of the remaining energy of the network, increase the duty cycle of communication, and improve the network performance according to the energy consumption of nodes in the network. This section gives the general designed principles of scheme.In addition to the improvement of the previous scheme with the same duty cycle, the main steps of the scheme presented in this paper are as follows.(i)
According to [21], in order to transmit data quickly, the system first selects dominator nodes as a CDS. The selected nodes must satisfy the following conditions:
(a)
All nodes in CDS cover all nodes in a network. Thus, all nodes communicate with other nodes. That is to say, when node A wants to transmit a data packet to another node (B) in the network, node A transmits a data packet to one node in CDS, then the data packet is transmitted to its destination. Thus, the transmission hop is reduced.
(b)
The number of nodes in the CDS should be reduced as soon as possible. Thus, the transmission delay is less. When one node transmits a data packet, the data packet always is transmitted to destination along the routing path by nodes in the CDS. If the number of nodes in CDS is less, the average transmission delay is less.
(ii)
According to the selected nodes in the above steps, if node A in the network transmits a data packet to node B, if node B is the neighbor of node A, the data packet will be transmitted to node B directly. Otherwise, node A transmits data packet to a node in CDS, then the data packet is transmitted to the next node in CDS. At last the data packet is transmitted to its desired destination. According to the analysis, the transmission delay is small.
(iii)
According to the above analysis, CDS is constructed and then the duty cycle of nodes is considered. All nodes in the network have two status (sleep status or active status). When nodes are in active status, nodes can send and receive data packet. When nodes are in sleep status, they only send data packet. In previous scheme, the duty cycle of nodes in the network is the same; however, the energy consumption of nodes near network center is larger, and the energy consumption of nodes far from the network center is smaller. According to Figure1, nodes can transmit the data packet to any nodes in the network. Thus, the probability of transmitting a data packet of nodes near the network center is higher; thus, the energy consumption of nodes near to the network center is higher, while there is greater energy left at nodes in the network when network died. This paper uses energy left of nodes to adjust the duty cycle of nodes. There are two parts of adjusting duty cycle, and these are outlined as follows:
(a)
For nodes in the CDS, the duty cycle of nodes is adjusted according to its energy consumption and energy consumption of its neighbor dominated nodes.
(b)
For nodes that are not in the CDS, the duty cycle of nodes is determined in advance.In order to balance the energy consumption of nodes, nodes in CDS are adjusted in each round. That is to say, when one round is completed, nodes in CDS can be reelected.


### 4.3. The Discussion of ADCC Scheme

#### 4.3.1. Selecting Nodes to Form CDS

The method of constructing the CDS is the same as with [21]. Reference [21] construct minimum connected dominating set in wireless sensor network using two-hop information.(1) The First Step Is to Construct a Pseudo Dominating Set (PDS). The construction of the PDS is constructed based on 1-hop and 2-hop neighbors’ information from each node and its remaining energy [21]. In the initial stage, in this algorithm, the color of nodes starts as white, and as the dominators and virtual dominators are selected, the nodes’ color changes. In each round, a node can be selected as dominator if node v has a degree higher than its 1-hop and 2-hop neighbor nodes [21]. The degree of a node is the number of nodes in the range of transmission radius. When the degree of nodes are larger than that of 1-hop neighbor nodes and 2-hop neighbor nodes, the selected number of dominator nodes will be smaller; thus, the transmission delay and complexity are reduced. The color of dominator node changes to black. When node A is selected as a dominator, all nodes which connect with node A become dominated nodes and all edges which connect with node A are deleted from the network. Then, an update of the degree of nodes in the network is performed. The above steps are repeated until the degree of all white nodes is less than 0. At last, those nodes with 0 degree are regarded as virtual dominators.We illustrate the construction of PDS in the network as shown in Figure5(a); we use the nodes 1, 2, 5, 6, 9, 10, and 11. According to the analysis, one node has been selected as a dominators that has a higher degree than 1-hop and 2-hop neighbor nodes. In Figure 5(a), the degree of nodes 1, 2, 5, 6, 9, 10, and 11 are 1, 1, 4, 1, 1, 1, and 2, respectively, while the degree of 3, 4, 7, 8, 1, 2, 6, 9, 10, and 11 are 3, 1, 3, 3, 1, 1, 1, 1, 1, and 2, respectively. It can also be seen that node 5 has a higher degree than nodes 3, 4, 7, 8, 1, 2, 6, 9, 10, and 11. Thus, node 5 is selected as a dominator as the first round, and node 5 is colored as black, this is shown in Figure 5(b). After one dominator is selected, the edges of nodes which are connected to dominator are deleted. In Figure 5(c), the edges of node 5 are deleted. Then, the above steps are repeated, and node 11 is selected as dominator, this is shown in Figure 5(d). Other nodes 1, 2, 6, 9, 10 are also selected as virtual-dominator, they are colored as green in Figure 5(e). Thus, the CDS is constructed.Figure 5
The process of constructing CDS.
(a)
Initial network
(b)
The selected first dominator
(c)
Delete the edge which connects with node 5
(d)
The second dominator
(e)
Delete the edge which connect with node 7
(f)
Selecting virtual dominator(2) In the Second Phase, All Dominators and Virtual-Dominators Are Connected. In order to reduce the transmission delay, when constructing a CDS, the number of nodes in CDS should be reduced as soon as possible. When one node transmits a data packet to another node, the hop count is less, and therefore the transmission delay is less. In order to make all dominator and virtual dominators connect to the whole network, this section gives a method that determines how to select the dominator as the connector. The method calculates the number of components it is connected with. A node with the maximum number of components is selected as a connector. But if there are some dominated nodes connected with the maximum number of components, these dominated nodes are selected as the connectors. After selecting dominated nodes as a connector, the other dominated nodes recalculate the number of components it is connected with. Then according to above rules, the above steps are repeated until all dominators and virtual-dominators are connected by dominated nodes. According to the analysis, a dominated node with a maximum number of components is connected to other selected connectors. When two dominated nodes have the same maximum number of components, the nodes with smaller node IDs are selected as connectors. This can be seen in Figure 6(a), where the number of components for nodes 3, 4, 7, 8, and 12 are connected with 3, 1, 3, 3, and 1, respectively, and where node 3 has a small node ID; thus, node 3 is selected as a connector in the first round, as shown in Figure 6(b), where node 3 is colored as blue. We then repeat the above steps, until all dominator and virtual-dominators are connected. Following on, nodes 7 and 8 are selected as connectors, as shown in Figures 6(c) and 6(d).Figure 6
An example of connecting nodes in PDS.
(a)
The initial PDS
(b)
The selected first connector
(c)
The selected second connector
(d)
The selected third connector(3) Delete Redundant Dominators. From the above analysis, nodes in CDS can cover the entire network. This process ensures that the number of nodes in the CDS is reduced as soon as possible, while ensuring all nodes cover the whole network. The redundant nodes in the CDS should be deleted. When one dominator become a dominated node, all nodes in CDS can also cover all nodes; the dominator is regarded as a redundant dominator. This section shows how the redundant nodes are deleted in CDS: (1) a virtual-dominator connects to the CDS through a connector [21]. (2) A virtual-dominator connects to CDS by two connectors, and the two connectors are connected to each other [21]. The two types of virtual-dominators become dominated nodes. The dominators and connectors can also cover all nodes in the network after a virtual-dominator is changed to a dominated node; thus, the transmission delay and complexity are reduced. Thus, those two kinds of virtual-dominator can become dominated nodes.According to the above method, the last CDS set is shown in Figure7. Nodes 1, 2, 6, 9, and 10 are transmitted to dominators, because they have only one connector. A CDS set is constructed through the above analysis.Figure 7
The constructed CDS.In the process of constructing CDS, the first step is to select dominator. In this step, the complexity isO∑i=0vm−i if the number of dominator is m. Because selecting dominators is based on the degree of one-hop neighbor and two-hop neighbor, thus, when the first dominator is determined, the system must search m nodes in the network. However, the second dominator is determined, and the system just searches m−1 nodes due to the determined dominator. Thus, when the number of dominator is v, the complexity is O∑i=0vm−i. The second step is to select virtual dominator: the system searches m−v nodes once, its complexity is Om−v. The third step is to select connector: its complexity is Om−v−s. Thus, the total complexity is O∑i=0vm−i+2m−2v−s.


#### 4.3.2. Adjusting Duty Cycle of Nodes in the Network

At first, all nodes have the same duty cycle. Each node has storage space, which is used to store energy consumption of neighbor nodesϱjneigh, which is set to 0. ϱjk refers to the energy consumption of a neighboring node k of node j. In the process of data transmission, when node A transmits data packet pa to node B, the energy consumption ϱa of node A is added in the header of the data packet. When node C in CDS receives a data packet pa, the node reads the energy consumption ϱa of node A, then the energy consumption ϱa is stored in node C in order of magnitude of energy consumption. Then, node C calculates its energy consumption according to (8); the energy consumption of node C is also added in the header of data packet pa, and the data packet is then transmitted to the next nodes in the network. Thus, reciprocating until data is transmitted to the destination.When one round of data transmission is completed, the duty cycle of nodes in the network is adjusted according to the energy consumption of nodes and the energy consumption of its neighboring dominators.In this paper, this method aims to make full use of energy left at all nodes in the network. Considering nodej has neighbour dominators a,b,c,…, the energy consumption of those neighboring nodes are ϱja,ϱjb,ϱjc,…, and ϱja<ϱjb<ϱjc…. Thus, the series of evaluation results can be expressed as: ϱjneigh=ϱja,ϱjb,ϱjc,…,ϱjn; the elements in ϱja,ϱjb,ϱjc,…,ϱjn are in size order. ϱja is the minimum energy consumption of neighboring dominators of node j, and ϱjn is the maximum energy consumption of neighbor dominator of node j. The total average energy consumption evaluation results of neighbor dominators of node j are as follows:
(6)ϱjneigh=∑k=1nϱja.hkw,w≠0,1,w=0.hk∈0,1 is the attenuation function. It is used to make a reasonable weighting of the energy consumption of different neighboring dominators. The result of energy consumption in the size closer to the maximum energy consumption is to adjust the duty cycle of nodes. More weight should be given to the maximum energy consumption of neighboring dominators; thus, the attenuation function is defined as
(7)hk=1,k=w,hk−1=hk−1w,1≤k≤w.According to the above analysis, nodej stores energy consumption of neighbor dominators. The energy consumption of neighbor dominators of node j in the network can be obtained.Moreover, in this paper, nodes with the maximum energy consumption give the greatest weight. Because in the network, the network lifetime is often dependent on the node with the maximum energy consumption. When the energy consumption of some nodes in the network has been exhausted, many nodes also have excess energy left in the network. Adjustment of the duty cycle can allow the full use of the energy left in nodes. When the energy consumption of neighbor dominators is calculated according to (6), the duty cycle of nodes is adjusted according to the energy consumption of nodes and the energy consumption of neighbor dominators. According to (8), the energy consumption of nodes is calculated as follows:
(8)ϱj=ϖrjIrj+ϖsjIsj.The energy consumption of nodes can be divided into two parts,ϖrjIrj and ϖsjIsj, the energy consumption of the receiving data packet and the sending data packet.
(9)ϖsj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa,ϖrj=ςrΘd+ςrΘp+ςsΘa.Thus, in order to make full use of the energy left in nodes in the network, the energy consumptionϱj of node j should be equal to the energy consumption of its neighboring nodes or node j. Thus,
(10)ϱj=ϱjneigh.However, the energy consumption of nodej is as follows.
(11)ϱj=ϖrjIrj+ϖsjIsj=ςrΘd+ςrΘp+ςsΘaIrj+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj.Thus, the energy consumption is as follows.(12)ϱjneigh=ςrΘd+ςrΘp+ςsΘaIrj+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj.When one round of the data packet is completed, each node adjusts its duty cycle.(13)ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsj−ςsΘd=τacjτcom2Θp+ΘaςsΘp+ςrΘa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsjςsΘp+ςrΘa−ςsΘdςsΘp+ςrΘa=τacjτcom2Θp+Θa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsjςsΘp+ςrΘaτcom−ςsΘdςsΘp+ςrΘaτcom=τacj2Θp+Θa⇒ϱjneigh−βIrjIsjατcom−ςsΘdατcom2Θp+Θa=τacj⇒τacj=2ϱjneighγ−βIrjγIsjατcom−ςsΘdγατcom,whereα=ςsΘp+ςrΘa,β=ςrΘd+ςrΘp+ςsΘa,andγ=Θp+Θa.


#### 4.3.3. The Rotation of Nodes in CDS

In previous schemes, nodes in CDS are always the same. But in this paper, in order to balance energy consumption of nodes in the network, when one round of data transmission is completed, nodes in CDS are reselected. In this paper, when a system selects dominator nodes, the system not only considers the number of covering nodes of one node but also considers the energy consumption of nodes. If the number of nodes is larger, the energy consumption of those nodes is larger. To balance the energy consumption, thus, the nodes in CDS should be rotated.After one round of data packet is completed, the system reselects nodes to form CDS, and the rules are as follows.When one round of data transmission is completed, the CDS is reconstructed. In the first step, the system constructs PDS, the method of selecting nodes as PDS is different from the previous method. The energy consumption of nodes is also considered. In this term, if one nodev has a degree higher than its 1-hop and 2-hop neighbor nodes, and the energy consumption of node v is lower than the total average energy consumption evaluation results ϱvneigh of neighbor dominators of node v, the node can be selected as a dominator. Where the maximum energy consumption of the neighboring node of node v is selected as a dominator, the color of dominators becomes black. After node A is selected as a dominator, all nodes which connect with node A become the dominated nodes, and the connected edge of node A is deleted. At this point, the degree of nodes is updated. The above steps are repeated until the degree of all white nodes is less than 0. At last, those nodes with 0 degree are regarded as virtual dominator.It can be seen from Figure8 that when one round of data transmission is completed, the CDS is reconstructed. Nodes 1, 4, 6, and 11 may be selected as dominators due to the larger energy left at nodes.Figure 8
The reconstructed CDS.


#### 4.3.4. The Calculation of Energy Consumption of Network

This section describes the amount of data in each area, followed by the energy consumption in different areas for collecting data.In this paper, the aim is to use energy left at nodes to increase the duty cycle and thus improve network performance. In this paper, each node has two status: (1) sleep status: where nodes are in asleep, the sensing device of nodes are closed and nodes cannot receive a data packet, but nodes send data packet and (2) active status: where nodes are active, nodes receive and send data packets.ϱi is the total energy consumption of nodes. ϱi can be computed as follows:
(14)ϱi=ϖriIri+ϖsiIsi.ϖsi is the power used for receiving a packet. ϖsi is the power used in transmitting a packet. It can be calculated as follows:
(15)ϖsi=ςsΘd+τacτcom2Θp+ΘaςsΘp+ςrΘa,where ςsΘd is the energy consumption used for sending a data packet, ςs is the transmission power consumption, ςr is the reception power consumption, Θd is the packet duration, Θa is the ACK window duration, Θp is the preamble duration, τa is the active period radio, and τc is the working cycle. ϖri can be calculated as follows:
(16)ϖri=ςrΘd+ςrΘp+ςsΘa.ςrΘd is the energy consumption required for receiving a packet, and ςrΘp+ςsΘa is for the reception of the preamble and the transmission of the returned message. Equation (14) calculates the total energy consumption.


#### 4.3.5. Adjustable Duty Cycle Calculation

The main difference from the ADCC scheme to previous schemes is the different duty cycles of nodes. Therefore, the calculation method of sensing and communicating duty cycles in different regions of the network is given in this section.Theorem 1.
Considering that the number of sending and receiving packets of nodes near to the network center areIslmin and Irlmin, respectively, the residual energy is only used for increasing τac, the active period of node i at l m away from sink is τaci, and the active period of nodes nearest to the network center is τaclmin. The ratio δ of τaci to τaclmin is as follows:
(17)δ=Islmin−2βIri−IrlminγτcomατaclminIsi+2ςsΘdIsi−IslminγτcomατaclminIsi,α=ςsΘp+ςrΘa,β=ςrΘd+ςrΘp+ςsΘa,γ=Θp+Θa.Proof 1.
In order to make full use of the energy left of nodes, the energy consumption of nodes should be the same, that is,(18)ϖriIri+ϖsiIsi=ϖrlminIrlmin+ϖslminIslmin.That is,(19)ςrΘd+ςrΘp+ςsΘaIri+(ςsΘd+τaciτcom2Θp+ΘaςsΘp+ςrΘaIsi=ςrΘd+ςrΘp+ςsΘaIrlmin+ςsΘd+τaclminτcom2Θp+ΘaςsΘp+ςrΘaIslmin⇒ςrΘd+ςrΘp+ςsΘaIri−Irlmin+ςsΘdIsi−Islmin=τaclminτcom2Θp+ΘaςsΘp+ςrΘaIslmin−τaciτcom2Θp+ΘaςsΘp+ςrΘaIsi⇒2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘa+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘa=τaclminIslmin−τaciIsi⇒2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘa+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘa=τaclminIslmin−τaciIsi⇒δ=Islmin−2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘaτaclminIsi+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘaτaclminIsi.The duty cycle is adjusted according to its energy consumption and the energy consumption of the neighboring dominators. The adjusted duty cycle is shown in Figure9. It can be seen that if the initial duty cycle of nodes is 0.5 and 0.8, at last, the duty cycle of nodes is different. When nodes are near to the network center, the duty cycle of nodes is lower, while for nodes far from the network center, the duty cycle is larger.Figure 9
The duty cycle of different nodes with different initial duty cycle.The improved duty cycle of nodes is shown in Figure10. The adjusted duty cycle in ADCC scheme is about 1-2 times higher than the duty cycle in the previous scheme. The increased duty cycle is completed by the energy left of nodes; therefore, it does not damage the network lifetime.Figure 10
The ratio of duty cycle of nodes.The duty cycle of nodes in the network with differentλ and the ratio of duty cycle of nodes in ADCC scheme to the duty cycle of nodes in the previous scheme are given in Figures 11 and 12, respectively. Some conclusions are that (1) the bigger the λ is, the smaller the duty cycle is. (2) The distance of nodes to the network center is longer, and the duty cycle of nodes is larger. The reason behind this is that the amount of loaded data packets in nodes near to the network center is larger; thus, the energy consumption of nodes near to the network center is higher. The energy left in nodes far from the network center is used to increase the duty cycle.Figure 11
The duty cycle of nodes of network with differentλ.Figure 12
The ratio of duty cycle of nodes of networks with differentλ.


#### 4.3.6. Schedule Method of ADCC Scheme

The duty cycle of nodes is adaptively adjusted by the ADCC scheme which uses the feedback control method; the aim of this paper is to reduce the transmission delay while retaining network lifetime [51].In this paper, the way where the data packets are utilized is different from previous schemes. The data packet is transmitted from one node to any node of network in ADCC scheme. This causes maximum energy consumption of the network and is calculated with difficulty. In this scheme, the duty cycle of nodes is adjusted according to its energy consumption and the energy consumption of neighbor nodes in the network.In the initial stage, nodes send messages to sense energy consumption of neighbor nodes and the degree of nodes, then constructs the CDS.During the transmission of data, when nodei sends a data packet to node j, the energy consumption ϱi of node i is added in the header of the data packet. When node k receives the data packet, it records the energy consumption, then calculates the energy left on node i. The duty cycle of node i is adjusted according to the energy left of node i. The detailed method is given in Algorithm 1.Algorithm 1: The ADCC scheme for adjusting duty cycle.
Initialize: Considering the active time slots of node vi are τaci,
the energy consumption of nodevi is ei and the energy consumption
ϱi is set 0. The CDS is then constructed.
Input energy consumption of each node:
Case 1: The process of data transmission
1:For each node vi Do
2:    Sends a data packetpi to other nodes,
3:  Add the energy consumptionϱi of node vi in the header
of packet.
4:For each node vk receives the data packet Do
5:      Read the energy consumptionϱi from the header of
data packet, then store the energy consumptionϱi in
nodevk.
6:     Delete the energy consumption ϱi from the header of
data packet, and store the energy consumption ofvk
in the header of data packetpi.
7:    End for
8: End for
Case 2: Adjust the duty cycle of nodes
9:For each node vi after one round of data transmission Do
10:    Compare the energy consumption of nodes stored in node
vi, and its energy consumption in accordance with the
order from small to largeϱja,ϱjb,ϱjc…ϱjd, and store its
energy consumptionϱi.
11:    According to the (6), calculate the average energy
consumption of neighbor nodes of nodevi.
12:ϱineigh=ϱi
13:If ϱineigh>ϱi then
14:     Computeτaci according to the (13);
15:Else if ϱineigh<ϱi then
16:      Maintain the current duty cycle.
17:  End if
18:End for
19:Output duty cycle of each node
Case 3: Reconstruct CDS
20: According to Section4.2, construct PDS.
21: According to Section4.2, connect nodes in PDS, to make
the network connection.
22: In order to reduce transmission delay, delete redundancy nodes.
23: At last, CDS is reconstructed.
24: Return to step 1.
Output the duty cycle of each node


## 4.1. Research Motivation

In the network, the transmission radius isr, and the network radius is R. The structure of data transmission is shown in Figure 1. A pair of nodes in the network can communicate to each other in the network. Nodes communicate other nodes in the network using CDS. The nodes with blue color are dominators in Figure 1, and those blue nodes form CDS. Thus, when node 1 wants to transmit the data packet to node 12, the codes will be transmitted along nodes in CDS. Thus, the data packet is transmitted to a node in CDS, but the node is in the range of transmission. Thus, codes are transmitted to node 3 in CDS, then to the other 12 nodes along the CDS.
(1)
In the previous scheme, if the duty cycle is large, the energy consumption of nodes is large. Thus, the network lifetime is low.
The reason for reducing lifecycle is that in the previous scheme, if the duty cycle of nodes is too large, the energy consumption of nodes for sensing information is also large. The duty cycle refers to the ratio of the active time to the working period. When nodes are in active status, nodes sense information from neighbor nodes, then transmit data packets to adjacent nodes. While nodes are in sleep status, nodes stop sensing information to save energy. The larger the duty cycle is, the active period is longer. The energy consumption is large, so the network lifetime is lower. This is shown in Figure2. The energy consumption of nodes in different areas in ADCC scheme with duty cycle 0.8 is higher than the energy consumption of nodes in the network with duty cycle 0.5; the energy consumption of nodes near to the network center is higher than the energy consumption of nodes far from the network center, and it shows that the higher duty cycle of nodes can cause higher energy consumption. Figure 3 shows how the network lifetime is reduced with the increase of the duty cycle.
(2)
In the previous scheme, if the duty cycle is small, despite small energy consumption by nodes, the transmission delay of data is large.Figure 1
Network structure diagram.Figure 2
The energy consumption of nodes in the network with different duty cycles.Figure 3
The network lifetime of network lifetime with different duty cycles.The reason is that nodes transmit information to another node only when nodes are in active status. Thus, if the duty cycle is too small, when one node cannot transmit information to another because the relayed nodes are in sleep status, the information must be transmitted to another node in next time slot, and the delay can be increased.This is shown in Figure4, it can be seen that when the duty cycle of nodes is small, the energy consumption is also small. But the transmission delay is large. In this paper, we study a circle network, where a pair of nodes can communicate to each other node. Thus, a large amount of data can be transmitted by nodes near to the network center and consume more energy. And the energy consumption of nodes on the edge of the network is lower, which leads to unbalanced energy consumption of nodes in the network. When the network is dead, nodes in the network still have a lot of residual energy. At the same time, in the past scheme, selecting a large duty cycle makes the network energy consumption large; thus, the network lifetime is low. The smaller duty cycle will provide a lower communication delay of data packet.Figure 4
The transmission delay of each hop of network with different duty cycle.


## 4.2. Overview of the Proposed Scheme

The main idea of the scheme is to make full use of the remaining energy of the network, increase the duty cycle of communication, and improve the network performance according to the energy consumption of nodes in the network. This section gives the general designed principles of scheme.In addition to the improvement of the previous scheme with the same duty cycle, the main steps of the scheme presented in this paper are as follows.(i)
According to [21], in order to transmit data quickly, the system first selects dominator nodes as a CDS. The selected nodes must satisfy the following conditions:
(a)
All nodes in CDS cover all nodes in a network. Thus, all nodes communicate with other nodes. That is to say, when node A wants to transmit a data packet to another node (B) in the network, node A transmits a data packet to one node in CDS, then the data packet is transmitted to its destination. Thus, the transmission hop is reduced.
(b)
The number of nodes in the CDS should be reduced as soon as possible. Thus, the transmission delay is less. When one node transmits a data packet, the data packet always is transmitted to destination along the routing path by nodes in the CDS. If the number of nodes in CDS is less, the average transmission delay is less.
(ii)
According to the selected nodes in the above steps, if node A in the network transmits a data packet to node B, if node B is the neighbor of node A, the data packet will be transmitted to node B directly. Otherwise, node A transmits data packet to a node in CDS, then the data packet is transmitted to the next node in CDS. At last the data packet is transmitted to its desired destination. According to the analysis, the transmission delay is small.
(iii)
According to the above analysis, CDS is constructed and then the duty cycle of nodes is considered. All nodes in the network have two status (sleep status or active status). When nodes are in active status, nodes can send and receive data packet. When nodes are in sleep status, they only send data packet. In previous scheme, the duty cycle of nodes in the network is the same; however, the energy consumption of nodes near network center is larger, and the energy consumption of nodes far from the network center is smaller. According to Figure1, nodes can transmit the data packet to any nodes in the network. Thus, the probability of transmitting a data packet of nodes near the network center is higher; thus, the energy consumption of nodes near to the network center is higher, while there is greater energy left at nodes in the network when network died. This paper uses energy left of nodes to adjust the duty cycle of nodes. There are two parts of adjusting duty cycle, and these are outlined as follows:
(a)
For nodes in the CDS, the duty cycle of nodes is adjusted according to its energy consumption and energy consumption of its neighbor dominated nodes.
(b)
For nodes that are not in the CDS, the duty cycle of nodes is determined in advance.In order to balance the energy consumption of nodes, nodes in CDS are adjusted in each round. That is to say, when one round is completed, nodes in CDS can be reelected.


## 4.3. The Discussion of ADCC Scheme

### 4.3.1. Selecting Nodes to Form CDS

The method of constructing the CDS is the same as with [21]. Reference [21] construct minimum connected dominating set in wireless sensor network using two-hop information.(1) The First Step Is to Construct a Pseudo Dominating Set (PDS). The construction of the PDS is constructed based on 1-hop and 2-hop neighbors’ information from each node and its remaining energy [21]. In the initial stage, in this algorithm, the color of nodes starts as white, and as the dominators and virtual dominators are selected, the nodes’ color changes. In each round, a node can be selected as dominator if node v has a degree higher than its 1-hop and 2-hop neighbor nodes [21]. The degree of a node is the number of nodes in the range of transmission radius. When the degree of nodes are larger than that of 1-hop neighbor nodes and 2-hop neighbor nodes, the selected number of dominator nodes will be smaller; thus, the transmission delay and complexity are reduced. The color of dominator node changes to black. When node A is selected as a dominator, all nodes which connect with node A become dominated nodes and all edges which connect with node A are deleted from the network. Then, an update of the degree of nodes in the network is performed. The above steps are repeated until the degree of all white nodes is less than 0. At last, those nodes with 0 degree are regarded as virtual dominators.We illustrate the construction of PDS in the network as shown in Figure5(a); we use the nodes 1, 2, 5, 6, 9, 10, and 11. According to the analysis, one node has been selected as a dominators that has a higher degree than 1-hop and 2-hop neighbor nodes. In Figure 5(a), the degree of nodes 1, 2, 5, 6, 9, 10, and 11 are 1, 1, 4, 1, 1, 1, and 2, respectively, while the degree of 3, 4, 7, 8, 1, 2, 6, 9, 10, and 11 are 3, 1, 3, 3, 1, 1, 1, 1, 1, and 2, respectively. It can also be seen that node 5 has a higher degree than nodes 3, 4, 7, 8, 1, 2, 6, 9, 10, and 11. Thus, node 5 is selected as a dominator as the first round, and node 5 is colored as black, this is shown in Figure 5(b). After one dominator is selected, the edges of nodes which are connected to dominator are deleted. In Figure 5(c), the edges of node 5 are deleted. Then, the above steps are repeated, and node 11 is selected as dominator, this is shown in Figure 5(d). Other nodes 1, 2, 6, 9, 10 are also selected as virtual-dominator, they are colored as green in Figure 5(e). Thus, the CDS is constructed.Figure 5
The process of constructing CDS.
(a)
Initial network
(b)
The selected first dominator
(c)
Delete the edge which connects with node 5
(d)
The second dominator
(e)
Delete the edge which connect with node 7
(f)
Selecting virtual dominator(2) In the Second Phase, All Dominators and Virtual-Dominators Are Connected. In order to reduce the transmission delay, when constructing a CDS, the number of nodes in CDS should be reduced as soon as possible. When one node transmits a data packet to another node, the hop count is less, and therefore the transmission delay is less. In order to make all dominator and virtual dominators connect to the whole network, this section gives a method that determines how to select the dominator as the connector. The method calculates the number of components it is connected with. A node with the maximum number of components is selected as a connector. But if there are some dominated nodes connected with the maximum number of components, these dominated nodes are selected as the connectors. After selecting dominated nodes as a connector, the other dominated nodes recalculate the number of components it is connected with. Then according to above rules, the above steps are repeated until all dominators and virtual-dominators are connected by dominated nodes. According to the analysis, a dominated node with a maximum number of components is connected to other selected connectors. When two dominated nodes have the same maximum number of components, the nodes with smaller node IDs are selected as connectors. This can be seen in Figure 6(a), where the number of components for nodes 3, 4, 7, 8, and 12 are connected with 3, 1, 3, 3, and 1, respectively, and where node 3 has a small node ID; thus, node 3 is selected as a connector in the first round, as shown in Figure 6(b), where node 3 is colored as blue. We then repeat the above steps, until all dominator and virtual-dominators are connected. Following on, nodes 7 and 8 are selected as connectors, as shown in Figures 6(c) and 6(d).Figure 6
An example of connecting nodes in PDS.
(a)
The initial PDS
(b)
The selected first connector
(c)
The selected second connector
(d)
The selected third connector(3) Delete Redundant Dominators. From the above analysis, nodes in CDS can cover the entire network. This process ensures that the number of nodes in the CDS is reduced as soon as possible, while ensuring all nodes cover the whole network. The redundant nodes in the CDS should be deleted. When one dominator become a dominated node, all nodes in CDS can also cover all nodes; the dominator is regarded as a redundant dominator. This section shows how the redundant nodes are deleted in CDS: (1) a virtual-dominator connects to the CDS through a connector [21]. (2) A virtual-dominator connects to CDS by two connectors, and the two connectors are connected to each other [21]. The two types of virtual-dominators become dominated nodes. The dominators and connectors can also cover all nodes in the network after a virtual-dominator is changed to a dominated node; thus, the transmission delay and complexity are reduced. Thus, those two kinds of virtual-dominator can become dominated nodes.According to the above method, the last CDS set is shown in Figure7. Nodes 1, 2, 6, 9, and 10 are transmitted to dominators, because they have only one connector. A CDS set is constructed through the above analysis.Figure 7
The constructed CDS.In the process of constructing CDS, the first step is to select dominator. In this step, the complexity isO∑i=0vm−i if the number of dominator is m. Because selecting dominators is based on the degree of one-hop neighbor and two-hop neighbor, thus, when the first dominator is determined, the system must search m nodes in the network. However, the second dominator is determined, and the system just searches m−1 nodes due to the determined dominator. Thus, when the number of dominator is v, the complexity is O∑i=0vm−i. The second step is to select virtual dominator: the system searches m−v nodes once, its complexity is Om−v. The third step is to select connector: its complexity is Om−v−s. Thus, the total complexity is O∑i=0vm−i+2m−2v−s.


### 4.3.2. Adjusting Duty Cycle of Nodes in the Network

At first, all nodes have the same duty cycle. Each node has storage space, which is used to store energy consumption of neighbor nodesϱjneigh, which is set to 0. ϱjk refers to the energy consumption of a neighboring node k of node j. In the process of data transmission, when node A transmits data packet pa to node B, the energy consumption ϱa of node A is added in the header of the data packet. When node C in CDS receives a data packet pa, the node reads the energy consumption ϱa of node A, then the energy consumption ϱa is stored in node C in order of magnitude of energy consumption. Then, node C calculates its energy consumption according to (8); the energy consumption of node C is also added in the header of data packet pa, and the data packet is then transmitted to the next nodes in the network. Thus, reciprocating until data is transmitted to the destination.When one round of data transmission is completed, the duty cycle of nodes in the network is adjusted according to the energy consumption of nodes and the energy consumption of its neighboring dominators.In this paper, this method aims to make full use of energy left at all nodes in the network. Considering nodej has neighbour dominators a,b,c,…, the energy consumption of those neighboring nodes are ϱja,ϱjb,ϱjc,…, and ϱja<ϱjb<ϱjc…. Thus, the series of evaluation results can be expressed as: ϱjneigh=ϱja,ϱjb,ϱjc,…,ϱjn; the elements in ϱja,ϱjb,ϱjc,…,ϱjn are in size order. ϱja is the minimum energy consumption of neighboring dominators of node j, and ϱjn is the maximum energy consumption of neighbor dominator of node j. The total average energy consumption evaluation results of neighbor dominators of node j are as follows:
(6)ϱjneigh=∑k=1nϱja.hkw,w≠0,1,w=0.hk∈0,1 is the attenuation function. It is used to make a reasonable weighting of the energy consumption of different neighboring dominators. The result of energy consumption in the size closer to the maximum energy consumption is to adjust the duty cycle of nodes. More weight should be given to the maximum energy consumption of neighboring dominators; thus, the attenuation function is defined as
(7)hk=1,k=w,hk−1=hk−1w,1≤k≤w.According to the above analysis, nodej stores energy consumption of neighbor dominators. The energy consumption of neighbor dominators of node j in the network can be obtained.Moreover, in this paper, nodes with the maximum energy consumption give the greatest weight. Because in the network, the network lifetime is often dependent on the node with the maximum energy consumption. When the energy consumption of some nodes in the network has been exhausted, many nodes also have excess energy left in the network. Adjustment of the duty cycle can allow the full use of the energy left in nodes. When the energy consumption of neighbor dominators is calculated according to (6), the duty cycle of nodes is adjusted according to the energy consumption of nodes and the energy consumption of neighbor dominators. According to (8), the energy consumption of nodes is calculated as follows:
(8)ϱj=ϖrjIrj+ϖsjIsj.The energy consumption of nodes can be divided into two parts,ϖrjIrj and ϖsjIsj, the energy consumption of the receiving data packet and the sending data packet.
(9)ϖsj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa,ϖrj=ςrΘd+ςrΘp+ςsΘa.Thus, in order to make full use of the energy left in nodes in the network, the energy consumptionϱj of node j should be equal to the energy consumption of its neighboring nodes or node j. Thus,
(10)ϱj=ϱjneigh.However, the energy consumption of nodej is as follows.
(11)ϱj=ϖrjIrj+ϖsjIsj=ςrΘd+ςrΘp+ςsΘaIrj+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj.Thus, the energy consumption is as follows.(12)ϱjneigh=ςrΘd+ςrΘp+ςsΘaIrj+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj.When one round of the data packet is completed, each node adjusts its duty cycle.(13)ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsj−ςsΘd=τacjτcom2Θp+ΘaςsΘp+ςrΘa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsjςsΘp+ςrΘa−ςsΘdςsΘp+ςrΘa=τacjτcom2Θp+Θa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsjςsΘp+ςrΘaτcom−ςsΘdςsΘp+ςrΘaτcom=τacj2Θp+Θa⇒ϱjneigh−βIrjIsjατcom−ςsΘdατcom2Θp+Θa=τacj⇒τacj=2ϱjneighγ−βIrjγIsjατcom−ςsΘdγατcom,whereα=ςsΘp+ςrΘa,β=ςrΘd+ςrΘp+ςsΘa,andγ=Θp+Θa.


### 4.3.3. The Rotation of Nodes in CDS

In previous schemes, nodes in CDS are always the same. But in this paper, in order to balance energy consumption of nodes in the network, when one round of data transmission is completed, nodes in CDS are reselected. In this paper, when a system selects dominator nodes, the system not only considers the number of covering nodes of one node but also considers the energy consumption of nodes. If the number of nodes is larger, the energy consumption of those nodes is larger. To balance the energy consumption, thus, the nodes in CDS should be rotated.After one round of data packet is completed, the system reselects nodes to form CDS, and the rules are as follows.When one round of data transmission is completed, the CDS is reconstructed. In the first step, the system constructs PDS, the method of selecting nodes as PDS is different from the previous method. The energy consumption of nodes is also considered. In this term, if one nodev has a degree higher than its 1-hop and 2-hop neighbor nodes, and the energy consumption of node v is lower than the total average energy consumption evaluation results ϱvneigh of neighbor dominators of node v, the node can be selected as a dominator. Where the maximum energy consumption of the neighboring node of node v is selected as a dominator, the color of dominators becomes black. After node A is selected as a dominator, all nodes which connect with node A become the dominated nodes, and the connected edge of node A is deleted. At this point, the degree of nodes is updated. The above steps are repeated until the degree of all white nodes is less than 0. At last, those nodes with 0 degree are regarded as virtual dominator.It can be seen from Figure8 that when one round of data transmission is completed, the CDS is reconstructed. Nodes 1, 4, 6, and 11 may be selected as dominators due to the larger energy left at nodes.Figure 8
The reconstructed CDS.


### 4.3.4. The Calculation of Energy Consumption of Network

This section describes the amount of data in each area, followed by the energy consumption in different areas for collecting data.In this paper, the aim is to use energy left at nodes to increase the duty cycle and thus improve network performance. In this paper, each node has two status: (1) sleep status: where nodes are in asleep, the sensing device of nodes are closed and nodes cannot receive a data packet, but nodes send data packet and (2) active status: where nodes are active, nodes receive and send data packets.ϱi is the total energy consumption of nodes. ϱi can be computed as follows:
(14)ϱi=ϖriIri+ϖsiIsi.ϖsi is the power used for receiving a packet. ϖsi is the power used in transmitting a packet. It can be calculated as follows:
(15)ϖsi=ςsΘd+τacτcom2Θp+ΘaςsΘp+ςrΘa,where ςsΘd is the energy consumption used for sending a data packet, ςs is the transmission power consumption, ςr is the reception power consumption, Θd is the packet duration, Θa is the ACK window duration, Θp is the preamble duration, τa is the active period radio, and τc is the working cycle. ϖri can be calculated as follows:
(16)ϖri=ςrΘd+ςrΘp+ςsΘa.ςrΘd is the energy consumption required for receiving a packet, and ςrΘp+ςsΘa is for the reception of the preamble and the transmission of the returned message. Equation (14) calculates the total energy consumption.


### 4.3.5. Adjustable Duty Cycle Calculation

The main difference from the ADCC scheme to previous schemes is the different duty cycles of nodes. Therefore, the calculation method of sensing and communicating duty cycles in different regions of the network is given in this section.Theorem 1.
Considering that the number of sending and receiving packets of nodes near to the network center areIslmin and Irlmin, respectively, the residual energy is only used for increasing τac, the active period of node i at l m away from sink is τaci, and the active period of nodes nearest to the network center is τaclmin. The ratio δ of τaci to τaclmin is as follows:
(17)δ=Islmin−2βIri−IrlminγτcomατaclminIsi+2ςsΘdIsi−IslminγτcomατaclminIsi,α=ςsΘp+ςrΘa,β=ςrΘd+ςrΘp+ςsΘa,γ=Θp+Θa.Proof 1.
In order to make full use of the energy left of nodes, the energy consumption of nodes should be the same, that is,(18)ϖriIri+ϖsiIsi=ϖrlminIrlmin+ϖslminIslmin.That is,(19)ςrΘd+ςrΘp+ςsΘaIri+(ςsΘd+τaciτcom2Θp+ΘaςsΘp+ςrΘaIsi=ςrΘd+ςrΘp+ςsΘaIrlmin+ςsΘd+τaclminτcom2Θp+ΘaςsΘp+ςrΘaIslmin⇒ςrΘd+ςrΘp+ςsΘaIri−Irlmin+ςsΘdIsi−Islmin=τaclminτcom2Θp+ΘaςsΘp+ςrΘaIslmin−τaciτcom2Θp+ΘaςsΘp+ςrΘaIsi⇒2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘa+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘa=τaclminIslmin−τaciIsi⇒2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘa+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘa=τaclminIslmin−τaciIsi⇒δ=Islmin−2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘaτaclminIsi+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘaτaclminIsi.The duty cycle is adjusted according to its energy consumption and the energy consumption of the neighboring dominators. The adjusted duty cycle is shown in Figure9. It can be seen that if the initial duty cycle of nodes is 0.5 and 0.8, at last, the duty cycle of nodes is different. When nodes are near to the network center, the duty cycle of nodes is lower, while for nodes far from the network center, the duty cycle is larger.Figure 9
The duty cycle of different nodes with different initial duty cycle.The improved duty cycle of nodes is shown in Figure10. The adjusted duty cycle in ADCC scheme is about 1-2 times higher than the duty cycle in the previous scheme. The increased duty cycle is completed by the energy left of nodes; therefore, it does not damage the network lifetime.Figure 10
The ratio of duty cycle of nodes.The duty cycle of nodes in the network with differentλ and the ratio of duty cycle of nodes in ADCC scheme to the duty cycle of nodes in the previous scheme are given in Figures 11 and 12, respectively. Some conclusions are that (1) the bigger the λ is, the smaller the duty cycle is. (2) The distance of nodes to the network center is longer, and the duty cycle of nodes is larger. The reason behind this is that the amount of loaded data packets in nodes near to the network center is larger; thus, the energy consumption of nodes near to the network center is higher. The energy left in nodes far from the network center is used to increase the duty cycle.Figure 11
The duty cycle of nodes of network with differentλ.Figure 12
The ratio of duty cycle of nodes of networks with differentλ.


### 4.3.6. Schedule Method of ADCC Scheme

The duty cycle of nodes is adaptively adjusted by the ADCC scheme which uses the feedback control method; the aim of this paper is to reduce the transmission delay while retaining network lifetime [51].In this paper, the way where the data packets are utilized is different from previous schemes. The data packet is transmitted from one node to any node of network in ADCC scheme. This causes maximum energy consumption of the network and is calculated with difficulty. In this scheme, the duty cycle of nodes is adjusted according to its energy consumption and the energy consumption of neighbor nodes in the network.In the initial stage, nodes send messages to sense energy consumption of neighbor nodes and the degree of nodes, then constructs the CDS.During the transmission of data, when nodei sends a data packet to node j, the energy consumption ϱi of node i is added in the header of the data packet. When node k receives the data packet, it records the energy consumption, then calculates the energy left on node i. The duty cycle of node i is adjusted according to the energy left of node i. The detailed method is given in Algorithm 1.Algorithm 1: The ADCC scheme for adjusting duty cycle.
Initialize: Considering the active time slots of node vi are τaci,
the energy consumption of nodevi is ei and the energy consumption
ϱi is set 0. The CDS is then constructed.
Input energy consumption of each node:
Case 1: The process of data transmission
1:For each node vi Do
2:    Sends a data packetpi to other nodes,
3:  Add the energy consumptionϱi of node vi in the header
of packet.
4:For each node vk receives the data packet Do
5:      Read the energy consumptionϱi from the header of
data packet, then store the energy consumptionϱi in
nodevk.
6:     Delete the energy consumption ϱi from the header of
data packet, and store the energy consumption ofvk
in the header of data packetpi.
7:    End for
8: End for
Case 2: Adjust the duty cycle of nodes
9:For each node vi after one round of data transmission Do
10:    Compare the energy consumption of nodes stored in node
vi, and its energy consumption in accordance with the
order from small to largeϱja,ϱjb,ϱjc…ϱjd, and store its
energy consumptionϱi.
11:    According to the (6), calculate the average energy
consumption of neighbor nodes of nodevi.
12:ϱineigh=ϱi
13:If ϱineigh>ϱi then
14:     Computeτaci according to the (13);
15:Else if ϱineigh<ϱi then
16:      Maintain the current duty cycle.
17:  End if
18:End for
19:Output duty cycle of each node
Case 3: Reconstruct CDS
20: According to Section4.2, construct PDS.
21: According to Section4.2, connect nodes in PDS, to make
the network connection.
22: In order to reduce transmission delay, delete redundancy nodes.
23: At last, CDS is reconstructed.
24: Return to step 1.
Output the duty cycle of each node


## 4.3.1. Selecting Nodes to Form CDS

The method of constructing the CDS is the same as with [21]. Reference [21] construct minimum connected dominating set in wireless sensor network using two-hop information.(1) The First Step Is to Construct a Pseudo Dominating Set (PDS). The construction of the PDS is constructed based on 1-hop and 2-hop neighbors’ information from each node and its remaining energy [21]. In the initial stage, in this algorithm, the color of nodes starts as white, and as the dominators and virtual dominators are selected, the nodes’ color changes. In each round, a node can be selected as dominator if node v has a degree higher than its 1-hop and 2-hop neighbor nodes [21]. The degree of a node is the number of nodes in the range of transmission radius. When the degree of nodes are larger than that of 1-hop neighbor nodes and 2-hop neighbor nodes, the selected number of dominator nodes will be smaller; thus, the transmission delay and complexity are reduced. The color of dominator node changes to black. When node A is selected as a dominator, all nodes which connect with node A become dominated nodes and all edges which connect with node A are deleted from the network. Then, an update of the degree of nodes in the network is performed. The above steps are repeated until the degree of all white nodes is less than 0. At last, those nodes with 0 degree are regarded as virtual dominators.We illustrate the construction of PDS in the network as shown in Figure5(a); we use the nodes 1, 2, 5, 6, 9, 10, and 11. According to the analysis, one node has been selected as a dominators that has a higher degree than 1-hop and 2-hop neighbor nodes. In Figure 5(a), the degree of nodes 1, 2, 5, 6, 9, 10, and 11 are 1, 1, 4, 1, 1, 1, and 2, respectively, while the degree of 3, 4, 7, 8, 1, 2, 6, 9, 10, and 11 are 3, 1, 3, 3, 1, 1, 1, 1, 1, and 2, respectively. It can also be seen that node 5 has a higher degree than nodes 3, 4, 7, 8, 1, 2, 6, 9, 10, and 11. Thus, node 5 is selected as a dominator as the first round, and node 5 is colored as black, this is shown in Figure 5(b). After one dominator is selected, the edges of nodes which are connected to dominator are deleted. In Figure 5(c), the edges of node 5 are deleted. Then, the above steps are repeated, and node 11 is selected as dominator, this is shown in Figure 5(d). Other nodes 1, 2, 6, 9, 10 are also selected as virtual-dominator, they are colored as green in Figure 5(e). Thus, the CDS is constructed.Figure 5
The process of constructing CDS.
(a)
Initial network
(b)
The selected first dominator
(c)
Delete the edge which connects with node 5
(d)
The second dominator
(e)
Delete the edge which connect with node 7
(f)
Selecting virtual dominator(2) In the Second Phase, All Dominators and Virtual-Dominators Are Connected. In order to reduce the transmission delay, when constructing a CDS, the number of nodes in CDS should be reduced as soon as possible. When one node transmits a data packet to another node, the hop count is less, and therefore the transmission delay is less. In order to make all dominator and virtual dominators connect to the whole network, this section gives a method that determines how to select the dominator as the connector. The method calculates the number of components it is connected with. A node with the maximum number of components is selected as a connector. But if there are some dominated nodes connected with the maximum number of components, these dominated nodes are selected as the connectors. After selecting dominated nodes as a connector, the other dominated nodes recalculate the number of components it is connected with. Then according to above rules, the above steps are repeated until all dominators and virtual-dominators are connected by dominated nodes. According to the analysis, a dominated node with a maximum number of components is connected to other selected connectors. When two dominated nodes have the same maximum number of components, the nodes with smaller node IDs are selected as connectors. This can be seen in Figure 6(a), where the number of components for nodes 3, 4, 7, 8, and 12 are connected with 3, 1, 3, 3, and 1, respectively, and where node 3 has a small node ID; thus, node 3 is selected as a connector in the first round, as shown in Figure 6(b), where node 3 is colored as blue. We then repeat the above steps, until all dominator and virtual-dominators are connected. Following on, nodes 7 and 8 are selected as connectors, as shown in Figures 6(c) and 6(d).Figure 6
An example of connecting nodes in PDS.
(a)
The initial PDS
(b)
The selected first connector
(c)
The selected second connector
(d)
The selected third connector(3) Delete Redundant Dominators. From the above analysis, nodes in CDS can cover the entire network. This process ensures that the number of nodes in the CDS is reduced as soon as possible, while ensuring all nodes cover the whole network. The redundant nodes in the CDS should be deleted. When one dominator become a dominated node, all nodes in CDS can also cover all nodes; the dominator is regarded as a redundant dominator. This section shows how the redundant nodes are deleted in CDS: (1) a virtual-dominator connects to the CDS through a connector [21]. (2) A virtual-dominator connects to CDS by two connectors, and the two connectors are connected to each other [21]. The two types of virtual-dominators become dominated nodes. The dominators and connectors can also cover all nodes in the network after a virtual-dominator is changed to a dominated node; thus, the transmission delay and complexity are reduced. Thus, those two kinds of virtual-dominator can become dominated nodes.According to the above method, the last CDS set is shown in Figure7. Nodes 1, 2, 6, 9, and 10 are transmitted to dominators, because they have only one connector. A CDS set is constructed through the above analysis.Figure 7
The constructed CDS.In the process of constructing CDS, the first step is to select dominator. In this step, the complexity isO∑i=0vm−i if the number of dominator is m. Because selecting dominators is based on the degree of one-hop neighbor and two-hop neighbor, thus, when the first dominator is determined, the system must search m nodes in the network. However, the second dominator is determined, and the system just searches m−1 nodes due to the determined dominator. Thus, when the number of dominator is v, the complexity is O∑i=0vm−i. The second step is to select virtual dominator: the system searches m−v nodes once, its complexity is Om−v. The third step is to select connector: its complexity is Om−v−s. Thus, the total complexity is O∑i=0vm−i+2m−2v−s.


## 4.3.2. Adjusting Duty Cycle of Nodes in the Network

At first, all nodes have the same duty cycle. Each node has storage space, which is used to store energy consumption of neighbor nodesϱjneigh, which is set to 0. ϱjk refers to the energy consumption of a neighboring node k of node j. In the process of data transmission, when node A transmits data packet pa to node B, the energy consumption ϱa of node A is added in the header of the data packet. When node C in CDS receives a data packet pa, the node reads the energy consumption ϱa of node A, then the energy consumption ϱa is stored in node C in order of magnitude of energy consumption. Then, node C calculates its energy consumption according to (8); the energy consumption of node C is also added in the header of data packet pa, and the data packet is then transmitted to the next nodes in the network. Thus, reciprocating until data is transmitted to the destination.When one round of data transmission is completed, the duty cycle of nodes in the network is adjusted according to the energy consumption of nodes and the energy consumption of its neighboring dominators.In this paper, this method aims to make full use of energy left at all nodes in the network. Considering nodej has neighbour dominators a,b,c,…, the energy consumption of those neighboring nodes are ϱja,ϱjb,ϱjc,…, and ϱja<ϱjb<ϱjc…. Thus, the series of evaluation results can be expressed as: ϱjneigh=ϱja,ϱjb,ϱjc,…,ϱjn; the elements in ϱja,ϱjb,ϱjc,…,ϱjn are in size order. ϱja is the minimum energy consumption of neighboring dominators of node j, and ϱjn is the maximum energy consumption of neighbor dominator of node j. The total average energy consumption evaluation results of neighbor dominators of node j are as follows:
(6)ϱjneigh=∑k=1nϱja.hkw,w≠0,1,w=0.hk∈0,1 is the attenuation function. It is used to make a reasonable weighting of the energy consumption of different neighboring dominators. The result of energy consumption in the size closer to the maximum energy consumption is to adjust the duty cycle of nodes. More weight should be given to the maximum energy consumption of neighboring dominators; thus, the attenuation function is defined as
(7)hk=1,k=w,hk−1=hk−1w,1≤k≤w.According to the above analysis, nodej stores energy consumption of neighbor dominators. The energy consumption of neighbor dominators of node j in the network can be obtained.Moreover, in this paper, nodes with the maximum energy consumption give the greatest weight. Because in the network, the network lifetime is often dependent on the node with the maximum energy consumption. When the energy consumption of some nodes in the network has been exhausted, many nodes also have excess energy left in the network. Adjustment of the duty cycle can allow the full use of the energy left in nodes. When the energy consumption of neighbor dominators is calculated according to (6), the duty cycle of nodes is adjusted according to the energy consumption of nodes and the energy consumption of neighbor dominators. According to (8), the energy consumption of nodes is calculated as follows:
(8)ϱj=ϖrjIrj+ϖsjIsj.The energy consumption of nodes can be divided into two parts,ϖrjIrj and ϖsjIsj, the energy consumption of the receiving data packet and the sending data packet.
(9)ϖsj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa,ϖrj=ςrΘd+ςrΘp+ςsΘa.Thus, in order to make full use of the energy left in nodes in the network, the energy consumptionϱj of node j should be equal to the energy consumption of its neighboring nodes or node j. Thus,
(10)ϱj=ϱjneigh.However, the energy consumption of nodej is as follows.
(11)ϱj=ϖrjIrj+ϖsjIsj=ςrΘd+ςrΘp+ςsΘaIrj+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj.Thus, the energy consumption is as follows.(12)ϱjneigh=ςrΘd+ςrΘp+ςsΘaIrj+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj.When one round of the data packet is completed, each node adjusts its duty cycle.(13)ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsj⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsj=ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsj−ςsΘd=τacjτcom2Θp+ΘaςsΘp+ςrΘa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsjςsΘp+ςrΘa−ςsΘdςsΘp+ςrΘa=τacjτcom2Θp+Θa⇒ϱjneigh−ςrΘd+ςrΘp+ςsΘaIrjIsjςsΘp+ςrΘaτcom−ςsΘdςsΘp+ςrΘaτcom=τacj2Θp+Θa⇒ϱjneigh−βIrjIsjατcom−ςsΘdατcom2Θp+Θa=τacj⇒τacj=2ϱjneighγ−βIrjγIsjατcom−ςsΘdγατcom,whereα=ςsΘp+ςrΘa,β=ςrΘd+ςrΘp+ςsΘa,andγ=Θp+Θa.


## 4.3.3. The Rotation of Nodes in CDS

In previous schemes, nodes in CDS are always the same. But in this paper, in order to balance energy consumption of nodes in the network, when one round of data transmission is completed, nodes in CDS are reselected. In this paper, when a system selects dominator nodes, the system not only considers the number of covering nodes of one node but also considers the energy consumption of nodes. If the number of nodes is larger, the energy consumption of those nodes is larger. To balance the energy consumption, thus, the nodes in CDS should be rotated.After one round of data packet is completed, the system reselects nodes to form CDS, and the rules are as follows.When one round of data transmission is completed, the CDS is reconstructed. In the first step, the system constructs PDS, the method of selecting nodes as PDS is different from the previous method. The energy consumption of nodes is also considered. In this term, if one nodev has a degree higher than its 1-hop and 2-hop neighbor nodes, and the energy consumption of node v is lower than the total average energy consumption evaluation results ϱvneigh of neighbor dominators of node v, the node can be selected as a dominator. Where the maximum energy consumption of the neighboring node of node v is selected as a dominator, the color of dominators becomes black. After node A is selected as a dominator, all nodes which connect with node A become the dominated nodes, and the connected edge of node A is deleted. At this point, the degree of nodes is updated. The above steps are repeated until the degree of all white nodes is less than 0. At last, those nodes with 0 degree are regarded as virtual dominator.It can be seen from Figure8 that when one round of data transmission is completed, the CDS is reconstructed. Nodes 1, 4, 6, and 11 may be selected as dominators due to the larger energy left at nodes.Figure 8
The reconstructed CDS.


## 4.3.4. The Calculation of Energy Consumption of Network

This section describes the amount of data in each area, followed by the energy consumption in different areas for collecting data.In this paper, the aim is to use energy left at nodes to increase the duty cycle and thus improve network performance. In this paper, each node has two status: (1) sleep status: where nodes are in asleep, the sensing device of nodes are closed and nodes cannot receive a data packet, but nodes send data packet and (2) active status: where nodes are active, nodes receive and send data packets.ϱi is the total energy consumption of nodes. ϱi can be computed as follows:
(14)ϱi=ϖriIri+ϖsiIsi.ϖsi is the power used for receiving a packet. ϖsi is the power used in transmitting a packet. It can be calculated as follows:
(15)ϖsi=ςsΘd+τacτcom2Θp+ΘaςsΘp+ςrΘa,where ςsΘd is the energy consumption used for sending a data packet, ςs is the transmission power consumption, ςr is the reception power consumption, Θd is the packet duration, Θa is the ACK window duration, Θp is the preamble duration, τa is the active period radio, and τc is the working cycle. ϖri can be calculated as follows:
(16)ϖri=ςrΘd+ςrΘp+ςsΘa.ςrΘd is the energy consumption required for receiving a packet, and ςrΘp+ςsΘa is for the reception of the preamble and the transmission of the returned message. Equation (14) calculates the total energy consumption.


## 4.3.5. Adjustable Duty Cycle Calculation

The main difference from the ADCC scheme to previous schemes is the different duty cycles of nodes. Therefore, the calculation method of sensing and communicating duty cycles in different regions of the network is given in this section.Theorem 1.
Considering that the number of sending and receiving packets of nodes near to the network center areIslmin and Irlmin, respectively, the residual energy is only used for increasing τac, the active period of node i at l m away from sink is τaci, and the active period of nodes nearest to the network center is τaclmin. The ratio δ of τaci to τaclmin is as follows:
(17)δ=Islmin−2βIri−IrlminγτcomατaclminIsi+2ςsΘdIsi−IslminγτcomατaclminIsi,α=ςsΘp+ςrΘa,β=ςrΘd+ςrΘp+ςsΘa,γ=Θp+Θa.Proof 1.
In order to make full use of the energy left of nodes, the energy consumption of nodes should be the same, that is,(18)ϖriIri+ϖsiIsi=ϖrlminIrlmin+ϖslminIslmin.That is,(19)ςrΘd+ςrΘp+ςsΘaIri+(ςsΘd+τaciτcom2Θp+ΘaςsΘp+ςrΘaIsi=ςrΘd+ςrΘp+ςsΘaIrlmin+ςsΘd+τaclminτcom2Θp+ΘaςsΘp+ςrΘaIslmin⇒ςrΘd+ςrΘp+ςsΘaIri−Irlmin+ςsΘdIsi−Islmin=τaclminτcom2Θp+ΘaςsΘp+ςrΘaIslmin−τaciτcom2Θp+ΘaςsΘp+ςrΘaIsi⇒2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘa+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘa=τaclminIslmin−τaciIsi⇒2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘa+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘa=τaclminIslmin−τaciIsi⇒δ=Islmin−2ςrΘd+ςrΘp+ςsΘaIri−IrlminΘp+ΘaτcomςsΘp+ςrΘaτaclminIsi+2ςsΘdIsi−IslminΘp+ΘaτcomςsΘp+ςrΘaτaclminIsi.The duty cycle is adjusted according to its energy consumption and the energy consumption of the neighboring dominators. The adjusted duty cycle is shown in Figure9. It can be seen that if the initial duty cycle of nodes is 0.5 and 0.8, at last, the duty cycle of nodes is different. When nodes are near to the network center, the duty cycle of nodes is lower, while for nodes far from the network center, the duty cycle is larger.Figure 9
The duty cycle of different nodes with different initial duty cycle.The improved duty cycle of nodes is shown in Figure10. The adjusted duty cycle in ADCC scheme is about 1-2 times higher than the duty cycle in the previous scheme. The increased duty cycle is completed by the energy left of nodes; therefore, it does not damage the network lifetime.Figure 10
The ratio of duty cycle of nodes.The duty cycle of nodes in the network with differentλ and the ratio of duty cycle of nodes in ADCC scheme to the duty cycle of nodes in the previous scheme are given in Figures 11 and 12, respectively. Some conclusions are that (1) the bigger the λ is, the smaller the duty cycle is. (2) The distance of nodes to the network center is longer, and the duty cycle of nodes is larger. The reason behind this is that the amount of loaded data packets in nodes near to the network center is larger; thus, the energy consumption of nodes near to the network center is higher. The energy left in nodes far from the network center is used to increase the duty cycle.Figure 11
The duty cycle of nodes of network with differentλ.Figure 12
The ratio of duty cycle of nodes of networks with differentλ.


## 4.3.6. Schedule Method of ADCC Scheme

The duty cycle of nodes is adaptively adjusted by the ADCC scheme which uses the feedback control method; the aim of this paper is to reduce the transmission delay while retaining network lifetime [51].In this paper, the way where the data packets are utilized is different from previous schemes. The data packet is transmitted from one node to any node of network in ADCC scheme. This causes maximum energy consumption of the network and is calculated with difficulty. In this scheme, the duty cycle of nodes is adjusted according to its energy consumption and the energy consumption of neighbor nodes in the network.In the initial stage, nodes send messages to sense energy consumption of neighbor nodes and the degree of nodes, then constructs the CDS.During the transmission of data, when nodei sends a data packet to node j, the energy consumption ϱi of node i is added in the header of the data packet. When node k receives the data packet, it records the energy consumption, then calculates the energy left on node i. The duty cycle of node i is adjusted according to the energy left of node i. The detailed method is given in Algorithm 1.Algorithm 1: The ADCC scheme for adjusting duty cycle.
Initialize: Considering the active time slots of node vi are τaci,
the energy consumption of nodevi is ei and the energy consumption
ϱi is set 0. The CDS is then constructed.
Input energy consumption of each node:
Case 1: The process of data transmission
1:For each node vi Do
2:    Sends a data packetpi to other nodes,
3:  Add the energy consumptionϱi of node vi in the header
of packet.
4:For each node vk receives the data packet Do
5:      Read the energy consumptionϱi from the header of
data packet, then store the energy consumptionϱi in
nodevk.
6:     Delete the energy consumption ϱi from the header of
data packet, and store the energy consumption ofvk
in the header of data packetpi.
7:    End for
8: End for
Case 2: Adjust the duty cycle of nodes
9:For each node vi after one round of data transmission Do
10:    Compare the energy consumption of nodes stored in node
vi, and its energy consumption in accordance with the
order from small to largeϱja,ϱjb,ϱjc…ϱjd, and store its
energy consumptionϱi.
11:    According to the (6), calculate the average energy
consumption of neighbor nodes of nodevi.
12:ϱineigh=ϱi
13:If ϱineigh>ϱi then
14:     Computeτaci according to the (13);
15:Else if ϱineigh<ϱi then
16:      Maintain the current duty cycle.
17:  End if
18:End for
19:Output duty cycle of each node
Case 3: Reconstruct CDS
20: According to Section4.2, construct PDS.
21: According to Section4.2, connect nodes in PDS, to make
the network connection.
22: In order to reduce transmission delay, delete redundancy nodes.
23: At last, CDS is reconstructed.
24: Return to step 1.
Output the duty cycle of each node


## 5. The Experimental Results and Analysis

### 5.1. Analysis of Node Energy Consumption

To evaluate the performance of the ADCC scheme, we must first analyze the energy consumption of nodes in different areas. Second, according to the energy left in nodes in the network, adjusting the duty cycle of nodes can improve the communication delay while retaining network lifetime. We studied the energy consumption and gave the detailed calculation method for improving the duty cycle of nodes.Theorem 2.
Considering the network, radius isR and transmission of the radius of node is r. The probability of occurrence of an event is λ, each data packet is transmitted from one node to another node in the network. Considering node i whose distance from the sink isl,l=zr+x, ωt is the energy consumption for transmission of one bit of data. ωr is the energy consumption for receiving one bit of data. After one round of data collection, the energy consumption ϱi for data operation of node i is
(20)ϱi=ςrΘd+ςrΘp+ςsΘaIri+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsiλωr,where
(21)Iri=2λρarcoslRR2−lR2−l2−2λρarcosl/RR2−lR2−l22πR2,Isi=2λρarcoslRR2−lR2−l2+λ−2λρarcosl/RR2−lR2−l22πR2.Proof 2.
Considering the network model is given in Figure13, its radius is R and the node transmission radius is r, the generation rate of the event is λ, node i whose distance from the sink isl,l=zr+x, and the node density is ρ. The blue nodes are dominator nodes. When nodes need to transmit codes, the nodes transmit codes to a node with blue color. Node i whose distance from the sink isl,l=zr+x, the area of node i is 1/2lR2−l2, so the area of this area is lR2−l2, and the area of the left of node i is 1/2πR2−lR2−l2. The number of nodes to the left of node i is ρ1/2πR2−lR2−l2. In one round, the number for sending a data packet to nodes to the left of node i is λρ1/2πR2−lR2−l2.
The area of the right of nodei is 1/2πR2+lR2−l2. The number of nodes to the right of the node i is ρ1/2πR2+lR2−l2. In one round, the number for sending a data packet of nodes to the right of the node i is λρ1/2πR2+lR2−l2.
During the process of constructing CDS and in accordance with the above analysis, the number of nodes in CDS should be reduced as soon as possible. In the last step, the redundant nodes are deleted. Thus, when one node transmits a data packet to another node, only one path is used to transmit data packet.
The energy consumption of nodei includes the energy consumption for sending the data packet, receiving data packet, and sleeping. The number of nodes receiving the data packet Iri of node i is as follows. Nodes send a data packet to any node in the network. Considering there is only one path from one node to another node, during one round of data transmission, each node sends one data packet to another node. Thus, for node i, the number of receiving data packets include the data packets generated from the left nodes of node i and the right nodes of node i. If node i receives data packet from the left of node i, one node in the left of node i must transmit the data packet to one node on the right of node i. Because one node is randomly selected for the destination, the number of receiving data packets Ωlefti for node i, from one node in the left of node i, is as follows:
(22)Ωlefti=λρπR2−2arcosl/R/2π∗πR2+lR2−l2λρπR2=πR2−arcosl/R∗R2+lR2−l2πR2.
The number of nodes to the left of nodei is λρarcosl/RR2−lR2−l2; thus, the total number of receiving data packets Ωtotali of node i from nodes in the left of node i is as follows.
(23)Ωtotali,o=πR2−arcosl/R∗R2+lR2−l2πR2∗λρarcoslRR2−lR2−l2=λρarcoslRR2−lR2−l2−λρarcosl/RR2−lR2−l22πR2.
According to the above analysis, the total number of receiving data packetsΩtotali for node i from nodes in the left of node i is
(24)Ωtotali,r=λρarcosl/R∗R2−lR2−l2λρπR2∗λρπR2−arcoslR∗R2+lR2−l2=arcosl/R∗R2−lR2−l2πR2∗λρπR2−arcoslR∗R2+lR2−l2=λρarcoslRR2−lR2−l2−λρarcosl/RR2−lR2−l22πR2.
Thus, the total number of receiving data packets of nodei is as follows:
(25)Iri=Ωtotali,r+Ωtotali,o=2λρarcoslRR2−lR2−l2−2λρarcosl/RR2−lR2−l22πR2.
When nodei receives data packets, it must transmit the data packet to the next node. At the same time, node i generated one data packet at probability λ in one round. Thus, the number of receiving data packets Isi for each node i is as follows:
(26)Isi=Iri+λ=2λρarcoslRR2−lR2−l2+λ−2λρarcosl/RR2−lR2−l22πR2.
It can also be seen that the energy consumption of nodei is as follows:
(27)ϱi=ϖriIri+ϖsiIsi,where ϖsi=ςsΘd+τaciτcom/2Θp+ΘaςsΘp+ςrΘa, ϖri=ςrΘd+ςrΘp+ςsΘa.
Thus, the energy consumption of nodei is as follows:
(28)ϱi=ςrΘd+ςrΘp+ςsΘaIri+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsi.
That is,(29)ϱi=ςrΘd+ςrΘp+ςsΘa2λρarcoslRR2−lR2−l2−2λρarcosl/RR2−lR2−l22πR2+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa2λρarcoslRR2−lR2−l2+λ−2λρarcosl/RR2−lR2−l22πR2.Figure 13
The structure of network.The amount of receiving data packets and the amount of sending data packets are given in Figure14. The amount of receiving and sending data packet is reduced with the increase of the distance of nodes to network center. The trend of amount of sending data packets is the same with the trend of amount of receiving data packets. The closer the distance of nodes to the sink, the larger the energy consumption.Figure 14
The amount of receiving data packet of nodes in different areas.And the energy consumption of receiving data packets and sending data packets is given in Figures15 and 16, respectively. The total energy consumption of nodes in the network is given in Figure 17. It can be seen that whether the duty cycle is big or small, the energy consumption of nodes far from the network center in ADCC is higher than the energy consumption of nodes in the base primitive scheme. It shows that because nodes increase the duty cycle of nodes in the network in ADCC scheme, the energy consumption of nodes far from the network center in the network is higher. But the maximum energy consumption of nodes in the network in ADCC scheme is not bigger than the maximum energy consumption of nodes in the network in the base primitive scheme. This shows that the proposed scheme has better performance.Inference 1.
Considering nodei whose distance from the sink isl,l=zr+x. The number of nodes in the network are n. ϱi is the energy consumption of node i, Einit is the initial energy consumption of node i, and the network lifetime ψ of node i is as follows.
(30)ψ=Einitϱi,
whereϱi=ϖriIri+ϖsiIsi, ϖsj=ςsΘd+τacjτcom/2Θp+ΘaςsΘp+ςrΘa, ϖrj=ςrΘd+ςrΘp+ςsΘa.Proof 3.
The network lifetime of node is referred to as the lapse time of nodes that fist died, and is shown as above.Figure 15
The energy consumption of nodes receiving data packets in different areas.Figure 16
The energy consumption of sending data packet of nodes in different areas.Figure 17
The total energy consumption of nodes in different areas.The network lifetime is shown in Figure18. It suggests that the network lifetime in ADCC scheme is higher than that of the base primitive scheme. In this paper, the duty cycle of nodes are adjusted according to the energy left at the nodes. However, the maximum energy consumption of nodes in ADCC scheme is not higher than the maximum energy consumption of nodes in the base primitive scheme. Network lifetime is defined as the lapse time of nodes that first died. Thus, the network lifetime in this scheme is not damaged.Inference 2.
Considering nodei whose distance from the sink isl,l=zr+x. The number of nodes in the network is n. ϱi is the energy consumption of node i, and Einit is the initial energy consumption of node i. The energy utilization rate ξ of network is as follows.
(31)ξ=∑i=1nϱi∑i=1nEinit.Proof 4.
The energy efficiency of the network is the ratio of total energy consumption of the network to the total initial energy of the network. Thus, the total energy consumption of network is∑i=1nϱi, and the total initial energy of network is ∑i=1nEinit; thus, the energy efficiency is as follows:
(32)ξ=∑i=1nϱi∑i=1nEinit.Figure 18
The network lifetime of network with different duty cycles.The energy utilization rate is shown in Figure19. It can be seen that energy efficiency in ADCC scheme is higher than that of the base primitive scheme. In this paper, the duty cycle of nodes is adjusted, and the more energy left for the nodes to use. Thus, the total energy of nodes is used to transmit data packages; the energy efficiency is higher in ADCC scheme than that of the base primitive scheme.Figure 19
The network utilization rate.


#### 5.1.1. Analysis of Transmission Delay

Theorem 3.
The network radius isR, and the transmission radius of a node isr. Considering node vi whose distance from the network center is l,l=zr+x, transmits the data packet to nodes vk, whose distance from the network center is k. μl→k and is referring to the number of hops from node vi to node vk. According to [26], the transmission delay σl→k of data packet is as follows:
(33)σl→k=μl→k1−τaci2τcom2+Θd+Θp+Θa.Proof 5.
According to [31], the transmission delay of each hop is σl→k=μl→k1−τaci2τcom/2+Θd+Θp+Θas; due to the hop count being related to the distance, nodes with different hops have different τaci. According to different distances of nodes to the network center, nodes adjust duty cycle of nodes; thus, μl→k can be computed.The transmission delay of each hop and the maximum transmission delay is shown in Figures20 and 21, respectively. Due to increase of the duty cycle of nodes in the ADCC scheme, when one data packet needs to be transmitted to next node, if the duty cycle of the next nodes is small, the data packet must be transmitted to the next nodes in the next active period which increases the transmission delay. Thus, increasing the duty cycle can reduce the transmission delay while retaining network lifetime.Figure 20
The transmission delay.Figure 21
The maximum transmission delay.


## 5.1. Analysis of Node Energy Consumption

To evaluate the performance of the ADCC scheme, we must first analyze the energy consumption of nodes in different areas. Second, according to the energy left in nodes in the network, adjusting the duty cycle of nodes can improve the communication delay while retaining network lifetime. We studied the energy consumption and gave the detailed calculation method for improving the duty cycle of nodes.Theorem 2.
Considering the network, radius isR and transmission of the radius of node is r. The probability of occurrence of an event is λ, each data packet is transmitted from one node to another node in the network. Considering node i whose distance from the sink isl,l=zr+x, ωt is the energy consumption for transmission of one bit of data. ωr is the energy consumption for receiving one bit of data. After one round of data collection, the energy consumption ϱi for data operation of node i is
(20)ϱi=ςrΘd+ςrΘp+ςsΘaIri+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsiλωr,where
(21)Iri=2λρarcoslRR2−lR2−l2−2λρarcosl/RR2−lR2−l22πR2,Isi=2λρarcoslRR2−lR2−l2+λ−2λρarcosl/RR2−lR2−l22πR2.Proof 2.
Considering the network model is given in Figure13, its radius is R and the node transmission radius is r, the generation rate of the event is λ, node i whose distance from the sink isl,l=zr+x, and the node density is ρ. The blue nodes are dominator nodes. When nodes need to transmit codes, the nodes transmit codes to a node with blue color. Node i whose distance from the sink isl,l=zr+x, the area of node i is 1/2lR2−l2, so the area of this area is lR2−l2, and the area of the left of node i is 1/2πR2−lR2−l2. The number of nodes to the left of node i is ρ1/2πR2−lR2−l2. In one round, the number for sending a data packet to nodes to the left of node i is λρ1/2πR2−lR2−l2.
The area of the right of nodei is 1/2πR2+lR2−l2. The number of nodes to the right of the node i is ρ1/2πR2+lR2−l2. In one round, the number for sending a data packet of nodes to the right of the node i is λρ1/2πR2+lR2−l2.
During the process of constructing CDS and in accordance with the above analysis, the number of nodes in CDS should be reduced as soon as possible. In the last step, the redundant nodes are deleted. Thus, when one node transmits a data packet to another node, only one path is used to transmit data packet.
The energy consumption of nodei includes the energy consumption for sending the data packet, receiving data packet, and sleeping. The number of nodes receiving the data packet Iri of node i is as follows. Nodes send a data packet to any node in the network. Considering there is only one path from one node to another node, during one round of data transmission, each node sends one data packet to another node. Thus, for node i, the number of receiving data packets include the data packets generated from the left nodes of node i and the right nodes of node i. If node i receives data packet from the left of node i, one node in the left of node i must transmit the data packet to one node on the right of node i. Because one node is randomly selected for the destination, the number of receiving data packets Ωlefti for node i, from one node in the left of node i, is as follows:
(22)Ωlefti=λρπR2−2arcosl/R/2π∗πR2+lR2−l2λρπR2=πR2−arcosl/R∗R2+lR2−l2πR2.
The number of nodes to the left of nodei is λρarcosl/RR2−lR2−l2; thus, the total number of receiving data packets Ωtotali of node i from nodes in the left of node i is as follows.
(23)Ωtotali,o=πR2−arcosl/R∗R2+lR2−l2πR2∗λρarcoslRR2−lR2−l2=λρarcoslRR2−lR2−l2−λρarcosl/RR2−lR2−l22πR2.
According to the above analysis, the total number of receiving data packetsΩtotali for node i from nodes in the left of node i is
(24)Ωtotali,r=λρarcosl/R∗R2−lR2−l2λρπR2∗λρπR2−arcoslR∗R2+lR2−l2=arcosl/R∗R2−lR2−l2πR2∗λρπR2−arcoslR∗R2+lR2−l2=λρarcoslRR2−lR2−l2−λρarcosl/RR2−lR2−l22πR2.
Thus, the total number of receiving data packets of nodei is as follows:
(25)Iri=Ωtotali,r+Ωtotali,o=2λρarcoslRR2−lR2−l2−2λρarcosl/RR2−lR2−l22πR2.
When nodei receives data packets, it must transmit the data packet to the next node. At the same time, node i generated one data packet at probability λ in one round. Thus, the number of receiving data packets Isi for each node i is as follows:
(26)Isi=Iri+λ=2λρarcoslRR2−lR2−l2+λ−2λρarcosl/RR2−lR2−l22πR2.
It can also be seen that the energy consumption of nodei is as follows:
(27)ϱi=ϖriIri+ϖsiIsi,where ϖsi=ςsΘd+τaciτcom/2Θp+ΘaςsΘp+ςrΘa, ϖri=ςrΘd+ςrΘp+ςsΘa.
Thus, the energy consumption of nodei is as follows:
(28)ϱi=ςrΘd+ςrΘp+ςsΘaIri+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘaIsi.
That is,(29)ϱi=ςrΘd+ςrΘp+ςsΘa2λρarcoslRR2−lR2−l2−2λρarcosl/RR2−lR2−l22πR2+ςsΘd+τacjτcom2Θp+ΘaςsΘp+ςrΘa2λρarcoslRR2−lR2−l2+λ−2λρarcosl/RR2−lR2−l22πR2.Figure 13
The structure of network.The amount of receiving data packets and the amount of sending data packets are given in Figure14. The amount of receiving and sending data packet is reduced with the increase of the distance of nodes to network center. The trend of amount of sending data packets is the same with the trend of amount of receiving data packets. The closer the distance of nodes to the sink, the larger the energy consumption.Figure 14
The amount of receiving data packet of nodes in different areas.And the energy consumption of receiving data packets and sending data packets is given in Figures15 and 16, respectively. The total energy consumption of nodes in the network is given in Figure 17. It can be seen that whether the duty cycle is big or small, the energy consumption of nodes far from the network center in ADCC is higher than the energy consumption of nodes in the base primitive scheme. It shows that because nodes increase the duty cycle of nodes in the network in ADCC scheme, the energy consumption of nodes far from the network center in the network is higher. But the maximum energy consumption of nodes in the network in ADCC scheme is not bigger than the maximum energy consumption of nodes in the network in the base primitive scheme. This shows that the proposed scheme has better performance.Inference 1.
Considering nodei whose distance from the sink isl,l=zr+x. The number of nodes in the network are n. ϱi is the energy consumption of node i, Einit is the initial energy consumption of node i, and the network lifetime ψ of node i is as follows.
(30)ψ=Einitϱi,
whereϱi=ϖriIri+ϖsiIsi, ϖsj=ςsΘd+τacjτcom/2Θp+ΘaςsΘp+ςrΘa, ϖrj=ςrΘd+ςrΘp+ςsΘa.Proof 3.
The network lifetime of node is referred to as the lapse time of nodes that fist died, and is shown as above.Figure 15
The energy consumption of nodes receiving data packets in different areas.Figure 16
The energy consumption of sending data packet of nodes in different areas.Figure 17
The total energy consumption of nodes in different areas.The network lifetime is shown in Figure18. It suggests that the network lifetime in ADCC scheme is higher than that of the base primitive scheme. In this paper, the duty cycle of nodes are adjusted according to the energy left at the nodes. However, the maximum energy consumption of nodes in ADCC scheme is not higher than the maximum energy consumption of nodes in the base primitive scheme. Network lifetime is defined as the lapse time of nodes that first died. Thus, the network lifetime in this scheme is not damaged.Inference 2.
Considering nodei whose distance from the sink isl,l=zr+x. The number of nodes in the network is n. ϱi is the energy consumption of node i, and Einit is the initial energy consumption of node i. The energy utilization rate ξ of network is as follows.
(31)ξ=∑i=1nϱi∑i=1nEinit.Proof 4.
The energy efficiency of the network is the ratio of total energy consumption of the network to the total initial energy of the network. Thus, the total energy consumption of network is∑i=1nϱi, and the total initial energy of network is ∑i=1nEinit; thus, the energy efficiency is as follows:
(32)ξ=∑i=1nϱi∑i=1nEinit.Figure 18
The network lifetime of network with different duty cycles.The energy utilization rate is shown in Figure19. It can be seen that energy efficiency in ADCC scheme is higher than that of the base primitive scheme. In this paper, the duty cycle of nodes is adjusted, and the more energy left for the nodes to use. Thus, the total energy of nodes is used to transmit data packages; the energy efficiency is higher in ADCC scheme than that of the base primitive scheme.Figure 19
The network utilization rate.


### 5.1.1. Analysis of Transmission Delay

Theorem 3.
The network radius isR, and the transmission radius of a node isr. Considering node vi whose distance from the network center is l,l=zr+x, transmits the data packet to nodes vk, whose distance from the network center is k. μl→k and is referring to the number of hops from node vi to node vk. According to [26], the transmission delay σl→k of data packet is as follows:
(33)σl→k=μl→k1−τaci2τcom2+Θd+Θp+Θa.Proof 5.
According to [31], the transmission delay of each hop is σl→k=μl→k1−τaci2τcom/2+Θd+Θp+Θas; due to the hop count being related to the distance, nodes with different hops have different τaci. According to different distances of nodes to the network center, nodes adjust duty cycle of nodes; thus, μl→k can be computed.The transmission delay of each hop and the maximum transmission delay is shown in Figures20 and 21, respectively. Due to increase of the duty cycle of nodes in the ADCC scheme, when one data packet needs to be transmitted to next node, if the duty cycle of the next nodes is small, the data packet must be transmitted to the next nodes in the next active period which increases the transmission delay. Thus, increasing the duty cycle can reduce the transmission delay while retaining network lifetime.Figure 20
The transmission delay.Figure 21
The maximum transmission delay.


## 5.1.1. Analysis of Transmission Delay

Theorem 3.
The network radius isR, and the transmission radius of a node isr. Considering node vi whose distance from the network center is l,l=zr+x, transmits the data packet to nodes vk, whose distance from the network center is k. μl→k and is referring to the number of hops from node vi to node vk. According to [26], the transmission delay σl→k of data packet is as follows:
(33)σl→k=μl→k1−τaci2τcom2+Θd+Θp+Θa.Proof 5.
According to [31], the transmission delay of each hop is σl→k=μl→k1−τaci2τcom/2+Θd+Θp+Θas; due to the hop count being related to the distance, nodes with different hops have different τaci. According to different distances of nodes to the network center, nodes adjust duty cycle of nodes; thus, μl→k can be computed.The transmission delay of each hop and the maximum transmission delay is shown in Figures20 and 21, respectively. Due to increase of the duty cycle of nodes in the ADCC scheme, when one data packet needs to be transmitted to next node, if the duty cycle of the next nodes is small, the data packet must be transmitted to the next nodes in the next active period which increases the transmission delay. Thus, increasing the duty cycle can reduce the transmission delay while retaining network lifetime.Figure 20
The transmission delay.Figure 21
The maximum transmission delay.


## 6. Conclusion

In this paper, data transmission is an important function in WSN. In previous research, most studies look at the network where nodes sense information from surrounding environment, then transmit data to network control. In this paper, we investigated the network where any node can transmit a data packet to any node in the network. In previous schemes, all sensor nodes adopt the same duty cycle to save energy, which resulting in a higher transmission delay. In order to reduce the transmission delay and balance energy efficiently, an ADCC scheme is proposed for lower transmission delays in WSN. In the ADCC scheme, the first step is to construct the CDS. Nodes in CDS set can cover across all nodes in the network, and the redundancy in nodes in CDS are deleted. The system selects nodes to construct the CDS, the system not only considers the degree of nodes but also considers the energy consumption of nodes. Nodes with greater energy consumption are easier to become nodes in CDS. The second step is to adjust the duty cycle of nodes according the difference of energy consumption of nodes and the energy consumption of its neighbor nodes. Thus, to make full use of energy left in these nodes improves duty cycle to reduce transmission delay. Hence, the transmission delays are reduced and the energy efficiency is improved while retaining a network lifetime. The more important is that this method in this paper can be applied to many methods, which can improve the performance of previous schemes. Thus, it has a very good meaning.



---

*Source: 5429546-2018-06-20.xml*