Underwater Sensor Network Deployment Algorithm Using Density-based Spatial Clustering of Applications with Noise

Underwater sensor networks have received extensive attention owing to their promise for application to marine exploration, submarine navigation, and pollution monitoring. In an open ocean underwater environment, the targets to be monitored are undefined. Therefore, it is necessary to investigate how sensor nodes adjust their positions autonomously in accordance with the changes in the environment and targets to achieve optimal monitoring quality. We propose a fish-swarm-inspired underwater sensor network deployment algorithm using densitybased spatial clustering of applications with noise (DBSCAN). Firstly, inspired by the operation mode of an artificial fish-swarm system, sensor nodes autonomously cover all the events by simulating physiological behaviors such as swarm, follow, and prey. Secondly, considering the complexity of the underwater environment and also to reduce the number of nodes participating in the movement and to avoid the blind movement of nodes, the DBSCAN model is introduced to achieve the sharing of sensed information among the nodes that communicate by the singlehop or multihop mode, thereby enhancing the global search ability of nodes. Finally, a large number of experiments are carried out to evaluate the performance of the proposed algorithm. The results show that the proposed algorithm can effectively solve the problem of underwater sensor deployment, and has the advantages of fast convergence and strong scalability.


Introduction
Underwater sensor networks are widely used for marine tactical reconnaissance, early warning of disasters, marine exploration, and submarine navigation, and therefore are attracting increasing attention. (1,2)By mounting sensors on an autonomous underwater vehicle or underwater mobile device, an underwater mobile sensor node is formulated to perform a task underwater.A reasonable and effective sensor node deployment can significantly reduce the time taken to construct a sensor network and quickly cover the target area.It can also prolong the network life and adapt to the changing topology through coordinated control.
In an underwater sensor deployment scheme, nodes are deployed in an underwater threedimensional space to achieve a stereoscopic perception of the monitored area.The existing three-dimensional underwater sensor deployment schemes can be divided into two types.8)(9)(10) In the nonuniform coverage scheme, the concept of "event" is explicitly proposed.Thus, the purpose of node deployment is no longer to uniformly cover the monitored area, but to cover the events.Such node deployment is more practical and effective, and also conforms to the characteristics of the sparseness of underwater sensor networks.In this paper, we focus on sensor node deployment for nonuniform coverage in underwater three-dimensional space and the design of a distributed underwater sensor network node deployment algorithm based on an artificial fish swarm.Because of the characteristics of adaptive self-deployment and a distributed operation mode, the proposed algorithm is suitable for complex and harsh environments, such as mountains, oceans, and deep sea trenches.At the same time, owing to the limited energy of nodes and to avoid the blind movement of nodes, we propose a density-based spatial clustering of applications with noise (DBSCAN) algorithm to cluster the nodes.Satisfactory deployment results are achieved by combining the DBSCAN algorithm and the intelligent optimization algorithm of an artificial fish swarm.
The rest of this paper is organized as follows.In Sect.2, we describe some related work.Problems are described and a model is established in Sect. 3 to help understand the algorithm presented in this paper.A solution for the problem is proposed in Sect. 4. In Sect.5, the simulation experiments and analysis of results are presented.Finally, conclusions are given in Sect.6.

Related Work
For node deployment with nonuniform coverages, many achievements have been made at home and abroad.Wang et al. (11) proposed an optimized artificial fish swarm algorithm (OAFSA), where the maximum coverage rate is obtained by simulating the prey and follow behaviors in artificial fish.The optimized OAFSA effectively improved the coverage performance compared with the traditional artificial fish algorithms, but the deployment in complex environments (such as those with obstacles) was not considered in this research.Lian et al. (12) introduced four weighting indices (i.e., effective coverage rate, high monitoring probability range ratio, spatial overlap ratio, and resource utilization) to adjust the fitness function to improve the effective coverage rate of the sensor network.However, the algorithm had slow convergence, and as the population size increased, the computational complexity of the algorithm increased exponentially.Aitsaadi et al. (13) considered the difference in the distribution density of events in the monitored waters and proposed an algorithm for nonuniform node deployment by the mesh representation method.This algorithm could help the network achieve effective monitoring for events, but it was difficult to obtain a higher network connectivity rate.To effectively cover the events in the monitored waters, Du et al. (14) proposed particle-swarm-inspired underwater sensor self-deployment (PSSD), in which particle swarm optimization and congestion degree control are combined to effectively solve the network coverage problem.The complexity was low, the convergence speed was high, and an effective node distribution could be realized.However, this PSSD algorithm only considered the coverage of the network for events, and it was also difficult to obtain a high network connectivity rate.In addition, this kind of algorithm has some disadvantages, for example, too many nodes participate in the movement and nodes may move blindly.Because of the limited energy of nodes and high energy consumption in an underwater environment, the nodes will fail owing to the rapid consumption of energy, which shortens the life of the sensor network.
The above methods have achieved good results in different aspects of underwater sensor node deployment, but cannot completely meet the needs of underwater sensor network applications.The main problems are as follows.Most of the methods are centralized optimization methods, making them difficult to implement with distributed nodes; the nodes are deployed for certain events, and it is difficult to adaptively adjust node deployment to ensure a satisfactory monitoring quality for uncertain events in an open-ocean underwater environment or for events that dynamically change depending on external factors such as ocean currents.For the above problems, inspired by the operation mode of the fish swarm system, a distributed and achievable underwater sensor node deployment algorithm is proposed in this paper.By simulating fish swarm behaviors such as prey, the sensor nodes autonomously cover events.The combination of the proposed algorithm and the DBSCAN algorithm greatly improves the convergence speed, avoids the blind movement of nodes, and prolongs the life of the underwater sensor networks.

Problem description
Assuming that N sensor nodes are deployed in the monitored area A and s i represents the ith node in the network, then the set of underwater sensor nodes is S = {s 1 , s 2 , ..., s N }.Assuming that a node, s i , has the ability to sense, communicate, and move, then , , , where 0 s i r ≥ is the sensing radius of s i , 0 c i r ≥ is the communication radius of s i , and l i ≥ 0 is the maximum moving step length of the node.It can be seen that, in a homogeneous network, all nodes have the same attributes, namely, s s i r r = , c c i r r = , and l i ≥ l (1 ≤ i ≤ N).The dynamic point of interest e is referred to as an event, and the sensor node can detect the event and communicate with the neighbor node to obtain state information (the number of covered events) of the neighbor node.The task of a node is to cover the event and collect information about the event.

Coverage probability model
It is assumed that the monitored area A is a three-dimensional cuboid space (m × n × p), and that the coverage model of each node is a sphere with a sensing radius of 0 s i r ≥ .The communication range is a sphere with a radius of 0 c i r ≥ .To ensure network connectivity, the communication radius is set to be greater than or equal to twice the sensing radius, (15) i.e., where (x i , y i , z i ) is the coordinate of the event e i and (x j , y j , z j ) is the coordinate of the node s j .In the monitored area A, for i e A ∀ ∈ , the probability of the node s j covering the event e i is given by (16) ( ) where r is the radius of the self-confidence circle of the node; λ is the attenuation factor of sensing and is the physical property of the node.Then, in the monitored area A, the number of events covered by the node s j is expressed as When the event e i is not within the sensing range of any node in the node set S, the event e i can be considered to be uncovered for the entire node set S. Therefore, by using multiple sensor nodes to simultaneously detect the event e i , the joint coverage probability of points is given by

Basic fish swarm algorithm
An artificial fish swarm algorithm (AFSA) is an optimization algorithm that simulates the behavior of a fish swarm.Using the behaviors of a fish swarm, such as prey, cluster, and follow, the global optimal solution can be found rapidly.The AFSA is a kind of swarm intelligence stochastic optimization algorithm.Similarly to the particle swarm and ant colony algorithms, the AFSA also has a strong global search ability and is insensitive to initial value parameter selection, robust, and easy to operate.
Assuming that, in an n-dimension search space, there are N artificial fish that make up a swarm.The state of each artificial fish can be expressed as X = (X 1 , X 2 , ..., X N ), where X i (i = 1, 2, ..., N) is the variable to be optimized.The food concentration for the artificial fish at the current position is expressed as Y = f(X), where Y is the objective function; the distance between two artificial fish is expressed as ; Visual represents the sensing range of one artificial fish; Step is the step length of artificial fish movement; δ is the congestion degree factor; tryNum represents the maximum number of trials of an artificial fish for each prey.
The artificial fish uses its vision to sense the external environment, as shown in Fig. 1.X i is the current position of the artificial fish; Visual (equivalent to the communication radius) is the visual distance; X h is the visual position at a certain moment.If a position within the field of view is better than the current position, the artificFial fish will go further in this direction to the next position X next ; otherwise, it continues to wander within the field of view.
The process of a mobile node in a sensor network aimed at greater network coverage is similar to the follow and prey behaviors of artificial fish.The food concentration at the location of an artificial fish can be regarded as the network coverage under the current state.Usually, fish will stay in a place rich in food, so the global optimal behavior can be found by simulating the characteristics of fish, which is the basic idea of the AFSA.The basic behaviors of artificial fish are as follows (1) Prey behavior: Fish swim randomly to search for food.Assuming that X i is the current state of an artificial fish, a state X j is randomly selected within its visual range and Y is the food concentration (objective function).The larger the value of Visual, the easier it is to find the convergent global extremum.

( )
If Y i < Y j , the artificial fish will go further in this direction; otherwise, it randomly selects a state X j and determines whether the condition is met.If the condition is still not satisfied after repeating it tryNum times, it moves one step at random.When the value of tryNum is small, the artificial fish can swim randomly so that it can escape the local extremum.
(2) Cluster behavior: Fish naturally gather together during movement.Assume that X i is the current state of artificial fish, X c is the location of the swarm center, n f is the number of companions in the current neighborhood (d ij < Visual), and N is the total number of fish.The conditions Y c > Y i and n f /N < δ indicate that the swarm center has more food (high fitness function value) and is not very congested, then fish X i will go further toward the center.
Otherwise, prey behavior is performed.
(3) Follow behavior: When one fish finds that food is abundant in the current place, other fish will quickly follow.Assuming that X i is the current state of the artificial fish, it finds that a companion X j is nearby (d ij < Visual) where Y j is large.If Y j > Y i and n f /N < δ, it means that companion X j has a higher food concentration (high fitness function value) and the surrounding environment is not very congested, so fish X i will go further toward companion X j .
It should be noted that the application of the cluster and follow behaviors of a fish swarm can make the node move closer to the fish with high food concentration.At the same time, in order to maximize the coverage rate, the fish swarm should maintain good formation, which can be controlled by the congestion degree factor δ and fish spacing.

Description of DBSCAN algorithm
The DBSCAN clustering algorithm can find clusters of arbitrary size and arbitrary shape, and effectively identify outliers, (17) and is insensitive to the order of input objects.Because of these advantages, the DBSCAN algorithm is widely used in many fields.For a d-dimensional data set Ω (i = 1, 2, ..., d), the definition in DBSCAN is as follows. (18)efinition 1 E ps neighborhood of data point ρ: a circular area with radius E ps and centered on point ρ in the data set.The set of points contained in the area is denoted as Definition 2 Density of data point ρ: the number of data points in the E ps neighborhood of data point ρ in data set Ω.
Definition 3 Core point: If the density of data point ρ is greater than or equal to MinPts, it is called the core point, where MinPts is a threshold specified by the user.Definition 4 Boundary point: Data point q is not the core point, but it is in the E ps neighborhood of another core point ρ; thus, it is called a boundary point.
Definition 5 Noise point: Other points in the data set that are neither core points nor boundary points are called noise points.
Definition 6 Directly density-reachable: Let data point q be the core point.As long as data point ρ belongs to the E ps neighborhood of data point q, data point ρ is said to be directly density-reachable from data point q.
Definition 8 Density-connectable: In data set ρ, for a given E ps and MinPts, if there is a point o capable of making data points ρ and q density-reachable from data point o, data point ρ and data point q are said to be density-connectable.
To facilitate the understanding of the above concepts, Fig. 2 shows the schematic diagram of the DBSCAN algorithm when MinPts = 4.The D point and other red points in the figure are the core points, because the area around these points within the E ps radius contains at least 4 points (including the point itself).Because they are mutually reachable, they form a cluster.Point B and point C are not core points but can be reachable from point D (through other core points) and therefore belong to the cluster.Point G is neither a core point nor a directly reachable noise point.
For the given E ps and MinPts, a summary of the flow of the DBSCAN algorithm is as follows.Select any undivided data object to determine whether it is a core data object, and if so, find all data objects that are density-reachable from it and mark these data objects as a cluster; if not, the noise judgment is performed on the data.If it is a noise point, it is marked.If not, the object is not processed.The above steps are repeated until all data objects are divided.According to repeated experiments, the parameter E ps is equal to r c in this research, and its role is to cluster the nodes that can realize data transmission by single or multiple hops in the underwater sensor networks.At the same time, MinPts is set to 2, indicating that the cluster should contain at least 2 nodes.Figure 3 shows the clustering results of 30 randomly deployed nodes when E ps = 50 and MinPts = 2.As can be seen from the figure, 30 nodes are clustered into 6 categories, where the black nodes are noise points, i.e., isolated states.In addition, from Cluster #1 to Cluster #5, the data transmission between the nodes in each cluster can be realized in the single-hop or multihop mode.

Proposed algorithm
In underwater node deployment, a sensor node is equivalent to the artificial fish in AFSA inspired by the operation mode of an artificial fish swarm, and an event is equivalent to food.The process of sensor nodes going forward to events is equivalent to the process of artificial fish searching for food.However, considering that the single use of the fish swarming algorithm will cause too many nodes to participate in the movement and that the nodes are moving blindly, the nodes will fail rapidly owing to the rapid exhaustion of energy, which will shorten the life of the network.Therefore, faced with the complexity of an underwater environment, we propose a fish-swarm-inspired underwater sensor deployment algorithm based on DBSCAN, where the nodes are clustered in the process of artificial fish updating their states to realize the sharing of sensed information within the fish swarm.Therefore, the artificial fish are guided to migrate to a better state, thus speeding up the convergence of the optimized deployment of artificial fish.
Definition 9 Congestion degree factor: In the monitored area A, the allowed congestion degree at node s i (1 ≤ i ≤ n) is defined as where ψ is a constant indicating the expected coverage of a single event and N e (s i ) indicates the number of events covered by node s i .Initialization: n nodes are randomly scattered in the underwater monitored area A. The DBSCAN clustering algorithm is performed as described in Sect 4.2.Then, node s i (1 ≤ i ≤ n) belongs to cluster C z (s i ), where card(C z (s i )) indicates that cluster C z (s i ) contains n nodes.Next, node s i performs the following actions in accordance with its own state and those of neighbor nodes.
(1) Prey behavior: If card(C z (s i )) = 0, node s i is in an isolated state, and prey behavior is performed.Assuming that the current position of the node is X i , and within its maximum moving step length l, it randomly moves to a new position X next .
( ) rand(l) is a random number between 0 and l, and T is an arbitrary unit vector.If the number of events covered by node s i increases, prey behavior is successful; otherwise, a new location is again randomly selected.
(2) Follow behavior: If card(C z (s i )) > 1, the optimal node s opt is selected in the cluster C z (s i ).If node s opt covers more events and is less congested, i.e., N e (s opt ) ≥ N e (s i ) and s co N (s opt ) < σ(s opt ), then node s i goes further in the direction to the position of s opt , i.e., where X i and X opt represent the position vectors of s i and s opt , respectively.l′ is the moving step length expressed as otherwise If N e (s i ) increases, the follow is successful; otherwise, it fails.
(3) Cluster behavior: If card(C z (s i )) > 2, cluster behavior is performed.Firstly, determine the center locations s c of the nodes in cluster C z (s i ).

( ) (
) ( ) At the same time, the average number of covered events of s c is given by ( ) and the number of neighbor nodes is given by ( If there are more covered events and less congestion at s c , i.e., N e (s c ) ≥ N e (s i ) and ( ) ( ) ), then the node s i goes further in the direction toward the position of s c , i.e., where X i and X opt represent the position vectors of s i and s opt , respectively.l′ is the moving step length expressed as otherwise If N e (s i ) increases, the cluster behavior is successful; otherwise, it fails.On the basis of the above discussion, a complete fish-swarm-inspired underwater sensor deployment algorithm based on DBSCAN is presented, as shown in Algorithm 1. Algorithm 1: Fish-swarm-inspired underwater sensor deployment algorithm based on DBSCAN 1: Initialize the maximum number of iterations N max and the number of trials in the prey behavior N try ; 2: Initialize the nodes S = s 1 , s 2 , ..., s n ; 3: while not (N max ) do 4: for all s i i s S ∈ S do 5: Obtain the node cluster: C i ← dbscan(S, ε, λ); 6: The number of events covered by node s i : N e (s i ) 7: if N e (s i ) > 0 then 8: Move to the center of the covered event 9: Find optimal neighbor node s opt in cluster C z (s i ) where node s i is located; 12: Find the center positions of all nodes in cluster C z (s i ) where node s i is located; 13: if N e (s opt ) ≥ N e (s i ) and ( ) ( )

Simulation Experiment and Analysis
The PSSD algorithm is a typical nonuniform deployment algorithm for an underwater wireless sensor node network.To evaluate the performance of the proposed algorithm, the PSSD algorithm was used for comparison, in terms of network coverage rate, total moving distance of nodes, and running time.To eliminate the random effects of the experiment, 30 experiments were conducted and their averaged data were used.The parameter settings of the proposed algorithm are shown in Table 1.
The three-dimensional monitored area was 200 × 200 × 200 m 3 ; 40 target events were randomly distributed in the water, and the size and position were randomly configured; six sensor nodes were randomly deployed.The self-organized deployment of sensor nodes was achieved by the algorithm proposed in this paper.The results of running the algorithm are shown in Fig. 4, where (a) shows the initial state of node deployment and (b) shows the result of running the proposed algorithm.The blue stars indicate the event distribution, the red dots indicate node positions, and the sphere indicates the three-dimensional sensing range of the node.It can be seen that the proposed algorithm can track the event distribution well and achieve effective coverage of all events.
Figure 5 shows the average coverage rates of the proposed and PSSD algorithms with the number of iterations.In the figure, the abscissa represents the number of iterations and the ordinate represents the average coverage rate of 30 experiments.It can be seen that, under the same initial state, the proposed algorithm achieves not only a higher network coverage rate, but also a full coverage of events after a few iterations.Furthermore, the convergence is faster.Compared with the PSSD algorithm, the clustering of nodes by DBSCAN enables the proposed algorithm to overcome the disadvantage of the blindness of the random search by the traditional fish-swarm-inspired algorithm.Figure 6 shows the total moving distances of nodes for the proposed and PSSD algorithms with the number of iterations.It can be seen that, when the number of iterations is the same, the proposed algorithm can greatly reduce the total moving distance of nodes compared with the PSSD algorithm, thereby saving node energy and prolonging the network life.The main reason behind this phenomenon is that information sharing between nodes that can realize data transmission in the single or multihop mode is achieved with the help of the DBSCAN algorithm, thus improving the global sensing ability of the distributed fish swarm algorithm, avoiding blind movement, and reducing energy loss during node movement.Above, the deployment of 40 target events and 6 sensor nodes was analyzed.However, to obtain accurate information, a large number of sensor nodes (far more than 6) are usually deployed in the monitored area.Therefore, below, we will consider the effect of the change in the number of nodes on the performance of the proposed algorithm.Table 2 shows the average moving distance of nodes for the number of nodes from 6 to 30.It can be seen from Table 2 that, as the number of nodes increases, the average moving distance of nodes decreases to varying extents, but compared with the PSSD algorithm, the proposed algorithm shows a clearer decreasing trend.This is because as the number of nodes increases, the number of nodes participating in the sharing of sensed information through the single or multihop mode also increases, whereas the PSSD algorithm mainly makes decisions by sensing the information of nodes within the communication range.In other words, the proposed algorithm is better at sensing global information and then finding the location of the target event.As a result, fewer nodes participate in the movement, and the nodes are no longer moving blindly.Therefore, the total moving distance of the nodes is reduced.
Table 3 shows the average running time for the number of nodes from 6 to 30.It can be seen from the table that, as the number of nodes increases, the running times of the two algorithms are extended to varying extents.Compared with the PSSD algorithm, the proposed algorithm has a longer running time when the number of nodes is the same.This is mainly because each node must analyze the sensing state of the nodes in its cluster before making a decision and the processing time will increase as the number of nodes in the cluster increases.Therefore, in terms of energy consumption, the energy consumed by node movement is much greater than that by data transmission.Moreover, the running time of the proposed algorithm is within the allowable range.Therefore, the effectiveness of the algorithm proposed in this paper is verified.

Conclusions
We proposed a fish-swarm-inspired underwater sensor deployment algorithm based on DBSCAN.By simulating the three behaviors of a fish swarm (prey, follow, and cluster), nodes autonomously tend to the area where events are located to achieve the full coverage of all events.At the same time, to reduce the number of nodes participating in the movement and avoid the blind movement of nodes, DBSCAN clustering analysis is performed to achieve the sharing of sensed information among the nodes that can realize data transmission through the single-hop or multihop mode, thereby enhancing the global search ability of nodes.A large number of experiments were carried out.The results showed that the proposed algorithm has strong tracking ability and can achieve a high network coverage rate.In addition, compared with the PSSD algorithm, the proposed algorithm has the following three advantages: (1) the node has strong global sensing ability and can track target events rapidly; (2) the disadvantages of too many nodes participating in the movement and the blind movement of nodes are avoided, which effectively solves the energy consumption problem caused by the excessive movement of the nodes; (3) it exhibits distributed deployment and strong scalability.Further efforts are expected to be made on solving the problem associated with the fully connected network.

Fig. 1 .
Fig. 1.Schematic diagram of the visual range of artificial fish.

Fig. 4 .
Fig. 4. (Color online) Result display of self-organized deployment.(a) Initial state and (b) result of running the proposed algorithm.

Fig. 6 (
Fig. 6 (Color online) Comparison of total moving distances of nodes.
, then the event s j is covered by the node s j .d(e i , s j ) is given by

Table 2
Average moving distance of nodes for the number of nodes from 6 to 30.

Table 3
Average running time for the number of nodes from 6 to 30.