Open Access
This article is

- freely available
- re-usable

*Sensors*
**2015**,
*15*(3),
6009-6032;
https://doi.org/10.3390/s150306009

Article

Color Filtering Localization for Three-Dimensional Underwater Acoustic Sensor Networks

^{1}

College of Information Technology, Hebei Normal University, Shijiazhuang 050024, China

^{2}

College of Mathematics and Information Science, Hebei Normal University, Shijiazhuang 050024, China

^{*}

Author to whom correspondence should be addressed.

Academic Editors:
Luciano Lavagno
and
Mihai T. Lazarescu

Received: 7 January 2015 / Accepted: 25 February 2015 / Published: 12 March 2015

## Abstract

**:**

Accurate localization of mobile nodes has been an important and fundamental problem in underwater acoustic sensor networks (UASNs). The detection information returned from a mobile node is meaningful only if its location is known. In this paper, we propose two localization algorithms based on color filtering technology called PCFL and ACFL. PCFL and ACFL aim at collaboratively accomplishing accurate localization of underwater mobile nodes with minimum energy expenditure. They both adopt the overlapping signal region of task anchors which can communicate with the mobile node directly as the current sampling area. PCFL employs the projected distances between each of the task projections and the mobile node, while ACFL adopts the direct distance between each of the task anchors and the mobile node. The proportion factor of distance is also proposed to weight the RGB values. By comparing the nearness degrees of the RGB sequences between the samples and the mobile node, samples can be filtered out. The normalized nearness degrees are considered as the weighted standards to calculate the coordinates of the mobile nodes. The simulation results show that the proposed methods have excellent localization performance and can localize the mobile node in a timely way. The average localization error of PCFL is decreased by about 30.4% compared to the AFLA method.

Keywords:

underwater acoustic sensor networks (UASNs); self-localization; color filtering; Red Green Blue (RGB); hierarchical structure## 1. Introduction

Underwater acoustic sensor networks (UASNs) are composed of thousands of micro-sensors which are capable of sensing, operating, self-organizing and communicating acoustically to monitor the underwater environment [1,2,3]. In UASNs, technology provides new capacity for marine resources exploration, pollution detection and aided navigation [4]. Nowadays, research on communication technology [3], architectures and protocols [3], localization and tracking algorithms [5], as well as network security [6] have been applied to various fields. As for a variety of applications in UASNs, the acquisition of information is meaningful only when the location of the sensors is known. Underwater acoustic mobile localization (UABL) technology has been widely studied since it is a primary tool used in topology control, coverage control and routing decision in UASNs [7,8]. UABL typically employs a cluster of anchors whose locations could be obtained in advance and a set of mobile nodes whose locations are to be determined. Based on the information received from the anchors, mobile nodes perform self-localization which belongs to the classification of distributed localization techniques [2]. The model where each mobile node is equipped with a pressure sensor is motivated by reference [8] in which an anchor-free localization algorithm called AFLA was presented. AFLA was designed for active-restricted underwater sensor networks and made use of the relationships between adjacent nodes. Comprehensive surveys of these UABL schemes are presented in references [2,7]. As global positioning system (GPS) signals are greatly weakened underwater, UABL algorithms often use range-based methods to estimate distance, i.e., time of arrival (TOA) [9], angle of arrival (AOA) [10] and time difference of arrival (TDOA) [11].

In this article, a projection-color filtering localization algorithm called PCFL and an anchor-color filtering localization algorithm called ACFL are put forward. They both aim at cooperatively accomplishing precise localization for underwater mobile nodes with minimum power wastage. In the first place, the existing network construction is reconstituted as a hierarchical structure and the localization issue is converted into a geometry problem. Secondly, based on the task anchors which can communicate with the mobile node directly, task-rings are obtained considering the task projections (i.e., projections of the task anchors) as centers, and samples are randomly selected in the overlapping area of the task-rings. Later, the Red Green Blue (RGB) sequences for both the mobile nodes and the samples are computed based on the projection distances. Different from the existing CDL algorithms utilizing the DV-hop measurement [12], PCFL uses the AOA measurement and the initial RGB values are given to the task projections, while for ACFL, the initial RGB values are given to the task anchors. Last, the nearness degree is defined to filter samples, and at the same time, it is stored as a weight.

Our localization strategy is motivated by the existing CDL algorithms [12], such as making use of the locations and RGB values, from the anchors, to assist the mobile node to compute its RGB value and exploiting the changes of colors with distances to localize the mobile node. The CDL aims to represent a location with a color instead of a coordinate for cutting down the computation and communication costs. With a color to represent a location, two kinds of data are fused into a color: (1) each anchor’s location and (2) the distance between the mobile node and each anchor. Also we are motivated by the main idea of hierarchical structure [13] which is that each layer value represents the Z axis coordinate of each anchor in the three-dimensional underwater environment. Since the anchors are distributed by layers, the three dimensional distance measurements can be converted to two-dimensional ones by using the distance between the anchors’ projection and the anchors.

The major contributions of this work are as follows: (a) based on a detailed theoretical analysis PCFL and ACFL are proposed for three-dimensional underwater environments; (b) the proposed algorithms adopt the overlapping signal region of task anchors which can reduce uncertainty with fewer anchors than used in other approaches; (c) it is more efficient by using the adapted hierarchical structure and the projection model; (d) as the proportion factor of distance is proposed to weight the RGB values, PCFL and ACFL can provide more accurate RGB values; (e) specifically, the normalized nearness together with the calculation of the coordinates significantly improves the whole computational efficiency.

The rest of this paper is arranged as follows: in Section 2, we survey some of the existing range-free localization techniques in UASNs. In Section 3, the PCFL and ACFL algorithms are put forward and their performance is verified, where we deduce the task-rings sampling method, compute the nearness degree threshold for filtering samples and locate the weighted mobile nodes. Simulations of the performance of PCFL and ACFL are evaluated in Section 4, and in the end conclusions are given in Section 5. The key notations used in this paper are summarized in Table 1.

Notation | Explanation |
---|---|

$R$ | Communication range |

$UN$ | A 3D UASNs |

$p$ | Number of anchors |

$q$ | Number of mobile nodes |

${n}_{j}(j=1,2,\mathrm{...}p+q)$ | Anchors or mobile nodes |

$A$ | Set of anchors |

$M$ | Set of mobile nodes |

${\alpha}_{ij}$ | Smaller angle of acoustic signal from the anchors ${n}_{j}$ received by the mobile node ${n}_{i}$ |

$d({n}_{i},{n}_{j})$ | Euclidean distance between the node ${n}_{i}$ and the node ${n}_{j}$ |

${A}_{i}^{t}$ | The set of task anchors corresponding to the mobile node ${n}_{i}$ |

${p}^{t}$ | Number of task anchors in ${A}_{i}^{t}$ |

${B}_{i}^{t}$ | The set of task projections for ${n}_{j}\in {A}_{i}^{t}$ |

$RG{B}_{j}^{pt}$ | RGB sequences for the projections in ${B}_{i}^{t}$ at time instant $t$ |

$RG{B}_{j}^{at}$ | RGB sequences for the anchors in ${A}_{i}^{t}$ at time instant $t$ |

${C}_{j}^{t}$ | Task-ring for task projection ${{n}^{\prime}}_{j}\in {B}_{i}^{t}$ |

${k}_{ij}^{t}$ | Depth difference between the task anchor ${n}_{j}$ and the mobile node ${n}_{i}$ |

${{n}^{\prime}}_{j}$ | Projection of the task anchor ${n}_{j}$ |

${p}_{ij}^{t}$ | Distance between the mobile node ${n}_{i}$ and the task anchor’s projection ${{n}^{\prime}}_{j}$ |

${S}_{j}^{t}$ | The set of the sampling area |

${\lambda}_{ij}^{t}$ | Proportion factor of distances weights |

${s}_{k}$ | The kth sample |

${\mu}_{{s}_{k}M}^{t}$ | Nearness degree between the mobile node ${n}_{i}$ and the sample ${s}_{k}$ |

${\tilde{S}}_{i}^{t}$ | The filtered samples set |

${\mu}^{t}$ | Threshold for nearness degree at time instant $t$ |

${m}^{t}$ | Number of the filtered samples at time instant $t$ |

## 2. Background

#### 2.1. Related Studies

Some researchers have studied range-free algorithms, which do not need to estimate the distance precisely [14,15,16]. Instead, sensors can localize themselves by taking advantage of signal connectivity, delay time, hop-distance and angle information. Range-free schemes are always more economic and simpler than the range-based ones, but less accurate.

Color-theory based dynamic localization (CDL) [12], FRORF [15] and DV-hop algorithms [14] are range-free methods which do not acquire distance information, but they always have coarser performance. CDL calculates RGB sequences based on DV-hop for both samples and mobile nodes. It converts RGB to Hue, Saturation, Value (HSV) for mobile nodes and samples using the traditional convert algorithm. Color theory indicates that the information of RGB and HSV fuses different red, green and blue data. According to the color theory, only the V (value) of HSV changes in proportion to the distances between anchors and mobile nodes. After the new HSV was obtained, another RGB data of the nodes is acquired by the HSV to RGB method. Then CDL filters the nearest sample by searching for the most similar RGB sequence to the mobile node, and identifies it as the location of the mobile node. Although CDL has better location performance in various terrestrial networks, it’s not suitable for localization in UASNs due to the inconsistent distribution of nodes and the weak association between signal hops and actual distances. Liu et al. proposed a local sampling and filtering color dynamic localization (LSF-CDL) algorithm [17]. Using the collected signals, LSF-CDL adopts the overlapping signal region of anchors which were able to communicate with the mobile node directly as the new local sampling area. The proportion factor of distance was also used to weight the average hop distance which optimized the calculation of hop distance in CDL. By comparing the RGB difference sequences, samples could be filtered out. The FRORF method represented overlapping rings as fuzzy sets to isolate a region where the node was most likely located [15]. The localization accuracy was improved under different number of anchors and degrees of radio propagation irregularity.

In the color-theory based localization schemes, a location database is established in the server for building geographic locations as a function of RGB values. The DV-Hop technology is employed in measuring the distances between mobile nodes and anchors. Based on the RGBtoHSV algorithm [12], the mobile node converts the RGB values received from the anchors into the corresponding HSV values [12,17]. According to the color theory, the increase of propagation distances only fades the lightness of color, which is the V in HSV of an anchor. Namely, V decreases proportionately to the distance between the mobile node to the anchor. After the mobile node gets the new HSV values, it adjusts these HSV values into RGB values based on another conversion algorithm called HSVtoRGB [12]. Then the mobile node averages these converted RGB values as its own RGB values corresponding to the anchors. Further, the server can find out the most probable location for the mobile node after receiving its RGB values and searching the location database. Since CDL is centralized and easy to implement, for applications that need centralized user data collection and user activity monitoring, such as community health-care systems and hospital monitoring systems, CDL is an ideal scheme to be used.

Compared to terrestrial nodes which can keep their location unchanged after arrangement, underwater nodes are prone to be influenced by tides, ocean currents and other factors leading to their locations being unfixed [1]. Due to the influence of node mobility, multipath fading and shadow, long time delay, the variation of sound velocity and asymmetry factor, there are more challenges for the UABL algorithms [18]. The autonomous underwater vehicle (AUV)-aid method employed a large number of sensors and one AUV to balance the algorithm’s performance and cost. The AUV was used for localization and carrying messages of disconnected sensors or time-critical information [19]. The anchor-based method relied on the TDOA locally measured by a sensor to detect range differences from the sensor to four anchors [20]. The AFLA method was a self-localization algorithm designed for anchor-free UASNs [8]. However, none of the schemes mentioned above provide sufficient accuracy. In order to improve the localization performance, we propose here two novel algorithms: PCFL and ACFL, and aim at projecting the locations of task anchors to the mobile node’s plane which converts the UABL problem from a 3D to a 2D one.

#### 2.2. Network Model

There is a typical UASNs model as shown in Figure 1. There are three types of nodes in the model: mobile nodes, anchors and surface buoys [21]. Surface buoys are deployed on the water surface and often equipped with GPS to get their absolute locations with the help of GPS antenna arrays and GPS satellites. Anchors and mobile nodes communicate with each other using acoustic signals. Each anchor is vertically connected with one surface buoy by a cable. Anchors can obtain the two-dimensional coordinates with the help of the surface buoys. The main role of the anchors is helping the mobile nodes to finish self-localization.

#### 2.3. Problem Formulation

With the purpose of developing an accurate and high-performance UABL scheme used in the complex underwater environments, the assumptions are made as below:

Both the anchors and the mobile nodes have the same communication range R and are equipped with arrays of wireless antennas in order to communicate with each other by acoustic signals which are used to transmit the depth information, the anchors’ coordinates and the measured AOA values.

The mobile node transmits acoustic signals regularly. Once the acoustic signal is received, each anchor replies a message including its own three dimensional coordinates and its depth information.

When the information exchange is completed, the mobile node has sufficient information to localize itself. The information refers to locations and the depth information of all task anchors and the AOA measurement from the task anchors estimated by the mobile node. The depth information is measured by the pressure sensors with which all the nodes are equipped.

In UASNs, it is difficult to achieve time synchronization precisely as a result of the characteristics of acoustic signal propagation. While by employing the AOA values of the acoustic signals from the anchors, synchronous request between the nodes is not so necessary, so the PCFL and ACFL techniques advanced here have the advantage in synchronization.

Let’s consider a 3D UASNs UN with $p$ anchors and $q$ mobile nodes and express the location of each node as:

$${n}_{i}=({x}_{i},{y}_{i},{z}_{i}),{n}_{i}\in UN,i=1,2,\mathrm{...}p+q$$

We assume that the locations of $p$ anchors in $A=\{{n}_{1},{n}_{2},\mathrm{...}{n}_{p}\}$ are known but the locations of the other q mobile nodes in $M=\{{n}_{p+1},{n}_{p+2},\mathrm{...}{n}_{p+q}\}$ are undetermined and to be localized, $UN=A\cup M$. In our localization methods, the only obtainable information is the smaller angle of acoustic signal ${\alpha}_{ij}$ from the anchors ${n}_{j}(j=1,2,\mathrm{...}p)$ received by the mobile node ${n}_{i}(i=p+1,\mathrm{...}p+q)$ based on the AOA measurement and the depth information obtained by the corresponding pressure sensors. The Euclidean distance between the node ${n}_{i}$ and the node ${n}_{j}$ can be calculated as:

$$d({n}_{i},{n}_{j})=\sqrt{{\left({x}_{i}-{x}_{j}\right)}^{2}+{\left({y}_{i}-{y}_{j}\right)}^{2}+{\left({z}_{i}-{z}_{j}\right)}^{2}},({n}_{i}\in UN,{n}_{j}\in UN)$$

At time instant $t$, the set of task anchors corresponding to the mobile node ${n}_{i}$ can be expressed as

$${A}_{i}^{t}=\{{n}_{j}|d({n}_{i},{n}_{j})\le R,i=p+\mathrm{1...}p+q,j=1,2,\mathrm{...}p\}\subset A$$

Let ${p}^{t}$ denote the number of task anchors in ${A}_{i}^{t}$ and it can be seen that:

$$\left|{A}_{i}^{t}\right|={p}^{t}\le p$$

As all the nodes have the same communication range $R$, at time instant $t$, the mobile node ${n}_{i}(i=p+1,\mathrm{...}p+q)$ can exchange information with anchor ${n}_{j}$ directly if and only if ${n}_{j}\in {A}_{i}^{t}$. The set of task projections ${B}_{i}^{t}$ for ${n}_{j}\in {A}_{i}^{t}$ is defined as:
where ${{n}^{\prime}}_{j}=({{x}^{\prime}}_{j},{{y}^{\prime}}_{j},{{z}^{\prime}}_{j})$. RGB sequences for the projections in ${B}_{i}^{t}$ and RGB sequences for the anchors in ${A}_{i}^{t}$ at time instant $t$ are randomly assigned numerical values in the range of [0,1] as stated in the reference [12] and respectively are defined as:

$${B}_{i}^{t}=\{{n}_{j}^{\prime}|d({n}_{i},{n}_{j})\le R,{{x}^{\prime}}_{j}={x}_{j},{{y}^{\prime}}_{j}={y}_{j},{{z}^{\prime}}_{j}={z}_{j}\}{\displaystyle}\left|{B}_{i}^{t}\right|={p}^{t}\le p$$

$$RG{B}_{j}^{pt}:\{{R}_{j}^{pt},{G}_{j}^{pt},{B}_{j}^{pt}\},({{n}^{\prime}}_{j}\in {B}_{i}^{t})\text{and}RG{B}_{j}^{at}:\{{R}_{j}^{at},{G}_{j}^{at},{B}_{j}^{at}\},({n}_{j}\in {A}_{i}^{t})$$

The task-ring for task projection ${{n}^{\prime}}_{j}\in {B}_{i}^{t}$ is defined as:
where ${k}_{ij}^{t}(j=1,\mathrm{...}{p}^{t},i=p+1,\mathrm{...}q)$ is the depth difference between the task anchor ${n}_{j}$ and the mobile node ${n}_{i}$ which can be calculated using the information from their equipped pressure sensors. Note that the minimum communication angle between the task anchor ${n}_{j}$ and the mobile node ${n}_{i}$ at time instant $t$ named as ${\alpha}_{ij}^{t}(j=1,\mathrm{...}{p}^{t},i=p+1,\mathrm{...}q)$ can be measured by the mobile node ${n}_{i}$, then the localization issue can be described as follows:

$${C}_{j}^{t}=\{(x,y,z)|(x-{{x}^{\prime}}_{j})+(y-{{y}^{\prime}}_{j})\le ({R}^{2}-{\left({k}_{ij}^{t}\right)}^{2}),z={{z}^{\prime}}_{j}\}$$

$$\begin{array}{l}Estimate\text{}{n}_{i}\\ subject\text{}to\text{}{n}_{j}({n}_{j}\in {A}_{i}^{t})({{n}^{\prime}}_{j}({{n}^{\prime}}_{j}\in {B}_{i}^{t}));{\alpha}_{ij}^{t};{k}_{ij}^{t};(i=p+1,\mathrm{...}q)\end{array}$$

## 3. Algorithm Design

In this section, we present our color filtering localization algorithms, which we call projection-color filtering localization (PCFL) and anchor-color filtering localization (ACFL). Firstly, we put forward the three dimensional hierarchical structure according to the depth of the anchors and the mobile nodes. Then we introduce the design details of PCFL and ACFL methods. In the end, we show the analysis of feasibility for them. PCFL and ACFL are both based on the color theory. The distances between nodes are calculated by the projection method, while CDL calculates the distance based on DV-hop method.

#### 3.1. Hierarchical Structure Model

In UASNs, the most important characteristics are node mobility, multipath propagation loss, time uncertainty, and low communication rate. In this paper, our two localization methods are based on hierarchical structure model.

Figure 2 shows a hierarchical structure and projection model. Using the depth information of the mobile node, three task anchors ${n}_{1}$, ${n}_{2}$ and ${n}_{3}$ will be projected to three positions ${{n}^{\prime}}_{1}$, ${{n}^{\prime}}_{2}$ and ${{n}^{\prime}}_{3}$ in the plane where the mobile node locates, respectively.

Note that the minimum communication angle ${\alpha}_{ij}^{t}\in [0,\frac{\pi}{2}](j=1,2,3)$ can be obtained by the mobile node ${n}_{i}$ based on the AOA measurement, and the depth difference ${k}_{ij}^{t}(j=1,2,3)$ can be measured by the equipped pressure sensors. When the anchor ${n}_{j}$ and the mobile node ${n}_{i}$ are with the same depth, ${\alpha}_{ij}^{t}=0$, ${k}_{ij}^{t}=0$. When ${\alpha}_{ij}^{t}=\frac{\pi}{2}$, the value of the minimum communication angle between ${n}_{j}$ and ${n}_{i}$ will be maximum. So at time instant $t$ the geographic distance between the anchor ${n}_{j}$ and the mobile node ${n}_{i}$ can be calculated as:

$${d}^{t}({n}_{i},{n}_{j})={k}_{ij}^{t}/\text{sin}{\alpha}_{ij}^{t}$$

And at time instant $t$, the distance ${p}_{ij}^{t}$ between the mobile node ${n}_{i}$ and the task anchor’s projection ${{n}^{\prime}}_{j}$ can be calculated as:

$${p}_{ij}^{t}={k}_{ij}^{t}/\text{tan}{\alpha}_{ij}^{t}$$

#### 3.2. PCFL and ACFL

The PCFL algorithm and the ACFL algorithm can be both divided into three steps: (a) determination of the sampling area; (b) RGB values calculation; and (c) filtering and weighted evaluation.

(a) In the first step, we use the task-rings sampling method to determine the sampling area. Here every task-ring is expressed as the signal range interface for every corresponding task anchor, as previously defined in Equation (7). Then, the sampling area constraining the location of the mobile node is the intersection region of these task-rings corresponding to each task projection.

For instance, the shadow region in Figure 3 represents the sampling area which is derived from the task-rings of task projections ${{n}^{\prime}}_{1}$, ${{n}^{\prime}}_{2}$ and ${{n}^{\prime}}_{3}$ with respect to task anchors ${n}_{1}$, ${n}_{2}$ and ${n}_{3}$, respectively. The task-rings are represented as the blue dotted circles. As each task anchor can receive the signal from the mobile node, it can be inferred that the mobile node’s location is inside its task-ring. The following Theorem 1 will prove this. The following restricted conditions based on the task-rings sampling method will confine the samples shown as the purple squares inside the shadow region in Figure 3:
where (x, y, z) denotes the coordinates of the sample. Normally, the set of the sampling area ${S}_{i}^{t}$ is defined as:

$$\sqrt{{\left(x-{{x}^{\prime}}_{1}\right)}^{2}+{\left(y-{{y}^{\prime}}_{1}\right)}^{2}}\le \sqrt{({R}^{2}-{\left({k}_{\text{i1}}^{t}\right)}^{2})},z={{z}^{\prime}}_{1}={z}_{i}\phantom{\rule{0ex}{0ex}}\sqrt{{\left(x-{{x}^{\prime}}_{2}\right)}^{2}+{\left(y-{{y}^{\prime}}_{2}\right)}^{2}}\le \sqrt{({R}^{2}-{\left({k}_{i2}^{t}\right)}^{2})},z={{z}^{\prime}}_{2}={z}_{i}\phantom{\rule{0ex}{0ex}}\sqrt{{\left(x-{{x}^{\prime}}_{3}\right)}^{2}+{\left(y-{{y}^{\prime}}_{3}\right)}^{2}}\le \sqrt{({R}^{2}-{\left({k}_{i3}^{t}\right)}^{2})},z={{z}^{\prime}}_{3}={z}_{i}$$

$${S}_{i}^{t}=\{(x,y,z)|\forall {{n}^{\prime}}_{j}\in {B}_{i}^{t},\sqrt{\left(x-{{x}^{\prime}}_{j}\right)+{\left(y-{{y}^{\prime}}_{j}\right)}^{2}}\le \sqrt{({R}^{2}-{\left({k}_{ij}^{t}\right)}^{2})},z={z}_{i}\}$$

(b) The process of RGB values calculation can be divided into two stages. The first stage is the RGB sequences calculation for the mobile nodes, denoted by $RG{B}_{i}^{Mt}:\{{R}_{i}^{Mt},{G}_{i}^{Mt},{B}_{i}^{Mt}\},({n}_{i}\in M)$. After arranging all the RGB values $RG{B}_{j}^{pt}:\{{R}_{j}^{pt},{G}_{j}^{pt},{B}_{j}^{pt}\},({{n}^{\prime}}_{j}\in {B}_{i}^{t})$ for task anchors’ projections (PCFL) or arranging all RGB values $RG{B}_{j}^{at}:\{{R}_{j}^{at},{G}_{j}^{at},{B}_{j}^{at}\},({n}_{j}\in {A}_{i}^{t})$ for task anchors (ACFL), the mobile node converts $RG{B}_{j}^{pt}$ or $RG{B}_{j}^{at}$ into Hue, Saturation, and Value (HSV) [12] at time instant $t$.

$${H}_{j}^{kt}{S}_{j}^{kt}{V}_{j}^{kt}=(RGB\text{to}HSV){R}_{j}^{kt}{G}_{j}^{kt}{B}_{j}^{kt};k=p,a$$

Then we can calculate the changed values ${H}_{ij}^{kt}{S}_{ij}^{kt}{V}_{ij}^{kt}$ of HSV between ${n}_{i}$ and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$) by the equations below:
where Range is the maximum length of color change, and we assume Range to be the maximum communication distance of the mobile node’s plane. Then $\{{R}_{ij}^{kt},{G}_{ij}^{kt},{B}_{ij}^{kt}\}$ between the mobile node ${n}_{i}$ and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$) can be worked out based on the algorithm HSVtoRGB [12]:

$${H}_{ij}^{kt}={H}_{j}^{kt},{S}_{ij}^{kt}={S}_{j}^{kt},{V}_{ij}^{kt}=(1-\frac{{d}_{ij}^{t}}{Range})\times {V}_{j}^{kt},k=p,a;{d}_{ij}^{t}={p}_{ij}^{t}\begin{array}{c}\end{array}or\begin{array}{c}\end{array}{d}_{ij}^{t}={d}_{t}({n}_{i},{n}_{j})$$

$${R}_{ij}^{kt}{G}_{ij}^{kt}{B}_{ij}^{kt}=(HSV\text{to}RGB){H}_{ij}^{kt}{S}_{ij}^{kt}{V}_{ij}^{kt};k=p,a$$

At time instant $t$, the mobile node ${n}_{i}$ records the task anchors in ${A}_{i}^{t}$ and their depth information, then computes the distances from ${n}_{i}$ to the projections in ${B}_{i}^{t}$ for PCFL (or computes the distances from ${n}_{i}$ to the anchors in ${A}_{i}^{t}$ for ACFL), and ${n}_{i}$ processes normalization of these distances to calculate the proportion factor of distances weights ${\lambda}_{ij}^{t}$ defined as below:

$${\lambda}_{ij}^{t}=\frac{{({d}_{ij}^{t})}^{-1}}{{\displaystyle \sum _{{n}_{j}\in {A}_{i}^{t}}{({d}_{ij}^{t})}^{-1}}},{d}_{ij}^{t}={p}_{ij}^{t}\text{}or\text{}{d}_{ij}^{t}={d}^{t}({n}_{i},{n}_{j})$$

At last using the weighted mean of $\{{R}_{ij}^{kt},{G}_{ij}^{kt},{B}_{ij}^{kt}\}$, RGB values $\{{R}_{i}^{Mt},{G}_{i}^{Mt},{B}_{i}^{Mt}\}$ for the mobile node ${n}_{i}$ can be worked out.

$$\{{R}_{i}^{Mt},{G}_{i}^{Mt},{B}_{i}^{Mt}\}={\displaystyle \sum _{{n}_{j}\in {A}_{i}^{t}}{\lambda}_{ij}^{t}\{{R}_{ij}^{kt},{G}_{ij}^{kt},{B}_{ij}^{kt}\}}\text{}k=p,a$$

The second stage is the RGB sequences calculation for samples. The RGB sequence for the sample ${s}_{k}$ is denoted by $RG{B}_{i}^{{s}_{k}t}:\{{R}_{i}^{{s}_{k}t},{G}_{i}^{{s}_{k}t},{B}_{i}^{{s}_{k}t}\}$. The calculation is similar to that mentioned above, and the difference just lies in replacing ${d}_{ij}^{t}$ in Equation (16) with the Euclidean distance between the mobile node ${n}_{i}$ and the sample ${s}_{k}$ which can be calculated using Equation (2).

(c) In the process of filtering and weighted evaluation, PCFL and ACFL both filter the samples in the sampling area based on nearness degree. Assume at time instant $t$, PCFL and ACFL both sample $m$ times randomly and the RGB sequence of the sample ${s}_{k}$ is $\{{R}_{i}^{{s}_{k}t},{G}_{i}^{{s}_{k}t},{B}_{i}^{{s}_{k}t}\}$, then the nearness degree ${\mu}_{{s}_{k}M}^{t}$ between the mobile node ${n}_{i}$ and the sample ${s}_{k}$ is defined as:

$${\mu}_{{s}_{k}M}^{t}=\sqrt{{({R}_{i}^{{s}_{k}t}-{R}_{i}^{Mt})}^{2}+{({G}_{i}^{{s}_{k}t}-{G}_{i}^{Mt})}^{2}+{({B}_{i}^{{s}_{k}t}-{B}_{i}^{Mt})}^{2}}(i=p+1,\mathrm{...}q;k=1,2,\mathrm{...}m)$$

Then the filtered samples set ${\tilde{S}}_{i}^{t}$ is:
where ${\mu}^{t}$ is the threshold at time instant $t$. The relationship between ${\mu}^{t}$ and the localization error is shown in the simulation section. Assume there are ${m}^{t}({m}^{t}\le m)$ samples that have been filtered out. From Equations (18) and (19), the following Theorem 2 will prove the fact that the smaller the nearness degree ${\mu}_{{s}_{k}M}^{t}$ is the closer the mobile node ${n}_{i}$ is to the sample ${s}_{k}$, Then, based on ${\mu}_{{s}_{k}M}^{t}$, PCFL and ACFL perform the normalized weighted processing in the coordinate calculation of the mobile node ${n}_{i}$:

$${\tilde{S}}_{i}^{t}=\{{s}_{k}|{s}_{k}\in {S}_{i}^{t},{\mu}_{{S}_{k}M}^{t}\le {\mu}^{t}\},{n}_{i}\in M$$

$${\tilde{\mu}}_{{S}_{k}M}^{t}={\mu}_{{S}_{k}M}^{t}{({\displaystyle \sum {\mu}_{{S}_{k}M}^{t}})}^{-1},{s}_{k}\in {\tilde{S}}_{i}^{t}$$

Assume the coordinate of the filtered sample ${s}_{k}$ is $({x}_{{s}_{k}}^{t},{y}_{{s}_{k}}^{t},{z}_{i}^{t})$, then the coordinate $({x}_{i}^{t},{y}_{i}^{t},{z}_{i}^{t})$ of the mobile node ${n}_{i}$ at time instant $t$ can be calculated using ${\tilde{\mu}}_{{s}_{k}M}^{t}$ as the weights, note that ${z}_{i}^{t}$ can be achieved by the deployed pressure sensor:

$${x}_{i}^{t}={\displaystyle \sum _{{S}_{k}\in {\tilde{S}}_{i}^{t}}{x}_{{S}_{k}}^{t}}{\tilde{\mu}}_{{S}_{k}M}^{t},{y}_{i}^{t}={\displaystyle \sum _{{S}_{k}\in {\tilde{S}}_{i}^{t}}{y}_{{S}_{k}}^{t}}{\tilde{\mu}}_{{S}_{k}M}^{t}$$

The detailed procedure for PCFL and ACFL can be presented by the following Algorithm 1 description.

Algorithm 1. The PCFL and ACFL algorithms. |

1: if the mobile node ${n}_{i}$ senses the request command of localization then |

2: ${n}_{i}$ sends the acoustic signal in the communication range |

3: if ${n}_{i}$ receives the acknowlegement signals from the task anchors then |

4: ${n}_{j}$ is named as the task anchor |

5: ${\alpha}_{ij}^{t}$ and ${k}_{ij}^{t}$ are measured by AOA and the deployed pressure sensors respectively |

6: ${d}^{t}({n}_{i},{n}_{j})={k}_{ij}^{t}/\mathrm{sin}{\alpha}_{ij}^{t}$ |

7: ${p}_{ij}^{t}={k}_{ij}^{t}/\mathrm{tan}{\alpha}_{ij}^{t}$ |

8: end if |

9: end if |

10: while $\{{R}_{j}^{at},{G}_{j}^{at},{B}_{j}^{at}\}$ is the RGB values for the task anchors |

$\{{R}_{j}^{pt},{G}_{j}^{pt},{B}_{j}^{pt}\}$ is the RGB values for the task anchors’ projections do |

11: ${H}_{j}^{kt}{S}_{j}^{kt}{V}_{j}^{kt}=(RGB\text{to}HSV){R}_{j}^{kt}{G}_{j}^{kt}{B}_{j}^{kt};k=p,a$ |

12: ${H}_{ij}^{kt}={H}_{j}^{kt},{S}_{ij}^{kt}={S}_{j}^{kt},{V}_{ij}^{kt}=(1-\frac{{d}_{ij}^{t}}{Range})\times {V}_{j}^{kt},k=p,a;{d}_{ij}^{t}={p}_{ij}^{t}\begin{array}{c}\end{array}or\begin{array}{c}\end{array}{d}_{ij}^{t}={d}_{t}({n}_{i},{n}_{j})$ |

13: ${R}_{j}^{kt}{G}_{j}^{kt}{B}_{j}^{kt}=(HSV\text{to}RGB){H}_{j}^{kt}{S}_{j}^{kt}{V}_{j}^{kt};k=p,a$ |

14: ${\lambda}_{ij}^{t}=\frac{{({d}_{ij}^{t})}^{-1}}{{\displaystyle \sum _{{n}_{j}\in {A}_{i}^{t}}{({d}_{ij}^{t})}^{-1}}},{d}_{ij}^{t}={p}_{ij}^{t}\text{}or\text{}{d}_{ij}^{t}={d}^{t}({n}_{i},{n}_{j})$ |

15: $\{{R}_{i}^{Mt},{G}_{i}^{Mt},{B}_{i}^{Mt}\}={\displaystyle \sum _{{n}_{j}\in {A}_{i}^{t}}{\lambda}_{ij}^{t}\{{R}_{ij}^{kt},{G}_{ij}^{kt},{B}_{ij}^{kt}\}}\text{}k=p,a$ |

16: end while |

17: if ${S}_{i}^{t}=\{(x,y,z)|\forall {{n}^{\prime}}_{j}\in {B}_{i}^{t},\sqrt{\left(x-{{x}^{\prime}}_{j}\right)+{\left(y-{{y}^{\prime}}_{j}\right)}^{2}}\le \sqrt{({R}^{2}-{\left({k}_{ij}^{t}\right)}^{2})},z={z}_{i}\}$ then |

18: ${S}_{i}^{t}$ is the set of the sampling area |

19: end if |

20: if $\{{R}_{i}^{{s}_{k}t},{G}_{i}^{{s}_{k}t},{B}_{i}^{{s}_{k}t}\}$ is the RGB sequence of sample s_{k} then |

21: ${\mu}_{{s}_{k}M}^{t}=\sqrt{{({R}_{i}^{{s}_{k}t}-{R}_{i}^{Mt})}^{2}+{({G}_{i}^{{s}_{k}t}-{G}_{i}^{Mt})}^{2}+{({B}_{i}^{{s}_{k}t}-{B}_{i}^{Mt})}^{2}}(i=p+1,\mathrm{...}q;k=1,2,\mathrm{...}m)$ |

22: ${\tilde{S}}_{i}^{t}=\{{s}_{k}|{s}_{k}\in {S}_{i}^{t},{\mu}_{{S}_{k}M}^{t}\le {\mu}^{t}\},{n}_{i}\in M$ |

23: ${\tilde{\mu}}_{{S}_{k}M}^{t}={\mu}_{{S}_{k}M}^{t}{({\displaystyle \sum {\mu}_{{S}_{k}M}^{t}})}^{-1},{S}_{k}\in {\tilde{S}}_{i}^{t}$ |

24: ${x}_{i}^{t}={\displaystyle \sum _{{S}_{k}\in {\tilde{S}}_{i}^{t}}{x}_{{S}_{k}}^{t}}{\tilde{\mu}}_{{S}_{k}M}^{t},{y}_{i}^{t}={\displaystyle \sum _{{S}_{k}\in {\tilde{S}}_{i}^{t}}{y}_{{S}_{k}}^{t}}{\tilde{\mu}}_{{S}_{k}M}^{t}$ |

25: end if |

From Algorithm 1, it can be seen that PCFL and ACFL are two localization methods for mobile nodes (line 1). In UASNs, nodes communicate with each other using acoustic signals (line 2). If the mobile node receives the feedback signals from the anchors within communication range, then, the anchors are named as the task anchors to localize the mobile nodes (lines 3, 4). When the mobile node obtains the feedback signals (including the depth information and the locations of the task anchors), the geographic distance ${d}^{t}({n}_{i},{n}_{j})$ between the anchor ${n}_{i}$ and the mobile node ${n}_{i}$ can be obtained. At the same time, the distance ${p}_{ij}^{t}$ between the mobile node ${n}_{i}$ and the task anchor’s projection ${{n}^{\prime}}_{i}$ can be obtained too (lines 5, 6, 7).

The RGB values for task anchors’ projections (PCFL) and task anchors (ACFL) are assigned (line 10). The HSV values for task anchors’ projections (PCFL) or for task anchors (ACFL) are calculated using the traditional convert algorithm RGB to HSV (line 11). Then the HSV values between the mobile node ${n}_{i}$ and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$) can be calculated (line 12). The RGB values between the mobile node ${n}_{i}$ and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$) can be calculated by the traditional convert algorithm HSVtoRGB (line 13). Then the proportion factor of distances weights ${\lambda}_{ij}^{t}$ can be calculated (line 14). The RGB values for the mobile node can be worked out using the weight means of the RGB values for the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$) (line 15).

The sampling area can be determined based on the task-rings (line 17, 18). Then the RGB values for the samples are assigned (line 20). After that, the nearness degree ${\mu}_{{s}_{k}M}^{t}$ between the mobile node ${n}_{i}$ and sample ${s}_{k}$ can be calculated (line 21). If ${\mu}_{{s}_{k}M}^{t}$ is not more than the threshold ${\mu}^{t}$, the sample ${s}_{k}$ will be filtered out (line 22). Then PCFL and ACFL perform the normalized weighted processing (line 23). At last, the coordinate of the mobile node ${n}_{i}$ at time instant $t$ can be calculated using ${\tilde{\mu}}_{{s}_{k}M}^{t}$ as the weights based on the coordinates of the filtered samples (line 24).

Figure 4 gives the architecture for both the PCFL algorithm and the ACFL algorithm.

#### 3.3. Feasibility Analysis

In this section, we analyze the feasibility of PCFL and ACFL, through the following theorems:

Theorem 1. Assume that ${n}_{i}$ is the mobile node, and ${{n}^{\prime}}_{j}$ is the task projection of task anchor ${n}_{j}$ $({n}_{j}\in {A}_{i}^{t})$ for ${n}_{i}$, that is, $d({n}_{j},{n}_{i})\le R$ and ${x}_{j}={{x}^{\prime}}_{j},{y}_{j}={{y}^{\prime}}_{j}$. Then, ${n}_{i}$ is inside the intersection area of the rings taking ${{n}^{\prime}}_{j}$ as the center and $\sqrt{{R}^{2}-{\left({k}_{ij}^{t}\right)}^{2}}$ as the radius, correspondingly.

Proof. As for all ${n}_{j}\in {A}_{i}^{t}$, there is $d({n}_{j},{n}_{i})\le R$, we can see that ${n}_{i}$ is in the intersection area of the spheres taking ${n}_{j}$ as the centers and $R$ as the radius, respectively, as shown in Figure 3. While, every sphere intersects the ${n}_{i}$ plane so as to get its ring. In view of these rings inside the ${n}_{j}$ plane would be the task-rings defined in Equation (7). Then, is in the intersection of these task-rings, such as one of them takes ${{n}^{\prime}}_{j}$ as the center and $\sqrt{{R}^{2}-{\left({k}_{ij}^{t}\right)}^{2}}$ as the radius. The theorem can also verify correctness of the constraints in Equations (11) and (12) for the sampling area.

Lemma 1. Each RGB sequence is unique.

Proof. The lemma can be proved by redectio ad absurbum. Suppose that in PCFL and ACFL there are two different mobile nodes (or samples) with the same RGB sequence at time instant $t$. This indicates that the two sets of corresponding task anchors are the same, and the two corresponding distances or corresponding projection distances are also same, although the mobile nodes (or samples) are different. However, this is a contradiction as, by the trilateration algorithm, two different nodes (or samples) in a three-dimensional region are the same when the distances between four anchors are known.

Theorem 2.The smaller the nearness degree ${\mu}_{{s}_{k}M}^{t}$ is, the closer sample ${s}_{k}$ gets to mobile node ${n}_{i}$.

Proof. It is clear that $\{{R}_{i}^{Mt},{G}_{i}^{Mt},{B}_{i}^{Mt}\}$ is unique to the mobile node ${n}_{i}$ and $\{{R}_{i}^{{s}_{k}t},{G}_{i}^{{s}_{k}t},{B}_{i}^{{s}_{k}t}\}$ is unique to the sample ${s}_{k}$ from Lemma 1. Consider two samples, represented as ${s}_{l}$ and ${s}_{k}$, respectively. Next, we assume that ${\tilde{d}}_{lj}^{t}({\tilde{d}}_{kj}^{t})$ denotes the distance between the sample ${s}_{l}$(${s}_{k}$) and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$), respectively. Assume that:

$${\mu}_{{s}_{l}M}^{t}\le {\mu}_{{s}_{k}M}^{t}$$

Then, the theorem can be proved by redectio ad absurbum. Suppose the sample ${s}_{k}$ is closer to the mobile node ${n}_{i}$ than the sample ${s}_{l}$ and:

$$\left|{\tilde{d}}_{lj}^{t}-{d}_{ij}^{t}\right|<\left|{\tilde{d}}_{kj}^{t}-{d}_{ij}^{t}\right|,{d}_{ij}^{t}={p}_{ij}^{t},(or\text{}{d}^{t}({n}_{i},{n}_{j}))$$

So:
where ${\tilde{V}}_{lj}^{ft}({\tilde{V}}_{kj}^{ft})$ denotes the V value of HSV between the sample ${s}_{l}$(${s}_{k}$) and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$). Then, by Equation (16):
where ${\tilde{\lambda}}_{lj}^{t}({\tilde{\lambda}}_{kj}^{t})$ denotes the proportion factor of distances weights between the sample ${s}_{l}$(${s}_{k}$) and the task projection ${{n}^{\prime}}_{j}$ (or task anchor ${n}_{j}$).

$$\left|{\tilde{V}}_{lj}^{ft}-{V}_{ij}^{ft}\right|>\left|{\tilde{V}}_{kj}^{ft}-{V}_{ij}^{ft}\right|{\displaystyle}f=p,a$$

$$\left|{\tilde{\lambda}}_{lj}^{t}-{\lambda}_{ij}^{t}\right|>\left|{\tilde{\lambda}}_{kj}^{t}-{\lambda}_{ij}^{t}\right|$$

By Equation (13) to Equation (15), we can see:

$$\left|{\tilde{G}}_{lj}^{ft}-{G}_{ij}^{ft}\right|=\left|{\tilde{G}}_{kj}^{ft}-{G}_{ij}^{ft}\right|\uff0c\left|{\tilde{R}}_{lj}^{ft}-{R}_{ij}^{ft}\right|=\left|{\tilde{R}}_{kj}^{ft}-{R}_{ij}^{ft}\right|\uff0c\left|{\tilde{B}}_{lj}^{ft}-{B}_{ij}^{ft}\right|>\left|{\tilde{B}}_{kj}^{ft}-{B}_{ij}^{ft}\right|{\displaystyle}f=p,a$$

So by Equation (17), we have:

$$\left|{R}_{i}^{{s}_{l}t}-{R}_{i}^{Mt}\right|>\left|{R}_{i}^{{s}_{k}t}-{R}_{i}^{Mt}\right|,\left|{G}_{i}^{{s}_{l}t}-{G}_{i}^{Mt}\right|>\left|{G}_{i}^{{s}_{k}t}-{G}_{i}^{Mt}\right|,\left|{B}_{i}^{{s}_{l}t}-{B}_{i}^{Mt}\right|>\left|{B}_{i}^{{s}_{k}t}-{B}_{i}^{Mt}\right|$$

Then:

$${\mu}_{{s}_{l}M}^{t}>{\mu}_{{s}_{k}M}^{t}$$

However, this is a contradiction to Equation (22).

Next we will analysis the time and space consumption in the worst case for PCFL and ACFL.

Theorem 3. The new algorithms take O(n) worst case time and O(n) worst case space.

Proof. Let’s consider a 3D UASNs UN with p anchors as stated before, in the process (a) determination of the sampling area, it takes O(p) time for the mobile node to obtain the angles w.r.t. each task anchor using the AOA method and it requires O(p) space to store angles. Then it takes O(p) time to compute the distances from the mobile node to every task anchor according to the Equation (9) or to every task projection according to the Equation (10) and it requires O(p) space to store the depth information and O(p) space to store the distance. At last it takes O(p) time to confine the samples and it requires O(p) space to store these samples.

In the process (b) RGB values calculation, it first takes O(p) time for the mobile node to convert the RGB values of the task anchors or of the task projections into HSV according to Equation (13) and it requires O(p) space to store these HSV values. Then it takes O(p) time to calculate the changed HSV values according to Equation (14) and it requires O(p) space to store the changed HSV values. Later it takes O(p) time to work out the changed RGB values according to Equation (15) and it requires O(p) space to store the changed RGB values. Finally it takes O(p) time to work out the proportion factor of distances weights and the RGB values for the mobile node according to Equations (16) and (17) and it requires O(p) space to store the proportion factor of distances weights and the RGB values for the mobile node.

In the process (c) filtering and weighted evaluation, assuming sampling m times randomly, then it takes O(m) time to work out the nearness degree according to Equation (18) and it requires O(m) space to store the nearness degree. It takes O(m) time to filter out the samples according to the Equation (19) and it requires O(m) space to store the filtered samples. At last it takes O(m) time to normalize weighted the nearness degree and calculate the coordinates of the mobile node according to Equations (20) and (21) and it requires O(m) space to store the normalized weighted nearness degree and the coordinates of the mobile node.

Therefore, in total, both PCFL and ACFL can be considered as taking O(n) time and O(n) space in the worst case to estimate the coordinates of the mobile node.

Table 2 lists the comparison of worst case computational complexities between the typical algorithms and our new algorithms.

Algori-thms | PCFL/ACFL | Anchor-aid | AUV-aid | AFLA |
---|---|---|---|---|

Time | O(n) | O(nlogn) | O(nlogn) | O(n^{2}) |

Space | O(n) | O(n) | O(n) | O(n) |

## 4. Simulation Results

In this section, we make a comprehensive evaluation for the PCFL algorithm and the ACFL algorithm through simulation experiments on Matlab 7.0. Three localization schemes, Anchor-based [20], AUV-aid [19] and AFLA [8] are compared with PCFL and ACFL. In the simulation experiments, the localization area is defined as 1000 m × 1000 m × 20 m where anchors are randomly deployed. The depth information of mobile nodes and anchors can be obtained by the pressure sensors at each time instant $t$. The original speed of mobile nodes which move in the ocean water is assumed to be 0.1 m/s. The maximum communication radius $R$ is assumed to be 100 m. The localization error ${E}_{i}^{t}$ for the mobile node ${n}_{i},(i=p+1,\mathrm{...}p+q),{n}_{i}\in M$ at time instant $t$ can be calculated by [13]:

$${E}_{i}^{t}={\displaystyle \sum _{k=1}^{T}\sqrt{({\stackrel{\u2322}{x}}_{i}^{t}-{x}_{i}^{t})+({\stackrel{\u2322}{y}}_{i}^{t}-{y}_{i}^{t})+({\stackrel{\u2322}{z}}_{i}^{t}-{z}_{i}^{t})}}/T$$

$({\stackrel{\u2322}{x}}_{i}^{t},{\stackrel{\u2322}{y}}_{i}^{t},{\stackrel{\u2322}{z}}_{i}^{t})$ and $({x}_{i}^{t},{y}_{i}^{t},{z}_{i}^{t})$ are the real coordinate and the estimated coordinate of the mobile node ${n}_{i}$, respectively. We run the simulation 50 times for each group of data, namely $T=50$.

Simulation parameters in this paper are summarized in Table 3.

Parameter | Value |
---|---|

Localization area | 1000 m × 1000 m × 20 m |

The maximum communication radius | 100 m |

The speed of mobile nodes | 2 m/s–20 m/s |

Speed of sound | 1500 m/s |

Error in speed of sound | 0.07 m/s |

The measurement error of communication angle | 0°–10° |

The number of samples | 50–500 |

The density of anchors | 0.5–5 |

The number of anchors | 5–100 |

The number of deployed mobile nodes | 20–100 |

Error in speed of sound | 0.07 m/s |

The times of simulation run | 50 |

#### 4.1. The Localization Error of ACFL and PCFL under Different Parameters

We compare localization performance of PCFL and ACFL through three different variables which are the threshold, the density of anchors and the number of samples.

#### 4.1.1. The Threshold (${\mu}^{t}$)

Figure 5 shows the localization error for both ACFL and PCFL changing with the threshold ${\mu}^{t}$. The density of anchors is set to be 4 and the number of samples is set to be 400 in Figure 5. In general, the larger the threshold, the less number the task anchors which can communicate with mobile nodes. The localization error of ACFL (PCFL) reaches the minimum, when the threshold is set for 0.0142 and 0.01, respectively. The localization error is increasing with the growth of the threshold. In general, the average localization error of ACFL is bigger than that of PCFL as shown in Figure 5. When the threshold is changed from 0.01 to 0.03, the average localization error of PCFL is less than 2 m, while that of ACFL is more than 4 m.

#### 4.1.2. The Number of Samples

Filtering out more samples for ACFL (PCFL) in the process of simulation experiments can improve the localization error, but consumes more energy. Considering this situation, the number of samples which are deployed to localize mobile nodes should be reasonable to reach a compromise between energy savings and localization accuracy. In Figure 6 the threshold is set to be 0.0142 and the density of anchors is set to be 4.

When the number of the deployed samples which are filtered out to localize mobile nodes is much enough, samples are concentrated in the vicinity of the mobile node and the localization error reduces obviously. We can find that the localization error for both PCFL and ACFL is 0.91 m and 4.44 m when the number of the deployed samples is 500, respectively.

#### 4.1.3. The Density of Anchors

In Figure 7 the threshold is set to be 0.0142 and the number of samples is set to be 400. ${N}_{anchor}$ stands for the average number of task anchors in the communication radius R and is assumed to change from 5 to 100. We assume that $V$ denotes the volume of the simulation space. ${D}_{anchor}$ is defined as the density of task anchors and it can be calculated by the formula ${D}_{anchor}=(\frac{4}{3}\pi {R}^{3}){N}_{anchor}/V$ [17], so we can obtain different values of the localization error when ${D}_{anchor}$ varies from 0.5 to 5 in the simulation experiment. We can filter out more task anchors with the increase of ${D}_{anchor}$. The localization error of PCFL (or ACFL) is inversely proportional to ${D}_{anchor}$ and decreases obviously along with the increase of ${D}_{anchor}$ as shown in Figure 7. Because PCFL (or ACFL) can convert three-dimensional localization algorithm to two-dimensional scenario, it can give accurate location and good reliability.

#### 4.1.4. The Estimated and Original Location

In the simulation space, 45 mobile nodes are randomly distributed to localize themselves, the distances between each pair of them are 120 m and 160 m. As we can see in Figure 8, black circles represent the original position, red and blue signs are the estimated coordinates computed by ACFL and PCFL, respectively, so it is quite clear that calculations of PCFL are more close to actual locations.

We can find that localization error of PCFL (or ACFL) reduces slightly when the number of samples is more than 400. When ${D}_{anchor}$ is 4 or larger, the localization error varies smoothly. Based on the running time of simulation experiments and localization error, we set the threshold for 0.0142, ${D}_{anchor}$ for 4, and the number of samples for 400 in the following simulation experiments.

#### 4.1.5. Total Energy Consumption

In Figure 9 the threshold is set to 0.0142 and the number of samples is set to 400. The energy consumption which is based on the energy consumption model referred by [22,23] can be expressed by:
where ${p}_{0}$ as a constant is the least energy consumption level. $f$ denotes the frequency and its unit is Hz, $\alpha (f)$ represents the absorption coefficient relying on the frequency value, underwater temperature and underwater salinity, its unit is dB/km. and ${d}_{ij}^{t}$ denotes the distance between the mobile node and the anchor (or the anchor’ projection).

$$\alpha (f)=\frac{0.1{f}^{2}}{1+{f}^{2}}+\frac{40{f}^{2}}{4100+{f}^{2}}+2.75\times {10}^{-4}{f}^{2}+0.003$$

$$E={p}_{0}\times {d}_{ij}^{t}\times {10}^{(\alpha (f))/10};{d}_{ij}^{t}={p}_{ij}^{t}or{d}_{ij}^{t}={d}^{t}({n}_{i},{n}_{j})$$

It is obvious that total energy consumption for either PCFL or ACFL is increasing with the density of anchors. Energy consumption for ACFL is more than that for PCFL. This also verifies the high energy efficiency of PCFL.

#### 4.1.6. Runtime

In Figure 10 the threshold is set to 0.0142 and the density of anchors is set to 4. Figure 10 presents the simulation experiment runtime using PCFL and ACFL. Since the runtime is the process of data association in fact, the runtime for either PCFL or ACFL is increasing with the growth of the number of the samples. Because the operation process of PCFL is more complicated than that of ACFL, the runtime of ACFL is shorter than that of PCFL.

#### 4.2. Comparison with Different Methods

Here, we run the simulation 50 times for each localization error in Equation (29), then the average localization error can be obtained. We compare the five algorithms as shown in Table 4 which lists the maximum localization error, the minimum localization error, the average localization error and the standard deviation of the five algorithms.

Algorithm | Average Error(m) | Max Error(m) | Min Error(m) | Standard Deviation(m) |
---|---|---|---|---|

Anchor-based | 5.59 | 16.86 | 2.81 | 4.06 |

AUV-aid | 9.82 | 7.72 | 1.56 | 2.69 |

AFLA | 2.63 | 13.89 | 0.31 | 1.8 |

ACFL | 4.56 | 10.22 | 0.51 | 2.06 |

PCFL | 1.83 | 5.01 | 0.14 | 0.87 |

The localization error of the Anchor-based algorithm is susceptible to the error of the estimated distances in relation to the coordinates of the fixed anchors, so the maximum localization error, the minimum localization error and the standard deviation of the Anchor-based algorithm are larger than the other four algorithms. Utilizing geometrical relationships, the AUV-aid method performs localization coarsely, so its average localization error is the biggest. We can see that the average localization error of the ACFL is 4.56, which is larger than that of the AFLA and the PCFL according to the simulation results. Table 4 shows that the PCFL algorithm has better localization performance and smaller localization error, compared with the other four algorithms. The average localization error of PCFL can decline by about 30.4% than AFLA method.

#### 4.3. The Percentage Distribution of the Localization Error

Figure 11 shows the distribution histogram of the localization error, comparing the Anchor-based algorithm, the AUV-aid algorithm, the AFLA algorithm, the ACFL algorithm and the PCFL algorithm. We deploy 20 mobile nodes stochastically in the simulation region. All mobile nodes perform self-localization simultaneously by running the experiment 50 times independently. When the localization error of PCFL and the localization error of ACFL are both less than 2.5 m, the percentage distribution is 88% and 23%, respectively. However the distribution percentage of the localization error of AFLA is lower than that of PCFL. And the distribution percentage of the localization error of Anchor-based is also lower than that of PCFL when the range of the localization error is from 0 to 2.5. The percentage distribution of the localization error of AFLA is the highest compared with the other four algorithms when the localization error is varying from 2.5 to 5. The percentage distribution of PCFL is zero when the localization error is varying from 5 to 20. In a word, PCFL has better localization performance and smaller localization error.

#### 4.4. Error and the Speed of Mobile Nodes

The speed of mobile nodes is an important factor affecting the localization error. Here the speed of mobile nodes is set to vary from 2 m/s to 20 m/s. The results of the simulation experiments as shown in Figure 12 indicate that the faster the moving speed, the bigger the localization error is. Due to using geometrical relationship to localize the mobile nodes coarsely, the localization error of AUV-aid is the maximum and changes stable without downtrend. AFLA used the geographical relationship of neighbor nodes to localize mobile nodes which did not need the information of anchors, so its precision is affected slightly by the speed of mobile node. Since the faster mobile nodes move, the less number of task anchors which can contact with them in three dimensional UASN can be acquired. So with the speed of mobile nodes increasing, the localization error of PCFL is almost equal to that of AFLA. And the overall varying trend of the localization error of PCFL or ACFL rises faster than the other three algorithms. When the speed is lower than 18 m/s, the localization error of PCFL is the minimum. As a whole, PCFL exceeds the other four methods with its average localization error of 3.92 m, much smaller than that of ACFL, 7.33 m, due to the projection technology.

#### 4.5. Error and the Number of Deployed Mobile Nodes

One hundred mobile nodes whose locations are unknown are randomly deployed in the three dimensional localization region. As we can see, in the process of simulation experiments, the five algorithms could localize all the deployed mobile nodes. Because the angles between task anchors and mobile nodes are calculated using the AOA method, the estimated distances between them have low accuracy and the localization error rises obviously with the number of the deployed mobile nodes increasing. The localization error of PCFL is smaller than that of the other four methods in Figure 13.

The average localization error of AUV-aid is bigger than the other four methods. The error variation of the Anchor-based method fluctuates clearly and reaches the maximum value. Compared with ACFL, PCFL is an effective self-localization algorithm, its localization error changes stable and keeps the smallest in the localization process.

## 5. Conclusions

In this paper, two algorithms called PCFL and ACFL using the color filtering method have been proposed for mobile node self-localization in UASNs. The PCFL method is based on the RGB values of task anchors’ projections, while ACFL is based on the RGB values of task anchors. The two methods can improve the coarse localization by combining the CDL method with the AOA measurements. Also the proportion factor of distance can optimize the CDL method and the nearness degrees can help filtering samples more precisely. The proposed methods present better accuracy and robustness than the Anchor-aid, AUV-aid and AFLA methods, especially the PCFL method, when the speed of the mobile nodes is lower. We plan to expand this work with actual underwater experiments and reduce the localization computational complexity in the future.

## Acknowledgments

This research was sponsored by the National Natural Science Foundation of China (Grant No. 61271125—“A Study of Mobile Node Localization Algorithms Based on Parameter Forecast and Sequence Filter for Wireless Sensor Networks”), Natural Science Foundation of Hebei Province (Grant No. F2013205084—“Research on Self-localization algorithms for Mobile Nodes in Wireless Sensor Networks”) and the Educational Commission of Hebei Province (Grant No. Q2012124—“Research on the Localization for Mobile Sensor Networks Based on Sampling Filtering Theoretical Approach”).

## Author Contributions

All authors were involved in the mathematical developments and writing of the paper. The algorithms design was carried out by the Zhihua Liu, the draft writing was carried out by the Jiaxing Chen, the computer simulations were carried out by the Han Gao, and the Figures drawing was carried out by the Wuling Wang and the Shuai Chang.

## Conflicts of Interest

The authors declare no conflict of interest.

## References

- Climent, S.; Sanchez, A.; Capella, J.V.; Meratnia, N.; Serrano, J. Underwater Acoustic Wireless Sensor Networks: Advances and Future Trends in Physical, MAC and Routing Layers. Sensors
**2014**, 14, 795–833. [Google Scholar] [CrossRef] [PubMed] - Erol-Kantarci, M.; Mouftah, H.; Oktug, S. A Survey of Architectures and Localization Techniques for Underwater Acoustic Sensor Networks. IEEE Commun. Surv. Tutor.
**2011**, 13, 487–502. [Google Scholar] [CrossRef] - Lloret, J. Underwater Sensor Nodes and Networks. Sensors
**2013**, 13, 11782–11796. [Google Scholar] [CrossRef] [PubMed] - Isbitiren, G.; Akan, O. Three-dimensional underwater target tracking with acoustic sensor networks. IEEE Trans. Veh. Technol.
**2011**, 60, 3897–3906. [Google Scholar] [CrossRef] - Ramezani, H.; Jamali-Rad, H.; Leus, G. Target localization and tracking for an isogradient sound speed profile. IEEE Trans. Signal Process.
**2013**, 61, 1434–1446. [Google Scholar] [CrossRef] - Zeng, Y.; Cao, J.; Hong, J.; Zhang, S.; Xie, L. Secure localization and location verification in wireless sensor networks: A survey. J. Supercomput.
**2013**, 64, 685–701. [Google Scholar] [CrossRef] - Diamant, R.; Tan, H.; Lampe, L. LOS and NLOS classification for underwater acoustic localization. IEEE Trans. Mobile Comput.
**2014**, 13, 311–323. [Google Scholar] [CrossRef] - Guo, Y.; Liu, Y. Localization for anchor-free underwater sensor networks. Comput. Electron. Eng.
**2013**, 39, 1812–1821. [Google Scholar] [CrossRef] - Chen, H.; Liu, B.; Huang, P.; Liang, J.; Gu, Y. Mobility-assisted node localization based on TOA measurements without time synchronization in wireless sensor networks. Mobile Netw. Appl.
**2012**, 17, 90–99. [Google Scholar] [CrossRef] - Hua-Jie, S.; Xiao-Ping, Z.; Zhi, W. Efficient closed-form algorithms for AOA based self-localization of sensor nodes using auxiliary variables. IEEE Trans. Signal Process.
**2014**, 62, 2580–2594. [Google Scholar] [CrossRef] - Liang, Q.; Zhang, B.; Zhao, C.; Pi, Y. TDoA for passive localization: Underwater versus terrestrial environment. IEEE Trans. Para. Distr.
**2013**, 24, 2100–2108. [Google Scholar] [CrossRef] - Shee, S.H.; Chang, T.C.; Wang, K.; Hsieh, Y.L. Efficient color-theory-based dynamic localization for mobile wireless sensor networks. Wirel. Pers. Commun.
**2011**, 59, 375–396. [Google Scholar] [CrossRef] - Dai, G.; Mao, K.; Lei, Y.; Fan, C.; Shao, B.; Chen, Q. 3D Localization Algorithm Base on Layered Structure for Wireless Sensor Networks. J. Inf. Comput. Sci.
**2013**, 10, 1337–1343. [Google Scholar] [CrossRef] - Gui, L.; Val, T.; Wei, A.; Dalce, R. Improvement of range-free localization technology by a novel DV-hop protocol in wireless sensor networks. Ad Hoc Netw.
**2015**, 24, 55–73. [Google Scholar] [CrossRef][Green Version] - Velimirovic, A.S.; Djordjevic, G.L.; Velimirovic, M.M.; Jovanovic, M.D. Fuzzy ring-overlapping range-free (FRORF) localization method for wireless sensor networks. Comput. Commun.
**2012**, 35, 1590–1600. [Google Scholar] [CrossRef] - Lee, J.; Chung, W.; Kim, E. A new range-free localization method using quadratic programming. Comput. Commun.
**2011**, 34, 998–1010. [Google Scholar] [CrossRef] - Zhi-hua, L.; Shuang, Z. A New Color Dynamic Localization for Mobile Nodes Based on Local Sampling and Filtering in WSN. J. Elect. Inf. Technol.
**2014**, 2385–2392. [Google Scholar] - Diamant, R.; Lampe, L. Underwater Localization with Time-Synchronization and Propagation Speed Uncertainties. IEEE Trans. Mobil Comput.
**2013**, 12, 1257–1269. [Google Scholar] [CrossRef] - Erol, M.; Vieira, F.; Gerla, M. AUV-Aided Localization for Underwater Sensor Networks. In International Conference on Wireless Algorithms, Systems and Applications, Chicago, IL, USA, 1–3 August 2007; pp. 44–54.
- Xiuzhen, C.; Haining, S.; Qilian, L.; Du, D. Silent Positioning in Underwater Acoustic Sensor Networks. IEEE Trans. Veh. Technol.
**2008**, 57, 1756–1766. [Google Scholar] [CrossRef] - Kussat, N.H.; Chadwell, C.D.; Zimmerman, R. Absolute Positioning of an Autonomous Underwater Vehicle Using GPS and Acoustic Measurements. IEEE J. Ocean. Eng.
**2005**, 30, 153–164. [Google Scholar] [CrossRef] - Huang, C.; Wang, Y.; Liao, H.; Lin, C.; Hu, K.; Chang, T. A Power-efficient Routing Protocol for Underwater Wireless Sensor Networks. Appl. Soft Comput.
**2011**, 11, 2348–2355. [Google Scholar] [CrossRef] - Domingo, M.C.; Prior, R. Energy Analysis of Routing Protocols for Underwater Wireless Sensor Networks. Comput. Commun.
**2008**, 31, 1227–1238. [Google Scholar] [CrossRef]

© 2015 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/4.0/).