1. Introduction
Since it consists of static sensor nodes and mobile sink, the Wireless Sensor Network with a Mobile Sink (WSN-MS) is naturally a tried Wireless Sensor Network (WSN). In the literature [
1], WSN is classified into the flat Wireless Sensor Network (fWSN) and the mobile Wireless Sensor Network (mWSN). The fWSN is composed of static sensor nodes and sink nodes, and the data are delivered in a multi-hop manner. Thus, the big problem for fWSN is the hot-spot problem, i.e., the sensor nodes nearby the sink nodes deplete energy quickly. On the contrary, the mWSN has mobile nodes, which can reduce the relay hop count to alleviate the effect of the hot-spot problem. The mWSN is classified into a two-tired Wireless Sensor Network (2-mWSN) and a three-tired Wireless Sensor Network (3-mWSN). In 2-mWSN, static sensor nodes are still the main components laying on the bottom overlay, but mobile devices are introduced as the top overlay. The mobile devices, such as a mobile phone, laptop, Personal Digital Assistant (PDA), mobile robot and drone, can cache and transmit data from static sensor nodes to base station. The literature [
2] proposes the new concept of the Wireless Sensor, Actuator and Robot Network (WSARN), which is a kind of 2-mWSN. In 3-mTWSN, static sensor nodes are at the bottom overlay, mobile agents are at the middle overlay, and static access points are at the top overlay. The mobile agents, like animals, vehicles and humans, are responsible for gathering data from static sensor nodes and then forwarding to access points. Data mules in the literature [
3], mobile collector (SenCar) in [
4,
5,
6] and Mobility Enabled Wireless Sensor Network Testbed (MOTEL) in [
7] are typical 3-mWSN. Because the 2-mWSN has the characteristics of good scalability, avoiding the hot-spot problem and prolonging the lifetime of sensor nodes, in this paper, we are targeting 2-mWSN and propose the corresponding cluster algorithm for sensor nodes and the travel route scheme for the mobile sink.
The key problem of data-gathering in WSN-MS is how to cluster sensor nodes and how to plan the travel route of the mobile sink. Many related works, such as [
4,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19], tried to solve these problems. In WSN-MS, sensor nodes are all stationary after being deployed, but mobile sinks have motion ability. Naturally, mobile sinks can move to a position that is close to static sensor nodes to collect data. The direct data-gathering scheme is generated from this thought. In the direct data-gathering scheme, the data-gathering process is divided into data collection cycles. In each cycle, mobile sinks start from the original positions, visit all sensor nodes and finally get back to the original positions. The literature [
4,
10,
20] show that this scheme has many advantages, such as the energy efficiency of sensor nodes and longer network lifetime, etc. However, the travel route of the mobile sink is usually very long, which leads to the significant data delivery latency problem. To avoid these drawbacks, the literature [
8,
11,
12,
13] proposes the clustering approach, in which, the WSN is regarded as a kind of hierarchy network, sensor nodes are divided into clusters and mobile sinks move to cluster heads, collecting data. This approach could not only make the travel route of mobile sinks shorter, but also save more energy of the mobile sinks. However, most of the existing works mainly focused on a one or two hop data-collecting scheme, which restricts the route of mobile sinks to be shorter and also limits the energy balance among static sensor nodes. To break these limits, we combine the Route planning problem for mobile sink and Clustering Problem for static sensor nodes (RCP) to make clusters and plan the travel route at the same time.
In this paper, we present the RCP problem by combining the route planning for mobile sink and clustering problem for static sensor nodes. We consider WSN-MS to have static sensor nodes and one mobile sink and make assumptions as follows. First, the static sensor nodes and the mobile sink can estimate their own positions by using related positioning systems or algorithms. We can easily achieve the distances among static sensor nodes. Second, the communication ranges of sensor nodes and the mobile sink are like disks. Given the communication radius, we can calculate the minimum communication hops among static sensor nodes by using shortest path algorithms. Third, we assume the WSN-MS is a kind of 2-mWSN. In the network, static sensor nodes are divided into clusters. In each cluster, there are cluster members and one cluster head. The cluster members send data to the cluster head by multi-hop, and the cluster head stores and forwards the received data to the mobile sink. Based on these assumptions, the data-gathering scheme of WSN-MS could refer to data collection cycles. In each cycle, the data collection process includes three steps. First, the sensor nodes sense the environment and transmit data to the cluster head. Second, the cluster heads store received data and wait for the mobile sink. Third, the mobile sink moves to cluster heads to off-load stored data. In this scheme, the key problem is to plan the travel route for the mobile sink and make clusters for static sensor nodes. In the proposed problem, we set a global control parameter called maximum hops to adjust the balance between the route length and the cluster size. The control parameter is the maximum hops between cluster heads and cluster members.
The contributions of this paper are as follows. First, we formulate the RCP problem as an Integer Non-Linear Programming (INLP). In the formulation, the object is to shorten the route length of the mobile sink where the decision variables include the cluster head vector and the travel route matrix, and the constraints include: maximum communication hops of static sensor nodes, the circular shape travel route constraint of the mobile sink and the loop avoidance constraint of the travel route. From the formulation, we find that the optimal solution with the smaller control parameter is a feasible solution with the larger control parameter. Second, we propose an Imprecise Induction Algorithm (IIA) based on the above property to achieve the approximation solution of the RCP problem. The basic idea of the IIA algorithm is to derive the solution with the larger control parameter from the achieved solution with the smaller control parameter. The process of the IIA algorithm includes two main parts: setting all static sensor nodes as cluster heads, calculating the initial travel route by the Traveling Salesman Problem (TSP) algorithm and iteratively calculating the solution with the larger control parameter from the achieved solution with the smaller control parameter by two kinds of role exchange processes. Third, we conduct extensive experiments that show that the IIA algorithm can solve the RCP problem effectively.
The rest of this paper is organized as follows.
Section 2 summarizes the related work.
Section 3 introduces the system model, formulates the RCP problem and infers the problem properties.
Section 4 proposes the IIA algorithm.
Section 5 presents the numerical experiments.
Section 6 concludes this paper.
2. Related Work
In this section, we go through the related data-gathering approaches in WSN-MS. We roughly divided the data-gathering approaches into three categories from the point of view of sensor clustering: direct data-gathering approach, single-hop data-gathering approach and multi-hop data-gathering approach.
The first category is the direct data-gathering approach, in which the static sensor nodes send data to the mobile sink in a single hop manner, such as in [
21,
22,
23]. In the direct data-gathering approach, static sensor nodes send data to the mobile sink when the mobile sink enters the communication range of static sensor nodes. In [
21], Ma et al. focused on the tour planning for a single mobile sink and multiple mobile sinks in WSN-MS. In their study, Mobile data collectors (M-collectors ) start from the static data sink, visit all sensor nodes to gather data and get back to the static sink to upload the data. They found that the network lifetime of WSN-MS is significantly longer than that of static WSN. In [
22], Yuan et al. studied the robot routing problem in WSN, in which the robot is regard as the mobile sink. They supposed that the effective ranges of sensor nodes are disks, and the robot must at least reach the boundary to gather data. They proposed an algorithm based on the decomposition of the traveling salesman problem with neighborhoods. For the boundary data-gathering assumption, the route of the robot can be further shortened. In our previous work [
23], we study the delivery latency minimization problem in WSN-MS based on the same assumption in [
22]. We proposed a substitution heuristic algorithm to achieve an approximate optimal solution and found that the data-delivery latency of WSN-MS is longer than that of static WSN.
The second category is the single-hop data-gathering approach, in which the WSN-MS is organized as clusters, such as [
5,
6,
24,
25]. In this approach, the cluster members first send data to the cluster head, then cluster heads store data and wait for the mobile sink, and finally, the mobile sink picks up data from the cluster heads and uploads to the base station. In [
24,
25], Zhao et al. studied the network cost minimization problem in WSN-MS. They considered that the WSN-MS consists of sensor nodes and anchors. Since anchors are the locations of the parts of sensor nodes, the mobile collector gathers data by visiting each anchor point in a periodic data-gathering tour. They proposed the pricing-based algorithm to determine the data amount and the sojourn time on the anchor points. This work showed that the pricing-based algorithm is better than the cluster-based algorithm, because the aggregate cost is minimized. In [
5,
6], Zhao et al. studied the dual data uploading in WSN-MS. In their work, the WSN-MS is divided into sensor layer, cluster layer and mobile collector layer. In the sensor layer, they select sensor nodes with higher residual energy as cluster heads. There are two cluster heads in a cluster, and the cluster members communicate with cluster heads within one hop. In the cluster layer, the cluster heads can tune the output power and further adjust the transmission radius. In the mobile collector layer, the mobile collector is equipped with two antennas, and the travel route is designed by the TSP algorithm. This work showed that the dual data uploading approach can consume less energy than the single data uploading approach. All of the works suggest that the single hop data-gathering approach could decease network cost and increase network performance.
The third category is the multi-hop data-gathering approach, which is also organized as a hierarchy network, but cluster members send data to cluster heads by multi-hop. The multi-hop data-gathering approach can be further divided into the hop count-free approach, such as [
4,
8,
9,
10,
11,
12,
13,
20], and the hop count restricted approach, such as [
14,
15,
16].
The hop count-free approach just focuses on the multi-hop data-gathering mechanism, without considering the tradeoff between energy consumption and data delivery latency. In [
20], Wang et al. considered maximizing the network lifetime in a grid-based WSN-MS. In this work, sensor nodes are deployed on a grid, and they can send data to mobile sinks in a multi-hop manner. They proposed a weighted rendezvous planning algorithm, which preferentially designates sensor nodes with the highest weight. In [
4], Ma et al. gave the clustering and route planning solutions for connected and disconnected multi-hop WSN-MS. For the connected network, the solution included selecting turning points by reducing the maximum traffic load of the sensor nodes, connecting turning points to form the travel route and obtaining the cluster from the shortest path tree. For the disconnected network, the travel route is divided into inter-cluster circles and inner-cluster paths. These works showed that the multi-hop data-gathering mechanism can prolong network lifetime significantly compared to that in the static WSN.
In [
8], Xing et al. tried to find a set of sensor nodes, from which the mobile sinks can pick up the data originating from sources and transport to the base station before the deadlines in a multi-hop manner. In this paper, the routing tree from the sensor nodes to the base station is approximately represented as a geometric tree, and the problem is converted to finding rendezvous points nearby the the geometric tree to satisfy the deadlines. Xing et al. proposed the rendezvous planning algorithm called RP-CP algorithm and the utility-based rendezvous planning algorithm called RP-UG algorithm, respectively. In [
9], Salarian et al. proposed a mobile data collection approach based on the rendezvous node in a multi-hop manner. They proposed the weighted rendezvous planning algorithm, which selected the highest workload sensor nodes as the rendezvous nodes. The algorithm also used the classic TSP solver to calculate the tour of the mobile sink. These works showed that the multi-hop data-gathering approach can reduce the data delivery deadline.
In [
10], Zhu et al. proposed a tree-cluster-based data-gathering algorithm of the WSN-MS. The algorithm first constructed a weight-based tree and then decomposed the weight-based tree and selected sub-rendezvous points. The algorithm only considers two-hop data communication to limit the energy consumption of sensor nodes. This work shows that the multi-hop data-gathering approach can alleviate the hot-spot problem, balance the load of the whole network and prolong the network lifetime.
In [
11,
12], furthermore, they studied the network utility problem in the WSN-MS, in which sensor nodes transmit data to the mobile sink in a multi-hop manner. They tried to maximize the data rate of sensor nodes and the flow rate to the mobile sink at certain anchor points. They decomposed the original problem into subproblems and proposed distribution algorithms. In [
12], they further introduced the concurrent data uploading mechanism in WSN-MS. Their works show that the multi-hop data-gathering approach can achieve effective network utility under the constraints of network lifetime and data-gathering latency.
In [
13], Zhang et al. proposed a hybrid data-gathering approach based on the combination of the hierarchical routing approach and the mobile sink data-gathering approach. In this work, cluster members send data to cluster heads or virtual heads in a multi-hop manner. They selected cluster heads by the node-density-based clustering approach and programmed the travel route of the mobile sink by a low-complexity traveling track planning algorithm. This work showed that the minimum hops in the intra-cluster can save the energy of sensor nodes.
Moreover, the hop count-restricted approach mainly focuses on how to achieve the tradeoff between data delivery latency and energy consumption by adjusting the hop count. In [
14], Zhao et al. studied the tradeoff between energy saving and data-gathering latency in WSN-MS by exploring a balance between the relay hop count of sensor nodes and the tour length of the mobile sink. The problem was defined to find a subset of sensor nodes as polling points and the travel route of the mobile sink that connected each sensor in the field to a polling point within given hops, such that the tour length of the mobile sink could be minimized. This paper proposed a centralized algorithm and a distributed algorithm based on the shortest path tree. This paper first proposed that the hops between cluster members to cluster heads should be bounded, so that the balance between energy saving and data-gathering latency could be achieved.
In [
15], Bassam et al. tried to find the shortest travel route of the mobile sink to maximize the network lifetime in WSN-MS, where the number of hops between sensor nodes and the mobile sink is bounded. They proposed an energy-aware bounded hop count algorithm, which selected sensor nodes closest to the sink as cluster heads. This work showed that there was a tradeoff between hop count, tour length of the mobile sink and residual energy of the sensor nodes.
In [
16], Chowdhury et al. tried to make a better balance between energy consumption and data-gathering latency by adjusting the relationship between the relay hop count for sensor nodes and the route length of the mobile sink. They proposed a data collection points selection algorithm based on the standard shortest path tree. This paper showed that the relay hop count has an impact on the energy consumption of sensor nodes, the data-gathering latency and the route length of the mobile sink.
4. Imprecise Induction Algorithm
4.1. Basic Idea
From the inspiration of Theorem 1, we propose an Imprecise Induction Algorithm (IIA). Theorem 1 tells us that the optimal solution with small maximum hops is a feasible solution with large maximum hops in the RCP problem. Therefore, we can solve the RCP problem from the smallest maximum hops, i.e., , and then, we can derive the solution with , , and so on. Based on this idea, the solving process can be described as an induction process. For simplicity, we denote the expression as . We first select all sensor nodes as cluster heads and solve the subproblem with . Then, we solve other subproblems with based on the solution with , where .
Theorem 2 suggests that the RCP problem can be transformed as a TSP problem when . Thus, it can be solved by classical TSP algorithms. However, when the maximum hops becomes larger, the RCP problem cannot be solved by TSP algorithms. For simplicity, but still effective, we update the solution with small maximum hops to achieve the solution with large maximum hops. Intuitively, we can shorten the travel route by reducing the number of cluster heads. Therefore, we first introduce a role change process to change some cluster heads to cluster members. Further more, in some cases, we can also shorten a travel route by increasing the number of cluster heads. Thus, we introduce another process to exchange cluster members with cluster heads. The two processes cannot guarantee that the updated solution is optimal, i.e., the process is not precise. Thus, the the proposed method is an imprecise induction method.
Figure 1 illustrates how the IIA algorithm works. When
, all sensor nodes must be cluster heads, and the travel route is
. When
, the role of sensor node
or sensor nodes
should be changed from cluster head to cluster member. If we set the sensor node
as a cluster member, then the travel route is
. However,
is not the shortest one; we can exchange the role of sensor node
and
to achieve a shorter travel route, i.e., the sensor node
is set as a cluster member, and the sensor node
is set as a cluster head. Therefore, the travel route is updated as
. The travel route is not the shortest one, either. If we set the sensor node
as a cluster member, the travel route is
. When
, the travel route cannot be updated further, so the travel route is
.
4.2. Initial Travel Route
The initial travel route of the RCP problem is the optimal solution when
, which is a TSP problem from Theorem 2. When
, all sensor nodes are cluster heads, i.e., the decision variable
. Accordingly, the initial travel route problem can be derived from the RCP problem by setting
. The initial travel route problem is formulated as follows.
where the parameters and the constraints have the same meaning as the formulation of the RCP problem. The optimal solution of Equations (
14)–(
19) is denoted as (
,
), where the elements of
are all one, and
represents the travel route of the mobile sink.
4.3. Role Change from Cluster Head to Cluster Member
After a solution is achieved, we can get a shorter travel route by changing the role of a sensor node from cluster head to cluster member. Further more, when the solution (
,
is achieved, we can solve the RCP problem of
by setting some cluster heads in
as a cluster member. If the sensor node
changes its role from cluster head to cluster member, there are two matters: to remove the attached two edges and to connect two adjacent cluster heads by a link. The length of two attached edges can be calculated from the entering edge and leaving edge, which is denoted by Equation (
20).
where
is the total length of two attached edges of the sensor node
, the variables
and
denote whether the edges
and
are the attached edges and the parameters
and
indicate the length of the edges
and
, respectively.
Whether an edge is set as a link is determined by the adjacent cluster heads of the sensor node . We can achieve the link by transforming the decision variable matrix , which is as follows. First, the row of times all other rows as these rows’ value. Second, the row of plus all other rows as these rows’ value. Third, the column of times all other columns as these rows’ value.
According to these rules, the transformed decision variable
is calculated by Equation (
21), and the length of the link is calculated by Equation (
22).
where
denotes the transformed value of the decision variable
and
denotes the length of the added link.
In total, the decision variable
should be transformed as Equation (
23) when the role of the sensor node
is changed from cluster head to cluster member.
where
is the decision variable of the sensor node
and
is the transformed matrix of the decision variable
. Normally,
if
is a cluster head.
The reduced travel length when the role of the sensor node
is changed from cluster head to cluster member is as follows.
In the role change process, we want to achieve a shorter travel route, i.e., the reduced route length should be maximized. For a single sensor node, such as
, the following formulation decides whether the sensor node
changes its cluster head role and maximizes the reduced route length.
where
is the decision variable that denotes whether the sensor node
is selected as the cluster head. Equation (
25) is the object function to maximize the reduced route length based on the solution (
,
. Equation (
26) is the communication hop constraint, which restricts the maximum hops between cluster members and cluster heads, for all sensor nodes except the sensor node
. Equation (
27) is also the communication hop constraint, which restricts the maximum hops among cluster members and the cluster head, especially for the sensor node
.
4.4. Role Exchange from Cluster Member to Cluster Head
This can further reduce the route length by exchanging the role between cluster member and cluster head. In mathematics, this kind of exchange can be mapped as vectors exchange on the matrix. If
is a cluster head and
is a cluster member, the matrix
denotes a travel route and the matrix
is the exchanged travel route, then the exchanged travel route can be derived by Equations (
29)–(
32).
where
is the element of the matrix
and
is the element of the matrix
.
Thus, the matrix of exchanged travel route
can be transformed by Equation (
33).
The reduced route length after role exchange between the cluster head
and the cluster member
can be calculated by Equation (
34).
where
is the reduced route length.
Similar to the role change process, the role exchange process is also to achieve a shorter travel route, i.e., the reduced route length should be maximized. For the cluster head
and the cluster member
, the following formulation decides whether the sensor node
should exchange with the sensor node
, so that the reduced route length is maximized.
where
and
are decision variables that denote whether the cluster head
should exchange with the cluster member
. Equation (
35) is the object function to maximize the reduced route length based on the solution (
,
. Equations (
36) and (
37) are the constraints to restrict the maximum hops among cluster members and cluster heads, like Equations (
26) and (
27).
4.5. Details of the Imprecise Induction Algorithm
The IIA algorithm uses an iterative process to achieve the approximately optimal solution. At the beginning, the algorithm utilities a TSP algorithm to compute the solution of
. Then, the algorithm iteratively solves the problem with larger maximum hops by two sub-processes, such as with
,
, ⋯,
. The main process is as Algorithm 1, and the sub-processes are as Algorithms 2 and 3.
Algorithm 1: Imprecise Induction Algorithm (IIA). |
Require: : maximum hops among sensor nodes. : the position of sensor nodes. : the dock position of mobile sink. : a function to calculate distances among sensor nodes. : a function to calculate minimum hop counts among sensor nodes by Floyd Algorithm. : a function to solute Equations (14)–(19) with distance parameter . : a function to solve Algorithm 2. : a function to solve Algorithm 3. Ensure: : state vector of sensor node. : travel route of mobile sink.
- 1:
, - 2:
, - 3:
- 4:
while do - 5:
, ; - 6:
while do - 7:
; - 8:
; - 9:
; - 10:
end while - 11:
end while - 12:
return
|
In Algorithm 1, Lines 1–3 assign the initial original value to key parameters and solve the RCP problem when ; Lines 4–11 solve the RCP problem iteratively when . Line 5 applies the add-self operation to current maximum hops k and assigns the initial value to the temporary variable . Lines 6–10 will execute if there is a shorter travel route, i.e., . Lines 7–8 execute the role change process and role exchange process, respectively. Line 9 computes the object value gap between two update processes.
In Algorithm 2, Lines 2–4 calculate the maximum reduced route length for all sensor node; Line 5 sorts the maximum reduced route length by descending order; Lines 6–11 check the constraint to judge whether the sensor node can be a cluster member.
Like Algorithm 2, in Algorithm 3, Lines 2–4 calculate the maximum reduced route length for all sensor nodes; Line 5 sorts the maximum reduced route length by descending order; lines 6–11 check the constraint to judge whether the sensor node can be a cluster member.
Algorithm 2: Cluster Head to cluster Member (H2M) |
Require: : the solution with . : the communication hops among sensor nodes. : a function to calculate Equation (25) when the parameter . : a function to test the parameter whether satisfies Equations (26) and (27). : a function to sort the collection L by descending order. : a function to rebuild the travel route after by Equation (23). Ensure: : state vector of sensor node. : travel route of mobile sink. - 1:
- 2:
for to n do - 3:
- 4:
end for - 5:
- 6:
for to n do - 7:
- 8:
if and then - 9:
, - 10:
end if - 11:
end for - 12:
return
|
Algorithm 3: Cluster Member to cluster Head (M2H) |
Require: : the solution with . : the data transmission hops among sensor nodes. : a function to calculate Equation (35) with the parameter and . : a function to test the parameter and whether satisfies Equations (36) and (37). : a function to sort the collection L by descending order. : a function to rebuild the travel route after and by Equation (33). Ensure: : state vector of sensor node. : travel route of mobile sink. - 1:
- 2:
for to n do - 3:
- 4:
end for - 5:
- 6:
for to n do - 7:
- 8:
if then - 9:
,, - 10:
end if - 11:
end for - 12:
return
|