Abstract
A wireless sensor network (WSN) consists of hundreds or thousands of sensor nodes organized in an ad hoc manner to achieve a predefined goal. Although WSNs have limitations in terms of memory and processors, the main constraint that makes WSNs different from traditional networks is the battery problem which limits the lifetime of a network. Different approaches are proposed in the literature for improving the network lifetime, including data aggregation, energy efficient routing schemes, and MAC protocols. Sink node mobility is also an effective approach for improving the network lifetime. In this paper, we investigate controlled sink node mobility and present a set of algorithms for deciding where and when to move a sink node to improve network lifetime. Moreover, we give a load-balanced topology construction algorithm as another component of our solution. We did extensive simulation experiments to evaluate the performance of the components of our mobility scheme and to compare our solution with static case and random movement strategy. The results show that our algorithms are effective in improving network lifetime and provide significantly better lifetime compared to static sink case and random movement strategy.
1. Introduction
The emergence of tiny sensor nodes as a result of advances in microelectromechanical systems has enabled wireless sensor networks (WSNs). A typical sensor node has generally an irreplaceable limited-capacity battery and therefore consuming the least amount of energy is the most critical criterion when designing any sensor network-related protocol. Since energy is the most precious resource, and in most of the applications replacing the batteries is very hard or impractical efficiently utilizing both node's and the total energy of the network is very important for a given task.
Several approaches are used in literature to minimize energy consumption in wireless sensor networks and improve network lifetime. Some of these approaches are adjusting transmit power, developing energy-efficient MAC or routing protocols, minimizing the number of messages traveling in the network, and putting some sensor nodes into sleep mode and using only a necessary set of nodes for sensing and communication.
Making the sink node mobile is another approach for improving the lifetime of WSNs. Sink node collects the incoming data from sensor nodes and when data aggregation is not used, each sensor node not only transmits its own packet to the sink, but also relays the packets of its children. Since most of the time a tree topology rooted at the sink is used to collect data, all packets are delivered to the sink node via its first-hop neighbors. As seen in Figure 1, this situation causes these nodes to deplete their energy faster than the other nodes in the network. Therefore, the main motivation behind sink mobility is to change these neighboring nodes periodically by moving the sink to different locations. A node that was a neighbor of the sink in a round and therefore had a large packet load should have a smaller packet load in the next round. This way the neighbor role is delegated fairly among all sensor nodes. In this way, on the average all nodes would have a nearly equal cumulative packet load and remaining energy levels at an arbitrary time.

Energy map of a static sink after the first node death.
A sink mobility scheme has to address the issues of when and where to move the sink mode so that energy is consumed efficiently and in a balanced manner. Sink will stay at a point for a while and collects the data. Then it will move to a new location and will continue collecting data at that location. The time duration during which the sink stays at a fixed location is called sojourn time (or round duration) in this paper. The location where a sink stays to collect data for while is also called anchor point, migration point, or sink site. A given mobility scheme needs to also specify, which network parameters should be used to regulate this operation.
In this paper, we propose a set of algorithms for different aspects of the sink mobility problem in wireless sensor networks. We propose two sink-site determination algorithms. Additionally, we present an energy-efficient topology construction algorithm for improving the network lifetime. These issues have not been addressed together in most of the previous studies. Our simulation results show that the proposed algorithms perform better than other comparable methods and improve the network lifetime significantly.
The rest of the paper is organized as follows. In Section 2, related work about the sink mobility problem in wireless sensor networks is summarized and discussed. Section 3 describes our approach and algorithms. Results of our simulation experiments are presented in Section 4. Finally, Section 5 concludes the paper and gives future research directions.
2. Related Work
Since energy is the most precious resource in a sensor network, it should be carefully taken into consideration in any algorithm or approach related to sensor network design and operation. The studies targeting energy efficiency and network lifetime improvement in WSNs generally attack the problem in physical layer (power control [1, 2]), in data link layer (MAC protocols [3, 4]), in network layer (routing [5, 6]), or in application layer (topology control [7, 8], data gathering and aggregation [9–11], clustering [12, 13], and sleep scheduling [14]). Most of the papers deal with one of the aspects that lie only in one layer, whereas some other works [15, 16] use cross-layer design where different issues related to more than one layer are taken into consideration in order to maximize network lifetime.
Sink mobility approaches can be classified into two categories according to the moving strategy used: uncontrolled (random) and controlled [17]. In uncontrolled mobility, a third tier is used in the network, in which mobile agents (MULEs: mobile ubiquitous LAN extensions) are deployed between access points (base stations) and sensor nodes in order to collect data from sensor nodes when they get in contact, buffer the data, and finally transmit the data to the sink [18]. It is called uncontrolled, since movement is random and MULEs (for instance vehicles) move according to their needs and only exchange data if they encounter any node as a result of their movement [18].
The main motivation behind use of MULEs is to reduce transmission energy cost by using single-hop communication between a MULE and a sensor node, instead of the more expensive multihop communication traveling a long distance between the sink and a sensor node. Since communication is the most energy consuming part in network operations, this approach effectively increases network lifetime. However, since the arriving time of a MULE near a sensor node is not known a priori, two important problems emerge: large buffer size needed at nodes and large data latency. There is a trade-off between latency and energy consumption. If the application is delay tolerant, uncontrolled sink mobility becomes a good alternative. Packet losses need also to be considered if nodes do not have large enough buffers that can store the packets generated between two consecutive visits of a MULE.
In controlled mobility, sink is moved depending on network conditions (like current energy map, node density in the regions, etc.). Currently, there are three main approaches used in controlled mobility [19]. In first and mostly used one, the sink moves among the nodes and collects data without any additional entity (which is also the case in this work). In the second approach, mobile relays are used as forwarding agents, like MULEs but in a controlled manner, for communication between sensor nodes and the base station [20]. In the third approach, sensor nodes themselves are mobile [21]. Generally, sink node or relay nodes are assumed to have abundant energy resources so they do not deplete their energy during the network lifetime. Therefore it is expected that mobility of these types of nodes does not adversely affect the network lifetime. However, for sensor nodes this is not the case. As it was mentioned before, sensor nodes have very limited energy resources, which should not be wasted for mobility, topology reconstruction, and so forth, unless it is certainly necessary. That is why the first two approaches appear to be more promising for energy efficiency and longer network lifetime [19].
Choosing the appropriate scheme completely depends on the application the WSN will be used for. If we can tolerate data latency and some possible packet losses and/or we have relatively small deployment area and MULEs travel quite fast in that area, then it will be important to use data MULEs for communication in order to effectively reduce the energy consumption. However, if we have a critical application (which is our assumption in this work) that is intolerant to latency or packet losses, like earthquakes, fire detection, or battlefield surveillance, then controlled mobility (via either relays or sink) node becomes crucial. In this work, we focus on and propose algorithms for controlled sink mobility scenario.
Sink mobility differs from other approaches to save energy in the way it considers the resulting energy consumption behavior in the network. Most strategies other than sink mobility aim to minimize either average, or maximum energy consumption by using an appropriate technique; however, neither average nor maximum energy consumption based strategies consider current energy status of a node [23]. That is why they cannot avoid the nodes whose batteries are close to depletion. Unlike these approaches, in (controlled) sink mobility, current remaining energy values of sensor nodes are taken into consideration, and this helps to extend the lifetime of nodes as much as possible. This brings a serious advantage in the case where network lifetime is defined as the time passed until the first node depletes all its energy, which is commonly used definition in the literature.
Various studies deal with issues regarding sink mobility. Mobility and routing are considered together in [24]. The authors present a framework for investigating sink mobility and routing problem together in order to maximize network lifetime (MNL). They model MNL problem as a mixed integer linear programming formulation and prove its NP hardness involving multiple mobile sinks. Single sink and multiple sinks cases are investigated separately. An efficient primal-dual algorithm is given for the single sink case and it is approximated to multiple sinks case. Sink locations are constrained (to finite locations) here, as well. Numerical experiments are performed to measure the primal-dual algorithm's performance in terms of network lifetime and pause time distribution. Achievable lifetime between mobile sink and static sink (at its optimal position) is compared in line, ring, and grid networks for varying number of nodes. The difference between two approaches increases in grid networks and becomes 555% when the number of nodes is 289.
A work more similar to ours is presented in [25]. The authors present two complementary algorithms for solving the sink mobility and routing problems together. One is the scheduling algorithm, which determines the duration the sink node can stay at each candidate sink site, and the other is the routing algorithm, which finds the most energy-efficient paths for each packet from a sensor node to the sink. A linear programming (LP) formulation is given that maximizes the network lifetime, the sum of sink sojourn times at all possible locations, subject to some constraints, and then compares mobile and static sink approaches with different routing schemes. In the simulations, there are two scenarios, including just four (centers of four subsquares) and five (corners and center) different sink sites, respectively. Experiments are done and compared between static and mobile sink approaches via adding the routing parameter; however, there is no comparison between the proposed mobility model and any other mobile strategy in the paper.
In [26], authors present an LP formulation to maximize the overall network lifetime (the sum of sojourn times of the sink) instead of minimizing the energy consumptions at the sensors. It is assumed that nodes are deployed to a
A detailed work about controlled sink mobility is presented in [19]. The authors present a centralized mixed integer linear programming (MILP) model that determines sojourn times and the order of visits to sink sites. Moreover, a fully distributed and localized heuristic (GMRE) is developed as a solution to the problem. The deployment area is divided into grids and the corners of these grids are determined as the sink sites. The MILP formulation aims to maximize total sojourn time, as in [25], subject to some constraints. They evaluate the performance of MILP, GMRE, random movement (RM), and static sink approaches with different node deployment strategies and constraints on the sink movements. MILP and GMRE give better results than the others. Moreover, MILP performs between 30% and 50% better than GMRE.
Basagni et al. investigate the lifetime maximization problem for multiple mobile sinks case as well [27]. They first present a mixed integer linear programming (MILP) model to give a provable upper bound on the lifetime of the WSNs. The output of LP is used to provide a polynomial time centralized heuristic. Lastly, a distributed heuristic is proposed for coordinating the motion of the multiple sinks. The simulation results show that proposed schemes improve lifetime significantly compared to the cases of static sink and random sink mobility.
A distributed algorithm, mostly using local information, for delay-tolerant wireless sensor networks is given in [28]. The authors investigate the problem of maximizing the number of tours (T), such that each tour takes D (maximum delay tolerance) time units (lifetime becomes
3. Proposed Algorithms
3.1. Sink-Site Determination
The main motivation behind sink-site determination (SSD) algorithms is to decrease candidate migration points in the deployment area to minimize the time needed to determine which sink site to visit next after the sojourn time at the current sink site expires. In some scenarios, sensor nodes are deployed to areas where some points may be inaccessible or very difficult to access, and thus the sink may not be able to reach them. These reasons force us to choose sink sites before the network starts operating.
In the literature, such as in [19, 25], the deployment area is divided into grids and sink sites are determined as the corners of those grids without any computation. However, in nonregular deployment, it would be better to determine the sites by considering the deployment characteristics and neighborhood information of nodes. We propose two sink-site determination algorithms in which network structure and conditions (deployment, neighborhood relationships, etc.) are taken into consideration.
3.1.1. Neighborhood-Based Sink-Site Determination Algorithm
Sometimes it can be difficult to know the exact boundaries of the deployment area and the coordinates of each sensor node in the region. In such cases, neighborhood information of the nodes can be used for determining candidate sink positions. If we are given n nodes and their neighborhood information, then our aim is to choose q nodes from the list such that the union of the neighbors of these selected nodes covers all the nodes in the area. This process is quite similar to finding a dominating set for a graph
In Algorithm 1, we give a heuristic algorithm for dealing with the dominating set problem in this context. Here, first all neighbors broadcast a message in order to collect their neighborhood information. Then, this information is sent to the sink to determine possible sites. The sink node sorts the nodes in descending order with respect to their number of neighbors. Then the algorithm takes the coordinate of the node (a contributed node) with the most number of neighbors in the beginning and put those neighbors to the current neighbor list. After this step, the algorithm maintains the list of covered and uncovered nodes at each step. After first contributed node is chosen, its neighbors are saved in
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26)
3.1.2. Coordinate-Based Sink-Site Determination Algorithm
It is possible to group nodes using their coordinate values (if they are known) on the sink. In the coordinate-based sink-site determination algorithm, we divide the deployment area into squares such that each one's length is equal to the transmission range. That enables us to group (cluster) nodes that can be a sink's neighbors in any round and compare their energy levels and decide which subarea to move to in the next round. The number of areas dynamically changes according to the transmission range values. The distance between any two neighbor sink sites is R, where R is the maximum transmission range. Each sink site is ideally placed at the center of a subsquare area. If area center is not accessible (because of an obstacle for instance), this can only cause some nodes not to be one-hop neighbor of the sink but to be two hops away from it.
Number of points in each subsquare should be known in order to calculate the threshold value (
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18)
The detailed algorithm is given in Algorithm 2. After determining the centers of each subsquare, range tree is built. Number of points in each subsquare is determined querying the tree for its coordinates in the plane. Sparse areas are eliminated if their density is below the threshold, where the threshold is determined by dividing the number of nodes by the number of subsquares. If there are many sparse areas this will decrease the number of candidate migration points. However, this situation does not cause any disconnectivity, since those areas will be connected to the sink via multihop topology.
Since each node's coordinate is known by the sink node, the area does not have to be regularly divided into squares in order to use this algorithm. The sink node can choose the node that has the minimum (x, y) pair and assume that it is located on the lower-left corner of the imaginary subsquare. Then it chooses the center of this subsquare as the candidate migration point and continues this operation until all the nodes in the area are covered. Since the algorithm iterates two times over the number of subsquares (s), its complexity is
A dynamic sink-site selection algorithm (either neighborhood- or coordinate-based) enables us to eliminate areas on inaccessible terrains.
3.2. Sojourn Time and Movement Criterion
After candidate sink sites are determined, the sink node moves to the densest point of the area (first migration point) and the routing topology (i.e., the tree) is constructed (either via simple broadcasting or an intelligent topology construction mechanism as in Algorithm 4). The sink determines the remaining energy values of its neighbors to learn the minimum energy levels of its neighbors before packets arrive. Since energy levels are piggybacked in each packet, the sink node can compare the current minimum energy value and the initial one. If the difference between them is one unit or more, then the sink node initiates the process of determining the location to move in the next round. Sojourn time of the sink node expires when energy change of any node becomes greater than
Such a dynamic approach is more advantageous than a static case where a fixed number of rounds are used. For instance, a sink can immediately move to another site if a sink neighbor has a tremendous packet load and rapidly consumes its energy. However, a fixed-round approach will wait until the required number of rounds is completed, which may cause a node to die.
If the sojourn time expires (either exceeds
The motivation behind this approach is the following: if we use just the max-min approach, then we may get stuck to a single local maximum and unable to focus on the general picture. In other words, when we are only interested in the energy dimension of the problem, then we can only ping pong among a few sink sites that have similar packet load patterns (if a deterministic topology construction algorithm is used, as in the next section). However, if we visit different sites, then we can achieve a more uniform packet load distribution. Therefore, the visit added max-min (VMM) approach, which is summarized in Algorithm 3, corresponds to visiting possible sink sites in the order of which the maximum of the minimum energy values in the sites takes precedence. Since the algorithm iterates over the number of migration points (m) and calculates minimum energy among the nodes on each site, its complexity is
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21)
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (30) (31) (32) (33) (34) (35)
3.3. Load-Balanced Topology Construction Algorithm
Repositioning the sink node requires a topology reconstruction cost, which is the main drawback of a mobility scheme. An energy-efficient topology construction algorithm is an important component of such a mobility scheme to reduce this repeating cost. A typical broadcast mechanism is used for constructing a tree-based routing topology as the basic solution.
In this mechanism, after the mobile sink moves to its initial location, it broadcasts messages in order to construct the topology from top to bottom. Each node that receives the message (i.e., the nodes in the transmission range of the sender) rebroadcasts the message after putting their ID as the parent ID in a field of the packet. Each node that receives the broadcast packet saves the parent ID. However, in the approach above, current energy levels of the nodes are not taken into consideration. An algorithm that considers the current energy levels and packet load of the nodes should yield a better network lifetime.
Algorithm 4 gives a balanced tree-based topology construction mechanism. Sink's neighbors are in the first level in the logical tree, the neighbors of its neighbors are in the second level, and so on. For each node in level l, if a neighbor node is in the logical level
If a node has only one parent in its list, that node is designated as the parent node and its packet load is increased by the packet load of the child. If a node has more than one candidate parent, the ratio of
The algorithm consists of two main for loops. The first loop's complexity is
4. Simulation Results
In this section, we present the results of the experiments that evaluate the performance of the algorithms presented in the previous part. We use MATLAB as the simulation environment. Simulations are done to observe the performance of the sink-site determination algorithms, movement criteria, and the topology reconstruction algorithm. Different metrics (network lifetime, packet latency) are examined for each category. We compare our movement scheme not only with the static sink case but also with random movement, where the sink randomly moves between predetermined sites after the sojourn time expires.
4.1. Scenarios and Parameters of the Simulation
Sensor networks generated in the simulation have N static sensor nodes and a single mobile base station (mobile sink). Those nodes are deployed to a region of interest in random and uniform manner. Square areas are used in the simulations, which are generally either
The energy model and the radio characteristics used in the simulations come from [32]. Transmission energy cost is related to the number of bits and the square of distance, whereas receive energy cost is related to the number of bits. In our simulations, this energy model is applied with 50 bytes of data packets and 20 bytes of control packets (for topology construction purposes). The radio dissipates
We investigate the performance of the algorithms in three sections. First, we evaluate the two proposed sink-site selection methods with another three in the literature in terms of network lifetime and data latency. Next, experiments about the performance of different movement criteria (visit added maximum of minimums, random movement, and static sink) are done for given sink sites. Lastly, typical broadcast mechanism and load-balanced topology construction algorithms are compared while other network parameters are fixed.
4.2. Sink-Site Determination Experiments
Sink sites are determined to answer the question of where to move the base station during network operation. Sink-site determination is mostly done by assigning a set of predefined points to the area. Some existing approaches are summarized in Figure 2. Figures 2(a) and 2(b) give examples for the approaches used by Papadimitriou and Georgiadis. [25]. We call these two approaches P1 and P2. In P1, center points of four grids are chosen as sink sites, whereas P2 takes four corner points and the center of the big square (coordinates are given for a

Different sink-site selection approaches.
As can be seen in Figure 3, both neighbor- and coordinate-based approaches perform better than the other four in terms of network lifetime. The CB approach is three times better than P2 for 500 nodes as well. When we look at Figure 4, it can be seen that although P1 has the lowest network lifetime of the five approaches, it has the best data latency (average hop count) because four different sites have been optimally placed in the center of the four grids. Although the NB and CB approaches have a 25% worse data latency than P1 (since latency is not the primary concern when determining the sites), they have up to 60% better network lifetimes and better data latency than the other three (P2, B1, and B2 choose the corner of the grids which increases the average hop count to the sink, which is defined as latency) in all cases as well.

Sink-site determination approaches: network lifetime comparison.

Sink-site determination approaches: data latency comparison.
4.3. Sink Mobility Experiments
In this section, we investigate movement patterns. Before going into detail, we give information about the general structure of the experiments. As the first step of our overall scheme, we choose one of the sink-site determination methods discussed in the previous section, either the coordinate-based determination or neighborhood-based determination algorithm. For the second step, the max-min approach, the visit-added max-min approach, or the random movement approach is chosen as a strategy when moving through migration points. In RM, when the sojourn time expires, the base station moves to the coordinate of a random sink site in the area. The static sink (STS) is used as a fourth approach. As its name implies, in this case, the sink does not move between points in the area but is placed at the center of the area, which is the point that maximizes the network lifetime [33]. In all approaches, if one of the neighbors of the sink loses one or more levels of energy (out of 20 levels, 5% of its whole energy), then the sink decides to move to another point (its sojourn time expires).
In the experiment,

Network lifetime for 400 nodes (SSD = DSH and
Data latency values of the approaches can be seen in Figure 6. As it is seen, static sink has the lowest latency (since it is placed in the center of the area which is optimal and stays there at the end of the network lifetime) and random movement follows it (it tends to move the sink to the center of the area mostly). VMM has lower latency than MM, and this can be seen as an achievement, since latency is decreasing while the network lifetime is increasing at the same time. RM has lower latency than VMM, since VMM uses more intelligent approach and higher network lifetime. However, when time goes to infinity, on the average, RM visits each site for equal number of times and this balances number of hop counts to the sink.

Data latency values for varying number of nodes (area side = 300 m and
4.4. Different Network Topology Construction Mechanisms Experiments
In this section, two different topology construction algorithms are compared in terms of network lifetime and data latency. The first one uses a simple broadcast mechanism and the second uses the load-balanced approach, that is, Algorithm 4. In Figure 7, different numbers of nodes are deployed randomly to an area of

Network lifetime for different topology construction mechanisms (area side = 100 m and
After examining different parts of the scheme, it would be reasonable here to see the overall performance of the proposed algorithms together. In this experiment, we compare two different mobility schemes with different properties. The first one uses the coordinate-based sink-site determination algorithm, VMM, and the balanced tree-based construction algorithm for topology generation. The second method uses the grid-based sink-site determination algorithm, RM, and the simple broadcast mechanism for topology construction. In the experiment, a varying number of nodes are deployed to an area of

Network lifetime performance of the entire scheme (area side = 300 m and
5. Conclusion and Future Work
In this paper we investigate the controlled sink mobility problem to improve lifetime of wireless sensor networks. We deal with different components of the sink mobility problem. First, we propose two efficient sink-site determination algorithms, using neighborhood relationships and coordinates of nodes as inputs. Instead of using predefined time or round values, we also determine sojourn times using a dynamic approach. In order to choose the next site to visit, the sink node uses a visit-added max-min (VMM) approach. Unlike previous works, which used linear programming, there is no scalability problem in our approach. Moreover, a balanced tree topology construction algorithm is proposed instead of using a simple broadcast mechanism. In this algorithm, current energy levels of the nodes are taken into consideration, and packet loads are distributed, from bottom to top, using this information.
We compare the performance of our algorithms with different approaches via simulation experiments. Our sink-site determination algorithms perform better than the other four approaches from the literature. They also have lower data latency than three of the other approaches. Our VMM scheme gives better results than the random movement (RM) approach and the static sink (STS) case. Our energy-efficient topology construction algorithm performs better than the simple broadcasting mechanism in terms of network lifetime (for various node counts and transmission ranges), albeit introducing a very small extra latency overhead.
Although different components of the sink mobility problem are investigated in this study, there are still many issues to be investigated. In our work we assume nodes are randomly and uniformly deployed to the area. Different deployment strategies can also be tested and evaluated. Network lifetime definition is another point to be diversified. We define it as the time that passes until the first node exhausts its energy. There are other definitions that can be used and tested, such as the time until the percentage of messages received drops below a threshold.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
