A topology control algorithm for autonomous underwater robots in three-dimensional space using PSO

Data collection from seabed by means of underwater wireless sensor networks (UWSN) has recently attracted considerable attention. Autonomous underwater vehicles (AUVs) are increasingly used as UWSNs in underwater missions. Events and environmental parameters in underwater regions have a stochastic nature. Sensors to observe and report events must cover the target area. A ‘topology control algorithm’ characterizes how well a sensing field is monitored and how well pairs of sensors are mutually connected in UWSNs. It is prohibitive to use a central controller to guide AUVs’ behavior due to ever changing, unknown environmental conditions, limited bandwidth and lossy communication media. In this research, a completely decentralized three-dimensional topology control algorithm for AUVs is proposed. It is aimed at achieving maximal coverage of the target area. The algorithm enables AUVs to autonomously decide on and adjust their speed and direction based on the information collected from their neighbors. Each AUV selects the best movement at each step by independently executing a Particle Swarm Optimization (PSO) algorithm. In the fitness function, the global average neighborhood degree is used as the upper limit of the number of neighbors of each AUV. Experimental results show that limiting number of neighbors for each AUV can lead to more uniform network topologies with larger coverage. It is further shown that the proposed algorithm is more efficient in terms of major network parameters such as target area coverage, deployment time, and average travelled distance by the AUVs.


Introduction
Underwater world has an enormous impact on human civilization as it highly affects climate change, food security, minerals and natural resources [1]. However, we still know very little about the underwater environment. Underwater Sensor Networks (UWSNs) provide a promising window of insight and observation that is expected to fill this void. The main mission of an UWSN is to monitor a target field and to detect events. Controlling topology characterizes how well a sensing field is monitored and how well each pair of sensors is mutually connected in WSNs [2]. Controlling topology has a direct impact on the design of wireless sensor networks. Several topology design methods have been proposed in the last decade to control the structures of 2D wireless networks. However, very few studies target design of topologies for 3D wireless sensor networks. The 3D environment introduces new challenges to topology design for UWSNs in terms of coverage, connectivity, and other constraints. The topology control algorithm proposed in this paper, attempts to address several of these constraints, namely distributed control, coverage and connectivity. Autonomous Underwater Vehicles (AUV) have been used in underwater missions. AUVs can function without tethers, cables, or remote control. They have a multitude of applications in undersea environments. Previous experimental work has shown the feasibility of relatively inexpensive AUV submarines equipped with multiple

www.SID.ir A r c h i v e o f S I D
Amiri et al./ Journal of AI and Data Mining, Vol 3, No 2, 2015. underwater sensors that can reach any depth in the ocean [3]. This vehicle could independently create an intelligent choice about its next movement location using its neighbors' local information and on-board intelligence without human guidance [4]. The benefits of exploiting a group of AUVs as opposed to single application, become evident when considering performance, costs, fault tolerance and re-configurability [5]. It is prohibitive to use a central controller to guide AUVs' behavior due to ever changing, unknown environmental conditions, limited bandwidth and lossy communication mediums [6]. Zou at el. [4] introduced a three-dimensional topology control mechanism based on the Genetic Algorithm (3D-GA) as a solution for the dispersion of AUVs operating in Underwater Sensor Networks. The goal of their algorithm is to maximize the coverage over a given 3D target field. The proposed algorithm in this paper extends the previous work by the use of Particle Swarm Optimization (PSO) algorithm and considers a global average neighborhood degree as an upper limit on the number of neighbors for each AUV. The proposed algorithm is completely decentralized and utilizes PSO for stepwise decision on AUVs movements. The PSO algorithm is employed to decide on and adjusts the AUV's speed and direction. In the fitness function, the global average neighborhood degree is used as the upper limit of number of neighbors of each AUV. Nodes with higher degrees are more likely to become bottlenecks in the communication graph. Lower node degrees reduce the traffic interference [7]. Therefore, adjusting a node degree can result in better AUV topologies. The algorithm is evaluated in terms of coverage percentage, deployment time and average traveled distance by the AUVs using the Aqua-Sim simulator [8]. Comparing with 3D-GA [4], we show that the algorithm enables AUVs to reach larger coverage with smaller node degrees. The rest of this paper is organized as follows: Section 2 provides a review on research about AUVs, PSO and other techniques used for topology control in three-dimensional environments, particularly UWSNs. In section 3, the motivation and goal of the research, the UWSNs model and PSO algorithm are introduced. In section 4, the proposed topology control strategy is introduced. In section 5, the results of simulation experiments are presented. Section 6 is devoted to conclusions and future work.

Related work
Many WSN applications utilize PSO for various tasks. PSO was introduced by Kennedy and Eberhart [9]. It is a simple and efficient optimization algorithm. It has been applied to address various issues in WSN such as optimal deployment, node localization, clustering and so on. Wang et al. [10] have proposed a virtual force co-evolutionary PSO for dynamic deployment of nodes for the enhanced coverage. Gopakumar et al. [11] have proposed PSO-Loc for localization of n target nodes out of m nodes based on the a priori information of locations of m-n beacons. The approach does not take into account the issues of localization of the nodes that do not have at least three beacons in their neighborhood. Wimalajeewa et al. [12] address the problem of optimal power allocation through constrained PSO. AUVs have been widely used in many commercial and military task s [13] [14], [15] . A behavior fusion method for the navigation of a multi-AUV system in uncertain environments with obstacle avoidance ability is presented [16]. In [17], multi-AUV system represents a new stateestimator capable of determining the 3D position of a fish tagged with small, off-the-shelf acoustic transmitters. An algorithm that guides AUVs to protect harbor entrances, underwater surfaces of large maritime vessels and other civilian, and military assets are introduced in [18]. Topology control for WSNs and UWSNs has been studied in different research. Li et al. [2], provided an overview of topology control techniques. It classified existing topology control techniques into two categories: network coverage and network connectivity. Network coverage describes how well the target field is monitored by the sensor network. It is divided into three categories: blanket coverage [19], barrier coverage [20] , and sweep coverage [21]. Once a sensor network is deployed, system operators must know the network condition from time to time. To this end, the plenty of networking services serves as a bridge between the network and system operators, such as flooding, data collection [22], [23], [24] information aggregation [25] and so on. The essence of those operations is to maintain good connectivities of pairs of communicating sensor nodes temporally and spatially. Thus, in the network connectivity, two types of mechanisms have been utilized to maintain an efficient sensor connectivity topology: power management mechanisms (i.e., the temporal control) [26], [27] and power control mechanisms (i.e., the temporal control) [28]. Urrea et al. [29] implemented dynamical system model for force-based genetic algorithm which could be used as a topology control algorithm to achieve a uniform deployment of autonomous mobile nodes over an unknown two-dimensional area. In the work of Kusyk et al. [30], a topology control algorithm that makes use of game theory and genetic algorithms for faster deployment of mobile nodes compared with FGA in a two dimensional environment is presented. Threedimensional topology control, compared to twodimensional approaches, has a wider range of applications especially for many commercial and military missions in underwater environments. Zou et al. introduced a three-dimensional genetic algorithm-based topology control mechanism (3D-GA) as a solution for the dispersion of AUVs operating in Underwater Sensor Networks [4]. The average neighborhood degree or mean node degree is considered in different papers [31], [32], [33]. Urrea et al. [32] introduced different GA applications for knowledge sharing bio-inspired mobile agents to obtain a uniform distribution of the nodes over an area. The main objectives are to obtain a uniform distribution over the given area, to provide the agents with a balanced number of neighbors, and to improve NAC. This article proposed an analytical model to calculate the mean node degree to be used in the fitness evaluations.

Prerequisites
In this section, we describe the major challenges in UWSN and the motivation and goals for our approach, and also briefly describe the PSO algorithm.

Challenges in UWSN
Some major challenges for the topology control in UWSNs are as follows [4]:  The communication among AUVs should be kept at minimum because of the limited available communication bandwidth.  The movements of AUVs are arbitrary. Thus, the network topology can have unpredictable changes.  Bit error rate when communicating among AUVs in underwater environments is much higher than comparable terrestrial distance communications. AUVs may experience down-time or limited communication ranges due to malfunctions or destruction from harsh underwater environments.

Motivation and goals
To monitor an underwater target area, AUVs should be uniformly distributed such that the maximum coverage is achieved. Each AUV can monitor a limited surrounding area by means of its sensor devices. In this paper, a sphere with radius R is considered as both the sensing and communication areas. The degree of an AUV is defined as the number of its neighbors, i.e. the AUVs are within its communication range. Figure  1 shows an example where AUVs protect a specific area. They can detect an unknown object in their sensing area (e.g., a sea mine) and will send the obtained information to a data collection point. Here, an AUV self-positioning approach is introduced to achieve the uniform distribution in the target area. There are three main objectives for the proposed algorithm.  The first objective is achieving maximal coverage of the target area.  The second objective is to keep the network connectivity among the AUVs by preventing the isolated AUV(s) in the network.  The third objective is limiting the upper bound of node degree to achieve larger coverage of the target area. In addition, nodes with a high degree have a high likelihood of becoming bottlenecks in the communication graph and lower node degrees reduce the traffic interference [7].

PSO Algorithm
Particle swarm optimization [9] is a heuristic global optimization method. It is inspired by natural life, like bird flocking, fish schooling and random search methods of evolutionary algorithms. It can be observed from the nature that animals, especially birds, fish, etc. always travel in a group without colliding. This is because each member follows the group by adjusting its position and velocity using the group information. Thus, it reduces individual's effort for searching of food, shelter, etc. [34]. PSO consists of a population (called a swarm) of candidate solutions (called particles). System is initialized with a population of random solutions. All the particles have a fitness value, which can be calculated using a fitness function. The fitness function in a PSO evaluates the relative goodness of the particles in each iteration. All the particles preserve their individual best performance (pBest). They also know the best performance of their group. They adjust their velocity considering their best performance and also considering the best performance of the best particle (gBest). The velocity and position of the particle are calculated according to (1) and (2). These equations are borrowed from [35]. The various steps of a PSO are depicted in the flowchart shown in Figure 2.

A r c h i v e o f S I D
In (1), v i k and x i k stand for the velocity vector and position of the particle i at time k respectively. pBest i k is the solution with the best fitness that particle i has obtained up to time k. gBest k is the solution with the best fitness among all particles up to time k. c1 and c2 are acceleration coefficients that represent the likelihood of the particle choosing its own solution or following the behavior of the swarm. Usually, c1 is equal to c2 and they are equal to 2. r1 and r2 are uniformly distributed random numbers in the range of [0,1] and these values are regenerated for each velocity update. ω is the inertia weight. The influence that the last speed has on the current speed can be controlled by inertia weights. According to experiments, ω is confined from 0.9 to 0.4 according to the linear decrease [35]. The position of the particle within the search space is iteratively updated by adding a velocity vector to the current position using (2).

Proposed method
In this section, a statistical analysis for approximating average neighborhood degree and the proposed topology control algorithm are introduced.

4.1.
Statistical analysis for average neighborhood degree A statistical analysis is described to obtain the average neighborhood degree of AUVs in a uniform distribution on the 3D target area. The objective is to approximate the optimum number of neighbors depending on the network density, communication range and environment size. The topology control algorithm uses this value as the upper limited number of neighbors of each AUV.
In the experiments, it is shown that limiting number of neighbors for each AUV can lead to more uniform network topologies with larger coverage of the target area. Consider two nodes located randomly in a 3D environment with volume V. The probability of one node being in the communication range of the other is defined as follows: The probability of a node having k neighbors in a region with volume V will then follow the binomial distribution shown in (4).
In (4), N is the number of nodes, k is number of neighbor and Pc is obtained from (3). Hence, the average number of neighbor nodes can be calculated as follows: To illustrate the concept, the average neighbor degree for 10-50 nodes with communication range [10m-20m] located in a 50*50*50 space, is plotted in Figure 3. This figure shows when the number of AUVs or communication range increase, the average neighbors degree also increase.

Topology control algorithm
In this section, we present the proposed topology control algorithm to achieve maximum and uniform distribution, while maintaining the network connectivity. The topology control algorithm proceeds in rounds. In each round, each AUV transmits its location and the number of neighbors to the nodes in its neighborhood. Based on this local information from the neighbors, each AUV executes one iteration of its local PSO (each AUV executes a version of the PSO independently). PSO generates the next movement locations that are more optimally situated. If it can not find a position to improve uniformity, the AUV remains in its current location. PSO is a swarm of particles. Each particle represents a potential solution composed of the next movement direction and speed of the vehicle. The fitness of each particle is computed. The AUV then selects the best solution in the current generation and performs the movement if fitness is improved; otherwise, the vehicle remains in its current position. This algorithm allows AUVs to adapt their movements while basing their decisions only on local information extracted from their surroundings. Thus, they do not use a centralized infrastructure.

Particles in PSO
As mentioned, each AUV can move freely in the three-dimensional space. Each particle has a velocity vector v= (Vx, Vy, Vz). Vx, Vy and Vz represent velocity in the x, y and z dimensions respectively. Therefore, a particle includes the next movement direction and speed of the AUV in a 3D Cartesian space. Initially, PSO randomly generates n candidate particles within the maximum travelled distance in one step (Dmax).
Without loss of generality, we selected Dmax to be equal to R in our implementation. The position of the particle within the target area is iteratively updated by adding the velocity vector to its position through using (1) and (2) in section 3.2.
In each generation if fitness is improved, the AUV selects the best particle in the current generation and performs movement to new position according to velocity vector of best particle. In this paper, c1 and c2 are both equal to 2 and the inertia weight is set to higher values at the beginning of search process, and reduced gradually in each iteration (0.9-0.4).

Fitness function
The PSO algorithm running on an AUV generates several candidate solutions in each iteration. Fitness function is used to evaluate the relative goodness of each solution. Here, the fitness function is based on the distance between an AUV and its neighbors, degree of neighbors and the average neighborhood degree. For each particle (solution), the new position of the AUV after one time unit adhering to the movement suggested by the best particle, can be calculated from (2). Assuming this new position for AUV and recomputing distances to its current neighbors, the partial fitness of the AUV relative to neighbor j (Fj) can be computed by (6). This is borrowed from [4].
In (6), R is the communication range of the AUV, Rint is an internal margin close to R, is the AUV's Euclidean distance to the j th neighbor, dj is the degree of the j th neighbor and Fmax is the maximum penalty fitness. In order to maximize the coverage of a limited number of AUVs, it is desirable to locate the AUVs as far as possible from each other. However, as the connectivity of the AUVs should be maintained and isolating AUVs is prohibited. Therefore, in the partial fitness function, neighbors positioned very close to the AUV will receive larger (worse) values compared with those located farther away (but still within communication range). The best partial fitness belongs to neighbors with distance between Rint and R illustrated in Figure 4. Total fitness F for each candidate solution in an AUV with degree d, is calculated as the sum of all the partial fitness values (7). If degree of the AUV is larger than a threshold, the solution is less

www.SID.ir A r c h i v e o f S I D
Amiri et al./ Journal of AI and Data Mining, Vol 3, No 2, 2015. appropriate. This penalty is considered to force uniform distribution of AUVs. d th , calculated in (8), is set to be one unit larger than the average neighborhood degree (dave) discussed in section 4.1.

Evaluation 5.1. Performance metrics
The performance metrics used for evaluation in this research are described below.
 Deployment time Total deployment (DT) time is defined as the duration from the initial placement of AUVs within an unknown space until convergence of the algorithm [4]. Total deployment time is an important performance metric for the evaluation of node self-positioning approaches in timecritical situations in civilian and military applications.
 Normalized Volumetric Coverage Normalized Volumetric Coverage (NVC) defines the amount of space covered by vehicles with respect to the size of the total deployment space [6] . We define that a point p (xp, yp, zp) is covered by the i th AUV located at (xi, yi, zi) if their mutual distance is less than the communication range R as declared in (9).
NVC is the ratio between the volume of the region covered by AUVs and the total target space. The percentage of the space covered by all the AUVs is given in (10). Vi is a region covered by i th AUV and V is the volume of the target space.
NVC is a positive real number with maximum value of 1. When NVC is 1, the space is completely covered by the AUVs.
 Average Travelled Distance The average travelled distance by each node is related to the required energy for its movement [36]. Thus, one important metric assessing performance of node self-spreading algorithms is ATD. Since movement is a highly powerconsuming operation, reducing the traveling distance for each node is an important task. This task can significantly extend the lifespan of a network [37]. Let ( 0 , ) denote the total distance traveled by the i th AUV up to time t. We define ATD (t) as the average distance traveled by nodes until time t as (11). (11)

Experimental results
We evaluate performance of our algorithm by implementing the simulations in the Aqua-Sim simulator. This simulator is developed on the basis of NS-2 for UWSNs. In what follows, we consider several settings in which a team of AUVs enters an unknown geographical space. For all settings, AUVs are initially deployed randomly in the environment. The approximation value of coverage with respect to the number of AUVs is examined. In the next part, the performance of the algorithm with and without the degree bound is examined. When degree is not bounded, the first two conditions of (7) are combined in the first condition and dth is ignored. Then, the impact of reducing mobility of AUVs in each step is examined. In the last part, performance of the algorithm is compared with 3D-GA [4]. The parameters of the experiments are shown in Table 1.

Coverage
In this experiment, the goal is to find the approximate coverage in space with respect to number of AUVs. Number of AUVs is varied from 14 to 30. Each experiment is repeated ten times and the average NVC is reported in Figure  5. When the number of nodes is increased, NVC grows and with at least 28 AUVs, 99 percent of the space is covered. In the next experiments, we will use 28 AUVs in the environment. The internal communication margin 9 Figure 5. NVC versus number of AUVs.

The effect of bounding the node degrees
In this experiment, 28 AUVs are considered with two approaches of bounded and unbounded node degrees. Figure 6 and 7 present the results of the two approaches, respectively.  In Figure 8, the percentage of NVC respect to time step is shown. With the limited node degree, the percentage of NVC is 99.67% and with unlimited degree, value is 96.10%. Thus, by penalizing the fitness based on the node degree we can improve NVC in space. Figure 9 represents ATD with respect to time steps. Deployment time can also be achieved from this diagram. When limiting node degree the value of ATD is 54m and deployment time is 38s. Without limiting node degree ATD is 40.24m and the deployment time is 33s. The Result shows when limiting node degree ATD and DT will increase. Therefore, a tradeoff exists between shorter travel with faster deployment and maximal coverage.

Impact of reducing AUV's movement
Results from previous experiment show that with limiting node degrees, ATD increases. Since movement is a highly power-consuming operation, reducing the traveling distance for each node is an important task. Here, we propose a method for reducing ATD, in which running PSO and changing location in each step is performed with probability p in each AUV. Three scenarios are considered to compare with the impact of reducing AUV's movement. In the first scenario, node degrees are not bounded (scenario 1), in the second experiment they are bounded (scenario 2), and in last scenario degree of AUVs is bounded and in each step AUVs move with p=0.7 (scenario 3). This value is obtained empirically.
For each scenario, we repeated the experiment ten times, and the results are shown in Table 3-4. For each scenario, the average of NVC, ATD and DT are displayed in Table 5. Scenario one has least travelled distance and deployment time, but the final coverage is less. Comparing scenarios two and three, results show that when reducing AUV's movement, the average travelled distance decreases considerably, though NVC slightly decreases. However, the deployment time also increases to some extent. Thus, in situations where energy is more important than time, the strategy of scenario 3 can be used. As previously noted, a tradeoff exists between shorter travelled distanced with faster deployment and maximal coverage.

Comparison with 3D-GA
In this experiment, we compare our algorithm using the three scenarios described before, with 3D-GA [4]. We implemented 3D-GA in Aqua-Sim. 3D-GA is repeated (with parameters of Table  1) ten times and the average NVC, ATD and DT are presented in Table 6. Results show 3D-GA has smaller NVC and DT after convergence and DT with respect to all the three scenarios of our algorithm (Table 5) but AUVs travel longer to converge with respect to scenarios 1 and 3 and they travel shorter with respect to scenario 2. At last we consider 4 experiments with scenarios 1-3 and 3D-GA. The diagram of NVC and ATD for these experiments is shown in Figure 10 and Figure 11, respectively. (In 3D-GA all AUVs are initially deployed along the x-axis, so initial value of NVC for 3D-GA is smaller than our methods.)

Conclusion and directions for future research
In this paper, we proposed a three-dimensional PSO algorithm to operate as a decentralized topology control mechanism for AUVs. The proposed algorithm does not require a central control unit. It runs autonomously at each AUV to adjust its speed and direction. AUVs actively collect information from their neighbors to decide on their location. We also introduced a fitness function, which tends to bind the degree of nodes based on average neighborhood degree. This enhanced capacity is used to provide a nearoptimum number of neighbors depending on the network density. The method is quite capable of establishing an efficient topology. It has been revealed by a performance analysis in terms of metrics such as average coverage, travelled distance and deployment time. The experimental results based on simulation shows that by limiting AUV's degree, spatial coverage is increased. This consequently reduces the traffic interferences. It is achieved at the price of increased travelled distance and coverage time. Therefore, a tradeoff exists between shorter travel distances with faster deployment, and maximal coverage. By applying the proposed method travelled distance decreases, coverage time has significantly been increased. Hence, this strategy establishes a significant tradeoff between energy consumption and coverage time. Enhancing the PSO fitness function through introducing the impact of energy consumption in fitness remains as a direction for future research. Another research direction should be focused on assessing the impact of removal of AUVs due to hostile activities or malfunction of some AUVs.