4.1.1. Calibration Stage

To make use of the BR measurements from the calibration targets, the calibration stage begins by reorganizing (13) as

$$\|r\_{\mathbf{c},k,m,n} - \|\mathbf{c}\_{k}^{\rm O} - \mathbf{s}\_{\mathbf{t},m}^{\rm O}\| - \|\mathbf{c}\_{k}^{\rm O} - \mathbf{s}\_{\mathbf{r},n}^{\rm O}\| + \|\mathbf{s}\_{\mathbf{t},m}^{\rm O} - \mathbf{s}\_{\mathbf{r},n}^{\rm O}\| = \Delta r\_{\mathbf{c},k,m,n} \tag{40}$$

Since only the erroneous versions of **c**<sup>o</sup> *<sup>k</sup>* , **<sup>s</sup>**<sup>o</sup> t,*<sup>m</sup>* and **<sup>s</sup>**<sup>o</sup> r,*<sup>n</sup>* are available, we put **c**<sup>o</sup> *<sup>k</sup>* <sup>=</sup> **<sup>c</sup>***<sup>k</sup>* <sup>−</sup>**Δc***k*, **<sup>s</sup>**<sup>o</sup> t,*<sup>m</sup>* = **s**t,*<sup>m</sup>* −**Δs**t,*<sup>m</sup>* and **s**<sup>o</sup> r,*<sup>n</sup>* = **s**r,*<sup>n</sup>* − **Δs**r,*<sup>n</sup>* into (40), and then expand it around erroneous values **c***k*, **s**t,*<sup>m</sup>* and **s**r,*<sup>n</sup>* to the linear error terms as

$$\begin{cases} \mathbf{r}\_{\mathbf{c},\mathbf{k},\mathbf{w},\mu} - \|\mathbf{c}\_{\mathbf{k}} - \mathbf{s}\_{\mathbf{t},\mathbf{u}}\| - \|\mathbf{c}\_{\mathbf{k}} - \mathbf{s}\_{\mathbf{t},\mathbf{u}}\| + \|\mathbf{s}\_{\mathbf{t},\mathbf{u}} - \mathbf{s}\_{\mathbf{t},\mathbf{u}}\| - (\boldsymbol{\rho}\_{\mathbf{c},\mathbf{k},\mathbf{t},\mathbf{u}}^{\mathrm{T}} + \boldsymbol{\rho}\_{\mathbf{t},\mathbf{u},\mathbf{z},\mathbf{u}}^{\mathrm{T}})\Delta\mathbf{s}\_{\mathbf{t},\mathbf{u}} - (\boldsymbol{\rho}\_{\mathbf{c},\mathbf{k},\mathbf{z},\mathbf{u}}^{\mathrm{T}} - \boldsymbol{\rho}\_{\mathbf{t},\mathbf{u},\mathbf{z},\mathbf{u}}^{\mathrm{T}})\Delta\mathbf{s}\_{\mathbf{t},\mathbf{u}} \\ \mathbf{r} = -(\boldsymbol{\rho}\_{\mathbf{c},\mathbf{k},\mathbf{t},\mathbf{u}} + \boldsymbol{\rho}\_{\mathbf{c},\mathbf{k},\mathbf{t},\mathbf{u}})^{\mathrm{T}}\Delta\mathbf{c}\_{\mathbf{k}} + \Delta\mathbf{r}\_{\mathbf{c},\mathbf{k},\mathbf{u},\mathbf{z}} \end{cases} \tag{41}$$

where

$$\mathbf{p}\_{\mathbf{c},k,\mathbf{t},m} = \frac{\mathbf{c}\_{k} - \mathbf{s}\_{\mathbf{t},m}}{||\mathbf{c}\_{k} - \mathbf{s}\_{\mathbf{t},m}||} \tag{42}$$

$$\mathbf{p}\_{\mathbf{c},k,\mathbf{r},\mathbf{u}} = \frac{\mathbf{c}\_k - \mathbf{s}\_{\mathbf{r},\mathbf{u}}}{||\mathbf{c}\_k - \mathbf{s}\_{\mathbf{r},\mathbf{u}}||} \tag{43}$$

$$\mathbf{p}\_{\mathbf{t},m,\mathbf{r},\mathbf{u}} = \frac{\mathbf{s}\_{\mathbf{t},m} - \mathbf{s}\_{\mathbf{r},\mathbf{u}}}{||\mathbf{s}\_{\mathbf{t},m} - \mathbf{s}\_{\mathbf{r},\mathbf{u}}||}\tag{44}$$

Stacking (41) for all the *k*, *m* and *n*, we can formulate them in matrix form as

$$\mathbf{h}\_0 - \mathbf{G}\_0 \boldsymbol{\Delta} \mathbf{s} = \boldsymbol{\Delta} \mathbf{h}\_0 \tag{45}$$

The elements of **h**0, **G**<sup>0</sup> and **Δh**<sup>0</sup> are given by

$$\mathbf{h}\_0(i\_{k,m,n}, 1) = r\_{\mathbf{c},k,m,n} - ||\mathbf{c}\_k - \mathbf{s}\_{\mathbf{t},m}|| - ||\mathbf{c}\_k - \mathbf{s}\_{\mathbf{t},n}|| + ||\mathbf{s}\_{\mathbf{t},m} - \mathbf{s}\_{\mathbf{t},n}||\tag{46}$$

*Sensors* **2019**, *19*, 3365

$$\mathbf{G}\_{0} = \begin{bmatrix} \mathbf{G}\_{0,t} & \mathbf{G}\_{0,x} \end{bmatrix} \cdot \mathbf{G}\_{0,t} (i\_{k,m,n}, 3m - 2: 3m) = \boldsymbol{\rho}\_{\text{c,k,t,m}}^{\text{T}} + \boldsymbol{\rho}\_{\text{t,m,x,u}}^{\text{T}} \cdot \mathbf{G}\_{0,t} (i\_{k,m,n}, 3n - 2: 3n) = \boldsymbol{\rho}\_{\text{c,k,x,u}}^{\text{T}} - \boldsymbol{\rho}\_{\text{t,m,x,u}}^{\text{T}} \tag{47}$$

$$\mathbf{G}\_{\mathbf{c}}(i\_{k,m,n}, 3k - 2:3k) = - \left( \mathbf{p}\_{\mathbf{c},k,t,n} + \mathbf{p}\_{\mathbf{c},k,r,n} \right)^{\mathrm{T}} \tag{48}$$

$$\Delta \mathbf{h}\_{0}(i\_{k,m,n}, \mathbf{1}) = - \left(\mathbf{p}\_{\mathbf{c},k,\mathbf{t},\mathbf{n}} + \mathbf{p}\_{\mathbf{c},k,\mathbf{r},\mathbf{n}}\right)^{\mathrm{T}} \Delta \mathbf{c}\_{k} + \Delta r\_{\mathbf{c},k,m,n} \tag{49}$$

for *ik*,*m*,*<sup>n</sup>* = (*k* − 1)*MN* + (*m* − 1)*N* + *n*, *k* = 0, 1, ... ,*K* − 1, *m* = 0, 1, ... , *M* − 1, *n* = 0, 1, ... , *N* − 1, and zeros elsewhere. Furthermore, the error vector **Δh**<sup>0</sup> can be recast using a compact representation as follows

$$
\Delta \mathbf{h}\_0 = \mathbf{G}\_\mathbf{c} \Delta \mathbf{c} + \Delta \mathbf{r}\_\mathbf{c} \tag{50}
$$

from which we have the mean <sup>E</sup>(**Δh**0) = <sup>0</sup>*KMN*×<sup>1</sup> and the covariance cov(**Δh**0) = **<sup>G</sup>**c**QcG**<sup>T</sup> <sup>c</sup> + **Qr**c. In (45), **Δs** represents the difference between the true and the nominal transmitter/receiver positions.

In order to refine the transmitter and receiver positions, **Δs** shall be estimated as accurately as possible. Recall that **Δs** is a Gaussian distributed random vector with mean E(**Δs**) = 03(*M*+*N*)×<sup>1</sup> and covariance matrix cov(**Δs**) = **Qs**, and it is independent of the error vector **Δh**0. Thus according to the Bayesian Gauss–Markov theorem [33], the linear minimum mean square error (LMMSE) estimate of **Δs** can be obtained from (45) as

$$\begin{aligned} \mathbf{A}\mathbf{s} &= \mathbf{E}(\mathbf{A}\mathbf{s}) + \left(\text{cov}(\mathbf{A}\mathbf{s})^{-1} + \mathbf{G}\_0^T \text{cov}(\mathbf{A}\mathbf{h}\_0)^{-1} \mathbf{G}\_\mathbf{s}\right)^{-1} \mathbf{G}\_0^T \text{cov}(\mathbf{A}\mathbf{h}\_0)^{-1} (\mathbf{h}\_0 - \mathbf{G}\_0 \mathbf{E}(\mathbf{A}\mathbf{s})) \\ &= \left(\mathbf{Q}\_\mathbf{s}^{-1} + \mathbf{G}\_0^T (\mathbf{G}\_\mathbf{c} \mathbf{Q}\_\mathbf{c} \mathbf{G}\_\mathbf{c}^T + \mathbf{Q}\_\mathbf{rc})^{-1} \mathbf{G}\_0\right)^{-1} \mathbf{G}\_0^T (\mathbf{G}\_\mathbf{c} \mathbf{Q}\_\mathbf{c} \mathbf{G}\_\mathbf{c}^T + \mathbf{Q}\_\mathbf{rc})^{-1} \mathbf{h}\_0 \end{aligned} \tag{51}$$

Under the assumption that the noise in **G**<sup>c</sup> and **G**<sup>0</sup> is sufficiently small to be ignored, the covariance matrix of **Δs**ˆ can be given as

$$\text{cov}(\Delta \mathbf{s} - \Delta \mathbf{\hat{s}}) = \left(\mathbf{Q\_s}^{-1} + \mathbf{G\_0^T} (\mathbf{G\_c} \mathbf{Q\_c} \mathbf{G\_c^T} + \mathbf{Q\_{rc}})^{-1} \mathbf{G\_0}\right)^{-1} \tag{52}$$

Using the estimate of transmitter and receiver position error in (51), we can refine the transmitter and receiver positions as

$$
\mathbf{s} = \mathbf{s} - \Delta \mathbf{\hat{s}}\tag{53}
$$

Utilizing the fact **<sup>s</sup>** = **<sup>s</sup>**<sup>o</sup> + **<sup>Δ</sup>s**, we can rewrite **<sup>s</sup>**<sup>ˆ</sup> in (53) as **<sup>s</sup>**<sup>ˆ</sup> = **<sup>s</sup>**<sup>o</sup> + **<sup>Δ</sup><sup>s</sup>** <sup>−</sup> **<sup>Δ</sup>s**ˆ. Hence, the refined estimate of transmitter/receiver positions **s**ˆ has a covariance matrix identical with (52). Forming the inverse of cov(**Δ<sup>s</sup>** <sup>−</sup> **<sup>Δ</sup>s**ˆ) and then comparing it to **<sup>Q</sup>**−<sup>1</sup> **<sup>s</sup>** results in cov(**Δs** − **Δs**ˆ) <sup>−</sup><sup>1</sup> <sup>−</sup> **Q**−<sup>1</sup> **<sup>s</sup>** = **G**<sup>T</sup> <sup>0</sup> (**G**c**QcG**<sup>T</sup> <sup>c</sup> + **Qr**c) −1 **G**0. It is natural to deduce that cov(**Δs** − **Δs**ˆ) <sup>−</sup><sup>1</sup> <sup>≥</sup> **<sup>Q</sup>**−<sup>1</sup> **<sup>s</sup>** is PSD since **G**<sup>T</sup> <sup>0</sup> (**G**c**QcG**<sup>T</sup> <sup>c</sup> + **Qr**c) −1 **G**<sup>0</sup> has a symmetric structure and **G**<sup>c</sup> is not full column rank. According to the PSD matrix property [34], cov(**Δs** − **Δs**ˆ) <sup>−</sup><sup>1</sup> <sup>≥</sup> **<sup>Q</sup>**−<sup>1</sup> **<sup>s</sup>** is equivalent to **Qs** ≥ cov(**Δs** − **Δs**ˆ). That is to say, the refined positions of transmitters and receivers performs leastwise as well as, if not better than, the original ones, in terms of target localization accuracy.
