# A Lifetime Optimization Algorithm Limited by Data Transmission Delay and Hops for Mobile Sink-Based Wireless Sensor Networks

Authors: Yourong Chen; Xiaowen Lv; Siyi Lu; Tiaojuan Ren
Journal: Journal of Sensors
 (2017)

---

## Abstract

To improve the lifetime of mobile sink-based wireless sensor networks and considering that data transmission delay and hops are limited in actual system, a lifetime optimization algorithm limited by data transmission delay and hops (LOA_DH) for mobile sink-based wireless sensor networks is proposed. In LOA_DH, some constraints are analyzed, and an optimization model is proposed. Maximum capacity path routing algorithm is used to calculate the energy consumption of communication. Improved genetic algorithm which modifies individuals to meet all constraints is used to solve the optimization model. The optimal solution of sink node’s sojourn grid centers and sojourn times which maximizes network lifetime is obtained. Simulation results show that, in three node distribution scenes, LOA_DH can find the movement solution of sink node which covers all sensor nodes. Compared with MCP_RAND, MCP_GMRE, and EASR, the solution improves network lifetime and reduces average amount of node discarded data and average energy consumption of nodes.


---

## Body

## 1. Introduction

Wireless sensor networks (WSNs) are usually composed of sensor nodes and sink nodes. Sensor nodes are distributed independently in space and used to collaboratively monitor the physical and environmental conditions, such as temperature, voice, vibration, pressure, and movement. Sink nodes are used to collect, process, and send the data of sensor nodes. WSNs are applied to many aspects of daily life, such as building structural health monitoring, remote health diagnosis, precision agriculture, home automation, smart grid, and smart transportation. In short, WSNs have great application values and market values.In WSNs, sensor nodes are powered by batteries, which can not be renewed or charged in most applications [1]. Therefore, in order to realize longer network lifetime, sensor nodes have to adjust their perception, processing, communication, and other activities in energy-saving way and fully use battery energy [2]. But in static WSNs, locations of sensor nodes are fixed, and default communication mode is many-to-one hop-by-hop communication mode. No matter how to adjust the algorithm, there will always be the following problems: sensor nodes which close to sink node forward more data of other sensor nodes, consume energy quickly, and fail prematurely. This problem is often regarded as hot spot problem of wireless communication or hole problem of sink node [3]. In order to deal with that problem, movement of sink node is introduced. The movement of sink node can balance energy consumption among sensor nodes and connect split area of network.In the algorithm researches of optimal network lifetime for mWSNs (mobile sink-based wireless sensor networks), some achievements have been obtained. Some scholars consider single-hop or multihop data collection, select the existing data collection algorithms, and focus on finding the movement paths of sink node to optimize network lifetime. For example, [4] proposes RCC (range constrained clustering algorithm). According to the distances among sensor nodes, several circles which cover all sensor nodes are found. The radius of every circle does not exceed maximum communication distance and the center of circle is the center of cluster. Concorde solver is used to calculate the shortest path which traverses all centers of clusters, and the movement path of sink node is obtained. Reference [5] proposes ODT (optimal deadline-based trajectory algorithm). Considering deadline-based and event-centered applications, decision tree and mixed integer programming model are established, and the MOSEK optimization package is used to solve the model to obtain energy-saving movement path. Reference [6] proposes EASR (energy-aware sink relocation algorithm). EASR selects maximum capacity path algorithm (MCP) as routing algorithm to collect data. When two relocation conditions are met, sink node starts to find next sojourn location with maximum weight and move. Reference [7] proposes WRP (weighted rendezvous planning algorithm). According to the hops to nearest RP (rendezvous point) and numbers of child nodes, WRP calculates weights of all sensor nodes, selects some sensor nodes with large weight as RP points, and uses TSP algorithm to obtain the shortest path of sink node which traverse all rendezvous points.Some scholars assume that the movement path of sink node is known and focus on studying the network lifetime optimization algorithms in communication protocol layers, such as data link layer, network layer, and cross-layer. For example, [8] proposes a mathematical derivation method, which can obtain optimal data throughput and maximum network lifetime when sink node moves to some RPs. Reference [9] proposes an optimization model, which considers network lifetime optimization problem with gathering data at several key locations and does not consider mobile data collection of sink node. Through Lagrange decomposition algorithm, the optimization model can be divided into 2 submodels, which can be solved separately to obtain optimal solution.Some scholars study the sink node’s path selection and network lifetime optimization algorithm at the same time. For example, [10] proposes GMRE (greedy maximum residual energy algorithm), considering the factors such as initial location of sink node, data collection routing, and sojourn times to establish mixed integer linear programming model. When residual energy of sensor nodes around neighbor location is larger than residual energy of sensor nodes around current location, sink node moves to neighbor location to collect data. References [11, 12] use data formulae to represent constraints, such as sink node’s movement, energy consumption of nodes which is not more than initial energy, and amount of received and perceived data which are equal to the amount of sent data. Then optimization model is established, and the optimal solution is obtained by commercial software and cutting-plane algorithm. Reference [13] considers fence distribution of sensor nodes and divides monitoring area into 9 subareas. In each subarea, energy consumption of each location is calculated by Manhattan routing, and the location with the largest energy consumption is sojourn location of sink node.In [4, 5, 7–9, 11–13], the algorithms need to gather and analyze the information of all sensor nodes. In [6, 10], the algorithms only gather and analyze the local information of neighbor sensor nodes. Therefore, computational time of algorithms in [4, 5, 7–9, 11–13] is longer than computational time of algorithms in [6, 10] under the same conditions, but algorithms in [4, 5, 7–9, 11–13] are better suited for nonuniform distribution scenes of sensor nodes. Moreover, [4–13] do not consider limited data transmission delay or hops at the same time, and they assume that data storage capacity of sensor node is infinite. Taking into account the actual systems of WSNs, there are three situations. Firstly, large data transmission hops easily lead to packet loss of some sensor nodes and even cannot realize their communication with sink node; therefore, data transmission hops cannot be large. Secondly, the hardware cost of sensor node is limited, and its data storage capacity is also limited. Thirdly, due to limited data storage capacity, long data transmission delay will cause a large number of discarded data. At the same time, in some applications, such as dangerous environment monitoring and disaster monitoring, long data transmission delay makes sensed data valueless. Therefore, data transmission delay should not be too long. According to limited data transmission delay, hops, and storage capacity in mWSNs and considering some scholars’ point of view, lifetime optimization algorithm limited by data transmission delay and hops (LOA_DH) for mWSNs is proposed. According to the above three situations, LOA_DH extracts the constraints, such as data transmission time constraints, node coverage constraint, data transmission constraints, energy constraint, and grid selection constraint and establishes an optimization model of network lifetime. When the model is further processed, MCP algorithm and improved genetic algorithm are used to solve the optimization model. The scheme of sojourn grid centers and sojourn times for sink node can be obtained to maximize network lifetime. Data of sensor nodes are collected by sink node along the calculated optimal movement path. LOA_DH can fully cover sensor nodes, improve network lifetime, reduce average amount of node discarded data and average energy consumption of nodes, and guide other optimization methods based on the optimal solution.The rest of the paper is organized as follows. In Section2, constraints are given and optimization model is established. The solution of model is given. In Section 3, algorithm implementation is proposed and time complexity of LOA_DH is analyzed. In Section 4, the simulation results are presented. In Section 5, the paper is concluded.


## 2. Algorithm Principle

In LOA_DH, assume that(1)
single sink node is considered; if there are some sink nodes, the monitoring area is divided into subareas of the same number; then lifetime optimization problem of multiple sink nodes is converted into some lifetime optimization problems of single sink node;(2)
the monitoring area can be divided into several grids; sink node can stay at any grid center to collect data;(3)
sensor nodes and sink node are equipped with GPS or Beidou satellite positioning module to get their own locations;(4)
maximum number of data transmission hops can not be infinite and is a constantk; namely, sensor nodes sense data every interval; if they are in thek-hops communication range of sink node, they send data to sink node through parent node; otherwise, they are in sleep state and periodically wake up to sense data and store the data;(5)
in stationary or mobile state, sink node can collect data; the mobile data collection process of sink node is composed of several static data collection processes at sojourn grid centers for a period of time;(6)
network data transmission delay is defined as the sum of sojourn times of sink node at sojourn grid centers when moving along the path once; the delay can not be infinite; it is a constant; that means, when sink node moves along the path once, the sum of sojourn times of sink node at sojourn grid centers should not exceed defined maximum data transmission delay;(7)
storage capacity of sensor node is certain; when total amount of nontransmitted sensed data is more than maximum storage capacity, sensor nodes discard oldest sensed data and store last sensed data;(8)
energy of all nodes is limited with a unified energy consumption model, but energy of sink node can be replaced;(9)
sensor nodes are fixed and isomorphic, which means, all sensor nodes have the same performance.As is shown in Figure1, hollow circle represents sensor node. Yellow square represents grid center which sink node does not stay at. Red square represents sojourn grid center which sink node stays at. Sink node cyclically moves along the movement path calculated by LOA_DH and keeps collecting data at sojourn grid centers with different sojourn times until one sensor node’s energy exhausts. But LOA_DH still needs to solve the following two problems. Firstly, mathematical formulae are needed to represent the constraints, such as data transmission time constraints, node coverage constraint, data transmission constraints, energy constraint, and grid selection constraint. Optimization model is required. Secondly, each individual needs to meet all constraints. Genetic algorithm is required to be improved; then optimal solution is obtained.Figure 1
Grids in the monitoring area and movement path of sink node.


### 2.1. Constraint Analysis

In mWSNs, considering data transmission delay, data transmission hops, storage capacity, node energy, and movement speed of sink node are limited, data transmission delay constraints, node coverage constraint, data transmission constraints, energy constraint, and grid selection constraint are, respectively, extracted out. The constraints are as follows.


#### 2.1.1. Data Transmission Delay Constraints

Data transmission delay should not be too long; therefore, the sum of sojourn times of sink node moving along the path once should not be longer than defined maximum data transmission delay.(1)∑ptp≤tdelay,where tp represents sojourn time of sink node at sojourn grid centerp; tdelay represents defined maximum data transmission delay. Mobile data collection process of sink node consists of static data collection processes when sink node stays at several sojourn grid centers for a period of time; therefore, sojourn time of sink node at grid center p should not be less than the time of sink node moving between adjacent grid centers. (2)tp≥dpv,∀p,where dp represents the distance from grid center p to next sojourn neighbor grid center.


#### 2.1.2. Node Coverage Constraint

When sink node stays at a grid center, it collects data of sensor nodes whose transmission hops to sink node are not more than defined threshold. Bad movement path of sink node may lead some sensor nodes not to communicate with sink node. Those nodes are called isolated nodes. Therefore, it is necessary to analyze node coverage constraint and eliminate isolated nodes.( P x i ,  P y i ) represents location coordinates of sensor node i. (gxp,gyp) represents sojourn location coordinates of current sink node. dgip represents the distance from sensor node i to sojourn location p of sink node. dij represents the distance from sensor node i to neighbor sensor node j. The calculation formulae of dgip and dij are as follows:(3)dgip=Pxi-gxp2+Pyi-gyp22dij=Pxi-Pxj2+Pyi-Pyj22,j∈Ni,where Ni represents the set of all neighbor sensor nodes which are in the single-hop communication range of sensor node i.When sink node stays at grid centerp, data transmission hops between each sensor node and sink node are (4)hip=1,dgip<dmaxminj∈Nihijp,dgip≥dmax,where hip represents minimum transmission hops from sensor node i to sink node. dmax represents maximum communication distance of sensor node,(5)hijp=1+hjp,dij<dmax∞,dij≥dmax.The judgment formula (6) judges whether sensor node i is in the k-hops communication range of sink node. (6)Cip=1,hip≤k0,hip>k,where k represents maximum data transmission hops of sink node. Cip represents state symbol. If Cip=1, sensor node i is in the k-hops communication range of sink node. Otherwise, sensor node i is not in the range.In the data collection process, all sensor nodes are required to communicate with sink node and send data to sink node. There is no isolated node; therefore, node coverage constraint is(7)∑pCip≥1,∀i.


#### 2.1.3. Data Transmission Constraints

In an actual system of WSNs, sensor nodes keep sensing data from time to time. If a sensor node is not in the data collection range of sink node, the sensed data should be put into memory. When the needed stored data exceeds maximum storage capacity, the latest data replaces the oldest data. Therefore, when sink node stays at grid centerp, data transmission constraint of sensor node is(8)0≤Cipgip≤bip-1+tpSi,∀i,where gip represents maximum amount of transmission data of sensor node i when sink node stays as grid center p. Si represents sensing rate of sensor node i. bip-1represents the remaining amount of stored data of sensor node i before sink node starts to collect data at grid center p.When sink node has collected data at grid centerp, the remaining amount bip of stored data of sensor node i is(9)bip=bth,bip-1+tpSi-Cipgip≥bthbip-1+tpSi-Cipgip,0≤bip-1+tpSi-Cipgip<bth,∀i,where bth represents maximum storage capacity of sensor nodes.


#### 2.1.4. Node Energy Constraint

Sink node cyclically collects data along the selected path until one sensor node’s energy exhausts, and energy consumption of nodes should not be more than initial energy. Therefore node energy constraint is(10)T∑pCiptpegp∑pCiptp≤Ein,∀i,where T represents network lifetime, Ein represents initial energy of sensor nodes, and egp represents energy consumption of sensor node i in unit time when sink node collects data at grid center p. egp is related to the adopted data routing algorithm.


#### 2.1.5. Grid Selection Constraint

After sink node completes collecting data at initial locationp1, it finds and moves to next neighbor grid center to collect data. Sink node searches, moves, and stays in turn, until data transmission delay constraints are not satisfied. Therefore, the vector P of grid centers which sink node moves through is (p1,p2,…,pv,…,pNv), where Nv represents the number of grid centers which sink node moves through. When data collection at location pNv is completed, sink node turns around and collects data in the reverse direction along the movement path. Therefore, the formula to judge two adjacent grid centers is as follows:(11)Lpv,pw=1,Pxpv-Pxpw2+Pypv-Pypw22≤dp0,others,where Lpv,pw is a symbol and represents whether grid centers pv and pw are neighbor centers. If Lpv,pw=1, grid centers pv and pw are neighbor centers. Therefore, grid selection constraint can be represented as follows:(12)Lpv,pv+1=1,∀pv∈P-pNv.


### 2.2. Optimization Model Establishment

The mobile data collection process of sink node can be divided into several static data collection processes at sojourn grid centers for sojourn times. Therefore, based on the analysis of the constraints and the hypothesis of LOA_DH, optimization problem of network lifetime with limited data transmission delay and hops can be transformed to the network model in Figure2. Ji represents sensor node i. According to energy consumption of sensor node i, lifetime of sensor node i is (13)Ti=Ein∑pCiptpegp∑pCiptp.Figure 2
Data collection chart of sink node.Network lifetime is(14)T=miniTi.According to the network structure in Figure2, optimization model of network lifetime with limited data transmission delay and hops is(15)maxPminiTis.t.constraints1,2,7,8,9,10,12Cip∈0,1,0≤bip≤bth.


### 2.3. Optimization Model Solution

Genetic algorithm is a search algorithm of biological evolution simulation process based on population. It can find maximum number of disjoint complete coverage set, which effectively searches the solution and reduces computation time [14]. Therefore, genetic algorithm is selected to solve the optimization model (15). But conventional genetic algorithm is not suitable for solving and needs further improvement. Then improved genetic algorithm is used to solve the optimization model (15). In the improved genetic algorithm, an individual is composed of grid centers and sojourn times, which means the individual is(16)R=px1,py1,t1;px2,py2,t2;…;pxNv,pyNv,tNv.N M represents the number of individuals, Ng represents the number of iterations, α1 represents cross probability of grid center location, α2 represents cross probability of sojourn time, β1 represents mutation probability of individual, and β2 represents mutation probability of gene. maxPmini(Ti) is selected as fitness function, and the implementation steps are as follows.Step 1 (iteration numberg=0, and current individual parameters are initialized, such as m=0,α1,α2,β1,β2).
N M individuals with full coverage of sensor nodes are initialized. The specific implementation method is as follows. Firstly, a grid center is randomly selected as initial location, and a neighbor grid center is also randomly selected as next sojourn location. When the number of selected grid centers exceeds threshold value or all neighbor grid centers are selected as sojourn locations, the selection ends and a movement path is obtained. Nextly, whether the movement path accords with constraints (7) of model (15) is analyzed. If the movement path does not match constraints (7) of model (15), isolated nodes exist. The grid center covering the most isolated nodes is found and some unselected grid centers are added to make the movement path in accordance with constraint (12) and the increasing path length should be the shortest. When the length of the movement path is larger than threshold value, the first part of the path which equals threshold value is selected and judged whether covering all sensor nodes. Finally, if the path does not match constraints (7) of model (15), the algorithm abandons the path and starts to search a new path. Otherwise, according to selected movement path, an individual vector is obtained, and the sum of all sojourn times at randomly generated sojourn grid centers is not longer than maximum data transmission delay. Repeating the above operation, NM individuals are obtained and each individual fully cover all sensor nodes.Step 2 (g=g+1).
According to the individual, MCP data routing algorithm [6] is used to calculate the objective function (14) and obtain the fitness of all individuals. That means, sink node stays at grid center p for time tp and uses MCP to collect data of sensor nodes in its communication range. When sink node moves to next grid center, each sensor node uses formula (9) to update its own remaining amount of stored data. Repeating the above operation until sink node completes a round of data collection along the grid centers of the individual, formula (14) is used to calculate network lifetime. Obviously, the calculation method accords with formula (10).Step 3 (selection).
The optimal individual is selected from current population (maximum fitness) as an individual of next generation.Step 4 (cross).
According to the selection strategy based on fitness proportion, one individual is selected from current population and crossed with current optimal individual to form a new individual. That is, minimum gene lengthNc1 of the two cross individuals is calculated, and z1=1. Then the following operation is repeated Nc1 times to obtain a new individual: a random number between 0 and 1 is generated; when the random number is less than cross parameter α1, grid center location of z1th gene in current optimal individual is selected; otherwise, the grid center location of z1th gene in another individual is selected; anther random number between 0 and 1 is generated; when the random number is less than cross parameter α2, sojourn time of z1th gene in current optimal individual is selected; otherwise, sojourn time of z1th gene in another individual is selected; z1=z1+1.Step 5 (mutation).
A random number between 0 and 1 is generated. If the random number is larger than mutation probabilityβ1 of individual, go to Step 6. Otherwise, z2=1 and the individual length value Nc2 is calculated according to Step 4. The following operation is repeated Nc2 times to obtain a mutated individual: a random number between 0 and 1 is generated; when the random number is less than mutation probability β2 of gene, a new gene is generated to replace z2th gene in the individual; z2=z2+1.Step 6.
The individual correction method is used to make individual meet constraints (1), (2), (7), and (12) as much as possible. If the individual does not meet constraints (1), (2), (7), and (12), the individual is abandoned. The specific method is as shown in Figure 3. (1)
When the individual violates constraint (12), duplicate grid center is searched and deleted, and TSP algorithm is used to calculate the path vector which traverses all grid centers in the individual. If the distance between two adjacent elements in the current path vector is larger than the distance dp between two adjacent grid centers, several interval grid centers are needed. Grid centers which let sink node have the shortest path are selected and added between the two adjacent elements, and initial sojourn time dp/v of each selected grid center is added to obtain a new individual. For example, according to the grid division in Figure 1, as shown in Figure 3(a), gene (px12,py12,t12′′) with duplicate grid center is deleted and the individual is rearranged with TSP algorithm. As shown in Figure 3(b), (px18,py18) is not neighbor grid center of (px7,py7); then two genes are found and added into the individual.(2)
When the new individual violates constraint (7), isolated nodes are searched and grid centers are added to make the increased movement distance be the shortest. If the distance of the movement path is larger than the threshold value, the first part of the path which equals threshold value is selected and judged whether covering all sensor nodes. If isolated nodes exit, the individual will be abandoned and go to Step 2; if not, initial sojourn time dp/v of each new grid centers is added. For example, according to the grid division in Figure 1, if the individual includes movement path 7-12-13-14-9-8 and there are isolated nodes in grid 21, then grid 17 is found to eliminate isolated nodes, and grid 18 is added to meet constraint (12). A new movement path is 7-12-17-18-13-14-9-8. If length of the movement path is longer than threshold value (such as 6), the first part 7-12-17-18-13-14 of the path is selected. If the first part covers all sensor nodes, sojourn time dp/v is added and new individual is obtained, else the individual is abandoned and go to Step 2.(3)
When one sojourn time of new gene violates constraint (2), the sojourn time is modified to be dp/v; if sum of all sojourn times in new individual violates constraint (1), all sojourn times adjust to tp′; m=m+1.(17)tp′=dpv+tp-dp/v∗tdelay-Nvdp/v∑ptp-dp/v,∑ptp>tdelaytptdelay∑ptp,∑ptp<tdelay,∀p.Figure 3
One modified example when the individual violates constraint (12).
(a) (b)Step 7.
Ifm is less than NM, return to Step 4. If g is less than Ng, return to Step 2. Otherwise, the optimal sojourn grid centers and sojourn times of sink node with maximum network lifetime are obtained. Solution process completes.


## 2.1. Constraint Analysis

In mWSNs, considering data transmission delay, data transmission hops, storage capacity, node energy, and movement speed of sink node are limited, data transmission delay constraints, node coverage constraint, data transmission constraints, energy constraint, and grid selection constraint are, respectively, extracted out. The constraints are as follows.


### 2.1.1. Data Transmission Delay Constraints

Data transmission delay should not be too long; therefore, the sum of sojourn times of sink node moving along the path once should not be longer than defined maximum data transmission delay.(1)∑ptp≤tdelay,where tp represents sojourn time of sink node at sojourn grid centerp; tdelay represents defined maximum data transmission delay. Mobile data collection process of sink node consists of static data collection processes when sink node stays at several sojourn grid centers for a period of time; therefore, sojourn time of sink node at grid center p should not be less than the time of sink node moving between adjacent grid centers. (2)tp≥dpv,∀p,where dp represents the distance from grid center p to next sojourn neighbor grid center.


### 2.1.2. Node Coverage Constraint

When sink node stays at a grid center, it collects data of sensor nodes whose transmission hops to sink node are not more than defined threshold. Bad movement path of sink node may lead some sensor nodes not to communicate with sink node. Those nodes are called isolated nodes. Therefore, it is necessary to analyze node coverage constraint and eliminate isolated nodes.( P x i ,  P y i ) represents location coordinates of sensor node i. (gxp,gyp) represents sojourn location coordinates of current sink node. dgip represents the distance from sensor node i to sojourn location p of sink node. dij represents the distance from sensor node i to neighbor sensor node j. The calculation formulae of dgip and dij are as follows:(3)dgip=Pxi-gxp2+Pyi-gyp22dij=Pxi-Pxj2+Pyi-Pyj22,j∈Ni,where Ni represents the set of all neighbor sensor nodes which are in the single-hop communication range of sensor node i.When sink node stays at grid centerp, data transmission hops between each sensor node and sink node are (4)hip=1,dgip<dmaxminj∈Nihijp,dgip≥dmax,where hip represents minimum transmission hops from sensor node i to sink node. dmax represents maximum communication distance of sensor node,(5)hijp=1+hjp,dij<dmax∞,dij≥dmax.The judgment formula (6) judges whether sensor node i is in the k-hops communication range of sink node. (6)Cip=1,hip≤k0,hip>k,where k represents maximum data transmission hops of sink node. Cip represents state symbol. If Cip=1, sensor node i is in the k-hops communication range of sink node. Otherwise, sensor node i is not in the range.In the data collection process, all sensor nodes are required to communicate with sink node and send data to sink node. There is no isolated node; therefore, node coverage constraint is(7)∑pCip≥1,∀i.


### 2.1.3. Data Transmission Constraints

In an actual system of WSNs, sensor nodes keep sensing data from time to time. If a sensor node is not in the data collection range of sink node, the sensed data should be put into memory. When the needed stored data exceeds maximum storage capacity, the latest data replaces the oldest data. Therefore, when sink node stays at grid centerp, data transmission constraint of sensor node is(8)0≤Cipgip≤bip-1+tpSi,∀i,where gip represents maximum amount of transmission data of sensor node i when sink node stays as grid center p. Si represents sensing rate of sensor node i. bip-1represents the remaining amount of stored data of sensor node i before sink node starts to collect data at grid center p.When sink node has collected data at grid centerp, the remaining amount bip of stored data of sensor node i is(9)bip=bth,bip-1+tpSi-Cipgip≥bthbip-1+tpSi-Cipgip,0≤bip-1+tpSi-Cipgip<bth,∀i,where bth represents maximum storage capacity of sensor nodes.


### 2.1.4. Node Energy Constraint

Sink node cyclically collects data along the selected path until one sensor node’s energy exhausts, and energy consumption of nodes should not be more than initial energy. Therefore node energy constraint is(10)T∑pCiptpegp∑pCiptp≤Ein,∀i,where T represents network lifetime, Ein represents initial energy of sensor nodes, and egp represents energy consumption of sensor node i in unit time when sink node collects data at grid center p. egp is related to the adopted data routing algorithm.


### 2.1.5. Grid Selection Constraint

After sink node completes collecting data at initial locationp1, it finds and moves to next neighbor grid center to collect data. Sink node searches, moves, and stays in turn, until data transmission delay constraints are not satisfied. Therefore, the vector P of grid centers which sink node moves through is (p1,p2,…,pv,…,pNv), where Nv represents the number of grid centers which sink node moves through. When data collection at location pNv is completed, sink node turns around and collects data in the reverse direction along the movement path. Therefore, the formula to judge two adjacent grid centers is as follows:(11)Lpv,pw=1,Pxpv-Pxpw2+Pypv-Pypw22≤dp0,others,where Lpv,pw is a symbol and represents whether grid centers pv and pw are neighbor centers. If Lpv,pw=1, grid centers pv and pw are neighbor centers. Therefore, grid selection constraint can be represented as follows:(12)Lpv,pv+1=1,∀pv∈P-pNv.


## 2.1.1. Data Transmission Delay Constraints

Data transmission delay should not be too long; therefore, the sum of sojourn times of sink node moving along the path once should not be longer than defined maximum data transmission delay.(1)∑ptp≤tdelay,where tp represents sojourn time of sink node at sojourn grid centerp; tdelay represents defined maximum data transmission delay. Mobile data collection process of sink node consists of static data collection processes when sink node stays at several sojourn grid centers for a period of time; therefore, sojourn time of sink node at grid center p should not be less than the time of sink node moving between adjacent grid centers. (2)tp≥dpv,∀p,where dp represents the distance from grid center p to next sojourn neighbor grid center.


## 2.1.2. Node Coverage Constraint

When sink node stays at a grid center, it collects data of sensor nodes whose transmission hops to sink node are not more than defined threshold. Bad movement path of sink node may lead some sensor nodes not to communicate with sink node. Those nodes are called isolated nodes. Therefore, it is necessary to analyze node coverage constraint and eliminate isolated nodes.( P x i ,  P y i ) represents location coordinates of sensor node i. (gxp,gyp) represents sojourn location coordinates of current sink node. dgip represents the distance from sensor node i to sojourn location p of sink node. dij represents the distance from sensor node i to neighbor sensor node j. The calculation formulae of dgip and dij are as follows:(3)dgip=Pxi-gxp2+Pyi-gyp22dij=Pxi-Pxj2+Pyi-Pyj22,j∈Ni,where Ni represents the set of all neighbor sensor nodes which are in the single-hop communication range of sensor node i.When sink node stays at grid centerp, data transmission hops between each sensor node and sink node are (4)hip=1,dgip<dmaxminj∈Nihijp,dgip≥dmax,where hip represents minimum transmission hops from sensor node i to sink node. dmax represents maximum communication distance of sensor node,(5)hijp=1+hjp,dij<dmax∞,dij≥dmax.The judgment formula (6) judges whether sensor node i is in the k-hops communication range of sink node. (6)Cip=1,hip≤k0,hip>k,where k represents maximum data transmission hops of sink node. Cip represents state symbol. If Cip=1, sensor node i is in the k-hops communication range of sink node. Otherwise, sensor node i is not in the range.In the data collection process, all sensor nodes are required to communicate with sink node and send data to sink node. There is no isolated node; therefore, node coverage constraint is(7)∑pCip≥1,∀i.


## 2.1.3. Data Transmission Constraints

In an actual system of WSNs, sensor nodes keep sensing data from time to time. If a sensor node is not in the data collection range of sink node, the sensed data should be put into memory. When the needed stored data exceeds maximum storage capacity, the latest data replaces the oldest data. Therefore, when sink node stays at grid centerp, data transmission constraint of sensor node is(8)0≤Cipgip≤bip-1+tpSi,∀i,where gip represents maximum amount of transmission data of sensor node i when sink node stays as grid center p. Si represents sensing rate of sensor node i. bip-1represents the remaining amount of stored data of sensor node i before sink node starts to collect data at grid center p.When sink node has collected data at grid centerp, the remaining amount bip of stored data of sensor node i is(9)bip=bth,bip-1+tpSi-Cipgip≥bthbip-1+tpSi-Cipgip,0≤bip-1+tpSi-Cipgip<bth,∀i,where bth represents maximum storage capacity of sensor nodes.


## 2.1.4. Node Energy Constraint

Sink node cyclically collects data along the selected path until one sensor node’s energy exhausts, and energy consumption of nodes should not be more than initial energy. Therefore node energy constraint is(10)T∑pCiptpegp∑pCiptp≤Ein,∀i,where T represents network lifetime, Ein represents initial energy of sensor nodes, and egp represents energy consumption of sensor node i in unit time when sink node collects data at grid center p. egp is related to the adopted data routing algorithm.


## 2.1.5. Grid Selection Constraint

After sink node completes collecting data at initial locationp1, it finds and moves to next neighbor grid center to collect data. Sink node searches, moves, and stays in turn, until data transmission delay constraints are not satisfied. Therefore, the vector P of grid centers which sink node moves through is (p1,p2,…,pv,…,pNv), where Nv represents the number of grid centers which sink node moves through. When data collection at location pNv is completed, sink node turns around and collects data in the reverse direction along the movement path. Therefore, the formula to judge two adjacent grid centers is as follows:(11)Lpv,pw=1,Pxpv-Pxpw2+Pypv-Pypw22≤dp0,others,where Lpv,pw is a symbol and represents whether grid centers pv and pw are neighbor centers. If Lpv,pw=1, grid centers pv and pw are neighbor centers. Therefore, grid selection constraint can be represented as follows:(12)Lpv,pv+1=1,∀pv∈P-pNv.


## 2.2. Optimization Model Establishment

The mobile data collection process of sink node can be divided into several static data collection processes at sojourn grid centers for sojourn times. Therefore, based on the analysis of the constraints and the hypothesis of LOA_DH, optimization problem of network lifetime with limited data transmission delay and hops can be transformed to the network model in Figure2. Ji represents sensor node i. According to energy consumption of sensor node i, lifetime of sensor node i is (13)Ti=Ein∑pCiptpegp∑pCiptp.Figure 2
Data collection chart of sink node.Network lifetime is(14)T=miniTi.According to the network structure in Figure2, optimization model of network lifetime with limited data transmission delay and hops is(15)maxPminiTis.t.constraints1,2,7,8,9,10,12Cip∈0,1,0≤bip≤bth.


## 2.3. Optimization Model Solution

Genetic algorithm is a search algorithm of biological evolution simulation process based on population. It can find maximum number of disjoint complete coverage set, which effectively searches the solution and reduces computation time [14]. Therefore, genetic algorithm is selected to solve the optimization model (15). But conventional genetic algorithm is not suitable for solving and needs further improvement. Then improved genetic algorithm is used to solve the optimization model (15). In the improved genetic algorithm, an individual is composed of grid centers and sojourn times, which means the individual is(16)R=px1,py1,t1;px2,py2,t2;…;pxNv,pyNv,tNv.N M represents the number of individuals, Ng represents the number of iterations, α1 represents cross probability of grid center location, α2 represents cross probability of sojourn time, β1 represents mutation probability of individual, and β2 represents mutation probability of gene. maxPmini(Ti) is selected as fitness function, and the implementation steps are as follows.Step 1 (iteration numberg=0, and current individual parameters are initialized, such as m=0,α1,α2,β1,β2).
N M individuals with full coverage of sensor nodes are initialized. The specific implementation method is as follows. Firstly, a grid center is randomly selected as initial location, and a neighbor grid center is also randomly selected as next sojourn location. When the number of selected grid centers exceeds threshold value or all neighbor grid centers are selected as sojourn locations, the selection ends and a movement path is obtained. Nextly, whether the movement path accords with constraints (7) of model (15) is analyzed. If the movement path does not match constraints (7) of model (15), isolated nodes exist. The grid center covering the most isolated nodes is found and some unselected grid centers are added to make the movement path in accordance with constraint (12) and the increasing path length should be the shortest. When the length of the movement path is larger than threshold value, the first part of the path which equals threshold value is selected and judged whether covering all sensor nodes. Finally, if the path does not match constraints (7) of model (15), the algorithm abandons the path and starts to search a new path. Otherwise, according to selected movement path, an individual vector is obtained, and the sum of all sojourn times at randomly generated sojourn grid centers is not longer than maximum data transmission delay. Repeating the above operation, NM individuals are obtained and each individual fully cover all sensor nodes.Step 2 (g=g+1).
According to the individual, MCP data routing algorithm [6] is used to calculate the objective function (14) and obtain the fitness of all individuals. That means, sink node stays at grid center p for time tp and uses MCP to collect data of sensor nodes in its communication range. When sink node moves to next grid center, each sensor node uses formula (9) to update its own remaining amount of stored data. Repeating the above operation until sink node completes a round of data collection along the grid centers of the individual, formula (14) is used to calculate network lifetime. Obviously, the calculation method accords with formula (10).Step 3 (selection).
The optimal individual is selected from current population (maximum fitness) as an individual of next generation.Step 4 (cross).
According to the selection strategy based on fitness proportion, one individual is selected from current population and crossed with current optimal individual to form a new individual. That is, minimum gene lengthNc1 of the two cross individuals is calculated, and z1=1. Then the following operation is repeated Nc1 times to obtain a new individual: a random number between 0 and 1 is generated; when the random number is less than cross parameter α1, grid center location of z1th gene in current optimal individual is selected; otherwise, the grid center location of z1th gene in another individual is selected; anther random number between 0 and 1 is generated; when the random number is less than cross parameter α2, sojourn time of z1th gene in current optimal individual is selected; otherwise, sojourn time of z1th gene in another individual is selected; z1=z1+1.Step 5 (mutation).
A random number between 0 and 1 is generated. If the random number is larger than mutation probabilityβ1 of individual, go to Step 6. Otherwise, z2=1 and the individual length value Nc2 is calculated according to Step 4. The following operation is repeated Nc2 times to obtain a mutated individual: a random number between 0 and 1 is generated; when the random number is less than mutation probability β2 of gene, a new gene is generated to replace z2th gene in the individual; z2=z2+1.Step 6.
The individual correction method is used to make individual meet constraints (1), (2), (7), and (12) as much as possible. If the individual does not meet constraints (1), (2), (7), and (12), the individual is abandoned. The specific method is as shown in Figure 3. (1)
When the individual violates constraint (12), duplicate grid center is searched and deleted, and TSP algorithm is used to calculate the path vector which traverses all grid centers in the individual. If the distance between two adjacent elements in the current path vector is larger than the distance dp between two adjacent grid centers, several interval grid centers are needed. Grid centers which let sink node have the shortest path are selected and added between the two adjacent elements, and initial sojourn time dp/v of each selected grid center is added to obtain a new individual. For example, according to the grid division in Figure 1, as shown in Figure 3(a), gene (px12,py12,t12′′) with duplicate grid center is deleted and the individual is rearranged with TSP algorithm. As shown in Figure 3(b), (px18,py18) is not neighbor grid center of (px7,py7); then two genes are found and added into the individual.(2)
When the new individual violates constraint (7), isolated nodes are searched and grid centers are added to make the increased movement distance be the shortest. If the distance of the movement path is larger than the threshold value, the first part of the path which equals threshold value is selected and judged whether covering all sensor nodes. If isolated nodes exit, the individual will be abandoned and go to Step 2; if not, initial sojourn time dp/v of each new grid centers is added. For example, according to the grid division in Figure 1, if the individual includes movement path 7-12-13-14-9-8 and there are isolated nodes in grid 21, then grid 17 is found to eliminate isolated nodes, and grid 18 is added to meet constraint (12). A new movement path is 7-12-17-18-13-14-9-8. If length of the movement path is longer than threshold value (such as 6), the first part 7-12-17-18-13-14 of the path is selected. If the first part covers all sensor nodes, sojourn time dp/v is added and new individual is obtained, else the individual is abandoned and go to Step 2.(3)
When one sojourn time of new gene violates constraint (2), the sojourn time is modified to be dp/v; if sum of all sojourn times in new individual violates constraint (1), all sojourn times adjust to tp′; m=m+1.(17)tp′=dpv+tp-dp/v∗tdelay-Nvdp/v∑ptp-dp/v,∑ptp>tdelaytptdelay∑ptp,∑ptp<tdelay,∀p.Figure 3
One modified example when the individual violates constraint (12).
(a) (b)Step 7.
Ifm is less than NM, return to Step 4. If g is less than Ng, return to Step 2. Otherwise, the optimal sojourn grid centers and sojourn times of sink node with maximum network lifetime are obtained. Solution process completes.


## 3. Algorithm Implementation

As is shown in Figure4, when network starts, LOA_DH uses the following steps to search path and collect data.Figure 4
Work flow chart of LOA_DH.Step 1.
Sink node broadcasts information query package. After waiting a period of time, it receives location information of all sensor nodes and adds to information table of sensor nodes.Step 2.
Sink node initializes all parameters and randomly generatesNM individuals which meet constraints (1), (2), (7), and (12).Step 3 (g=g+1).
Sink node uses MCP routing algorithm to calculate the energy consumption of sensor nodes in thek-hops communication range of each sojourn grid center in the movement path and calculate node lifetime and network lifetime.Step 4.
Sink node performs selection, cross, and mutation operations. An individual of optimal fitness is selected to cross and form a new individual, and it probably mutates.Step 5.
Sink node modifies the new individual to meet constraints (1), (2), (7), and (12), m=m+1. If m is less than NM, go to Step 4. Otherwise, if g is less than Ng, go to Step 3.Step 6.
Sink node broadcasts routing information package and moves and collects data according to the selected movement path and sojourn times.Step 7.
Sensor nodes monitor routing information package. According to different routing information packages of sink node and neighbor sensor nodes, sensor nodes select into data transmission state or sleep state. If sensor node is in data communication range of sink node, it selects father node to send data to sink node. Otherwise, sensor nodes are in sleep state. They wake up periodically, sense data, and store the data.Time complexity of LOA_DH is analyzed. Time complexity of LOA_DH is the same as time complexity of improved genetic algorithm. The improved genetic algorithm mainly includes two parts, such as calculation of individual fitness and generation of new individual. The first part is to calculate the energy consumption and storage capacity of all sensor nodes by using MCP data routing algorithm at all sojourn locations in each individual; namely, the time complexity isΘ(NgNMNVNn2), where NV represents the average number of genes in individuals and Nn represents the number of sensor nodes. The second part is to generate new individuals which meet constraints (1), (2), (7), and (12). According to Step 6 of Section 2.3, time complexity of second part is Θ(NgNMNV2+NgNMNVNn+NgNMNV). NV is far less than Nn; therefore, time complexity of LOA_DH is Θ(NgNMNVNn2). Due to use of improved genetic algorithm to solve the optimization model, time complexity of LOA_DH is not low and is more influenced by the number of sensor nodes.


## 4. Simulation Implementation and Analysis

### 4.1. Simulation Parameters

In sensor nodes of actual WSNs, the energy consumption of data process and calculation and control package communication such as information query package, routing information package, and transmission data query package are relatively small; therefore only energy consumption of data sensing and communication is considered during simulation process. Energy consumption model which is adopted in the current academic field is used for all nodes.(18)Ef=gijEelec+gijεfsdij2,Ej=gijEelec,where Ef represents energy consumption of node data transmission, Ej represents energy consumption of node data reception, gij represents the amount of data which sensor node i needs to send to neighbor sensor node j, Eelec represents energy consumption parameter of communication circuit, and εfs represents energy consumption parameter of signal amplification. Meanwhile, the movement time of sink node between adjacent grid centers is dp/v. In order to facilitate the representation, dp/v is defined as a unit of data transmission delay. Then maximum data transmission delay is constant td, which also means the movement path of sink node is made up of no more than td grid centers.During simulation process, simulation parameters in Table1 are used to simulate and calculate network lifetime, average node energy consumption, average amount of node discarded data, and node coverage rate, where network lifetime is defined as minimum value of working times of all sensor nodes when first sensor node exhausts energy. Average node energy consumption is defined as the ratio between average value of energy consumption of all sensor nodes and network lifetime. Average amount of node discarded data is defined as the average value of discarded sensed data during maximum data transmission delay td. Node coverage rate is defined as the ratio between number of sensor nodes covered by data collection and all sensor nodes when sink node moves along the selected path.Table 1
Simulation parameter table.
Parameter Value Energy consumption parameter of communication circuitEelec 50 nJ/bit Energy consumption parameter of signal amplificationεfs 100 pJ/bit/m2 Number of gridsn∗n 10 ∗ 10 Movement speed of sink nodev 5.5 m/s Data sensing rate of sensor nodeSi 100 bit/s Data storage capacity of sensor nodebth 32 kbit Side length of griddp 100 m Number of individualsNM 50 Number of iterationsNg 50 Maximum communication radius of nodesdmax 200 m Cross probability of grid center locationα1 0.5 Cross probability of sojourn timeα2 0.5 Mutation probability of individualβ1 0.25 Mutation probability of geneβ2 0.05 Maximum number of data transmission hopsk 3 Maximum data transmission delaytd 25 Side length of network simulation area 1000 m Initial energy of sensor nodesEin 100 J


### 4.2. Simulation Results and Analysis

Parameters in Table1 are selected. 80, 100, 120, 140, 160, 180, and 200 are chosen as number of sensor nodes. 10 random distribution topologies of sensor nodes are generated, and then LOA_DH, MCP_RAND, MCP_GMRE [10], and EASR [6] are used to calculate network lifetime, average node energy consumption, average amount of node discarded data, and node coverage rate. Those values are averaged as simulation results of algorithms. The movement path of sink node under 100 sensor nodes is taken as an example to illustrate characteristics of movement path selection in multiple distribution scenes, such as random uniform distribution of sensor nodes in the whole area (node distribution scene 1), random uniform distribution of sensor nodes in part area (node distribution scene 2), and random Poisson distribution of sensor nodes in part area (node distribution scene 3). In those scenes, data routing algorithms of LOA_DH, MCP_RAND, MCP_GMRE, and EASR are MCP in which sink node gathers data of sensor nodes in its k-hops communication range. MCP_RAND randomly selects a grid center from neighbor grid centers as next sojourn location.


#### 4.2.1. Algorithm Comparison in Node Distribution Scene 1

There are 100 sensor nodes randomly distributed in the monitoring area of1000m∗1000m. All algorithms are executed with simulation parameters in Table 1 to obtain the movement path of sink node. Movement path analysis shows that movement path of sink node selected by MCP_GMRE and EASR always cluster in a subarea, without considering all sensor nodes. Movement path of sink node selected by MCP_RAND is randomly good and bad. Movement path of sink node selected by LOA_DH has better effect. As is shown in Figure 5, star represents sojourn grid center of sink node, and circle represents sensor node. When sensor nodes are distributed randomly and uniformly in the monitoring area, according to the distribution of sensor nodes, LOA_DH finds a movement path consisting of 25 grid centers. The movement path is mainly in the rectangular region whose four vertices are (200 m 200 m), (200 m 800 m), (800 m 200 m), and (800 m 800 m). The movement path avoids entering the border region and expands movement range of sink node, which let all sensor nodes have opportunity to communicate with sink node and optimize network lifetime.Figure 5
Movement path of sink node in node distribution scene 1.As is shown in Figure6, LOA_DH considers the location distribution of sensor nodes, establishes network lifetime optimization model limited by data transmission delay and hops, uses MCP routing algorithm to collect data, and improves genetic algorithm to solve the optimization model (15) to obtain optimal solution. The solution reduces and balances node energy consumption and prolongs network lifetime. Movement paths of sink node in MCP_GMRE and EASR are easy to fall into the boundary of the monitoring area, and movement path of sink node in MCP_RAND has characteristic of randomness; therefore, network lifetime of LOA_DH is much longer than MCP_RAND, MCP_GMRE, and EASR algorithms.Figure 6
Comparation of network lifetime in node distribution scene 1.As is shown in Figure7, in LOA_DH, sink node finds an optimal movement path in the monitoring area. When sink node collects data along the movement path, each sensor node has opportunity to appear around and far away from sink node. The energy consumption of data communication is reduced in part hub sensor nodes. Therefore, average node energy consumption of LOA_DH is lower than MCP_RAND, MCP_GMRE, and EASR algorithms. Because of randomness of sink node’s movement, average node energy consumption of MCP_RAND has large fluctuation.Figure 7
Comparation of average node energy consumption in node distribution scene 1.As is shown in Figure8, LOA_DH makes node coverage constraint one of movement path selection constraints, which requires that sink node fully covers all sensor nodes in the monitoring area. On the other hand, MCP_RAND, MCP_GMRE, and EASR only allow sink node to move in local area. Therefore, node coverage rate of LOA_DH is 100%, which is higher than MCP_RAND, MCP_GMRE, and EASR algorithms.Figure 8
Comparation of node coverage rate in node distribution scene 1.As is shown in Figure9, in LOA_DH, the selected movement path allows all sensor nodes to have opportunity to communicate with sink node and remove isolated nodes. Therefore, communication time between each sensor node and sink node is enhanced, while data storage pressure is reduced, and amount of sent data is improved. Therefore, LOA_DH has minimum average amount of node discarded data, MCP_RAND and EASR are higher, and MCP_GMRE is the highest.Figure 9
Comparation of average amount of node discarded data in node distribution scene 1.In conclusion, when sensor nodes obey random uniform distribution in the monitoring area, according to location and other information of sensor nodes, LOA_DH finds an optimal movement path which fully covers sensor nodes and obtains sojourn times. LOA_DH improves network lifetime and reduces average amount of node discarded data and average node energy consumption.


#### 4.2.2. Algorithm Comparison in Node Distribution Scene 2

Assume that there is no sensor node in the rectangular region whose four vertices are (500 m 0 m), (500 m 1000 m), (1000 m 500 m), and (1000 m 1000 m). 100 sensor nodes obey random uniform distribution in other areas. LOA_DH is executed with simulation parameters in Table1 to obtain a movement path of sink node which avoids the nonnode distribution area. As is shown in Figure 10, sink node accesses coverage area of sensor nodes in turn and, meanwhile, avoids selecting grid centers in nonnode distribution area as sojourn locations.Figure 10
Movement path of sink node in node distribution scene 2.As is shown in Figure11, LOA_DH can obtain optimal movement path of sink node and sojourn times at sojourn grid centers. The path avoids nonnode distribution area; therefore, network lifetime of LOA_DH is higher than MCP_RAND, MCP_GMRE, and EASR algorithms. Meanwhile, the selected movement path avoids nonnode distribution area. The concentrated distribution of sensor node reduces communication energy consumption. Therefore, when the number of sensor nodes is the same, network lifetime of LOA_DH in node distribution scene 2 is longer than that in scene 1. In those two scenes, network lifetime of MCP_RAND, MCP_GMRE, and EASR is almost the same. The simulation results of average node energy consumption, node coverage ratio, and average amount of node discarded data of LOA_DH in node distribution scene 2 are almost the same like in scene 1. Therefore, related content is not elaborated repeatedly and can refer to Section 4.2.1.Figure 11
Comparation of network lifetime in node distribution scene 2.


#### 4.2.3. Algorithm Comparison in Node Distribution Scene 3

There are 100 sensor nodes and four points. The four points are (750 m 250 m), (750 m 500 m), (750 m 750 m), and (500 m 750 m). There are 25 sensor nodes which obey random Poisson distribution in the vicinity of each point. LOA_DH is executed with simulation parameters in Table1 to obtain the movement path of sink node. As shown in Figure 12, the movement path of sink node concentrates in node intensively distributed area, and sojourn times of part grid centers are relatively longer.Figure 12
Movement path of sink node in node distribution scene 3.As shown in Figure13, network lifetime of LOA_DH is much longer than other algorithms, because LOA_DH can find optimal movement path of sink node and sojourn times at sojourn grid centers. LOA_DH has less node communication energy consumption because of intensively distributed sensor nodes. Therefore, with the same number of sensor nodes, network lifetime of LOA_DH in node distribution scene 3 is longer than that in scene 1 and scene 2. The simulation results of average node energy consumption, node coverage ratio, and average amount of node discarded data of LOA_DH in node distribution scene 3 are almost the same like in scene 1. Therefore, related content is not elaborated repeatedly and can refer to Section 4.2.1.Figure 13
Comparation of network lifetime in node distribution scene 3.In conclusion, in the three node distribution scenes, according to location and other information, LOA_DH can obtain optimal movement path of sink node and sojourn times. Compared to MCP_RAND, MCP_GMRE, and EASR algorithms, LOA_DH fully covers all sensor nodes and has the longest network lifetime and least average amount of node discarded data and average node energy consumption.


## 4.1. Simulation Parameters

In sensor nodes of actual WSNs, the energy consumption of data process and calculation and control package communication such as information query package, routing information package, and transmission data query package are relatively small; therefore only energy consumption of data sensing and communication is considered during simulation process. Energy consumption model which is adopted in the current academic field is used for all nodes.(18)Ef=gijEelec+gijεfsdij2,Ej=gijEelec,where Ef represents energy consumption of node data transmission, Ej represents energy consumption of node data reception, gij represents the amount of data which sensor node i needs to send to neighbor sensor node j, Eelec represents energy consumption parameter of communication circuit, and εfs represents energy consumption parameter of signal amplification. Meanwhile, the movement time of sink node between adjacent grid centers is dp/v. In order to facilitate the representation, dp/v is defined as a unit of data transmission delay. Then maximum data transmission delay is constant td, which also means the movement path of sink node is made up of no more than td grid centers.During simulation process, simulation parameters in Table1 are used to simulate and calculate network lifetime, average node energy consumption, average amount of node discarded data, and node coverage rate, where network lifetime is defined as minimum value of working times of all sensor nodes when first sensor node exhausts energy. Average node energy consumption is defined as the ratio between average value of energy consumption of all sensor nodes and network lifetime. Average amount of node discarded data is defined as the average value of discarded sensed data during maximum data transmission delay td. Node coverage rate is defined as the ratio between number of sensor nodes covered by data collection and all sensor nodes when sink node moves along the selected path.Table 1
Simulation parameter table.
Parameter Value Energy consumption parameter of communication circuitEelec 50 nJ/bit Energy consumption parameter of signal amplificationεfs 100 pJ/bit/m2 Number of gridsn∗n 10 ∗ 10 Movement speed of sink nodev 5.5 m/s Data sensing rate of sensor nodeSi 100 bit/s Data storage capacity of sensor nodebth 32 kbit Side length of griddp 100 m Number of individualsNM 50 Number of iterationsNg 50 Maximum communication radius of nodesdmax 200 m Cross probability of grid center locationα1 0.5 Cross probability of sojourn timeα2 0.5 Mutation probability of individualβ1 0.25 Mutation probability of geneβ2 0.05 Maximum number of data transmission hopsk 3 Maximum data transmission delaytd 25 Side length of network simulation area 1000 m Initial energy of sensor nodesEin 100 J


## 4.2. Simulation Results and Analysis

Parameters in Table1 are selected. 80, 100, 120, 140, 160, 180, and 200 are chosen as number of sensor nodes. 10 random distribution topologies of sensor nodes are generated, and then LOA_DH, MCP_RAND, MCP_GMRE [10], and EASR [6] are used to calculate network lifetime, average node energy consumption, average amount of node discarded data, and node coverage rate. Those values are averaged as simulation results of algorithms. The movement path of sink node under 100 sensor nodes is taken as an example to illustrate characteristics of movement path selection in multiple distribution scenes, such as random uniform distribution of sensor nodes in the whole area (node distribution scene 1), random uniform distribution of sensor nodes in part area (node distribution scene 2), and random Poisson distribution of sensor nodes in part area (node distribution scene 3). In those scenes, data routing algorithms of LOA_DH, MCP_RAND, MCP_GMRE, and EASR are MCP in which sink node gathers data of sensor nodes in its k-hops communication range. MCP_RAND randomly selects a grid center from neighbor grid centers as next sojourn location.


### 4.2.1. Algorithm Comparison in Node Distribution Scene 1

There are 100 sensor nodes randomly distributed in the monitoring area of1000m∗1000m. All algorithms are executed with simulation parameters in Table 1 to obtain the movement path of sink node. Movement path analysis shows that movement path of sink node selected by MCP_GMRE and EASR always cluster in a subarea, without considering all sensor nodes. Movement path of sink node selected by MCP_RAND is randomly good and bad. Movement path of sink node selected by LOA_DH has better effect. As is shown in Figure 5, star represents sojourn grid center of sink node, and circle represents sensor node. When sensor nodes are distributed randomly and uniformly in the monitoring area, according to the distribution of sensor nodes, LOA_DH finds a movement path consisting of 25 grid centers. The movement path is mainly in the rectangular region whose four vertices are (200 m 200 m), (200 m 800 m), (800 m 200 m), and (800 m 800 m). The movement path avoids entering the border region and expands movement range of sink node, which let all sensor nodes have opportunity to communicate with sink node and optimize network lifetime.Figure 5
Movement path of sink node in node distribution scene 1.As is shown in Figure6, LOA_DH considers the location distribution of sensor nodes, establishes network lifetime optimization model limited by data transmission delay and hops, uses MCP routing algorithm to collect data, and improves genetic algorithm to solve the optimization model (15) to obtain optimal solution. The solution reduces and balances node energy consumption and prolongs network lifetime. Movement paths of sink node in MCP_GMRE and EASR are easy to fall into the boundary of the monitoring area, and movement path of sink node in MCP_RAND has characteristic of randomness; therefore, network lifetime of LOA_DH is much longer than MCP_RAND, MCP_GMRE, and EASR algorithms.Figure 6
Comparation of network lifetime in node distribution scene 1.As is shown in Figure7, in LOA_DH, sink node finds an optimal movement path in the monitoring area. When sink node collects data along the movement path, each sensor node has opportunity to appear around and far away from sink node. The energy consumption of data communication is reduced in part hub sensor nodes. Therefore, average node energy consumption of LOA_DH is lower than MCP_RAND, MCP_GMRE, and EASR algorithms. Because of randomness of sink node’s movement, average node energy consumption of MCP_RAND has large fluctuation.Figure 7
Comparation of average node energy consumption in node distribution scene 1.As is shown in Figure8, LOA_DH makes node coverage constraint one of movement path selection constraints, which requires that sink node fully covers all sensor nodes in the monitoring area. On the other hand, MCP_RAND, MCP_GMRE, and EASR only allow sink node to move in local area. Therefore, node coverage rate of LOA_DH is 100%, which is higher than MCP_RAND, MCP_GMRE, and EASR algorithms.Figure 8
Comparation of node coverage rate in node distribution scene 1.As is shown in Figure9, in LOA_DH, the selected movement path allows all sensor nodes to have opportunity to communicate with sink node and remove isolated nodes. Therefore, communication time between each sensor node and sink node is enhanced, while data storage pressure is reduced, and amount of sent data is improved. Therefore, LOA_DH has minimum average amount of node discarded data, MCP_RAND and EASR are higher, and MCP_GMRE is the highest.Figure 9
Comparation of average amount of node discarded data in node distribution scene 1.In conclusion, when sensor nodes obey random uniform distribution in the monitoring area, according to location and other information of sensor nodes, LOA_DH finds an optimal movement path which fully covers sensor nodes and obtains sojourn times. LOA_DH improves network lifetime and reduces average amount of node discarded data and average node energy consumption.


### 4.2.2. Algorithm Comparison in Node Distribution Scene 2

Assume that there is no sensor node in the rectangular region whose four vertices are (500 m 0 m), (500 m 1000 m), (1000 m 500 m), and (1000 m 1000 m). 100 sensor nodes obey random uniform distribution in other areas. LOA_DH is executed with simulation parameters in Table1 to obtain a movement path of sink node which avoids the nonnode distribution area. As is shown in Figure 10, sink node accesses coverage area of sensor nodes in turn and, meanwhile, avoids selecting grid centers in nonnode distribution area as sojourn locations.Figure 10
Movement path of sink node in node distribution scene 2.As is shown in Figure11, LOA_DH can obtain optimal movement path of sink node and sojourn times at sojourn grid centers. The path avoids nonnode distribution area; therefore, network lifetime of LOA_DH is higher than MCP_RAND, MCP_GMRE, and EASR algorithms. Meanwhile, the selected movement path avoids nonnode distribution area. The concentrated distribution of sensor node reduces communication energy consumption. Therefore, when the number of sensor nodes is the same, network lifetime of LOA_DH in node distribution scene 2 is longer than that in scene 1. In those two scenes, network lifetime of MCP_RAND, MCP_GMRE, and EASR is almost the same. The simulation results of average node energy consumption, node coverage ratio, and average amount of node discarded data of LOA_DH in node distribution scene 2 are almost the same like in scene 1. Therefore, related content is not elaborated repeatedly and can refer to Section 4.2.1.Figure 11
Comparation of network lifetime in node distribution scene 2.


### 4.2.3. Algorithm Comparison in Node Distribution Scene 3

There are 100 sensor nodes and four points. The four points are (750 m 250 m), (750 m 500 m), (750 m 750 m), and (500 m 750 m). There are 25 sensor nodes which obey random Poisson distribution in the vicinity of each point. LOA_DH is executed with simulation parameters in Table1 to obtain the movement path of sink node. As shown in Figure 12, the movement path of sink node concentrates in node intensively distributed area, and sojourn times of part grid centers are relatively longer.Figure 12
Movement path of sink node in node distribution scene 3.As shown in Figure13, network lifetime of LOA_DH is much longer than other algorithms, because LOA_DH can find optimal movement path of sink node and sojourn times at sojourn grid centers. LOA_DH has less node communication energy consumption because of intensively distributed sensor nodes. Therefore, with the same number of sensor nodes, network lifetime of LOA_DH in node distribution scene 3 is longer than that in scene 1 and scene 2. The simulation results of average node energy consumption, node coverage ratio, and average amount of node discarded data of LOA_DH in node distribution scene 3 are almost the same like in scene 1. Therefore, related content is not elaborated repeatedly and can refer to Section 4.2.1.Figure 13
Comparation of network lifetime in node distribution scene 3.In conclusion, in the three node distribution scenes, according to location and other information, LOA_DH can obtain optimal movement path of sink node and sojourn times. Compared to MCP_RAND, MCP_GMRE, and EASR algorithms, LOA_DH fully covers all sensor nodes and has the longest network lifetime and least average amount of node discarded data and average node energy consumption.


## 4.2.1. Algorithm Comparison in Node Distribution Scene 1

There are 100 sensor nodes randomly distributed in the monitoring area of1000m∗1000m. All algorithms are executed with simulation parameters in Table 1 to obtain the movement path of sink node. Movement path analysis shows that movement path of sink node selected by MCP_GMRE and EASR always cluster in a subarea, without considering all sensor nodes. Movement path of sink node selected by MCP_RAND is randomly good and bad. Movement path of sink node selected by LOA_DH has better effect. As is shown in Figure 5, star represents sojourn grid center of sink node, and circle represents sensor node. When sensor nodes are distributed randomly and uniformly in the monitoring area, according to the distribution of sensor nodes, LOA_DH finds a movement path consisting of 25 grid centers. The movement path is mainly in the rectangular region whose four vertices are (200 m 200 m), (200 m 800 m), (800 m 200 m), and (800 m 800 m). The movement path avoids entering the border region and expands movement range of sink node, which let all sensor nodes have opportunity to communicate with sink node and optimize network lifetime.Figure 5
Movement path of sink node in node distribution scene 1.As is shown in Figure6, LOA_DH considers the location distribution of sensor nodes, establishes network lifetime optimization model limited by data transmission delay and hops, uses MCP routing algorithm to collect data, and improves genetic algorithm to solve the optimization model (15) to obtain optimal solution. The solution reduces and balances node energy consumption and prolongs network lifetime. Movement paths of sink node in MCP_GMRE and EASR are easy to fall into the boundary of the monitoring area, and movement path of sink node in MCP_RAND has characteristic of randomness; therefore, network lifetime of LOA_DH is much longer than MCP_RAND, MCP_GMRE, and EASR algorithms.Figure 6
Comparation of network lifetime in node distribution scene 1.As is shown in Figure7, in LOA_DH, sink node finds an optimal movement path in the monitoring area. When sink node collects data along the movement path, each sensor node has opportunity to appear around and far away from sink node. The energy consumption of data communication is reduced in part hub sensor nodes. Therefore, average node energy consumption of LOA_DH is lower than MCP_RAND, MCP_GMRE, and EASR algorithms. Because of randomness of sink node’s movement, average node energy consumption of MCP_RAND has large fluctuation.Figure 7
Comparation of average node energy consumption in node distribution scene 1.As is shown in Figure8, LOA_DH makes node coverage constraint one of movement path selection constraints, which requires that sink node fully covers all sensor nodes in the monitoring area. On the other hand, MCP_RAND, MCP_GMRE, and EASR only allow sink node to move in local area. Therefore, node coverage rate of LOA_DH is 100%, which is higher than MCP_RAND, MCP_GMRE, and EASR algorithms.Figure 8
Comparation of node coverage rate in node distribution scene 1.As is shown in Figure9, in LOA_DH, the selected movement path allows all sensor nodes to have opportunity to communicate with sink node and remove isolated nodes. Therefore, communication time between each sensor node and sink node is enhanced, while data storage pressure is reduced, and amount of sent data is improved. Therefore, LOA_DH has minimum average amount of node discarded data, MCP_RAND and EASR are higher, and MCP_GMRE is the highest.Figure 9
Comparation of average amount of node discarded data in node distribution scene 1.In conclusion, when sensor nodes obey random uniform distribution in the monitoring area, according to location and other information of sensor nodes, LOA_DH finds an optimal movement path which fully covers sensor nodes and obtains sojourn times. LOA_DH improves network lifetime and reduces average amount of node discarded data and average node energy consumption.


## 4.2.2. Algorithm Comparison in Node Distribution Scene 2

Assume that there is no sensor node in the rectangular region whose four vertices are (500 m 0 m), (500 m 1000 m), (1000 m 500 m), and (1000 m 1000 m). 100 sensor nodes obey random uniform distribution in other areas. LOA_DH is executed with simulation parameters in Table1 to obtain a movement path of sink node which avoids the nonnode distribution area. As is shown in Figure 10, sink node accesses coverage area of sensor nodes in turn and, meanwhile, avoids selecting grid centers in nonnode distribution area as sojourn locations.Figure 10
Movement path of sink node in node distribution scene 2.As is shown in Figure11, LOA_DH can obtain optimal movement path of sink node and sojourn times at sojourn grid centers. The path avoids nonnode distribution area; therefore, network lifetime of LOA_DH is higher than MCP_RAND, MCP_GMRE, and EASR algorithms. Meanwhile, the selected movement path avoids nonnode distribution area. The concentrated distribution of sensor node reduces communication energy consumption. Therefore, when the number of sensor nodes is the same, network lifetime of LOA_DH in node distribution scene 2 is longer than that in scene 1. In those two scenes, network lifetime of MCP_RAND, MCP_GMRE, and EASR is almost the same. The simulation results of average node energy consumption, node coverage ratio, and average amount of node discarded data of LOA_DH in node distribution scene 2 are almost the same like in scene 1. Therefore, related content is not elaborated repeatedly and can refer to Section 4.2.1.Figure 11
Comparation of network lifetime in node distribution scene 2.


## 4.2.3. Algorithm Comparison in Node Distribution Scene 3

There are 100 sensor nodes and four points. The four points are (750 m 250 m), (750 m 500 m), (750 m 750 m), and (500 m 750 m). There are 25 sensor nodes which obey random Poisson distribution in the vicinity of each point. LOA_DH is executed with simulation parameters in Table1 to obtain the movement path of sink node. As shown in Figure 12, the movement path of sink node concentrates in node intensively distributed area, and sojourn times of part grid centers are relatively longer.Figure 12
Movement path of sink node in node distribution scene 3.As shown in Figure13, network lifetime of LOA_DH is much longer than other algorithms, because LOA_DH can find optimal movement path of sink node and sojourn times at sojourn grid centers. LOA_DH has less node communication energy consumption because of intensively distributed sensor nodes. Therefore, with the same number of sensor nodes, network lifetime of LOA_DH in node distribution scene 3 is longer than that in scene 1 and scene 2. The simulation results of average node energy consumption, node coverage ratio, and average amount of node discarded data of LOA_DH in node distribution scene 3 are almost the same like in scene 1. Therefore, related content is not elaborated repeatedly and can refer to Section 4.2.1.Figure 13
Comparation of network lifetime in node distribution scene 3.In conclusion, in the three node distribution scenes, according to location and other information, LOA_DH can obtain optimal movement path of sink node and sojourn times. Compared to MCP_RAND, MCP_GMRE, and EASR algorithms, LOA_DH fully covers all sensor nodes and has the longest network lifetime and least average amount of node discarded data and average node energy consumption.


## 5. Conclusion

According to limited data transmission delay and hops in mWSNs, algorithm assumption is proposed, and data formulae are used to represent constraints and optimization model. Next, MCP routing algorithm is selected to calculate node energy consumption when sink node stays at sojourn grid centers. Improved genetic algorithm is used to modify individual to meet all constraints and iteratively calculate to obtain optimal solution. Thirdly, implement steps of LOA_DH are proposed. Finally, simulation parameters of algorithms are given. Performances among LOA_DH, MCP_RAND, MCP_GMRE, and EASR are compared and analyzed.Simulation results show that, in the monitoring area, when sensor nodes obey random uniform distribution in whole area, random uniform distribution in part area, and random Poisson distribution in part area, according to node location and other information, LOA_DH can find an optimal movement path of sink node and sojourn times. Therefore, network lifetime is improved. Sensor nodes are fully covered, and average node energy consumption and average amount of node discarded data are reduced. But using improved genetic algorithm, LOA_DH has high time complexity. Therefore, next stage is to find a distributed solving algorithm of optimization model, which can reduce time complexity of the algorithm.



---

*Source: 7507625-2017-02-19.xml*