Next Article in Journal
Acoustic Emission Signal Entropy as a Means to Estimate Loads in Fiber Reinforced Polymer Rods
Next Article in Special Issue
Detection of Specific Building in Remote Sensing Images Using a Novel YOLO-S-CIOU Model. Case: Gas Station Identification
Previous Article in Journal
Identification of Multi-Class Drugs Based on Near Infrared Spectroscopy and Bidirectional Generative Adversarial Networks
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Dynamic Indoor Localization Using Maximum Likelihood Particle Filtering

1
School of Automation, Guangdong University of Technology, Guangzhou 510006, China
2
National Scientific and French Argentine International Center for Information and Systems Sciences, Technical Research Council, Rosario S2000, Argentina
3
School of Electrical Engineering and Computer Science, University of Newcastle, Newcastle, NSW 2308, Australia
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(4), 1090; https://doi.org/10.3390/s21041090
Submission received: 17 December 2020 / Revised: 24 January 2021 / Accepted: 28 January 2021 / Published: 5 February 2021
(This article belongs to the Special Issue Sensors for Object Detection, Classification and Tracking)

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.

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 y t = a t , b t R 2 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
y t + 1 = g y t , θ t , u t , e t ,
θ t + 1 = h y t , u t , e t + a y t , u t , e t θ t + b y t , u t , e t n t ,
where u t is the target’s control input and e t = a ˜ t , b ˜ t and n t are process noises accounting for the model’s inaccuracy. To write the above in compact form we define the target’s pose x t = y t , θ t R 3 and the process noise w t = e t , n t . We then write
x t + 1 = f x t , u t , w t ,
with f defined according to (1) and (2). We assume that x 1 = 0 and the sequence w t N 0 , Q u t is i.i.d., with Q ( u ) being a diagonal positive definite matrix for each u.
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 t N , we obtain the following measurement
z t = m y t + v t .
where the map m : R 2 R N is known and the measurement noise v t N 0 , R is i.i.d. and independent of w t .
Problem 1.
Let Z T = z 1 , , z T denote the set of all measurements available up to time T. The dynamic localization problem consists of using, at time T, the measurements Z T to obtain an estimate x ^ T of x T .

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 p x 1 | Z 1 = δ x 1 , and proceed as follows
p x t | Z t 1 = p x t | x t 1 p x t 1 | Z t 1 d x t ,
p x t | Z t = p z t | x t p z t | Z t 1 p x t | Z t 1 .
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
p x 1 | Z 1 ; m i = 1 I ϖ 1 | 1 i δ x 1 x 1 | 1 i , x 1 | 1 i = 0 , ϖ 1 | 1 i = 1 I .
Then, at time t > 1 , the prediction step is computed by
p x t | Z t 1 ; m 1 I i = 1 I δ x t x t | t 1 i ,
with x t | t 1 i obtained by drawing it from the following distribution
x t | t 1 i i = 1 I ϖ t 1 | t 1 i p x t | x t 1 | t 1 i δ x t x t 1 | t 1 i .
Also, the update step is computed by
p x t | Z t ; m i = 1 I ϖ t | t i δ x t x t | t i , x t | t i = x t | t 1 i , ϖ t | t i p y t | x t i .
with ϖ t | t i normalized so that i = 1 I ϖ t | t i = 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 p x t 1 | Z t 1 , together with the state-transition Equation (1), to generate the approximation (8) of the predicted distribution p x t | Z t 1 . The latter is then used in combination with the likelihood function p z t | x t to approximate the new updated distribution p x t | Z t . This is done by weighting the i-th particle x t | t i by a weight ϖ t | t i proportional to the particle’s likelihood p y t | x t i . 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 p x t | Z t are directly drawn using the knowledge of the particle approximation of the previous updated distribution p x t 1 | Z t 1 , without drawing particles to represent the predicted distribution p x t | Z t 1 . We describe below how this is done.
Notation 1.
In order to simplify the notation we remove the dependence of Q on u t , i.e., we use Q instead of Q u t .
Notation 2.
Let
f t 1 i ( w ) = f x t 1 | t 1 i , u t 1 , w , g t 1 i ( e ) = g y t 1 | t 1 i , θ t 1 | t 1 i , u t 1 , e ,
and, for ξ = h , a , b ,
ξ t 1 i ( e ) = ξ y t 1 | t 1 i , u t 1 , e .
We assume that at time t we know the following approximation
p x t 1 | Z t 1 i = 1 I ϖ t 1 | t 1 i δ x t 1 x t 1 | t 1 i .
Our goal is to use the above to build an approximation of the form
p x t | Z t i = 1 I ϖ t | t i δ x t x t | t i .
Our first step is to derive a convenient decomposition of p x t | Z t . This is done in the following lemma.
Lemma 1.
The following equality holds in the system given by (1), (2) and (4)
p x t | Z t = p θ t | y t , Z t p y t | Z t ,
where
p y t | Z t p z t | y t p y t | Z t 1 ,
p θ t | y t , Z t p θ t | y t , Z t 1 .
It follows from Lemma 1 that, in order to find an expression of p x t | Z t we need expressions of p y t | Z t 1 and p θ t | y t , Z t . Under the approximation (10), the desired expressions are given in the following lemma.
Lemma 2.
If (10) holds, then
p y t | Z t 1 i = 1 I ψ t i y t ,
p θ t | y t , Z t 1 i = 1 I ψ t i y t N θ t ; μ t i y t , ρ t i y t .
where to simplify the notation we use g t 1 i = g t 1 i 1 , and denotes the approximately proportional sign. Also
ψ t i y t = ϖ t 1 | t 1 i γ t i y t det J g t 1 i y t b t 1 i g t 1 i y t ,
where J denoted the Jacobian operator,
ρ t i y t = 1 ς t i y t Q 1 ς t i y t , μ t i y t = ν t i y t Q 1 ς t i y t ρ t i y t γ t i y t = 2 π ρ t i y t det 2 π Q exp 1 2 ν t i y t Q 1 ζ t i y t , ζ t i y t = ν t i y t + μ t i y t ς t i y t ,
and
ν t i y t = g t 1 i y t h t 1 i g t 1 i y t a t 1 i g t 1 i y t θ t 1 b t 1 i g t 1 i y t , ς t i y t = 0 0 1 b t 1 i g t 1 i y t .
In order to build an approximation of the form (11) we need a method for drawing samples from p x t | Z t . In view of (12), this can be done by drawing samples from p θ t | y t , Z t and p y t | Z t . It follows from (16) that p θ t | y t , Z t is a Gaussian mixture distribution. Hence, we can readily draw samples from it. On the other hand, from (13) and (15) we obtain
p y t | Z t p z t | y t i = 1 I ψ t i y t ,
from where it is not clear how to draw samples. Our strategy to go around this consists finding a convenient Gaussian approximation p ˜ t y t of p y t | Z t , from where we can draw samples, and then weight these samples to account for the difference between p ˜ t y t and p y t | Z t .
To derive the Gaussian approximation p ˜ t y t we use (13) and proceed in three steps. In Lemma 3 we do a Gaussian approximation of p y t | Z t 1 , in Lemma 4 we do the same with p z t | y t , and in Lemma 5 we combine these two approximations to obtain p ˜ t y t .
Lemma 3.
If (10) holds, then
p y t | Z t 1 i = 1 I ϖ t 1 | t 1 i N y t ; g t 1 i 0 , J g t 1 i 0 Q e J g t 1 i 0 ,
where Q e = S Q S with S = I 2 , 0 and I 2 denoting the 2 × 2 identity matrix.
Lemma 4.
The following approximation holds
p z t | y t N y t ; λ t , Λ t ,
where
λ t = arg max y R 2 Ξ t ( y ) ,
Λ t = 2 Ξ t λ t 1 .
with
Ξ t ( y ) = log N z t ; m y , R .
Combining Lemmas 3 and 4 we obtain the Gaussian approximation of p y t | Z t given in the following lemma.
Lemma 5.
The following approximation holds
p y t | Z t p ˜ t y t ,
where
p ˜ t y t = i = 1 I ϖ t 1 | t 1 i α t i N y t ; ξ t i , Ξ t i ,
with
α t i = N 0 ; g t 1 i 0 λ t , Λ t + J g t 1 i 0 Q e J g t 1 i 0 , Ξ t i = Λ t 1 + J g t 1 i 0 Q e J g t 1 i 0 1 1 , ξ t i = Ξ t i Λ t 1 λ t + J g t 1 i 0 Q e J g t 1 i 0 1 g t 1 i 0 .
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 p x 1 | Z 1 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 i 1 , , I by drawing it from the discrete distribution such that i has probability proportional to ϖ t 1 | t 1 i α t i .
(b)
Draw y t | t j from N y t ; ξ t i , Ξ t i .
(c)
Compute the particle weight using ϖ t | t j = p y t | t j | Z t p ˜ t y t | t j .
(d)
Pick an index i 1 , , I by drawing it from the discrete distribution such that i has probability proportional to ψ t i y t | t j .
(e)
Draw θ t | t j from N μ t i y t | t j , ρ t i y t | t j .
(f)
Put x t | t j = y t | t j , θ t | t j .
3.
Normalize the weights so that j = 1 I ϖ t | t j = 1 .
4.
Estimate the position using x ^ t = i = 1 I ϖ t | t i x t | t i .

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 σ v 2 = 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
m y t = n = 1 N κ n exp χ y t p n 2 ,
where p n R 2 , n [ 1 , 2 , , N ] , denote the positions used to build the fingerprint database. Following [32] (Chapter 4.3.2) we choose χ = 1 2 I 1 / 3 . Also, κ = [ κ 1 , , κ N ] is computed so that, for each n = 1 , , N , m p n matches the CSI measured at p n .
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 y t , then
ϵ = 1 T t = 1 T y ^ t y t 2 .
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 σ p 2 = 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 m 2 . 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.
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.
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 m 2 connected by a corridor. We build the fingerprint database using N = 72 positions, as shown in Figure 6, together with the AP’s location.
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.

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].

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.

Appendix A. Non-Linear Robot Motion Models

Appendix A.1. Velocity Model

The input is u t = v t , ω t , with v t and ω t being the robot’s measured linear and angular speeds, respectively. Also e t = v ˜ t , ω ˜ t , n t = γ ˜ t , Q u t = diag σ v 2 , σ ω 2 , σ γ 2 with
σ v 2 = α 1 v t + α 2 ω t , σ ω 2 = α 3 v t + α 4 ω t , σ γ 2 = α 5 v t + α 6 ω t ,
and α 1 , , α 6 being system parameters. The motion model is given by
a t + 1 = a t v ^ t ω ^ t sin θ t + v ^ t ω ^ t sin θ t + ω ^ t τ , b t + 1 = b t + v ^ t ω ^ t cos θ t v ^ t ω ^ t cos θ t + ω ^ t τ , θ t + 1 = θ t + ω ^ t + γ ˜ t τ ,
where τ denotes the sampling time and
v ^ t = v t + v ˜ t , ω ^ t = ω t + ω ˜ t .

Appendix A.2. Odometry Model

In this case u t = x ¯ t + 1 , x ¯ t , where x ¯ t = a ¯ t , b ¯ t , θ ¯ t denotes the odometry measurement at time t. Using u t we compute
δ rot 1 = arctan b ¯ t + 1 b ¯ t a ¯ t + 1 a ¯ t θ ¯ t , δ trans = a ¯ t + 1 a ¯ t 2 + b ¯ t + 1 b ¯ t 2 , δ rot 1 = θ ¯ t + 1 θ ¯ t δ rot 1 .
Then, w t = δ ˜ rot 1 , δ ˜ trans , δ ˜ rot 2 and Q u t = diag σ rot 1 2 , σ trans 2 , σ rot 2 2 with
σ rot 1 2 = α 1 δ ^ rot 1 + α 2 δ ^ trans , σ trans 2 = α 3 δ ^ trans + α 4 δ ^ rot 1 + δ ^ rot 2 , σ rot 2 2 = α 5 δ ^ rot 2 + α 6 δ ^ trans ,
and α 1 , , α 6 being system parameters. The motion model is given by
a t + 1 = a t + δ ^ trans cos θ t + δ ^ rot 1 , b t + 1 = b t + δ ^ trans sin θ t + δ ^ rot 1 , θ t + 1 = θ t + δ ^ rot 1 + δ ^ rot 2 ,
where
δ ^ rot 1 = δ rot 1 + δ ˜ rot 1 , δ ^ trans = δ trans + δ ˜ trans , δ rot 2 = δ rot 2 + δ ˜ rot 2 .

Appendix A.3. Differential Drive Model

As in the velocity model, u t = v t , ω t . Also w t = v ˜ t , η ˜ t , ω ˜ t , where Q u t = diag σ v 2 , σ η 2 , σ ω 2 with σ v 2 , σ η 2 , and σ ω 2 being system parameters. The motion model is given by
a t + 1 = a t + τ cos θ t v t + v ˜ t τ sin θ t η ˜ t , b t + 1 = b t + τ sin θ t v t + 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
p x ( t + 1 ) = p x ( t ) + τ v x ( t ) + w x ( t ) , p y ( t + 1 ) = p y ( t ) + τ v y ( t ) + w y ( t ) , v x ( t + 1 ) = v x ( t ) + ι x ( t ) , v y ( t + 1 ) = v y ( t ) + ι y ( t ) ,
where w x , w y , ι x and ι y are mutually independent, w x w y N 0 , σ p 2 , and ι x ι y N 0 , σ ι 2 .

Appendix C. Proofs

Proof of Lemma 1. 
We have
p x t | Z t = p θ t | y t , Z t p y t | Z t .
Now
p y t | Z t = 1 p z t | Z t 1 p y t , z t | Z t 1 p z t | y t p y t | Z t 1 ,
and
p θ t | y t , Z t p θ t , y t | Z t p θ t , y t , z t | Z t 1 p z t | θ t , y t p θ t , y t | Z t 1 p z t | y t p θ t , y t | Z t 1 p θ t , y t | Z t 1 p θ t | y t , Z t 1 .
Proof of Lemma 2. 
We split the proof in steps:
1.
It follows straightforwardly from [34] (§ 5.4) that
p x t | x t 1 | t 1 i = w : x t = f t 1 ( w ) det J f t 1 i ( w ) 1 p w t 1 = w .
Since the variance of n t 1 is small, we can do the following approximation,
p x t | x t 1 | t 1 i det J f t 1 i f t 1 i x t 1 N f t 1 i x t ; 0 , Q det J f t 1 i x t N f t 1 i x t ; 0 , Q
where to simplify the notation we used f t 1 i = f t 1 i 1 .
2.
We have
f t 1 i x t = g t 1 i y t θ t h t 1 i g t 1 i y t a t 1 i g t 1 i y t θ t 1 b t 1 i g t 1 i y t
= ν t i y t + ς t i y t θ t .
Then, from (A2),
J f t 1 i x t = J g t 1 i y t 0 1 b t 1 i g t 1 i y t ,
where ∗ denotes a non-zero term whose value is irrelevant. Then
det J f t 1 i x t = det J g t 1 i y t b t 1 i g t 1 i y t .
3.
Now, using (10) and (A1), we get
p y t , θ t | Z t 1 = p x t | Z t 1 = p x t | x t 1 p x t 1 | Z t 1 d y t 1 θ t 1 i = 1 I ϖ t 1 | t 1 i p x t | x t 1 | t 1 i i = 1 I ϖ t 1 | t 1 i det J f t 1 i x t N f t 1 i x t ; 0 , Q .
But, from (A3),
N f t 1 i x t ; 0 , Q = N ν t i y t + ς t i y t θ t ; 0 , Q .
Now
ν t i y t + ς t i y t θ t Q 1 ν t i y t + ς t i y t θ t = ς t i y t Q 1 ς t i y t θ t 2 + 2 ν t i y t Q 1 ς t i y t θ t + ν t i y t Q 1 ν t i y t = ς t i y t Q 1 ς t i y t θ t 2 2 ς t i y t Q 1 ς t i y t μ t i y t θ t + ς t i y t Q 1 ς t i y t μ t i y t 2 + ν t i y t Q 1 ν t i y t ς t i y t Q 1 ς t i y t μ t i y t 2 = θ t μ t i y t 2 ρ t i y t + ν t i y t Q 1 ν t i y t + ν t i y t Q 1 ς t i y t μ t i y t = θ t μ t i y t 2 ρ t i y t + ν t i y t Q 1 ν t i y t + ς t i y t μ t i y t
Hence
N f t 1 i x t ; 0 , Q = 1 det 2 π Q exp θ t μ t i y t 2 2 ρ t i y t × exp 1 2 ν t i y t Q 1 ζ t i y t = γ t i y t N θ t ; μ t i y t , ρ t i y t ,
4.
Putting (A4) and (A6) into (A5) we obtain
p y t , θ t | Z t 1 i = 1 I ψ t i y t N θ t ; μ t i y t , ρ t i y t i ,
and the result follows.
Proof of Lemma 3. 
If x t 1 = x t 1 | t 1 i , doing a first order Taylor expansion we obtain
y t = g t 1 i e t g t 1 i 0 + J g t 1 i 0 e t .
So
p y t | x t 1 | t 1 i N y t ; g t 1 i 0 , J g t 1 i 0 Q e J g t 1 i 0 .
The result then follows since
p y t | Z t 1 = i = 1 I ϖ t 1 | t 1 i p y t | x t 1 | t 1 i = i = 1 I ϖ t 1 | t 1 i N y t ; g t 1 i 0 , J g t 1 i 0 Q e J g t 1 i 0 .
Proof of Lemma 4. 
Let
L t y = p z t | y t = y .
Recall that N is the dimension of z t . It follows from ([24], Theorem 6) that, for all ϵ R 2 , we can do the following approximation
lim N 1 L t λ t L t Λ t 1 / 2 ϵ + λ t = w . p . 1 exp ϵ T ϵ 2 ,
with
Ξ t ( y ) = log L t y = log N z t ; m y , R .
In view of the above, for large N we have
L t ( y ) L t λ t i exp 1 2 y λ t T Λ t 1 y λ t ,
Hence
p z t | y t = L t y t N y t ; λ t , Λ t .
Proof of Lemma 5. 
From the above we get
p y t | Z t p z t | y t p y t | Z t 1 i = 1 I ϖ t 1 | t 1 i N y t ; λ t , Λ t × N y t ; g t 1 i 0 , J g t 1 i 0 Q e J g t 1 i 0 .
The result then follows since, from [35] (§ 8.1.8),
N y t ; λ t , Λ t N y t ; g t 1 i 0 , J g t 1 i 0 Q e J g t 1 i 0 = α t i N y t ; ξ t i , Ξ t i .

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. [Google Scholar] [CrossRef]
  2. Seco, F.; Jiménez, A.R. Smartphone-Based Cooperative Indoor Localization with RFID Technology. Sensors 2018, 18, 266. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  3. Hallberg, J.; Nilsson, M.; Synnes, K. Positioning with bluetooth. In Proceedings of the 10th International Conference on Telecommunications 2003 (ICT 2003), Papeete, Tahiti, French Polynesia, 23 Feburary–1 March 2003; Volume 2, 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. [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. In 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. [Google Scholar] [CrossRef]
  7. Yang, C.; Shao, H.R. WiFi-based indoor positioning. IEEE Commun. Mag. 2015, 53, 150–157. [Google Scholar] [CrossRef]
  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. [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. [Google Scholar] [CrossRef]
  10. Zafari, F.; Gkelias, A.; Leung, K.K. A survey of indoor localization systems and technologies. IEEE Commun. Surv. Tutor. 2019, 21, 2568–2599. [Google Scholar] [CrossRef] [Green Version]
  11. Schatzberg, U.; Banin, L.; Amizur, Y. Enhanced WiFi ToF indoor positioning system with MEMS-based INS and pedometric information. In 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. In 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. [Google Scholar] [CrossRef] [Green Version]
  14. Wen, Y.; Tian, X.; Wang, X.; Lu, S. Fundamental limits of RSS fingerprinting based indoor localization. In 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. [Google Scholar] [CrossRef] [Green Version]
  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. [Google Scholar] [CrossRef] [Green Version]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [Green Version]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [Green Version]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  25. Wang, W.; Marelli, D.; Fu, M. Fingerprinting-Based Indoor Localization Using Interpolated Preprocessed CSI Phases and Bayesian Tracking. Sensors 2020, 20, 2854. [Google Scholar] [CrossRef]
  26. Thrun, S. Probabilistic robotics. Commun. ACM 2002, 45, 52–57. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [Green Version]
  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. [Google Scholar] [CrossRef] [Green Version]
  29. Wang, X.; Gao, L.; Mao, S.; Pandey, S. DeepFi: Deep learning for indoor fingerprinting using channel state information. In 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. [Google Scholar] [CrossRef]
  31. Xie, Y.; Li, Z.; Li, M. Precise power delay profiling with commodity Wi-Fi. IEEE Trans. Mob. Comput. 2018, 18, 1342–1355. [Google Scholar] [CrossRef]
  32. Silverman, B.W. Density Estimation for Statistics and Data Analysis; CRC Press: Boca Raton, FL, USA, 1986; Volume 26. [Google Scholar]
  33. 3GPP. TR38.855. In Study on NR Positioning Support (Release 16); 3rd Generation Partnership Project (3GPP): Sophia Antipolis, France, 2019. [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 Manual; Technical University of Denmark: Lyngby, Denmark, 2008. [Google Scholar]
Figure 1. Target’s Cartesian coordinates.
Figure 1. Target’s Cartesian coordinates.
Sensors 21 01090 g001
Figure 2. Layout and database points of the empty room. The access point (AP) is placed at the lower-right corner.
Figure 2. Layout and database points of the empty room. The access point (AP) is placed at the lower-right corner.
Sensors 21 01090 g002
Figure 3. Impact of particle numbers on positioning accuracy.
Figure 3. Impact of particle numbers on positioning accuracy.
Sensors 21 01090 g003
Figure 4. Positioning error cumulative distribution (ECD) (empty room).
Figure 4. Positioning error cumulative distribution (ECD) (empty room).
Sensors 21 01090 g004
Figure 5. Tracking result of maximum likelihood particle filter (MLPF) with 10 and 50 particles in an empty room.
Figure 5. Tracking result of maximum likelihood particle filter (MLPF) with 10 and 50 particles in an empty room.
Sensors 21 01090 g005
Figure 6. Layout and database points for the two office rooms. The AP is placed at the lower-right corner of the right room.
Figure 6. Layout and database points for the two office rooms. The AP is placed at the lower-right corner of the right room.
Sensors 21 01090 g006
Figure 7. Positioning ECD (office rooms).
Figure 7. Positioning ECD (office rooms).
Sensors 21 01090 g007
Figure 8. Tracking result of MLPF with 10 and 50 particles in the office rooms.
Figure 8. Tracking result of MLPF with 10 and 50 particles in the office rooms.
Sensors 21 01090 g008
Table 1. Positioning Error (empty room).
Table 1. Positioning Error (empty room).
MethodsMean Squared Error [m 2 ]90% Acc. [m 2 ]
Static positioning1.41533.0437
MLKF0.65061.2848
PF-RSS (1000 particles)12.131028.3569
PF-CSI (1000 particles)2.08345.8151
MLPF (10 particles)0.56071.3724
MLPF (50 particles)0.33701.0891
Table 2. Positioning Error (office rooms).
Table 2. Positioning Error (office rooms).
MethodsMean Squared Error [m 2 ]90% Acc. [m 2 ]
Static positioning2.39625.6935
MLKF11.725550.8279
PF-RSS (1000 particles)8.236618.3872
PF-CSI (1000 particles)2.941811.1606
MLPF (10 particles)0.77551.5712
MLPF (50 particles)0.49390.9970
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wang, W.; Marelli, D.; Fu, M. Dynamic Indoor Localization Using Maximum Likelihood Particle Filtering. Sensors 2021, 21, 1090. https://doi.org/10.3390/s21041090

AMA Style

Wang W, Marelli D, Fu M. Dynamic Indoor Localization Using Maximum Likelihood Particle Filtering. Sensors. 2021; 21(4):1090. https://doi.org/10.3390/s21041090

Chicago/Turabian Style

Wang, Wenxu, Damián Marelli, and Minyue Fu. 2021. "Dynamic Indoor Localization Using Maximum Likelihood Particle Filtering" Sensors 21, no. 4: 1090. https://doi.org/10.3390/s21041090

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop