An Equilibrium Strategy-Based Routing Optimization Algorithm ... - MDPI

0 downloads 0 Views 4MB Size Report
Oct 16, 2018 - and node load severely restrict the long-term operation of the network. ... First of all, the transmission energy consumption, node residual ...
sensors Article

An Equilibrium Strategy-Based Routing Optimization Algorithm for Wireless Sensor Networks Liangrui Tang, Zhilin Lu * , Jinqi Cai

and Jiangyu Yan

State Key Laboratory of Alternate Electrical Power System with Renewable Energy Sources, North China Electric Power University, Beijing 102206, China; [email protected] (L.T.); [email protected] (J.C.); [email protected] (J.Y.) * Correspondence: [email protected]; Tel.: +86-188-1131-0900 Received: 13 September 2018; Accepted: 14 October 2018; Published: 16 October 2018

 

Abstract: In energy-constrained wireless sensor networks (WSNs), the design of an energy-efficient smart strategy is a key to extend the network lifetime, but the unbalance of energy consumption and node load severely restrict the long-term operation of the network. To address these issues, a novel routing algorithm which considers both energy saving and load balancing is proposed in this paper. First of all, the transmission energy consumption, node residual energy and path hops are considered to create the link cost, and then a minimum routing graph is generated based on the link cost. Finally, in order to ensure the balance of traffic and residual energy of each node in the network, an “edge-cutting” strategy is proposed to optimize the minimum routing graph and turn it into a minimum routing tree. The simulation results show that, the proposed algorithm not only can balance the network load and prolong the lifetime of network, but meet the needs of delay and packet loss rate. Keywords: wireless sensor networks; “edge-cutting” strategy; load balancing; energy saving; routing

1. Introduction 1.1. Background and Motivation With the acceleration of the Internet of Things era, wireless sensor networks (WSNs) have been widely deployed in various application scenarios, such as volcanic eruption monitoring [1,2], medical care monitoring [3], and smart home monitoring [4]. Therefore, many studies about the topic have been done, including load balancing, security, QoS, congestion control, connectivity, coverage [5–11], etc. Besides, due to the limited energy storage [12,13] of battery-powered sensor networks, these applications also have a common requirement for the network lifetime, thus reducing the energy consumption to extend the network lifetime is one of the key tasks of the WSN. However, some nodes undertake excessive data forwarding because of the location factors, and the network is prone to energy hole phenomenon due to uneven energy consumption [14], which resulting in faster node death and lower network lifetime. Therefore, in order to maximize the network lifetime, both energy consumption reducing and load balancing are needed to be considered when making routing decisions. 1.2. Related Works In some traditional routing algorithms that extend the network lifetime by reducing network energy consumption [15,16], the energy consumption is saved mainly by reducing the hop counts of the transmission paths. Among them, the GBR algorithm [15] finds the path with the least hops from source node to the sink by calculating the parameter “node height”; Min-Hop [16] chooses a node among the neighbors as the relay, which has the least hops from source node to the sink Sensors 2018, 18, 3477; doi:10.3390/s18103477

www.mdpi.com/journal/sensors

Sensors 2018, 18, 3477

2 of 16

node, and when there are multiple paths with the fewest hop counts, the residual energy of the nodes will be taken as a decisive factor. This type of algorithms based on the minimum hops is equivalent to the minimum energy consumption routing [17]. Generally, it can reduce the path energy consumption, but it is easy to cause some nodes to exhaust prematurely due to overuse, bringing about an uneven distribution of residual energy and a short network lifetime. In addition, there are some routing algorithms that consider the sleep strategies [18–20]. These algorithms lessen the energy consumption rate by adjusting the “sleeping” and “awake” working modes of nodes, thus prolonging the lifetime of the entire network. However, there always exists a trade-off between energy efficiency and other performances. For the above problems, some routing algorithms that consider the load balancing are proposed in [21–26]. Among them, SLDD [21] uses the evaluation function to select a super-link to redistribute network load through nodes with large energy and communication capacity on the super-link. However, since only a single metric is considered in the routing decision, this strategy can only be locally optimal, which may make other nodes exceed the load capacity [27]. In order to avoid the nodes in hot spot from taking too many forwarding tasks, in [22], the transmission power is controlled to balance the load, which can shrink the difference of residual energy of each node and achieve the purpose of extending the network lifetime, but for the network performance optimization, such as the network throughput and transmission delay, it is irrationally overlooked. DECOR [23] proposes a degree-limited routing, in which the load-balanced routing tree is established by limiting the degree of each node, but the required overhead of the computation and communication in this algorithm are large. To ensure the load balancing of node communication, a heuristic multi-path algorithm is proposed in [24], but it ignores the energy consumption caused by the distance factor. In [25], the FAFEBRM adopts an energy balancing routing protocol based on a forward sensing factor, and utilizes the energy density of the forward region and the link data traffic to make routing decisions, which can alleviate data congestion in some way, similarly, due to the energy loss of detours, it is hard to minimize the path energy consumption. In [26], FLEOR can reduce the energy waste caused by the detours on the basis of the fuzzy theory, it selects the next hop by considering the transmission distance, hop counts and energy balance of the path, which can reduce the transmission energy consumption and prioritize the nodes with higher residual energy. Nevertheless, the fuzzy rules are formulated artificially, which lead to the lack of objectivity of next hop selecting, so the final path may not be the optimal. Therefore, in order to maximize the network lifetime, we both consider reducing the energy consumption of the whole network and balancing the node load, proposing an equilibrium strategybased routing optimization algorithm for wireless sensor networks (ESRA). 1.3. Contributions Based on the above analysis, the major contributions of this paper are summarized as follows:







We defined the link cost for the sake of energy saving and less delay, by considering the residual energy of the node, the transmission energy consumption and the forward energy consumption of the next hop. We generated the minimum routing graph based on the link cost. Here, in order to obtain this graph, the shortest path set of each node is calculated from the source node to the sink node according to the improved Dijkstra algorithm [28]. We proposed an “edge-cutting” strategy to balance the load in the minimum routing graph, so that the network structure can be adjusted in real time to optimize the route by dynamically sensing the node load. Simulation results show that our algorithm can decrease the average network energy, balance the node load, extend network lifetime, and also reduce transmission delay and packet loss rate, showing a good network performance.

Sensors 2018, 18, 3477

3 of 16

The rest of this paper is organized as follows: in Section 2, we describe the network model and related definitions. Section 3 introduces the proposed ESRA algorithm in detail. The performance of our algorithm is analyzed and discussed in Section 4 according to relevant simulation results. Finally, the conclusions drawn are summarized in Section 5. 2. Network Model and Related Definitions 2.1. Network Model In this paper, we focus on the typical information collection application in event-driven wireless sensor networks. The sensor nodes periodically perceive the data and transmit them to the sink node in a multi-hop manner. In order to simplify the network, it is assumed that: (1)

(2) (3)

All sensor nodes are isomorphic and randomly deployed in a certain monitoring area. The sensor nodes have only one sink node, and the location of sensor nodes and the sink node will not be changed after being deployed. The node can change the transmission power according to the distance to the receiver, and the distance from one sensor node to another can be estimated based on the received signal strength. In a practical application, the packet size and the data generation rate can be determined according to different scenarios. As for this paper, in order to simplify the model, the size of the packet is fixed and the data generation rate is the same for all nodes.

2.2. Related Definitions In order to describe our algorithm more clearly, the relevant definitions are provided as follows: Definition 1. Network lifetime: the round of the first dead node due to energy exhaustion [29–33]. Definition 2. Forward energy consumption: the distance from the node i to the sink is defined as the forward distance dis , thus the forward energy consumption eis can be calculated according to the forward distance dis and the energy consumption model in [34]. Namely, the model is expressed as: ( Et (λ, d)

=

λEbas + λε f s d2 λEbas + λε mp d4

Er (λ) = Ebas (λ) = λEbas

d < d0 d ≥ d0

(1) (2)

where λ represents the length of the packet, and ε f s , ε mp represent the transmit amplifier, d is the distance of q node sending data, d0 = ε f s /ε mp denotes the threshold of the communication distance, Ebas is the energy consumed when transmitting or receiving 1 bit of data. Here, considering that the receiving energy consumption Er (λ) is much smaller than the sending energy consumption Et (λ, d), so we ignore it in the calculation. Definition 3. Node load: under the assumption that the data generation rate of all nodes in the network is the same, the number of descendant nodes of the node i reflects the load size in some way. At the same time, it is considered that the node itself also generate monitoring data, so the node load LN (i ) is defined as the number of all nodes (namely descendant nodes) that can transfer data to node i and also plus itself. Definition 4. The candidate parent set: in the generated minimum routing graph, all parent nodes on the multiple shortest paths of node i are defined as candidate parent set CN (i ). Definition 5. The adjacent node set: a set of nodes, whose nodes are one hop away from the nodes on the initial shortest path of node i and can transmit data to them, are denoted as NBS(i ).

Sensors 2018, 18, 3477

4 of 16

Definition 6. Transmission energy refers to the energy consumed by the source node sending the data to next hop, and the path energy consumption represents the sum of the transmission energy of each node on the path.

3. ESRA Routing Algorithm In a WSN, in order to improve the energy efficiency of the entire network and maintain a long network lifetime, it is usually necessary to adopt an energy-efficient routing strategy to reduce energy consumption. At the same time, the node load can not only reflect the traffic of the node, but also predict the residual energy of a node to some extent because of the transmission energy consumption generated by forwarding data. Therefore, so as to avoid the uneven energy distribution caused by too light or too heavy loads of the nodes, the load balancing of the nodes also should be considered. Firstly, our algorithm considers the two factors of energy consumption and hops to establish the link cost, and thus generates a minimum routing graph. Secondly, in order to balance the load of nodes, an edge-cutting strategy is implemented on the minimum routing graph. Among this process, a candidate parent node with the smallest load is set as next hop, and the links between source node and other candidate parent nodes are removed, thus the minimum routing tree is obtained so as to avoid the load unbalance caused by the influx of large amounts of data. The data flow is transmitted along the minimum routing tree, which will be dynamically adjusted by sensing the load of all sensor nodes and updating their residual energy in real time. 3.1. Link Cost Due to the limited communication distance of the sensor nodes, the nodes generally need to transmit the sensed data to the base station in a multi-hop manner. Therefore, how to establish a path with the least energy consumption from source node to the sink node is a priority for the routing algorithm. Here, in order to avoid data backhaul and ensure that data are transmitted forward along the direction of the sink, according to the model of [25], the forward neighbor node set of node i is defined as follows:  FN (i ) = j dij ≤ R, d js < dis (3) where dij is the distance from node i to node j, dis and d js are the distance from node i and node j to sink respectively, R represents the maximum communication radius of node i. As shown in Figure 1, after taking the spatial positional relationship between the current node i, the next hop j, and the sink node, as well as the energy level of each node into consideration, a data transmission path reducing energy consumption and delay is established in this paper. For source node i, the smaller the energy consumption of the single-hop transmission is to next hop node j, the slower the energy consumption caused by the data transmission. But for the overall path, if the path with a small single-hop distance (that is, the transmission energy consumption is small) is selected multiple times, there may exist more unnecessary energy loss and larger path hops will be caused due to the detour (such as the path: i → K → M → Q → sink ). Therefore, in the process of generating the link cost, the forward distance of next hop j should also be considered, because the closer the next hop is to the sink, and the less path hops it will be, thus the faster that data can be transmitted to the sink. Based on the above analysis, in order to reduce the energy consumption and transmission delay of node i, the path where the next hop is located should be as close as possible to the straight line of node i to the sink node. Therefore, in this paper, from the perspective of energy consumption and hop count, we take into account the residual energy, the energy consumption of single-hop transmission, and the forward energy consumption, the link cost ui,j between node i and node j is defined, and its expression is as follows: eij e js ui,j = α + β , j ∈ FN (i ) (4) Ei Ej

espectively. Besides, it should be noted that the link cost is set to infinity when the distan etween node i and node j is longer than the communication radius R. Simultaneously, in Equation (4),  ,  are the positive harmonic coefficients, and satis

Sensors 2018, 18, 3477 5 of 16 the value of  is larger, the selection of next hop tends to consider the residu     1 . When nergy of the where current node and the transmission energy consumption of a single hop, seeking j belongs to the forward neighbor node set of current node i to avoid the return of data packets, minimize the eenergy consumption of transmission and the energy residual energy, so that th energy consumption from node i to nodemaximize j, e js is the forward consumption ij is the transmission fromisnode j to sink,as andpossible. both of them can be calculated by the the energy consumption in [34]. the residu atio of the two as small Conversely, when value of  model is smaller, Ei , Ej are the current residual energy of node i and node j respectively. Besides, it should be noted nergy and forward energy consumption of distance forward nodenode arei and considered to than select that the link cost is set to infinity when the between node j is longer the the next ho radius ying to makecommunication the ratio of theR.two as small as possible to reduce the hop counts, so that the da Simultaneously, in Equation (4), α, β are the positive harmonic coefficients, and satisfy α + β = 1. an be transmitted to sink faster. Therefore, by adjusting the relative values of  and  , differe When the value of α is larger, the selection of next hop tends to consider the residual energy of the current node andperformance the transmission energy consumption of a single hop, seeking to minimize the energy equirements of network in hop counts and energy consumption can be obtained. consumption of transmission and maximize the residual energy, so that the ratio of the two is as According to Equation (4), when the network size is N, the link cost matrix of the who small as possible. Conversely, when the value of α is smaller, the residual energy and forward energy etwork can be expressed as: node are considered to select the next hop, trying to make the ratio of the consumption of forward

two as small as possible to reduce the hop counts, so that the data can be transmitted to sink faster. Therefore, by adjusting the relative values of α and β, different requirements of network performance 1,1 1,2 1, N 1, s in hop counts and energy consumption can be obtained. According to Equation (4), when the network size is N, the link cost matrix of the whole network 2,1 2,2 2, N 2, s can be expressed as:   u1,1 u1,2 · · · u1,N u1,s    u2,1 u2,2 · · · u2,N u2,s   U= . (5) .. .. ..  ..  . . . . . .   N ,1 N ,2 N ,N N ,s u N,1 u N,2 · · · u N,N u N,s

u  u  U   u

u

 u

u

u

 u

u

 u

u

u

     

(5

sink djs Q j

M dis dij

K R i

Figure 1. Spatial positional relationship between nodes.

Figure 1. Spatial positional relationship between nodes. 3.2. Generation of Minimum Routing Graph

Using the link cost in Section 3.1 as a weight, all shortest paths from any node i to sink can be 2. Generation of Minimum Routing Graph

found to form the minimum routing graph. Specifically, as it has been shown in Algorithm 1, the algorithm can be used obtain an initial all shortest path from nodefrom i to theany sink, node which is Using theDijkstra link cost in Section 3.1toas a weight, shortest paths i to sink can b recorded as mp0is and added to the shortest path set MPis of node i. At the same time, it can be known ound to formfrom the[28] minimum routing graph. Specifically, it has around been the shown in Algorithm 1, th that those nodes on the other shortest paths must beas distributed initial shortest is is path mpcan theto adjacent nodes NBS(i ) and the nodes in thefrom shortest path mp be sink, which ijkstra algorithm be used obtain anininitial shortest path node i to the 0 . Therefore, 0 can is chosen to form n candidate paths patht (1 ≤ t ≤ n) from node i to the sink, and these paths are is is ecorded as mp tobethe shortest setis isMP ofinitial node i. Atpath thempsame time, it can b is . It should is 0 and recorded as Padded noted that whenpath t = 1, path set as the shortest t 0.

nown from [28] that those nodes on the other shortest paths must be distributed around the initi

Sensors 2018, 18, 3477

6 of 16

Here, the total link cost of any path pathis t is defined as follows: wis t

j=| pathis t |−1

=



u j,j+1

(6)

j =1 is is Thus, the total link cost wis t of all candidate paths patht in the set P can be sequentially calculated is according to Equation (6), and when wt is equal to the total link cost of the initial shortest path w1is , this candidate shortest path will be added to MPis .

Algorithm 1 The Generation of Minimum Routing Graph Input: the link cost matrix U, the network size N Output: the shortest path set MPis 1. for I = 1:N 2. Calculate the initial shortest path mp0is of node i by Dijkstra algorithm. 3. update MPis ← MPis + mp0is 4. Find the set of adjacent nodes NBS(i ) of the shortest path mp0is . 5. k=1 // Start finding adjacent nodes from the first node of mp0is . 6. while (k < mp0is ) 7. Insert adjacent nodes from the kth node of mp0is , and get the candidate path pathis t under the current k. 8. update Pis ← Pis + pathis t 9. k=k+1 10. end // Get the candidate path set Pis . 11. g = 2 12. while (g ≤ n) 13. Calculate the link cost wis g by Equation (6). is 14. if wis = w g 1 15. update MPis ← MPis + pathis g 16. end 17. g=g+1 18. end 19. end 20. return the shortest path set MPis

3.3. Path Optimization Based on Edge-Cutting Strategy If the data are transmitted along the minimum routing graph, the average energy consumption and hops of the whole network can be effectively reduced. However, due to ignoring the loads of nodes, this routing strategy will easily lead to load unbalance and large differences of residual energy between nodes, thus reducing the network lifetime. Therefore, as it is shown in Algorithm 2, this section proposes an edge-cutting strategy to “trim” the minimum routing graph. In this edge-cutting strategy, in order to avoid a large amount of data influx into some nodes at the same period, all nodes in the minimum routing graph dynamically select the candidate parent nodes with the smallest load as the next hop, which can promote the balance of energy and traffic of each node. Furthermore, it can improve energy efficiency and prolong network lifetime simultaneously. As it can be seen from Section 3.2, a node may have multiple shortest paths. In order to make each node evenly undertake data forwarding tasks and avoid node congestion, the candidate parent node with smaller node load should be selected as the next hop as much as possible, and dynamically adjust it as the load changes.

Sensors 2018, 18, 3477

7 of 16

Algorithm 2 The Edge-Cutting Strategy Input: the minimum routing graph, the layered set L, initial load LN (i ) of node i in the minimum routing graph Output: the minimum routing tree 1. for k = 1 : (| L|−1) //complete edge-cutting for all nodes of layer lk . 2. while ( lk > 0) 3. if exist a node “a” with the least load at the layer lk 4. if exist multiple candidate parent nodes of the child nodes of node “a” 5. Cut off the link between the child nodes of “a” and other candidate parent nodes. 6. end 7. else if exist multiple nodes with the least load at the layer lk 8. Calculate the node product LCN (i ), and set the node with the smallest node product to “a”. 9. if the child node of node “a” exist multiple candidate parent nodes. 10. Cut off the link between the child nodes of “a” and its other candidate parent nodes. 11. end 12. update lk ← lk -a //delete the node “a” 13. end 14. Recalculate the load of all nodes 15. end 16. end 17. return the minimum routing tree

First, for the convenience of the following description, each node in the minimum routing graph needs to be layered, that is, all nodes in the minimum routing graph that are one hop from the sink node are defined as the first level l1 , and the nodes in the two-hop distance from the sink node are defined as the second level l2 , and so on. In this way, similar operation is completed until finding the layer that contains the most peripheral nodes. Besides, it should be specified that one node only belongs to one layer. Finally, a hierarchical set L containing all nodes is obtained, namely: L = {l1 , l2 , ..., lmax }

(7)

In the process of implementing the edge-cutting strategy, we start from the first layer l1 , and the load sizes of all nodes in the same layer are sorted. Here, it is divided into the following two cases:





Case 1 When there is only one node “a” with the least load in this layer, if the child nodes of node “a” have multiple candidate parent nodes, the link between the child nodes of node “a” and other candidate parent nodes are cut off. If the child nodes of node “a” only have one candidate parent node, the edge-cutting operation is not performed. Then, node “a” is removed from this layer and all nodes’ loads are updated. Case 2 When there are multiple nodes with the least load simultaneously, the smaller the load product of all the nodes on the shortest path which is from this node to the sink, the larger the residual energy of this node, thus the smaller the amount of data transfer undertaken by this path. That is, the advantage of this node as next hop is greater. Here the “node product”, expressed as: LCN (i ) =

∏ζ ∈ pathis −sink LN (ζ ) tf

Ei

(8)

where pathis t f is the final shortest path left by the node i after the previous edge-cutting operation, and ζ represents all nodes on this final shortest path except the sink node. Based on Equation (8), the node with smallest node product is set to “a”, if the child nodes of node “a” have multiple candidate parent nodes, then the link between the child nodes and their other

LCN (i ) 



 pathtfis  sink

LN ( )

(8)

Ei

where pathtfis is the final shortest path left by the node i after the previous edge-cutting operation, and  represents all nodes on this final shortest path except the sink node.

Sensors 2018, 18, 3477

8 of 16

Based on Equation (8), the node with smallest node product is set to “a”, if the child nodes of node “a” have multiple candidate parent nodes, then the link between the child nodes and their other candidate parent nodes are cut off. If there is only one candidate parent node of node “a”, no edge candidate parent nodes are cut off. If there is only one candidate parent node of node “a”, no edge trimming node “a” “a”isisremoved removedfrom fromthe thelayer layerand andallall nodes loads updated. trimmingisisperformed. performed. Then, Then, node nodes loads areare updated. The toto traverse other nodes in the same layer untiluntil all nodes in this Thesame sameoperation operationisisused used traverse other nodes in the same layer all nodes in layer this complete the edge-cutting. Meanwhile, this strategy will be performed on other layers until all layers layer complete the edge-cutting. Meanwhile, this strategy will be performed on other layers until all complete the edge-cutting. layers complete the edge-cutting. Here, edge-cutting strategy strategymore moreclearly, clearly,this thispaper paper Here,in inorder orderto toexplain explain the the working working process process of of edge-cutting takes a simple network topology in Figure 2 as an example. The details are as follows: takes a simple network topology in Figure 2 as an example. The details are as follows:

sink A(8)

B(9)

A(8)

C(7) G(4)

F(4)

D(4)

B(6)

H(1)

H(1)

M(1)

N(1)

N(1)

(a) sink

L(2) M(1)

A(5)

G(4)

F(3)

B(5)

A(5)

C(6) G(3)

H(1)

K(2) L(2)

N(1)

(e)

O(1)

H(1)

sink

B(4)

A(5)

C(6) G(3)

L(2)

H(1)

N(1)

(f)

C(6) G(2)

F(3)

D(4)

J(2)

K(2) L(2)

I(2)

O(1)

B(4)

E(3) J(2)

K(2)

I(2) M(1)

N(1)

O(1)

(d)

E(3)

J(3)

I(2)

L(2) M(1)

O(1)

F(3)

D(4)

E(4)

J(3)

N(1)

K(2)

I(2)

sink

F(3)

D(4)

E(4)

H(1)

(c)

sink

C(6)

J(3)

K(2)

H(1)

O(1)

C(7) G(4)

F(4)

D(4) E(4)

J(3)

(b)

B(5)

G(4)

I(2) M(1)

B(5)

C(7)

F(4)

K(2) L(2)

O(1)

A(5)

B(6)

D(4)

I(2)

I(2)

sink

E(5) J(3)

K(2) L(2)

M(1)

G(4)

E(5)

J(3)

D(4)

A(5)

C(7)

F(4)

D(4)

E(5)

A(5)

sink

sink

H(1)

K(2) L(1)

I(2) M(1)

N(1)

(g)

O(1)

M(1)

N(1)

O(1)

(h)

Figure2. 2.Example Example of edge-cutting the edge-cutting process. (Note: value in parentheses the Figure of the process. (Note: the valuethe in parentheses indicates the indicates corresponding corresponding node load, (a)routing is the minimum routing graph, (h) is the minimum routing tree, (a–h) node load, (a) is the minimum graph, (h) is the minimum routing tree, (a–h) show the edge-cutting show the edge-cutting process from the minimum routingrouting graph tree). to the minimum routing tree). process from the minimum routing graph to the minimum

Theminimum minimumrouting routing graph including all nodes the network in2aFigure 2a is The graph including all nodes in theinnetwork shown shown in Figure is generated generatedtoaccording to Firstly, the linkthecost. the load layer node A, B, and atC this cantime, be according the link cost. loadFirstly, of first layer nodeofA,first B, and C can be calculated, this time, shows that node load, so the FB of is other cut offnodes and the itcalculated, shows thatatnode C hasitthe smallest load, C sohas the the linksmallest FB is cut off and thelink loads are loads of other nodes2b areisupdated, 2b is obtained. In Figure 2b, node becomes theload nodein updated, and Figure obtained.and In Figure 2b, node B becomes the node withBthe smallest withlayer, the smallest load inneeds first layer, toeach be cut off is and the loadAt ofthis eachpoint, nodethe is first so the link EA to be so cutthe offlink andEA theneeds load of node updated. updated. At this point, the edge-cutting of all the nodes in the first layer is completed, and Figure 2c edge-cutting of all the nodes in the first layer is completed, and Figure 2c is obtained. is obtained. In Figure 2c, the second layer consists of four nodes, namely D, E, F, and G. The link IE is firstly Figure 2c, the second layer consists four namely D, E, considering F, and G. The is cut offInand the node loads are updated, then weofcan getnodes, the Figure 2d. Here, thatlink the IE loads firstly cut off and the node loads are updated, then we can get the Figure 2d. Here, considering that of node D, E, F, and G are the same and the smallest, according to above Case 1, node D is the only the loads nodenode D, E,H F,and andI,Gsoare same the need smallest, according to above Case 1, node Then D is parent of itsofchild thethe node D and doesn’t to perform edge-cutting processing. the only parent of its child node H and I, so the node D doesn’t need to perform edge-cutting we need to cut off the link NF since the node product of node E is the smallest and update all node processing. Then to cutcase off the link NFFigure since the node product of node Ethe is the smallest loads according towe theneed foregoing 2. Hence, 2e is obtained. Moreover, load of nodeand F is update all node loads according to the foregoing case 2. Hence, Figure 2e is obtained. Moreover, the smaller than that of node G, so the link KG is cut off and all node loads are updated. At this point, all load of node F is smaller thancompleted that of node G, so the linkand KGFigure is cut2foff all node loads are nodes in the second layer have the edge-cutting, canand be obtained. updated. At this point, all nodes in the second layer have completed the edge-cutting, and Figureand 2f In Figure 2f, according to the Case 1, node H does not need to implement the edge-cutting, canlink be obtained. the MJ need to be cut off and all node loads are updated to obtain Figure 2g. At this point, the

node H, I, and J do not need to perform the edge cutting. According to the Case 2, the node product LCN (K ) is less than LCN ( L) after calculation, so the link OL is cut off and all node loads are updated. Finally, the minimum routing tree with minimum link cost and maximum load balance as shown in Figure 2h is obtained.

Sensors 2018, 18, 3477

9 of 16

4. Simulation Results and Analysis In order to verify the effectiveness of our algorithm, this paper adopts MATLAB to simulate, and conducts comparative analysis with the FAF-EBRM and FLEOR algorithms. In addition, five performance parameters will be used in the following paper: average energy consumption (AEC), average hop count (AH), packet loss rate (PLR), energy variance (EV), and node survival rate (NSR). Among them, AEC represents the average energy consumption of all nodes in each data transmission round, which measures the utilization efficiency of network energy. AH can reflect the transmission delay of data in the network, and the smaller the average hop count is, the faster data can be transmitted to sink. PLR can reflect the network’s ability in congestion avoidance. EV can give expression to the difference of energy residual value of each node, that is, the smaller the value of EV, the smaller the curve fluctuation is, thus the more balanced energy of the network. NSR is used to indicate the network lifetime and the effectiveness of energy utilization. The steeper the slope of the curve from the death of first node to the death of all nodes, the more concentrated time for the nodes to run out of energy, and the more balanced energy in the network. In addition, in order to avoid the contingency of the experimental results, we repeat each experiment many times to get an average. The specific simulation parameters are listed in Table 1. Table 1. Simulation Parameters. Definition

Value

Simulation area Network size Maximum communication range Packets size Buffer size Sink Data generation rate

100 × 100 m2 150~300 30 m 1024 bits 20 packets (50, 50) 1024 bits/round

4.1. The Impact of Parameter β on Network Performance In order to compare the influence of different parameters on the algorithm itself, in the simulation, we value the β under different network sizes, and the interval and step size are [0, 1] and 0.2 respectively. (1)

Impact of parameter β on average hops under different network sizes

It can be seen from Figure 3 that, under the same network size, when the parameter β increases from 0 to 0.6, the average hops gradually decreases. This is because as β increases, the forward energy consumption of node j has an increasing influence on the selection of the next hop, that is, the source node will focus on selecting the forward neighbor node closer to the sink as next hop, thus the number of path hops is gradually reduced. When β is in [0.6, 1], the path hops tend to be stable as β increases further. In addition, when β remains the same, as the network size expands, the node distribution becomes denser, so that the average hops increases continuously. (2)

Impact of parameter β on average energy consumption under different network sizes

As shown in Figure 4, when β is the same, as the network size increases, the average hops increases gradually (Figure 3), so the energy consumed on the path increases, resulting in the increasing of the average energy consumption of the entire network. When the network size remains the same and β increases in [0, 0.6], the average energy consumption gradually decreases. This is because as β increases, on the one hand, the hops have an increasing influence on the link cost in Equation (4). On the other hand, as shown in Figure 3, the average hops gradually decreases in [0, 0.6]. Thus, the overall energy consumption of the network will gradually decrease. When β is in the range of [0.6, 1], the average hops basically remains the same, but since the selection of the next hop neglects the influence of single-hop energy consumption, the average network energy consumption has a slowly increase in this range.

cost This in Equation (4).asOn the otheron hand, as shown in Figure 3, the hops gradually decreases is because β increases, the one hand, the hops have an average increasing influence on the link in [0,cost 0.6]. the(4). overall energy consumption network will gradually decrease. When β is in Thus, Equation On the other hand, as shownof inthe Figure 3, the average hops gradually decreases in the [0.6,the 1],overall the average basically the will same, but since the selection in range [0, 0.6].of Thus, energy hops consumption of remains the network gradually decrease. When β of is the nextinhop neglects the 1], influence of single-hop energy consumption, thesince average network energy the range of [0.6, the average hops basically remains the same, but the selection of the Sensors 2018, 18, 3477 10 of 16 next hop neglects the influence consumption has a slowly increase of in single-hop this range. energy consumption, the average network energy consumption has a slowly increase in this range.

Figure 3. AH varying with β at different network sizes.

Figure 3. AH varyingwith with β network sizes.sizes. Figure 3. AH varying β at atdifferent different network

Figure4.4.AEC AECvarying varying with with ββ at sizes. Figure atdifferent differentnetwork network sizes.

Figure 4.packets AEC varying with β atdifferent differentnetwork network sizes. Impact of parameter β on packets lossrate rate under sizes (3) (3) Impact of parameter β on loss under different network sizes Figure 5 shows trendofofpacket packet loss loss rate rate PLR β at different network sizes.sizes. Figure 5 shows thethe trend PLRwith withparameter parameter β at different network When the network size is the same, the packet loss rate decreases as β increases in [0, 0.4], this is because the value of β is small at this time, and the hops do not dominate the selection of the path. because value the of β trend is smallofatpacket this time, thePLR hopswith do not dominateβthe the path. sizes. Figure the 5 shows lossand rate parameter atselection differentofnetwork Meanwhile, after using the edge-cutting strategy, the load of each node in the minimum routing Meanwhile, afterisusing the edge-cutting strategy, load ofaseach node in the minimum When the network size the same, thethepacket rateofthe decreases β increases in [0, 0.4], graph is balanced, thereby reducing packet loss loss rate the node. However, as β continues to this is routing graph is balanced, thereby reducing the packet loss rate of the node. However, as β because increase, the value β isnear small at this thenode, hopsthat dois,not thehops selection of the theof node the sink willtime, be theand priority thedominate path with less is selected to path. continues to increase, the node near the sink will be the priority node, that is, the path with less forward theafter data asusing much as possible, which willstrategy, cause the nodes close tooftheeach sink to be over-selected Meanwhile, the edge-cutting the load node in the minimum hops is selected totheir forward theresulting data asinmuch possible, which will theincrease nodes slightly close to the exceed capacity, packetas loss. Then, the packet losscause ratethe will routing and graph is the balanced, thereby reducing the packet loss rate of node. However, as β sinkand to be over-selected and exceed thethe their capacity, resulting loss. the packet loss tend to be stable. When β remains same, as the network sizein N packet increases, the Then, forward neighbor continues to increase, the node near the sink will be the priority node, that is, the path with less rate nodes will increase slightly and tendincrease. to be stable. Whenthe β edge-cutting remains thestrategy, same, as the network size N in the inner layer gradually By utilizing excess load will be hopsincreases, is shared selected toforward forward thefewer dataloads as much as inner possible, will cause theBy nodes to the to nodes with in in advance, thus effectively reducing the packet loss rate. closethe theother neighbor nodes the layerwhich gradually increase. utilizing

(3) Impact ofthe parameter β onis packets rate under different network sizes in [0, 0.4], this is When network size the same,loss the packet loss rate decreases as β increases

sink to be over-selected and exceed the their capacity, resulting in packet loss. Then, the packet loss rate will increase slightly and tend to be stable. When β remains the same, as the network size N increases, the forward neighbor nodes in the inner layer gradually increase. By utilizing the

edge-cutting strategy, excess load will be shared to other nodes with fewer loads in advance, thus Sensors 2018, 18, x FOR PEER REVIEW 11 of 16 effectively reducing the packet loss rate. edge-cutting strategy, Sensors 2018, 18, 3477

excess load will be shared to other nodes with fewer loads in advance, 11 thus of 16 effectively reducing the packet loss rate.

Figure 5. PLR varying with parameter β at different network sizes. Figure Figure 5. 5. PLR PLR varying varying with with parameter parameter β β at different different network network sizes. sizes.

4.2. Comparison with Other Algorithms

4.2. 4.2. Comparison Comparison with with Other Other Algorithms Algorithms

Firstly, in order to validate the proposed protocol and perform a fair comparison, we take the Firstly, in to validate the protocol and perform comparison, we take Firstly, in order order the proposed proposed protocol perform aa fair fairsimulation comparison,in wethis take the the change of buffer sizeasto asanvalidate an example andout carry outand experimental section. change of buffer size example and carry experimental simulation in this section. Furthermore, change of buffer size as an example and carry out experimental simulation in this section. Furthermore, as size the increases, buffer size increases, thenode ability of the node to accommodate the data packet is as the buffer of the to accommodate data packet the is improved, and Furthermore, as the buffer the sizeability increases, the ability of the node tothe accommodate data packet is improved, and the degree of congestion in the area can be alleviated to some extent, so the packet the degree of congestion inof thecongestion area can be to some extent, so packet losssorate be improved, and the degree in alleviated the area can be alleviated to the some extent, the will packet loss reduced rate will be reduced accordingly. Here, Figure 6 shows the trend of packet loss rate with accordingly. Here, Figure 6 shows the trend of packet loss rate with varying buffer size. It can loss rate will be reduced accordingly. Here, Figure 6 shows the trend of packet loss rate with be seen that the size. packet does decrease with the of the buffer with size, and ourincrease algorithm, varying buffer size. It can berate seen that the lossincrease ratedoes does decrease with of the varying buffer It loss can be seen that the packet packet loss rate decrease thethe increase of the that is ESRA, shows obvious advantages. buffer size, and our algorithm, that is ESRA, shows obvious advantages. buffer size, and our algorithm, that is ESRA, shows obvious advantages.

Figure 6. The PLR comparisons with varying buffer size. Figure ThePLR PLRcomparisons comparisons with buffer size. Figure 6.6.The withvarying varying buffer size. Then we analyze the time complexity of these three algorithms. In our proposed ESRA, an Then we analyze the time of these In our proposed initial initial shortest path from eachcomplexity source node to thethree sinkalgorithms. can be calculated accordingESRA, to thean Dijkstra Then we analyze the time complexity of these three algorithms. In our proposed ESRA, an 2 shortest path from sourcetime nodecomplexity to the sink is canObe to the Dijkstra algorithm, ( Ncalculated ) . Then, according algorithm, and theeach required all the paths that adjacent to their initial shortest path time from each source node theall sink can bethat calculated according to shortest the Dijkstra 2 ). to and theshortest required is O( Nnode Then, the paths adjacent to their initial initial path ofcomplexity the same source are calculated, and the paths are sorted according to 2 ( Npaths ) . Then, algorithm, and the required time complexity is O all the paths that adjacent to their path of the same source node are calculated, and the are sorted according to the weights by the weights by the merge sorting to obtain the shortest path set, so the time complexity is the merge to obtain the path set, thethe time complexity O( N ·are logNsorted ). The step to initial of the same source node areso calculated, andtime the iscomplexity paths according O(shortest N logN sorting ) .path O( Nnext ) . After The next step is toshortest layer all nodes, and required is is to layer all nodes, and the required time complexity is O ( N ) . After that, we need sort the loads the weights sorting to nodes obtainand theimplement shortest path set, so thestrategy, time complexity that, we by needthe sortmerge the loads of all the edge-cutting the time is of all nodes and implement the edge-cutting strategy, the time complexity of this step is O ( N )After . O( Ncomplexity logN ) . The O·(logN N ) .in stepisisOto time complexity ( Nlayer logN )all of next this step . Innodes, general,and the the timerequired complexity of our proposed is algorithm In general, the time complexity2 of our proposed algorithm in a worst-case scenario is O( N 2 ). As for that, awe need sort the is loads of) . all nodes andand implement theafter edge-cutting strategy, thebytime O( Ngetting worst-case scenario As different for FLEOR FAF-EBRM, getting different FLEOR and FAF-EBRM, after values by considering some attributes of thevalues forward

complexity of this step is O( N logN ) . In general, the time complexity of our proposed algorithm in

2 a worst-case scenario is O( N ) . As for FLEOR and FAF-EBRM, after getting different values by

Sensors Sensors 2018, 2018, 18, 18, xx FOR FOR PEER PEER REVIEW REVIEW

12 12 of of 16 16

Sensors 2018, 18, some 3477 considering

12 of 16 considering some attributes attributes of of the the forward forward neighbor neighbor nodes, nodes, the the neighbor neighbor node node with with the the largest largest value value is is selected selected as as the the next next hop hop by by sorting, sorting, namely, namely, the the time time complexity complexity required required of of both both algorithms is . O ( N logN ) algorithms is . O ( N logN ) neighbor nodes, the neighbor node with the largest value is selected as the next hop by sorting, namely, From the analysis, it can found the of From the above aboverequired analysis,of it both can be be found that that the computation of our our proposed proposed ESRA ESRA is is slightly slightly the time complexity algorithms is O ( Ncomputation ·logN ). larger than FAF-EBRM and FLEOR, but it shows obvious advantages in terms of network performance largerFrom thanthe FAF-EBRM and FLEOR, but it shows obvious advantages in terms of network performance above analysis, it can be found that the computation of our proposed ESRA is slightly according the comparative which detailed following according toFAF-EBRM the subsequent subsequent comparative analysis, which is isadvantages detailed as as in following sections. larger thanto and FLEOR, but itanalysis, shows obvious terms ofsections. network performance

according to the subsequent comparative analysis, which is detailed as following sections. 4.2.1. 4.2.1. Average Average Hops Hops and and Average Average Energy Energy Consumption Consumption 4.2.1.Figures Average7 Hops and Average Energy Consumption Figures 7 and and 88 show show the the average average hops hops and and average average energy energy consumption consumption of of the the network network at at different network can be from the figures that two trends since hops Figures 7 and 8sizes. showIt average hops and average consumption of the network different different network sizes. Itthe can be seen seen from the figuresenergy that the the two have have similar similar trends at since hops can the energy the some In FAF-EBRM network sizes. can beconsumption seen from theof figures thatin the two way. have similar trendsthe since hops can algorithm reflect the can reflect reflect the It energy consumption of the path path in some way. In addition, addition, the FAF-EBRM algorithm has the highest average hops and energy consumption. This is because FAF-EBRM for energy of thehops pathand in some way.consumption. In addition, the has detours the highest has theconsumption highest average energy ThisFAF-EBRM is becausealgorithm FAF-EBRM detours for selecting nodes with higher energy as the next hop when routing, resulting in higher hop count and average hops and energy consumption. This is because FAF-EBRM detours for selecting nodes with selecting nodes with higher energy as the next hop when routing, resulting in higher hop count and energy consumption. The average of relative to smaller, is higher as the next whenhops routing, resulting in higher hop count is and energythis consumption. energyenergy consumption. Thehop average hops of FLEOR FLEOR relative to FAF-EBRM FAF-EBRM is smaller, this is because because FLEOR considering the path close the thus reducing the The average hops of FLEOR relative to as FAF-EBRM is smaller,to becausepath, FLEOR considering FLEOR considering the selected selected path as close as as possible possible tothis theisshortest shortest path, thus reducing the data forwarding times and average energy consumption. As for the ESRA algorithm of this paper, selected path as close as possible to the shortest path, thus reducing the data forwarding times and average data forwarding times and average energy consumption. As for the ESRA algorithm of this paper, when is energy has aa greater influence the selection energy Asthe forsingle-hop the ESRA algorithm of this paper, when β is taken as 0.4,on when β βconsumption. is taken taken as as 0.4, 0.4, the single-hop energy consumption consumption has greater influence onthe thesingle-hop selection of hop. as in Figure 7, algorithm can energy has a greater influence the selection of next hop. Simultaneously, as shownthe in of next nextconsumption hop. Simultaneously, Simultaneously, as shown shown in on Figure 7, the the ESRA ESRA algorithm can always always maintain maintain the smallest average hops, therefore, compared with FLEOR and FAF-EBRM, our algorithm can Figure 7, the ESRA hops, algorithm can always maintainwith the smallest hops, therefore, smallest average therefore, compared FLEOR average and FAF-EBRM, our compared algorithm with can effectively the energy the network, and from FLEOR and reduce FAF-EBRM, our algorithm can effectivelyof reduce the path energy consumption the whole effectively reduce the path path energy consumption consumption of the whole whole network, and transfer transferofdata data from source to network, and transfer datanode fromfaster. source nodes to the sink node faster. source nodes nodes to the the sink sink node faster.

Figure 7. 7. The AH comparisons comparisons with with varying varying network network size. size. Figure The AH size.

Figure Figure 8. 8. The The AEC AEC comparisons comparisons with with varying varying network network size. size.

Sensors 2018, 2018, 18, 18, 3477 x FOR PEER REVIEW Sensors

13 of 16

4.2.2. Traffic Balance and Energy Balance 4.2.2. Traffic Balance and Energy Balance Usually, the node load affects network performance in two ways. On the one hand, the node Usually, thethe node load affects network in the twonode ways. thepoint. one hand, the node load can reflect amount of traffic that isperformance aggregated to at On some The larger the load can reflect the amount of traffic that is aggregated to the node at some point. The larger the load, load, the more data need to be transferred. On the other hand, the number of the loads also the more data to be energy transferred. On to theaother hand, the number of the loadsthe also determines determines theneed residual of node certain extent, that is, the larger load, the less the residual energy of node to a certain extent, that is, the larger the load, the less energy the energy the node has due to the greater transmission energy consumption. In addition, the node more has due tothe theenergy greaterconsumption transmissionbetween energy consumption. In addition, more balanced balanced nodes, the higher the nodethe survival rate and the the energy longer consumption betweenTherefore, nodes, the on higher theof node survivalthe ratebalance and theoflonger the network lifetime. the network lifetime. behalf measuring the network, we consider Therefore, on behalf of measuring the balance of the network, we consider both traffic balance and both traffic balance and energy balance in this section. energy balance in this section. (1) Traffic Balance (1) Traffic Balance Figure 9 shows the different packet loss rates of different algorithms at different network sizes. 9 shows the different losstwo ratesalgorithms, of differentthe algorithms at different network sizes. It canFigure be seen that compared withpacket the other packet loss rate of ESRA algorithm It be seen that withas the other two algorithms, theObviously, packet lossthis rateisofbecause ESRA algorithm is is can always stable atcompared a lower value the network size changes. FAF-EBRM always stable at a lower value as the network size changes. Obviously, this is because FAF-EBRM and and FLEOR do not take into account the queue size of the nodes. A large amount of data are FLEOR do notintake into“hot account theatqueue size of the causing nodes. Anodes large amount of data are concentrated concentrated some spots” the same time, in this area to exceed their load in some “hot spots” at the same time, causing nodes in this area to exceed their load capacity due to capacity due to excessive data reception, thus a large amount of data are discarded. On the contrary, excessive data reception, thus a large amount of data are discarded. On the contrary, our algorithm our algorithm adopts the edge-cutting strategy to balance the node load. In the minimum routing adopts strategy to balance the node load. In theparent minimum routing loadare is graph, the the edge-cutting load is updated in real time, and the candidate nodes with graph, smallerthe load updated in realselected time, and parent nodes with smaller loadthe are congestion dynamicallydegree, selectedso as the dynamically asthe thecandidate forwarding node, which alleviates the forwarding node, which alleviates the congestion degree, so the network traffic is relatively balanced. network traffic is relatively balanced.

Figure 9. The PLR comparisons with varying network size. size.

(2) Energy Balance Balance (2) Energy For algorithms, the the comparison of theofenergy variance EV andEV the and nodethe survival For the thethree threedifferent different algorithms, comparison the energy variance node rate NSR rate are given in Figures 10Figures and 11, 10 respectively. Among them, the EV curve thecurve FAF-EBRM survival NSR are given in and 11, respectively. Among them, theofEV of the algorithm has the highest andvolatility, the energyand balance is worse than the algorithms. The FAF-EBRM algorithm hasvolatility, the highest the energy balance is other worsetwo than the other two energy balance of FLEOR is improved compared with FAF-EBRM, this is because FLEOR considers the algorithms. The energy balance of FLEOR is improved compared with FAF-EBRM, this is because energy of the the neighbor, forward neighbor with the larger residual energy FLEORbalance considers theforward energy neighbor, balance ofand theprefers forward and prefers forward neighbor as next hop. However, the network lifetime of FLEOR is shorter than FAF-EBRM, and the first with larger residual energy as next hop. However, the network lifetime of FLEOR is shorternode than death appearsand in around 320 rounds. In this paper, ESRA320 algorithm the node loads in FAF-EBRM, the first node death appears in the around rounds.can Insense this paper, the ESRA some way, which can optimize the routing of the next data round and rebalance the energy distribution. algorithm can sense the node loads in some way, which can optimize the routing of the next data Therefore, EV curve the smallest fluctuation and the the EV node survival ratesmallest is maintained at a round andthe rebalance thehas energy distribution. Therefore, curve has the fluctuation highest all times. Simultaneously, according the rounds of theSimultaneously, first dead node,according its network and the level nodeat survival rate is maintained at a highesttolevel at all times. to lifetime is about 80% and 150% longer than FAF-EBRM and FLEOR respectively, which means that the the rounds of the first dead node, its network lifetime is about 80% and 150% longer than network can and maintain a longer effectivewhich working time. In the addition, when nodes inaFAF-EBRM have FAF-EBRM FLEOR respectively, means that network canallmaintain longer effective died, ESRA hasInnot yet appeared death in of first node, showing a good network working time. addition, when the all nodes FAF-EBRM have died, ESRA has notperformance. yet appeared the

death of first node, showing a good network performance.

Sensors 2018, 18, 3477

Sensors 2018, 18, x FOR PEER REVIEW Sensors 2018, 18, x FOR PEER REVIEW

14 of 16

14 of 16 14 of 16

Figure 10.10.The withvarying varyingrounds. rounds. Figure TheEV EVcomparisons comparisons with Figure 10. The EV comparisons with varying rounds.

Figure TheNSR NSRcomparisons comparisons with Figure 11.11.The withvarying varyingrounds. rounds. Figure 11. The NSR comparisons with varying rounds.

5. Conclusions

5. Conclusions 5. Conclusions In order to reduce the transmission energy consumption, and balance the node load to achieve In order to reduce the transmission energy consumption, the node to achieve the purpose extending lifetime of wireless networks,and thisbalance paper proposes an load equilibrium In order toof reduce the the transmission energy sensor consumption, and balance the node load to achieve the purpose of extending the lifetime of wireless sensor networks, this paper proposes routing optimization algorithm for wireless sensor networks (ESRA). Considering an the strategy purposebased of extending the lifetime of wireless sensor networks, this paper proposes an the residual energy,based single-hop energy consumption and path hops, the algorithm establishes equilibrium strategy routing optimization algorithm for wireless sensorfirstly networks (ESRA). equilibrium strategy based routing optimization algorithm for wireless sensor networks (ESRA). a minimum routing graph. Then, an edge-cutting strategy is adopted to balance the node load Considering the residual energy, single-hop energy consumption and path hops, the algorithm Considering the residual energy, single-hop energy consumption andshow paththat hops, the algorithm onestablishes the topology of the minimum routing graph. results our proposed firstly a minimum routing graph. Then,The an simulation edge-cutting strategy is adopted to balance firstly establishes a minimum routinglifetime, graph. balance Then, an edge-cutting strategy is energy, adopted toalso balance algorithm prolong the network thegraph. node traffic and residual and the node load can on the topology of the minimum routing The simulation results show that our the node load the topology of and the minimum Thework, simulation show reduce the on transmission delay packet lossrouting rate. In graph. the future we willresults focus on howthat to our proposed algorithm can prolong the network lifetime, balance the node traffic and residual energy, proposed can prolong the network lifetime, balance the node algorithm traffic andtoresidual energy, jointlyalgorithm utilize the energy-harvesting technology and routing optimization enhance the and also reduce the transmission delay and packet loss rate. In the future work, we will focus on and network also reduce the transmission delay and packet loss rate. In the future work, we will focus on performance. how to jointly utilize the energy-harvesting technology and routing optimization algorithm to how to jointly utilize the energy-harvesting technology and routing optimization algorithm to Author Conceptualization, L.T. and Z.L.; Methodology, L.T., Z.L. and J.C.; Software, Z.L.; enhance theContributions: network performance. enhance the network Validation, L.T. and performance. Z.L.; Formal Analysis, L.T., Z.L. and J.C.; Investigation, Z.L.; Resources, L.T. and J.Y.; Data Curation, Z.L.; Writing-Original Draft Preparation, L.T. and Z.L.; Writing-Review & Editing, L.T., Z.L. and

Author L.T. and Methodology, L.T., Z.L. L.T. and J.C.; Software, J.Y.;Contributions: Visualization, L.T.Conceptualization, and Z.L.; Supervision, L.T., Z.L.Z.L.; and J.C.; Project Administration, Z.L.; Funding Z.L.; Author Contributions: Conceptualization, L.T. and Z.L.; Methodology, L.T., Z.L. andand J.C.; Software, Z.L.; Acquisition, L.T. and Validation, L.T. and Z.L.;J.Y. Formal Analysis, L.T., Z.L. and J.C.; Investigation, Z.L.; Resources, L.T. and J.Y.; Data Validation, L.T. and Z.L.; Formal Analysis, L.T., Z.L. and J.C.; Investigation, Z.L.; Resources, L.T. and J.Y.; Data Curation, Z.L.;This Writing-Original Draftby Preparation, and Science Z.L.; Writing-Review & Editing, L.T., Z.L. and J.Y.; Funding: research was funded the NationalL.T. Natural Foundation of China (No. 51677065). Curation, Z.L.; Writing-Original Draft Preparation, L.T. and Z.L.; Writing-Review & Editing, L.T., Z.L. and J.Y.; Visualization, L.T. and Z.L.; Supervision, L.T., Z.L. and J.C.; Project Administration, L.T. and Z.L.; Funding Conflicts ofL.T. Interest: The authors declare no conflict interest. Visualization, and Z.L.; Supervision, L.T., Z.L. of and J.C.; Project Administration, L.T. and Z.L.; Funding Acquisition, L.T. and J.Y. Acquisition, L.T. and J.Y. Funding: This research was funded by the National Natural Science Foundation of China (No. 51677065). Funding: This research was funded by the National Natural Science Foundation of China (No. 51677065). Conflicts of Interest: The authors declare no conflict of interest. Conflicts of Interest: The authors declare no conflict of interest.

Sensors 2018, 18, 3477

15 of 16

References 1. 2. 3. 4.

5. 6.

7. 8. 9.

10. 11. 12. 13. 14. 15.

16. 17. 18. 19. 20.

21. 22. 23.

Soeharwinto; Sinulingga, E.; Siregar, B. Remote Monitoring of Post-Eruption Volcano Environment Based-On Wireless Sensor Network (WSN): The Mount Sinabung Case. J. Phys. Conf. Ser. 2017, 801, 12–84. [CrossRef] Song, W.Z.; Huang, R.; Xu, M.; Shirazi, B.A.; Lahusen, R. Design and deployment of sensor network for real-time high-fidelity volcano monitoring. IEEE Trans. Parallel Distrib. Syst. 2010, 21, 1658–1674. [CrossRef] Gope, P.; Hwang, T. BSN-care: A secure IoT-based modern health-care system using body sensor network. IEEE Sens. J. 2015, 16, 1368–1376. [CrossRef] Serna, M.A.; Sreenan, C.J.; Fedor, S. A visual programming framework for wireless sensor networks in smart home applications. In Proceedings of the IEEE Tenth International Conference on Intelligent Sensors, Sensor Networks and Information Processing, Singapore, 7–9 April 2015; pp. 1–6. Kim, H.Y. An energy-efficient load balancing scheme to extend lifetime in wireless sensor networks. Cluster Comput. 2016, 19, 279–283. [CrossRef] Yousif, Y.K.; Badlishah, R.; Yaakob, N.; Amir, A. An Energy Efficient and Load Balancing Clustering Scheme for Wireless Sensor Network (WSN) Based on Distributed Approach. J. Phys. Conf. Ser. 2018, 1019, 012007. [CrossRef] Gherbi, C.; Aliouat, Z.; Benmohammed, M. An adaptive clustering approach to dynamic load balancing and energy efficiency in wireless sensor networks. Energy 2016, 114, 647–662. [CrossRef] Chen, C.P.; Mukhopadhyay, S.C.; Chuang, C.L.; Liu, M.Y.; Jiang, J.A. Efficient coverage and connectivity preservation with load balance for wireless sensor networks. IEEE Sens. J. 2015, 15, 48–62. [CrossRef] Kandris, D.; Vergados, D.J.; Vergados, D.D.; Tzes, A. A routing scheme for congestion avoidance in wireless sensor networks. In Proceedings of the 6th Annual IEEE Conference on Automation Science and Engineering (CASE 2010), Toronto, ON, Canada, 21–24 August 2010; pp. 21–24. Li, S.; Zhao, S.; Wang, X.; Zhang, K.; Li, L. Adaptive and secure load-balancing routing protocol for service-oriented wireless sensor networks. IEEE Syst. J. 2014, 8, 858–867. [CrossRef] Ahmed, A.M.; Paulus, R. Congestion detection technique for multipath routing and load balancing in WSN. Wirel. Netw. 2017, 23, 881–888. [CrossRef] Guo, W.; Xiong, N.; Chao, H.C.; Hussain, S.; Chen, G. Design and Analysis of Self-Adapted Task Scheduling Strategies in Wireless Sensor Networks. Sensors 2011, 11, 6533–6554. [CrossRef] [PubMed] Ennaji, R.; Boulmalf, M. Routing Protocols in Wireless Sensor Networks. Int. J. Comput. Sci. Eng. Surv. 2017, 1, 522–525. Xin, H.; Liu, X. Energy-Balanced Transmission with Accurate Distances for Strip-based Wireless Sensor Networks. IEEE Access 2017, 5, 16193–16204. [CrossRef] Schurgers, C.; Srivastava, M.B. Energy efficient routing in wireless sensor networks. In Proceedings of the Communications for Network-Centric Operations: Creating the Information Force, McLean, VA, USA, 28–31 October 2001; pp. 731–738. Chiang, S.S.; Huang, C.H.; Chang, K.C. A Minimum Hop Routing Protocol for Home Security Systems Using Wireless Sensor Networks. IEEE Trans. Consum. Electron. 2007, 53, 1483–1489. [CrossRef] Akyildiz, I.F.; Su, W.; Sankarasubramaniam, Y.; Cayirci, E. A survey on sensor networks. IEEE Commun. Mag. 2002, 40, 102–114. [CrossRef] Velmurugan, A.K.; Kannan, R.J. Sleep Scheduling for Energy Efficient Load Balance Routing in Heterogeneous Wireless Sensor Network. Indian J. Public Health Res. Dev. 2017, 8, 236–241. [CrossRef] Ye, D.; Zhang, M. A Self-Adaptive Sleep/Wake-Up Scheduling Approach for Wireless Sensor Networks. IEEE Trans. Cybern. 2017, 48, 979–992. [CrossRef] [PubMed] Mishra, S.; Kansal, P. Routing protocol based on sleep scheduling and tree cluster structure in wireless sensor network. In Proceedings of the International Conference on Advances in Computing, Communication & Automation, Bareilly, India, 30 September–1 October 2016; pp. 1–4. Liu, X.; Zhang, P. Data Drainage: A Novel Load Balancing Strategy for Wireless Sensor Networks. IEEE Commun. Lett. 2017, 22, 125–128. [CrossRef] Kacimi, R.; Dhaou, R.; Beylot, A.L. Load balancing techniques for lifetime maximizing in wireless sensor networks. Ad Hoc Netw. 2013, 11, 2172–2186. [CrossRef] Kleerekoper, A.; Filer, N.P. DECOR: Distributed construction of load balanced routing trees for many to one sensor networks. Ad Hoc Netw. 2014, 16, 225–236. [CrossRef]

Sensors 2018, 18, 3477

24. 25. 26. 27.

28. 29. 30. 31. 32. 33. 34.

16 of 16

Montoya, G.A.; Donoso, Y. Energy Load Balancing Strategy to Extend Lifetime in Wireless Sensor Networks. Proc. Comput. Sci. 2013, 17, 395–402. [CrossRef] Zhang, D.; Li, G.; Zheng, K.; Ming, X.; Pan, Z. An Energy-Balanced Routing Method Based on Forward-Aware Factor for Wireless Sensor Networks. IEEE Trans. Ind. Inf. 2013, 10, 766–773. [CrossRef] Jiang, H.; Sun, Y.; Sun, R.; Xu, H. Fuzzy-Logic-Based Energy Optimized Routing for Wireless Sensor Networks. Int. J. Distrib. Sens. Netw. 2013, 9, 216561. [CrossRef] Chughtai, O.; Badruddin, N.; Awang, A. A Congestion-aware and Energy Efficient Traffic Load Balancing Scheme for Routing in WSNs. In Proceedings of the TENCON 2014—2014 IEEE Region 10 Conference, Bangkok, Thailand, 22–25 October 2014; pp. 1–6. Bai, Y.; Hu, P.; Xia, L.; Guo, F. Analysis and Solution of k-th Short Path Problem. J. Wuhan Univ. Inf. Sci. Ed. 2009, 34, 492–494. Wang, C.F.; Shih, J.D.; Pan, B.H.; Wu, T.Y. A network lifetime enhancement method for sink relocation and its analysis in wireless sensor networks. IEEE Sens. J. 2014, 14, 1932–1943. [CrossRef] Tang, L.; Feng, S.; Hao, J.; Zhao, X. Energy-efficient routing algorithm based on multiple criteria decision making for wireless sensor networks. Wirel. Pers. Commun. Int. J. 2015, 80, 97–115. [CrossRef] Lee, K.; Kim, H.J.; Park, S.; Han, S. Satisfying the target network lifetime in wireless sensor networks. Comput. Netw. 2014, 65, 41–55. [CrossRef] Liu, A.F.; Zhang, P.H.; Chen, Z.G. Theoretical analysis of the lifetime and energy hole in cluster based wireless sensor networks. J. Parallel Distrib. Comput. 2011, 71, 1327–1355. [CrossRef] Dong, M.; Ota, K.; Li, H.; Du, S.; Zhu, H.; Guo, S. Rendezvous: towards fast event detecting in wireless sensor and actor networks. Computing 2014, 96, 995–1010. [CrossRef] Heinzelman, W.B.; Chandrakasan, A.P.; Balakrishnan, H. An Application Specific Protocol Architecture for Wireless Microsensor Networks. IEEE Trans. Wirel. Commun. 2002, 1, 660–670. [CrossRef] © 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).

Suggest Documents