Skip to main content

Evaluation of range-based indoor tracking algorithms by merging simulation and measurements


Precise location information will play an important role in 5G networks, their applications and services, especially in indoor environments. Ultra-wideband (UWB) technology offers exceptional temporal resolution enabling the emergence of high accuracy ranging-based indoor localization systems. In order to reduce time to market, developers need a reliable, fast and efficient method to evaluate localization and tracking system designs in the selected high-dimensional parameter space. Purely measurement-based performance evaluation of such systems is costly and cumbersome, so we propose the use of a radio frequency (RF) ray-tracing simulator augmented with a noise model based on measurements with localization equipment in real environment. We demonstrate the proposed approach by evaluating the UWB-based two-way-ranging (TWR) localization with the least squares (LS) and with the extended Kalman filter (EKF) tracking algorithms. We analyze the degradation of tracking performance due to time spreading of range measurements. Moreover, on a set of fixed locations we also show that the proposed approach is sufficiently representative for the pure measurement-based evaluation. The results obtained in a reference office environment show that EKF algorithm is twice as efficient and more resilient to the effects of time spreading of range measurements as LS algorithm.

1 Introduction

Precise tracking and localization are gaining the importance in modern applications and services and are among the key enablers of the 5G networks. They are addressing the challenges of application domains as well as supporting the optimization of network performance and improved utilization of radio resources in increasingly densified environments [1]. In outdoor scenarios, global navigation satellite systems (GNSS) augmented by terrestrial cellular and wireless network localization techniques provide sufficient precision and accuracy for most of the applications in 5G networks, they are considered mature and well-tested technology, and are readily available in most of the mobile devices available in the market already today.

Many 5G application domains, however, depend on precise location information also in the indoor environment, such as tracking the inventory, goods and people, navigating robots, and autonomous driving vehicles inside manufacturing facilities, optimizing wireless network resources according to users’ demand.

In indoor environments, satellite signals are generally too weak or degraded to be of any use. Different approaches with special infrastructure are thus used to serve the needs of indoor localization systems, their choice largely depending on the required localization accuracy, equipment availability, and deployment complexity. This localization infrastructure can be a part of the existing communication infrastructure (e.g., WiFi access points) or needs to be installed and maintained separately (e.g., Bluetooth beacons, NFC tags).

One approach for indoor localization and tracking systems is based on signal propagation models. For good performance, these systems mostly rely on extensive measurements and calibration procedures [2, 3]. Another promising approach for a precise and accurate indoor localization is based on the use of ultra-wideband (UWB) pulse radios developed especially for ranging applications with time-of-flight (ToF) measurement capability. These do not require any calibration for a very accurate localization in line-of-sight (LoS) signal propagation conditions [4].

Regardless of the approach, developing reliable and accurate localization and tracking algorithms and especially their performance evaluation require extensive and costly deployment of localization equipment and time-consuming measurement procedures. Moreover, it is difficult to precisely track the moving object and also track the communication between the nodes while studying the impacts of all parameters (e.g., ranging time step, ranging sequence, movement speed) on a final tracking and localization performance. To this end, developers of localization and tracking algorithms need a suitable simulation approach that is considering most of the aspects from the real operating environment. It should enable fast performance evaluation and investigation of the sensitivity of tracking algorithms to various parameters such as speed of movement, ranging update period, localization resolution, computation time.

Radio frequency (RF) ray tracing is a particularly valuable technique in the development of wireless technologies in indoor environments. It is based on a physical channel model that allows far superior prediction of electromagnetic propagation effects than any other stochastic modeling, thus being able to accurately simulate real operating environment from the signal propagation perspective. Accuracy wise, it can only be surpassed by approximations of spatial and temporal derivatives appearing in Maxwell’s equations, but those are computationally infeasible if the wavelength is exceedingly small compared to the size of the modeled environment.

In this article, we propose a simulation approach for evaluation of range-based tracking algorithms. The approach exploits the benefits of a controlled environment of an RF ray-tracing simulator augmented with real environment measurements. This makes the approach able to investigate the sensitivity on the movement, ranging protocol, and geometry specifics, thus ensuring simulator representability. We demonstrate the proposed approach in a reference office environment, modeled and imported in a RF ray-tracing simulation software together with all materials but without furniture. The measurement step in the selected environment introduces the noise which we model by the measurements obtained from actual ranging equipment, complementing the noise-free simulation environment to resemble the real-tracking system behavior. With the proposed simulation approach, we then evaluate the performance of the simple least squares (LS) and the extended Kalman filter-based (EKF) tracking algorithms with the constant velocity walking model on simulated trace-based ranging data. Such simulation approach ensures repeatability of results, non-obtrusive testing and validation of the system for people working in the target environment, and fast execution of multiple iterations in searching through the high-dimensional parameter space for optimal parameters setting.

The main contributions of this paper are

  • A complete simulation-based approach exploiting realistic measurement-based noise model and models of a reference operating environment, movement of traced terminal, and ranging protocol.

  • Evaluation of two reference localization algorithms for different parameter settings focusing on the impact of ranging noise, ranging update period, and walking path resolution.

The rest of this paper is organized as follows. Related work is presented in Section 2. Section 3 describes the proposed simulation-based approach and models used for evaluation of localization and tracking algorithms. In Section 4, the selected reference tracking algorithms are described. In Section 5, the performance evaluation of the reference tracking algorithms is given according to different parameter settings. Finally, Section 6 gives conclusions and outlines the future work.

2 Related work

The main lines of previous research work related to this study are concerned with indoor localization and RF ray-tracing simulation algorithms. Both lines have been extensively investigated in the research community, so we only provide very coarse overview of the related literature with the aim to position the proposed simulation approach for evaluation of ranging-based tracking algorithms.

2.1 Indoor localization

Indoor localization approaches can be classified according to the information they are based on to received signal strength indicator (RSSI)-based methods, angle-of-arrival (AoA)-based methods, and time-based localization methods [3].

The accuracy of RSSI-based localization methods is highly dependent on channel variability due to shadowing, multipath propagation, reflections, channel fading, and so forth [5, 6], and they require extensive environment characterization and periodical (re)calibration. AoA-based localization methods rely on receiving antenna array capability to capture the direction of propagation of the radio wave, which is not practical for resource-constrained wireless devices in indoor environment with emphasized multipath effects, or even feasible if great angle resolution and consequently great localization accuracy are desired [7]. In such environments, time-based localization methods measuring the signal propagation time between a transmitter and a receiver provide a reasonable trade-off between the accuracy and implementation complexity. The baseline time-based localization and tracking algorithms rely on a precise clock synchronization between a transmitter and a receiver and calculate the range from time-of-arrival (ToA) or time-difference-of-arrival (TDoA) [3], so we refer to them also as range-based methods. For more general systems, where no time synchronization between nodes is available or feasible such as assumed in this article, dual-time-of-flight (DToF) or two-way-ranging (TWR) algorithms can be used [8]. This approach requires two-way communication between a tag (i.e., node with the unknown location) and all anchors (i.e., nodes with known locations). A message is exchanged at least two times between a tag and each anchor. The current local time stamp is pinned to a message every time it is received or transmitted as can be seen in Fig. 1. After a full TWR cycle between a tag-anchor pair is completed, four timestamps are accumulated (Tpoll_TX, Tpoll_RX, Tresp_TX, and Tresp_RX) and local clock differences can be eliminated according to (1).

$$ \begin{aligned} \hat{T}_{{\text{TWR}}} & = \frac{T_{{\text{round}}} - T_{{\text{reply}}}}{2}, \; \; \; \; {\text{where}} \\ & T_{{\text{round}}} = T_{{\text{resp\_RX}}} - T_{{\text{poll\_TX}}} \\ & T_{{\text{reply}}} = T_{{\text{resp\_TX}}} - T_{{\text{poll\_RX}}} \\ \end{aligned} $$
Fig. 1
figure 1

Single-sided TWR ranging scheme where Tpoll_TX, Tpoll_RX, Tresp_TX and Tresp_RX represent four ranging timestamps that can be used for ToF calculation [9]

This approach removes the need for time synchronization among the nodes, but relies on a suitable ranging protocol for contention resolution in a system with many tracked nodes and anchors. In case of tracking a moving object, the time required for collecting multiple timestamps in turn to each anchor node introduces errors to the final estimated location since each anchor samples the location at different point in time and space.

2.2 RF ray-tracing

RF ray-tracing technique, adopted from the computer graphics domain, is increasingly used for radio environment characterization particularly in indoor environments. Many RF ray-tracing algorithms have been proposed since first ideas by Ikegami et al. [10] in 1991.

Advanced RF ray-tracing algorithms take into account the majority of paths the real wave-front would traverse and model actual physical phenomena responsible for propagation of electromagnetic waves, in particular reflection and refraction. From the ray handling perspective, most of them fall into three computationally distinct groups. The first, often seen as the brute force approach and used in our simulation tool, effectively traces a large number of rays from the transmitting source in all directions into the scene. The concept of a reception sphere is needed to detect rays passing by the receivers [11]. The algorithms from this group refer to the principle as ray launching [12], pincushion method [13], or ray shooting and bouncing (SBR) [14], which is also a designation used in this article. The second approach aggregates traced rays as ray tubes [15] or beams [16] in order to reduce computational complexity. Finally, the third RF ray-tracing approach [17] goes the furthest by using entire scene surfaces as ray aggregation units.

3 Methods

In this section, we present the entire setup of the RF ray-tracing-based simulation approach for the evaluation of tracking algorithms including the models of the reference environment and movement, and the calibration measurement setup.

3.1 Reference environment model

As a reference environment for simulation and measurements, we selected an office environment which occupies the entire top floor in an office building of dimensions 15.38 m×11.5 m. It consists of eight offices, two toilets, a hallway, and a staircase. The inner walls are made mostly of drywall material with a few reinforced concrete pillars supporting the roof.

The complete environment including the wall and ceiling materials was modeled in a 3D modeling software and imported into a custom RF ray-tracing simulation software described in Section 3.2. The office environment floor plan is depicted in Fig. 2.

Fig. 2
figure 2

Ground plan of a reference 15.38 m × 11.5 m office environment with 21.73 m walking path used in simulations and measurements

Four anchor nodes with known locations are placed in the environment and a walking path for position tracking simulation is generated as described in Section 3.3. Each point on a walking path has a unique set of ranging errors for range measurements to anchor nodes because each position in an environment has different signal propagation conditions. Ranging errors are mostly proportional to the number of walls and their thicknesses the ray propagates through along the signal path.

3.2 RF ray-tracing simulator

The proposed simulation approach can use any RF ray-tracing tool, but to avoid the potential influence or bias to results of any hidden details of the implementation and to have full control over all simulation parameters at the source code level we decided to use our own radio frequency ray-tracing simulatorFootnote 1. It was developed and validated in the course of several applied and industrial projects and is based on the brute force shooting and bouncing rays (SBR) for simulation of ToF measurements. The simulator has already been proven in several projects with the telecommunication industry. It is a highly optimized GPU-based ray tracer using the NVIDIA OptiX ray-tracing engine, which is adapted to the radio frequency simulations. Scene objects are kept in a bounding volume hierarchy entirely on a GPU, with rays generated and traced through the scene in parallel threads. It employs recursive icosahedral grids for ray launching and wave-front double counting avoidance in the form of highly configurable Bloom filters [18].

Calculated channel impulse responses (CIRs) were used to extract expected time-of-flight measurements. CIR is typically modeled as a sum of time-varying number of multipath components in a tap-delayed linear filter and may be formulated as

$$ h(\tau) = \sum\limits_{i=1}^{L} \alpha_{i}\delta(\tau - \tau_{i}), $$

where each of L taps represents a multipath component of polarity sign-extended (±) real amplitude α, multiplied by a time delayed Dirac delta function. Because only the earliest, min τi, component was needed for ToF simulation, the depth of simulation, i.e., the number of interactions each ray is allowed to encounter, was selected based on the maximum number of wall faces to which the direct ray can encounter during traveling on a path from a tag to the anchor. We graphically analyzed the simulation scene and counted the eight faces that the ray can encounter on the longest possible path between a tag and an anchor. We added the three ray encounters as a heuristic increase to the simulation depth limitation to allow more rays to reach the anchor also with some reflections on a path. The resulting RF ray-tracing depth limit was set to 11. Simulated interactions can be reflections and/or refractions. Note that indoor geometry has low number of potential diffraction edges. Further, tracing rays in agreement with the geometrical theory of diffraction [19] can introduce a performance penalty of several orders of magnitude. Therefore, the diffraction phenomenon was not accounted for in our study. Allowing up to 120 dB signal loss per multipath component and initially launching 41.943.042 rays, a single simulation typically took around 5 min to complete.

3.3 Walking path generation

For a walking path generation used in simulations and as a ground truth for measurements in real environment, we developed a simple application with a graphical user interface (GUI). First the scaled map of real environment is loaded into the GUI and several path anchoring points are put on the map by clicking on desired positions on a map. These points represent the successive locations on a final walking path. The points are connected into a high resolution walking path using cubic splines and sampled to a walking path with a resolution of 1 cm. The final walking path with 1 cm resolution consists of 2173 points with full length of 21.72 m. Figure 2 represents generated walking path with positions of four localization anchor nodes. The walking path is further sampled to lower path resolutions (2, 4, 6, 8, 10, and 12 cm) later used to analyze the impact of a ranging time slot length on a tracking performance.

3.4 Impact of movement on the localization accuracy

Several ranging protocols can be used in real TWR localization systems. The simplest to implement are ALOHA [20] random access protocols, where a localization tag randomly sends a blink message containing tag’s ID and an intent for ranging procedure and waits for a short period for any anchor’s response. This scheme is quite ineffective with slow update times when many tag devices need ranging with many anchor nodes. To improve the update rate, a round-robin scheduling scheme can be implemented, where each anchor node has its dedicated time slot to listen for blink messages that represent the start of ranging procedure.

We implemented a simple round-robin ranging protocol, where a tag communicates with four anchors in a cyclically repeating pattern (A0, A1, A2, A3 …) and fixed time delay between two consecutive ranging events. By changing the timing delays, the influence of different sampling frequencies of walking path on a tracking performance can be evaluated. For the evaluation purposes, we selected walking path sampling at 2, 4, 6, 8, 10, and 12 cm. According to [21], average human walking speed can be estimated as 1.4 ms−1. Taking into account the assumed walking speed the time between path samples equals to 14.28 ms, 28.56 ms, 42.84 ms, 57.12 ms, 71.4 ms, and 85.68 ms respectively. Each location estimation is made based on four consecutive range measurements at four consecutive points on a walking path, thus introducing additional estimation error due to movement of a tag.

3.5 Measurement setup

The DW1000 [22] UWB pulse radios from DecaWave were used for ranging error measurements and validation of simulations. Four anchors were placed at identical places in the reference environment as in simulations, and a tag was used for measurements on a predefined walking path.

For the inclusion in the simulation environment, measurement noise was obtained for all four anchor nodes from the calibration point positioned close to the center of the reference environment. For each link between a tag and one of the anchors 10,000 ranges were collected to sufficiently describe the probability distribution function (PDF) of measured ranges representing the measurement noise of the selected tag-anchor pair. Four histograms were created for corresponding tag-anchor pairs and PDF functions were fitted to the measurement distributions using Levenberg-Marquardt algorithm.

The PDFs and histograms for the individual tag-anchor pairs are depicted in Fig. 3. The links between the calibration point and anchors show Gaussian characteristics with standard deviation σ of measurement noise equal to 1.17 cm, 1.89 cm, 2.3 cm, and 2.04 cm for A0, A1, A2, and A3 respectively. Standard deviations of measurement noise include effects of internal clock drifts used for time stamping the messages, imperfections of the first front detection in CIR and limitations in precision imposed by the UWB technology temporal resolution defined by the 499.2 MHz bandwidth.

Fig. 3
figure 3

Graphical representation of measurement probability distributions for all four anchor nodes (A0 to A3). The origin of track position is the closest point to A0

To limit the measurement time and efforts, only 18 points on a walking path were selected. On all 18 point ranges to all 4 anchor nodes were collected. The resulting ranging errors are presented as dots in Fig. 4 alongside the ranging errors obtained by the simulations.

Fig. 4
figure 4

Graphical representation of ranging errors for simulated trajectory (lines) and measured trajectory (dots)

The resulting visualization shows that measurements are correlated with simulations in places where simulated errors are also high. In other cases measured ranging errors typically exceed the ranging errors produced by the simulation. The difference in ranging errors comes from the difference in the dynamic range between the simulator and the measurement hardware. The measured RSSI values for all measurements made in the reference indoor environment are depicted in Fig. 5. The measurements cover all cases from near-field NLoS cases to cases where the received signal strength is at the measurement equipment sensitivity threshold. It can be observed that the dynamic range of measurement equipment is around 50 dB whereas the simulated maximum path loss per multipath component is 120 dB. In the case of real environment measurements, the shortest path signal can already be too weak to reach the receiver’s antenna and by that only the signal from longer less obstructed paths can be detected at the receiver. On the other hand, the simulated loss limit of 120 dB also allowed the detection of such strongly attenuated shorter signal paths.

Fig. 5
figure 5

Graphical representation of measured RSSI values at different anchor distances in the reference indoor environment

4 Reference tracking algorithms

In order to demonstrate the proposed simulation approach, two reference tracking algorithms were selected to evaluate the impact of round-robin ranging scheme time slot sizes on a tracking performance. A simple least squares tracking algorithm is presented in Section 4.1 and a more complex tracking algorithm based on extended Kalman filter is presented in Section 4.2.

4.1 Least squares localization algorithm

The simplest approach for location estimation is based on the least squares estimator. A Euclidean distance between an UWB anchor and UWB tag is defined as

$$ d_{i}=\sqrt{(x_{i}-x)^{2}+(y_{i}-y)^{2}}, $$

where di is the measured range between the ith anchor (xi,yi) and the tag (x,y) with a yet-unknown location.

The system can be rewritten in a matrix form

$$ \mathbf{H}= \left[\begin{array}{ccc} - ~2 x_{1} & - ~2 y_{1} & 1 \\ -~ 2 x_{2} & -~ 2 y_{2} & 1 \\ \vdots & \vdots & \vdots \\ - ~2 x_{N} & - ~2 y_{N} & 1 \\ \end{array}\right] $$
$$ \mathbf{x}= \left[\begin{array}{c} \hat{d}_{1}^{2} - x_{1}^{2} - y_{1}^{2} \\ \hat{d}_{2}^{2} - x_{2}^{2} - y_{2}^{2} \\ \vdots \\ \hat{d}_{N}^{2} - x_{N}^{2} - y_{N}^{2} \\ \end{array}\right], $$

which represents a predefined system of linear equations in a normal form. The location can be estimated using the LS estimator in a normal form

$$ \hat{\boldsymbol{\theta}}=(\mathbf{H}^{T}\mathbf{H})^{-1}\mathbf{H}^{T}\mathbf{x}. $$

4.2 Extended Kalman filter-based localization algorithm

The Kalman filter is the optimal filter minimizing the difference between the true and the estimated states of the system [23]. The procedure of the Kalman filter estimation process consists of a prediction step and an update step. During the prediction step (7), a prediction of a new system state \(\hat {\boldsymbol {x}}^{-}_{k}\) is calculated based on a mathematical kinematic model of a system in a form of a transition function Φk, the system’s previous state \(\hat {\boldsymbol {x}}^{+}_{k-1}\) and an input uk−1. The covariance of the state vector propagation \(\boldsymbol {P}^{-}_{k}\) is calculated using a transition function, the previous state covariance \(\boldsymbol {P}^{+}_{k-1}\), and the process noise covariance matrix Qk−1. The superscript (−) designates the state after prediction and superscript (+) designates the state after the update step.

$$ \begin{aligned} \hat{\boldsymbol{x}}^{-}_{k} &= \boldsymbol{\Phi}_{k} \cdot \hat{\boldsymbol{x}}^{+}_{k-1} + \boldsymbol{\Gamma}_{k} \cdot \boldsymbol{u}_{k-1} \\ \boldsymbol{P}^{-}_{k} &= \boldsymbol{\Phi}_{k} \cdot \boldsymbol{P}^{+}_{k-1} \cdot \boldsymbol{\Phi}^{T}_{k} + \boldsymbol{Q}_{k-1} \end{aligned} $$

In the update step 8, the Kalman gain Kk is first calculated using the predicted state covariance \(\boldsymbol {P}^{-}_{k}\), the measurement function Hk, and the measurement covariance matrix Rk. The Kalman gain controls the magnitude of filter’s use of predicted state estimate \(\hat {\boldsymbol {x}}^{-}_{k}\) over the measurement vector zk. When the measurement covariance magnitude Rk is small, measurements are accurate and filter weighs them more than the less reliable predicted system state. The covariance update \(\boldsymbol {P}^{+}_{k}\) and the system state update after measurement \(\hat {\boldsymbol {x}}^{+}_{k}\) are then calculated as shown in (8).

$$ \begin{aligned} \boldsymbol{K}_{k} &= \boldsymbol{P}^{-}_{k} \cdot \boldsymbol{H}^{T}_{k} \cdot \boldsymbol{[} \boldsymbol{H}_{k} \cdot \boldsymbol{P}^{-}_{k} \cdot \boldsymbol{H}^{T}_{k} + \boldsymbol{R}_{k}\boldsymbol{]}^{-1} \\ \boldsymbol{P}^{+}_{k} &= \boldsymbol{[} \boldsymbol{I} - \boldsymbol{K}_{k} \cdot \boldsymbol{H}_{k} \boldsymbol{]} \cdot \boldsymbol{P}^{-}_{k} \\ \hat{\boldsymbol{x}}^{+}_{k} &= \hat{\boldsymbol{x}}^{-}_{k} + \boldsymbol{K}_{k} \cdot (\boldsymbol{z}_{k} - \boldsymbol{H}_{k} \cdot \hat{\boldsymbol{x}}^{-}_{k}) \\ \end{aligned} $$

The underlying kinematic model defines four system state parameters (xposition x, y position y, velocity in x direction \(\dot {x}\) and velocity in y direction \(\dot {y}\)). The Kalman filter implementation requires the linear system model and linear measurement model [23]. The continuous velocity linear dynamic model (9) is used as a kinematic model but the measurement model is non-linear. When any model of a system is non-linear, the extended Kalman filter (EKF) approach needs to be employed. The idea of EKF is to linearize the non-linear equations of the dynamic model and the measurement model around the current estimation point and subsequently use the linear Kalman filter algorithm on the linearized models.

$$ \boldsymbol{f}_{k}(\boldsymbol{x}_{k-1}, \boldsymbol{u}_{k-1}) = \left[\begin{array}{c} x + \Delta t \cdot \dot{x} \\ y + \Delta t \cdot \dot{y} \\ \dot{x} \\ \dot{y} \\ \end{array}\right] $$

The resulting state transition function of a dynamic model (9) is depicted in (10), where Δt is a time between two consecutive points on a walking path or a corresponding scheduling time slot length.

$$ \boldsymbol{\Phi}_{k} = \left[\begin{array}{cccc} 1 & 0 & \Delta t & 0 \\ 0 & 1 & 0 & \Delta t \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{array}\right] $$

To model the process noise, we assume that the velocities (\(\dot {x}, \dot {y}\)) are constant. But the movement of a person is not constant because a person is not moving along a straight line. We can assume the velocity change by a continuous time zero-mean white noise w(t). Because the implementation of the filter is discrete, we need a projection of the continuous noise to the instant t by our process model Φ(t). We define the continuous noise Qc with a matrix (11)

$$ \boldsymbol{Q}_{c} = \left[\begin{array}{cccc} 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{array}\right] \phi_{S}, $$

where ϕS is the spectral density of the white noise.

With the integration of the term ΦQcΦT on the [0,Δt] time interval, we get the process noise matrix (12).

$$ \boldsymbol{Q} = \left[\begin{array}{cccc} \frac{\Delta{t}^{3}}{3} & 0 & \frac{\Delta{t}^{2}}{2} & 0 \\ 0 & \frac{\Delta{t}^{3}}{3} & 0 & \frac{\Delta{t}^{2}}{2} \\ \frac{\Delta{t}^{2}}{2} & 0 & \Delta{t} & 0 \\ 0 & \frac{\Delta{t}^{2}}{2} & 0 & \Delta{t} \\ \end{array}\right] \Phi_{s} $$

The measurement model is as in the LS localization algorithm defined by (3) representing the Euclidean distance between the tracked object and the anchor device. The measurement model is non-linear, and we need to linearize it by evaluating its partial derivative at the current process state xk. The linearized measurement matrix is represented in (13)

$$ \boldsymbol{H} = \left[\begin{array}{cccc} \frac{(x - x_{i})}{\sqrt{(x - x_{i})^{2} + (y - y_{i})^{2})}} & \frac{(y - y_{i})}{\sqrt{((x - x_{i})^{2} + (y - y_{i})^{2})}} & 0 & 0 \\ \end{array}\right] $$

The measurement noise matrix R in our case is a matrix with dimensions 1×4 and is assumed to be the white Gaussian process. Four measured ranges are used during the update step of the EKF filter. If the number of available anchors increases, the dimensions of the measurement noise matrix R and the measurement matrix H change.

We assume that the noise for each anchor is normally distributed around the mean which enables the use of different measurement noise levels for different anchors. According to the localization measurements in the real environment, the worst case scenario (Fig. 3) measurement noise standard deviation σ = 2.30 cm was used in the subsequent performance evaluation, which gives the variance σ2=5.29 cm2.

5 Results and discussion

In order to demonstrate the proposed simulation approach, we evaluated the performance of the two selected reference tracking algorithms, focusing on the impact of measurement noise and the duration of round-robin ranging procedure time slot.

Figure 6 shows the actual performance of the LS and EKF tracking algorithms in comparison to the actual walking path. We can visually analyze the performance in different situations and see the effects of different parameter settings on the actual tracking performance, which is useful during the localization and tracking system development.

Fig. 6
figure 6

The performance of LS and EKF tracking algorithms in comparison to the actual (ground truth) walking trajectory

The LS tracking algorithm gives very poor results because it lacks the inclusion of any kind of system information in the process of localization, where input information (measured or simulated ranges) directly affects the result. The EKF algorithm, in contrast, uses the predefined kinematic model and measurement noise model for actual output filtering. The kinematic model according to the defined or expected system dynamics prevents larger output fluctuations in the presence of unexpected input signal disturbances. In other words, if the filter expects that according to the kinematic model, the speed of the tracked object in single step cannot change for more than 0.1 ms−1, the output will not change much despite the current input suggesting the sudden change of 10 ms−1.

To evaluate the influence of the input information on the performance of tracking algorithms, we defined the following four evaluation cases with different combinations of ground truth information (i.e., actual Euclidean distance), simulated ranging and the presence of measurement noise:

  • The actual Euclidean distance between an anchor and a tag.

  • The actual Euclidean distance with added measurement noise.

  • The simulated distance between an anchor and a tag.

  • The simulated distance with added measurement noise.

In Fig. 7, the performance for all 8 combinations between the 2 tracking algorithms and the 4 input data options are depicted. The simulations were performed for 6 different time-slot durations: 14.28 ms, 28.56 ms, 42.84 ms, 57.12 ms, 71.4 ms, and 85.68 ms. The results indicate that the measurement noise (i.e., the measurement noise of sensors excluding the ranging errors caused by NLoS and multipath propagation) has no significant influence on the tracking performance. With the increasing time-slot size, we get the increased tracking error. The actual Euclidean distance is free of multipath error, which is a major error contribution in the RF ranging. This can be seen in the cases using simulated ranges (i.e., LS sim and EKF sim in Table 1) as 80 cm worse mean error for the EKF and up to twice as much for the LS algorithm compared to tracking with the Euclidean distances (i.e., LS true and EKF true in Table 1).

Fig. 7
figure 7

The influence of the ranging slot length on the size of mean tracking errors

Table 1 Mean and maximum values of tracking errors obtained by the LS and EKF algorithms with simulations and measurements

We can also observe the performance of tracking errors for different aspects of the observed error data. With respect to the maximum error, the EKF algorithm performs even better. The maximum error shown in Table 1 is up to 4.5 times lower in the EKF experiments than the corresponding error in the LS experiments. All performance results in terms of maximum and mean tracking errors are represented in Table 1.

6 Conclusions

For the developers of tracking systems the measurement of all expected trajectories in real environments is too complex and time consuming to be done in full. As an alternative, we propose an RF ray-tracing-based simulation approach for performance evaluation of tracking algorithms using very limited number of localization measurements for the calibration and characterization of the measurement noise model. Although RF ray-tracing simulations are also time consuming, the required human involvement is significantly lower compared to the measurements. Moreover, specialized measurement equipment is not needed, and the chance for the introduction of human errors is minimized.

We demonstrated with the case of LS and EKF tracking algorithms that the proposed combination of simulations and measurements can be of great value in the design of range-based tracking algorithms. The simulation of round-robin scheduling for ToF ranging showed negative correlation of the ranging time-slot durations on the final tracking outcome. The errors introduced by the round-robin scheduling come from the fact that each position of a moving tag in a dynamic environment is estimated from ranging samples measured at different points in time and space. Therefore, the round-robin scheduled TWR tracking systems are appropriate for mostly stationary or slowly moving objects, or in applications with looser tracking accuracy and precision requirements.

As part of future work, a comparison between the round-robin and some more sophisticated ranging scheduling protocols is planned to find an efficient ranging protocol for tracking in wireless sensor networks, especially in dense deployments with many devices present.

Other indoor localization-related problems can also be more efficiently addressed by calibrated simulations. A very important aspect of indoor localization and tracking system deployment is optimization of anchor positions and their number in a target environment. Using augmented simulations, the optimal and cost-efficient anchor deployment can be planed in advance.

Availability of data and materials

The datasets used and/or analyzed during the current study are available from the corresponding author on a reasonable request.


  1. Ray-tracing simulator is publicly available at as a part of project L2-7664 which co-funded this study.



Fifth generation




Channel impulse response




Extended Kalman filter


Global navigation satellite systems


Graphical user interface




Least squares


Near-field communication




Probability distribution function


Radio frequency


Root mean square


Received signal strength indicator


Shooting and bouncing












  1. RD Taranto, S Muppirisetty, R Raulefs, D Slock, T Svensson, H Wymeersch, Location-aware communications for 5G networks: How location information can improve scalability, latency, and robustness of 5G. IEEE Signal Proc. Mag.31(6), 102–112 (2014).

    Article  Google Scholar 

  2. A Khalajmehrabadi, N Gatsis, D Akopian, Modern WLAN fingerprinting indoor positioning methods and deployment challenges. IEEE Commun. Surv. Tutor.19(3), 1974–2002 (2017).

    Article  Google Scholar 

  3. N Patwari, JN Ash, S Kyperountas, AO Hero, RL Moses, NS Correal, Locating the nodes: cooperative localization in wireless sensor networks. IEEE Signal Proc. Mag.22(4), 54–69 (2005).

    Article  Google Scholar 

  4. S Gezici, Z Tian, GB Giannakis, H Kobayashi, AF Molisch, HV Poor, Z Sahinoglu, Localization via ultra-wideband radios: a look at positioning aspects for future sensor networks. IEEE Signal Proc. Mag.22(4), 70–84 (2005).

    Article  Google Scholar 

  5. H Ahn, W Yu, Environmental-adaptive RSSI-based indoor localization. IEEE Trans. Autom. Sci. Eng.6(4), 626–633 (2009).

    Article  Google Scholar 

  6. K Wu, J Xiao, Y Yi, D Chen, X Luo, LM Ni, CSI-based indoor localization. IEEE Trans. Parallel Distrib. Syst.24(7), 1300–1309 (2013).

    Article  Google Scholar 

  7. H Shao, X Zhang, Z Wang, Efficient closed-form algorithms for AOA based self-localization of sensor nodes using auxiliary variables. IEEE Trans. Signal Proc.62(10), 2580–2594 (2014).

    Article  MathSciNet  Google Scholar 

  8. H Kim, Double-sided two-way ranging algorithm to reduce ranging time. IEEE Commun. Lett.13(7), 486–488 (2009).

    Article  Google Scholar 

  9. DW, 1000 User Manual, Version 2.11. (DecaWave, 2017). Accessed 1 June 2019.

  10. F Ikegami, T Takeuchi, S Yoshida, Theoretical prediction of mean field strength for urban mobile radio. IEEE Trans. Antennas Propag.39(3), 299–302 (1991).

    Article  Google Scholar 

  11. Z Yun, MF Iskander, Ray tracing for radio propagation modeling: Principles and applications. IEEE Access. 3:, 1089–1100 (2015).

    Article  Google Scholar 

  12. N Noori, AA Shishegar, E Jedari, in 2006 IEEE Antennas and Propagation Society International Symposium. A new double counting cancellation technique for three-dimensional ray launching method, (2006), pp. 2185–2188.

  13. Z Chen, HL Bertoni, A Delis, Progressive and approximate techniques in ray-tracing-based radio wave propagation prediction models. IEEE Trans. Antennas Propag.52(1), 240–251 (2004).

    Article  Google Scholar 

  14. Y Tao, H Lin, H Bao, GPU-based shooting and bouncing ray method for fast RCS prediction. IEEE Trans. Antennas Propag.58(2), 494–502 (2010).

    Article  Google Scholar 

  15. H Suzuki, AS Mohan, Ray tube tracing method for predicting indoor channel characteristics map. Electron. Lett.33(17), 1495–1496 (1997).

    Article  Google Scholar 

  16. A Schmitz, T Rick, T Karolski, T Kuhlen, L Kobbelt, Efficient rasterization for outdoor radio wave propagation. IEEE Trans. Vis. Comput. Graph.17(2), 159–170 (2011).

    Article  Google Scholar 

  17. JW McKown, RL Hamilton, Ray tracing as a design tool for radio networks. IEEE Netw.5(6), 27–30 (1991).

    Article  Google Scholar 

  18. R Novak, Bloom filter for double-counting avoidance in radio frequency ray tracing. IEEE Trans. Antennas Propag.67(4), 2176–2190 (2019).

    Article  Google Scholar 

  19. JB Keller, Geometrical theory of diffraction . J. Opt. Soc. Am.52(2), 116–130 (1962).

    Article  MathSciNet  Google Scholar 

  20. F Baccelli, B Blaszczyszyn, P Muhlethaler, An aloha protocol for multihop mobile wireless networks. IEEE Trans. Inf. Theory. 52(2), 421–436 (2006).

    Article  MathSciNet  Google Scholar 

  21. JS Hu, KC Sun, CY Cheng, A kinematic human-walking model for the normal-gait-speed estimation using tri-axial acceleration signals at waist location. IEEE Trans. Biomed. Eng.60(8), 2271–2279 (2013).

    Article  Google Scholar 

  22. DW, 1000 Datasheet, Version 2.09. (Decawave, 2015). Accessed 1 June 2019.

  23. R Zekavat, RM Buehrer, Handbook of Position Location: Theory, Practice and Advances, 1st edn. (Wiley-IEEE Press, Hoboken, New Jersey, 2011).

    Book  Google Scholar 

Download references


This work was partly funded by the Slovenian Research Agency (Grants no. P2-0016 and L2-7664) and the European Community under the H2020 eWINE (Grant no. 688 116) and SAAM (Grant no. 769661) projects.

Author information

Authors and Affiliations



KB contributed in conceptualization, software and hardware development, investigation, methodology, simulations, result analysis, draft manuscript writing, manuscript reviewing, and editing. RN contributed in conceptualization, RF ray-tracing simulator software development, investigation, simulations, validation, draft manuscript writing, manuscript reviewing, and editing. MM contributed in the conceptualization and positioning of the study, reviewing and editing the manuscript, and funding acquisitions. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Klemen Bregar.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher’s Note

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

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bregar, K., Novak, R. & Mohorčič, M. Evaluation of range-based indoor tracking algorithms by merging simulation and measurements. J Wireless Com Network 2019, 173 (2019).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • Indoor position tracking
  • Ultra-wideband
  • RF ray-tracing
  • Tracking algorithm evaluation