1. Introduction
With the rapid advances in the technologies such as sensors, micro-electro-mechanical-systems (MEMS), wireless communication and embedded systems, the wireless sensor networks (WSNs) have been widely used in the applications like environment monitoring, military surveillance, industry or agriculture production, traffic control and heath care [
1,
2]. As the application extension of the conventional terrestrial WSNs, the underwater wireless sensor networks (UWSNs) consisting of nodes capable of sensing underwater information, processing information data, and communicating through underwater acoustic signals are a kind of monitoring system having the characteristics of acoustic signals as communication medium, 3D network structure, and limited node energy that is difficult to compensate [
3,
4,
5].
When UWSNs are applied to detect underwater disaster or underwater military actions or to finish other similar tasks, the system must have excellent real-time monitoring, and all the nodes must be able to communicate with the sink node to guarantee full network connectivity [
6]. Optimal deployment for UWSNs involves adjusting the locations of the nodes to improve network coverage and minimize energy consumption during the process, while fully considering the characteristics and requirements mentioned above. Based on the assumption for node mobility, the deployment algorithms for UWSNs can be divided into three categories [
7], namely, static deployment, limited mobility deployment, and free mobility deployment. For static deployment, nodes cannot move after being manually deployed in the predetermined locations [
8]. For limited mobility deployment, nodes can move in-depth and adjust their depth if necessary [
9]. For free mobility deployment, nodes can freely move in all directions [
10].
In recent years, some scholars studied the deployment algorithms for UWSNs based on free mobility deployment. Xia
et al. [
11,
12] proposed the fish-inspired or particle swarm inspired UWSNs deployment algorithms. By simulating the behaviors of fish or particles and introducing the crowd control, the proposed algorithms could drive nodes to cover the events and match the distribution of sensors with that of events. However, this kind of algorithm only considered the network coverage rate and ignored the network connectivity rate. Liu
et al. [
13] studied the redeployment problem of nodes moving in the way of 3D random walks. In their work, the mobility of nodes caused by the water during the operation of UWSNs was considered and described using the 3D random walk model. They proposed two methods,
i.e., adding new nodes and moving redundant nodes to improve the network coverage rate. However, this kind of algorithm also did not consider the network connectivity rate. Li
et al. [
14] proposed the 3D virtual forces deployment (TVFD) algorithm. They modified the traditional 2D virtual forces algorithm [
15] and applied it to the 3D case. The 3D algorithm proposal could be applied to the underwater 3D environment and improve the network coverage rate, as well as the network connectivity rate. However, this kind of algorithm could not guarantee full network connectivity by having network connectivity rate of 1, although this rate could be largely improved. Furthermore, all the above-mentioned algorithms ignore the optimization of communication and movement energy consumption. The energy of nodes is limited, and nodes are difficult to recharge. Thus, premature death of the node ensues, thereby affecting network lifetime.
As mentioned above, existing deployment algorithms for UWSNs consisting of freely mobile nodes cannot improve the network coverage rate under the premise of ensuring the full network connectivity and do not optimize the communication and movement energy consumption during deployment. Therefore, we propose a node deployment algorithm based on CDS (DBCDS). After nodes are randomly scattered in the 3D monitoring underwater space, nodes disconnected to the sink node are required to move toward the sink node until full network connectivity is achieved. The sink node then performs centralized optimization to determine the CDS of the network and continuously adjusts the locations of the dominated nodes. The network coverage rate can be improved using this method based on full network connectivity.
Compared with the existing deployment algorithms, the contributions of this work are as follows:
(1) The proposed algorithm is based on the CDS, and this can improve the network coverage rate under the premise of ensuring full network connectivity.
(2) The proposed algorithm can decrease the number of communication times and the movement distance during deployment, thereby optimizing the communication and movement energy consumption during deployment.
The rest of the study is organized as follows: in
Section 2, the related works about the node deployment problem in the WSNs and UWSNs are elaborated. In
Section 3, the models, definitions and preliminaries involved in the DBCDS algorithm are formally defined. In
Section 4, the problem studied and the corresponding DBCDS algorithm are presented in detail.
Section 5 provides the simulation evaluation, and
Section 6 concludes the study.
2. Related Works
As the prime and key aspect in the WSNs design, the node deployment is not only closely related to the network monitoring quality, but also influences the follow-up protocols and algorithms such as node localization, network routing, and time synchronization [
16]. For the WSNs node deployment problem, the existing algorithms can be classified into two categories: random deployment and deterministic deployment, which has attracted much attention because of its better monitoring quality compared with the former. The deterministic deployment algorithms can further be classified into four kinds based on the following mathematical approaches: computational geometry (CG), artificial potential field (APF), genetic algorithms (GA), and particle swarm optimization (PSO) [
17]. Wu
et al. [
18] proposed a centralized and deterministic node deployment based on the DT-Score (Delaunary Triangulation-Score), aiming at maximizing the coverage of a given sensing area with obstacles. Zou
et al. [
15] proposed the virtual forces (VF) algorithm to improve the 2D network coverage rate after the initial node deployment, where a combination of attractive and repulsive forces were used to determine virtual motion paths and the rate of movement for the randomly-placed sensors. Jourdan
et al. [
19] proposed the multi-objective genetic (MOG) algorithm for the given number of sensors optimal deployment in the 2D flat region, aiming at maximizing the area coverage and the network lifetime. Kukunuru
et al. [
20] proposed a node deployment algorithm based on the particle swarm optimization, and the purpose of their work is to achieve the maximum coverage with the minimum number of nodes on the 2D area by minimizing the distance between the neighboring nodes.
However, owing to the differences of application environment and demands, the UWSNs have many different characteristics with the conventional terrestrial WSNs. Therefore, the node deployment algorithms for the conventional terrestrial WSNs cannot be applied directly to the UWSNs. Many researchers try to design the proper node deployment for the UWSNs. As is mentioned in
Section 1, the node deployment algorithms for UWSNs can be classified into static deployment, limited mobility deployment, and free mobility deployment. For static deployment, Pompili
et al. [
21] proposed 2D and 3D UWSN structures, and performed a deep mathematical analysis on node deployment on the basis of these two structures. Besides, they studied the robustness of the sensor network to node failures, while providing an estimate of the number of required redundant sensors. Liu [
22] proposed a UWSN node deployment algorithm by determining and selecting the best cluster shape after partitioning the monitored region into layers and clusters. In order to save the energy consumption and prolong the network lifetime, only the cluster-head in every cluster is kept alive for sensing and communicating. Once the cluster-head depleted its energy, a new cluster-head within the cluster would wake up and replace the old one. However, there was no description about how to keep time synchronization when waking up a new cluster-head to maintain full network coverage and connectivity. For limited mobility deployment, Akkaya
et al. [
23] proposed a distributed self-organized node deployment algorithm, which reduced overlapped coverage by adopting the graph coloring idea. Nevertheless, this algorithm emphasized on increasing network coverage rate and neglected network connectivity rate improvement. Hence, Senel
et al. [
24] put forward another distributed self-organized node deployment algorithm. It considered how to improve the network connectivity rate and maximized the network coverage rate under the premise of full network connectivity. For free mobility deployment, as has been mentioned in
Section 1, existing deployment algorithms such as the proposed works in [
11,
12,
13,
14] cannot improve the network coverage rate under the premise of ensuring the full network connectivity and do not optimize the communication and movement energy consumption during deployment. Therefore, we propose the DBCDS algorithm.
As a research team which has been keeping the focus on the WSNs, we have also proposed many node deployment algorithms for the UWSNs in recent years [
25,
26,
27,
28]. The node non-uniform deployment based on clustering (NNDBC) algorithm for the UWSNs was proposed in [
25], and the difference between the NNDBC algorithm and our other works in [
26,
27,
28] as well as in this paper was that the coverage targets in NNDBC algorithm were the isolated events whose distributions were usually non-uniform in the monitored space. The algorithms in [
26,
27] belonged to limited mobility deployment, while the DBCDS algorithm in this paper belonged to free mobility deployment. The algorithm in [
28] also belonged to free mobility deployment, the node destination locations had been calculated before the random node scattering, and the network topology formed after the algorithm operation had no relationship with the random node scattering. However, the focus of this paper is how to adjust the nodes’ locations after the random node scattering and depth adjustment, with the purpose of achieving desired performances. The node destination locations cannot be known before the random node scattering, the network topology formed after the algorithm operation has a strong relationship with the random node scattering and depth adjustment.
4. Problem and Algorithm Description
The communication medium of UWSNs is acoustic signal and their network structure is 3D, but their node energy is limited and difficult to compensate. When UWSNs are applied to detect underwater disaster or underwater military actions or to finish other similar tasks, the system must have excellent real-time monitoring. All the nodes must be able to communicate with the sink node to guarantee full network connectivity. The deployment for UWSNs involves optimization to adjust the locations of nodes to improve the network coverage and minimize energy consumption of nodes during the process, with full consideration of the characteristics and requirements mentioned above.
Li
et al. [
14] modified the traditional 2D virtual forces algorithm [
15] and applied it to the 3D case and then proposed the TVFD algorithm. They suggested that the locations of nodes must be adjusted for a few rounds. In each round, all the nodes broadcast their location information to their neighbor nodes in the communication range. These nodes can then calculate the total virtual force, which is the vector sum of the four kinds of virtual forces exerted on them, which are as follows: the traditional attraction virtual forces, traditional repelling virtual forces, central attraction force, and the localized equilibrium forces. Afterward, a node moves according to the total virtual force. This algorithm is a typical deployment algorithm for UWSNs comprising freely mobile nodes, and can improve the network coverage and connectivity rates. However, some improvements are still worthy of note based on the following aspects:
(1) The traditional attraction virtual forces contribute to the improvement of the network connectivity in the TVFD algorithm. However, node movement is determined by the total virtual force, and the traditional attraction virtual forces cannot completely control the movement of a node. Thus, the network cannot achieve full connectivity.
(2) The TVFD algorithm is operated in a distributed manner. In each round, any node can only move to a local optimized location instead of to a global optimized location. Thus, this kind of movement can only play a limited role in improving network connectivity.
(3) The TVFD algorithm is operated round by round. In each round, nodes are not only required to broadcast their location information but also to move according to the total virtual force exerted on them. To improve the network coverage rate and network connectivity rate, the algorithm needs to be operated for a few rounds, enlarging the communication and movement energy consumption.
We propose the DBCDS algorithm to provide a better solution to the deployment problem of UWSNs. After nodes are randomly scattered in the 3D monitoring underwater space, those disconnected to the sink node move toward the sink node until full network connectivity is achieved. The sink node then performs centralized optimization to determine the CDS of the network and continuously adjusts the locations of the dominated nodes. The dominated nodes are required to move toward an optimized location, which is in the communication range of the dominating nodes. A dominated node can improve the network coverage rate upon reaching the optimized location.
The two main parts of the proposed DBCDS algorithm are determining the CDS of the network and performing centralized optimization adjustment for the dominated nodes. A brief description of the whole process for the DBCDS algorithm is also provided.
4.1. CDS Determination
The CDS plays an important role in the virtual backbone construction of wireless sensor networks [
31]. The dominating set is a subset of the set consisting of all the nodes of the networks. A node which does not belong to the subset is adjacent to at least one of the nodes in the subset. The node that belongs to the subset is called the dominating node, and the node that does not belong to the subset is called the dominated node. If the nodes in the dominating set are connected with another, the dominating set is called CDS [
32], and the node that belongs to the dominating set is called the connected dominating node. For a network that has achieved full network connectivity, we first determine the CDS and then adjust the locations of the dominated nodes. If the new locations of the dominated nodes are still in the communication range of dominating nodes, the network can still keep full connectivity. This is the basic idea of DBCDS algorithm. After nodes are randomly scattered in the 3D monitoring underwater space, nodes disconnected to the sink node are required to move toward the sink node until full network connectivity is achieved. The sink node then performs centralized optimization to determine the CDS of the network and continuously adjusts the locations of the dominated nodes. The process wherein the sink node determines the CDS of the network is as follows:
(1) The sink node determines itself as the first paramount connected dominating node, and then it judges other nodes in the order of the number.
(2) The first round of judgment starts by initializing , where is the temporary number to label the node during the traversal of nodes.
(3) The sink node judges whether the node whose number is has any two neighbor nodes nonadjacent to each other. The term “neighbor” here means distance between the node and the other node, which is not bigger than the communication range. If such neighbors are present, the node is determined as a primary connected dominating node. Otherwise, it is determined as a dominated node.
(4) Considering , if is bigger than (i.e., the total number of nodes), the first round of judgement ends. Otherwise, (3) is repeated.
(5) The second round of judgement starts by initializing .
(6) All the neighbor nodes of the node whose number is are considered, noting that the node itself is also included in its neighbor nodes. Then, the sink node judges whether all the neighbor nodes are the primary connected dominating nodes. If it is, the node is determined as a dominated node. Otherwise, it is a paramount connected dominating node.
(7) Considering , if is bigger than (i.e., the total number of nodes), the second round of judgement ends. Otherwise, (6) is repeated.
(8) The subset consisting of the paramount connected dominating nodes (including the sink node) is the CDS. The paramount connected dominating node can also be called the dominating node for short in this study.
The above process is described in a flow chart in
Figure 2.
4.2. Centralized Optimization Adjustment for Locations of Dominated Nodes
After determining the CDS, the sink node can perform central optimization to adjust the locations of the dominated nodes and can dispatch the dominated node to an optimized location, which is in the communication range of the dominating nodes. The dominated node can improve the network coverage rate upon reaching the optimized location.
The process wherein the sink node adjusts the locations of the dominated nodes is as follows:
(1) The adjustment round is initialized to be 0.
(2) The sink node calculates the network coverage rate before this adjustment round and then finds the max coverage blind cube point
using the following formula:
where
denotes the set that consists of the cube point whose distance to the dominating nodes is smaller than the communication range
.
denotes the set of the neighbor cube points of the cube point
in
. Notably, “neighbor” here means the distance between the cube point
and the other cube point, which is not bigger than the sensing range.
(3) The sink node calculates and finds the least important dominated node using the following equation:
where
denotes the set that consists of the dominated nodes,
denotes the coverage rate before the adjustment round, and
denotes the coverage rate supposing that the node
has been deleted from the network.
(4) Supposing that the coverage rate is , if the node has been moved to the max coverage blind cube point , then is compared with . If is bigger than , the sink node requires node to finish the real movement, and node moves to the max coverage blind cube point along the straight line. The adjustment round is obtained and (2) is repeated. Otherwise, the total optimization adjustment for locations of dominated nodes ends.
The above process is described using the following flow chart in
Figure 3.
For the 3D underwater space cube model, whether the small cube is covered or not depends on the cover state of its center point. Therefore, for the DBCDS algorithm, when the sink node performs central optimization to adjust the locations of the dominated nodes, the cube resolution w affects the accuracy and time complexity of the central optimization. If w is small, the accuracy and time complexity is high. For example, when the sink node finds the least important dominated node , for any dominated node , the time complexities of calculating the and are and , respectively. The smaller w means the larger , and then results in the higher time complexity.
4.3. Brief Description of DBCDS Process
After elaborating the two main parts of the DBCDS algorithm, i.e., determining the CDS of the network and performing centralized optimization adjustment for the dominated nodes, a brief description of the entire process for the DBCDS algorithm is provided.
(1) All the nodes are randomly scattered on the surface of the 3D monitoring underwater space. Then, the sink node moves and is fixed at the center of the water surface. All the other nodes randomly adjust their own depths.
(2) The sink node broadcasts the ready message. If a node receives the message, it continuously broadcasts the message and sends its location information to the sink node. Otherwise, a node that cannot receive the message has to move toward the sink node until it receives the message and then sends its location information to the sink node.
(3) If all the nodes receive the ready messages, the number of the location information received by the sink node is equal to the number of nodes. Thus, the sink node can judge whether the network achieves full connectivity or not from the relationship between the number of the location information received and the number of nodes. If they are not equal, the network is still not fully connected, and the sink node waits until the equality is achieved. After this, the network becomes fully connected and the process proceeds to (4).
(4) The sink node determines the CDS of the network.
(5) The sink node performs centralized optimization to adjust the locations of the dominated nodes.
(6) The DBCDS algorithm ends.
The abovementioned process is also described using the following flow chart in
Figure 4.