*Communication* **A Novel Location Source Optimization Algorithm for Low Anchor Node Density Wireless Sensor Networks**

**Zhongliang Deng, Shihao Tang \*, Xiwen Deng, Lu Yin and Jingrong Liu**

School of Electronic Engineering, Beijing University of Posts and Telecommunications, Beijing 100876, China; dengzhl@bupt.edu.cn (Z.D.); dengxiwen@bupt.edu.cn (X.D.); inlu\_mail@bupt.edu.cn (L.Y.); jingrongliu@bupt.edu.cn (J.L.)

**\*** Correspondence: swift71116@bupt.edu.cn; Tel.: +86-010-6119-8509

**Abstract:** Location information is one of the basic elements of the Internet of Things (IoT), which is also an important research direction in the application of wireless sensor networks (WSNs). Aiming at addressing the TOA positioning problem in the low anchor node density deployment environment, the traditional cooperative localization method will reduce the positioning accuracy due to excessive redundant information. In this regard, this paper proposes a location source optimization algorithm based on fuzzy comprehensive evaluation. First, each node calculates its own time-position distribute conditional posterior Cramer-Rao lower bound (DCPCRLB) and transfers it to neighbor nodes. Then collect the DCPCRLB, distance measurement, azimuth angle and other information from neighboring nodes to form a fuzzy evaluation factor set and determine the final preferred location source after fuzzy change. The simulation results show that the method proposed in this paper has better positioning accuracy about 33.9% with the compared method in low anchor node density scenarios when the computational complexity is comparable.

**Keywords:** cooperative localization; location source optimization; fuzzy comprehensive evaluation; DCPCRLB

### **1. Introduction**

The Internet of Things (IoT) is a booming new industry and wireless sensor networks (WSN), as the perception layer of the IoT system [1], provide data collection [2], information transmission [3], scene recognition [4] and other functions to ensure the normal operation of the networked system. Wireless sensor networks can replace humans working in harsh natural environments and complete complex and tedious tasks. They are widely used in precision agriculture [5], elderly care [6], air monitoring [7], smart home [6], disaster supervision [8] and many other fields.

Taking into account the actual needs of IoT systems, WSN usually have the characteristics of real-time communication [9], random and irregular distribution of nodes [10], dynamic topology [11], large scale [12], complex deployment environment [13], etc., which brings a certain degree of difficulty to information collection, processing and analysis. Obtaining accurate location and time information of data sources is a prerequisite for sensor network analysis and application data [9–13]. Therefore, the positioning and time synchronization technology of WSN is an important part of the application of the IoT, which has attracted the enthusiasm of researchers at home and abroad.

Common positioning principles include Approximate Perfect Point-In-Triangulation (APIT) [14], distance vector hop (DV-Hop) [15], received signal strength indicator (RSSI) fingerprint [16] that are range-free method, and RSSI ranging [17], times of arrival (TOA) [18] and time difference of arrival (TDOA) [19] based on ranging information. The positioning accuracy of the range-base localization algorithms are usually better than the range-free positioning localization algorithms. The localization algorithms based on TOA ranging information is one of the main research directions of sensor network positioning due to

**Citation:** Deng, Z.; Tang, S.; Deng, X.; Yin, L.; Liu, J. A Novel Location Source Optimization Algorithm for Low Anchor Node Density Wireless Sensor Networks. *Sensors* **2021**, *21*, 1890. https://doi.org/10.3390/ s21051890

Academic Editor: Simon Tomažiˇc

Received: 21 January 2021 Accepted: 5 March 2021 Published: 8 March 2021

**Publisher's Note:** MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

**Copyright:** © 2021 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 (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

its low cost and high positioning accuracy [20]. However, due to the relatively high cost of anchor nodes, it is difficult to deploy them in large numbers in actual applications. Cooperative localization method can rely on the location information and communication channels of other nodes to provide coordinated information to improve the positioning performance of the system [21]. However, the coordinated information in the scene of low anchor node density may also cause a decrease in positioning accuracy [22], as shown in Figure 1. its low cost and high positioning accuracy [20]. However, due to the relatively high cost of anchor nodes, it is difficult to deploy them in large numbers in actual applications. Cooperative localization method can rely on the location information and communication channels of other nodes to provide coordinated information to improve the positioning performance of the system [21]. However, the coordinated information in the scene of low anchor node density may also cause a decrease in positioning accuracy [22], as shown in Figure 1.

information is one of the main research directions of sensor network positioning due to

*Sensors* **2021**, *21*, x FOR PEER REVIEW 2 of 15

**Figure 1.** Different position accuracy with different anchor node density. Under low anchor node density, the number of neighbor nodes to be located in the position source increases, and the uncertainty of the localization information of the position source increases, resulting in a decrease in the position accuracy of the node to be located. **Figure 1.** Different position accuracy with different anchor node density. Under low anchor node density, the number of neighbor nodes to be located in the position source increases, and the uncertainty of the localization information of the position source increases, resulting in a decrease in the position accuracy of the node to be located.

Therefore, it is necessary to optimize and screen out the location source that is helpful to improve the positioning performance. The main contributions of this paper are summarized as follows: Therefore, it is necessary to optimize and screen out the location source that is helpful to improve the positioning performance. The main contributions of this paper are summarized as follows:


(3) The validity and rationality of the proposed method are verified by experiments. The structure of this paper is as follows: Section 1 is the introduction, which summarizes the background knowledge and explains the significance of studying the location source select in cooperative localization. Section 2 lists the related work of this research direction in recent years. Section 3 gives out the system model of cooperative localization in low anchor node density, then proposes a novel location source select method based on fuzzy comprehensive evaluation. Section 4 shows the simulation scenario, analyses the performances of the proposed method in this paper and discusses the future work of this The structure of this paper is as follows: Section 1 is the introduction, which summarizes the background knowledge and explains the significance of studying the location source select in cooperative localization. Section 2 lists the related work of this research direction in recent years. Section 3 gives out the system model of cooperative localization in low anchor node density, then proposes a novel location source select method based on fuzzy comprehensive evaluation. Section 4 shows the simulation scenario, analyses the performances of the proposed method in this paper and discusses the future work of this studying. Section 5 presents a summary of the research content of this paper.

#### studying. Section 5 presents a summary of the research content of this paper. **2. Related Work**

In recent years, anchor node selection has been a research topic in cooperative localization. Researchers pay lot of attention to anchor node selection, but the ambiguity of nodes position and distance measurement leads to a low accuracy of node position. So far, domestic and foreign experts and scholars have done a lot of research on anchor node selection from different aspects and have achieved good results. The main work is as follow:

In [23], a localization method called mobile-beacon based iterative localization (MBIL) is proposed. In this method, the position confidence of the node is calculated with the number of iterations, the residual energy and the deviation degree error of the localized node's estimated location. The confidence is used to optimize the location source, and could achieve a high positioning performance is achieved in a short time.

Reference [24] analyzes the localization error caused by the selection of anchor nodes first. Based on above analysis conclusion, they proposes an improved least square localization algorithm based on the selection of anchor nodes with distance clustering (LSL-DC). With distance clustering, the anchor nodes are chosen. The simulation results indicate LSL-DC algorithm can improve the localization precision.

In [25], distance measure errors are also considered as the most significant factor which affect position accuracy, a optimizing method called node segmentation with improved particle swarm optimization (NS-IPSO) is proposed to filter the positioning source by the distance between nodes and the communication frequency, so as to avoid large distance measurement errors and improve positioning accuracy.

Reference [26] considers a localization problem in non-uniformly and holes in application environment, which affect the accuracy of distance estimation and causes large position errors in node positioning. They proposed a localization method called boundarybased anchor selection method for WSNs node localization (BASL). In this method, nodes first explore WSN connectivity to confirm whether they are boundary region nodes. Then, the node to be locate selects anchor nodes by checking the number of boundary region nodes in their shortest path between itself and anchor nodes. The results show that the BASL method can alleviate localization error which is caused by the hole in the scenarios.

Reference [27] analyzed the impact of horizontal dilution of precision (HDOP) on positioning accuracy in underwater scenes, and selected the node with the smallest HDOP as the location source to obtain the highest positioning accuracy, which called generalized second-order time-difference-of-arrival (GSTDOA) algorithm.

In [28], an enhanced three-dimensional DV-hop algorithm is proposed, which enhance its location accuracy. Coplanarity is used to select an optimal set of beacon nodes around an unidentified node for its location estimation.

Reference [29] proposed social network analysis based localization technique with closeness centrality (SNA-CC). Closeness centrality is obtained by calculating the average distance value between the node and all its neighbor nodes. This paper uses this as the importance evaluation criterion of nodes to screen the nodes. After screening, the positioning accuracy has been improved to a certain extent, and its essence is still in the screening of distance measurement errors.

In [30], a method called dynamic reference selection-based self-localization algorithm (DRSL) is proposed which combine location sources with the smallest least square error were selected to achieve the best positioning accuracy.

The following Table 1 summarizes the above-mentioned location source selection algorithm literature, the screening factors used, and the method of fusion between factors, and compares them with the method proposed in this article.


**Table 1.** Comparative of different location source selection algorithms. tion degree error

**Location Source Selection Algorithm in Localization** 

MBIL[23]

*Sensors* **2021**, *21*, x FOR PEER REVIEW 4 of 15

**Table 1.** Comparative of different location source selection algorithms.

**Factors of Location Source Selection** 

the number of iterations, the rediual energy and the devia**Method of Fusion between Factors** 

linear combination

The above methods only consider part of the factors that affect the positioning performance, and do not include all factors in the positioning source optimization framework. The main contribution of this paper is a novel optimization algorithm of the fuzzy comprehensive evaluation [31] framework, which forms a flexible and fast positioning source selection framework. At the same time, it is based on many factors to select the location source such as the DCPCRLB considering the influence of clock, distance observation, direction angle, etc. The above methods only consider part of the factors that affect the positioning performance, and do not include all factors in the positioning source optimization framework. The main contribution of this paper is a novel optimization algorithm of the fuzzy comprehensive evaluation [31] framework, which forms a flexible and fast positioning source selection framework. At the same time, it is based on many factors to select the location source such as the DCPCRLB considering the influence of clock, distance observation, direction angle, etc.

#### **3. Location Source Selection Algorithm Based on Fuzzy Comprehensive Evaluation 3. Location Source Selection Algorithm Based on Fuzzy Comprehensive Evaluation**

In this section, first a two-dimensional positioning scene is shown, and the positioning principle and positioning method used in this article are basically explained. Then the DCPCRLB is introduced to pave the way for the proposed location source optimization method. Finally, the node selection algorithm proposed in this article is introduced, and the steps and operation process of the algorithm are introduced. In this section, first a two-dimensional positioning scene is shown, and the positioning principle and positioning method used in this article are basically explained. Then the DCPCRLB is introduced to pave the way for the proposed location source optimization method. Finally, the node selection algorithm proposed in this article is introduced, and the steps and operation process of the algorithm are introduced.

As shown in the Figure 2, the positioning node selection is an optional step after calculating the distance measurement in the overall positioning process and before the positioning solution. The addition of positioning node selection can reduce the computational complexity of subsequent steps, thereby reducing the time-consuming of the overall positioning process. At the same time, since the node selection screens low-quality positioning sources, the positioning accuracy can be improved. As shown in the Figure 2, the positioning node selection is an optional step after calculating the distance measurement in the overall positioning process and before the positioning solution. The addition of positioning node selection can reduce the computational complexity of subsequent steps, thereby reducing the time-consuming of the overall positioning process. At the same time, since the node selection screens low-quality positioning sources, the positioning accuracy can be improved.

**Figure 2. Figure 2.**  Flow chart of cooperative localization with location source optimization. Flow chart of cooperative localization with location source optimization.

#### *3.1. System Model*

In the actual layout, the anchor nodes in the same scene are usually at the same height, so there is a big error in height measurement. Height measurement is usually achieved by other methods, so two-dimensional scenario is considered. The positioning scene includes anchor nodes and nodes to be positioned. The position vector of node *i* at time *l* is represented by *xi*,*<sup>l</sup>* = - *xi*,*<sup>l</sup> yi*,*<sup>l</sup> T* , and the clock slope is represented by *ai*,*<sup>l</sup>* , e*ti*,*<sup>l</sup>* −e*ti*,*l*−<sup>1</sup> /(*T<sup>l</sup>* − *<sup>T</sup>l*−1), <sup>e</sup>*ti*,*<sup>l</sup>* represents the local time of node *i*, and *T<sup>l</sup>* represents the real time. Assume that the anchor node time is synchronized with the real time, that

is, for anchor node *i*, *ai*,*<sup>l</sup>* = 1. The estimated vector of the node *i* to be located at time *l* is *θi*,*<sup>l</sup>* = - *xi*,*<sup>l</sup> yi*,*<sup>l</sup> ai*,*<sup>l</sup> T* , its line-of-sight neighbor node set is defined as *Ni*,*<sup>l</sup>* . The set of vectors to be estimated for all nodes to be located at time *l* is **Θ***<sup>l</sup>* = · · · , *θi*,*<sup>l</sup>* , · · · .

Node *i* obtains TOA observations by receiving information from neighboring node *j* at time *l* as follows:

$$\widetilde{\mathbf{r}}\_{\mathbf{i}\mathbf{j},l} = ||\mathbf{x}\_{\mathbf{i},l} - \mathbf{x}\_{\mathbf{j},l}|| + \mathbf{c}T\left(a\_{\mathbf{i},l} - a\_{\mathbf{j},l}\right) + \mathbf{n}\_{\mathbf{i}\mathbf{j},l}.\tag{1}$$

where ||*xi*,*<sup>l</sup>* − *xj*,*<sup>l</sup>* || represents the Euclidean distance between node *i* and node *j* at time *l*, *c* is the speed of light, T is the time difference between adjacent moments, and *nij*,*<sup>l</sup>* is TOA observation noise, assuming that it conforms to Gaussian distribution as *<sup>n</sup>ij*,*<sup>n</sup>* ∼ N 0, σ 2 *r* . Then the probability density function of <sup>e</sup>*rij*,*<sup>l</sup>* with respect to *<sup>θ</sup>i*,*<sup>l</sup>* , *θj*,*<sup>l</sup>* can be expressed as:

$$p\left(\widetilde{r}\_{ij,l}\Big|\theta\_{i,l},\theta\_{j,l}\right) = \frac{1}{\sqrt{2\pi\sigma\_r^2}}\exp\left(\frac{\left(\widetilde{r}\_{ij,l} - ||\mathbf{x}\_{i,l} - \mathbf{x}\_{j,l}|| - cT\left(a\_{i,l} - a\_{j,l}\right)\right)^2}{2\sigma\_r^2}\right),\tag{2}$$

Assuming that the change process of the vector *θi*,*<sup>l</sup>* to be estimated at node *i* conforms to the Gaussian Markov process [32], according to the Bayesian formula:

$$p\left(\boldsymbol{\theta}\_{i,l}\middle|\boldsymbol{\tilde{r}}\_{i\boldsymbol{j},l}\right)\propto p(\boldsymbol{\theta}\_{i,l}\middle|\boldsymbol{\theta}\_{i,l-1})\prod\_{j\in\mathcal{N}\_{i,l}}p\left(\boldsymbol{\tilde{r}}\_{i\boldsymbol{j},l}\middle|\boldsymbol{\underline{\theta}}\_{i\boldsymbol{j},l}\middle|\boldsymbol{\underline{\theta}}\_{j,l}\right),\tag{3}$$

According to the MAP criterion, the estimated value *θ*ˆ *<sup>i</sup>*,*<sup>l</sup>* of the vector *θi*,*<sup>l</sup>* to be estimated at node *i* can be expressed as:

$$\begin{split} \boldsymbol{\hat{\theta}}\_{i,l} &= \operatorname\*{arg\max}\_{\boldsymbol{\Theta}\_{i,l}} p\left(\boldsymbol{\theta}\_{i,l} \middle| \boldsymbol{\tilde{r}}\_{i j, l}, \boldsymbol{\theta}\_{j,l}\right) \\ &= \operatorname\*{arg\max}\_{\boldsymbol{\Theta}\_{i,l}} p(\boldsymbol{\Theta}\_{i,l} \middle| \boldsymbol{\Theta}\_{i,l-1}) \prod\_{j \in \mathcal{N}\_{i,l}} p\left(\boldsymbol{\tilde{r}}\_{i j, l} \middle| \boldsymbol{\tilde{\theta}}\_{i J, \nu} \middle| \boldsymbol{\tilde{\theta}}\_{j,l}\right), \end{split} \tag{4}$$

#### *3.2. Distributed Cramer-Rao Lower Bound*

Cramer-Rao lower bound (CRLB) is the inverse matrix of the Fisher Information Matrix (FIM) of the random variable *θi*,*<sup>l</sup>* , and is a theoretical lower bound of the mean square error of the target state estimation. The conditional posterior CRLB (CPCRLB) of the estimated state *θ*ˆ *<sup>i</sup>*,*<sup>l</sup>* of node *i* can be expressed as:

$$\begin{array}{lcl} MSE\left(\hat{\boldsymbol{\theta}}\_{i,l} \middle| \widecheck{\boldsymbol{r}}\_{ij,l}\right) &= E\left\{ \left[\hat{\boldsymbol{\theta}}\_{i,l} - \boldsymbol{\theta}\_{i,l}\right] \left[\hat{\boldsymbol{\theta}}\_{i,l} - \boldsymbol{\theta}\_{i,l}\right]^T \middle| \widecheck{\boldsymbol{r}}\_{i,l} \right\} \\ &\geq F^{-1}\left(\hat{\boldsymbol{\theta}}\_{i,l} \middle| \widecheck{\boldsymbol{r}}\_{i,l}\right), \end{array} \tag{5}$$

Among them, *F θ*ˆ *i*,*l* e*ri*,*l* represents the conditional FIM of the target state estimated value *θ*ˆ *i*,*l* . [33] gives the global Fisher information matrix *F*(*l*) iterative calculation formula of centralized CPCRLB, which can be applied to a centralized network structure with a central fusion center to realize a centralized cooperative localization. This article is aimed at a distributed network structure, and each node cannot obtain the global Fisher information matrix. Therefore, we adjust the above formula to obtain the local Fisher information matrix iterative formula corresponding to the DCPCRLB:

$$\mathbf{F}\_{i}(l) \approx \mathbf{B}\_{i}^{22}(l-1) - \mathbf{B}\_{i}^{21}(l-1) \left(\mathbf{B}\_{i}^{11}(l-1) + \mathbf{F}\_{i}(l-1)\right)^{-1} \mathbf{B}\_{i}^{12}(l-1),\tag{6}$$

where:

$$\mathcal{B}\_{i}^{11}(l-1) = \operatorname{E}\left(-\Delta\_{\theta\_{i,l-1}}^{\theta\_{i,l-1}} \ln p(\theta\_{i,l}|\theta\_{i,l-1})\right),\tag{7}$$

$$\mathbf{B}\_{i}^{12}(l-1) = E\left(-\Delta\_{\mathbf{e}\_{i,l-1}}^{\theta\_{l,l}} \ln p(\boldsymbol{\theta}\_{i,l}|\boldsymbol{\theta}\_{i,l-1})\right) = \left(\mathbf{B}\_{i}^{21}(l-1)\right)^{T} \tag{8}$$

$$\mathcal{B}\_{i}^{22}(l-1) = \mathcal{E}\left(-\Delta\_{\theta\_{l,l}}^{\theta\_{l,l}}(\ln p(\theta\_{i,l}|\theta\_{i,l-1}) + \ln p(\tilde{r}\_{i,l}|\theta\_{i,l}))\right),\tag{9}$$

where ∆ **Θ***l* **Θ***l*−<sup>1</sup> <sup>=</sup> <sup>∇</sup>**Θ***l*−<sup>1</sup>∇*<sup>T</sup>* **Θ***l* , ∇**Θ***<sup>l</sup>* = h · · · , *∂ ∂θi*,*<sup>l</sup>* , · · ·i*<sup>T</sup>* . *F*(*l*) is a global Fisher information matrix. The DCPCRLB of node *i* can be obtained by inverting the Fisher information matrix, that is, *CRLB θj*,*<sup>l</sup>* = *F* −1 *i* (*l*).

#### *3.3. Location Source Optimization Algorithm*

In a 2-dimensional wireless sensor network, the node to be located needs to establish communication with at least three anchor nodes to complete positioning. In the locationtime joint estimation problem, it is necessary to establish communication with at least four anchor nodes to complete the calculation of the vector to be estimated. In the scenario of low anchor node density, the cooperative localization method provides neighbor nodes as pseudo-anchor nodes for the node to be located, but the pseudo-anchor node itself has low accuracy as the node to be located, and the inappropriate introduction of too many pseudo-anchor nodes will affect the final estimation result has a serious impact, so it is necessary to optimize the introduced pseudo-anchor nodes.

In this section, we will introduce the fuzzy comprehensive evaluation method to design the location source selection algorithm. For node *j* ∈ *Ni*,*<sup>l</sup>* to participate in the optimal process of positioning and settlement, the DCPCRLB *posCRLBj*,*<sup>l</sup>* , node distance measurement <sup>e</sup>*rij*,*<sup>l</sup>* , direction angle *αij*,*<sup>l</sup>* will participate in the judgment as a set of factors:

$$\text{proCLR}B\_{j,l} = \text{CRLB}\_{1,1} \left(\boldsymbol{\theta}\_{j,l-1}\right) + \text{CRLB}\_{2,2} \left(\boldsymbol{\theta}\_{j,l-1}\right) + Z \cdot c^2 \text{CRLB}\_{3,3} \left(\boldsymbol{\theta}\_{j,l-1}\right), \tag{10}$$

$$\alpha\_{i\bar{j},l} = \arctan \frac{\mathbf{x}\_{j,l-1} - \mathbf{x}\_{i,l-1}}{y\_{j,l-1} - y\_{i,l-1}},\tag{11}$$

*CRLB*1,1 *θj*,*l*−<sup>1</sup> represents the element in the first row and first column of *CRLB θj*,*l*−<sup>1</sup> , and Z is the scaling constant. The raw data *Di*,*<sup>l</sup>* of the candidate node for node i is:

$$\mathbf{D}\_{l,l} = \begin{bmatrix} \begin{array}{cccc} \text{posCRLB}\_{1,l} & \text{posCRLB}\_{2,l} & \cdots & \text{posCRLB}\_{N,l} \\ \tilde{r}\_{l1,l} & \tilde{r}\_{l2,l} & \cdots & \tilde{r}\_{lN,l} \\ \mathbf{a}\_{i1,l} & \mathbf{a}\_{i2,l} & \cdots & \mathbf{a}\_{iN,l} \end{array} \end{bmatrix} \tag{12}$$

where *M* is the number of nodes to be selected for node *i*. Then standardize the data and determine the membership function of each factor according to the number of neighbor anchor nodes and the number of nodes participating in the positioning solution, and perform fuzzy evaluation on the selected nodes to obtain the evaluation matrix *Ai*,*<sup>l</sup>* :

$$A\_{i,l} = \begin{bmatrix} a\_{11} & a\_{12} & \cdots & a\_{1M} \\ a\_{21} & a\_{22} & \cdots & a\_{2M} \\ a\_{31} & a\_{32} & \cdots & a\_{3M} \end{bmatrix} \tag{13}$$

where:

$$a\_{1j} = \frac{\max\_j posCRLB\_{j,l} - posCRLB\_{j,l}}{\max\_j posCRLB\_{j,l} - \min\_j posCRLB\_{j,l}},\tag{14}$$

$$a\_{2j} = \frac{\max\_{j} \tilde{r}\_{ij,l} - \tilde{r}\_{ij,l}}{\max\_{j} \tilde{r}\_{ij,l} - \min\_{j} \tilde{r}\_{ij,l}} \, \tag{15}$$

$$a\_{3j} = \frac{\max\_{j} ||\varphi\_{i,l} - \mathfrak{a}\_{ij,l}|| - ||\varphi\_{i,l} - \mathfrak{a}\_{ij,l}||}{\max\_{j} ||\varphi\_{i,l} - \mathfrak{a}\_{ij,l}|| - \min\_{j} ||\varphi\_{i,l} - \mathfrak{a}\_{ij,l}||},\tag{16}$$

Among them, *ϕi*,*<sup>l</sup>* is jointly determined by the direction angle of neighbor anchor nodes and the number of undetermined sources. The weight function matrix *<sup>P</sup>i*,*<sup>l</sup>* <sup>=</sup> - *w*<sup>1</sup> *w*<sup>2</sup> *w*<sup>3</sup> can be determined by methods such as entropy weight method [34] and analytical hierarchy process (AHP) [35]. Finally, a fuzzy transformation *Qi*,*<sup>l</sup>* = *Pi*,*<sup>l</sup>* ·*Ai*,*<sup>l</sup>* is performed to obtain the evaluation results of each candidate node, and the one with the largest value is selected as the preferred source for positioning. Among them, , is jointly determined by the direction angle of neighbor anchor nodes and the number of undetermined sources. The weight function matrix , = ሾଵ ଶ ଷሿ can be determined by methods such as entropy weight method [34] and analytical hierarchy process (AHP) [35]. Finally, a fuzzy transformation , = , ∙ , is performed to obtain the evaluation results of each candidate node, and the one with the largest value is selected as the preferred source for positioning.

ฮ, − ,ฮ − ฮ, − ,ฮ

, (16)

ฮ, − ,ฮ − min ฮ, − ,ฮ

*Sensors* **2021**, *21*, x FOR PEER REVIEW 7 of 15

max

max

ଷ =

As shown in Figure 3, after obtaining neighbor node information and distance measurement, the positioning process enters the positioning source optimization algorithm proposed in this article. First, a certain number of anchor nodes are included in the preferred location source *Si*,*<sup>l</sup>* , and then according to Equations (10) and (11) to calculate the raw data *Di*,*<sup>l</sup>* of all other neighbor nodes. The evaluation matrix *Ai*,*<sup>l</sup>* is obtained after normalization processing according to Equations (14)–(16), and the weight function matrix *Pi*,*<sup>l</sup>* is obtained according to the method mentioned in [34]. Finally, the evaluation value matrix *Qi*,*<sup>l</sup>* of each node is obtained through fuzzy transformation, and the node with the highest evaluation value is selected from it and included in *Si*,*<sup>l</sup>* . If the preferred positioning source is sufficient, the location source optimization ends and the positioning solution is entered, otherwise *Di*,*<sup>l</sup>* is recalculated. As shown in Figure 3, after obtaining neighbor node information and distance measurement, the positioning process enters the positioning source optimization algorithm proposed in this article. First, a certain number of anchor nodes are included in the preferred location source ,, and then according to Equations (10) and (11) to calculate the raw data , of all other neighbor nodes. The evaluation matrix , is obtained after normalization processing according to Equations (14)–(16), and the weight function matrix , is obtained according to the method mentioned in [34]. Finally, the evaluation value matrix , of each node is obtained through fuzzy transformation, and the node with the highest evaluation value is selected from it and included in ,. If the preferred positioning source is sufficient, the location source optimization ends and the positioning solution is entered, otherwise , is recalculated.

**Figure 3.** Flow chart of location source selection algorithm based on fuzzy comprehensive evalua-**Figure 3.** Flow chart of location source selection algorithm based on fuzzy comprehensive evaluation.

#### tion. **4. Simulation Scenario and Result Analysis**

#### **4. Simulation Scenario and Result Analysis**  *4.1. Simulation Scenario Set*

of zone 1.

*4.1. Simulation Scenario Set*  In order to make our simulation environment close to the actual scene, the simulation scene will be set according to the zone 1 scene in Figure 4a, which is underground parking lot in Beijing University of Posts and Telecommunications, and Figure 4b is the real scene In order to make our simulation environment close to the actual scene, the simulation scene will be set according to the zone 1 scene in Figure 4a, which is underground parking lot in Beijing University of Posts and Telecommunications, and Figure 4b is the real scene of zone 1.

(**a**) (**b**) **Figure 4.** (**a**) Simulation scenario. Zone 1 is the used simulation scene. (**b**) The real scene of zone 1 [22]. **Figure 4.** (**a**) Simulation scenario. Zone 1 is the used simulation scene. (**b**) The real scene of zone 1 [22].

The simulation scene is set as a rectangular area of 20 m × 24 m according to the real size of zone 1. To set the average number of anchor node connections around 3, the number of anchor nodes is 4, and the maximum communication distance is set to 10 m. The number of nodes to be located is set to 20 and all nodes conform to the uniform distribution in the simulation scene. All TOA observations are the line of sight (LOS), and the distance measurement error conforms to Gaussian distribution with standard deviation of 0.3 m according to the maximum error of DW1000 (Decawave, Dublin, Ireland). All simulation results are the average of 1000 independent runs. The simulation scene is set as a rectangular area of 20 m × 24 m according to the real size of zone 1. To set the average number of anchor node connections around 3, the number of anchor nodes is 4, and the maximum communication distance is set to 10 m. The number of nodes to be located is set to 20 and all nodes conform to the uniform distribution in the simulation scene. All TOA observations are the line of sight (LOS), and the distance measurement error conforms to Gaussian distribution with standard deviation of 0.3 m according to the maximum error of DW1000 (Decawave, Dublin, Ireland). All simulation results are the average of 1000 independent runs.

The initial position measurement error of nodes conforms to the Gaussian distribution, the standard deviation of the anchor node is 0.1 m, the node to be located is 10 m. In the simulation process, the clock slope of node to be located is set as 1 ppm according to the performance of the crystal oscillator used in the hardware (TG5032CFN, EPSON, Nagano-ken, Japan). Anchor nodes are static and the velocity of node to be located is set to 3 m/s as almost the fastest speed of human walking. Root mean square error (RMSE) and cumulative distribution functions (CDF) are used to evaluate the performance of proposed method. The initial position measurement error of nodes conforms to the Gaussian distribution, the standard deviation of the anchor node is 0.1 m, the node to be located is 10 m. In the simulation process, the clock slope of node to be located is set as 1 ppm according to the performance of the crystal oscillator used in the hardware (TG5032CFN, EPSON, Nagano-ken, Japan). Anchor nodes are static and the velocity of node to be located is set to 3 m/s as almost the fastest speed of human walking. Root mean square error (RMSE) and cumulative distribution functions (CDF) are used to evaluate the performance of proposed method.

#### *4.2. Simulation Result Analysis 4.2. Simulation Result Analysis*

It can be seen from Figure 5 that when the number of neighbor anchor nodes is small, both the DRSL method and the method proposed in this article can effectively improve the positioning accuracy, further increase the number of adjacent anchor nodes, and the positioning source optimization algorithm can significantly improve the positioning accuracy. In addition, the different performance is noticed when all neighbor nodes are used in the graph to participate in positioning. When the neighbor anchor nodes are sufficient, the joining of neighbor cooperative nodes is difficult to improve the positioning accuracy. When the number of neighbor anchor nodes is small, the addition of neighbor cooperative nodes has a positive impact on the positioning accuracy. The proposed algorithm opti-It can be seen from Figure 5 that when the number of neighbor anchor nodes is small, both the DRSL method and the method proposed in this article can effectively improve the positioning accuracy, further increase the number of adjacent anchor nodes, and the positioning source optimization algorithm can significantly improve the positioning accuracy. In addition, the different performance is noticed when all neighbor nodes are used in the graph to participate in positioning. When the neighbor anchor nodes are sufficient, the joining of neighbor cooperative nodes is difficult to improve the positioning accuracy. When the number of neighbor anchor nodes is small, the addition of neighbor cooperative nodes has a positive impact on the positioning accuracy. The proposed algorithm optimizes its role in the positioning process by screening collaborative nodes.

mizes its role in the positioning process by screening collaborative nodes. These results in Figure 6 show that the position accuracy affected by communication distance. Obviously, the position accuracy will increase as the communication distance increases. This is because the number of nodes that can be selected increases after the communication distance is increased, and the higher the possibility of selecting a higherquality node combination, so various methods can obtain better positioning results. At the same time, the position accuracy of the proposed method is better than other methods. This is because the method in this article comprehensively considers many factors that affect the positioning accuracy. The improvement of the communication distance is very effective for improving the positioning accuracy, but as the communication distance increases, the improvement effect of the positioning accuracy becomes smaller. This is because it is difficult for nodes that are too far away to provide effective information for positioning. Therefore, in practical applications, a rigorous analysis of the communication distance, that

*Sensors* **2021**, *21*, x FOR PEER REVIEW 9 of 15

orange represents the cooperative localization using all neighbor nodes as the source, the purple line represents the DRSL

(**a**) (**b**)

*Sensors* **2021**, *21*, x FOR PEER REVIEW 9 of 15

is, the transmission and reception power, is performed according to the requirements for positioning accuracy, and a reasonable communication distance is obtained. **Figure 5.** Comparison of positioning accuracy of various source selection methods under different node densities. (**a**) is the comparison when the average number of anchor node connections is 3. (**b**) is the comparison when the average number of anchor node connections is 10. The red line represents the non-cooperative localization using only anchor nodes, the

**Figure 5.** Comparison of positioning accuracy of various source selection methods under different node densities. (**a**) is the comparison when the average number of anchor node connections is 3. (**b**) is the comparison when the average number of anchor node connections is 10. The red line represents the non-cooperative localization using only anchor nodes, the orange represents the cooperative localization using all neighbor nodes as the source, the purple line represents the DRSL source selection location algorithm proposed in [30], the blue line represents the MBIL algorithm in [23] and the green line represents the source optimization algorithm proposed in this article for cooperative localization. **Figure 5.** Comparison of positioning accuracy of various source selection methods under different node densities. (**a**) is the comparison when the average number of anchor node connections is 3. (**b**) is the comparison when the average number of anchor node connections is 10. The red line represents the non-cooperative localization using only anchor nodes, the orange represents the cooperative localization using all neighbor nodes as the source, the purple line represents the DRSL source selection location algorithm proposed in [30], the blue line represents the MBIL algorithm in [23] and the green line represents the source optimization algorithm proposed in this article for cooperative localization. cause it is difficult for nodes that are too far away to provide effective information for positioning. Therefore, in practical applications, a rigorous analysis of the communication distance, that is, the transmission and reception power, is performed according to the requirements for positioning accuracy, and a reasonable communication distance is obtained.

**Figure 6.** CDF of position error under different communication distance *Rc*. In the figure, the purple line represents the DRSL source selection location algorithm proposed in [30], the blue line represents the MBIL algorithm in [23] and the green line represents the source optimization algorithm proposed in this article.

Figure 7 shows the positioning accuracy of the node to be located under different initial positioning errors. It can be seen from the figure that the positioning accuracy improves with the decrease of the initial positioning error, because the quality of the position information of the neighboring nodes will affect the positioning accuracy of the nodes. The positioning accuracy of the method proposed in this paper is better than the other two comparison methods. This is because this paper uses DCPCRLB as the evaluation basis for the location information, which has a better estimate of the quality of the location information.

rithm proposed in this article.

location information.

**Figure 7.** CDF of position error under different initial position error. In the figure, the purple line represents the DRSL source selection location algorithm proposed in [30], the blue line represents the MBIL algorithm in [23] and the green line represents the source optimization algorithm proposed in this article. **Figure 7.** CDF of position error under different initial position error. In the figure, the purple line represents the DRSL source selection location algorithm proposed in [30], the blue line represents the MBIL algorithm in [23] and the green line represents the source optimization algorithm proposed in this article.

**Figure 6.** CDF of position error under different communication distance . In the figure, the purple line represents the DRSL source selection location algorithm proposed in [30], the blue line represents the MBIL algorithm in [23] and the green line represents the source optimization algo-

The above Figure 7 shows the positioning accuracy of the node to be located under different initial positioning errors. It can be seen from the figure that the positioning accuracy improves with the decrease of the initial positioning error, because the quality of the position information of the neighboring nodes will affect the positioning accuracy of the nodes. The positioning accuracy of the method proposed in this paper is better than the other two comparison methods. This is because this paper uses DCPCRLB as the evaluation basis for the location information, which has a better estimate of the quality of the

In Figure 8, compared with the other three cases, the position accuracy performs best when ௫ = 3 m/s. Although the motion state will cause a certain error in the position estimation of the node to be located, it also has the advantage of changing the topology and optimizing the node distribution. Therefore, when ௫ = 3 m/s, the position accuracy is slightly improved compared to the static situation. When the speed is too high (௫ = 8 m/s or ௫ = 15 m/s), the error caused by the movement cannot be compensated by optimizing the node distribution. The error caused by motion can be compensated by combining positioning with sensor data such as accelerometer or gyroscope [36]. In Figure 8, compared with the other three cases, the position accuracy performs best when *vmax* = 3 m/s. Although the motion state will cause a certain error in the position estimation of the node to be located, it also has the advantage of changing the topology and optimizing the node distribution. Therefore, when *vmax* = 3 m/s, the position accuracy is slightly improved compared to the static situation. When the speed is too high (*vmax* = 8 m/s or *vmax* = 15 m/s), the error caused by the movement cannot be compensated by optimizing the node distribution. The error caused by motion can be compensated by combining positioning with sensor data such as accelerometer or gyroscope [36]. *Sensors* **2021**, *21*, x FOR PEER REVIEW 11 of 15

**Figure 8.** CDF of position error under different maximum node speed ௫. In the figure, the red line represents the position error CDF when all nodes are static, the orange line represents ௫ = 3 /, and the purple line represents ௫ = 8 /. The blue line indicates the situation where ௫ = 15 /. In all cases, anchor node is static, the nodes to be located conform to the uniform distribution with the maximum speed ௫, and the direction of movement is random. **Figure 8.** CDF of position error under different maximum node speed *vmax*. In the figure, the red line represents the position error CDF when all nodes are static, the orange line represents *vmax* = 3 m/s, and the purple line represents *vmax* = 8 m/s. The blue line indicates the situation where *vmax* = 15 m/s. In all cases, anchor node is static, the nodes to be located conform to the uniform distribution with the maximum speed *vmax*, and the direction of movement is random.

The above Figure 9 compares the positioning performance when using different

seen that as the number of preferred positioning sources increases, the position accuracy is improved. As the number of preferred positioning sources increases, the signal quality of the position sources and the geometric distribution of the position sources will be improved, and the position accuracy will be improved to a certain extent, but the improvement effect will decrease as the number of equipotential sources increases. By comparing the results with Figure 5, it can be found that there is a limit to improving the positioning effect by increasing the number of position sources. Too many position sources may also cause a decrease in position accuracy, which is the fact reflected by the yellow line in Fig-

ure 5.

Figure 9 compares the positioning performance when using different numbers of preferred position sources in a low anchor node density scenario. It can be seen that as the number of preferred positioning sources increases, the position accuracy is improved. As the number of preferred positioning sources increases, the signal quality of the position sources and the geometric distribution of the position sources will be improved, and the position accuracy will be improved to a certain extent, but the improvement effect will decrease as the number of equipotential sources increases. By comparing the results with Figure 5, it can be found that there is a limit to improving the positioning effect by increasing the number of position sources. Too many position sources may also cause a decrease in position accuracy, which is the fact reflected by the yellow line in Figure 5. *Sensors* **2021**, *21*, x FOR PEER REVIEW 12 of 15

**Figure 9.** CDF of position error under different number of preferred positioning sources. In the figure, the green line represents the location error CDF when the preferred location source is 15, the orange line represents the preferred location source is 9, and the red line represents the preferred location source is 6. The purple line indicates the situation where only anchor nodes are used for positioning. **Figure 9.** CDF of position error under different number of preferred positioning sources. In the figure, the green line represents the location error CDF when the preferred location source is 15, the orange line represents the preferred location source is 9, and the red line represents the preferred location source is 6. The purple line indicates the situation where only anchor nodes are used for positioning.

The above Figure 10 reflects the average positioning time of the proposed method and DRSL method under different numbers of neighbor nodes. The time complexity of the location source optimization algorithm is mainly related to both the average number of neighbor nodes ଵ and the number of preferred sources ଶ. For the calculation of the original data ,, the evaluation matrix , and the fuzzy transformation , in the algorithm proposed in this paper, the time complexity is 2(ଵ), 5(ଵ) and 3(ଵ). Finally, a preferred positioning source is obtained after comparison. Repeating the above process ଶ times is the time complexity of the node. By optimizing part of the algorithm process, the time complexity is finally 5(ଵଶ). In the proposed method, nodes transmit a localization vector including , = ሾ, , ,ሿ் and a the DCPCRLB ,, so the communication cost is 2O(1). The computational complexity, run-time and commu-Figure 10 reflects the average positioning time of the proposed method and DRSL method under different numbers of neighbor nodes. The time complexity of the location source optimization algorithm is mainly related to both the average number of neighbor nodes *N*<sup>1</sup> and the number of preferred sources *N*2. For the calculation of the original data *Di*,*<sup>l</sup>* , the evaluation matrix *Ai*,*<sup>l</sup>* and the fuzzy transformation *Qi*,*<sup>l</sup>* in the algorithm proposed in this paper, the time complexity is 2*O*(*N*1), 5*O*(*N*1) and 3*O*(*N*1). Finally, a preferred positioning source is obtained after comparison. Repeating the above process *N*<sup>2</sup> times is the time complexity of the node. By optimizing part of the algorithm process, the time complexity is finally 5*O*(*N*1*N*2). In the proposed method, nodes transmit a localization vector including *θi*,*<sup>l</sup>* = - *xi*,*<sup>l</sup> yi*,*<sup>l</sup> ai*,*<sup>l</sup> T* and a the DCPCRLB *posCRLBi*,*<sup>l</sup>* , so the communication cost is 2O(1). The computational complexity, run-time and communication overhead of the three algorithms is shown in Table 2.

nication overhead of the three algorithms is shown in Table 2.

**Figure 10.** The average positioning time of each node under different numbers of neighbor nodes. **Figure 10.** The average positioning time of each node under different numbers of neighbor nodes.


**Table 2.** Comparisons of different methods for each node at each iteration. **Table 2.** Comparisons of different methods for each node at each iteration.

#### *4.3. Future Research Directions*

In the next stage of research, the following aspects will be mainly focused on: First, we plan to analyze other factors which affect position accuracy. Secondly, we shall implement the proposed method based on hardware platform and apply the proposed method in realistic scenarios. The measured results in realistic scenarios will be compared with the simulation results to improve the performances of the proposed method.

#### **5. Conclusions**

We propose a new positioning source optimization method for low-anchor node density wireless sensor networks, which comprehensively considers the positioning performance, distance, location and other factors that affect the positioning accuracy of cooperative nodes to select positioning sources. First, each node calculates its own CRLB and transmits it to neighboring nodes through collaborative information. Neighboring nodes calculate the CRLB, distance measurement and direction angle of neighboring cooperative nodes to obtain the optimal evaluation matrix, and obtain the fuzzy evaluation result through weight addition, and obtain the final optimal location source. In the fuzzy comprehensive evaluation framework, the weights of various evaluation factors can be flexibly configured. Therefore, the proposed method can screen out different neighbor nodes as positioning sources according to requirements, and then obtain a combination of positioning sources with good location performance and distribution, which can improve the positioning accuracy of the node. Compared with the DRSL and MBIL method, the positioning signal source obtained by this method can obtain higher positioning accuracy about 33.9% and 19.4% under low anchor node density, and the sacrificed calculation time is almost negligible.

**Author Contributions:** Conceptualization, S.T.; methodology, Z.D., S.T. and L.Y.; software, S.T. and X.D.; validation, S.T. and J.L.; formal analysis, S.T.; investigation, S.T., X.D. and J.L.; resources, Z.D. and S.T.; data curation, S.T.; writing—original draft preparation, S.T.; writing—review and editing, S.T., X.D., L.Y. and J.L.; visualization, S.T.; supervision, X.D. and J.L.; project administration, Z.D. and L.Y.; funding acquisition, Z.D. All authors have read and agreed to the published version of the manuscript.

**Funding:** This research was funded by the National Key Research & Development Program: 2016YFB0502003.

**Institutional Review Board Statement:** Not applicable.

**Informed Consent Statement:** Not applicable.

**Data Availability Statement:** Not applicable.

**Conflicts of Interest:** The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

#### **References**

