An Improved Adaptive Sparrow Search Algorithm for TDOA-Based Localization

: The Ultra-Wideband (UWB) indoor positioning method is widely used in areas where no satellite signals are available. However, during the measurement process of UWB, the collected data contain random errors. To alleviate the effect of random errors on positioning accuracy, an improved adaptive sparrow search algorithm (IASSA) based on the sparrow search algorithm (SSA) is proposed in this paper by introducing three strategies, namely, the two-step weighted least squares algorithm, adaptive adjustment of search boundary, and producer–scrounger quantity adaptive adjustment. The simulation and ﬁeld test results indicate that the IASSA algorithm achieves signiﬁcantly higher localization accuracy than previous methods. Meanwhile, the IASSA algorithm requires fewer iterations, which overcomes the problem of the long computation time of the swarm intelligence optimization algorithm. Therefore, the IASSA algorithm has advantages in indoor positioning accuracy and robustness performance.


Introduction
With the rapid development of the mobile Internet, large-scale Internet of Things (IoT) has been constructed, and the application of location-based service (LBS) technology is increasingly extensive [1,2].The positioning technologies represented by Beidou (BDS) and GPS satellite navigation systems can meet the requirements for location services in outdoor scenarios, but in indoor scenarios, GNSS signals are blocked by buildings and cannot provide navigation and positioning services.Therefore, a variety of indoor positioning technologies, such as radio frequency identification (RFID) [3], Wi-Fi [4], Bluetooth [5], and Ultra-Wideband (UWB) [6] have emerged.Zhou proposed a localization approach for the social IoT by combining the fuzzy rough set theory and the ridge regression extreme learning machine (RRELM) [1].Tao proposed a novel RFID-based mobile robot localization method combining readability and phase difference [3].Nguyen leveraged the UWB ranging data between the robots to improve system's odometry [7].Among them, UWB technology has attracted much attention from researchers around the world owing to its unique advantages in positioning [8].
UWB positioning technology can be evaluated in four aspects, including received signal strength (RSS), angle of arrival (AOA), time of arrival (TOA), and time difference of arrival (TDOA) [9].The positioning accuracy based on RSS and AOA measurement methods is easily affected by environmental factors.The advantage of TDOA over TOA is that it does not require clock synchronization between receivers and tags, so it is easier to implement and has been widely used in the indoor position service field [10].
According to the prior statistics of the measurement error, the unknown tag position can be obtained through the maximum likelihood (ML) function.However, for a given localization problem, the corresponding ML objective function is a highly nonlinear non-convex function [11], which motivates the development of more effective optimization methods.
Semi-definite relaxation (SDR) is an effective localization method, and it has received great attention in solving various localization problems because of the reliability and robustness of its computational results [12,13].However, it fails to provide high global optimal solution estimation accuracy under significant measurement noise [14].The constrained weighted least squares (CWLS) algorithm provides another approach for solving the localization problem [15].The fundamental of the algorithm is to reduce the estimation error by explicitly using constraints between tag positions and auxiliary variables.During the calculation process, the CWLS algorithm will generate a non-convex indefinite quadratic constraint quadratic problem (QCQP), but it can use implicit convexity to convert the problem into convex programming [16].To further improve the positioning accuracy, Qu proposed an iterative constrained weighted least squares (ICWLS) algorithm [17].This algorithm transforms the non-convex CWLS algorithm expression into a new convex expression through a new equation transformation.Although the simulation experiments confirm the effectiveness of the algorithm, it suffers from localization divergence in a loud noise environment.Therefore, finding a high-precision global optimal solution for the objective function in the positioning equation has become an issue of practical significance [12].
A variety of swarm intelligent optimization algorithms has been adopted to solve complicated optimization problems, such as the Grey Wolf Optimizer (GWO) [18], the Cuckoo optimization algorithm (COA) [19], and the Sparrow Search Algorithm (SSA) [20].The swarm intelligent optimization algorithm mainly relies on two parts: global exploration and local exploitation [21].Compared with other swarm intelligent optimization algorithms, the sparrow search algorithm (SSA) has better performance in terms of search accuracy, convergence speed, and stability [22], but it suffers from premature convergence such as most intelligent optimization algorithms [23].Some adaptive improvement strategies are introduced into SSA to increase the global search capability, such as nonlinear inertial weight [24], adaptive distribution [25], and adaptive control step [26].However, the above improvements are mainly aimed at the producers who occupy a minority of the population and are responsible for guiding the direction of the population.They do not make full use of the scroungers who account for majority of the population.
To achieve high-precision positioning in the indoor environment, based on the above considerations, this paper proposes an improved adaptive sparrow search algorithm (IASSA).The contribution of this paper can be summarized as follows: 1.
The algorithm solves the distribution problem of the initial population.Compared with the traditional intelligent optimization algorithm.This algorithm generates the initial population position based on the positioning results and error distribution characteristics of the TSWLS algorithm, which accelerates the speed of searching for the optimal solution.2.
The algorithm solves the problem of balancing the local exploitation ability and the global exploration ability by producer-scrounger quantity adaptive adjustment strategy, and the effectiveness of the proposed method is verified by the experiment of low signal-to-noise ratio (SNR) scenario.

3.
The algorithm incorporates an adaptive adjustment strategy based on observation information noise, which will adaptively update the algorithm parameters with the changes in practical application scenarios.
The rest of this paper is organized as follows.Section 2 explains the TDOA measurement model, Section 3 describes the TSWLS model, Section 4 introduces the IASSA model in detail, Section 5 presents the scenarios and observations of the simulation and real experiments, and finally, Sections 6 and 7 describe the discussion and conclusions of this paper.

TDOA Measurement Model
The experiment is conducted in a two-dimensional scene, and the same principle is applied to extend to a three-dimensional scene.Assuming that there are M (M > 3) receivers distributed in a two-dimensional plane, let the time for the receiver to receive the signal transmitted by the tag be: where t 0 i is the true value of the arrival time of the signal, n i is the additional noise.The noise obeys a zero-mean stationary Gaussian random process, and the standard deviation is σ r .With receiver 1 as the reference, the TDOA measurement value is the difference in the arrival time of the tag to two different receivers [27] is shown in Figure 1, and the expression is nal transmitted by the tag be: where 0 i t is the true value of the arrival time of the signal, i n noise obeys a zero-mean stationary Gaussian random process, is r σ .With receiver 1 as the reference, the TDOA measureme the arrival time of the tag to two different receivers [27] is s expression is The TDOA positioning principle.
The receiver coordinates are known as ( , ) i i x y , the tag coo set to ( , ) x y , and i r is defined as the distance from the tag to Assuming that the signal propagation speed is c , let r vector, , where , Essentially, the process of obtaining the tag coordinates urement value is the process of solving the TDOA equation set solution.The receiver coordinates are known as (x i , y i ), the tag coordinates are unknown and set to (x, y), and r i is defined as the distance from the tag to receiver i Assuming that the signal propagation speed is c, let r be the TDOA observation vector, Essentially, the process of obtaining the tag coordinates based on the TDOA measurement value is the process of solving the TDOA equation set to obtain the global optimal solution.

Two-Step Weighted Least Squares Algorithm
There are many algorithms for solving a given positioning equation, and the TSWLS algorithm is a non-recursive hyperbolic equation-solving method with high positioning accuracy and small computational complexity [28].
First, the two sides of Equation ( 5) are squared to obtain r 2 i = (r i,1 + r 1 ) 2 .Then, both sides of Equation ( 3) can be transformed into , and by subtracting Equation ( 4) from Equation ( 6), we have where Take 6 receivers as an example, the TDOA equation set is The matrix form of Equation ( 8) is Let z a = z T p , r 1 T be the unknown vector, where z p = [x, y] T .Denote the noise-free value of { * } as { * } 0 .In the presence of noise in the TDOA measurement value, the error vector ψ obtained from Equation ( 9) is where Using the weighted least squares (WLS) algorithm, the first WLS estimate of z a is In this formula, the weighting matrix is where B is a diagonal matrix with a similar form to diag r 0 2 , r 0 After the second WLS is used, we have where h' and B ' is a diagonal matrix with a similar form to diag x 0 − x 1 , y 0 − y 1 , r 0 1 .The final position coordinate of the tag is

Improved Adaptive Sparrow Search Algorithm
The general localization algorithm has certain defects.Taking the TSWLS algorithm as an example, this algorithm can only estimate the best position of the tag with a high SNR [29].To overcome the above defects, the IASSA algorithm is proposed in this paper.

Sparrow Search Algorithm
When the sparrow population is in foraging behavior, according to the food each individual possesses, sparrows can be divided into two parts: producers and scroungers.The one with more food is the producer, which provides foraging areas for the scroungers and leads the scroungers to hunt elsewhere when the predator appears and threatens the safety of the population.The producer's location is updated as follows: where x t i,j represents the value of the j-th dimension of the i-th sparrow at iteration t, j = 1, 2, • • • , d; iter max is the maximum number of iterations; α ∈ (0, 1] is the uniform random number; Q is the random number obeying the standard normal distribution; L represents a 1 × d matrix with each element being 1; ST(ST ∈ [0.5, 1]) and R 2 (R 2 ∈ [0, 1]) are the warning threshold and the warning value, respectively.
Scroungers follow the producers to access food.However, some scroungers may spy on producers and thus compete with them for food to increase their reserves.The scrounger position is updated as follows: where x worst and x p are the worst and best positions of the population, respectively; A + = A T AA T −1 , and A is a 1 × d matrix (row vector) in which each element is randomly assigned 1 or −1; N indicates the population size.
To ensure safety, the sparrow population also has anti-predation behaviors corresponding to the reconnaissance and early warning mechanism in the SSA algorithm, i.e., some sparrows in the population will provide early warnings for reconnaissance.The sparrows in marginal positions will move toward the center of the population space when they perceive danger, while better-positioned sparrows will move randomly to approach their peers.The location of the early-warning sparrows is updated as follows: where x t best is the current global optimal position; K is a uniform random number in [−1, 1]; f i , f g , and f w represent the fitness value of the present sparrow, the global best and worst fitness values, respectively; ε is the minimum constant to avoid division by a zero error.

Improved Adaptive Sparrow Search Algorithm
The SSA algorithm divides the search population into producers, scroungers, and early warnings.According to foraging and anti-predatory behaviors, the sparrows are divided so that the search for the global optimal solution has high speed and precision.However, the SSA algorithm still has some problems in practical applications, such as the imbalance in exploration and exploitation capabilities [30].Therefore, this paper makes the following improvements to the SSA algorithm.

The Search Center Determined by the TSWLS Algorithm
The distribution of the initial population significantly affects the speed of the algorithm.The initial position of most intelligent optimization algorithms is randomly generated, but it is not the best solution for the TDOA positioning problem.In this paper, the initial solution of tag coordinates is calculated by the TSWLS algorithm with low computational complexity, and then a limited initial population distribution range is provided for the IASSA algorithm around the initial solution to obtain an improved initial population.The position of individuals is denoted as X = [x 1 , x 2 ].The upper bound and low bound of the distribution space are u = [u 1 , u 2 ] and l = [l 1 , l 2 ], respectively.The position of the individual in the randomly generated initial population is where ∆X is the length of the distribution area; rand(1, 2) represents a two-dimensional random variable in which the elements are random numbers between [0,1].Since the initial solution is located near the global optimal solution, the IASSA algorithm can reduce unnecessary global explorations and achieve rapid convergence without affecting the population diversity.

Search Boundary Adaptive Adjustment Strategy
The size of ∆X can affect the distribution of the initial population: If it is too large, most individuals will be far away from the optimal value, which will slow down the solving process; if it is too small, the initial population may not contain the real coordinates due to the presence of errors in the TSWLS algorithm results.Therefore, it is crucial to determine the optimal value of ∆X.
With the gradual increase in the standard deviation of distance noise σ r , the positioning accuracy of the TSWLS algorithm decreases.Let η be the Euclidean distance between the result of the TSWLS algorithm and the real coordinates.To further analyze the change in η with the value of σ r , the value of σ r is set within 0.1-1.0m for simulation experiments.A total of 1000 positioning experiments are conducted per 0.1 m.The algorithm parameters are based on the experimental design in Section 5.The distribution of the value of η is presented in Figure 2.
As shown in Figure 2, in the case of the experimental scene being determined, with the increase in the value of σ r , the distribution of the η value becomes wider and wider.The colored points represent the maximum value of the error per 1000 experiments, and the fitting function of the colored points is experiments.A total of 1000 positioning experiments are conducted per 0.1 m.T rithm parameters are based on the experimental design in Section 5.The distrib the value of η is presented in Figure 2. The correlation coefficient of the fitting function is 0.95048, which is close to cating a good fitting effect.Therefore, by substituting the standard deviation of tance noise into the fitting function, half of the side length of the sparrow distribut can be obtained, which meets the distribution requirements of the initial populati

Producer-scrounger Quantity Adaptive Adjustment Strategy
In the SSA algorithm, the ratio of the number of producers and scroungers unchanged.As a result, there is only a small number of producers in the early stag iteration, and the whole area cannot be fully searched.In the later stage of the it the number of producers is relatively large.At this time, there is no need for more ers to perform global exploration, but the number of scroungers needs to be incr perform accurate local exploitation.Since the sparrow search algorithm ignores ance between the local exploitation ability and the global exploration ability, th proposes a producer-scrounger quantity adaptive adjustment strategy.Specificall early iteration of this strategy, the producer accounts for the majority of the pop As the iteration continues, the number of producers decreases adaptively, and the of scroungers increases adaptively, thus gradually promoting global exploration form into local accurate exploitation, which improves the convergence accur speed.The formula for adjusting the number of producers and scroungers is: The correlation coefficient of the fitting function is 0.95048, which is close to 1, indicating a good fitting effect.Therefore, by substituting the standard deviation of the distance noise into the fitting function, half of the side length of the sparrow distribution area can be obtained, which meets the distribution requirements of the initial population.

Producer-Scrounger Quantity Adaptive Adjustment Strategy
In the SSA algorithm, the ratio of the number of producers and scroungers remains unchanged.As a result, there is only a small number of producers in the early stage of the iteration, and the whole area cannot be fully searched.In the later stage of the iteration, the number of producers is relatively large.At this time, there is no need for more producers to perform global exploration, but the number of scroungers needs to be increased to perform accurate local exploitation.Since the sparrow search algorithm ignores the balance between the local exploitation ability and the global exploration ability, this paper proposes a producer-scrounger quantity adaptive adjustment strategy.Specifically, in the early iteration of this strategy, the producer accounts for the majority of the population.As the iteration continues, the number of producers decreases adaptively, and the number of scroungers increases adaptively, thus gradually promoting global exploration to transform into local accurate exploitation, which improves the convergence accuracy and speed.The formula for adjusting the number of producers and scroungers is: where pNum and sNum are the number of producers and scroungers, respectively; b is the proportional coefficient used to control the ratio between the producers and the scroungers; k is the disturbance deviation factor, which perturbs the nonlinear decreasing value of R. From the analysis of Equation ( 23), as the iteration continues, the value of R shows a nonlinear downward trend.The number of scroungers increases, and the local exploitation ability is improved, which can meet the need for an accurate search in the later iteration.

Experimental Design
This section analyzes the performance of the IASSA algorithm with MATLAB 2019b on a personal computer equipped with Intel(R) Core(TM) i7-6700 CPU 3.40GHz and 8GB main memory.The scenarios and simulation parameters are defined below: eight receivers are deployed in a 20 m × 20 m area with coordinates of (0,0), (0,10), (0,20), (10,20), (20,20), (20,10), (20,0), and (10,0), respectively.A total of 1000 experimental sites are randomly placed in the localization scene.The iterations maximum number iter max of the swarm intelligence optimization algorithm is 20, and the number of sparrows in the population is 20.The root mean square error (RMSE) is adopted to evaluate the positioning accuracy [31], and it is defined as where m is the number of experimental sites, (x i , y i ) and ( xi , ŷi ) are the estimated position and real position of the i-th experimental site, respectively.Similar to the RMSE, the Cramer-Rao lower bound (CRLB) can be used to evaluate the performance of the localization algorithm.Therefore, the CRLB is added to the algorithm comparison.The CRLB specifies the lower limit of standard deviation that can be achieved by the unbiased estimator, which represents the best estimation accuracy in theory.The calculation formula of the CRLB is as follows: where r i is the distance from the tag to receiver i, and the trace(•) function is used to find the trace of the matrix.

The Effectiveness Experiment of Each Improvement Strategy
The addition of the TSWLS algorithm provides the search center for the population, and the search boundary adaptive adjustment strategy can adaptively adjust the search range according to the standard deviation of the distance noise σ r .The combination of these two strategies allows the population to search directly in the most promising region, thus reducing unnecessary search processes.When the search range is large, the producerscrounger adaptive adjustment strategy can improve the search speed of the population.To illustrate the positive impact of the improved strategy on the population search process and localization accuracy, the following experiments are conducted.
The tags are positioned by eight receivers.The position of the tags is set at [10,10], and the fitness value is calculated for each point in the experimental scene.The opposite number of fitness values is taken, as shown in Figure 3.It can be seen that the area with a large negative fitness value, i.e., the area with a small fitness value, is near the real coordinate of the tag.Meanwhile, the search range limited by the search boundary adaptive adjustment strategy, the localization result of the TSWLS algorithm, and the minimum fitness value point searched by the population of the SSA algorithm with enough iterations are marked in the contour plot of the opposite of fitness values, as shown in        However, when the standard deviation of distance noise σ r is large, the localization error of the TSWLS algorithm increases.At this time, the search boundary adaptive adjustment strategy cannot constrain the search range effectively.To address this issue, this paper adds the producer-scrounger adaptive adjustment strategy to improve the search ability of the population when the search range is large.For the convenience of the experimental presentation, the producer-scrounger adaptive adjustment strategy is referred to as strategy III.The distance noise standard deviation is set to 1 m.As the number of iterations increases, the optimal fitness value decreases until it becomes stable, and the fitness values are presented in Table 1.To demonstrate the impact of a series of improvements in this paper on the algorithm results, the proposed algorithm is compared with the unimproved algorithm (i.e., the SSA algorithm) and the partially improved algorithm.The tags are localized by eight receivers with the distance noise standard deviation set to m.Meanwhile, 100 points are randomly selected as the real coordinates of the tags for localization.The RMSE and standard deviation STD of the algorithm results are presented in Figure 5.It can be seen that compared to the SSA algorithm and the IASSA algorithm without strategy III, the RMSE of the IASSA algorithm is reduced by 9.85% and 4.72%, and the STD is reduced by 53.43% and 26.20%, respectively.
ations increases, the optimal fitness value decreases until it becomes stable, and th values are presented in Table 1.To demonstrate the impact of a series of improvements in this paper on the al results, the proposed algorithm is compared with the unimproved algorithm (i.e., algorithm) and the partially improved algorithm.The tags are localized by eight r with the distance noise standard deviation set to 1 m.Meanwhile, 100 points are ra selected as the real coordinates of the tags for localization.The RMSE and standa ation STD of the algorithm results are presented in Figure 5.It can be seen that co to the SSA algorithm and the IASSA algorithm without strategy III, the RMSE IASSA algorithm is reduced by 9.85% and 4.72%, and the STD is reduced by 53.4 26.20%, respectively.Therefore, the TSWLS algorithm and the search boundary adaptive adjustme egy are applied to determine the search area of the population, and the pr scrounger adaptive adjustment strategy is adopted to increase the optimizationability of the algorithm, which helps to improve the localization accuracy and sta the IASSA algorithm.

The Effectiveness Experiment of the IASSA Algorithm
The simulation experiments based on Qu [17] indicate that the localization a of the ICWLS algorithm is better than that of the TSWLS algorithm and the SDR alg Therefore, the TSWLS algorithm and the search boundary adaptive adjustment strategy are applied to determine the search area of the population, and the producer-scrounger adaptive adjustment strategy is adopted to increase the optimization-seeking ability of the algorithm, which helps to improve the localization accuracy and stability of the IASSA algorithm.

The Effectiveness Experiment of the IASSA Algorithm
The simulation experiments based on Qu [17] indicate that the localization accuracy of the ICWLS algorithm is better than that of the TSWLS algorithm and the SDR algorithm.Therefore, to analyze the performance of the IASSA algorithm, this section compares the IASSA algorithm with the ICWLS, TSWLS, GWO, and SSA algorithms.
The tag is located by using eight receivers, and the number of sparrows in the population is 20.Considering the distance measuring accuracy of the actual indoor positioning system, the value of σ r is set within 0.1-1.0 m.The positioning accuracy under different distance noises is demonstrated in Figure 6.
Therefore, to analyze the performance of the IASSA algorithm, this section compares the IASSA algorithm with the ICWLS, TSWLS, GWO, and SSA algorithms.
The tag is located by using eight receivers, and the number of sparrows in the population is 20.Considering the distance measuring accuracy of the actual indoor positioning system, the value of r σ is set within 0.1~1.0 m.The positioning accuracy under different distance noises is demonstrated in Figure 6.As the value of r σ increases, the localization accuracy decreases, and the RMSE of each algorithm increases.Compared with other algorithms, the IASSA algorithm can obtain a smaller RMSE under different noise standard deviations, which is closer to the CRLB.Therefore, the IASSA algorithm achieves higher localization accuracy.
Stability is also one of the factors to consider in evaluating the solution effect of the algorithm.Meanwhile, in a group of errors observed with the same precision, the probability of error with an absolute value of less than two standard deviations is 95.5%.The CRLB specifies the lower limit of standard deviation that can be achieved by the unbiased estimator.Therefore, to analyze the stability of the algorithm, the value of twice the CRLB is taken as the bound.If the resulting error of the algorithm is greater than this bound, the calculated result is marked as bad.Then, the number of bad results for each algorithm in the range of 0.1~1.0m for the standard deviation of distance noise is calculated and shown in Figure 7.It can be observed that the TSWLS algorithm obtains the maximum number of bad results (481), and the GWO algorithm is the second (341).The number of bad results of the IASSA algorithm is far smaller than that of the TSWLS and GWO algorithms and is smaller than that of the ICWLS and SSA algorithms.Therefore, the IASSA algorithm is superior to other algorithms in terms of computational stability.
When the value of r σ is set to 0.5 m, 5~8 receivers are set to participate in the local- ization for the experiment.The localization accuracy of each algorithm for different numbers of receivers is calculated and shown in Table 2.It can be seen that the RMSE of different algorithms and the CRLB decrease as the number of receivers increases.Meanwhile, compared to other algorithms, the IASSA algorithm achieves a smaller RMSE, which is closer to the CRLB.As the value of σ r increases, the localization accuracy decreases, and the RMSE of each algorithm increases.Compared with other algorithms, the IASSA algorithm can obtain a smaller RMSE under different noise standard deviations, which is closer to the CRLB.Therefore, the IASSA algorithm achieves higher localization accuracy.
Stability is also one of the factors to consider in evaluating the solution effect of the algorithm.Meanwhile, in a group of errors observed with the same precision, the probability of error with an absolute value of less than two standard deviations is 95.5%.The CRLB specifies the lower limit of standard deviation that can be achieved by the unbiased estimator.Therefore, to analyze the stability of the algorithm, the value of twice the CRLB is taken as the bound.If the resulting error of the algorithm is greater than this bound, the calculated result is marked as bad.Then, the number of bad results for each algorithm in the range of 0.1~1.0m for the standard deviation of distance noise is calculated and shown in Figure 7.It can be observed that the TSWLS algorithm obtains the maximum number of bad results (481), and the GWO algorithm is the second (341).The number of bad results of the IASSA algorithm is far smaller than that of the TSWLS and GWO algorithms and is smaller than that of the ICWLS and SSA algorithms.Therefore, the IASSA algorithm is superior to other algorithms in terms of computational stability.When the value of σ r is set to 0.5 m, 5-8 receivers are set to participate in the localization for the experiment.The localization accuracy of each algorithm for different numbers of receivers is calculated and shown in Table 2.It can be seen that the RMSE of different algorithms and the CRLB decrease as the number of receivers increases.Meanwhile, compared to other algorithms, the IASSA algorithm achieves a smaller RMSE, which is closer to the CRLB.Then, the value of σ r is set to 10 cm.To analyze the solution speed, the RMSE convergence of GWO, SSA, and IASSA algorithms are compared.Since the TSWLS algorithm does not involve iterations and the solution speed of the ICWLS algorithm is almost not affected by the number of iterations, these two algorithms are not taken for comparison.The relationship between the number of iterations and the RMSE for each algorithm is presented in Figure 8.Then, the value of r σ is set to 10 cm.To analyze the solution speed, t vergence of GWO, SSA, and IASSA algorithms are compared.Since the TSW does not involve iterations and the solution speed of the ICWLS algorithm affected by the number of iterations, these two algorithms are not taken fo The relationship between the number of iterations and the RMSE for each presented in Figure 8.As shown in Figure 8, as the iteration number increases, the RMSE of e decreases and then gradually becomes stable.In Figure 8, the IASSA algorit at the 8-th iteration, the SSA algorithm converges at the 23rd iteration, and gorithm converges at nearly the 43rd iteration.The efficiency of the IASSA As shown in Figure 8, as the iteration number increases, the RMSE of each algorithm decreases and then gradually becomes stable.In Figure 8, the IASSA algorithm converges at the 8-th iteration, the SSA algorithm converges at the 23rd iteration, and the GWO algorithm converges at nearly the 43rd iteration.The efficiency of the IASSA algorithm is 3 fold that of SSA and 5 fold that of GWO.Meanwhile, the IASSA algorithm can calculate the localization result with a smaller RMSE.Therefore, the IASSA algorithm can obtain a more accurate tag position through fewer iterations, which overcomes the defect of the intelligent optimization algorithm requiring more iterations.
To achieve the same positioning accuracy, the GWO algorithm needs to consume more iterations and the SSA algorithm ranks second.The IASSA algorithm requires a minimum number of iterations.To analyze the influence of the number of iterations on the time consumed when solving for the coordinates, the global optimal solution that each algorithm can obtain is taken as the standard, and then the average time consumed in solving the coordinates for each algorithm is calculated.The results are listed in Table 3.Compared to the GWO and SSA algorithms, the computation time of the IASSA algorithm is reduced by 74.2% and 65.2%, respectively.Although IASSA has a slightly larger average computation time than TSWLS and ICWLS, the IASSA algorithm overcomes the defect of the long consumption time of the swarm intelligence optimization algorithm.

Field Experimental Analysis
To further verify the reliability of the IASSA algorithm, the DWM 1000 UWB positioning module was selected for the field experiment.The experimental site was located in the lobby of the first floor of the laboratory building, surrounded by classrooms and a corridor.The thick transparent glass directly above the hall has an attenuation effect on the GNSS signal, thus enabling the experimental environment to meet indoor positioning conditions.In this experiment, the experimental range was 9 m × 9 m.To obtain the tag coordinates, seven modules were selected, six of which were used as receivers to locate the tag.Meanwhile, a measuring device called the total station was used to measure receivers' position beforehand.Before the start of the experiment, the total station was fixed at a position and a local coordinate system was established with the position of the total station as the origin.The positions of both receivers and the tag were in this coordinate system.Therefore, the coordinates of receivers and the tag can be obtained in real time.At the same time, since the accuracy of the total station is in millimeter level, the coordinates that got from the total station can be regarded as the real coordinates.In terms of the experimental scenarios and receiver locations, the experimental conditions are consistent with most of the scenarios, such as office building, shopping mall, airport, and other areas.
In the static experiment, 100 points were selected as the coordinates of the tag within the test range.The experimental site and point distribution are shown in Figure 9.
is reduced by 74.2% and 65.2%, respectively.Although IASSA has a slightly larger average computation time than TSWLS and ICWLS, the IASSA algorithm overcomes the defect of the long consumption time of the swarm intelligence optimization algorithm.

Field Experimental Analysis
To further verify the reliability of the IASSA algorithm, the DWM 1000 UWB positioning module was selected for the field experiment.The experimental site was located in the lobby of the first floor of the laboratory building, surrounded by classrooms and a corridor.The thick transparent glass directly above the hall has an attenuation effect on the GNSS signal, thus enabling the experimental environment to meet indoor positioning conditions.In this experiment, the experimental range was 9 m × 9 m.To obtain the tag coordinates, seven modules were selected, six of which were used as receivers to locate the tag.Meanwhile, a measuring device called the total station was used to measure receivers' position beforehand.Before the start of the experiment, the total station was fixed at a position and a local coordinate system was established with the position of the total station as the origin.The positions of both receivers and the tag were in this coordinate system.Therefore, the coordinates of receivers and the tag can be obtained in real time.At the same time, since the accuracy of the total station is in millimeter level, the coordinates that got from the total station can be regarded as the real coordinates.In terms of the experimental scenarios and receiver locations, the experimental conditions are consistent with most of the scenarios, such as office building, shopping mall, airport, and other areas.
In the static experiment, 100 points were selected as the coordinates of the tag within the test range.The experimental site and point distribution are shown in Figure 9.During the experiment, the tag was moved sequentially to the test points.Then, 100 sets of TDOA data were obtained, which were solved by each algorithm to obtain the coordinate values.The RMSE of the algorithm results is presented in Figure 10.
During the experiment, the tag was moved sequentially to the test poi sets of TDOA data were obtained, which were solved by each algorithm to ordinate values.The RMSE of the algorithm results is presented in Figure The standard deviation of distance noise of the selected UWB sensor i ever, in the positioning process of the UWB system, there are multiple sources, such as the multipath effect and antenna hardware.Therefore, th error of the measured data will exceed the simulation result error under th of r σ .As shown in Figure 10, compared with other algorithms, the RMSE algorithm decreased by 16.3%, 8.0%, 22.3%, and 11.9%, respectively.Therefo algorithm can achieve good positioning accuracy in practical applications, w the applicability and robustness of the IASSA algorithm.
During the dynamic test, the tag keeps a uniform linear motion from ( the site.In this process, the UWB device continuously locates the tag, and th times are set to 36.Then, the coordinate results are obtained by solving th ference information through each algorithm.Meanwhile, the Kalman filte ploit the dynamic information of the tag, reduce the influence of noise, and estimate of the target position.Therefore, based on the positioning results rithm, this paper added the KF algorithm to optimize the coordinates of t tioning results are illustrated in Figure 11.The position error of the smoothe represented in the form of the bar graph in the figure.The standard deviation of distance noise of the selected UWB sensor is 10 cm.However, in the positioning process of the UWB system, there are multiple system error sources, such as the multipath effect and antenna hardware.Therefore, the positioning error of the measured data will exceed the simulation result error under the same value of σ r .As shown in Figure 10, compared with other algorithms, the RMSE of the IASSA algorithm decreased by 16.3%, 8.0%, 22.3%, and 11.9%, respectively.Therefore, the IASSA algorithm can achieve good positioning accuracy in practical applications, which confirms the applicability and robustness of the IASSA algorithm. During the dynamic test, the tag keeps a uniform linear motion from (1,1) to (8,8) in the site.In this process, the UWB device continuously locates the tag, and the positioning times are set to 36.Then, the coordinate results are obtained by solving the distance difference information through each algorithm.Meanwhile, the Kalman filter (KF) can exploit the dynamic information of the tag, reduce the influence of noise, and obtain a better estimate of the target position.Therefore, based on the positioning results of each algorithm, this paper added the KF algorithm to optimize the coordinates of tags.The positioning results are illustrated in Figure 11.The position error of the smoothed trajectory is represented in the form of the bar graph in the figure .It can be seen from Figure 11 that the positioning results of each algorithm are distributed near the real trajectory, and there is a direct error with the real coordinates.The KF algorithm makes the localization result smoother and the trajectory closer to the real trajectory.The cumulative distribution functions (CDFs) of these two sets of positioning errors are shown in Figure 12.The data sets that have not been smoothed by KF has a larger error range.Before and after smoothing, the CDF of IASSA algorithm increases the fastest, which indicates that the error distribution of IASSA algorithm is relatively dense and the distribution center is smaller than that of other algorithms.
ference information through each algorithm.Meanwhile, the Kalman filter (KF) can exploit the dynamic information of the tag, reduce the influence of noise, and obtain a better estimate of the target position.Therefore, based on the positioning results of each algorithm, this paper added the KF algorithm to optimize the coordinates of tags.The positioning results are illustrated in Figure 11.The position error of the smoothed trajectory is represented in the form of the bar graph in the figure.It can be seen from Figure 11 that the positioning results of each algorithm are distributed near the real trajectory, and there is a direct error with the real coordinates.The KF algorithm makes the localization result smoother and the trajectory closer to the real trajectory.The cumulative distribution functions (CDFs) of these two sets of positioning errors are shown in Figure 12.The data sets that have not been smoothed by KF has a larger error range.Before and after smoothing, the CDF of IASSA algorithm increases the fastest, which indicates that the error distribution of IASSA algorithm is relatively dense and the distribution center is smaller than that of other algorithms.Additionally, it can be seen from Table 4 that before smoothing by the KF algorithm, the IASSA algorithm reduces the positioning error by 24.0%, 15.3%, 20.7%, and 19.0%, respectively compared with other algorithms.The KF algorithm makes the localization result closer to the real coordinates.After smoothing, the IASSA algorithm still achieves a smaller RMSE than other algorithms.It can be seen from Figure 11 that the positioning results of each algorithm a tributed near the real trajectory, and there is a direct error with the real coordinat KF algorithm makes the localization result smoother and the trajectory closer to t trajectory.The cumulative distribution functions (CDFs) of these two sets of posi errors are shown in Figure 12.The data sets that have not been smoothed by K larger error range.Before and after smoothing, the CDF of IASSA algorithm increa fastest, which indicates that the error distribution of IASSA algorithm is relatively and the distribution center is smaller than that of other algorithms.Additionally, it can be seen from Table 4 that before smoothing by the KF algo the IASSA algorithm reduces the positioning error by 24.0%, 15.3%, 20.7%, and respectively compared with other algorithms.The KF algorithm makes the local result closer to the real coordinates.After smoothing, the IASSA algorithm still ach smaller RMSE than other algorithms.Additionally, it can be seen from Table 4 that before smoothing by the KF algorithm, the IASSA algorithm reduces the positioning error by 24.0%, 15.3%, 20.7%, and 19.0%, respectively compared with other algorithms.The KF algorithm makes the localization result closer to the real coordinates.After smoothing, the IASSA algorithm still achieves a smaller RMSE than other algorithms.

Discussion
In indoor environments, UWB technology is an effective way to achieve target localization.However, random errors reduce the positioning accuracy and stability of UWB systems.In order to achieve high accuracy localization in the large-scale measurement noise environment, an IASSA algorithm is proposed in this paper.In the simulation and field experiments, this algorithm can quickly find the optimal value point with less iterations, overcoming long search time problem of the swarm intelligence optimization algorithm.
In order to verify the effectiveness of the IASSA algorithm, the analysis is carried out from several aspects.Firstly, the algorithm proposed in this paper is based on the SSA algorithm, so the effectiveness of the improvement measures is tested, and it is verified that the improvement measures have a positive effect on the improvement of the positioning accuracy.Secondly, the experimental analysis of IASSA algorithm is carried out in terms of localization accuracy, stability, number of iterations and computation time.Compared with other algorithms, the RMSE of the algorithm proposed in this paper is closer to that of the CRLB, so the IASSA algorithm can achieve higher localization accuracy.Compared with the SSA and GWO algorithms, the IASSA algorithm can search for the optimal value point with fewer iterations, which results in less computation time and faster computation speed.Lastly, the IASSA algorithm achieves better localization results in the condition that the field experimental data are influenced by other systematic errors or multipath errors.In the static experiment, the RMSE of the IASSA algorithm is 16.3%, 8.0%, 22.3%, and 11.9% lower than TSWLS, ICWLS, GWO, SSA algorithms, respectively.In the dynamic experiment, compared to other algorithms, the RMSE of the IASSA algorithm is the smallest, and the resultant trajectory of IASSA algorithm is the closest to the real trajectory.
The fitness minimum point searched by the SSA algorithm is closer to the true coordinates than that obtained by the TSWLS algorithm, and this is because the TSWLS algorithm is more influenced by the distance noise.However, the TSWLS algorithm can be used to determine the center of the population search range owing to its low computational burden and fast solution speed.Since the solution result of TSWLS algorithm is closer to the final optimal result, the algorithm can reduce the unnecessary global search and achieve fast convergence without affecting the population diversity.Then, with the increase in the value of σ r , the search boundary also increases adaptively.The search boundary adaptive adjustment strategy is adopted to restrict the search range of the IASSA algorithm.The adaptive adjustment strategy based on observation information noise adaptively updates the algorithm parameters with the changes in practical application scenarios.So the IASSA algorithm can quickly find the minimum fitness point through a limited number of iterations in different situations.Finally, the addition of the producer-scrounger adaptive adjustment strategy allows the IASSA algorithm to speed up the search for the optimal value, as shown in Table 1.
As mentioned above, owing to the addition of operations such as the TSWLS algorithm, the IASSA algorithm has higher positioning accuracy and less computational load.However, systematic errors in field experiments will still reduce positioning accuracy.Although adding extra positioning technology (e.g., visual positioning technology) is an effective approach for improving positioning accuracy, it will increase the cost.Therefore, improving the positioning accuracy by optimizing the IASSA algorithm (e.g., reducing the optimization steps or optimizing the optimization logic) is a future research direction.Meanwhile, since the receiver's position must be measured beforehand during the experiment, the automatic acquisition of the receiver's position will be considered in future research, which will be of great help to the application of UWB technology.

Conclusions
This paper proposes an improved adaptive sparrow search algorithm to solve the localization problem through noisy TDOA measurements.Firstly, based on the particularity of indoor positioning, the IASSA algorithm uses the results of the TSWLS algorithm to provide a reasonable distribution center for the initial population.Then, the error distribution characteristics of the results of the TSWLS algorithm are analyzed to determine the distribution range of the initial population.Finally, the adaptive producer-scrounger quantity adjustment strategy is introduced into the IASSA algorithm to speed up the IASSA algorithm's search for the best solution.Through simulation and field experiments, the following conclusions are drawn: 1.
In the experiment to investigate the effectiveness of each improvement strategy, compared to the SSA algorithm and the IASSA algorithm without strategy III, the RMSE of the IASSA algorithm is reduced by 9.85% and 4.72%, and the STD is reduced by 53.43% and 26.20%, respectively.Therefore, the improvement strategies in this paper can improve the localization accuracy and stability of the IASSA algorithm.2.
In the experiment to investigate the effectiveness of the IASSA algorithm, the positioning accuracy of tags gradually decreases with the increase in the value of σ r .Compared with the TSWLS, ICWLS, GWO, and SSA algorithms, the IASSA algorithm can achieve a smaller RMSE, which is closer to the CRLB.Meanwhile, the IASSA algorithm achieves higher positioning stability.Compared to the IASSA algorithm, the occurrence of poor results of other algorithms increases by 91.6%, 6.8%, 35.9%, and 12.4%, respectively.

3.
The IASSA algorithm overcomes the defects of intelligent optimization algorithms requiring too many iterations in practical applications.Compared to the GWO and SSA algorithms, the number of iterations required by the IASSA algorithm to obtain the global optimal solution is reduced by 65.2% and 81.4%, respectively.Meanwhile, to achieve the same positioning accuracy, the average computation time of the IASSA algorithm is reduced by 74.2% and 65.3%, respectively, compared to the GWO and SSA algorithms, thus overcoming the problem of large time consumption of swarm intelligence optimization algorithms.4.
In the field experiments, static and dynamic experiments were conducted.In the static experiment, the RMSE of the IASSA algorithm is 16.3%, 8.0%, 22.3%, and 11.9% lower than that of other algorithms, respectively.In the dynamic experiment, after smoothing by the KF algorithm the RMSE of the IASSA algorithm is reduced by 40.5%, 29.9%, 33.8%, and 33.8%, respectively.Therefore, the IASSA algorithm also has a smaller RMSE in the field experiment, showing its higher positioning accuracy and robustness.

Figure 2 .
Figure 2. The difference between the result of the TSWLS algorithm and the real coordinat

Figure 2 .
Figure 2. The difference between the result of the TSWLS algorithm and the real coordinates.

Figure 4 .
It can be observed that the search results of the SSA algorithm are closer to the true coordinates than those of the TSWLS algorithm.Therefore, the search area of the SSA algorithm can be constrained by the localization results of the TSWLS algorithm and the search boundary adaptive adjustment strategy.Based on this, the SSA algorithm can improve localization accuracy by deep exploitation.justmentstrategy, the localization result of the TSWLS algorithm, and the minimu ness value point searched by the population of the SSA algorithm with enough iter are marked in the contour plot of the opposite of fitness values, as shown in Figur can be observed that the search results of the SSA algorithm are closer to the true c nates than those of the TSWLS algorithm.Therefore, the search area of the SSA algo can be constrained by the localization results of the TSWLS algorithm and the s boundary adaptive adjustment strategy.Based on this, the SSA algorithm can im localization accuracy by deep exploitation.

Figure 3 .
Figure 3.The distribution of the opposite of the fitness value.

Figure 4 .
Figure 4.The contour map and results of each algorithm solution.

Figure 3 .
Figure 3.The distribution of the opposite of the fitness value.
ness value point searched by the population of the SSA algorithm with enough itera are marked in the contour plot of the opposite of fitness values, as shown in Figur can be observed that the search results of the SSA algorithm are closer to the true co nates than those of the TSWLS algorithm.Therefore, the search area of the SSA algo can be constrained by the localization results of the TSWLS algorithm and the s boundary adaptive adjustment strategy.Based on this, the SSA algorithm can im localization accuracy by deep exploitation.

Figure 3 .
Figure 3.The distribution of the opposite of the fitness value.

Figure 4 .
Figure 4.The contour map and results of each algorithm solution.

Figure 4 .
Figure 4.The contour map and results of each algorithm solution.

Figure 5 .
Figure 5. Contour map and results of each algorithm solution.

Figure 5 .
Figure 5. Contour map and results of each algorithm solution.

Figure 6 .
Figure 6.The comparison of localization accuracy under different distance noise standard deviations.

Figure 6 .
Figure 6.The comparison of localization accuracy different distance noise standard deviations.

Figure 7 .
Figure 7.The number of bad results for different algorithms.

Figure 9 .
Figure 9.The experimental site and point distribution.

Figure 9 .
Figure 9.The experimental site and point distribution.

Figure 10 .
Figure 10.The algorithm errors at different points in the field experiment.

Figure 10 .
Figure 10.The algorithm errors at different points in the field experiment.

Figure 11 .
Figure 11.The trajectory tracking results of the five algorithms.(a) The trajectory tracking results of the TSWLS algorithm.(b) The trajectory tracking results of the ICWLS algorithm.(c) The trajectory tracking results of the GWO algorithm.(d) The trajectory tracking results of the SSA algorithm.(e) The trajectory tracking results of the IASSA algorithm.

Figure 12 .
Figure 12.CDF of position errors of different algorithms.(a) Before smoothing by the KF algorithm.(b) After smoothing by the KF algorithm.

Figure 11 .
Figure 11.The trajectory tracking results of the five algorithms.(a) The trajectory tracking results of the TSWLS algorithm.(b) The trajectory tracking results of the ICWLS algorithm.(c) The trajectory tracking results of the GWO algorithm.(d) The trajectory tracking results of the SSA algorithm.(e) The trajectory tracking results of the IASSA algorithm.

Figure 11 .
Figure 11.The trajectory tracking results of the five algorithms.(a) The trajectory tracking re the TSWLS algorithm.(b) The trajectory tracking results of the ICWLS algorithm.(c) The tr tracking results of the GWO algorithm.(d) The trajectory tracking results of the SSA algori The trajectory tracking results of the IASSA algorithm.

Figure 12 .
Figure 12.CDF of position errors of different algorithms.(a) Before smoothing by the KF alg (b) After smoothing by the KF algorithm.

Figure 12 .
Figure 12.CDF of position errors of different algorithms.(a) Before smoothing by the KF algorithm.(b) After smoothing by the KF algorithm.

Table 1 .
The changes in the fitness values as the number of iterations increases.

Table 1 .
The changes in the fitness values as the number of iterations increases.

Table 2 .
The comparison of localization accuracy under different numbers of receivers.

Table 2 .
The comparison of localization accuracy under different numbers of receiv

Table 3 .
The average time consumption of different algorithms.

Table 3 .
The average time consumption of different algorithms.

Table 4 .
The comparison of RMSE of each algorithm for the original and smoothed paths.

Table 4 .
The comparison of RMSE of each algorithm for the original and smoothed paths.

Table 4 .
The comparison of RMSE of each algorithm for the original and smoothed paths.