1. Introduction and Motivation
The possibility of computing accurate position estimates of mobile devices in indoor environments is essential to increase the level of personalization of services offered to users (e.g., [
1]). Among the plethora of applications that can take advantage of accurate and robust indoor localization, it is worth mentioning educational games designed to increase the interactivity of visits to exhibitions and museums (e.g., [
2,
3]), applications to support the automation of work in industrial warehouses (e.g., [
4]), and advanced services related to location based social networks (e.g., [
5]), which can be offered in large indoor areas like shopping malls, train stations, and airports. Currently, the literature documents solutions to specific indoor problems, such as presence analysis using crowdsensing [
6] and identification of stop-by behaviors [
7]. However, the possibility of enabling a mobile device to estimate its position accurately in an indoor environment is still an open problem (e.g., [
8,
9]), even if specialized technologies, like Ultra-Wide Band (UWB) (e.g., [
10]), are now easily implemented.
In this paper, the attention is focused on the problem of enabling a mobile device, denoted as the Target Node (TN), to compute accurately and robustly its position in a known indoor environment in which fixed network nodes, denoted as Anchor Nodes (ANs), are installed at known locations. In the considered scenarios, mobile devices can actively measure the distances from visible ANs using one of the available ranging technologies, like UWB, which is the technology that was actually used to obtain the experimental results presented in
Section 4. Note that the proposed method to compute the position of a TN is not restricted to work with UWB, and preliminary experiments that use WiFi signaling were also performed (e.g., [
11,
12]). The accepted tolerance of the obtained position estimates depends on the considered application, but an average error of 1 m is normally considered acceptable for many application scenarios, while experimental results discussed in
Section 4 show that such an accuracy is feasible using UWB. With minor loss of generality, the considered indoor environment is assumed to be composed of possibly overlapping rectangular cuboids, called boxes. Such a choice allows focusing on single boxes when searching for the TN in the considered environment. Observe that the minimum bounding box containing the considered environment can be used if the environment cannot be split into boxes, and in such cases, the computed estimates of the position of the TN should be filtered accordingly.
One of the problems that makes accurate indoor localization difficult in the considered scenarios is that the positions of the ANs in the environment strongly impact the accuracy of ordinary localization algorithms (e.g., [
8,
13]), like the Two Stage Maximum Likelihood (TSML) [
14] algorithm discussed in
Section 2. Actually, a significant loss of accuracy is experienced when some configurations of the ANs are used. Unfortunately, the most problematic configurations are those in which the ANs are (almost) coplanar, which is very common in real indoor environments because ANs are normally located near the ceiling of the environment in order to maximize coverage, to minimize multipath interference, and to limit the interference caused by people, furniture, and other obstacles. Such a very common choice degrades the performance of ordinary algorithms because some of the matrices involved in such algorithms become strongly ill conditioned (e.g., [
15]). Observe that the loss of accuracy for critical arrangements of the ANs is a characteristic shared by many localization algorithms, and it is neither related to the precision of the ranging technology used to perform localization nor to the floating-point accuracy of computation. The only way to prevent such problems is the relocation of the ANs, which is often impractical in indoor scenarios because the choice of the positions of the ANs is often driven by the practical considerations mentioned previously.
The localization as optimization approach was proposed in previous works (e.g., [
16,
17]) with the aim of reducing the loss of accuracy that is caused by the use of ordinary algorithms when the configuration of ANs is critical. The proposed approach, as recalled in
Section 2, is based on the possibility of reformulating a localization problem in terms of a related optimization problem, which is then solved using one of the algorithms documented in the vast literature on nonlinear optimization. Note that some optimization algorithms still have problems related to ill conditioned matrices, so the choice of the optimization algorithm to be used in the context of localization as optimization is crucial to avoid the loss of accuracy for critical arrangements of the ANs. The use of Particle Swarm Optimization (PSO) [
18] was proposed to support localization as optimization in [
12,
15,
17] with the so-called PSO (localization) algorithm. Unfortunately, even if the PSO algorithm proved to be effective at reducing the loss of accuracy caused by critical arrangements of ANs, PSO has the following intrinsic characteristics that make it unsatisfactory to support localization. First, it does not guarantee that global extrema are computed in a finite time. Second, its performance depends on a set of values that can be determined only by means of detailed simulations of the algorithm in the considered environment, and the performance may vary significantly when different environments are considered.
In this paper, the Polynomial Optimization using Subdivision Trees (POST) algorithmic framework is proposed as an effective means to support localization as optimization. The POST framework uses a technique inspired by the research on polynomial optimization, and it is completed with suitable methods to compute lower and upper bounds of polynomial functions to obtain concrete algorithms to solve the minimization problems derived from localization problems. In particular, in this paper, the instantiation of the POST framework that uses recent results to compute needed lower and upper bounds is presented and studied under the name of the POST
algorithm. The POST
algorithm, as described in
Section 3, is inspired by recent results [
19] on constraint satisfaction problems according to which the lower and upper bounds of a polynomial function over a box can be computed by evaluating the function at the corners of the box. In detail, once the localization problem at hand is rewritten into a related minimization problem, the POST
algorithm recursively subdivides the considered environment into disjoint sub-boxes to search for the minimum of the polynomial function related to the localization problem using the mentioned lower and upper bounds to appropriately prune the search space. Note that the accuracy of the POST
algorithm does not depend on the positions of the ANs, and therefore, the POST
algorithm can also be used when the accuracy of ordinary algorithms, like the TSML algorithm, degrades sensibly. In addition, note that the experimental results discussed in
Section 4 show that the POST
algorithm ensures an accuracy of localization analogous to the accuracy of the TSML algorithm when the arrangement of ANs is not critical for the TSML algorithm. Such a comparison with the TSML algorithm is particularly relevant because the TSML algorithm is an accepted reference to assess the performance of localization algorithms since it can attain the Cramér–Rao lower bound for the position estimator (e.g., [
20]). Finally, note that the experimental results discussed in
Section 4 show that the performance of the POST
algorithm is very similar to the performance of the PSO algorithm, but the POST
algorithm does not have the two problematic characteristics of the PSO algorithm mentioned previously.
The experimental campaign discussed in
Section 4 on the use of the POST
algorithm to estimate the position of a TN in a large empty corridor was performed using a novel localization add-on module for the Java Agent and DEvelopment framework (JADE) [
21] that provides software agents with the ability to estimate the position of the devices that host them within a known environment. Note that JADE and its companion tools (e.g., [
22]) are consolidated technologies for software agents, and they are promising technologies in the context of location based services (e.g., [
23]) because of the advanced interaction mechanisms [
24] that software agents natively provide. The presented experiments compare the POST
algorithm with the TSML algorithm and with the PSO algorithm, and they use UWB signaling to estimate the distances from the TN to the available ANs. In the presented experiments, the ANs are fixed UWB nodes specifically installed to support localization, and four different arrangements of the ANs are given. For each arrangement, the TN is located at eight different positions inside the corridor. In the first considered scenario, all ANs are installed at the same height, close to the ceiling of the corridor. Observe that, in such a configuration, the TSML algorithm is not applicable because of the reasons mentioned previously. In the second scenario, the heights of two ANs are slightly decreased to ensure that the TSML algorithm is applicable. In this case, even if it is applicable, the results obtained using the TSML algorithm are less accurate than the results obtained with the localization as optimization approach. In the third scenario, the two ANs whose heights were decreased are further lowered to improve the accuracy of the TSML algorithm. Finally, in the last scenario, the two relocated ANs are moved close to the floor of the corridor, while the other two ANs are still installed close to the ceiling. As expected, experimental results confirm that the accuracy of the POST
algorithm is independent of the arrangement of the ANs and that, in all experimented arrangements, its accuracy is better than the accuracy of the TSML algorithm, and it is analogous to the accuracy of the PSO algorithm. The obtained results are compatible with targeted application scenarios because the average localization error of the POST
algorithm, measured as the distance between the true position of the TN and its estimated position, is below 1 m. Note that all experiments were performed in an empty corridor with all ANs in the line of sight. Therefore, the accuracy of localization in practical situations is expected to degrade with the presence of obstacles and multipath interference. Actually, the possibility of installing all ANs near the ceiling of the considered environment is relevant in this respect because it can significantly increase line of sight coverage.
This paper is organized as follows.
Section 2 introduces the notation adopted throughout the paper, and it formulates the localization problem both from a geometric point of view and from an optimization based point of view. For the sake of completeness,
Section 2 also summarizes the TSML algorithm and the PSO algorithm.
Section 3 describes the proposed POST
algorithm, and it also presents the pseudocode of a function that implements the proposed algorithm.
Section 4 discusses the results of the experimental campaign performed to assess the effectiveness of the proposed algorithm. Finally,
Section 5 concludes the paper and outlines future research directions.
3. The POST Algorithm
As discussed in previous sections, the localization as optimization approach prevents problems related to the (possibly) ill conditioned matrices that are manipulated by well known (geometric) localization algorithms. Note that many of the algorithms for nonlinear optimization still have problems related to ill conditioned matrices, and rewriting into an optimization problem does not ensure that the loss of accuracy for critical arrangements of the ANs is avoided, unless specific attention is paid to the choice of the optimization algorithm. PSO, as briefly outlined at the end of the previous section, is one of the algorithms that can be used to support the localization as optimization approach among the plethora of optimization algorithms available in the vast literature on the subject. In this section, a novel algorithm that can be used to support the localization as optimization approach, namely the POST
algorithm, is described and briefly studied. The notation used to describe the POST
algorithm borrows common notations, which include the multi-index notation and a notation to describe boxes, that are normally used to study real functions of several real variables. As such, the adopted notation should be easily understandable, but interested readers can refer to [
27] for a detailed description of the notations and conventions followed.
The localization cost function
defined in (
8) is a polynomial function of three real variables. The three variables represent the coordinates of the TN inside the considered indoor environment, and the maximum degree of each variable in
is four. Hence, the localization cost function is a multivariate polynomial function of
real variables with multi-degree
, and the localization problem is solved by finding the minimum of
in the indoor environment
in which the TN is supposed to be located. As discussed in
Section 1, one of the assumptions of the proposed algorithm is that the indoor environment in which localization is performed can be split into boxes. For this reason, the considered minimization problem can be restricted to boxes.
The vast literature on nonlinear programming proposes several algorithms that are designed to solve problems in which the cost function is polynomial and the minimum is searched in a box. Many of such algorithms make use of one of the most relevant properties of the Bernstein polynomial basis (e.g., [
28] for a comprehensive review of the subject and a historical retrospective), according to which the lower and upper bounds of a polynomial function over a box can be computed by means of the Bernstein coefficients [
28] of the function. Such bounds can be used to drive the subdivision of the considered box to search for the extrema of the considered function in the box (e.g., [
28]) using an ordinary branch-and-bound approach. Unfortunately, such a method based on the Bernstein polynomial basis is problematic when the polynomial function to minimize is obtained from a localization problem because the number of variables
and the multi-degree of the polynomial function
require that 125 Bernstein coefficients are computed in the worst case for each considered sub-box. A preliminary analysis showed that, even if effective algorithms for the computation of Bernstein coefficients are used (e.g., [
29]), the computational cost of the method is too high for the intended applications of indoor localization briefly mentioned in
Section 1.
A related method that is expected to be less expensive in terms of the inherent computational cost can be derived from a recent result [
19] that originates from the research on the satisfaction of polynomial constraints over finite domains [
30]. Actually, the mentioned result can be used to compute lower and upper bounds for a polynomial function over a box without using Bernstein coefficients. Even though the obtained bounds are typically less strict than the bounds obtained using Bernstein coefficients, the use of the mentioned result is preferable because the expected computational cost for
variables and for multi-degree
is expected to be compatible with the intended applications of indoor localization briefly discussed in
Section 1.
In detail, the following proposition from [
19] generalizes known results for one and two variables, and it can be used to compute lower and upper bounds for a polynomial function of
n real variables over the box
. The proof of the proposition is technical, and it is omitted for the sake of brevity. Interested readers should consult [
19] for further details on the proposition and for discussions on possible extensions and generalizations.
Proposition 1. Given a polynomial function of real variables with multi-degree : and is the set of the corners of U.
Observe that the assumption in Proposition 1 that only box
U can be considered to compute lower and upper bounds is not restrictive. Actually, in order to consider a polynomial function
of
real variables
that take values from an arbitrary box
, it is sufficient to change the variables of
p to
, where:
The POST
algorithm uses the bounds computed in Proposition 1 to drive the subdivision of the initial box, which corresponds to the considered environment, to search for the minimum of the localization cost function
defined in (
8). In detail, the pseudocode of the
function, which implements the POST
algorithm, is shown in Algorithm 1. The parameters of the function are:
The vector of measured distances from the visible ANs (Line 2);
The current box in which the TN is supposed to be located (Line 3); and
The current estimate of the position of the TN (Line 4).
The result of the function is the estimated position
of the TN (Line 5). In order to compute the needed lower and upper bounds for the localization cost function
over the current box, the
function passes the anchor matrix
A defined in (
6), together with
and
B, to the
function (Line 6), which actually computes the lower and upper bounds using Proposition 1. The termination condition of the
function is given in terms of the parameter
, which denotes the tolerance of the computed position estimate. In particular,
is used to identify when considered boxes are sufficiently small (Line 13), and it is chosen such that the localization cost function
can be considered almost constant in a box whose longest edge is
. The value of
ultimately expresses the accepted tolerance on the computed position estimates. The experimental results shown in
Section 4 for the
algorithm were obtained using
, so that two position estimates whose coordinates differ by less than 1 cm are considered equal. Such a choice is reasonable, especially in view of the errors introduced by the underlying ranging technology. Actually, different values of
can be chosen, depending on the targeted application and on the adopted ranging technology.
The
function is computed by a software agent hosted on a mobile device to estimate the position of the device within the considered environment as soon as the distance estimates to
ANs become available. The arguments passed to the function are: the acquired distance estimates
, the box that describes the entire considered environment, and the coordinates of a point inside the box. Note that such arguments could be improved if the device could track its movements, so that it could provide the agent with a good initial estimate of its position. Such a possibility, which is feasible for mobile devices like smartphones because they are readily equipped with needed sensors, is not considered in this work.
Algorithm 1 Pseudocode of the function, which is used to estimate the position of the TN in box using estimated distances from ANs together with an initial approximation of the position of the TN. The anchor matrix A contains the positions of the ANs, and is the accepted tolerance. |
1: function(, B, ) | ▹ the function |
2: input | ▹ distances from the ANs |
3: input | ▹ the box in which the TN is supposed to be located |
4: input | ▹ the current estimate of the position of the TN |
5: output | ▹ an estimate of the position of the TN |
6: (, B, A) | ▹ compute the lower and upper bounds of |
7: if then | ▹ is l less than the current minimum of ? |
8: return | ▹ the current minimum of does not decrease in B |
9: end if | |
10: | ▹b is the length of the longest edge of B |
11: if then | ▹ is B sufficiently small? |
12: select | ▹ select a point in B |
13: if then | ▹ does improve the current minimum of ? |
14: return | ▹ improves the current minimum of |
15: else | |
16: return | ▹ does not improve the current minimum of |
17: end if | |
18: end if | |
19: select | ▹ select an axis to split B |
20: select | ▹ select a point in along the chosen axis |
21: | ▹ split B along the chosen axis at s, and consider the left sub-box |
22: () | ▹ recurse to improve the minimum of possibl |
23: if then | ▹ does the left sub-box provide an improved minimum of ? |
24: | ▹ the minimum is improved in the left sub-box |
25: else | |
26: | ▹ the minimum is not improved in the left sub-box |
27: end if | |
28: | ▹ split B along the chosen axis at s, and consider the right sub-box |
29: () | ▹ recurse to possibly improve the minimum of |
30: if then | ▹ does the right sub-box provide an improved minimum of ? |
31: | ▹ the minimum of is improved in the right sub-box |
32: end if | |
33: return | ▹ return the estimated position of the TN | |
34: end function | |
Proposition 2. The function always terminates.
Proof. The function is recursive, and the base cases of recursion are tested at Lines 7 and 13. The recursion is terminated when the considered box cannot improve the current minimum of the location cost function (Line 7) or when the function is almost constant in the considered box, which implies that its value can be directly compared with the current minimum (Line 13). In all other cases, the recursion continues with smaller boxes computed at Lines 21 and 28. The worst case occurs when the condition at Line 7 is never satisfied, so that the reduction of the sizes of boxes would eventually produce boxes in which the localization cost function is almost constant. The proposition is proven because when the localization cost function is almost constant in a box, the recursion is immediately terminated either by accepting or by rejecting the box. □
The proof of Proposition 2 suggests a way to estimate the computational cost of the function. The following proposition estimates the computational cost of the function in terms of the number of applications of the function.
Proposition 3. Given a box , the function terminates, in the worst case, after performing applications of the function, where: Proof. Since, for Proposition 2, the function always terminates, it decomposes the initial box B into a finite number of disjoint sub-boxes. In the worst case, which corresponds to the case in which the condition at Line 7 is never satisfied, the number of processed sub-boxes is . The proposition is proven because the function uses the function only at Line 6 and therefore only once for each processed sub-box. □
It is worth noting that the computational cost estimated in Proposition 3 typically overestimates the actual cost of the
function in real scenarios because the condition at Line 7 is expected to prune the search tree for large sub-boxes. In addition, note that the
function is open to several optimizations, which are typical of methods based on the branch-and-bound approach. In particular, the
function does not detail two important choices that can be used to improve its performance in practical cases. First, the
function does not specify how the axis to use for the next split of the current box is selected. Second, once the axis to use for the next split is selected, the
function does not specify how a value in the current box along the selected axis is chosen. Both choices can be fixed statically, or they can be postponed at execution time to make them dynamic. In both cases, they have the potential to improve the performance of the proposed algorithm significantly in real situations, as the practice of nonlinear optimization suggests. In the current implementation, which was used for the experimental campaign discussed in
Section 4, the axis to use for the next split is selected in lexicographic order, and then, the selected edge is split in the middle. Note that, even if the current implementation adopts such simple techniques, the experimental campaign showed that the proposed algorithm can be used to support real-time localization because position estimates were computed in less than
s, which is an acceptable bound for the considered applications.
4. Experimental Results
This section presents experimental results that were obtained using the three algorithms described in the previous sections, namely the TSML algorithm, the PSO algorithm, and the POST
algorithm. The three algorithms were applied offline to the same sets of distance estimates in order to make a fair comparison among them. Actually, the performance of a localization algorithm largely depended on the accuracy of available distance estimates, and a fair comparison required that the three considered algorithms were provided with the same sets of distance estimates. The TSML algorithm and the PSO algorithm were chosen as reference algorithms for the assessment of the performance of the POST
algorithm. The TSML algorithm was chosen because it can attain the Cramér–Rao lower bound for the position estimator (e.g., [
20]). The PSO algorithm was chosen because it is based on the same approach adopted by the POST
algorithm, namely the localization as optimization approach.
The experimental results discussed in this section were obtained using a commercial Android smartphone called SpoonPhone (
www.bespoon.com). To the best of our knowledge, the SpoonPhone is the only commercial smartphone on the market that allows measuring distances using UWB signaling through special hardware and software modules. Such modules can be used to estimate the distances to coupled active tags by means of a dedicated interface provided by the manufacturer. Then, acquired distance estimates can be used to feed the considered localization algorithms. All the experiments were performed using a SpoonPhone as TN and four active tags as ANs. The indoor environment in which the experiments were performed was a 4 m wide, 10 m long, and 3 m tall corridor. It is worth noting that the corridor was empty during the distance acquisition phases of the experiments in order to guarantee line of sight visibility and to minimize distance errors caused by obstacles and multipath interference. An experimental campaign to assess the performance of the proposed algorithm when the environment contains obstacles and people is planned for future work.
Four arrangements of the ANs that differed only for the heights of two of the four ANs were considered in the experiments. For each arrangement of the ANs, the TN was placed at eight different locations in the considered environment. The experimented positions of the TN were the same for the four arrangements of the ANs. The considered scenarios are schematically shown in
Figure 1, where the positions of the TN are marked in red and numbered from 1 to 8. The coordinates of the four positions of the TN numbered from 1 to 4 are expressed in meters in the coordinate system shown in
Figure 1 as:
Note that the height of such positions is compatible with the height of a smartphone used for augmented reality applications because the user, which is a kid in a typical usage scenario, holds the smartphone up to see through it. The coordinates of the four positions of the TN numbered from 5 to 8 are expressed in meters in the considered coordinate system as:
Note that the abscissa and ordinate were the same as before, while the height was lowered to 1 m to make it compatible with the height of a smartphone used for applications, like educational games for kids in exhibitions and museums, that require the user to navigate the environment using a virtual compass.
The performance of the three considered algorithms was evaluated, for the eight positions of the TN and for the four arrangements of the ANs, in terms of the measured localization error. In detail, using the nomenclature introduced in
Section 2, the localization error measured to compare the three algorithms can be defined as:
where
denotes the true position of the TN and
denotes its estimated position.
For each one of the experimental configurations, the distances from the TN to the ANs were acquired times, and the following quantities were computed for each considered algorithm:
The average and the standard deviation of the absolute value of the first component of over the r acquisitions obtained using the TSML algorithm, denoted as and , the analogous values obtained using the PSO algorithm, denoted as and , and the analogous values obtained using the POST algorithm, denoted as and ;
The average and the standard deviation of the absolute value of the second component of over the r acquisitions obtained using the TSML algorithm, denoted as and , the analogous values obtained using the PSO algorithm, denoted as and , and the analogous values obtained using the POST algorithm, denoted as and ; and
The average and the standard deviation of the Euclidean norm of the vector obtained with the first two components of over the r acquisitions obtained using the TSML algorithm, denoted as and , the analogous values obtained using the PSO algorithm, denoted as and , and the analogous values obtained using the POST algorithm, denoted as and .
The most relevant reason to consider only the first two components of is that, in the envisaged applications, which include educational games for kids in exhibitions and museums, the major interest is in measuring the accuracy of the position estimates with respect to the floor of the considered indoor environment. Therefore, the errors in the estimated height of the TN were neglected in the discussed performance analysis, and only the errors in the positions with respect to the floor were considered. In the remainder of this section, the localization errors relative to the four considered localization scenarios are shown and discussed for the three considered algorithms. For each scenario, a brief comparison among the three considered algorithms is also presented in terms of the average errors and of the standard deviations mentioned previously.
4.1. Scenario 1
In the first scenario, all ANs were placed near the ceiling of the corridor schematically shown in
Figure 1. In the coordinate system shown in the figure, the positions of the ANs had the following coordinates expressed in meters:
Since all the ANs shared the same height, ordinary (geometric) localization algorithms, such as the TSML algorithm, were not applicable, as discussed in
Section 1. Actually, in this scenario, all the entries in the third column of matrix
G in (
9) were equal, and therefore, matrix
G was not full rank. The TSML algorithm cannot advance to the second phase because
in (
9) cannot be computed.
For the PSO algorithm,
Table 1 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured an accuracy of localization compatible with the intended applications discussed in
Section 1. Moreover, the lower value of the standard deviation
was
m, and the higher value was
m. Such values of
and
guaranteed accurate position estimates for all the considered positions of the TN. The values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were spread all around the true position of the TN and that they were not distributed along special directions.
For the case of the POST
algorithm,
Table 2 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured a high level of localization accuracy.
Table 2 also shows that the lower value of the standard deviation
was
m and the higher value was
m. Such values of
and
guaranteed a localization accuracy compatible with the envisaged applications, as discussed in
Section 1. The values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were spread all around the true position of the TN and that the position estimates were not distributed along special directions. Observe that the values of the average localization errors and of standard deviations of localization errors for the POST
algorithm were similar to the analogous values obtained with the PSO algorithm.
Figure 2 shows a summary of the experimental results for the first scenario. Only the average errors of the position estimates with respect to the floor of the considered environment are shown because such values were considered the most relevant quantities to assess the performance of localization algorithms in the envisaged applications. Note that the experimental results for the TSML algorithm are not shown because such an algorithm is not usable in this scenario.
4.2. Scenario 2
In order to obtain experimental results for the TSML algorithm, two of the ANs were lowered with respect to the first scenario. Even if no obstacles were present during the experimental campaign, the heights of the two relocated ANs were intentionally kept close to the ceiling of the corridor to reduce the effects of obstacles in practical applications. In particular, the relocated ANs were those numbered 1 and 3, and the positions of the ANs in this scenario had the following coordinates expressed in meters in the coordinate system shown in
Figure 1:
The TSML algorithm was applicable in this scenario, and
Table 3 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
Note that the lower value of
was
m, and the higher value was
m; also note that the average localization error was often higher than
m. With respect to the standard deviation
,
Table 3 shows that its lower value was
m and its higher value was
m. Such values of
and
did not guarantee that reliable position estimates were computed for all the considered positions of the TN. Such results were expected because matrix
G in (
9) was strongly ill conditioned, and therefore, the computation of
from (
9) was unreliable. Small errors in the measurement of distance estimates, which were reflected in the small errors in
in (
9), could cause large errors in the computation of
. Note that such a problem was neither related to the precision of the ranging technology nor to the floating-point accuracy of computation, but it was exclusively related to the arrangement of the ANs, as discussed in
Section 1.
When the PSO algorithm was used to perform localization,
Table 4 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured an accuracy of localization compatible with the intended applications discussed in
Section 1. Moreover, the lower value of the standard deviation
was
m, and the higher value was
m. Such values of
and
guaranteed accurate position estimates. The values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were spread all around the true position of the TN and that the position estimates are were distributed along special directions.
For the POST
algorithm,
Table 5 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured a high level of localization accuracy.
Table 5 also shows that the lower value of the standard deviation
was
m and the higher value was
m. Such values of
and
guaranteed a localization accuracy compatible with the envisaged applications, as discussed in
Section 1. The values of
and
were similar to the corresponding values of
and
, which meant that the position estimates were spread all around the true position of the TN and that the position estimates were not distributed along special directions.
Figure 3 shows a summary of the experimental results for the second scenario. In this scenario, the relocated ANs were kept sufficiently close to the ceiling of the corridor to ensure a good line of sight coverage when obstacles were present in the environment. However, even if the TSML algorithm could be used to compute estimates of the position of the TN, such an algorithm did not provide the same level of accuracy that the PSO algorithm and the POST
algorithm ensured. Actually, the values of the adopted metrics relative to the TSML algorithm, which are shown in
Table 3, were much higher than the values relative to the PSO algorithm and to the POST
algorithm, which are shown in
Table 4 and in
Table 5, respectively.
Finally, note that the results obtained with the POST algorithm were similar to the corresponding results obtained with the PSO algorithm, as in the first scenario. Such a similarity was not surprising because the two algorithms were based on the localization as optimization approach, which ensured that the results of localization were independent of the positions of the ANs, provided that appropriate optimization algorithms were used.
4.3. Scenario 3
In this scenario, the height of the two relocated ANs was further reduced. The positions of the ANs in this scenario had the following coordinates expressed in meters with respect to the coordinate system shown in
Figure 1:
Note that the two relocated ANs were likely to be covered by obstacles in real scenarios, which could make the estimates of the distances from such ANs unreliable. A future development of the presented research concerns the study of the characteristics of the considered algorithms in environments that contain obstacles and people.
For the TSML algorithm,
Table 6 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured an accuracy of localization compatible with the intended applications discussed in
Section 1. With respect to the standard deviation
,
Table 6 shows that its lower value was
m and its higher value was
m. Such values of
and
guaranteed accurate position estimates. The values of
and
were similar to the corresponding values of
and
, which guaranteed that the position estimates were spread all around the true position of the TN and that the position estimates were not distributed along special directions. A comparison between
Table 6 and
Table 3 revealed that the accuracy of the TSML algorithm in this scenario was significantly improved with respect to the accuracy obtained in the second scenario. Such a result was not surprising because the difference between the height of the two relocated ANs and the height of the other two ANs was sufficiently large.
For the PSO algorithm,
Table 7 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions. Note that the lower value of
was
m, and the higher value was
m, which ensured an accuracy of localization compatible with the intended applications discussed in
Section 1. Moreover, the lower value of the standard deviation
was
m, and the higher value was
m. Such values of
and
guaranteed accurate position estimates. In addition, the values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were spread all around the true position of the TN and that the position estimates were not distributed along special directions.
Finally, when the POST
algorithm was used to perform localization,
Table 8 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured a high level of localization accuracy.
Table 8 also shows that the lower value of the standard deviation
was
m, and the higher value was
m. Such values of
and
guaranteed a localization accuracy compatible with the envisaged applications. The values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were spread all around the true position of the TN and that the position estimates were not distributed along special directions.
Figure 4 shows a summary of the experimental results for the third scenario. Note that the values obtained with the three localization algorithms were all similar in this scenario. Therefore, in the idealized case of an empty environment, the three considered algorithms achieved similar levels of accuracy, which were all sufficient to support the envisaged applications of indoor localization.
4.4. Scenario 4
In this scenario, the two relocated ANs were placed on the floor of the corridor, while the other two ANs were still close to the ceiling. With respect to the coordinate system shown in
Figure 1, the positions of the ANs in this scenario had the following coordinates expressed in meters:
Note that in real applications, the two ANs positioned near the floor of the corridor were probably covered by people, furniture, and other obstacles. Therefore, in such cases, the estimates of the distances from such ANs were probably affected by large errors, which ultimately degraded the accuracy of localization, independent of the adopted localization algorithm.
For the TSML algorithm,
Table 9 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured an accuracy of localization compatible with the envisaged applications. Considering the standard deviation
,
Table 9 shows that its lower value was
m and its higher value was
m. Such values of
and
guaranteed accurate position estimates. The values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were not distributed along special directions.
Table 10 shows the experimental results obtained using the PSO algorithm, which ensured that the obtained level of accuracy was sufficient for the envisaged applications of indoor localization.
In particular, when the PSO algorithm was used to perform localization,
Table 10 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions. The lower value of
was
m, and the higher value was
m, which ensured an accuracy of localization compatible with the intended applications discussed in
Section 1. Moreover, the lower value of the standard deviation was
m, and the higher value was
m. Such values of
and
guaranteed accurate position estimates. The values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were spread all around the true position of the TN and that the position estimates were not distributed along special directions.
Finally, when the POST
algorithm was used to perform localization,
Table 11 shows, for each one of the eight positions of the TN in
Figure 1, the values of the average localization errors and of the standard deviations of the localization errors computed over the
r acquisitions.
The lower value of
was
m, and the higher value was
m, which ensured a high level of localization accuracy.
Table 11 also shows that the lower value of the standard deviation
was
m, and the higher value was
m. Such values of
and
guaranteed accurate position estimates that were compatible with the envisaged applications, as discussed in
Section 1. As expected, the values of
and
were similar to the corresponding values of
and
, which ensured that the position estimates were not distributed along special directions.
Figure 5 shows a summary of the experimental results for the fourth scenario. Note that the values obtained with the three localization algorithms were all similar in this scenario. Therefore, in the idealized case of an empty environment, the three considered algorithms achieved similar levels of accuracy, which were all sufficient to support the envisaged applications of indoor localization.
5. Conclusions
This paper proposed the POST algorithm in the context of the localization as optimization approach. The POST algorithm was inspired by nonlinear programming, and it could be used to solve the optimization problem obtained from a localization problem with guarantees in terms of the accuracy and of the robustness of localization. In particular, the POST algorithm estimated the position of a TN by means of appropriate subdivisions of the considered environment to search for a position in the environment that corresponded to the solution of the optimization problem obtained from the considered localization problem. The major assumptions of the POST algorithms were the same as were adopted by many other localization algorithms. The POST algorithm assumed that a sufficient number of ANs were located in the environment at fixed and known positions and that the TN could actively measure estimates of the distances from each AN using an underlying ranging technology. In addition, in its simplest form, the POST algorithm assumed that the considered environment could be split into possibly overlapping boxes, so that the adopted optimization algorithm could be restricted to work on boxes. Observe that the performance of the POST algorithm did not depend on the positions of the ANs, and it only depended on the precision and on the accuracy of the estimates of the distances that the underlying ranging technology provided.
The accuracy of the POST
algorithm was studied empirically using a prototype implementation that processed distance estimates from four ANs in an empty corridor. The distance estimates were acquired using UWB signaling from a set of ANs installed specifically to support localization. The obtained experimental results confirmed that the accuracy of the POST
algorithm in the studied scenarios was compatible with the most common applications of indoor localization, for which the expected accuracy was normally set to 1 m. The obtained experimental results also showed that the accuracy of the POST
algorithm could be superior to the accuracy of the well known TSML algorithm, which is often used as a reference for the assessment of the performance of localization algorithms because it can attain the Cramér–Rao lower bound for the position estimator (e.g., [
20]). In particular, the TSML algorithm was not applicable in the first experimental scenario, in which the ANs were all positioned at the same height near the ceiling of the corridor, while the position estimates obtained using the POST
algorithm in such a scenario were accurate. Unfortunately, such an arrangement of the ANs is one of the most common in indoor installations because it ensures a good line of sight coverage, which reduces the errors associated with the measurement of distances. In the second experimental scenario, the TSML algorithm was technically applicable, but it was largely outperformed by the POST
algorithm. Actually, the experimental results confirmed that the accuracy of the TSML algorithm degraded so significantly when the ANs were installed in critical arrangements that it became practically inapplicable in such cases. In the last two experimental scenarios, in which the TSML algorithm was applicable with sufficient accuracy, the highest average errors of the POST
algorithm were lower than the corresponding errors of the TSML algorithm, which made the POST
algorithm preferable also in such scenarios. Finally, note that the performance of the PSO algorithm and the performance of the POST
algorithm were similar in all considered scenarios, but the POST
algorithm was preferable because of two important reasons. First, it guaranteed that the globally optimal solution of the optimization problem was found with a given localization tolerance. Second, it did not depend on the values of configuration parameters, except for the accepted localization tolerance. On the contrary, the PSO algorithm did not ensure that the globally optimal solution of the optimization problem was found, and it used a rich set of configuration parameters whose values needed to be accurately chosen to guarantee good performance.
The experimental results discussed in this paper were obtained using UWB signaling to allow the TN to measure the distances from available ANs. While UWB is appreciated for its accuracy and robustness, a network of UWB nodes acting as ANs is needed to support localization, which is a demanding requirement for the ubiquitous use of indoor localization. This is the reason why preliminary studies on the use of the localization as optimization approach with WiFi signaling, instead of UWB signaling, were performed (e.g., [
11,
12]). A WiFi infrastructure is already available in the large majority of the indoor environments in which indoor localization could be relevant for the envisaged applications, and therefore, the use of WiFi signaling as the underlying ranging technology could benefit from existing infrastructures, rather than requiring dedicated, and often expensive, infrastructures. Unfortunately, when WiFi signaling is chosen, the problems caused by the arrangement of the ANs in the environment are particularly relevant. The ANs, which are the WiFi access points when WiFi signaling is used, are normally already installed in the environment, and they are typically located on regular grids near the ceiling of the considered environment, which makes the TSML algorithm practically inapplicable. This is the reason why the POST
algorithm, and possibly other algorithms based on the localization as optimization approach, can play a crucial role for the adoption of WiFi signaling to support ubiquitous indoor localization.
Future developments of the discussed research concern empirical studies of the characteristics of the proposed algorithm in environments that contain obstacles and people in order to better assess the performance of the algorithm in real applications. A second planned development of the discussed research is intended to use the information on the movements of the TN, which is typically available when smartphones are used, to predict the positions of the TN, and to use predicted positions to improve the accuracy and the robustness of localization algorithms. A third development concerns the possibility of studying and experimenting with hybrid approaches to localization designed to integrate the approach based on active ranging adopted in this work with approaches based on active or passive tags. Finally, the algorithm proposed in this paper is inspired by a specific technique for nonlinear optimization, but other valid alternatives documented in the vast literature on the subject can be examined, especially when the considered environments have intricate structures.