Skip to main content
Sensors (Basel, Switzerland) logoLink to Sensors (Basel, Switzerland)
. 2021 Feb 5;21(4):1090. doi: 10.3390/s21041090

Dynamic Indoor Localization Using Maximum Likelihood Particle Filtering

Wenxu Wang 1, Damián Marelli 1,2,*, Minyue Fu 1,3
Editor: Paolo Spagnolo
PMCID: PMC7915836  PMID: 33562518

Abstract

A popular approach for solving the indoor dynamic localization problem based on WiFi measurements consists of using particle filtering. However, a drawback of this approach is that a very large number of particles are needed to achieve accurate results in real environments. The reason for this drawback is that, in this particular application, classical particle filtering wastes many unnecessary particles. To remedy this, we propose a novel particle filtering method which we call maximum likelihood particle filter (MLPF). The essential idea consists of combining the particle prediction and update steps into a single one in which all particles are efficiently used. This drastically reduces the number of particles, leading to numerically feasible algorithms with high accuracy. We provide experimental results, using real data, confirming our claim.

Keywords: indoor tracking, particle filter, channel state information, WiFi fingerprinting

1. Introduction

Wireless positioning is the most popular approach for indoor location-based services. It finds applications in emergency rescue, smart home, security monitoring and many other areas. In contrast to outdoor positioning, whose dominant approach is based on the global positioning system (GPS), indoor positioning is hindered by multiple sources of interference and multipath effects in time-varying environments. In view of this, multiple techniques for indoor positioning are currently being investigated. The most popular ones are based on radio frequency identification [1,2], Bluetooth signals [3,4], ultra-wideband signals [5,6] and WiFi signals [7,8]. Due to their large coverage, low implementation cost and availability in existing mobile devices, WiFi-based indoor positioning is the most promising technique.

A broad classification of indoor localization methods can be done in two categories, namely, geometric mapping and fingerprinting [9]. In geometric mapping, the target’s position is estimated using geometric information like distances and angles from the target to a set of access points (APs) [10]. Typical techniques for obtaining geometric information are time of flight (ToF) [11] and angle of arrival (AoA) [12]. This approach typically requires obtaining information from more than three APs. the resulting methods are based on line of sight (LOS) signals, and therefore are easily influenced by obstacles. Strict synchronization is also needed between different devices. The above limitations are overcome by the fingerprinting method [13]. It consists of building a database containing the values of certain received signal features at a given set of known locations. Localization is then done by comparing the features obtained at the target’s location with those of the database. Localization based on fingerprinting is more immune to distortions caused by the environment, since the latter are coded in the feature database. However, it suffers from poor positioning accuracy when the target is in a position far from anyone in the database.

The most commonly WiFi signal feature used for indoor localization is its received signal strength (RSS) [14]. It measures the signal power strength at the receiver side. Although RSS measurements are easy to obtain, only a very rough estimation of the receiver’s position can be obtained from it. This is due to the fading and distortion suffered by signals propagating through multipaths. To tackle this problem, in recent years channel state information (CSI) has been used instead of RSS [9]. CSI contains information of the phase and amplitude value of each subcarrier of an orthogonal frequency division multiplexing (OFDM) channel. It can be readily obtained from any OFDM system based on the 802.11n protocol. Since multipath and fading information is represented in the CSI, its use for indoor localization leads to more accurate and stable results in comparison to RSS.

To improve the accuracy of any given localization method, extra information can be obtained from a motion model of the target. The common solution for fusing the information from the motion model with that from measurements consists of using some Bayesian tracking technique. We refer to resulting techniques as dynamic localization methods [15]. One such techniques is the Kalman filter [16,17,18]. While being optimal and having a closed-form, it only applies to linear Gaussian model. This assumption can be relaxed using the extended Kalman filter [19]. However, since this method is simply based on linearizing a non-linear model, it often leads to inaccurate results. This can be overcome by using particle filtering [20,21,22,23]. This essentially consists of approximating non-Gaussian probability distributions using a number of samples (particles) multiplied by their associated weights.

As it is known, a Bayesian tracking method consists of alternating two steps called prediction and update. In a particle filter, a set of new particles is drawn during each prediction step, whose weighs are determined during the subsequent update step. A drawback of this approach is that this weighting results in little use of those particles whose weights are very small. The number of wasted particles can be very large in the case where measurements already provide enough information to determine the target’s location with a reasonable accuracy, without using the information provided by the motion model. This is often the case in localization setups, for otherwise, algorithms not using a motion model would not work with reasonable accuracy. Consequently, a very large number of particles are required to avoid particle depletion after the update step, which would result in an inaccurate result. The vast number of required particles renders the approach numerically intractable in many applications.

In order to tackle the above shortcoming, a number of methods are available to reduce the estimation error resulting from using particle filtering with a restricted number of particles. In [21], a machine learning classifier is added to decide whether particles are in the correct room. In [22], a context variable, with values in the set {‘free space’, ‘constrained space’, ‘static space’}, is added to the state to account for the movement constraints at the target’s current position. Also, the authors of [23] divide the environment into reachable and unreachable areas, so as to discard particles falling into an unreachable area.

Generally speaking, the above methods aim to reduce the particle depletion phenomenon described above by complementing the motion model with environment- dependent information to decide where to draw particles. The aim of this work is to make the most of this principle, i.e., ideally to totally avoid particle depletion. To this end, we propose a novel particle filtering scheme which combines the prediction and update steps into a single one. In other words, we avoid drawing unnecessary particles during the prediction step that will afterwards disappear during the subsequent update step. This drastically reduces the required number of particles, making the approach numerically feasible in virtually any application. In deriving our method, we exploit the principle underlying a Bayesian tracking method called maximum likelihood Kalman filtering (MLKF) [24]. We then call the proposed method the maximum likelihood particle filter (MLPF).

The authors used the MLKF in [25] to propose a dynamic localization method which only applies to the case in which the motion model is linear and Gaussian. In this sense, the method proposed in this work can be thought of as the generalization of the method we proposed in [25] to the case of non-linear motion models. This kind of models are typically used in robotics [26], and as we show with experiments using real data, leads to great accuracy improvements.

The rest of the paper is organized as follows: In Section 2, we state the dynamic localization problem. In Section 3, we describe the particle filtering approach for solving it. In Section 4, we derive the proposed MLPF method. In Section 5, we present experimental evidence, showing the numerical advantages offered by the proposed method. Concluding remarks are given in Section 6. For ease of readability, all proofs appear in Appendix C.

2. Problem Description

We assume there is a target moving in an indoor environment. The target’s Cartesian coordinates at time t are yt=at,btR2 and θt(π,π] is its orientation in radians, as shown in Figure 1. The target’s motion model is described by the following non-linear state-transition equation

yt+1=gyt,θt,ut,et, (1)
θt+1=hyt,ut,et+ayt,ut,etθt+byt,ut,etnt, (2)

where ut is the target’s control input and et=a˜t,b˜t and nt are process noises accounting for the model’s inaccuracy. To write the above in compact form we define the target’s pose xt=yt,θtR3 and the process noise wt=et,nt. We then write

xt+1=fxt,ut,wt, (3)

with f defined according to (1) and (2). We assume that x1=0 and the sequence wtN0,Qut is i.i.d., with Q(u) being a diagonal positive definite matrix for each u.

Figure 1.

Figure 1

Target’s Cartesian coordinates.

Remark 1.

We state the motion model in the general form (1) in order to make our presentation valid for the different models used in the literature. In Appendix A we briefly describe the most popular models falling into this general form.

At each time tN, we obtain the following measurement

zt=myt+vt. (4)

where the map m:R2RN is known and the measurement noise vtN0,R is i.i.d. and independent of wt.

Problem 1.

Let ZT=z1,,zT denote the set of all measurements available up to time T. The dynamic localization problem consists of using, at time T, the measurements ZT to obtain an estimate x^T of xT.

3. Available Solution Using Particle Filtering

As described in Section 1, the dynamic localization problem can be solved using the well-known particle filtering method [27]. In this section, we describe this approach.

The Bayesian filtering equations are initialized by px1|Z1=δx1, and proceed as follows

pxt|Zt1=pxt|xt1pxt1|Zt1dxt, (5)
pxt|Zt=pzt|xtpzt|Zt1pxt|Zt1. (6)

Equations (5) and (6) are called the prediction and update steps, respectively. These equations do not have close form expressions, in general. Hence, a numeric method is needed to approximately compute them. This can be done using particle filtering. More precisely, we start with

px1|Z1;mi=1Iϖ1|1iδx1x1|1i,x1|1i=0,ϖ1|1i=1I. (7)

Then, at time t>1, the prediction step is computed by

pxt|Zt1;m1Ii=1Iδxtxt|t1i, (8)

with xt|t1i obtained by drawing it from the following distribution

xt|t1ii=1Iϖt1|t1ipxt|xt1|t1iδxtxt1|t1i.

Also, the update step is computed by

pxt|Zt;mi=1Iϖt|tiδxtxt|ti,xt|ti=xt|t1i,ϖt|tipyt|xti. (9)

with ϖt|ti normalized so that i=1Iϖt|ti=1.

The use of particle filtering for solving the localization problem permits accommodating the accuracy by increasing the number of particles. As mentioned in Section 1, a problem that often occurs is that the desired accuracy requires a very large number of particles. This can result in a numerically very expensive algorithm. To address this issue, in the next section we propose a variant of the particle filtering algorithm, which drastically reduces the number of particles required to achieve a given accuracy.

4. Proposed Algorithm

In the particle filtering algorithm described in Section 3, at time t, we use the approximation (9) of the updated distribution pxt1|Zt1, together with the state-transition Equation (1), to generate the approximation (8) of the predicted distribution pxt|Zt1. The latter is then used in combination with the likelihood function pzt|xt to approximate the new updated distribution pxt|Zt. This is done by weighting the i-th particle xt|ti by a weight ϖt|ti proportional to the particle’s likelihood pyt|xti. As mentioned in Section 1, a drawback of this approach is that this weighting wastes many particles. In order to avoid this, we combine the prediction and update steps into a single one. More precisely, particles for approximating the updated distribution pxt|Zt are directly drawn using the knowledge of the particle approximation of the previous updated distribution pxt1|Zt1, without drawing particles to represent the predicted distribution pxt|Zt1. We describe below how this is done.

Notation 1.

In order to simplify the notation we remove the dependence of Q on ut, i.e., we use Q instead of Qut.

Notation 2.

Let

ft1i(w)=fxt1|t1i,ut1,w,gt1i(e)=gyt1|t1i,θt1|t1i,ut1,e,

and, for ξ=h,a,b,

ξt1i(e)=ξyt1|t1i,ut1,e.

We assume that at time t we know the following approximation

pxt1|Zt1i=1Iϖt1|t1iδxt1xt1|t1i. (10)

Our goal is to use the above to build an approximation of the form

pxt|Zti=1Iϖt|tiδxtxt|ti. (11)

Our first step is to derive a convenient decomposition of pxt|Zt. This is done in the following lemma.

Lemma 1.

The following equality holds in the system given by (1), (2) and (4)

pxt|Zt=pθt|yt,Ztpyt|Zt, (12)

where

pyt|Ztpzt|ytpyt|Zt1, (13)
pθt|yt,Ztpθt|yt,Zt1. (14)

It follows from Lemma 1 that, in order to find an expression of pxt|Zt we need expressions of pyt|Zt1 and pθt|yt,Zt. Under the approximation (10), the desired expressions are given in the following lemma.

Lemma 2.

If (10) holds, then

pyt|Zt1i=1Iψtiyt, (15)
pθt|yt,Zt1i=1IψtiytNθt;μtiyt,ρtiyt. (16)

where to simplify the notation we use gt1i=gt1i1, and denotes the approximately proportional sign. Also

ψtiyt=ϖt1|t1iγtiytdetJgt1iytbt1igt1iyt,

where J denoted the Jacobian operator,

ρtiyt=1ςtiytQ1ςtiyt,μtiyt=νtiytQ1ςtiytρtiytγtiyt=2πρtiytdet2πQexp12νtiytQ1ζtiyt,ζtiyt=νtiyt+μtiytςtiyt,

and

νtiyt=gt1iytht1igt1iytat1igt1iytθt1bt1igt1iyt,ςtiyt=001bt1igt1iyt.

In order to build an approximation of the form (11) we need a method for drawing samples from pxt|Zt. In view of (12), this can be done by drawing samples from pθt|yt,Zt and pyt|Zt. It follows from (16) that pθt|yt,Zt is a Gaussian mixture distribution. Hence, we can readily draw samples from it. On the other hand, from (13) and (15) we obtain

pyt|Ztpzt|yti=1Iψtiyt,

from where it is not clear how to draw samples. Our strategy to go around this consists finding a convenient Gaussian approximation p˜tyt of pyt|Zt, from where we can draw samples, and then weight these samples to account for the difference between p˜tyt and pyt|Zt.

To derive the Gaussian approximation p˜tyt we use (13) and proceed in three steps. In Lemma 3 we do a Gaussian approximation of pyt|Zt1, in Lemma 4 we do the same with pzt|yt, and in Lemma 5 we combine these two approximations to obtain p˜tyt.

Lemma 3.

If (10) holds, then

pyt|Zt1i=1Iϖt1|t1iNyt;gt1i0,Jgt1i0QeJgt1i0,

where Qe=SQS with S=I2,0 and I2 denoting the 2×2 identity matrix.

Lemma 4.

The following approximation holds

pzt|ytNyt;λt,Λt, (17)

where

λt=argmaxyR2Ξt(y), (18)
Λt=2Ξtλt1. (19)

with

Ξt(y)=logNzt;my,R.

Combining Lemmas 3 and 4 we obtain the Gaussian approximation of pyt|Zt given in the following lemma.

Lemma 5.

The following approximation holds

pyt|Ztp˜tyt,

where

p˜tyt=i=1Iϖt1|t1iαtiNyt;ξti,Ξti,

with

αti=N0;gt1i0λt,Λt+Jgt1i0QeJgt1i0,Ξti=Λt1+Jgt1i0QeJgt1i011,ξti=ΞtiΛt1λt+Jgt1i0QeJgt1i01gt1i0.

Combining the results in Lemmas 1, 2 and 5 we can build the desired approximation (11) following the procedure described in Algorithm 1.

Algorithm 1 Proposed localization algorithm.
At t=1, initialize px1|Z1 using (7). At each t>1:
  • 1.
    Compute λt and Λt using (18) and (19).
  • 2.
    For each j=1,,I, do:
    • (a)
      Pick an index i1,,I by drawing it from the discrete distribution such that i has probability proportional to ϖt1|t1iαti.
    • (b)
      Draw yt|tj from Nyt;ξti,Ξti.
    • (c)
      Compute the particle weight using ϖt|tj=pyt|tj|Ztp˜tyt|tj.
    • (d)
      Pick an index i1,,I by drawing it from the discrete distribution such that i has probability proportional to ψtiyt|tj.
    • (e)
      Draw θt|tj from Nμtiyt|tj,ρtiyt|tj.
    • (f)
      Put xt|tj=yt|tj,θt|tj.
  • 3.
    Normalize the weights so that j=1Iϖt|tj=1.
  • 4.
    Estimate the position using x^t=i=1Iϖt|tixt|ti.

5. Experimental Validation

In this section, we evaluate the performance of our proposed indoor localization method. To this end, we compare it with that of two methods based on particle filtering (PF). The first one is a newly proposed RSS-based method described in [20], which we refer to as PF-RSS. In order to assess the advantage resulting from using CSI measurements instead of RSS ones, the second method is the CSI-based version the PF-RSS one. It is obtained by using the PF method, described in Section 3, instead of the proposed MLPF method. We refer to it as PF-CSI. We also consider the dynamic localization method from [25], which we call MLKF, and only applies to linear Gaussian motion models like the one given in Appendix B. We also consider the localization performance obtained via static localization. To this end, we use the static localization method proposed in [25], which, as shown in that work, outperforms other available static positioning methods like FILA [28], DeepFi [29], and PhaseFi [30].

As APs we used TP-Link TL-WDR4310 routers with the OpenWrt platform installed. To acquire CSI values we use the Atheros CSI tool [31]. It provides CSI values of 56 subcarriers, and for each one, two 10 bit values are used to represent its phase and amplitude. Motion capture cameras with millimeter-level accuracy are used to obtain the ground truth position.

For the target we use a two-wheel robot controlled by a NVIDIA Jetson Nano developer board, equipped with an Atheros AR9590 network interface controller. We consider a target whose motion is described by the velocity model given in Appendix A.1, with σv2=0.36, σω2=0.072 and σγ2=0.072. To generate the measurements we pass the acquired CSI phase values through the linear calibration stage proposed in [30] (§ II.B), then unwrap the resulting phases and use the resulting phase differences as fingerprints. The whole procedure for generating fingerprints is described in [25]. The measurement model is given by the following Gaussian kernel expansion

myt=n=1Nκnexpχytpn2, (20)

where pnR2, n[1,2,,N], denote the positions used to build the fingerprint database. Following [32] (Chapter 4.3.2) we choose χ=12I1/3. Also,κ=[κ1,,κN] is computed so that, for each n=1,,N, mpn matches the CSI measured at pn.

As performance metric we use the mean squared localization error ϵ, i.e., if the estimated pose at time t is x^t=y^t,θ^t and the ground truth is yt, then

ϵ=1Tt=1Ty^tyt2.

For the PF method, following [23] we use I=1000 particles. Also, for the MLKF method, we use the linear Gaussian motion model described in Appendix B, with σp2=0.12 and σι2=0.25.

In the first experiment, we aim to evaluate the performance in large environments. To this end we use an empty room of 7×16 m2. Only one AP is placed at the corner of the room as shown in Figure 2. To build the fingerprinting database, we measured CSI’s at N=70 positions, one meter apart from each other, on a grid as also shown in the same figure. As the target moves within the room, we estimate its position every τ=0.5 seconds.

Figure 2.

Figure 2

Layout and database points of the empty room. The access point (AP) is placed at the lower-right corner.

As we can see from Table 1, the proposed MLPF method, with only 10 particles, clearly outperforms the outcomes of static positioning and particle filtering. Its performance is comparable to that of the MLKF. However, it outperforms the latter if we increase the number of particles to 50. This is due to the use of a non-linear motion model which yields more accurate statistical knowledge of the target’s position at each sample time. Also, although particle filtering should yield the theoretically optimal result if the number of particles is large enough, the very large number of required particles result in that, even with 1000 particles, its accuracy is significantly inferior than that of the proposed MLPF method with 10 particles. Figure 3 shows how the positioning accuracy of the proposed method improves with the number of particles. In Figure 4 we show the error cumulative distribution (ECD) of each method, i.e., for each error (in meters), we show the proportion of positions whose localization error is smaller than that error. The estimated trajectory and ground truth of the experiment are shown in Figure 5.

Table 1.

Positioning Error (empty room).

Methods Mean Squared Error [m2] 90% Acc. [m2]
Static positioning 1.4153 3.0437
MLKF 0.6506 1.2848
PF-RSS (1000 particles) 12.1310 28.3569
PF-CSI (1000 particles) 2.0834 5.8151
MLPF (10 particles) 0.5607 1.3724
MLPF (50 particles) 0.3370 1.0891

Figure 3.

Figure 3

Impact of particle numbers on positioning accuracy.

Figure 4.

Figure 4

Positioning error cumulative distribution (ECD) (empty room).

Figure 5.

Figure 5

Tracking result of maximum likelihood particle filter (MLPF) with 10 and 50 particles in an empty room.

The second experiment aims to show the performance of our method in living and working environments. To this end we use two adjacent offices of 7.1×11.3 m2 connected by a corridor. We build the fingerprint database using N=72 positions, as shown in Figure 6, together with the AP’s location.

Figure 6.

Figure 6

Layout and database points for the two office rooms. The AP is placed at the lower-right corner of the right room.

We see from Table 2 that, while in the empty room the proposed method with 10 particles performed similarly to the MLKF method, in this second experiment it largely outperforms the latter. The table also shows the clear advantage of the proposed method over its rivals. The reason for this advantage is as follows. Due to the signal distortion and attenuation caused by multipaths, walls and furnitures, the localization information provided by measurements is not enough to yield accurate estimates at certain locations. This can be seen in the ECD shown in Figure 7. At those locations, dynamic localization methods resort to motion model information to produce an estimate. Figure 7 shows that only the proposed MLPF method can produce accurate estimates at those locations. This is because it is the only method that is able to make full use of the rich information provided by a non-linear motion model. While methods based on PF potentially have the same possibility, the extremely large number of required particles make this unfeasible in practice. To conclude the experiment, we show in Figure 8 the ground truth and estimated trajectories.

Table 2.

Positioning Error (office rooms).

Methods Mean Squared Error [m2] 90% Acc. [m2]
Static positioning 2.3962 5.6935
MLKF 11.7255 50.8279
PF-RSS (1000 particles) 8.2366 18.3872
PF-CSI (1000 particles) 2.9418 11.1606
MLPF (10 particles) 0.7755 1.5712
MLPF (50 particles) 0.4939 0.9970

Figure 7.

Figure 7

Positioning ECD (office rooms).

Figure 8.

Figure 8

Tracking result of MLPF with 10 and 50 particles in the office rooms.

6. Conclusions

We proposed a new indoor positioning method, which we called maximum likelihood particle filtering. Its essential idea consists of combing the prediction and updates steps of a traditional particle filter into a single step, which requires solving a maximum likelihood estimation problem. This results in a better utilization of particles. The method so obtained achieves high accuracy indoor positioning with a drastically smaller number of particles in comparison with particle filtering. This makes it numerically feasible for real-time applications. We validated our claims in a WiFi indoor positioning experiment using real data. Our experiment show that our method leads to great accuracy improvements achieving sub-meter level indoor localization accuracy, which exceeds the requirements of the 5G NR Release 16 standard from 3GPP [33].

Appendix A. Non-Linear Robot Motion Models

Appendix A.1. Velocity Model

The input is ut=vt,ωt, with vt and ωt being the robot’s measured linear and angular speeds, respectively. Also et=v˜t,ω˜t, nt=γ˜t, Qut=diagσv2,σω2,σγ2 with

σv2=α1vt+α2ωt,σω2=α3vt+α4ωt,σγ2=α5vt+α6ωt,

and α1,,α6 being system parameters. The motion model is given by

at+1=atv^tω^tsinθt+v^tω^tsinθt+ω^tτ,bt+1=bt+v^tω^tcosθtv^tω^tcosθt+ω^tτ,θt+1=θt+ω^t+γ˜tτ,

where τ denotes the sampling time and

v^t=vt+v˜t,ω^t=ωt+ω˜t.

Appendix A.2. Odometry Model

In this case ut=x¯t+1,x¯t, where x¯t=a¯t,b¯t,θ¯t denotes the odometry measurement at time t. Using ut we compute

δrot1=arctanb¯t+1b¯ta¯t+1a¯tθ¯t,δtrans=a¯t+1a¯t2+b¯t+1b¯t2,δrot1=θ¯t+1θ¯tδrot1.

Then, wt=δ˜rot1,δ˜trans,δ˜rot2 and Qut=diagσrot12,σtrans2,σrot22 with

σrot12=α1δ^rot1+α2δ^trans,σtrans2=α3δ^trans+α4δ^rot1+δ^rot2,σrot22=α5δ^rot2+α6δ^trans,

and α1,,α6 being system parameters. The motion model is given by

at+1=at+δ^transcosθt+δ^rot1,bt+1=bt+δ^transsinθt+δ^rot1,θt+1=θt+δ^rot1+δ^rot2,

where

δ^rot1=δrot1+δ˜rot1,δ^trans=δtrans+δ˜trans,δrot2=δrot2+δ˜rot2.

Appendix A.3. Differential Drive Model

As in the velocity model, ut=vt,ωt. Also wt=v˜t,η˜t,ω˜t, where Qut=diagσv2,ση2,σω2 with σv2, ση2, and σω2 being system parameters. The motion model is given by

at+1=at+τcosθtvt+v˜tτsinθtη˜t,bt+1=bt+τsinθtvt+v˜t+τcosθtη˜t,θt+1=θt+τω˜t,

where τ denotes the sampling time.

Appendix B. Linear Motion Model

In the linear motion model, pζ and vζ, ζ{x,y}, denote the position and velocity, respectively, in the ζ axis. The model is given by

px(t+1)=px(t)+τvx(t)+wx(t),py(t+1)=py(t)+τvy(t)+wy(t),vx(t+1)=vx(t)+ιx(t),vy(t+1)=vy(t)+ιy(t),

where wx, wy, ιx and ιy are mutually independent, wxwyN0,σp2, and ιxιyN0,σι2.

Appendix C. Proofs

Proof of Lemma 1. 

We have

pxt|Zt=pθt|yt,Ztpyt|Zt.

Now

pyt|Zt=1pzt|Zt1pyt,zt|Zt1pzt|ytpyt|Zt1,

and

pθt|yt,Ztpθt,yt|Ztpθt,yt,zt|Zt1pzt|θt,ytpθt,yt|Zt1pzt|ytpθt,yt|Zt1pθt,yt|Zt1pθt|yt,Zt1.

Proof of Lemma 2. 

We split the proof in steps:

  • 1.
    It follows straightforwardly from [34] (§ 5.4) that
    pxt|xt1|t1i=w:xt=ft1(w)detJft1i(w)1pwt1=w.
    Since the variance of nt1 is small, we can do the following approximation,
    pxt|xt1|t1idetJft1ift1ixt1Nft1ixt;0,QdetJft1ixtNft1ixt;0,Q (A1)
    where to simplify the notation we used ft1i=ft1i1.
  • 2.
    We have
    ft1ixt=gt1iytθtht1igt1iytat1igt1iytθt1bt1igt1iyt (A2)
    =νtiyt+ςtiytθt. (A3)
    Then, from (A2),
    Jft1ixt=Jgt1iyt01bt1igt1iyt,
    where ∗ denotes a non-zero term whose value is irrelevant. Then
    detJft1ixt=detJgt1iytbt1igt1iyt. (A4)
  • 3.
    Now, using (10) and (A1), we get
    pyt,θt|Zt1=pxt|Zt1=pxt|xt1pxt1|Zt1dyt1θt1i=1Iϖt1|t1ipxt|xt1|t1ii=1Iϖt1|t1idetJft1ixtNft1ixt;0,Q. (A5)
    But, from (A3),
    Nft1ixt;0,Q=Nνtiyt+ςtiytθt;0,Q.
    Now
    νtiyt+ςtiytθtQ1νtiyt+ςtiytθt=ςtiytQ1ςtiytθt2+2νtiytQ1ςtiytθt+νtiytQ1νtiyt=ςtiytQ1ςtiytθt22ςtiytQ1ςtiytμtiytθt+ςtiytQ1ςtiytμtiyt2+νtiytQ1νtiytςtiytQ1ςtiytμtiyt2=θtμtiyt2ρtiyt+νtiytQ1νtiyt+νtiytQ1ςtiytμtiyt=θtμtiyt2ρtiyt+νtiytQ1νtiyt+ςtiytμtiyt
    Hence
    Nft1ixt;0,Q=1det2πQexpθtμtiyt22ρtiyt×exp12νtiytQ1ζtiyt=γtiytNθt;μtiyt,ρtiyt, (A6)
  • 4.
    Putting (A4) and (A6) into (A5) we obtain
    pyt,θt|Zt1i=1IψtiytNθt;μtiyt,ρtiyti,
    and the result follows.

Proof of Lemma 3. 

If xt1=xt1|t1i, doing a first order Taylor expansion we obtain

yt=gt1ietgt1i0+Jgt1i0et.

So

pyt|xt1|t1iNyt;gt1i0,Jgt1i0QeJgt1i0.

The result then follows since

pyt|Zt1=i=1Iϖt1|t1ipyt|xt1|t1i=i=1Iϖt1|t1iNyt;gt1i0,Jgt1i0QeJgt1i0.

Proof of Lemma 4. 

Let

Lty=pzt|yt=y.

Recall that N is the dimension of zt. It follows from ([24], Theorem 6) that, for all ϵR2, we can do the following approximation

limN1LtλtLtΛt1/2ϵ+λt=w.p.1expϵTϵ2, (A7)

with

Ξt(y)=logLty=logNzt;my,R.

In view of the above, for large N we have

Lt(y)Ltλtiexp12yλtTΛt1yλt, (A8)

Hence

pzt|yt=LtytNyt;λt,Λt.

Proof of Lemma 5. 

From the above we get

pyt|Ztpzt|ytpyt|Zt1i=1Iϖt1|t1iNyt;λt,Λt×Nyt;gt1i0,Jgt1i0QeJgt1i0.

The result then follows since, from [35] (§ 8.1.8),

Nyt;λt,ΛtNyt;gt1i0,Jgt1i0QeJgt1i0=αtiNyt;ξti,Ξti.

Author Contributions

Conceptualization, D.M. and M.F.; methodology, D.M.; software, W.W.; validation, W.W.; formal analysis, D.M.; investigation, W.W. and D.M.; resources, M.F.; data curation, W.W.; writing—original draft preparation, W.W.; writing—review and editing, D.M. and M.F.; visualization, W.W. and M.F.; supervision, D.M. and M.F.; project administration, M.F.; funding acquisition, M.F. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China grant numbers 61633014, 61803101 and U1701264, Guangdong Basic and Applied Basic Research Foundation grant number 2020A1515011505, and the Argentinean Agency for Scientific and Technological Promotion grant number PICT- 201-0985.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Footnotes

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

References

  • 1.Saab S.S., Nakad Z.S. A standalone RFID indoor positioning system using passive tags. IEEE Trans. Ind. Electron. 2010;58:1961–1970. doi: 10.1109/TIE.2010.2055774. [DOI] [Google Scholar]
  • 2.Seco F., Jiménez A.R. Smartphone-Based Cooperative Indoor Localization with RFID Technology. Sensors. 2018;18:266. doi: 10.3390/s18010266. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 3.Hallberg J., Nilsson M., Synnes K. Positioning with bluetooth; Proceedings of the 10th International Conference on Telecommunications 2003 (ICT 2003); Papeete, Tahiti, French Polynesia. 23 Feburary–1 March 2003; pp. 954–958. [Google Scholar]
  • 4.Yuan Z., Yang J., You L., Qi L., Naser E.S. Smartphone-Based Indoor Localization with Bluetooth Low Energy Beacons. Sensors. 2016;16:596. doi: 10.3390/s16050596. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Gigl T., Janssen G.J., Dizdarevic V., Witrisal K., Irahhauten Z. Analysis of a UWB indoor positioning system based on received signal strength; Proceedings of the 2007 4th Workshop on Positioning, Navigation and Communication; Hannover, Germany. 22 March 2007; pp. 97–101. [Google Scholar]
  • 6.Mazhar F., Khan M.G., Sällberg B. Precise indoor positioning using UWB: A review of methods, algorithms and implementations. Wirel. Pers. Commun. 2017;97:4467–4491. doi: 10.1007/s11277-017-4734-x. [DOI] [Google Scholar]
  • 7.Yang C., Shao H.R. WiFi-based indoor positioning. IEEE Commun. Mag. 2015;53:150–157. doi: 10.1109/MCOM.2015.7060497. [DOI] [Google Scholar]
  • 8.Jian C., Gang O., Ao P., Zheng L., Shi J. An INS/WiFi Indoor Localization System Based on the Weighted Least Squares. Sensors. 2018;18:1458. doi: 10.3390/s18051458. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 9.Yang Z., Zhou Z., Liu Y. From RSSI to CSI: Indoor localization via channel response. ACM Comput. Surv. (CSUR) 2013;46:1–32. doi: 10.1145/2543581.2543592. [DOI] [Google Scholar]
  • 10.Zafari F., Gkelias A., Leung K.K. A survey of indoor localization systems and technologies. IEEE Commun. Surv. Tutor. 2019;21:2568–2599. doi: 10.1109/COMST.2019.2911558. [DOI] [Google Scholar]
  • 11.Schatzberg U., Banin L., Amizur Y. Enhanced WiFi ToF indoor positioning system with MEMS-based INS and pedometric information; Proceedings of the 2014 IEEE/ION Position, Location and Navigation Symposium-PLANS 2014; Monterey, CA, USA. 5–8 May 2014; pp. 185–192. [Google Scholar]
  • 12.Kotaru M., Joshi K., Bharadia D., Katti S. Spotfi: Decimeter level localization using wifi; Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication; London, UK. 17–21 August 2015; pp. 269–282. [Google Scholar]
  • 13.Xia S., Liu Y., Yuan G., Zhu M., Wang Z. Indoor fingerprint positioning based on Wi-Fi: An overview. ISPRS Int. J. Geo-Inf. 2017;6:135. doi: 10.3390/ijgi6050135. [DOI] [Google Scholar]
  • 14.Wen Y., Tian X., Wang X., Lu S. Fundamental limits of RSS fingerprinting based indoor localization; Proceedings of the 2015 IEEE Conference on Computer Communications (INFOCOM); Kowloon, Hong Kong. 26 April–1 May 2015; pp. 2479–2487. [Google Scholar]
  • 15.Dardari D., Closas P., Djurić P.M. Indoor tracking: Theory, methods, and technologies. IEEE Trans. Veh. Technol. 2015;64:1263–1278. doi: 10.1109/TVT.2015.2403868. [DOI] [Google Scholar]
  • 16.Belmonte-Hernández A., Hernández-Peñaloza G., Alvarez F., Conti G. Adaptive fingerprinting in multi-sensor fusion for accurate indoor tracking. IEEE Sens. J. 2017;17:4983–4998. doi: 10.1109/JSEN.2017.2715978. [DOI] [Google Scholar]
  • 17.Du Y., Yang D., Yang H., Xiu C. Flexible indoor localization and tracking system based on mobile phone. J. Netw. Comput. Appl. 2016;69:107–116. [Google Scholar]
  • 18.Xu W., Liu L., Zlatanova S., Penard W., Xiong Q. A pedestrian tracking algorithm using grid-based indoor model. Autom. Constr. 2018;92:173–187. doi: 10.1016/j.autcon.2018.03.031. [DOI] [Google Scholar]
  • 19.Deng Z.A., Hu Y., Yu J., Na Z. Extended Kalman filter for real time indoor localization by fusing WiFi and smartphone inertial sensors. Micromachines. 2015;6:523–543. doi: 10.3390/mi6040523. [DOI] [Google Scholar]
  • 20.Belmonte-Hernández A., Hernández-Peñaloza G., Gutiérrez D.M., Álvarez F. SWiBluX: Multi-Sensor Deep Learning Fingerprint for precise real-time indoor tracking. IEEE Sens. J. 2019;19:3473–3486. doi: 10.1109/JSEN.2019.2892590. [DOI] [Google Scholar]
  • 21.Zhao Z., Braun T., Li Z., Neto A. A real-time robust indoor tracking system in smartphones. Comput. Commun. 2018;117:104–115. [Google Scholar]
  • 22.Jia R., Jin M., Zou H., Yesilata Y., Xie L., Spanos C. Mapsentinel: Can the knowledge of space use improve indoor tracking further? Sensors. 2016;16:472. doi: 10.3390/s16040472. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 23.Wu C., Zhang F., Wang B., Liu K.R. EasiTrack: Decimeter-Level Indoor Tracking With Graph-Based Particle Filtering. IEEE Internet Things J. 2019;7:2397–2411. doi: 10.1109/JIOT.2019.2958040. [DOI] [Google Scholar]
  • 24.Marelli D., Fu M., Ninness B. Asymptotic Optimality of the Maximum-Likelihood Kalman Filter for Bayesian Tracking With Multiple Nonlinear Sensors. IEEE Trans. Signal Process. 2015;63:4502–4515. doi: 10.1109/TSP.2015.2440220. [DOI] [Google Scholar]
  • 25.Wang W., Marelli D., Fu M. Fingerprinting-Based Indoor Localization Using Interpolated Preprocessed CSI Phases and Bayesian Tracking. Sensors. 2020;20:2854. doi: 10.3390/s20102854. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 26.Thrun S. Probabilistic robotics. Commun. ACM. 2002;45:52–57. doi: 10.1145/504729.504754. [DOI] [Google Scholar]
  • 27.Arulampalam M.S., Maskell S., Gordon N., Clapp T. A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking. IEEE Trans. Signal Process. 2002;50:174–188. doi: 10.1109/78.978374. [DOI] [Google Scholar]
  • 28.Wu K., Xiao J., Yi Y., Chen D., Luo X., Ni L.M. CSI-based indoor localization. IEEE Trans. Parallel Distrib. Syst. 2012;24:1300–1309. doi: 10.1109/TPDS.2012.214. [DOI] [Google Scholar]
  • 29.Wang X., Gao L., Mao S., Pandey S. DeepFi: Deep learning for indoor fingerprinting using channel state information; Proceedings of the 2015 IEEE Wireless Communications and Networking Conference (WCNC); New Orleans, LA, USA. 9–12 March 2015; pp. 1666–1671. [Google Scholar]
  • 30.Wang X., Gao L., Mao S. CSI phase fingerprinting for indoor localization with a deep learning approach. IEEE Internet Things J. 2016;3:1113–1123. doi: 10.1109/JIOT.2016.2558659. [DOI] [Google Scholar]
  • 31.Xie Y., Li Z., Li M. Precise power delay profiling with commodity Wi-Fi. IEEE Trans. Mob. Comput. 2018;18:1342–1355. doi: 10.1109/TMC.2018.2860991. [DOI] [Google Scholar]
  • 32.Silverman B.W. Density Estimation for Statistics and Data Analysis. Volume 26 CRC Press; Boca Raton, FL, USA: 1986. [Google Scholar]
  • 33.3GPP . Study on NR Positioning Support (Release 16) 3rd Generation Partnership Project (3GPP); Sophia Antipolis, France: 2019. TR38.855. [Google Scholar]
  • 34.Devore J.L., Berk K.N. Modern Mathematical Statistics with Applications. Springer; New York, NY, USA: 2012. [Google Scholar]
  • 35.Petersen K., Pedersen M. The Matrix Cookbook. Technical University of Denmark; Lyngby, Denmark: 2008. Technical Manual. [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Data Availability Statement

Not applicable.


Articles from Sensors (Basel, Switzerland) are provided here courtesy of Multidisciplinary Digital Publishing Institute (MDPI)

RESOURCES