Skip to main content

Robust localization in wireless networks from corrupted signals

Abstract

We address the problem of timing-based localization in wireless networks, when an unknown fraction of data is corrupted by non-ideal propagation conditions. While timing-based techniques can enable accurate localization, they are sensitive to corrupted data. We develop a robust method that is applicable to a range of localization techniques, including time-of-arrival, time-difference-of-arrival and time-difference in schedule-based transmissions. The method is distribution-free, is computationally efficient and requires only an upper bound on the fraction of corrupted data, thus obviating distributional assumptions on the corrupting noise. The robustness of the method is demonstrated in numerical experiments.

1 Introduction

Localization in wireless networks is important for applications in GPS-denied environments [1]. The next-generation wireless communication systems will standardize radio signals and measurements for localization in applications that range from mobile broadband to industrial internet-of-things networks. For accurate localization, these applications depend on techniques that use the signal time of flight between a transmitter and a receiver [2, 3].

Real-world measurements of wireless signals are prone to outliers which arise not only from sensor failures but also from signals that fail to reach the receiver in an ideal line-of-sight (Los) manner. That is, wireless signals may arrive at the receiver after reflections, diffractions or penetrations of different media, which we refer to as non-line-of-sight (Nlos) situations. The deployment of wireless technologies faces signal obstructions, moving objects, reflecting paths, foliage, etc. Under such non-ideal and Nlos conditions, standard measurement noise assumptions are invalid and conventional localization methods break down, as illustrated in Fig. 1.

Fig. 1
figure 1

Self-localization of the passive receiving node (\(\circ\)) in a at location (5, 5) using eight anchor nodes (\({\times }\)) and time-difference-of-arrival (Tdoa). The resolution of the interarrival times is on the order of \(3 \text {ns}\) and \(n=100\) observations are used. Here \(\epsilon =15\%\) of the data is corrupted by non-line-of-sight (Nlos) outliers. In b, and denote the mean position estimated using the standard nonlinear least-squares method (8) and the proposed robust method. The ellipses illustrate the dispersion of location estimates with approximately \(99.9\%\) coverage for the standard (dotted) and robust (solid) methods

We identify three broad approaches to model Nlos and other non-ideal effects in the robust localization literature. One approach is to model the effects as bounded additive measurement errors or bias [4, 5] and then estimate the node location that minimizes the worst-case error. This approach, however, can be overly conservative and sensitive to the user-specified error bound. A second approach is to consider a parametric outlier model in which a fraction of data samples is corrupted by an Nlos-data distribution with an assumed parametric form. For instance, this distribution could be a shifted Gaussian or exponential [6, 7] in which case the positions of nodes are estimated via maximum likelihood-based methods. A third, less restrictive approach is to use a nonparametric contamination model [8] in which the Nlos-data distribution has an unknown form and is sampled with an unknown probability \(\epsilon\). Methods based on this approach either tailor estimating functions to be insensitive to outliers [9] or fit kernel density estimation methods to capture the outliers [10,11,12]. The tailored methods are tuned by assuming that the uncorrupted Los-data are normally distributed. The more general density estimation-based methods require computationally demanding fitting techniques that carefully tune the parameters of a chosen kernel. A common drawback of the existing methods is that they are tailored to a specific localization technique—typically, time-of-arrival localization.

In this paper, we develop a new robust localization methodology based on the nonparametric contamination model with the following properties:

  • it is applicable to multiple localization techniques (including time-of-arrival, time-difference-of-arrival, and time-difference in schedule-based transmissions),

  • is computationally efficient and scalable with respect to the number of measurements, and

  • requires only specifying the level of data corruption \(0\% \le {\widetilde{\epsilon }}< 100\%\) that the method should be resilient against. This level determines an effective sample size that the method retains.

The methodology draws upon the principles of robust risk minimization developed in [13]. We demonstrate our approach using synthetic data from three distinct localization techniques: time-of-arrival (Toa), time-difference-of-arrival (Tdoa) and time-difference in schedule-based transmissions (Tdst).

2 Problem formulation

For a general problem formulation, consider a wireless network consisting of \(N+1\) nodes at locations

$$\begin{aligned} \{\varvec{x}_0,\underbrace{\varvec{x}_1,\ldots ,~\varvec{x}_{N_{a}}}_{\text {auxiliary}},\underbrace{\varvec{x}_{N_{a}+1},\ldots ,~\varvec{x}_{N}}_{\text {anchors}}\} \end{aligned}$$

in \({\mathbb {R}}^{d}\) space, where \(d=2\) or \(d=3\). Only the anchor node locations are known. The anchors and auxiliary nodes all transmit signals that propagate through space with constant velocity. These nodes can be thought of as base stations with known and unknown locations, respectively. The signals carry signatures that enable the identification of the transmitting node. The self-localizing node, located at \(\varvec{x}_0\), can either be an active transceiver or a passive receiver, depending on the localization technique considered below.

2.1 Arrival times of observed signals

We now consider the measurement of (inter)arrival times of observed signals used in three different localization techniques: Toa, Tdoa and Tdst. We then proceed to show how such measurements can be treated in a unified framework.

2.1.1 Toa: two-way ranging anchor nodes

In Toa, the self-localizing node \(0\) is a transceiver. At a given time, it initiates a transmission to the anchor nodes. Upon receiving the signals, anchor nodes return signals, after a possible fixed delay. This leads to time-of-arrival measurements at self-localizing node \(0\). The Toa measurement with respect to anchor node i is then

$$\begin{aligned} \mu ^{i0}= 2\frac{||\varvec{x}_{i}-\varvec{x}_{0}||}{c} + \delta , \end{aligned}$$
(1)

where c is the signal propagation velocity and \(\delta \ge 0\) is a transmission delay, see Fig. 2a.

Fig. 2
figure 2

Timing diagrams illustrating node transmitting signals in three different localization techniques

2.1.2 Tdoa: synchronous anchor nodes

In Tdoa, the anchor nodes are synchronized so that they broadcast signals with respect to a common clock. Consider a pair of anchor nodes (i, j) transmitting signals. Their interarrival time at the passive self-localizing receiver node \(0\) is then

$$\begin{aligned} \mu ^{ij}= \frac{||\varvec{x}_{j}-\varvec{x}_{0}||}{c} + \delta - \frac{||\varvec{x}_{i}-\varvec{x}_{0}||}{c}, \end{aligned}$$
(2)

where \(\delta \ge 0\) is a (possible) transmission delay at node i, see Fig. 2b.

Fig. 3
figure 3

Performance and sensitivity in Toa. a Cumulative distribution functions of localization errors \(\Delta ({\widehat{\varvec{x}}})\) of target node in Fig. 1a using 100 Monte Carlo runs. Unknown corruption fraction was \(\epsilon ~=~15\%\) and the upper bound used in the robust method was set to \({\widetilde{\epsilon }}~=~20\%\). b Root-mean square error in (m) as a function of \(\epsilon\) for the target node using standard, robust and Huber methods. Results based on 50 Monte Carlo simulations. For the proposed robust method the upper bound was \({\widetilde{\epsilon }}~=~50\%\)

2.1.3 Tdst: asynchronous anchor nodes

In Tdst, the anchor nodes operate asynchronously so that the transmitted signals are only coordinated through a sequence of observable signal events. Consider a pair of transceiving nodes (i, j), such that node j transmits only after receiving the signal from i and a given delay. The interarrival time at the passive node is then

$$\begin{aligned} \mu ^{ij}=\frac{||\varvec{x}_{i}-\varvec{x}_{j}||}{c} + \frac{||\varvec{x}_{j}-\varvec{x}_{0}||}{c} +\delta - \frac{||\varvec{x}_{i}-\varvec{x}_{0}||}{c}. \end{aligned}$$
(3)

where \(\delta > 0\) is the transmission delay at node j, see Fig. 2c. This technique can readily accommodate unknown locations of auxiliary transmitting nodes.

2.2 Measurements in Los

We now unify the ideal measurement models above in a single framework. First let \(s\subseteq \{ 1,2, \dots , N \}\) denote a set of transmitting nodes whose signals are observed by the self-localizing node 0. For a given set \(s\), the arrival times, using the localization technique in either (1), (2) or (3), can be arranged into a vector expressed as:

$$\begin{aligned} \boxed {\varvec{\mu }(s,\varvec{\theta }_\circ )=\frac{1}{c}{\mathbf {M}}(s)\varvec{\rho }(\varvec{\theta }_\circ ) + \delta {\mathbf {1}},} \end{aligned}$$
(4)

where

$$\begin{aligned} \varvec{\theta }_\circ \subseteq \{\varvec{x}_0,\varvec{x}_1,\ldots ,~\varvec{x}_{N_{a}}\} \end{aligned}$$

is the set of unknown node positions and

$$\begin{aligned} \begin{aligned} \varvec{\rho }(\varvec{\theta }_\circ )=\begin{bmatrix} \Vert \varvec{x}_1-\varvec{x}_2\Vert \\ \Vert \varvec{x}_1-\varvec{x}_3\Vert \\ \vdots \\ \Vert \varvec{x}_1-\varvec{x}_N\Vert \\ \Vert \varvec{x}_1-\varvec{x}_0\Vert \\ \vdots \\ \Vert \varvec{x}_N-\varvec{x}_0\Vert \end{bmatrix} \end{aligned} \end{aligned}$$

is an \(\frac{N(N+1)}{2} \times 1\) vector of distances between all nodes. The known delay is denoted by \(\delta\). \({\mathbf {M}}(s)\) is a selection matrix of integers that depends on the localization technique under consideration.

Example 1

(Toa) For \(N=3\) and \(s=\{1,2,3\}\), we have \(\varvec{\mu }(s,\varvec{\theta }_\circ )~=~[\mu ^{10},~\mu ^{20}, ~\mu ^{30}]^\top\) and

$$\begin{aligned} {\mathbf {M}}(s)~=~ \begin{bmatrix} 0 &{}\quad 0 &{}\quad 2 &{}\quad 0 &{}\quad 0 &{}\quad 0\\ 0 &{}\quad 0 &{}\quad 0 &{}\quad 0 &{}\quad 2 &{}\quad 0\\ 0 &{}\quad 0 &{}\quad 0 &{}\quad 0 &{}\quad 0 &{}\quad 2 \end{bmatrix} \end{aligned}$$

When \(s\) contains at least three anchor nodes that are not coaligned, \(\varvec{\theta }_\circ\) is uniquely determined from the set of interarrival times, see [14].

Example 2

(Tdoa) For \(N=3\) and \(s=\{1,2,3\}\), we have \(\varvec{\mu }(s,\varvec{\theta }_\circ )~=~[\mu ^{12},~\mu ^{23}]^\top\) and

$$\begin{aligned} {\mathbf {M}}(s)~=~ \begin{bmatrix} 0 &{}\quad 0 &{}\quad -\,1 &{}\quad 0 &{}\quad 1 &{}\quad 0\\ 0 &{}\quad 0 &{}\quad 0 &{}\quad 0 &{}\quad -\,1 &{}\quad 1 \end{bmatrix} \end{aligned}$$

in (4).

When \(s\) contains at least three anchor nodes that are not coaligned, \(\varvec{\theta }_\circ\) is uniquely determined from the set of interarrival times, see [15].

Example 3

(Tdst) For \(N=3\) and \(s=\{1,2,3,1\}\), we have \(\varvec{\mu }(s,\varvec{\theta }_\circ )~=~[\mu ^{12},~\mu ^{23},~\mu ^{31}]^\top\) and

$$\begin{aligned} {\mathbf {M}}(s)~=~ \begin{bmatrix} 1 &{}\quad 0 &{}\quad -\,1 &{}\quad \quad 0 &{}\quad 1 &{}\quad \quad 0\\ 0 &{}\quad 0 &{}\quad 0 &{}\quad 1 &{}\quad -\,1 &{}\quad 1\\ 0 &{}\quad 1 &{}\quad 1 &{}\quad 0 &{}\quad 0 &{}\quad -\,1 \end{bmatrix} \end{aligned}$$

in (4).

When \(s\) contains at least three anchor nodes that are not coaligned, \(\varvec{\theta }_\circ\) can be uniquely determined from the set of interarrival times, see [16, sec. 3.3] and [17, 18].

Under Los conditions, an observed set of transmitting nodes \(s\) gives rise to noisy measurements \(\varvec{z}\) of the (inter)arrival times \(\varvec{\mu }(s, \varvec{\theta }_\circ )\) given by (4). That is, the self-localizing node obtains data vectors drawn as

$$\begin{aligned} \varvec{z}\sim p_{\textsc {los}}(\varvec{z}|s) \end{aligned}$$
(5)

with a mean \(\varvec{\mu }(s, \varvec{\theta }_\circ )\). The observed set is drawn as s \(\sim\) pLos(s), with a possibly degenerate distribution. If the wireless network is configured such that \(\varvec{\theta }_\circ\) can be uniquely determined, as discussed above, then the unknown parameter can be identified from the joint data distribution pLos\((\varvec{z},s)\) using a squared-error measure \(\Vert \varvec{z}-\varvec{\mu }(s,\varvec{\theta })\Vert ^2\). Specifically, suppose the elements of \(\varvec{z}\) have finite variances and let \(\varvec{\theta }\) be a free parameter, then it can be shown that the unique minimizer of the squared-error fitting criterion

$$\begin{aligned} {{\,\mathrm{\mathop {\text {arg min}}\limits }\,}}_{\varvec{\theta }}~{{\,\mathrm{{\mathbb {E}}}\,}}\Big [\Vert \varvec{z}-\varvec{\mu }(s,\varvec{\theta })\Vert ^2\Big ] \equiv \varvec{\theta }_\circ , \end{aligned}$$
(6)

when taking the expectation with respect to pLos\((s, \varvec{z})\). This motivates the use of tractable least-square fitting methods to estimate \(\varvec{\theta }_\circ\) under Los conditions.

2.3 Nlos measurements as corrupted data

In more realistic wireless environments, however, the set of measurements from observed nodes, \((s, \varvec{z})\), is not obtained under Los conditions. Here we model the measurements in Nlos conditions using a general nonparametric contamination model, see [8, 9]. That is, the observed data is drawn from a mixture distribution

$$\begin{aligned} \boxed {p(s,\varvec{z})=(1-\epsilon )~p_{\textsc {los}}(s,\varvec{z}) + \epsilon ~p_{\textsc {nlos}}(s,\varvec{z}),} \end{aligned}$$
(7)

where \(\epsilon\) is an unknown fraction of corrupted data and pNlos\((s, \varvec{z})\) is a corrupting distribution. This unknown distribution generates measurements \(\varvec{z}\) with outlier noise and biases such that the mean may differ from \(\varvec{\mu }(s, \varvec{\theta }_\circ )\).

Nlos is thus a far more challenging scenario to estimate \(\varvec{\theta }_\circ\) from finite data \(\{(s_1,\varvec{z}_1), \dots ,(s_n,\varvec{z}_n) \}\) drawn i.i.d. from (7). Due to corrupting random outliers and biases, the squared-error criterion considered in (6) typically results in very brittle estimators. Next we shall develop a robust methodology that is applicable to several localization techniques and requires only specifying an upper bound on the corruption fraction, \({\widetilde{\epsilon }}\ge \epsilon\), which is a straightforward measure of the quality of the data [19, ch. 1].

3 Method

The standard estimator of \(\varvec{\theta }_\circ\) is the nonlinear least-squares method and can be thought of as a finite-sample approximation of (6):

$$\begin{aligned} {\widehat{\varvec{\theta }}}={{\,\mathrm{\mathop {\text {arg min}}\limits }\,}}_{\varvec{\theta }}~\frac{1}{n}\sum _{i=1}^{n} \Vert \varvec{z}_i-\varvec{\mu }(s_i,\varvec{\theta })\Vert ^2 , \end{aligned}$$
(8)

where \((s_i, \varvec{z}_i)\sim p(s, \varvec{z})\) in (7). In the restricted case when \(\epsilon = 0\), this estimator is consistent under standard regularity conditions and corresponds to the maximum likelihood estimate assuming white Gaussian measurement noise [20]. For \(\epsilon > 0\), however, \({\widehat{\varvec{\theta }}}\) is not robust to corrupted samples that arise in Nlos conditions, as described by (7). We now develop an alternative approach based on the general principles laid in [13].

3.1 Robust localization

As an alternative to the unknown criterion function in (6), consider the following fitting criterion

$$\begin{aligned} {{\,\mathrm{{\mathbb {E}}}\,}}_{\varvec{\pi }}\Big [\Vert \varvec{z}-\varvec{\mu }(s,\varvec{\theta })\Vert ^2\Big ], \end{aligned}$$
(9)

where in lieu of pLos\((s, \varvec{z})\) in (6), we use the nonparametric distribution

$$\begin{aligned} p(s,\varvec{z}; \varvec{\pi })=\sum _{i=1}^{n}\pi _{i}\delta _{s_i,\varvec{z}_i }(s,\varvec{z}), \end{aligned}$$
(10)

with probability weights \(\varvec{\pi }= [\pi _1, \dots , \pi _n]^\top \in \Pi\), where \(\Pi\) is the probability simplex, and \(\delta _{s_i,\varvec{z}_i }(s,\varvec{z})\) are point mass functions. The distribution (10) is therefore discrete with an entropy that equals

$$\begin{aligned} {\mathbb {H}}(\varvec{\pi })\triangleq -\sum _{i=1}^{n}\pi _i\ln \pi _i~\ge ~0 \end{aligned}$$
(11)

It follows that the standard method (8) corresponds to minimizing (9) using the empirical distribution \(p(s,\varvec{z}; n^{-1} {\mathbf {1}})\), which attains a maximum entropy of \(\ln n\).

Given a bound \({\widetilde{\epsilon }}\ge \epsilon\), however, we expect at least \((1-{\widetilde{\epsilon }})n\) uncorrupted samples and that they should be contained in the support of \(p(s,\varvec{z}; \varvec{\pi })\). In this case, the maximum entropy would equal \(\ln [(1-{\widetilde{\epsilon }})n]\) and the search over the unknown support turns (9) into the following joint optimization problem

$$\begin{aligned} \begin{aligned} \min _{\varvec{\theta },~\varvec{\pi }\in \Pi }~&{{\,\mathrm{{\mathbb {E}}}\,}}_{\varvec{\pi }}\Big [\Vert \varvec{z}-\varvec{\mu }(s,\varvec{\theta })\Vert ^2\Big ]\\ \text {subject to}~~{\mathbb {H}}(\varvec{\pi })&\ge \ln \big [(~1-{\widetilde{\epsilon }}~)n\big ] \end{aligned} \end{aligned}$$
(12)

Intuitively, the above minimization problem estimates \(\varvec{\theta }_\circ\) and simultaneously assigns weights \(\pi _i\) to each point such that the overall weighted squared-error loss is minimized under the entropy constraint. Smaller weights are assigned to datapoints which are corrupted due to Nlos and larger weights are assigned to uncorrupted points. In this way, (12) enables robust localization of the auxiliary and receiver nodes without distributional assumptions. In the next subsection, we derive some important properties of problem (12) and provide a computationally efficient search method to solve it.

3.2 Properties and numerical search method

Consider the inner problem in (12) for any given parameter \(\varvec{\theta }= {\widetilde{\varvec{\theta }}}\). The corresponding optimal weights are then obtained by solving

$$\begin{aligned} {\hat{\varvec{\pi }}}({\tilde{\varvec{\theta }}})= {\left\{ \begin{array}{ll} \underset{\varvec{\pi }\in \Pi }{\text {arg~min}}~\sum _{i=1}^{n}\pi _i \Vert \varvec{z}_i-\varvec{\mu }(s_i,\varvec{\tilde{\theta} })\Vert ^2,\\ \text {s.t.}~{\mathbb {H}}(\varvec{\pi })\ge \ln \big [(1-{\tilde{\epsilon }})n\big ] \end{array}\right. } \end{aligned}$$
(13)

Result 1

The optimal weights in (13) are given by

$$\begin{aligned} {\widehat{\pi }}_{i}({\widetilde{\varvec{\theta }}})\propto \exp \left[ -\frac{\Vert \varvec{z}_i-\varvec{\mu }(s_i,{\widetilde{\varvec{\theta }}})\Vert ^2}{\lambda _{0}^{*}({\widetilde{\epsilon }})}\right] \quad \forall ~i=1, \dots , n, \end{aligned}$$
(14)

which are naturally constrained to sum to one and where \(\lambda _{0}^{*}({\widetilde{\epsilon }})\) is a Lagrangian parameter that depends on the upper bound of corruption fraction. This positive scalar is obtained by solving the following nonlinear equation

$$\begin{aligned} \frac{1}{K(\lambda _{0}^{*})}\Bigg [\sum _{i}\frac{\ell _{i}}{\lambda _{0}^{*}}\exp {\Big (\frac{-\ell _{i}}{\lambda _{0}^{*}}\Big )} + \ln {K(\lambda _{0}^{*})}\sum _{i}\exp {\Big (\frac{-\ell _{i}}{\lambda _{0}^{*}}\Big )}\Bigg ] = \ln {\big [(1 - n){\widetilde{\epsilon }}\big ]}, \end{aligned}$$
(15)

where \(\ell _{i}~=~\Vert \varvec{z}_i-\varvec{\mu }(s_i,{\widetilde{\varvec{\theta }}})\Vert ^2\) and \(K(\lambda _{0}^{*})~=~\sum _{j}\exp \Big [\frac{-\ell _{j}}{\lambda _{0}^{*}}\Big ]\). Thus \(\lambda ^*_0\) is readily obtained using via a one-dimensional grid search.

From (14), it can be seen that for any given estimate of locations \({\widetilde{\varvec{\theta }}}\), the optimal solution leads to exponentially downweighting those measurements with higher squared errors. In addition, when \({\widetilde{\epsilon }}\) increases the method should be resilient against more corrupted measurement. Indeed, as \({\widetilde{\epsilon }}\) increases, \(\lambda _{0}^{*}({\widetilde{\epsilon }})\) decreases such that samples with higher squared errors are attenuated more. In this way, \({\widetilde{\epsilon }}\) controls an ‘effective’ sample size retained by the method.

Proof

Let \(\ell _{i}~=~\Vert \varvec{z}_i-\varvec{\mu }(s_i,{\widetilde{\varvec{\theta }}})\Vert ^2\) and \({\mathbb {H}}_{0}~=~\ln [(1-{\widetilde{\epsilon }})n]\). Then, the Lagrangian of (13) is

$$\begin{aligned} L(\varvec{\pi }, \varvec{\lambda }, \nu )=\sum _{i=1}^{n}\pi _{i}\ell _{i} + \lambda _{0}({\mathbb {H}}_{0} - {\mathbb {H}}(\varvec{\pi })) - \sum _{i=1}^{n} \lambda _{i}\pi _{i} + \nu ({\mathbf {1}}^{\top }\varvec{\pi }- 1). \end{aligned}$$

Since \(\varvec{\pi }=n^{-1}{\mathbf {1}}\) satisfies the constraints in (13) strictly, Slater’s conditions are satisfied and we have strong duality [21]. So the primal and dual optimal variables \((\varvec{\pi }^{*}, \varvec{\lambda }^{*}, \nu ^{*})\) satisfy the Karush–Kuhn–Tucker (KKT) conditions [21]

$$\begin{aligned} \begin{aligned} \partial _{\varvec{\pi }}~L(\varvec{\pi }^{*}, \varvec{\lambda }^{*}, \nu ^{*})&=0, \quad \lambda _{0}^{*}({\mathbb {H}}_{0} - {\mathbb {H}}(\varvec{\pi }^{*}))=0, \quad \lambda _{i}^{*}\pi _{i}^{*}=0~\forall ~i,\\ {\mathbf {1}}^{\top }\varvec{\pi }^{*}&=1, \quad {\mathbb {H}}(\varvec{\pi }^{*})\ge {\mathbb {H}}_{0},\quad \pi _{i}^{*}\ge ~0~\forall ~i. \end{aligned} \end{aligned}$$

From the derivative condition on the Lagrangian, we get

$$\begin{aligned} \pi _{i}^{*}=\exp \Big (\frac{-\nu ^{*}}{\lambda ^{*}_0} - 1\Big )\exp \Big (\frac{\lambda _{i}^{*}-\ell _{i}}{\lambda _{0}^{*}}\Big )~\forall ~i. \end{aligned}$$

From the above equation, it is clear that \(\pi _{i}^{*}~>~0~\forall ~i\) hence from the KKT condition \(\lambda _{i}^{*}\pi _{i}^{*}=0\), we have \(\lambda _{i}^{*}~=~0~\forall ~i\). Therefore, \(\pi _{i}^{*}~=~\exp \Big (\frac{-\nu ^{*}}{\lambda ^{*}} - 1\Big )\exp \Big (\frac{-\ell _{i}}{\lambda _{0}^{*}}\Big )\). Moreover, \(\lambda _{0}^{*}\) cannot be zero because then all the weights would be zero. From the KKT condition \(\lambda _{0}^{*}({\mathbb {H}}_{0} - {\mathbb {H}}(\varvec{\pi }^{*}))=0\), this implies \({\mathbb {H}}(\varvec{\pi }^{*})~=~{\mathbb {H}}_{0}\). Inserting \(\pi _{i}^{*}\) in the KKT condition \(\varvec{1}^{\top }\varvec{\pi }^{*}~=~1\) , we get,

$$\begin{aligned} \pi _{i}^{*}~=~\frac{1}{K(\lambda _{0}^{*})} \exp \Big (\frac{-\ell _{i}}{\lambda _{0}^{*}}\Big )~\forall ~i, \end{aligned}$$

where \(K(\lambda _{0}^{*})~=~\sum _{i}\exp \Big [\frac{-\ell _{i}}{\lambda _{0}^{*}}\Big ]\). Putting this in the condition \({\mathbb {H}}(\varvec{\pi }^{*})~=~{\mathbb {H}}_{0}\) gives us the nonlinear equation (15). This concludes the proof.

The result above means that we can find the optimal weights in (12) for any given parameter \({\widetilde{\varvec{\theta }}}\) in a computationally efficient manner, using a simple one-dimensional grid search. Now consider a fixed set of weights \(\varvec{\pi }= {\widetilde{\varvec{\pi }}}\) and the corresponding parameter estimate using the outer problem in (12):

$$\begin{aligned} {\widehat{\varvec{\theta }}}({\widetilde{\varvec{\pi }}})={{\,\mathrm{\mathop {\text {arg min}}\limits }\,}}_{\varvec{\theta }}~\sum _{i=1}^{n} {\widetilde{\pi }}_i\Vert \varvec{z}_i-\varvec{\mu }(s_i,\varvec{\theta })\Vert ^2 \end{aligned}$$
(16)

This is a weighted nonlinear least-squares problem that can be solved efficiently as well using gradient or Newton-based methods.

By combining (13) and (16), we obtain a blockwise coordinate descent algorithm which we summarize in Algorithm 1, that is guaranteed to converge to a critical point of (12) under fairly general conditions [22]. The proposed algorithm is therefore a statistically motivated reweighted least-squares method. It dispels the need to construct nonparametric kernel density estimates of the measurement errors (e.g., [10, 11]) and instead updates the weights in a computationally efficient manner using only a bound \({\widetilde{\epsilon }}\) that explicitly specifies the assumed quality of the data.

Algorithm 1 Robust Localization

1. Input: \(\{(s_i,\varvec{z}_i)\}_{i=1}^{n}\), \({\widetilde{\epsilon }}\) and \(\varvec{\pi }^{(0)}~=~n^{-1}{\mathbf {1}}\)

2. Set \(k~:=~0\)

3. repeat

4. \(\varvec{\theta }^{(k+1)}~=~{\widehat{\varvec{\theta }}}(\varvec{\pi }^{(k)})\)

5. \(\varvec{\pi }^{(k+1)}~=~{\widehat{\varvec{\pi }}}(\varvec{\theta }^{(k+1)})\) from (14) and (15)

6. \(k~:=~k~+~1\)

7. until convergence

8. Output: \({\widehat{\varvec{\theta }}}~=~\varvec{\theta }^{(k)}\), \({\widehat{\varvec{\pi }}}~=~\varvec{\pi }^{(k)}\)

4 Results and discussion

In this section, we illustrate the wide applicability of the proposed robust method using synthetic (inter)arrival time data from three different localization techniques: Toa, Tdoa and Tdst. The performance is evaluated using the localization error

$$\begin{aligned} \Delta ({\widehat{\varvec{x}}})~=~||\varvec{x}-{\widehat{\varvec{x}}}|| \end{aligned}$$

where \(\varvec{x}\) is the node location of interest.

We observe \(n~=~100\) measurements from (7). The Los distribution is

$$\begin{aligned} p_{\textsc {los}}(s,\varvec{z})=\underbrace{{\mathcal {N}}\left( \varvec{\mu }(s,\varvec{\theta }_\circ ),\sigma _{\textsc {Los}}^2 {\mathbf {Q}} \right) }_{p_{\textsc {los}}(\varvec{z}|s)}~\underbrace{{\mathcal {U}}(s)}_{p_{\textsc {los}}(s)}, \end{aligned}$$
(17)

where adjacent timing measurement errors have a correlation structure given by \({\mathbf {Q}}\). The uniform distribution \({\mathcal {U}}(s)\) draws \(s\) from a set \({\mathcal {S}}\). For the corrupting Nlos distribution, we use

$$\begin{aligned} p_{\textsc {nlos}}(s,\varvec{z})=\underbrace{{\mathcal {E}}(\varvec{\mu }(s,\varvec{\theta }_\circ )+\mu _{\textsc {Nlos}})}_{p_{\textsc {nlos}}(\varvec{z}|s)}~\underbrace{{\mathcal {U}}(s)}_{p_{\textsc {nlos}}(s)}, \end{aligned}$$
(18)

so that measurements are drawn from an exponential distribution with bias μNlos. We set σLos = 3 ns and μNlos = 75 ns. Unless otherwise specified, the unknown corruption fraction is set to \(\epsilon = 15\%\).

Remark: The code for the experiments is available at [23].

4.1 Toa: two-way ranging anchor nodes

Consider a wireless network consisting of \(N~=~8\) nodes as shown in Fig. 1a. Since the Toa measurements are uncorrelated, we have that \({\mathbf {Q}}= {\mathbf {I}}\). The unknown location of interest is

$$\begin{aligned} \varvec{\theta }_\circ ~=~\{\varvec{x}_{0} \} = \left\{ [5,~5]^\top \right\} . \end{aligned}$$

The set \({\mathcal {S}}\) consists of two sequences \(s_{0}~=~\{6,5,7,8\}\) and \(s_{1}~=~\{4,3,2,1\}\) , where the node numbers are given in Fig. 1a. The sequences have been selected so that the anchor nodes are not coaligned in either \(s_0\) or \(s_1\).

In the case of Toa, the measurement model (1) admits an (overparameterized) linear form which is ideal for classical methods in robust statistics, such as the Huber method [9]. This method is tailored for Toa measurements with distributional form (1) and therefore provides a useful benchmark. We compare it to the standard nonlinear least-squares method (8) and the proposed method (12).

Figure 3a shows the cumulative distribution functions (cdf) of the localization error \(\Delta ({\widehat{\varvec{x}}})\) estimated from 100 Monte Carlo simulations, setting \({\widetilde{\epsilon }}~=~20\%\) in Algorithm 1. As expected there is a severe performance degradation of the standard method. To investigate the sensitivity of the results to the unknown corruption fraction, we also plot the root-mean-square error (Rmse), i.e., \(\sqrt{{{\,\mathrm{{\mathbb {E}}}\,}}[\Delta ^{2}({\widehat{\varvec{x}}})]}\), versus \(\epsilon\) for all three methods. For the proposed method, we set a very conservative upper bound \({\widetilde{\epsilon }}~=~50\%\) in Algorithm 1. Figure 3b shows the Rmse for the different methods, where we see that the robust method is insensitive to \(\epsilon\), with a graceful rise in Rmse when \(\epsilon\) exceeds \({\widetilde{\epsilon }}\). In sum, the proposed method outperforms the standard nonlinear least-squares method and is close to the benchmark provided by the Toa-tailored Huber method.

The results are corroborated also in Fig. 4 which shows Rmse as a function of \(\varvec{x}_0\). It can be seen that the robust method is more sensitive than the benchmark only near the edges of the vertical boundaries, where the resolution of time-differences decreases.

Fig. 4
figure 4

Performance in Toa across space. Root-mean square error in (m) with respect to different locations \(\varvec{x}_0\). Results based on 50 Monte Carlo runs. a Corresponds to to the standard Erm(8), b corresponds to the proposed method (12) and c refers to the robust MM-algorithm called Huber regression in [9]

4.2 Tdoa: synchronous anchor nodes

We consider again the network in Fig. 1a, but now the self-localizing node is a passive receiver. Since Tdoa measurements are correlated, we set \({\mathbf {Q}}\) with 1s along the diagonal and 1/3 along the off-diagonals. The unknown location of interest is

$$\begin{aligned} \varvec{\theta }_\circ ~=~\{\varvec{x}_{0} \} = \left\{ [5,~5]^\top \right\} . \end{aligned}$$

As in the case of Toa above, we use the sequence set \({\mathcal {S}}\) with \(s_{0}~=~\{6,5,7,8\}\) and \(s_{1}~=~\{4,3,2,1\}\).

Fig. 5
figure 5

Performance and sensitivity in Tdoa. a Cumulative distribution functions of localization errors \(\Delta ({\widehat{\varvec{x}}})\) of target node in Fig. 1a using 100 Monte Carlo runs. Unknown corruption fraction was \(\epsilon ~=~15\%\) and the upper bound used in the robust method was set to \({\widetilde{\epsilon }}~=~20\%\). b Root-mean square error in (m) as a function of \(\epsilon\) for the target node using standard and robust methods. Results based on 50 Monte Carlo simulations. For the proposed robust method the upper bound was \({\widetilde{\epsilon }}~=~50\%\)

Note that the measurement model (2) is nonlinear in \(\varvec{\theta }\) and does not admit a linear re-parameterization. Thus, the Huber method is not readily applicable for Tdoa as it requires tuning an alternative numerical search techniques. We instead compare against a robust localization method tailored for Tdoa in [4], which is based on assuming a bound on the measurement error and then estimating the location which minimizes the worst-case error by solving a semi-definite programming (SDP) problem. In addition, we compare our proposed method (12) with the standard nonlinear least-squares method (8) as well.

Figure 5a shows cdfs of the localization error \(\Delta ({\widehat{\varvec{x}}})\) estimated using 100 Monte Carlo simulations, setting \({\widetilde{\epsilon }}~=~20\%\) in Algorithm 1. The performance characteristics are similar to those in Fig. 3a, but the absolute error levels are not directly comparable due to different measurement setups. The robust Tdoa method of [4] produces larger errors, in fact so large that for 13% of the Monte Carlo runs the SDP becomes infeasible and provides no solution. These runs were omitted for sake of comparison. The sensitivity to the unknown corruption fraction \(\epsilon\) is also shown in Fig. 5b when Rmse is plotted against \(\epsilon\) for both methods. We use a very conservative upper bound \({\widetilde{\epsilon }}~=~50\%\) in Algorithm 1. The proposed method is consistently robust and insensitive to corrupted data in contrast to the standard method for which the errors rise drastically with \(\epsilon\). Here we could not compare against [4] because, again, the SDP became infeasible as the fraction of corrupted samples \(\epsilon\) increased. Figure 6 shows that the proposed method yields substantial error reduction across space.

Fig. 6
figure 6

Performance in Tdoa across space. Root-mean square error in (m) with respect to different locations \(\varvec{x}_0\). Results based on 50 Monte Carlo runs. a Corresponds to standard Erm (8) and b corresponds to the proposed method (12)

Finally, we illustrate the ability of the proposed method to effectively isolate corrupted Nlos samples. Since the data is generated synthetically, we can classify each sample from pNlos\((\varvec{z}|s)\) as \({\mathcal {C}}(\varvec{z})=1\) for ‘corrupted’ or \({\mathcal {C}}(\varvec{z})=0\) for ‘normal’. The method solves (12) and learns the probability weights \({\widehat{\varvec{\pi }}}\). If a weight is below a certain threshold, we may classify the corresponding sample \(\varvec{z}\) as an outlier, i.e., \({\widehat{{\mathcal {C}}}}(\varvec{z}) = 1\). We set the weight threshold to \(10^{-5}\) and show the resulting probability of correct detection \(\Pr \{{\widehat{{\mathcal {C}}}}(\varvec{z})=1|{\mathcal {C}}(\varvec{z}) = 1\}\) as well as the probability of false alarm \(\Pr \{{\widehat{{\mathcal {C}}}}(\varvec{z})=1|{\mathcal {C}}(\varvec{z}) = 0\}\) in Fig. 7. We use \({\widetilde{\epsilon }}= 50\%\) and vary the unknown fraction \(\epsilon\), using 50 Monte Carlo runs for each value of \(\epsilon\). It can be seen that the proposed method can effectively isolate Nlos samples with a low false-alarm rate.

Fig. 7
figure 7

The weights in the robust method can be used to classify samples \({\mathcal {C}}(\varvec{z}) \in \{0,1 \}\) as ‘normal’ or ‘corrupted’. This yields probabilities of correct detection \(\Pr \{{\widehat{{\mathcal {C}}}}(\varvec{z})=1|{\mathcal {C}}(\varvec{z}) = 1\}\) and false alarm \(\Pr \{{\widehat{{\mathcal {C}}}}(\varvec{z})=1|{\mathcal {C}}(\varvec{z}) = 0\}\) shown in the figure as the corruption fraction \(\epsilon\) is varied from 10 to 50% \(= {\widetilde{\epsilon }}\)

4.3 Tdst: asynchronous anchor nodes

We consider the network in Fig. 1a, but now the self-localizing node is a passive receiver and the anchor nodes are asynchronous. Since Tdst measurements are correlated, we set \({\mathbf {Q}}\) with 1s along the diagonal and 1/3 along the off-diagonals. The unknown location of interest is

$$\begin{aligned} \varvec{\theta }_\circ ~=~\{\varvec{x}_{0} \} = \left\{ [5,~5]^\top \right\} . \end{aligned}$$

We use a set \({\mathcal {S}}\) that consists of four sequences: \(s_0~=~\{6,4,5,3\}\), \(s_1~=~\{3,6,4,5\}\), \(s_2~=~\{5,3,6,4\}\) and \(s_3~=~\{4,5,3,6\}\), following the scheme described in [17].

Similar to Tdoa, the Huber method is not readily applicable to Tdst. We therefore compare only the standard nonlinear least-squares method (8) and the proposed method (12).

Figure 8a shows the cdfs of the localization error \(\Delta ({\widehat{\varvec{x}}})\). The characteristics are similar to those in Fig. 3a. The sensitivity to the unknown corruption fraction \(\epsilon\) is shown in Fig. 8b where Rmse is plotted versus \(\epsilon\) for a very conservative upper bound \({\widetilde{\epsilon }}~=~50\%\) in Algorithm 1. It can be seen that the proposed method also robustifies self-localization in Tdst.

Fig. 8
figure 8

Performance and sensitivity in Tdst. a Cumulative distribution functions of localization errors \(\Delta ({\widehat{\varvec{x}}})\) of target node in Fig. 1a using 100 Monte Carlo runs. Unknown corruption fraction was \(\epsilon ~=~15\%\) and the upper bound used in the robust method was set to \({\widetilde{\epsilon }}~=~20\%\). b Root-mean square error in (m) as a function of \(\epsilon\) for the target node using standard and robust methods. Results based on 50 Monte Carlo simulations. For the proposed robust method the upper bound was \({\widetilde{\epsilon }}~=~50\%\)

Finally, we consider a more challenging wireless network configuration, where one anchor node is replaced by an auxiliary node (\(N_{a}~=~1\)) at an unknown location as shown in Fig. 9a. The goal is to passively localize auxiliary nodes using asynchronous anchor nodes [16,17,18] in adverse Nlos conditions. The locations of interest are

$$\begin{aligned} \varvec{\theta }_\circ ~=~\{\varvec{x}_0,~\varvec{x}_1\}~=~\left\{ [5,~5]^\top , [-10,~10]^\top \right\} . \end{aligned}$$

We use a set \({\mathcal {S}}~=~\{s_0,~s_1\}\), where \(s_{0} = \{2, 3, 4, 5, 6, 7, 8, 2, 3, 4, 5, 6, 7, 8\}\) and

\(s_{1} = \{2, 1 , 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1\}\). The first sequence set \(s_0\) involves only the anchor nodes and ensures that the passive node location is identifiable. The second sequence \(s_1\) ensures that the auxiliary node location is identifiable, see [16].

Figure 9b summarizes the distribution of localization errors \(\Delta ({\widehat{\varvec{x}}})\) for the passive and auxiliary nodes. Note that this is a harder problem that involves two unknown locations \(\varvec{x}_0\) and \(\varvec{x}_1\). Moreover, when estimating \(\varvec{x}_1\) the difficulty is compounded. In Fig. 9c, we see that the localization performance degrades rapidly under Nlos conditions using the standard method, whereas the proposed method is resilient.

Fig. 9
figure 9

Performance and sensitivity in Tdst when localizing additional auxiliary node. a Configuration of wireless network. b cdf of localization errors \(~\Delta ({\widehat{\varvec{x}}})\) using 100 Monte Carlo runs for auxiliary (triangle) and passive node (circle), using the standard (blue) and robust (magenta) methods, respectively. Unknown corruption fraction is \(\epsilon ~=~15\%\) and \({\widetilde{\epsilon }}= 20\%\). c Root mean square error as a function of the fraction of corrupted data \(\epsilon\) using standard (blue) and robust (magenta) method, for passive (circles) and auxiliary (triangles) nodes, respectively. Results based on 50 Monte Carlo simulations. \({\widetilde{\epsilon }}~=~50\%\) indicated by the black-dashed line

5 Conclusion

We have developed a robust methodology for timing-based localization of nodes in wireless networks subject to corrupting Nlos effects. The method is applicable to a wide range of localization technologies and is computationally efficient. It does not make any assumptions on the form of corrupting noise distribution and requires only specifying the level of data corruption against which it should be resilient. It was shown that the resulting algorithm could be understood as a statistically motivated reweighted least-squares method. Its robustness properties against data corrupted due to non-ideal and non-line-of-sight signal conditions are demonstrated with respect to three different localization techniques: Toa, Tdoa and Tdst. Future work will explore and evaluate measures of location uncertainty quantification using the data-adaptive weights.

Availability of data and materials

Not applicable (Synthetic data used).

Abbreviations

Rrm::

Robust risk minimization

Erm::

Empirical risk minimization

Los::

Line-of-sight

Nlos::

Non-line-of-sight

Rmse::

Root mean square error

Toa::

Time-of-arrival

Tdoa::

Time-difference-of-arrival

Tdst::

Time-difference in schedule-based transmissions

Cdf::

Cumulative distribution function

Ccdf::

Complementary cumulative distribution function

SDP::

Semi-definite programming

References

  1. J.J. Caffery, G.L. Stuber, Overview of radiolocation in CDMA cellular systems. IEEE Commun. Mag. 36(4), 38–45 (1998)

    Article  Google Scholar 

  2. P. Stoica, J. Li, Lecture notes-source localization from range-difference measurements. IEEE Signal Process. Mag. 23(6), 63–66 (2006)

    Article  Google Scholar 

  3. A. Beck, P. Stoica, J. Li, Exact and approximate solutions of source localization problems. IEEE Trans. Signal Process. 56(5), 1770–1778 (2008)

    Article  MathSciNet  Google Scholar 

  4. X. Shi, B.D. Anderson, G. Mao, Z. Yang, J. Chen, Z. Lin, Robust localization using time difference of arrivals. IEEE Signal Process. Lett. 23(10), 1320–1324 (2016)

    Article  Google Scholar 

  5. S. Tomic, M. Beko, R. Dinis, P. Montezuma, A robust bisection-based estimator for TOA-based target localization in NLOS environments. IEEE Commun. Lett. 21(11), 2488–2491 (2017)

    Article  Google Scholar 

  6. F. Yin, A.M. Zoubir, C. Fritsche, F. Gustafsson, Robust cooperative sensor network localization via the em criterion in los/nlos environments, in IEEE 14th Workshop on Signal Processing Advances in Wireless Communications (SPAWC), pp. 505–509 (2013)

  7. M. McGuire, K.N. Plataniotis, A.N. Venetsanopoulos, Data fusion of power and time measurements for mobile terminal location. IEEE Trans. Mob. Comput. 4(2), 142–153 (2005)

    Article  Google Scholar 

  8. P.J. Huber, Robust Statistics (Wiley, Hoboken, 2004)

    Google Scholar 

  9. A.M. Zoubir, V. Koivunen, E. Ollila, M. Muma, Robust Statistics for Signal Processing (Cambridge University Press, Cambridge, 2018)

    Book  Google Scholar 

  10. F. Yin, C. Fritsche, F. Gustafsson, A.M. Zoubir, Toa-based robust wireless geolocation and Cramér–Rao lower bound analysis in harsh LOS/NLOS environments. IEEE Trans. Signal Process. 61(9), 2243–2255 (2013)

    Article  Google Scholar 

  11. U. Hammes, E. Wolsztynski, A.M. Zoubir, Semi-parametric geolocation estimation in NLOS environments, pp. 1–5 (2008)

  12. U. Hammes, E. Wolsztynski, A.M. Zoubir, Robust tracking and geolocation for wireless networks in NLOS environments. IEEE J. Sel. Top. Signal Process. 3(5), 889–901 (2009)

    Article  Google Scholar 

  13. M. Osama, D. Zachariah, P. Stoica, Robust risk minimization for statistical learning from corrupted data. IEEE Open J. Signal Process. 1, 287–294 (2020)

    Article  Google Scholar 

  14. S. Ravindra, S. Jagadeesha, Time of arrival based localization in wireless sensor networks: a linear approach. arXiv:1403.6697 (2014)

  15. F. Gustafsson, F. Gunnarsson, Positioning using time-difference of arrival measurements, in 2003 IEEE International Conference on Acoustics, Speech, and Signal Processing, 2003. Proceedings (ICASSP’03), vol 6, p. 553 (2003)

  16. D. Zachariah, A. De Angelis, S. Dwivedi, P. Händel, Schedule-based sequential localization in asynchronous wireless networks. EURASIP J. Adv. Signal Process. 2014(1), 16 (2014)

    Article  Google Scholar 

  17. S. Dwivedi, A. De Angelis, P. Händel, Scheduled uwb pulse transmissions for cooperative localization, in IEEE International Conference on Ultra-Wideband, pp. 6–10 (2012)

  18. B. Cavarec, S. Dwivedi, M. Bengtsson, P. Händel, Schedule based self localization of asynchronous wireless nodes with experimental validation, in IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 5975–5979 (2017)

  19. F.R. Hampel, E.M. Ronchetti, P.J. Rousseeuw, W.A. Stahel, Robust Statistics: The Approach Based on Influence Functions, vol. 196 (Wiley, Hoboken, 2011)

    MATH  Google Scholar 

  20. S.M. Kay, Fundamentals of Statistical Signal Processing, Vol 1–Estimation Theory (Prentice Hall, Hoboken, 1993)

    MATH  Google Scholar 

  21. S. Boyd, S.P. Boyd, L. Vandenberghe, Convex Optimization (Cambridge University Press, Cambridge, 2004)

    Book  Google Scholar 

  22. L. Grippo, M. Sciandrone, On the convergence of the block nonlinear Gauss–Seidel method under convex constraints. Oper. Res. Lett. 26(3), 127–136 (2000)

    Article  MathSciNet  Google Scholar 

  23. Code for experiments. https://github.com/Muhammad-Osama/RobustLocalization. Accessed 20 April 2021

Download references

Acknowledgements

Not applicable.

Funding

Open access funding provided by Uppsala University. This work was supported by the Swedish Research Council, Research Environment NewLEADS (contract 2016-06079) and projects (contracts 2017-04610 and 2018-05040).

Author information

Authors and Affiliations

Authors

Contributions

The central ideas were formulated by DZ and developed together with MO, who also implemented and tested the method. MO and DZ were equally responsible for the writing, with important contributions and feedback from SD and PS. All authors read and approved the final manuscript

Corresponding author

Correspondence to Muhammad Osama.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Osama, M., Zachariah, D., Dwivedi, S. et al. Robust localization in wireless networks from corrupted signals. EURASIP J. Adv. Signal Process. 2021, 79 (2021). https://doi.org/10.1186/s13634-021-00786-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s13634-021-00786-8

Keywords