Abstract

Recent research shows that significant energy saving can be achieved in wireless sensor networks by using mobile devices. A mobile device roams sensing fields and collects data from sensors through a short transmission range. Multihop communication is used to improve data gathering by reducing the tour length of the mobile device. In this paper we study the trade-off between energy saving and data gathering latency in wireless sensor networks. In particular, we examine the balance between the relay hop count and the tour length of a mobile Base Station (BS). We propose two heuristic algorithms, Adjacent Tree-Bounded Hop Algorithm (AT-BHA) and Farthest Node First-Bounded Hop Algorithm (FNF-BHA), to reduce energy consumption of sensor nodes. The proposed algorithms select groups of Collection Trees (CTs) and a subset of Collection Location (CL) sensor nodes to buffer and forward data to the mobile BS when it arrives. Each CL node receives sensing data from its CT nodes within bounded hop count. Extensive experiments by simulation are conducted to evaluate the performance of the proposed algorithms against another heuristic. We demonstrate that the proposed algorithms outperform the existing work with the mean of the length of mobile BS tour.

1. Introduction

Data gathering in Wireless Sensor Networks (WSNs) is one of the most frequent and fundamental operations, which requires the sensor nodes to monitor the sensing field for as long as possible. As sensor nodes have limited energy resources and are powered by small batteries, energy consumption is a critical issue in the design of WSNs that affect the energy consumption of sensor nodes and hence the network lifetime.

Recent research [15] shows that significant energy saving can be achieved in wireless sensor networks by using mobile devices capable of carrying data mechanically. Mobile Base Stations (BSs) are proposed to reduce energy consumption by allowing a mobile BS to roam a sensing field and gather data from sensor nodes through a short transmission range. The energy consumption of each sensor node is then reduced, since fewer relays are needed for the sensor node to relay its data packet to the BS. As the speed of mobile BS is very slow compared with the speed of data packets, which travel in multihop forwarding, the increased latency of data gathering when employing mobile BS presents a major performance bottleneck. Consequently, the time a mobile BS takes to tour a large sensing field may not meet the stringent delay requirements inherent in some mission-critical, real-time applications. Therefore, planning the tour of mobile BS needs to be considered in order to achieve the delay requirements.

Generally, the mobility of BS can be classified into three types, according to the mobility pattern of the entity upon which the BS is mounted, as follows:(1)Random mobility: this can be achieved, for example, when the BS is mounted on humans and animals. In this case, the probability of the BS collecting all sensing data is low since the BS opportunistically visits sensor nodes [6].(2)Predictable mobility: in this case, the BS is mounted on an entity that moves on a fixed track or path that cannot control its direction or speed, but which moves at a regular time, for example, a BS mounted on a bus or train. Thus, the sensor nodes can predict when the BS may move around to send their data [7, 8].(3)Controlled mobility: when the BS is mounted on a robot or UAV plane, then the direction and speed of the BS can be controlled. Many algorithms are proposed to find the tour of the BS in order to achieve requirements such as maximised network lifetime and data-gathering delay using single and multihop relays [3, 5, 9].

Most literature studies the mobility of WSNs to be predictable or controlled to achieve network performance requirements (some literature focused on random mobility to improve network lifetime). This differs from mobile ad hoc networks in which nodes are assumed to move arbitrarily, which degrades the network performance by link failures.

In this paper, we deal with the data gathering problem with bounded delay time in sensor network using a controlled mobile BS, by exploring a balance between the relay hop count required for data relay and tour length of the mobile BS such that the energy consumption is minimized. Specifically, we assume the mobile BS selected a set of Collection Location (CL) nodes that temporarily cache and forward sensing data of other nodes. The sensor nodes are grouped into Collection Trees (CTs) rooted at CLs. Each node has to forward its data to the CL within a certain number of relay hops. The mobile BS traverses along a close tour and stops at each CL in the tour for data gathering.

Our major contributions, in this paper, are as follows. We propose two efficient heuristic algorithms: Adjacent Tree-Bounded Hop Algorithm (AT-BHA) and Farthest Node First-Bounded Hop Algorithm (FNF-BHA). The algorithms find the tour of the mobile BS consisting of CLs which meet the following criteria: (i) the energy consumption among the sensor nodes is balanced in order to prolong nodes lifetime; (ii) the total traversal time of the mobile BS on the tour is minimized; and (iii) the hop count between any sensor node and the CL is bounded by a given value. The AT-BHA constructs adjacent CTs by finding closest nodes to the last constructed CL. The FNF-BHA uses the farthest node from the BS in the construction of CL. Load balancing algorithm is proposed to balance the number of nodes in the CTs. Finally, the performance of the proposed algorithms is evaluated through experimental simulations. The experimental results demonstrate that the proposed algorithms are efficient.

The remainder of this paper is organized as follows. Section 2 reviews the related work on mobile data gathering. Section 3 presents two algorithms to solve data gathering with bounded hop count problem. Section 4 evaluates the efficiency of the proposed algorithms through extensive simulations. Finally, Section 5 concludes the paper.

There is an extensive range of literature studying the use of mobile BS for data gathering [4, 5, 915]. Kansal et al. [12] combine multihop forwarding with a mobile BS. They performed an experimental evaluation for a small sensor network, assuming that a mobile BS moves back and forth on a straight line (a fixed path). They employed a directed diffusion approach to gathering sensed data from the sensor nodes beyond the transmission range of the mobile BS.

Some existing studies assume that sensor nodes can cache sensing data of other nodes in order to forward it to the mobile BS when the BS moves around. Gao and Zhang [11] and Xing et al. [16] explored the delay requirement for data gathering assuming that the sensor nodes have an ability to cache sensing data of other nodes. In [11] sensor nodes send their data through multihop relays to the nodes (subsink) located within the direct-transmission range of the mobile BS. The subsink nodes cache data and send it to the mobile BS when it comes within transmission range. In [16], a rendezvous-based data-gathering approach is proposed, in which a subset of nodes is chosen as rendezvous points. The role of these points is to buffer and aggregate data originating from sensor nodes. When the mobile BS arrives within the transmission range of rendezvous points, the data will be forwarded to the mobile BS. Kaswanet et al. [17] proposed path plan algorithm for data collection by selecting set of rendezvous points. The algorithm minimize the tour length by reducing the number of rendezvous points by selecting the position closest to the location of the BS and allows the BS to collect data from maximum number of sensors via single hop communication. This algorithm does not consider a bounded hop count for data collection.

Grouping sensor nodes in the sensing field into clusters and collecting data from cluster heads are proposed in [1315]. Ma and Yang [13] proposed a heuristic for finding routing paths for the mobile BS, which assumes that the moving path of the mobile BS consists of a series of line segments. Sensor nodes closest to each line segment are selected as cluster heads. A specified configuration is applied, where the mobile BS starts data gathering from the left side of the path, moves towards the right side, and then comes back to the left side again. This scheme maximizes network lifetime. However, it may cause packet losses at each cluster head if the path length to the cluster head is too long, since the time required for the cluster head to send the data of cluster nodes to the BS is not considered in cluster forming. Saad et al. [14] proposed path planning algorithm for mobile BS that visit a set of cluster heads. Nodes are randomly grouped to form clusters and the node with the largest residual energy is selected as the cluster head. The clusters are merged, ensuring that the number of hops from the cluster head to any cluster node is no more than two hops. The cluster head gathers and buffers cluster sensing data. The BS visits the cluster heads to gather data through single-hop communication. However, this work does not consider data gathering delay for the mobile BS. Zhang et al. [15] extended the work in [16] and regarded cluster heads as the rendezvous point. They considered event based data gathering and proposed reduction in data gathering delay by only allowing the mobile BS to visit cluster heads that generate new data.

Bounded hop count for data gathering is studied in [4, 5, 18, 19]. Zhao and Yang [5] proposed SPT-DGA and BRH-MDG data gathering algorithms that select set of CL for the mobile BS to visit for data gathering. Each CL aggregates the local data from its affiliated sensors within a certain number of relay hops. However, the number of nodes in the constructed CT is small. Consequently, many CTs are constructed for data gathering. Thus, the length of the BS tour increased. Chen et al. [19] analysed and improved the BRH-MDG algorithm by minimizing the degree of the CTs in order to prolong the network lifetime. Xu et al. [4] proposed heuristic algorithm to find the tour for a mobile BS consists of CL nodes. However, the algorithm does not consider the effect of some critical sensor nodes on the separation of other nodes. These critical nodes affect the location of CLs and hence the length of the mobile BS. The hop count and hop distance are used to plan the route of the mobile BS in [18]. In this work, set of rendezvous points are selected such that the mobile BS can collect data from the sensor nodes within a permissible delay with minimum possible hop distance and hop counts. However, this work does not consider minimizing the BS tour length.

Dividing sensing field into subareas is proposed in [20, 21]. Chen et al. [20] introduced algorithm to improve the network lifetime considering data transmission delay and number of hops. The algorithm divided the sensing field into grids; the mobile sink has to stay at the grid center for data collection. However, this work assumes the sensor nodes send data to the BS only when the hop count between the sensor and the BS is at or below a specific hop count. Otherwise the sensor enters a sleeping state. In addition, the hop count is estimated using the distance between the sensor nodes and the BS which is not accurate at low node density (node degree less than six). A delay bound path algorithm is proposed in [21]. The algorithm divided the sensing field into hexagonal cells whose centers are considered as the positions of rendezvous point. The algorithm minimizes the number of rendezvous point by selecting the location that covers as many number of sensor nodes and at minimal distance from the center. Data gathering within bounded hop count is also studied in [22]. The authors proposed reducing the number of collection points by selection of the CL within the convergence area that overlaps maximum number of sensor nodes. However, the work in [21, 22] does not consider the effect of isolated sensor nodes on the tour length of the BS.

Other literature involved sensor node residual energy and bounded hop count in the construction of the data gathering trees [2, 23]. Zhu et al. [23] suggested assigning weight for each node based on nodes residual energy, distance to the BS and number of hops. The weight is used to select rendezvous points for data collection. Jerew and Al Bassam [2] examined the sensor nodes residual energy to select a set of cluster heads with high residual energy and bounded hop count. Sensor node sends its data within bounded hop count to the cluster head and the BS visits all the cluster heads for data gathering. Chang and Shen [24] introduced a cluster routing structure, to decide the routing path based on the location of BS, the distances between the sensor nodes, and the residual energy of each sensor node. The closest node to the BS with residual energy more than the average network residual energy is selected as cluster head. The proposed algorithm reduced the energy consumption and extended the sensor lifetime by balancing the network load. However, this work did not consider data gathering within a bounded hop count.

2.1. Preliminaries and Problem

We consider a wireless sensor network consisting of stationary sensors and is the set of links. There is a link between two sensors or a sensor and the BS if they are within the transmission range of each other. For the sake of simplicity, we assume the transmission range of each sensor node and the BS are fixed and identical, and all sensor nodes have identical initial energy. The storage of a sensor node is limited, so that it cannot buffer a large volume of data. Sensor nodes are densely deployed in the sensing region. Accordingly, the number of hops in a path is approximately proportional to the distance between the nodes. The BS moves with constant velocity. Thus, there is sufficient time to establish communication and send one or more data packets during the time the BS takes to travel across the transmission range of a sensor node. We further assume the mobile BS replenishes its energy periodically so there is no energy concern with the mobile BS. Finally, sensor nodes and the mobile BS are assumed to know their own physical locations via GPS or a location service in the network.

Problem. Given a network with a mobile BS and assuming that the number of hops for data gathering between the BS and sensor nodes is bounded by , the problem is to find the shortest tour for the mobile BS such that the energy consumption among the sensor nodes is balanced.

3. Proposed Heuristic Algorithms

Due to the NP-hardness of this problem [5], a heuristic algorithm is proposed in this paper. In order to find the optimal CLs among sensors, relay routing paths and the tour of the mobile BS should jointly be considered. Based on these observations, we deal with the tour length minimization problem by devising scalable heuristic algorithms. In this section, we proposed two algorithms: the Adjacent Tree-Bounded Hop Algorithm (AT-BHA) and the Farthest Node First-Bounded Hop Algorithm (FNF-BHA). Table 1 shows the main symbols used in the proposed algorithms.

3.1. Adjacent Tree-Bounded Hop Algorithm (AT-BHA)

The basic idea of AT-BHA algorithm is to find a set of CLs in the network that the BS can visit to collect sensing data of all the sensors. Visiting CLs in specific order determines the length of the tour of the mobile BS. The value of determines the delay on data delivery and affects the number of sensor nodes contained in each tree and, hence, the number of CLs. For example, if the number of CLs is equal to the number of sensor nodes and the BS tour is the longest tour as the BS has to visit each node for one hop data collection.

In any network, the node degree (number of neighbor nodes) significantly affects the network connectivity. As the node degree , there is a high probability of partitioned networks [25]. The first task of AT-BHA as shown in Algorithm 1 is to construct Minimum Spanning Trees (MSTs) that cover all sensors in the network. Each sensor node associated in a single MST referred to as . Thus, the AT-BHA can be applied to connected and disconnected networks.

Input: A sensor network , hop cout , ,
Output: Set of CL nodes ,
(1) ; /set of nodes in the network /;
(2) ;
(3) ;
(4) while    is not empty  do
(5) Find the closest vertex to the BS position from ;
(6) Find an MST that covers vertices from ;
(7) ; / set of nodes in partition tree /   ;
(8) while    is not empty  do
(9) Find the farthest leave vertex in ;
(10) Find the routing path ;
(11) if    then
(12) ;
(13) else
(14) vertex from at hops from ;
(15) ;
(16) Find an MST ;
(17) ;
(18) if    is empty  then
(19) break;
(20) Find node that with ;
(21) Find set of nodes with ; / nodes within a circle of radius /;
(22) Find the closest vertex to from ;
(23) ;
(24) ; / set as a CL /  ;
(25) Find an MST ;
(26) ;
(27) =Update_CT(,,,,)   ;
(28)
(29) [, ]=Call LBA()   ;

The root of the MST is selected at sensor node that is the closest to the location of the BS. We set the root close to the BS in order to select CLs as close as possible to each other and close to the BS initial position.

The next task of AT-BHA is to find the farthest node, , from the BS position in the partition tree. The routing path between the farthest node and root of is referred to as and it is used to find the candidate CL node. We assume the set of nodes in is sorted in decreasing order according to the number of hops to . In the case of the number of nodes in the routing path being less than , then the root of the tree is selected as . While the node at hop away from the is selected as if the route length is higher than .

The Breath-First-Search (BFS) algorithm with bounded hop count is used to find the Minimum Spanning Tree (MST) rooted at the CL. A partial BFS tree is constructed hop by hop, and the expansion continues until all nodes within hops are explored. The set of sensors contained in the partial th tree is referred to as . The set of the nodes covered in the th CT is removed from the set of partition tree nodes, .

In this algorithm, we propose to find the next CT adjacent to the last constructed tree in order to avoid partitioned node between the CTs. The partitioned node increases the tour length since the BS has to visit the node for data collection. To find an adjacent tree to the tree, the algorithm calculates the ratio . The represents Euclidean distance between vertices and . The node from with maximum is selected and referred to as . This node represents the farthest node to BS and closest to the . The closest node to the BS that is within the distance from is selected as the second , where is the sensor transmission range and between and 1. The value represents the hop progress and its ranges from to depend on the network node density [25]. New MST is constructed rooted at to find set of nodes within hops.

The number of nodes within each tree and the position of the CL nodes have a signification effect on the tour length. When the CT consists of many nodes, a less number of CLs are required and the tour length decreases. In addition, the tour length is also decreased as the selected CLs are close to the BS. To improve the tree size and location of , the Update_CT algorithm is proposed in Algorithm 2.

Input: , , , , ,
Output: ,
(1) if    is the first time for check  then
(2) ;
(3) if    then
(4) Find the routing path using partition tree ;
(5) if    then
(6) ;
(7) ;
(8) else
(9) Find vertex from at hops from ;
(10) ;
(11) ;
(12)
(13) Find an MST ; / Update the j-th tree/   ;
(14) ;
(15) Return(,)

In the Update_CT algorithm, the ratio of the number of tree nodes to the distance between the and is used as a measure of tree usefulness. A threshold value, , is used to decide the updating of the CT. The range of is (, where is the network nodes, and , , and are, respectively, the position of BS, the closest node to the BS, and the farthest node to the BS.

In order to avoid infinite looping, the algorithm first checks whether the CT is previously updated since in some cases it is impossible to update the tree because of limited number of nodes. In the case the CT needs to update, the routing path between and is used to select a new CL node. is updated by including the set of CT nodes and the set of routing nodes to the selected . Finally, the updated CT is constructed and returns the updated CT and to the AT-BHA algorithm. The AT-BHA algorithm continues until all the network nodes are associated with CTs.

3.2. Farthest Node First-Bounded Hop Algorithm (FNF-BHA)

This algorithm constructs CTs to include the farthest nodes to the BS. The FNF-BHA starts similar to AT-BHA by finding the nodes closest to the position of the BS and construction partitions trees. It then finds the route of data packets to in the current partition tree to determine the CL node. The nodes involved in the data relay between and the collection node are critical for data gathering from . In the case of any of the relay node participating in another CT, the BS has to visit for data collection increasing the tour length. Therefore, in this case, the algorithm first identifies and then removes all the relay nodes from other CTs by calling the Node Removal Algorithm (NRA) as shown in Algorithm 3. The set of removed nodes is used in the construction of new CTs at the next iteration.

Input: A sensor network , hop cout
Output: Set of CL nodes ,
(1)   ;/set of nodes in the network/   ;
(2) while    is not empty  do
(3) Find the closest vertex to the BS position from ;
(4) Find an MST that covers vertices from ;
(5) ; set of nodes in partition tree Tp   ;
(6) while    is not empty  do
(7) Flag false   ; /no node need to remove from any tree   ;
(8) Find the farthest leave vertex to on ;
(9) Find the routing path ;
(10) if    then
(11) ;
(12) else
(13) vertex from at hops from ;
(14) set of nodes in not in ;
(15) if    is not empty  then
(16) Flag true   ;
(17) NRA; / call Node Removal Algorithm /
;
(18) if  Flag= false  then
(19) if    selected as    then
(20) index of tree rooted on ;
(21) ;
(22) else
(23) select as Collection Location   ;
(24) ;
(25)
(26) Find an MST ;
(27) ;
(28) ;
(29) [,]=Call LBA()   ;

The algorithm tests whether the CL node is already selected as CL of another tree. In this rare case, the set of CT nodes are merged with that tree and new CT is constructed. The new tree includes all the nodes of previous CT in addition to , since all the relay nodes are available in the set of nodes, whereas, if the CL node is not selected, a new CT is constructed with a new tree index to include . The algorithm is terminated when all the partitioned tree nodes are covered.

We now describe NRA algorithm in more detail. The pseudocode is given in Algorithm 4. In order to remove the set of nodes in from the CTs, the tree index of each node needs to be found first. The set of nodes that need to be removed from each CT are identified and removed. A new CT is reconstructed after node removal. In some cases, some of the tree nodes, , are partitioned, since the removed nodes provide a relay path for them. may be covered by other CTs. Therefore, all the CTs are reconstructed considering . If a node is associated with CT, the node is removed from . The algorithm continues until all the nodes in are removed from the CTs.

Input: A sensor network , hop cout , ,
Output:  ,
(1) set of tree index of all CTs   ;
(2) set of tree index of all nodes   ;
(3) ;
(4) ;
(5) for  each    in    do
(6) / Set of nodes to remove from the j-th tree /  ;
(7);/ Set of node of the j-th tree after node removel /   ;
(8) get from tree ;
(9) Find an MST ;
(10) ;/ Set of partitioned nodes /   ;
(11) ;
(12) if  is not empty  then
(13) for  each  tree  index    in    do
(14) get for tree ;
(15) ;
(16) ;
(17) Find an MST ;
(18) ;
(19) ;
(20) ;
(21) Return()   ;
3.3. Load Balancing and Further Improvement

The proposed algorithms AT-BHA and FNF-BHA can be further improved by balancing the number of nodes in the CTs. The proposed algorithms find the set of CL nodes to collect data from sensor nodes within hops. However, there are large differences between the number of nodes in the CTs. In particular, the first constructed tree covers the maximum number of nodes, while the last tree covers only the remaining set of nodes.

Thus, we proposed the load balanced algorithm (LBA) with the pseudocode given in Algorithm 5. First, the algorithm balanced the number of nodes for each CT using the CT balanced algorithm (CTBA) shown in Algorithm 6. The CTBA first sorts the CTs in increasing order according to the number of nodes in order to start constructing the CT with the minimum number of nodes. The algorithm gradually constructs all the CTs by finding the nodes with one hop from the CL nodes. Then the number of nodes in the CTs increases with the hop count. In some cases, some nodes does not associate to any tree since they are partitioned as the relaying nodes are associated to other CTs. Finally, the LBA returns the balanced CTs (BTC) and partitioned nodes (PN). When there is no PN the algorithm finalizes the BTC and no further process is required. However, a new set of needs to be selected from the PN for data collection. This is achieved by finding the farthest node to the BS from PN. The routing path between and closest node to the BS is used to find the at hops. A new CT is constructed and rooted at to cover PN nodes. Finally, the algorithm rebalanced the load by calling the LBA. The LBA is terminated when there is no partition node in the PN.

Input: A sensor network , hop cout , tree index ,
Output: Set of CL nodes ,
(1) [,]=Call CTBA(, )   ;
(2) while    is not empty  do
(3) ; copy all the CTs to ;
(4) number of trees in ;
(5) Find the farthest leave vertex from using ;
(6) Find the routing path ;
(7) if     then
(8) ;
(9) ;
(10) else
(11) vertex from at hops from ;
(12) nodes at hops from ;
(13) ;
(14) ;
(15) Find an MST ;
(16) ;
(17) [,]=Call CTBA(, )   ;
(18) Return(, )   ;
Input: A sensor network , Set of CTs , hop count
Output: set of balanced CTs , Remain Nodes
(1) number of CL nodes   ;
(2) ;/ set of nodes in the network /   ;
(3) ;
(4) ;
(5) Sort trees in increasing order according to the number of nodes in each tree   ;
(6) // remove CL nodes from testing nodes   ;
(7) for  hc= 1 to h  do
(8) for  each    do
(9) ;
(10) if    then
(11) ;
(12) Find an MST ;
(13) / remove tree nodes from testing nodes /   ;
(14) ;
(15) Return(,)   ;

4. Performance Evaluation

In this section, we evaluate the performance of the proposed algorithms through simulations. We assume that sensor nodes in the network are randomly deployed with uniform distribution in a square sensing field. Each sensor node has a transmission range of . We first vary the hop count to evaluate the performance of the algorithms. We also vary the number of nodes in the network to emulate the change in the node degree. The node degree is used as a metric of node density. We compare our algorithms with the SPT-DGA algorithm proposed in [5]. For the AT-BHA, we set and . For each instance of deployment, the network performance metrics are calculated, and the result is the average over 500 instances for each node degree and hop count.

We adopt the nearest neighbor algorithm [26] in our simulation for the travelling salesman problem to determine the tour of the mobile BS. In order to calculate the energy consumption of CL in transmitting CT sensors data to the BS on wireless communication per time unit, we adopt the energy model [2], , where is the energy consumption of CL, is data generation rate, is the length of single data reading, and is the number of sensors the CL node has to forward their data to the BS. is the amount of power consumed by transmitting a unit-length of data. can be represented by , where is a constant that represents the energy consumption to run the transmitter circuitry which is negligibly small, is a constant that represents the transmitter amplifier, and is the transmission range. The exponent is determined by the field measurements, which is typically a constant between 2 and 4. In this simulation we assume , , , , and .

4.1. Varying Hop Count

We first study the effect of changing the hop count on the network performance. Figure 1 plots the performance of our algorithms and the SPT-DGA in terms of tour length and hop count, . When is small, the number of nodes within each CT is small and thus the number of CLs increased, which increases the length of the mobile BS. The result also shows that the tour length in the FNF-BHA algorithm is the shortest since the FNF-BHA algorithm considered the farthest nodes.

The maximum number of nodes in the CTs with the number of hops is shown in Figure 2. The result shows that as the hop count increases the number of nodes in the CTs increased. This makes sense as increasing the number of hops added extra nodes to the CTs. The result also shows that the number of nodes in the CTs constructed by SPT-DGA algorithm is always less than that in our algorithms.

We also study the number of CLs with the hop count as shown in Figure 3. The result shows that the numbers of CLs in our algorithms are significantly less than that in SPT-DGA; this is because the proposed algorithms try to construct CTs with maximum number of nodes by finding routes to the partition nodes and adjacent CTs.

The CL consumes more energy than any other network nodes since it has to forward the sensing data of the CT to the BS. Figure 4 illustrates the maximum energy consumption of CL for forwarding sensing data of a single sensor node by dividing the total energy consumption of the CL to the number of sensors in the CT. The result shows that the energy consumption decreases with the hop count as the number of nodes in the CT increased with hop count. The result also shows that the energy consumption of the CL at FNF-BHC algorithm is lower that other algorithms since the FNF-BHC algorithm constructed CTs with the maximum number of nodes.

The maximum distance between the CL and the farthest sensor nodes is examined in Figure 5. The CLs selected by the AT-BHA are the closest to the sensor nodes since the AT-BHA algorithm constructed adjacent trees using hop progress rather than dealing with the farthest nodes.

To better understand the results, we give examples in Figures 6, 7, and 8 where 245 sensors are scattered over field () with the initial position of data BS located at the center of the area. The is set to 4, which means that it is required for each sensor to forward its data to the CL within four hops. The figures also show the construction of CTs rooted at CLs for each algorithm.

The SPT-DGA constructs 15 routing trees for data collection as shown in Figure 6. The CLs are selected very close to the center of the sensing area in order to minimize the tour length. However, for the same sensors positions, the AT-BHA and FNF-BHA constructed 6 and 5 routing trees, respectively. The position of the CLs selected in the FNF-BHA is closer to the center of the sensing field than that in AT-BHA.

4.2. Varying Node Degree

We then vary the node degree in the network by varying the number of network nodes according to , where is the network area and is the node transmission range.

To study the effect of the node degree on the tour length, the tour of the mobile BS is calculated using the nearest neighbor algorithm (as shown in Figure 9 for our algorithms and the SPT-DGA algorithm). It can be seen that, under different , the tour length for AT-BHC and FNF-BHA is shorter than that for the SPT-DGA algorithm. This is because the FNF-BHC selects the minimum number of CLs considering the farthest nodes to the position of the BS while the SPT-DGA selects more CLs, which increases the length of mobile BS tour. The result also shows that the tour length slightly increases with the node degree in SPT-DGA. However, increasing the node degree reduced the tour length for the AT-BHA and FNF-BHA since that improves network connectivity and finding routing paths to the farthest nodes. This reduces the number of CLs, as shown in Figure 10.

Figure 11 illustrates the maximum number of nodes in the CTs with the node degree as a function of . The result shows that the number of nodes increases with the node degree since that increases the number of neighbors.

Figure 12 shows the maximum energy consumption of the CL for forwarding sensing data of a single sensor node to the BS. The result shows that the energy consumption slightly decreases with the node degree. In addition, the CL at FNF-BHA consumes less energy than other algorithms since the number of nodes at the CT of the FNF-BHA is more than the number of nodes at the CTs of SPT-DGA and AT-BHA as shown in Figure 11.

We study the distance the packet travels to reach the BS by calculating the distance between the sensor nodes. The distance between the farthest sensor node and the CL is shown in Figure 13. The result shows that the maximum distance is higher in SPT-DGA and FNF-BHA than in AT-BHA. This is because the expansion of CTs in AT-BHA depends on the settings of and hop count, while it depends on hop count only for the SPT-DGA and FNF-BHA algorithms.

Finally, we study the effect of load balanced algorithm on the distribution of the number of sensor nodes in the CTs. Figure 14 shows the histogram of the number of nodes in the CTs before and after the execution of the load balanced algorithm. The result shows that there is high occurrence of trees, with the number of nodes less than 20 nodes for the unbalanced FNF-BHA. However, the number of nodes is very well distributed for the balanced FNF-BHA.

5. Conclusion

In this paper, we dealt with the problem of data gathering in the mobile BS environment. We studied the trade-off between the relay hop count of sensor nodes and the tour length of the mobile BS. Two heuristic algorithms, AT-BHA and FNF-BHA, are proposed towards finding the shortest tour length for the mobile BS subject to bounded hop count. The AT-BHA selects adjacent CTs during tree construction to avoid partitioned nodes that increased the tour length. The FNF-BHA uses the farthest nodes from the BS in the construction of the CTs. Extensive simulations have been carried out to validate the efficiency of the proposed algorithms against SPT-DGA. The experimental results demonstrated that the proposed algorithms outperform the SPT-DGA significantly in terms of minimizing the BS tour length.

Data Availability

The data used in this study are generated via the simulation of the proposed algorithms. The proposed algorithms are provided and discussed within the article.

Conflicts of Interest

The authors declare that they have no conflicts of interest.