Indoor Position Estimation using NLoS Information by WirelessDistance Sensors
Tomoya Itsuka1 and Ryo Kurazume2
Abstract— This paper proposes a method for non-line-ofsight (NLoS) position estimation utilizing wireless distancesensors. Recently, the accuracy of wireless distance sensors
that use ultra-wideband (UWB) or ultrasonic technologies tomeasure the distance between two sensor devices has increased
signiﬁcantly. By placing these sensors in the environment,
it is possible to precisely determine the position of mobile
robots in indoor environments. Owing to reﬂections in theenvironment, these sensors have a large measurement error in
NLoS conditions, limiting their applicability to environmentsthat satisfy the line-of-sight (LoS) condition. This study aims
to develop a stable method for estimating the position of mobile
robots in indoor environments, including NLoS conditions,using wireless distance sensors. Experiments were conductedin two real environments: one with obstacles in front of the
beacon and one with dynamic obstacles. In both cases, thecombining 2D-LiDAR and wireless distance sensors using the
proposed method considering NLOS was more accurate thanthe method considering LoS only.

I. INTRODUCTION
Autonomous robot navigation requires a reliable positionestimation method. The GPS can provide a highly accurate
location on a map in outdoor environments. However, GPSsignals cannot be acquired indoors owing to obstructions
created by roofs and walls.
One of the most popular position estimation methods
for indoor robots is the adaptive Monte Carlo localization(AMCL) method, which compares the surrounding geometry
obtained from a 2D-LiDAR to a pre-constructed occupied
grid map. However, reliable location estimation becomeschallenging in environments with numerous simple or complex shapes or shapes with similar characteristics. Additionally, the estimation may fail because of the inconsistencies
between the map and the actual environment, such as thoseoccurring due to the movement of objects or the modiﬁcationof ﬂoor plans. Furthermore, it is difﬁcult to return to thecorrect position once the robot’s position has been incorrectly
estimated.
Recently, the accuracy of wireless distance sensors that use
ultra-wideband (UWB) or ultrasonic technologies to measure
the distance between two sensor devices has increased signiﬁcantly. By placing these sensors in the environment, it ispossible to precisely determine the position of mobile robots
in indoor environments.
1 TomoyaItsuka is with Graduate School of Information
Science and Electrical Engineering, Kyushu University, Japan.

itsuka@irvs.ait.kyushu-u.ac.jp
2 Ryo
KurazumeiswithFacultyofence and Electrical Engineering, Kyushu

kurazume@ait.kyushu-u.ac.jp

Information
SciUniversity, Japan.

Fig. 1: Use of ceiling reﬂection. If there is an obstacle
between the two beacons to be measured, the reﬂection pathis mainly measured. In addition to the real coordinates, theestimation uses the coordinates of the beacon specularly
reﬂected from the ceiling.
However, these sensors have a large measurement error
in NLoS (non-line-of-sight) condition due to reﬂections in
the environment, and thus the applicable environments arelimited which satisﬁes the LoS (line-of-sight) condition.
In this study, we propose a position estimation method
using wireless distance sensors that also considers the NLoS
condition. In the NLoS condition, wireless distance sensors
observe a large measurement error owing to reﬂectionsin the environment. However, by considering the possible
reﬂection path and combining it with the AMCL method,precise position estimation becomes possible even in NLoS
conditions. This paper presents the proposed method andexperimental results obtained using ultrasonic sensors incomplex environments.
II. RELATED WORKIn the context of simultaneous localization and mapping(SLAM), robot pose estimation by combining 2D-LiDAR
and beacons is being investigated, particularly in featurelesstunnel and corridor environments where experiments havebeen conducted [1][2].
Beacon-based methods are subject to errors due to signal
reﬂection and transmission when there are obstacles between
the measurement beacons (i.e., NLoS). Previous research
has addressed the identiﬁcation and mitigation of NLoS
conditions [3]. Also, studies have been conducted on the useof reﬂective paths due to interior walls [4][5]. These methods
also model the reﬂection path by considering a virtual beaconas shown in Fig. 1.
In [4], position estimation with a single ultrasonic beacon
is proposed by capturing delayed waveform peaks due toreﬂections as well as the direct path of ultrasonic waves.
However, the ﬁrst peak must be caused by a direct path andthis method cannot be applied to environments where direct

waves do not reach. In [5], the position estimation using Time
Difference of Arrival (TDoA) by three or more beacons in
NLoS condition is proposed. However, identifying whether
the measured distance is due to direct or reﬂected paths istime-consuming beacause all combinations of real and virtual
beacons must be examined.
This research aims to develop a position estimation
method for indoor robots utilizing reﬂected wave paths,
allowing the robot to operate in a stable manner even when
NLoS is caused by dynamic obstacles, such as pedestrians.
We utilize a Time of Arrival(ToA)-based ultrasonic beaconas the wireless distance sensor and a particle ﬁlter fora position estimation. Each particle identiﬁes whether themeasured distance is caused by a direct or reﬂected path.
Therefore, the proposed method can be applied from a single
beacon and can be easily added to environments where
estimation using LiDAR is difﬁcult.
III. HARDWARE
In this study, an ultrasonic beacon [6] manufactured by
Marvelmind, Inc., was used as a wireless distance sensor todetermine the distance from a known environmental point.
This ultrasonic beacon includes a beacon body capable oftransmitting and receiving ultrasonic waves as well as amodem to control multiple beacons. The beacon is comprisedof eight different beacons with varying transmission frequencies. Additionally, regardless of the beacon type, all beacons
can receive ultrasonic waves with varying frequencies.
Furthermore, we experimented with an inverse architecture(IA) setup[6] where ultrasonic waves were transmitted froma beacon placed in the environment and received by a beacon
mounted on the robot.
IV. MEASUREMENT ACCURACY IN LOS/NLOS
CONDITIONS
Experiments were conducted in a room with walls on
all four sides and obstacles between beacons to verify theaccuracy of the measurement distance under LoS and NLoS
conditions. The dimensions of the room were approximately
9m × 9m and the ceiling height hc = 3.49[m]. The transmitting frequencies were fT X = 31kHz and 45kHz. The
transmitting beacon was mounted on the wall at a heightof hT X = 1.8m from the ﬂoor, while the receiving beacon
was placed at a height of hRX = 0.7m. The obstacles were
wooden walls (desks) with a height of hO = 1.82m.
We measured the distance between the transmitting andreceiving beacons when the receiving beacon was placed
1–8 m (1 m increments), away from the wall under three
1 no obstacle (LoS), ⃝2 obstacle at x = 1.0m
conditions: ⃝3 obstacle
from the transmitting beacon (NLoS-1m), and ⃝at x = 2.0m from the transmitting beacon (NLoS-2m). For
each condition, the distance was measured 1000 times, andthe average distance was calculated.
The results are shown as box plots and scatter plots in Fig.
3. For x = 1.0m in the NLoS-1m condition and x = 2.0m in
the NLoS-2m condition, measurements were taken as close
to the desk as possible. The theoretical values of the direct(a) LoS. Blue arrows represent the distance in a straight
line, while red arrows represent the path for reﬂection by
the ceiling.

(b) NLoS-1m(c) NLoS-2m

Fig. 2: Experimental setup∗

distance d and reﬂection distance from the ceiling dr,∗ arealso plotted.
d∗= |xRX − xT X |
 

x
0
=  0 − 0 
hRX
hT X




dr,∗




0
−

0
= 
hRX
hc + (hc − hT X )
x
0

(1)



(2)

As a result, the direct distance between beacons can bemeasured with high accuracy in an environment with no
obstacles (LoS). In an environment with obstacles (NLoS1m, NLoS-2m), the measured distance is greater and closer
to the ceiling reﬂection path than in the absence of obstacles.
In environments where the beacon is in contact with an
obstacle, such as during the 1-meter measurement at NLoS1m and the 2-meter measurement at NLoS-2m, the reﬂection
path from the ceiling is also blocked, resulting in sparsemeasurements.
V. PROPOSED METHOD
The proposed method aims to achieve stable and preciseindoor position estimation by incorporating the likelihoodfrom wireless distance sensors under NLoS conditions into
the AMCL, which is widely used for indoor mobile robots.
A. Adaptive Monte-Carlo localization
AMCL [7] is a particle ﬁlter-based localization method.
The particle ﬁlter maintains a set of candidate points as aset of particles and estimates position by repeating the steps
below:• Prediction Step
Consider the odometry as a control signal ut , andmove each particle by sampling from the motion modelp(xt |ut , xt−1 ).
• Observation Step

Fig. 3: Measurement Experimental Results. Box-and-whisker and scatter plots are depicted. The horizontal axis is thehorizontal distance between receiving and transmitting beacons [m], and vertical axis is the measured value [m]. The blue
and red dotted lines are the theoretical values of the direct and ceiling reﬂection paths, respectively. The measured distancesconsiderably coincide in most conditions, and the box-and-whisker diagram is collapsed into a horizontal line.
The measurement model p(zt |xt , m) is used to calculate
the likelihood from the sensor signal, and each particle
is weighted.
The likelihood ﬁeld model [7] is used in this study tomatch the 2D-LiDAR and the environmental map.
• Resampling Step
New particles are distributed from the distribution ofweighted particles.
In this study, we add an observation step for the integrationof beacons using navigation2-amcl[8], a well-known implementation of the AMCL. For simplicity, random particle
injection and KLD sampling were not performed, and thenumber of particles was kept constant.
B. Add likelihood based on beacon distance information
A measurement model was added in order to use thedistance measured by the beacon for the observation step
described in the previous section. The likelihood based on
beacon distance information was implemented using thebeam model [7].
• Distribution by measurement error
First, the ideal measurement distance z ∗ is calculated
from the particle positions and beacon coordinates on
the map. The measurement noise is simulated by assum2,
ing a normal distribution with standard deviation σhit∗
centered on z .
2phit (zt |xt , m) = N (zt ; zt∗ , σhit)•

prand (zt |xt , m) =

1
zmax

0

if 0 ≤ zt < zmax
otherwisep(zt |xt , m) = whit · phit + wrand · prand(5)

C. Use of ceiling reﬂection
As an algorithm that also utilizes the reﬂected path of theceiling of a beacon, we used a virtual beacon that is specularly reﬂected by the ceiling, as shown in Fig. 1. Because
there are two possible coordinates for one environmental beacon (real coordinates and specular reﬂection coordinates), thecoordinates to be adopted were determined using maximum
likelihood estimation based on the likelihood calculated by
the observation model in the previous section. This algorithm
is shown in Algorithm 1.
∗,d1 direct distance z
from theFirst, we compute the ⃝tbeacon on the map to the position of the particle, and the∗,r
2 reﬂection path distance z⃝
obtained from the position mrtof the virtual beacon specularly reﬂected on the ceiling. For
each of these distances (zt∗,d , zt∗,r ) calculated from the map,the actual observed value zt is placed into the beam model toobtain the likelihood. Finally, the likelihoods obtained by the
1 direct distance and the ⃝2 reﬂection path are compared,⃝
and a larger likelihood is adopted.
D. Use of reﬂective pathways other than ceilings(3)

Distribution by random measurements
Assume a uniform distribution over the observable
range as the distribution in case of a random observation. The maximum value of the sensor is simulated
as zmax .
(In this study, an observation model using beacons wasconstructed by combining these weighted models. The model
was constructed by adding these weights, where whit +wrand = 1.

(4)

In reality, the measured distance may not be the ceilingreﬂection path at the time of the NLoS, and a large error due
to unexpected reﬂections may be added. Even so, because thereﬂected path is measured, the measured distance is greaterthan the actual direct distance from the environmental
beacon to the robot. As a result, even if measurements are
obtained as a result of unexpected reﬂections, this property
can be used to loosely constrain the robot.
When using the observation model (Algorithm 1), an
exception was made when the direct path calculated from all

Algorithm 1 Observation model
Require: zt : Measuring distance
Require: xt := (x, y, θ): State of one particle
Require: m := (mx , my , mz ): Environment side beacon
coordinates
Require: hr : Height of robot side beacon
Require: hc : Ceiling height
Ensure: wt : Particle weight
1: function MEASUREMENT (zt , xt , m, hr , hc , wt )2:
zt∗,d ← |xt − m|2)
3:
wtd ← zhit · N (zt ; ztd,∗ , σhit
4:
if zt < zmax then1
5:
wtd ← wtd + zrand · zmax
6:
end if7:
mr ← (mx , my , hc + (hc − mz ))8:zt∗,r ← |xt − m∗,r |2)
9:
wtr ← zhit · N (zt ; zt∗,r , σhit
10:
if zt < zmax then111:
wtr ← wtr + zrand · zmax
12:
end if13:
wt ← max(wtd , wtr )14:
return wt
15: end function
particles in the current particle distribution Xt , the predictedceiling reﬂection values zt∗,d , zt∗,r is evidently far from theobservation zt .
∀xt ∈ Xt , |zt − zt∗,d (xt )| > σth ∧ |zt − zt∗,r (xt )| > σth (6)In real-world experiments, when the distance between theobservation and σth = 1.5[m] or more, the observation is notweighted by the observation model (Algorithm 1) because
it is considered that the observation is not caused by adirect path or ceiling reﬂection path. Instead, at least the true
posture is considered to be inside the measurement distance.
We set the weights of particles outside the measurement
distance to zero, and loosely constrained the weights ofparticles inside to be normalized.
VI. EXPERIMENTS
The robot equipped with the beacon navigated manuallyalong the path shown in Fig. 4a in two real environments:
1 ) and one with
one with obstacles in front of the beacon (⃝2 ). The data logs of various sensors
dynamic obstacles (⃝were obtained by manually running the robot along the pathshown in Fig. 4a. In this experiments, the visual odometry
using a 6D SLAM module (SiNGRAY AExlam80/T, HMS)is used.
The results for these two environments are shown in Figs.
5-7 depicts how the direct path/ceiling reﬂection path isdiscriminated for each particle during the observation update.
It can be observed that the particle distribution improved
with the addition of the beacon. Even when only the ceilingreﬂection path is available in the environment because ofan obstacle (desk) (Fig.7a), the ceiling reﬂection path isS(a) Environmental map. Beacons are placed at a height of 1.8 m
in the four corners of the room (marked with a star). The beacons
are mounted on the robot at a height of 0.5 m. The robot manuallyruns counterclockwise and clockwise from the starting point in thelower left corner while collecting measurement data.

1 Obstacles. Obstacles(b) ⃝(1.8-meter-high desks marked
with orange circles) are placedin front of transmission beacons (red arrows).

2 People around the(c) ⃝robot. Two people walk infront of the robot, while one
walks behind it.

Fig. 4: Experimental setup
correctly identiﬁed and used. Even in an environment withdynamic obstacles and unstable beacon-based distance measurement, the measured distance can be seen to differentiate
between the direct path, ceiling reﬂection path, and others.
A motion-capture camera was also installed in the environment to verify the accuracy of the estimation. There
were eight motion capture cameras installed at a height ofapproximately 2.5 meters. We set up a 2 m x 2 m rectangle as
the robot’s running path, which was used to measure motion
capture.
Five estimation methods were compared: combining LiDAR(Section V-A), beacon (V-B), reﬂection (V-C), andoutlier methods (V-D). As in the previous experiment, therobot was manually driven in two real environments: one
with obstacles in front of the beacon, and the other withpeople around it.
The resulting positions obtained from the motion capture
camera were used as the ground truth, and the average error
for each combination of methods is shown in Table I. Errortransitions are shown in Fig. 8, and the respective estimations
are shown in Figs. 9-10.
As a result, the estimation method combining all methods (v) shows the highest performance when obstacles arepresent. On the other hand, in the case where people walkaround the robot, estimation methods (iv) and (v) show thehighest performance, with similar values.
In contrast, estimation methods (ii) and (iii), which do
not consider outliers, exhibit large positioning errors. In
these methods, once a large measurement is taken for somereason, such as multiple reﬂections, the estimated position
becomes inaccurate and varies signiﬁcantly. Note that inthese experiments, when the outlier model was selected,
the rejection of loose constraints did not work effectively
because all particles were within the measured distance inmost cases.
These results suggest that the estimation method that
includes reﬂection paths is effective for estimating NLoS
signals caused by large obstacles, whereas the outlier method
may be effective for estimating NLoS signals caused bypeople in the environment who appear suddenly.
The current method only considers ceiling reﬂections andtreats other reﬂections as outliers. Future work will include
the addition of other reﬂections, such as from walls andﬂoors, to make the method more accurate and robust. The
effectiveness of the loosely constrain in the outlier model
will also be further investigated.

1 Results when obstacles exist.
(a) ⃝VII. CONCLUSIONSIn this study, we propose a position estimation methodthat combines a wireless range sensor and 2D-LiDAR. In
particular, to solve the NLoS problem of wireless range
sensors, which occurs in the presence of dynamic obstacles,
we propose a method that utilizes reﬂections from the ceilingby arranging the sensors in an ingenious manner. We willcontinue to conduct experiments in real environments todevelop an indoor location-estimation method that can deal
with dynamic obstacles.

2 Result when people walk around the robot.
(b) ⃝Fig. 7: Categories of particles estimating the direct pathor ceiling reﬂection. Categories of particles for the beacon
are in the lower right corner of the map. The horizontal axis
represents the number of updates. (Left vertical axis) Blue:The number of particles used to estimate the direct path,Green: ceiling reﬂection, White: The number of particles
whose predicted and measured values differ by more thanσth . Total number of particles is 1000. (Right vertical axis)
Red: Distance measured by the beacon is in the lower rightcorner of the map.
processing infrastructure, integrating physical and virtual
domains” (funding agency: NEDO).
R EFERENCES(a) 2D-LiDAR only(b) Proposed method (2D-LiDAR+ beacon)

1 Results when obstacles exist. Estimated positions
Fig. 5: ⃝and particle distributions are measured at regular time intervals.

(a) 2D-LiDAR only(b) Proposed method (2D-LiDAR+ beacon)

2 Result when people walk around the robot.
Fig. 6: ⃝Estimated positions and particle distributions are measured
at regular time intervals. Two people walked in front of therobot and one walked behind it. A 2D-LiDAR measures 180◦
in front of the robot.

ACKNOWLEDGMENT
This work was partially supported by JST, the establishment of university fellowships towards the creation of science
technology innovation, Grant Number JPMJFS2132, and the
Cabinet Ofﬁce (CAO), Cross-ministerial Strategic Innovation Promotion Program (SIP), “An intelligent knowledge[1] Y. Song et al., “UWB/LiDAR Fusion For Cooperative RangeOnly SLAM,” in 2019 International Conference on Robotics
and Automation (ICRA), vol. 2019-May.
IEEE, may 2019,
pp. 6568–6574. [Online]. Available: http://arxiv.org/abs/1811.02854
https://ieeexplore.ieee.org/document/8794222/[2] W. Zhen and S. Scherer, “Estimating the Localizability in Tunnel-like
Environments using LiDAR and UWB,” in 2019 International
Conference on Robotics and Automation (ICRA), vol. 2019May. IEEE, may 2019, pp. 4903–4908. [Online]. Available:
https://ieeexplore.ieee.org/document/8794167/[3] J. Khodjaev et al., “Survey of NLOS identiﬁcation and error
mitigation problems in UWB-based positioning algorithms for
dense environments,” annals of telecommunications - annales destélécommunications, vol. 65, no. 5-6, pp. 301–311, jun 2010. [Online].
Available: http://link.springer.com/10.1007/s12243-009-0124-z[4] E. Dijk, K. van Berkel, R. Aarts, and E. van Loenen, “Ultrasonic 3d
position estimation using a single base station,” in Ambient Intelligence,
E. Aarts, R. W. Collier, E. van Loenen, and B. de Ruyter, Eds. Berlin,
Heidelberg: Springer Berlin Heidelberg, 2003, pp. 133–148.
[5] K.-W. Kim, J. Kwon, C.-G. Lee, and J. Han, “Accurate indoor location tracking exploiting ultrasonic reﬂections,” IEEE Sensors Journal,
vol. 16, no. 24, pp. 9075–9088, 2016.
[6] “Marvelmind robotics,” https://marvelmind.com/, accessed: 2022-0701.
[7] S. Thrun et al., Probabilistic Robotics (Intelligent Robotics and Autonomous Agents). The MIT Press, 2005.
[8] S. Macenski et al., “The marathon 2: A navigation system,” in 2020
IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS), 2020, pp. 2718–2725.

(i) LiDAR
1. Obstacles
2. People around the robot

0.250
0.311

(ii) LiDAR+Beacon
0.818
0.971

(iii) LiDAR+Beacon +Reﬂection
2.864
2.032

(iv) LiDAR+Beacon +Outlier
0.294
0.162

(v) LiDAR +Beacon+Reﬂection +Outlier
0.137
0.160

TABLE I: Mean Position Estimation Error [m]. In methods (ii) and (iii), tracking is signiﬁcantly off from the middle ofthe operation, and the values are larger.

1 Error when obstacles exist.
(a) ⃝2 Error when people walk around the robot.
(b) ⃝Fig. 8: Error per time. Only the Y-axis scale differs between the upper and lower ﬁgures.

(a) Ground truth (VICON)(b) 2D-LiDAR(a) Ground truth (VICON)(b) 2D-LiDAR(c) 2D-LiDAR + Beacon(d) 2D-LiDAR + Beacon + Reﬂection(c) 2D-LiDAR + Beacon(d) 2D-LiDAR + Beacon + Reﬂection(e) 2D-LiDAR + Beacon + Out-(f) 2D-LiDAR + Beacon + Relier
ﬂection + Outlier(e) 2D-LiDAR + Beacon + Out-(f) 2D-LiDAR + Beacon + Relier
ﬂection + Outlier

1 Result when obstacles exist. Estimated positions
Fig. 9: ⃝and particle distributions are measured at regular time intervals.

2 Result when people walk around the robot.
Fig. 10: ⃝Estimated positions and particle distributions are measured
at regular time intervals.