Abstract
In order to overcome the energy hole problem in some wireless sensor networks (WSNs), lifetime optimization algorithm with mobile sink nodes for wireless sensor networks (LOA_MSN) is proposed. In LOA_MSN, hybrid positioning algorithm of satellite positioning and RSSI positioning is proposed to save energy. Based on location information, movement path constraints, flow constraint, energy consumption constraint, link transmission constraint, and other constraints are analyzed. Network optimization model is established and decomposed into movement path selection model and lifetime optimization model with known grid movement paths. Finally, the two models are solved by distributed method. Sink nodes gather data of sensor nodes along the calculated paths. Sensor nodes select father nodes and transmit data to corresponding sink node according to local information. Simulation results show that LOA_MSN makes full use of node energy to prolong network lifetime. LOA_MSN with multiple sink nodes also reduces node energy consumption and data gathering latency. Under certain conditions, it outperforms MCP, subgradient algorithm, EASR, and GRAND.
1. Introduction
In most cases all sensor nodes of WSNs are battery-powered and located in the unattended or harsh environment. Battery replacement is difficult or even impossible for battery replacement. Once node's energy exhausts, the node is disabled. It will affect the network operation and even split the network to shorten network lifetime [1, 2]. Therefore, in WSNs, network lifetime is the important indicator of network performance. The algorithms of WSNs should save the energy and maximize the network lifetime.
Some scholars research on lifetime optimization algorithm with fixed nodes for WSNs and have got some accomplishments. For example, [3] proposes an ant colony optimization approach for maximizing the lifetime of heterogeneous wireless sensor networks. In the algorithm, cover constraint, collection constraint, and routing constraint are considered. The objective function is established and ant colony optimization is used to obtain the lifetime optimal scheme. Reference [4] constructs optimal clustering architecture and designs energy-aware cluster-head rotation and routing protocol to maximize network lifetime. Reference [5] proposes two methods to optimize the lifetime of chain-based protocols using integer linear programming (ILP) formulations. In those algorithms, it is inevitably to cause unbalanced distribution of node energy consumption and energy hole problem. The problem can be overcome by sink nodes’ movement. All nodes have the opportunity to transmit data near sink nodes and have the same lifetime.
References [6–9] research on the network lifetime maximization problem, establish the network lifetime optimization models with mobile sink node, use optimization algorithms to solve the models, and obtain optimal scheme. Reference [10] theoretically discusses the relationship between network lifetime and maximum throughout in the large scale WSNs. However, all references [6–10] assume that the movement path of sink node is already known and do not consider how to determine the anchors or movement path of sink node. Reference [11] searches guide agent nodes and intermediate guide nodes, analyzes the TSP (traveling salesman problem), determines movement path with node cooperation, and proposes data gathering algorithm which optimizes data transmission latency and energy. However, the algorithm does not consider network lifetime. Reference [12] divides network into several grids, and proposes a grid-based clustering algorithm. Reference [13] proposes range constrained clustering (RCC). RCC divides nodes into several clusters. Sink node stays at the cluster centers to gather data. The Concorde TSP solver is used to calculate the shortest movement path of sink node through some cluster centers. References [11–13] determine the locations of mobile sink node. However, they do not consider the data gathering when sink node is moving. Whether the algorithms can obtain optimal solution still needs theoretical analysis. Reference [14] proposes energy-aware sink relocation (EASR) algorithm for mobile sinks. EASR uses maximum capacity path (MCP) protocol for routing, starts to move when two relocation conditions are met, and finds the next moving location which has the greatest weight value. But compared with network lifetime, the relocation conditions are met after a long time. The protocol is not good at prolonging network lifetime.
Therefore, lifetime optimization algorithm with mobile sink nodes for wireless sensor networks based on location information (LOA_MSN) is proposed. In LOA_MSN, energy-saving positioning algorithm of nodes is proposed and the monitoring area is divided into several grids of the same size. Sink node can move into each grid center to gather data. The movement path constraints, flow constraint, energy consumption constraint, link transmission constraint, and other constraints are analyzed. The network optimization model is established. Then, the network optimization model is decomposed into movement path selection model and network lifetime optimization model with known movement paths. The movement path selection model is solved in sink nodes by distributed clustering method and graph theory method. Mobile gathering and static gathering are considered and the network lifetime optimization model is approximately solved by distributed graph theory method. Compared with MCP, subgradient algorithm, EASR and GRAND (for grid random scheme), LOA_MSN uses the node energy as much as possible to prolong the network lifetime.
The remaining parts of paper are organized as follows. In Section 2, the energy-saving positioning algorithm of nodes is proposed. In Section 3, the algorithm assumption and lifetime optimization model with mobile sink nodes are proposed. In Section 4, the distributed solution of model is proposed. In Section 5, the simulation results are presented. In Section 6, the paper is concluded.
2. Energy-Saving Positioning Algorithm
At present, mostly outdoor positioning uses satellite positioning module such as GPS or Beidou. But the work current of those modules is up to tens of milliamp. In the energy limited WSNs, they have great energy consumption. RSSI (received signal strength indication) positioning algorithm obtains the signal energy through link signal and has low energy consumption. Therefore, the hybrid positioning algorithm of satellite positioning and RSSI positioning is proposed to save energy. Assume that each node is equipped with Beidou or GPS positioning module. After network starts, sensor nodes and sink nodes periodically start the positioning module to obtain their longitude and latitude values. Due to the locations of sensor nodes being fixed, the time interval of sensor nodes is much longer than that of sink nodes. When there are more than 3 sensor nodes in the 1-hop communication range of sink node, the sink node shuts down the satellite positioning module for some time and uses RSSI positioning algorithm based on latest satellite positioning coordinates. The implementation of hybrid positioning algorithm is as follows.
Sink nodes transmit positioning query packets to nearby sensor nodes. Sensor nodes in the 1-hop communication range of sink nodes transmit their location information which is obtained by satellite positioning module, node address, and other information back to the corresponding sink node. Sink nodes receive a packet and obtain the RSSI value of link signal. If there are historical RSSI data of the same link, Kalman filtering is used to reduce errors and improve positioning accuracy [15]. Based on processed RSSI values, link distance
Sink node records the elapsed time after the satellite positioning module is shut down. According to the satellite positioning coordinates
By the energy-saving positioning algorithm, nodes calculate their x- and y-coordinates with periodic start of satellite positioning module. It reduces the energy consumption of nodes.
3. Establishment of Optimization Model
In the paper, only 2D (two-dimensional) WSNs are considered and all nodes know their own location coordinates. The algorithm assumption is as follows. The locations of sensor nodes are fixed. Sink nodes can move to any grid center based on location information. All sensor nodes continuously transmit their sensing data to sink nodes. All sensor nodes have the same performance (such as sensing rate, maximum communication radius, initial energy, and energy consumption parameter). Energy of all nodes is limited, but energy of sink nodes can be renewable.
3.1. Constraints
3.1.1. Movement Path Constraints
Many references consider that sink node stays at one node location, gathers data, and takes its responsibilities to sense. It basically limits the mobile location selection of sink node and does not consider other locations where sensor node never distributes. Therefore, their algorithms obtain local optimal solutions. As is shown in Table 1, monitoring area is divided into several grids of the same size and each grid is numbered. The sink node can stay at each grid center to gather data. The method enlarges the selection range of sojourn locations for sink nodes.
Grids in the monitoring area.
The mth sink node starts at initial location and finally moves back to the initial location. The initial location constraints of mth sink node are as follows:
Because each sink node cyclically moves along the path, the sum of state indicators which represent from
To avoid two mutually movable grids and eliminate the subtours, the state indicator limitation constraint is
3.1.2. Flow Constraint
The transmission data are composed of the sensing data and received data from neighbor nodes. The flow constraint is
3.1.3. Energy Consumption Constraint
During the gathering time
3.1.4. Link Transmission Constraint
Because link bandwidth resource is limited, the total amount of link transmission data is limited. Then the link transmission constraint is
3.2. Network Optimization Model
When network starts, sink node leaves from initial location to next grid center and finally moves back to initial location. The data gatherings of sink node are mobile gathering and static gathering. The mobile gathering of sink node is that, during its movement, sink node dynamically gathers data. The static gathering of sink node is that it stays at some grid centers for some sojourn time and statically gathers data.
The total time of mth sink node movement is
If there is one sink node in the network, formula (10) represents the network lifetime
4. Solution Method
Network optimization model (11a) considers movement path selection of sink node and data routing. The model has too many parameters and its solution is complicated. In the model, movement path constraints mainly limit
4.1. Movement Path Selection Model
The movement path constraints are too loose for path selection. It does not consider the node density and node energy. It needs a lot of time to calculate the solution of the model. Therefore, the path selection of sink nodes needs to consider the node location information and energy and determines some anchors for sink nodes. The anchors are some locations around where node density is high and residual energy of nodes is large. The clustering methods can be used to determine the anchors at which sink nodes stay to gather data of sensor nodes. In the paper, modified subtractive clustering algorithm is used to calculate the anchors [16]. The number and the set of anchors which mth sink node needs to stay at are obtained. The implementation steps of mth sink node are as follows.
Step 1.
The number of anchors is
Step 2.
The grid of maximum potential value is found. Its grid center as anchor point is selected.
Step 3.
The grid center is aggregation point. Potential values of the grids are subtracted by formula
Step 4.
If the following inequality holds, end the algorithm; otherwise
Network environment is complicated. The mobile gathering efficiency of sink nodes is far lower than static gathering efficiency. Therefore the movement time of sink nodes is as short as possible. Movement distance of mth sink node in one data gathering period is
Model (15a) shows that the movement path selection of sink nodes is essentially TSP problem. It can be solved by genetic method, graph theory, and other methods. Because the number of anchors is not large, nearest neighbor interpolation algorithm is used to find the approximate solution of shortest path [17]. The implementation steps of mth sink node are as follows.
Step 1.
The location of sink node is initialized and
Step 2.
In
Step 3.
The anchor
Step 4.
If
Step 5.
According to the approximate solution, namely the obtained close path, sink node moves along the directed line segment from one anchor to its next anchor periodically. If sink node stays at the end anchor in the path, it moves back to initial anchor. Then all possible grids which sink node passes through are founded in turn. The selected anchors and grid centers constitute the solution of movement path selection model (15a). The grid centers that the sink node stays at, namely, the grid movement paths of sink nodes, are obtained.
4.2. Lifetime Optimization Model
When the grid movement paths of sink nodes are determined, according to the definition of network lifetime, network lifetime optimization model can be transformed to the models of single sink node. Their target is to obtain the lifetime
s.t.: Constraints (11b)–(11f).
The mobile gathering process of sink nodes is considered as sink nodes stay at the grid centers which are in their grid movement paths for some sojourn time to gather data. Therefore, the mobile gathering problem is converted into discrete multiple static gathering problems whose sojourn time is
Therefore, the model is simplified. The lifetime optimization problem is transformed to several lifetime optimization models in which sink node stays at different grid centers. When mth sink node stays at location
In the paper, in order to reduce the time complexity of the algorithm, the model (17a) is approximately solved by the distributed asynchronous Bellman-Ford algorithm. Namely, when sink node starts to gather data, it transmits data query packets from time to time. Then, the implementation steps of sensor node i are as follows.
Step 1.
If sensor node i receives the routing information packet of its sink node, the address and shortest path weight
Step 2.
If the shortest path weight
Step 3.
The link weight
Step 4.
According to the information table of neighbor nodes, the father node is selected through the following formula:
Step 5.
Sensor node i transmits the date through its father node to sink node.
In the data gathering process of sink node, if sensor node does not receive the latest routing information packet or feedback packet of neighbor node, it considers that the link is failure and deletes the information of the neighbor node in the information table.
4.3. Distributed Realization
LOA_MSN is a distributed algorithm. Sensor nodes and sink nodes separately implement their own program.
As shown in Figure 1, when network starts, the specific steps of sink nodes are as follows.

The work flowchart of sink nodes.
Step 1.
Each sink node broadcasts information query packets to sensor nodes in flooding way. The packets include its location information and node address. It gets information of coverage sensor nodes and establishes the information table.
Step 2.
When the satellite positioning module is shut down, the sink node broadcasts positioning query packets and receives and processes RSSI values. Then it calculates the x- and y-coordinates of its own through formulae (1)–(3).
Step 3.
Sink node determines some anchors based on node location information and energy with clustering method, solves the TSP problem to find the solution of optimal movement paths, and obtains the grid movement scheme. Sink node moves along the grid movement path; namely, it repeatedly stays at one anchor for some sojourn time or one passing grid center for
As shown in Figure 2, when network starts, each sensor node is in listening state. If sensor node receives the information query packets of sink nodes, it analyzes the content of the packets. If it has not received the packet before, it adds the information (location coordinates, node address, etc.) of packet to the information table of sink nodes and forwards the packet, else it discards the packet. According to the information table of sink nodes, each sensor node selects the nearest sink node as its aggregation node. Then it transmits the information of its own back to its aggregation node in the same path. If the sensor node receives the positioning query packet, it transmits its node address, coordinates, and other information back to the corresponding sink node. If the sensor node receives the routing information packet, it calculates the link weight and shortest path weight, selects the father node, transmits sensing data to corresponding sink node, and consumes energy. If the routing information of sensor node changes or it is already after a period of time, it broadcasts the routing information packet to inform other nodes. If the sensor node needs to transmit the data, it transmits the data to sink node through father node.

The work flowchart of sensor nodes.
5. Simulation Realization and Analysis
5.1. Simulation Parameters
In the simulation, only energy consumption of data wireless communication is considered. Number of grids is
One data gathering cycle (DGC) is the working time (does not include the sleep time) that all sensor nodes successfully transmit 1 Mbit data to sink node. The network lifetime is defined as the average numbers of DGC in which sink nodes complete in the time when network starts to run until one node runs out of energy.
Average node energy consumption = total energy consumption of all sensor nodes/(number of senor nodes * network lifetime).
Average node residual energy = total residual energy of all sensor nodes/number of senor nodes.
Data gathering latency = total number of hops for data transmission of sensor nodes/(number of senor nodes * network lifetime).
5.2. Simulation Result Analysis
5.2.1. WSNs of Uniformly Distributed Nodes
Firstly, the movement paths of single sink node and two sink nodes are analyzed when sensor nodes are uniformly distributed. As is shown in Figure 3, the locations of 100 sensor nodes (open circles) are generated randomly and uniformly. The 1000 m * 1000 m simulation area is divided into 900 number of grids. Sink node gathers the location information of sensor nodes and uses modified subtractive clustering algorithm to obtain six anchors (five-pointed stars). Sink node statically and dynamically gathers data of sensor nodes along the grid movement path. As is shown in Figure 4, there are two clusters. Each cluster has three anchors. Each sink node statically and dynamically gathers data along its grid movement path.

Grid movement path of single sink node in the WSNs of uniformly distributed nodes.

Grid movement paths of two sink nodes in the WSNs of uniformly distributed nodes.
In summary, LOA_MSM finds the paths which are approximate solution of movement path selection model (15a).
Secondly, in order to verify the effectiveness, MCP, subgradient algorithm, EASR, GRAND, LOA_MSN with single sink node (SSN), and two sink nodes (TSN) are compared. The location coordinates of 80, 100, 120, 140, 160, 180, and 200 sensor nodes are uniformly generated in the area. For each fixed number of sensor nodes, 10 different network topologies are generated. The network lifetime, average node energy consumption, average node residual energy, and data gathering latency are calculated. The mean values are the simulation result to evaluate the algorithm's performance.
Figure 5 compares the network lifetime when sensor nodes distribute uniformly. LOA_MSN (TSN) uses two sink nodes to gather data. Each sink node only moves to gather data of some sensor nodes. And LOA_MSN comprehensively uses modified subtractive clustering algorithm to obtain the anchors and uses distributed synchronous Bellman-Ford algorithm to prolong network lifetime and obtain data transmission scheme. EASR and GRAND are not suitable for the WSNs of uniformly distributed nodes, but they consider mobile sink nodes. MCP and subgradient algorithm whose sink node is fixed have energy hole problem. Therefore, as is shown in Figure 5, network lifetime of LOA_MSN (TSN) is longest and network lifetime of LOA_MSN (SSN) is second. Network lifetime of EASR and GRAND is lower than that of LOA_MSN but longer than that of MCP and subgradient algorithms. Network lifetime of MCP is shortest.

Network lifetime comparison in the WSNs of uniformly distributed nodes.
Figure 6 compares the average node energy consumption. LOA_MSN (TSN) divides sensor nodes into two clusters according to location information. Each sink node only moves to some grid centers around which sensor nodes densely distribute. It reduces communication distance and the node energy consumption and has the lowest average node energy consumption. LOA_MSN (SSN) only has one sink node. In order to prolong network lifetime, sink node moves to some anchors distributed around the simulation area. It increases communication distances of some nodes and the energy consumption of relay nodes. Then LOA_MSN (SSN) has a little larger average node energy consumption. Therefore, as is shown in Figure 6, LOA_MSN (TSN) has the lowest average node energy consumption. subgradient algorithm has the largest. Average node energy consumption in MCP, EASR, GRAND, and LOA_MSN (SSN) has a little difference.

Average node energy consumption comparison.
Figure 7 compares average node residual energy when one sensor node runs out of energy. In LOA_MSN, all sensor nodes have the opportunity to transmit data near and far from the corresponding sink node. It makes full use of node energy. But, in other algorithms, only hub sensor nodes consume a lot of energy. Other sensor nodes have much residual energy. Therefore, as shown in Figure 7, LOA_MSN (TSN) and LOA_MSN (SSN) have the lower average node residual energy than other algorithms. MCP has the largest average node residual energy.

Average node residual energy comparison.
Subgradient algorithm uses the optimization algorithm to solve the model (17a) and obtain data routing scheme. It cannot calculate the number of hops of each sensor node. Therefore, Figure 8 compares the data gathering latency of MCP, EASR, GRAND, LOA_MSN (SSN), and LOA_MSN (TSN). LOA_MSN (TSN) reduces the communication distance with two mobile sink nodes. LOA_MSN (SSN) stays at some anchors surrounding the simulation area and increases the number of hops of sensor nodes which are far from sink node. In MCP, fixed sink node gathers data in the center of simulation area. In EASR and GRAND, sink node moves around the center of simulation area and uses MCP to gather data when sink node stays at one grid center. Therefore, LOA_MSN (TSN) has the lowest data gathering latency. Data gathering latency in MCP, EASR, and GRAND has little difference. LOA_MSN (SSN) has the largest data gathering latency.

Data gathering latency comparison.
In summary, in the WSNs of uniformly distributed nodes, and LOA_MSN makes full use of node energy to prolong network lifetime. When LOA_MSN uses multiple sink nodes, it also reduces node energy consumption and data gathering latency.
5.2.2. WSNs of Nonuniformly Distributed Nodes
In the simulation, 3–5 numbers of points around the center of simulation area are generated as the mean parameters of Poisson distribution. The locations of 100 sensor nodes are Poisson randomly generated around the mean parameters. As is shown in Figure 9, in the 1000 m * 1000 m simulation area there are four mean points. 100 sensor nodes Poisson distribute around the four points. Namely, the nodes densely distribute around the four points. They sparsely distribute, even no node distributes in the regions which are far away from the four points. According to the node location information, LOA_MSN finds the centers of dense subregions, and obtains the five anchors (five-pointed stars). When sink nodes stay at those anchors, all sensor nodes have the opportunity to transmit data near their corresponding sink node.

Grid movement paths of two sink nodes when sensor nodes distribute nonuniformly.
Figure 10 compares the network lifetime when sensor nodes distribute nonuniformly. In the network of nonuniform node distribution, sensor nodes concentrate in several subregions. LOA_MSN successfully finds the center of each dense subregion and uses distributed synchronous Bellman-Ford algorithm to obtain the data transmission scheme which prolongs network lifetime. Network lifetime of other algorithms is affected by the network topology. The hub nodes in dense subregions forward a lot of data and are disable quickly. Therefore, as shown in Figure 10, LOA_MSN (TSN) has the longest network lifetime. LOA_MSN (SSN) has the second. Network lifetime of LOA_MSN has not been affected by the node locations and even increases compared with the network lifetime in the WSNs of uniformly distributed nodes. Other algorithms have low network lifetime.

Network lifetime comparison in the WSNs of nonuniformly distributed nodes.
In the WSNs of nonuniformly distributed nodes, the simulation results of average node energy consumption, average residual energy, and data gathering latency are similar to the simulation results in the WSNs of uniformly distributed nodes. Therefore, the results are not elaborated.
In summary, in the WSNs of nonuniformly distributed nodes, LOA_MSN makes full use of node energy to prolong network lifetime.
6. Conclusion
In the paper, lifetime optimization algorithm with mobile sink nodes for wireless sensor networks based on location information (LOA_MSN) is proposed. In the proposed scheme, satellite positioning and RSSI positioning algorithms are used to obtain the location information of all nodes. Then, the constraints are analyzed and movement path selection model and lifetime optimization model with known movement paths are established. Sink nodes gather the location information of sensor nodes and use the clustering method and graph theory method to find the movement paths. They stay at the grid centers which are in the movement path for some time, and gather data of sensor nodes with distributed method. Finally, the performances of MCP, subgradient algorithm, EASR, GRAND, and LOA_MSN are compared. It has been shown through various experiments that sink nodes find the appropriate paths. LOA_MSN makes full use of node energy to prolong network lifetime. When LOA_MSN uses multiple sink nodes, it also reduces node energy consumption and data gathering latency.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments
This research was supported by Zhejiang Provincial Natural Science Foundation of China under Grants LY14F030006, Y15F030007, and LY13F010013 and Zhejiang Provincial Public Welfare Technology Application and Research Project of China under Grant 2014C33108.
