Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

This chapter discusses how to transform physical measurements to locations of nodes. This step is a basic and essential building block of all localization approaches. Typically, it takes place among a target node and its neighboring beacons. Thus, we name it one-hop location estimation. Various kinds of optimization techniques are used in this step for accuracy.

In particular, we discuss the positioning methods for measurements of distance, TDoA, AoA, and RSS-profiling. The distances from an unknown node to several references constrain the presence of this node, which is the basic idea of the so-called multilateration. TDoA measurement gives the difference of the time receiving the same signal on different reference nodes. Given a TDoA measurement Δt ij and the coordinates of reference nodes i and j, they define one branch of a hyperbola whose foci are at the locations of reference nodes i and j. Hence, the unknown node must lie on the hyperbola. AoA measurement gives the bearing information of the two nodes. By combining the AoA estimates of two reference nodes, an estimate of the position can be obtained. RSS-profiling-based methods directly utilize RSS measurement data for location estimation. Since the RSS distribution of a set of anchor nodes is relatively stable over the spatial space, the RSS vector measured at an unknown node, defined as RSS finger print, reveals the physical location of the node.

3.1 Distance-Based Positioning Techniques

Multilateration is the process of locating an object according to distance measurements. Note that the word “multilateration” has different meanings in the context of localization, and in this book it refers to the distance-based positioning technique. Figure 3.1 shows an example of trilateration, a special form of multilateration which utilizes exact three references. The object to be localized (the soft dots) measures the distances from itself to three references (the solid squares). Obviously, the object should locate at the intersection of three circles centered at each reference position. The result of trilateration is unique as long as three references are nonlinear.

Fig. 3.1
figure 1

Trilateration. (a) Ground truth; (b) ranging circles

In practice, distance measurements inevitably contain errors, resulting in that the circles may not always intersect at a single point. This problem can be solved by a numerical solution to an overdetermined linear system [31]. Suppose an unknown node locates (x 0, y 0) and it is able to obtain the distance estimates d′ i to the ith reference node locating at \(\left( {x_i,y_i } \right),{\rm{ 1 }} \le {\rm{ }}i{\rm{ }} \le{\rm{}}n,\) where n is the total number of reference nodes. Let d i be the actual Euclidean distance from the unknown node to the i th reference node, i.e.,

$$d_i = \sqrt {(x_i - x_0 )^2 + (y_i - y_0 )^2 }.$$

Thus the difference between the measured and actual distances can be represented as ρ i = d i - d i . Several methods are designed to deal with the ranging noise. The least-squares method is one of them to determine the value of (x 0, y 0) by minimizing \(\sum\nolimits_{i = 1}^n {\rho _i^2 }\).

Each measurement determines an equation of the position of the unknown node, so we have

$$\begin{array}{lll}d_1^2= (x_1- x_0 )^2 + (y_1- y_0 )^2\\d_2^2= (x_2- x_0 )^2 + (y_2- y_0 )^2\\ \vdots\\d_n^2= (x_n- x_0 )^2 + (y_n- y_0 )^2\\\end{array}$$

Subtracting the first equation from all of the rest equations gives

$$\begin{array}{lll}d_2^2 - d_1^2 = x_2^2 - x_1^2 - 2(x_2 - x_1 )x_0 + y_2^2 - y_1^2 - 2(y_2 - y_1 )y_0 \\d_3^2 - d_1^2 = x_3^2 - x_1^2- 2(x_3 - x_1 )x_0 + y_3^2 - y_1^2 - 2(y_3 - y_1 )y_0 \\ \vdots \\d_n^2 - d_1^2 = x_n^2 - x_1^2 - 2(x_n - x_1 )x_0 + y_n^2 - y_1^2 -2(y_n - y_1 )y_0 \\\end{array} $$

Rearranging terms, the above equations can be written in matrix form as

$$\left[ {\begin{array}{lll}{x_2 - x_1 } & {y_2 - y_1 } \\{x_3 - x_1 } & {y_3 - y_1 } \\\vdots & \vdots \\{x_n - x_1 } & {y_n - y_1 } \\\end{array} } \right]\left[ {\begin{array}{lll}{x_0 } \\{y_0 } \\\end{array} } \right] = \frac{1}{2}\left[ {\begin{array}{lll}{x_2^2 + y_2^2 - d_2^2 - (x_1^2 + y_1^2 - d_1^2 )} \\{x_3^2 + y_3^2 - d_3^2 - (x_1^2 + y_1^2 - d_1^2 )} \\\vdots \\{x_n^2 + y_n^2 - d_n^2 - (x_1^2 + y_1^2 - d_1^2 )} \\\end{array} } \right]$$

Then, this equation can be rewritten as

$$Hx = b,$$

where

$$\begin{array}{lll} {H = \left[ {\begin{array}{lll} {x_2 - x_1 } & {y_2 - y_1 } \\{x_3 - x_1 } & {y_3 - y_1 } \\\vdots & \vdots \\{x_n - x_1 } & {y_n - y_1 } \\\end{array} } \right],} & {x = \left[ {\begin{array}{lll} {x_0 } \\{y_0 } \\\end{array} } \right],} & {b = \frac{1}{2}\left[ {\begin{array}{lll} {x_2^2 + y_2^2 - d_2^2 - (x_1^2 + y_1^2 - d_1^2 )} \\{x_3^2 + y_3^2 - d_3^2 - (x_1^2 + y_1^2 - d_1^2 )} \\\vdots \\{x_n^2 + y_n^2 - d_n^2 - (x_1^2 + y_1^2 - d_1^2 )}\\\end{array} } \right]} \\\end{array}. $$

The least-squares solution of this equation is given by

$$\hat x = (H^{\rm T} H)^{ - 1} H^{\rm T} b.$$

3.2 TDoA-Based Positioning Techniques

TDoA measurement gives the difference of the time a signal arriving at different reference nodes. A TDoA measurement Δt ij and the coordinates of reference nodes i and j define one branch of a hyperbola whose foci are at the locations of reference nodes i and j. Hence, the unknown node must lie on the hyperbola. Thus, localization based on TDoA measurement is also called hyperbolic positioning. In two-dimensional space R 2, measurements from a minimum of three reference nodes are required to uniquely determine the location of an unknown node, as illustrated in Fig. 3.2.

Fig. 3.2
figure 2

Location computation by TDoA

Suppose we organize the TDoA measurements in the following way: the TDoA value associated with a reference node i is Δt i =t i −t 1, i.e., it is the difference between the arrivals of reference node 1. Let (x 0, y 0) denote the location of the unknown node, d i denote the distance between the unknown node and reference node i, (x i , y i ) denote the location of the reference node i. Then, we have the following basic relations:

$$\begin{array}{lll}d_1^2 = (x_1 - x_0 )^2 + (y_1 - y_0 )^2 \\d_2^2= (x_2 - x_0 )^2 + (y_2 - y_0 )^2 \\ \vdots \\d_n^2 = (x_n - x_0)^2 + (y_n - y_0 )^2 \\\end{array} $$

where n is the total number of reference nodes. Let Δd i =cΔt i =d i -d 1, where c is the speed of the signal used by the unknown node. Then, the above equations can be rewritten as

$$\begin{array}{lll} d_1^2 = (x_1 - x_0 )^2 + (y_1 - y_0 )^2 \\(d_1 + \Delta d_2 )^2 = (x_2 - x_0 )^2 + (y_2 - y_0 )^2 \\\qquad \vdots \\(d_1 + \Delta d_n )^2 = (x_n - x_0 )^2 + (y_n - y_0 )^2 \\\end{array} $$

Subtracting the first equation from all of the rest equations gives

$$\begin{array}{lll}- (x_2 - x_1 )x_0 - (y_2 - y_1 )y_0 = \Delta d_2d_1 + \frac{1}{2}(\Delta d_2^2 - x_2^2 - y_2^2 + x_1^2 + y_1^2 ) \\- (x_3 - x_1 )x_0 - (y_3 - y_1 )y_0 = \Delta d_3 d_1 +\frac{1}{2}(\Delta d_3^2 - x_3^2 - y_3^2 + x_1^2 + y_1^2 ) \\\vdots\\- (x_n - x_1 )x_0 - (y_n - y_1 )y_0 = \Delta d_n d_1 +\frac{1}{2}(\Delta d_n^2 - x_n^2 - y_n^2 + x_1^2 + y_1^2 ) \\\end{array} $$

Rewriting these equations in matrix form gives

$$Hx = d_1a + b,$$

where

$${lll}\begin{array}{lll}{H = \left[ {\begin{array}{lll}{x_2 - x_1 } {y_2 - y_1 } \\{x_3 - x_1 } {y_3 - y_1 } \\\vdots \vdots \\{x_n - x_1 } {y_n - y_1 } \\\end{array} } \right],} {x = \left[ {\begin{array}{lll}{x_0 } \\{y_0 } \\\end{array} } \right],} {a = \left[ {\begin{array}{lll}{ - \Delta d_2 } \\{ - \Delta d_3 } \\\vdots \\{ - \Delta d_n } \\\end{array} } \right],} {b = - \frac{1}{2}\left[ {\begin{array}{lll}{\Delta d_2^2 - x_2^2 - y_2^2 + x_1^2 + y_1^2 } \\{\Delta d_3^2 - x_3^2 - y_3^2 + x_1^2 + y_1^2 } \\\vdots \\{\Delta d_n^2 - x_n^2 - y_n^2 + x_1^2 + y_1^2 } \\\end{array} } \right]} \\\end{array}. $$

The least-squares estimation of this equation is given by

$$\hat x = (H^{\rm T} H)^{ - 1} H^{\rm T} (d_1 a + b).$$

In this result, parameter d 1 is unknown. Note that we have d 1 2 =(x 1x 0)2+(y 1y 0)2. Substituting the above intermediate result into this equation leads to a quadratic equation of d 1. Solving for d 1 and substituting the positive root back into the least-squares estimation yields the final solution for x, i.e., the location estimate of the unknown node.

Other than the basic least-squares solution, researchers have developed several techniques to solve the nonlinear equations of TDoA localization [50–52]. Being accurate and robust, the Taylor-series method [50] is commonly used to deal with nonlinearity. It is an iterative method under the prerequisite that the initial guess is close to the true solution to avoid local minima. However, the selection of such a starting point is not simple in practice. Using least-squares estimation two times, Chan [52] propose a closed form, noniterative solution, which performs well when the TDoA measurement errors are small. However, as the errors increase, the performance degrades quickly.

3.3 AoA-Based Positioning Techniques

AoA measurement gives the bearing information of two nodes, as shown in Fig. 3.3. Let (x 0, y 0) be the location of the unknown node to be estimated from AoA measurement \(\alpha _i,{\rm{ 1 }} \le {\rm{ }}i{\rm{ }} \le {\rm{ }}n,\) where n is the total number of reference nodes. Let (x i , y i ) be the known location of the reference node i, θ i (p) denote the bearing of a node located at \(\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {x} = (x,y)\). We have

$$\tan \theta _i (\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {x} ) = \frac{{y - y_i }}{{x - x_i }}, 1 \leq i \leq n$$

.

Fig. 3.3
figure 3

Location computation by AoA measurement

Suppose the measured bearings of reference node i are corrupted by additive noises \(\varepsilon _i,{\rm{ 1 }} \le {\rm{ }}i{\rm{ }} \le {\rm{ }}n,\) which are assumed to be zero-mean Gaussian noises with covariance matrices σ i 2, i.e.,

$$\alpha_i = \theta_I (x_0) + \epsilon_i, 1 \leq i \leq n.$$

When the reference nodes are identical and much closer to each other than to the unknown node, the variances of bearing measurement errors are equal, i.e., \(\sigma _i ^{\rm{2}}= \sigma ^{\rm{2}},{\rm{ 1 }} \le{\rm{}}i{\rm{}} \le {\rm{ }}n \). The maximum likelihood estimator of the location of the unknown node is given by

$$\hat x = \arg \min \frac{1}{2}\sum\limits_{i = 1}^n {\frac{{(\theta _i (\hat x) - \alpha _i )^2 }}{{\sigma _i^2 }}} $$

This nonlinear minimization problem can be solved by a Newton–Gauss iteration [53].

Another approach bases on the assumption that the measurement error is small enough such that ε i ≈sin(ε i ). In that case, the above cost function becomes

$$\frac{1}{2}\sum\limits_{i = 1}^n {\frac{{\sin ^2 (\theta _i (\hat x) - \alpha _i )}}{{\sigma _i^2 }}}. $$

According to \(d_i = \sqrt {(x_0 - x_i )^2 + (y_0 - y_i )^2 } \) and

$$\begin{array}{lll}\sin (\theta _i (\hat x) - \alpha _i ) = & \sin \theta _i (\hat x)\cos \alpha _i - \cos \theta _i (\hat x)\sin \alpha _i \\= & \frac{{(y_0 - y_i )\cos \alpha _i - (x_0 - x_i )\sin \alpha _i }}{{d_i }} \\\end{array}, $$

the cost function becomes

$$\begin{array}{lll}\frac{1}{2}\sum\limits_{i = 1}^n {\frac{{[(y_0 -y_i )\cos \alpha _i - (x_0 - x_i )\sin \alpha _i ]^2 }}{{\sigma _i^2d_i^2 }}} \\=\frac{1}{2}(A\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{x} - b)^T R^{ - 1} S^{ - 1}(A\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{x} - b), \\\end{array} $$

where

$$\begin{array}{lll}A = \left[ {\begin{array}{lll}{\sin \alpha _1} & { - \cos \alpha _1 } \\\vdots & \vdots \\{\sin \alpha _n } & {- \cos \alpha _n } \\\end{array} } \right], \\b = \left[{\begin{array}{lll}{x_1 \sin \alpha _1 - y_1 \cos \alpha _1 } \\\vdots \\{x_n \sin \alpha _n - y_n \cos \alpha _n } \\\end{array}} \right], \\R = {\hbox{diag}}\{ d_1^2, \ldots,d_n^2 \}, \\S ={\hbox{diag}}\{ \sigma _1^2, \ldots,\sigma _n^2 \}. \\\end{array} $$

This method implicitly assumes that a rough estimate of R can be obtained. Since the cost function weakly depends on R, the roughness will not significantly affect the solution. Under these assumptions, the minimum cost solution with respect to \(\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {x} \) is given by

$$\hat x = (A^{\rm T} R^{ - 1} S^{ - 1} A)^{ - 1} A^{\rm T} R^{ - 1} S^{ - 1} b.$$

3.4 RSS-Profiling-Based Positioning Techniques

RSS-profiling-based positioning techniques directly utilize RSS data for location estimation. In indoor environments, mapping RSS to distance measurement may introduce huge errors, because RSS is strongly affected by the shadowing and multipath effect. However, the RSS distribution of a set of anchor nodes is relatively stable over the spatial space, so the RSS vector measured by an unknown node, defined as RSS finger print, reveals the physical location of the node. By contrasting the RSS finger print with the profiled data, the location of the unknown node is estimated. Based on the schemes of profiling, existing approaches fall in to two categories: off-line profiling and online profiling.

3.4.1 Off-line Profiling Scheme

A typical off-line profiling scheme is RADAR [29], which positions an unknown node by building an RSS-location map. RADAR contains two steps: off-line map sensing and online node positioning. In the first step, RADAR collects the spatial distribution of the RSS of the anchors to build a RSS-location map. Specifically, system operators in advance conduct a site survey by recording the RSS values at each location in an interesting area. The RSS at a given location varies quite significantly (by up to 5 dBm) depending on the user’s orientation, i.e., the direction he/she is facing. Hence, RADAR takes into account the direction and records the following tuple at each sample point (t,x,y,d), where t denotes the timestamp of the measurement, (x,y) and d show the position and direction of the measurement, respectively.

After building the RSS-location-direction map, RADAR can provide online positioning service, which is the second step. Each unknown node first measures the RSS between the anchor nodes within its communication range, and thus creates its own RSS finger print. Then, it transmits the RSS finger print to the central station. Using this RSS finger print, the central station matches the presented signal strength vector to the RSS-location-direction map, using the nearest-neighbor-based method. That is, the location of a sample point, whose RSS vector is the closest match to that of the unknown node, is chosen to be the estimated location of the nonanchor node.

Besides the merit of simplicity, RADAR can also properly handle the mobility of the unknown node. However, the accuracy of such scheme suffers the environmental dynamics.

3.4.2 Online Profiling Scheme

The off-line map for RSS-profiling suffers the environmental dynamics, which is a main characteristic of the wireless communication. One way to address this issue is to use the online map for positioning the unknown nodes, called LANDMARC [54]. LANDMARC design is based on the radio frequency idenepsication (RFID) technology, which is a means of storing and retrieving data through electromagnetic transmission to an RF-compatible integrated circuit. An RFID system has several basic components including a number of RFID readers and RFID tags. The RFID reader can read data emitted from RFID tags. RFID readers and tags use a defined radio frequency and protocol to transmit and receive data. RFID tags are categorized as either passive or active. Passive RFID tags operate without a battery. Active tags contain both a radio transceiver and a button cell battery to power the transceiver. Since there is an onboard radio on the tag, active tags have larger range than passive tags.

Positioning based on the online map does not need to collect the RSS distribution prior. LANDMARC employs the idea of exploiting extra fixed location reference tags to help location calibration. These reference tags serve as reference points in the system (like landmarks in our daily life). The advantage of this design is to achieve high localization accuracy from the cost of tags instead of the readers, because the RFID readers are much more expensive than the RFID tags.

The reference tags forms an online map for location computation. As shown in Fig. 3.4, the predeployed reference tags cover the target area well and uniformly provide sample data to locate the tracking tags. Note that the RF readers can read all tags in the target area, including the reference tags and the tracking tags.

Fig. 3.4
figure 4

LANDMARC deployment

The location computation of a tracking tag is as follows. Suppose there are n RF readers along with m tags as reference tags and u tracking tags as objects being tracked. The readers are all configured with continuous mode (continuously reporting the tags that are within the specified range) and a detection range of 1–8 (meaning the reader will scan from range 1 to 8 and keep repeating the cycle with a rate of 30 s per range). Define the signal strength vector of a tracking/moving tag as S = (S 1, S 2, …, S n ), where S i denotes the signal strength of the tracking tag perceived on reader i, i∈(1, n). For the reference tags, let θ = (θ 1, θ 2, …, θ n ) denote the corresponding signal strength vector, where θ i denotes the signal strength. LANDMARC adopts the Euclidean distance in signal strengths. For each individualtracking tag p, p∈(1, u), define \(E_j = \sqrt {\sum\nolimits_{i = 1}^n {(\theta _i - S_i )^2 } } \), j∈(1, m), as the Euclidean distance in signal strength between a tracking tag and a reference tag r j . Let E denote the location relationship between the reference tags and the tracking tag, i.e., the nearer reference tag to the tracking tag is supposed to have a smaller E value. When there are m reference tags, a tracking tag has its E vector as E = (E 1,E 2, …,E m ).

The location of the unknown tag is finally computed by an algorithm averaging the positions of the top k nearest neighbor with weights

$$(x,y) = \sum\limits_{i = 1}^k {w_i (x_i, y_i ),}$$

where w i is the weighting factor to the ith nearest reference tag. Further, the weight is given by

$$w_i = \frac{{1/E_i^2 }}{{\sum\nolimits_{i = 1}^k {1/E_i^2.} }}$$

Generally, the RSS-profiling-based positioning techniques can obtain several meters average error. For example, RADAR can place objects to within about 3 m of their actual position with 50% probability, while LANDMARC can localize a tag to within 1 m of the ground truth position in average.