<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>International Journal of Scientific
Research in Computer Science</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.1002/asjc.1954</article-id>
      <title-group>
        <article-title>Sensor Fusion and Well-Conditioned Triangle Approach for BLE-based Indoor Positioning</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Amrit Karmacharya</string-name>
          <email>akarmacharya8@gmail.com</email>
          <email>amrit.karmacharya@uji.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>German M. Mendoza-Silva</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Joaquin Torres-Sospedra</string-name>
          <email>torres@ubikgs.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of New Imaging Technologies</institution>
          ,
          <addr-line>Universtiat Jaume I, Avda Vicente Sos Baynat S/N, Castelol ́n</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>UBIK Geospatial Solutions S.L.</institution>
          ,
          <addr-line>Espaitec 2, Avda Vicente Sos Baynat S/N, Casteloln ́</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <volume>2</volume>
      <fpage>1</fpage>
      <lpage>6</lpage>
      <abstract>
        <p>GPS has been a de-facto standard for outdoor positioning. For indoor positioning diferent systems exist. But there is no general solution to fit all situations. A popular choice among service provider is Bluetooth Low Energy (BLE) based Indoor Positioning System (IPS) . BLE has low cost, low power consumption, and it is compatible with newer smartphones. This paper introduces two ways for accuracy improvement i) a new algorithm for BLE-based IPS based on well-condition triangle and ii) fusion of BLE position estimates with IMU position estimates was implemented. Fusion generally gives better results but a noteworthy result from fusion was that the position estimates during turns were accurate. When used separately, both BLE and IMU estimates showed errors in turns. Fusion with IMU improved the accuracy of BLE based positioning.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;BLE</kwd>
        <kwd>Indoor Positioning</kwd>
        <kwd>Well-conditioned Triangle</kwd>
        <kwd>Delaunay Condition</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        People spend about 80 percent of their time indoors [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Even if people do have adequate
knowledge of his/her surrounding, the provision of accurate positioning is always beneficial to
have at the time of emergencies. Additionally in places like airports, libraries, museums, malls,
and warehouses it is not possible to know every corner, especially for newcomers.
      </p>
      <p>The main available positioning technologies –GNSS– are for outdoor scenarios.
Unfavorably its accuracy in indoor environments is not enough. Due to advancement in technologies
several other systems have emerged which can provide positioning and localization in indoor
environments, or in those places where GNSS signals are weak or unavailable.</p>
      <p>
        The indoor positioning market is predicted to be 10 billion USD by 2020 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Novel uses of
indoor positioning have appeared in health care where proximity interaction between individuals
was studied to track the spread of influenza [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>
        Smartphones are seen as the best platform for mass market indoor positioning due to their
ubiquity and convenience. The past decade witnessed major developments in smartphone
technology which usually come with wide array of sensors. These sensors can be leveraged for
position estimation. The Skyhook company provides “Precision Location” service using Wi-Fi,
GNSS and Cellular network signals [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        IPS solutions based on only one technology are more prone to inaccuracies due to the sensor
noise [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Combining results from two or more technologies deliver better results than single
ones [
        <xref ref-type="bibr" rid="ref6 ref7 ref8">6, 7, 8</xref>
        ]. Many research proposals combine Wi-Fi or BLE with PDR to improve accuracy
[
        <xref ref-type="bibr" rid="ref10 ref6 ref9">6, 9, 10</xref>
        ].
      </p>
      <p>
        BLE is a suitable alternative to Wi-Fi since it is more accurate [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] with 1 to 2m accuracy [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
BLE beacons are cheap, small, configurable devices with low power consumption. Moreover,
the position of BLE beacons are known in advance and may be deployed in high density
network for positioning purposes. Due to these advantages [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], BLE is popular among IPS
service providers and used for proximity application or relatively cheap positioning.
      </p>
      <p>
        For improving accuracy of BLE systems researchers have investigated diverse techniques.
Linearizing non-linear beacon readings [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], applying stigmergy [13], channel diversity, Ka´lma´n
ifltering and weighted triangulation [14] have been explored. Still, huge potential exists for
further research because existing solutions are not flawless.
      </p>
      <p>In a beacons group, many permutations of beacons are possible but it is possible to choose a
beacons permutation which provides the least possible error in the position estimate. According
to a surveying concept, position estimation based on a well-conditioned triangle ensures least
error[15]. To the author’s knowledge this concept has not been explored so far in IPS. So, one
of the goals of this paper is to implement the concept of well-conditioned triangle for choosing
beacons used in BLE position estimation.</p>
      <p>The main contributions of this paper are:
• To design and implement a positioning algorithm based on well-conditioned triangle for</p>
      <p>BLE positioning and study its efects.</p>
      <p>• To implement an integration of BLE positioning and inertial method.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related work</title>
      <p>
        Large eforts have been dedicated to find new solutions for indoor positioning in the last decade.
Various surveys shed light on state of art techniques in specific domains. Correa et al. [16]
focus on mass market applications, Dhobale et al. [17] reviews from user prospect, Diaz et al.
[18] narrows down on inertial sensors. Wi-Fi was the most prevalent technology followed by
light and Wi-Fi is predicted to remain dominant unless cheaper solution are found [
        <xref ref-type="bibr" rid="ref1">1, 16</xref>
        ]. But
newer smartphones have restricted Wi-Fi scans that may cause decline in Wi-Fi IPS [
        <xref ref-type="bibr" rid="ref1 ref11">1, 11</xref>
        ].
      </p>
      <p>
        Low cost and smartphone based IPS solution have high demand[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Light and BLE based
IPS are currently runner-up in terms of research, but BLE is popular among IPS providers
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Accuracy, infrastructure cost and scalability are important factors or choosing an IPS [16].
Coverage, complexity, robustness, privacy and power consumption are also significant [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Due
to many parameters, there is no clear winner, many solutions have been proposed adhering to
diferent environment and applications.
      </p>
      <p>Dead reckoning, nfigerprinting, trilateration, triangulation, proximity estimation, visual
localization are popular techniques for indoor positioning. Combination of one or more of these
techniques is also possible. Such systems are called hybrid systems, being LearnLoc, Kailos,
Surround Sense some representative examples. A comprehensive discussion on hybrid systems
is provided by Easson et al. [19]. Research landscape is focused on experimentation with
diferent combinations of technologies.</p>
      <p>
        Sensor fusion enables to control drift error in an IPS [
        <xref ref-type="bibr" rid="ref6 ref7 ref8">6, 7, 20, 8, 21</xref>
        ]. IPS systems are
complementary to each other. Wang et al. [20] found Tracking of moving target was better
with fusion and recommends adding another sensor for better performance. Zihajehzadeh et
al. [21] states that fused system can maintain tracking during GPS outrages for 5 second with
error less than 2 m. Chen et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] fused Wi-Fi and inertial sensors and improved them using
landmarks. This shows that fusion is not limited to sensors. Combination is possible with
many technologies. Map matching is a powerful technique if the layout of place is already
known. Popular techniques for fusion are Ka´lma´n Filter and Particle Filter. Ka´lma´n filter are
based on Gaussian filtering or Bayesian filtering, whereas Particles filters are based on solution
of Bayesian filtering [22].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Methods description</title>
      <p>Two independent technologies have been used for postition determnation: BLE and IMU.
The estimates from these two techologies have been fused to complement each other and
improve accuracy. As for BLE estimates, weighted centroid (WC) algorithm was used and
a new modification to WC algorithm has been proposed. The new modification is based on
well-conditioned triangle. For IMU estimates stride-length and heading algorithm has been
implemented. Overall method is presented in figure 1.</p>
      <sec id="sec-3-1">
        <title>3.1. Test Environment</title>
        <p>
          The experiment area is a wing of a university library. Measurements are carried out in the 5th
lfoor of the library where the BLE beacons had been deployed. This area is among bookshelves
which can block RSS signals. The beacons were placed in the top of the book shelves. They
are not visible from outside. 22 BLE beacons were deployed in the area. The deployment
resembles a dense distribution (1 beacon per 7.86 sq. m.). The area and device settings are
same from [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ].
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Well-conditioned triangle</title>
        <p>In trilateration error in position computation depends on the geometry formed by the three
known points. The shape of triangle formed by those three points afect the accuracy [15].</p>
        <p>
          In Figure 3, consider the known points (example BLE beacons) are represented by blue stars.
Two of the sides are of unit 2 and length of the third side is dependent on geometry. Suppose
that in ideal condition with no multipath and ideal path loss, the readings can be equally
trusted so they are given weights of [
          <xref ref-type="bibr" rid="ref1 ref1 ref1">1,1,1</xref>
          ] respectively. The unknown position is calculated
as weighted average of the known points. The calculated position from the above weights is
shown in diamond. Now suppose due to some error in signal from the upper point, it is trusted
a bit less. Now the weights become [1,1,0.9]. Position computed with these weights are shown
in cross. From the figure it is evident that the error in position due to change in weight is
least for an equilateral triangle and the position error increases as the triangle deviates towards
scalene.
        </p>
        <p>Theoretically in an isosceles triangle with two angles of 56◦ 14’, change in any measurement
(distance or angle) to unknown point will have least efect on the resulting position. Such
a triangle is known as a well-conditioned triangle [15]. This value takes one side as base for
computation. But a triangle can be solved from other sides as well so the best geometry is an
equilateral triangle. In practice equilateral triangles are rare, so a well conditioned triangle is
defined as a triangle in which no angle is less than 30 ◦ . Triangles having angles less than 30◦
are considered to be ill-conditioned and should not be used for position estimations.
(a)</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. Delaunay condition</title>
        <p>A Delaunay triangulation is a set of lines joining a set of points together such that each point
is joined to its nearest neighbors. The set of lines form a triangular mesh. In this triangular
mesh every circum-circle of a triangle does not contain any other points of the set within it.
Delaunay condition states that the circum-circle of any triangle should not contain any other
point inside it. Circum-circle is the circle that passes through the vertices of a triangle. A
triangular mesh satisfying delaunay condition is called delaunay triangulation. For example,
from a set of four points it is possible to form four diferent triangles. Among the four triangles
only two triangles will satisfy Delaunay condition. It is a property of delaunay condition that
the triangles are selected in such way that the minimum internal angles of the selected triangles
are as large as possible. Due to this property, the member triangles are considered well shaped.
This is important property as maximizing the minimum angle favors well-condition.</p>
        <p>In Figure 4(a), the triangles satisfy the Delaunay condition as the circle does not have any
points in them. In contrast to previous one, the circum-circles of the triangles in Figure 4(b)
have points in them and hence these triangles do not satisfy the Delaunay condition. It can
be observed that these triangles have sharper angles nodes V2 and V4 than the previous ones.
There is always the possibility to convert this triangulation into Delaunay by replacing the
edge V2-V4 with V1-V3 as this would increase the minimum internal angles and fulfillment of
the Delaunay condition can be expected. Another property of Delaunay condition is it uses
nearest-neighbor relation to connect the points. This enhances the implications of Delaunay
triangulation in data interpolation as well. The concept of Delaunay triangulation for 3D is also
similar, only the circum-circle is replaced by circum-sphere and triangulation by tetrahedrons.</p>
      </sec>
      <sec id="sec-3-4">
        <title>3.4. BLE Positioning Method</title>
        <p>BLE sensor registered advertisements anytime an advertisement is detected. Each BLE
advertisement had its own timestamp value. Positioning requires analysing a group of
advertisements that are closer in time. This made it necessary to group advertisements by time window.
Two techniques of grouping window have been used namely i) Discrete Time Window and ii)
Continuous Time Window.</p>
        <p>(a)
(b)</p>
        <sec id="sec-3-4-1">
          <title>3.4.1. Discrete and continuous Time Window</title>
          <p>In the discrete time window technique, advertisements were collected in non-overlapping
buckets for certain time, e.g. 1 second, 1.5 seconds, 3 seconds. Advertisements detected within a
time window were grouped in same bucket. Then the advertisements in the bucket were used
to compute position. After the time for a bucket expires, new bucket was created and the
process was repeated.</p>
          <p>Continuous time window features an extra update interval parameter on top of discrete
window technique to allow having overlapping buckets. The update interval parameter dictates
how often position is computed. In this technique, a bucket is created at set intervals e.g every
0.1 second or 0.5 second. Each bucket will collect advertisements for a certain time set by
window size. Update interval is kept lower than window size so buckets overlap each other.
An advertisement may fall in many buckets. When a bucket expires, position is computed
from the advertisements collected in that bucket. In continuous time window technique the
two latter advertisements get grouped into same window more times than the former two.
This way simultaneous advertisements have more efect. This makes continuous window more
sensitive than the discrete method. Disadvantage is that this technique runs more frequently
and processes the same advertisement multiple times. It requires more computation resources
than discrete technique so it may not be suitable for low end processors.</p>
          <p>In both cases, it is possible that more than one advertisement from same beacon are
observed in same bucket. In such case, those redundant advertisements need to be processed by
computing the average value, keeping the highest value or just keeping the last value.</p>
        </sec>
        <sec id="sec-3-4-2">
          <title>3.4.2. Weighted Centroid for BLE</title>
          <p>Weighted centroid method [24] is applicable where beacon positions (xi, yi) are known
beforehand. The WC method uses k beacons detected with the highest RSS values in the BLE
ifngerprint, where 1 ≤ k ≤ n n being the number of beacons deployed in the target area. The
position estimate is given by the equation 1, using weights calculate by equation 2.
where:
ωi′ = weighting factor
k = number of nearest beacons to consider for position estimate</p>
          <p>k
x = ∑︂ ωixi,
i=1</p>
          <p>k
y = ∑︂ ωiyi
i=1
(1)
ωi = ∑︁kωi′ ′
j=1 ωj
(2)</p>
          <p>The weighing factor was computed using an existing empirical model developed for the test
environment. The model exploits the reduction of signal strength during transmission. It
converts an RSS value to a weight value. Higher signal strength get higher weight and lower
signal strength get lower weights.</p>
        </sec>
        <sec id="sec-3-4-3">
          <title>3.4.3. Proposed method for BLE based on Well-Conditioned Triangles</title>
          <p>A new method was proposed to select beacons used in positioning. Due to the error in the
RSS value, any calculations that use RSS values are prone to transfer the error. This method
is based on the beacons layout. Known distance between beacons were more precise than
distances computed using RSS values. Calculations based on precise distances should be more
reliable than those based on less precise distances. The method works in following way. First,
list of detected beacons in a window were arranged in descending order of RSS value. This was
to arrange beacons in order of proximity. Signal strength decreases with increasing distance
so higher RSS value correspond to closer source. After that, 3 nearest beacons were selected
and checked for well-condition. If they satisfied well-condition then position was estimated
as weighted average of the selected beacons. If the 3 selected beacons did not satisfy
wellcondition, next proximal beacon was added to selection. It is possible to form four diferent
triangle using combination of four points ((︁ 43)︁ = 4). With five points number of combination
increases to 10 ((︁ 53)︁ = 10). An eficient way is required to reduce computation. Delaunay
triangulation creates a triangular network that maximizes the minimum angle of any triangles
in the network and the triangles do not overlap each other. This method is suitable to get
well-conditioned triangles and reduce number of combinations. When multiple well-conditioned
triangles were detected, weighted average of beacons in well-conditioned triangles was used as
estimate. If no well-conditioned triangle are detected, next closest beacon is added.</p>
          <p>
            Figure 6 shows the innovation of the proposed algorithm. The data is from library building
in the BLE open dataset [
            <xref ref-type="bibr" rid="ref12">12</xref>
            ]. In this figure, green stars are beacon positions. Blue circle
is true position. Dotted blue line connects the true positions to beacons in descending order
of RSS. All BLE beacons may not be detected at any given instant, so the line connects
only those beaons which were detected in a certain time window. These beacons were used
for estimating position using fingerprinting and WC method in the dataset. Red diamond is
the position output using WC method using all detected beacons (k = n). Solid blue line
represents a well-conditioned triangle. The black plus sign represents the position computed
using proposed method. Position estimate used only the 3 closest beacon but the result is
closer to true position than estimates using WC method.
          </p>
          <p>Algorithm 1: Selection of beacons using well-conditioned triangle</p>
          <p>Input: BLEscan = Detected Beacons, RSS, timestamp, major and minor
Output: POsition Estimate
Start;
sort BLEscan in descending order of RSS;
if number of detected beacons &lt; 3 then
output null;
break;
else
selection = select first 3 beacons from BLEscan;
/* Set list of well-conditioned triangles to empty
WCTlist = [];
while WCTlist is empty do</p>
          <p>DT = DelaunayTriangulation(selection.location);
// generate triangulation network from selected beacons location
for triangle in DT do
if triangle satisfy well-condition then
add triangle to WCTlist;
break;
*/
end
else
end
if number of triangles in WCTlist = 1 then</p>
          <p>compute position estimate;
else
if number of triangles in WCTlist &gt; 1 then
compute position estimate for each triangle;
average position estimate;
if all beacons used then
output null;
break;
else
end</p>
          <p>add next beacon to selection
end
end
end
end</p>
        </sec>
      </sec>
      <sec id="sec-3-5">
        <title>3.5. IMU Positioning Method</title>
        <sec id="sec-3-5-1">
          <title>3.5.1. Stride-Length and Heading for IMU</title>
          <p>This method is based on the algorithm proposed by Weinberg [25]. When people move, there
is vertical movement of body in each step. Weinberg [25] used vertical acceleration to detect
step events and Stride-length for each step was computed by an empirical formula given in
equation 3. Gyroscope was used to estimate heading at each step.</p>
          <p>SL = 2∆ K ∗ (max(accmagstep) −
min(accmagstep))1/4
*/
(3)
Algorithm 2: Stride-length and Heading Algorithm</p>
          <p>Input: acc = Accelerometer data and gyr = Gyroscope Data
Output: Stride-Lengths and Headings
Start;
/* Compute Stride-Lengths
Compute magnitude of acceleration from all the components and store it -&gt; accmag;
Perform low-pass filter on the computed magnitude ;
set lower and upper acceleration threshold;
for each accmag do
if accmag &gt; lower threshold and accmag &lt; upper threshold then</p>
          <p>mark as motion start
else
else
end
else
end
end
if accmag &lt; - lower threshold then
if previous state is in motion then
mark as motion
mark as motion stop
mark as in motion
end
for each motion start do</p>
          <p>Estimate Stride-length using Weinberg expression given by 3
end
/* Compute Headings
Calculate initial row, pitch and yaw values Create device to global rotation matrix for each
gyr do</p>
          <p>Update rotation matrix with gyr values
*/
end
for each motion start do</p>
          <p>compute heading from rotation matrix
end</p>
          <p>Output Computed Stride-Lengths and headings</p>
        </sec>
      </sec>
      <sec id="sec-3-6">
        <title>3.6. Sensor Fusion</title>
        <p>Ka´lma´n filter is a popular method for sensor fusion. System variables are modelled as state
variables, whereas the real observations modelled as observation state. Ka´lma´n filter works in
two phases i) Predict Phase and ii) Update Phase. Predict phase applies a transition model
to push one state to another state. This phase also computes the predicted co-variance in new
state. In the update phase, newly computed states are combined with observation state using
Ka´lma´n gain to output a filtered estimate. Ka´lma´n gain is a weighting factor calculated on
basis of error co-variance of the transition model and the observation model. It tells how much
to change the predicted state to reflect an observed state.</p>
        <p>Position estimate from stride-length and heading are suitable for prediction phase as a new
estimate is calculated from past estimates. Wi-Fi and BLE estimates are independent to
previous estimates hence a transition model is not possible. This makes it unfit for prediction
phase. On the other hand, position estimates from Wi-Fi and BLE are suitable for observation
state as they provide a stable way to constraint error from prediction phase. The
GetSensorData app collects IMU data in higher frequency than BLE and Wi-Fi data combined. This
means that between two estimates from either of the network-based solutions, there are many
position estimates provided by inertial-based solution. Hence, multiple prediction phases occur
between two update phases. Ka´lma´n filter allows this but a mechanism to detect which phase
to execute is required. A mechanism based on timestamp was devised to trigger correct phase
execution.</p>
      </sec>
      <sec id="sec-3-7">
        <title>3.7. How to measure the positioning error</title>
        <p>Error is the euclidean distance between position estimate and true position. Position estimates
are obtained from positioning methods described above. True positions are interpolated from
the test track. All the readings have associated timestamp value. Exact start time, each
direction change and exact end time are marked along with the sensor readings. Using the
marks it is possible to interpolate true position at any intermediate timestamp. A script was
made which take list of timestamps as input and output coordinates at those timestamps. BLE
timestamps were derived from the window size and update interval values, for IMU timestamps
of step detection were used. Now that estimated position and true position were known, error
was calculated.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Experiments and Results</title>
      <sec id="sec-4-1">
        <title>4.1. Experimental Setup</title>
        <p>
          The evaluation area corresponds to the 5th floor of Universitat Jaume I library and covers an
area of around 176 m2, the area and device correspond to the the ones in [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. A total of 22
beacons were placed in the top of the book shelves and they are not visible from outside. The
deployment resembles a dense distribution (1 beacon per 7.86 m2). It had been designed with
the goal of supporting a positioning service. The BLE beacons used are Accent Systems’ IBKS
105 and they were configured to broadcast only one iBeacon slot with advertisement period of
200 ms.
        </p>
        <p>The test data is captured with Samsung S6 smartphone (Model: SM-G920F) running on
android version 7.0 and API Android version 24. The application used for data collection
is GetSensorData version 2.1 which is also used by IPIN conference since 2016 [26]. The
application captures data from android smartphone sensors and outputs them in a log-file.
It supports capturing internal sensors accelerometer, gyroscope, magnetometer atmospheric
pressure, ambient light, proximity, humidity as well as from attached external devices example
RFID reader, XSsens IMU or LPMS-B IMU devices [26]. Since IMU measurements sufer from
sensor bias, usually a calibration step is required where measurements are collected when the
device is static and bias values are determined. GetSensorData app does not have a calibration
option. But it has option to mark locations. A workaround devised was to stand still for some
seconds before starting to walk</p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. Results</title>
        <p>Figure 7 shows error distribution of the studied factors. On analysing the efect of each factor,
it was observed that the choice of window technique had no drastic efect on accuracy. The
average diference of average error was found to be 0.005m. Among the strategies for
advertisement repeats, highest of the BLE repeats had the least error. It was followed by average of
repeats. Last of the repeats had higher average error. Except on window size 3 using discrete
window, error from highest of BLE was lower than other techniques. Proposed positioning
method had similar result but lower variance than WC method. One-second window size fared
higher errors than it’s counterparts. Window sizes of 2 and 3 seconds had improved results
than 1 second. Window size influences efect of other factors on the error. It is reasonable to
study afect of the factors independent to window size.</p>
        <p>We considered two configurations for our final evaluation. First, the IMU Position estimates
were fused with estimates from BLE on window size 2 seconds, continuous window grouping,
highest of redundant advertisement and the proposed algorithm based on Delaunay Triangles.
Second, the IMU Position estimates were fused with estimates from BLE on window size 3
seconds, continuous window grouping, average of redundant advertisement and the proposed
algorithm based on Delaunay Triangles. The results are reported in Table 1 and Figure 8.</p>
        <p>The results show that including the inertial data improve the positioning accuracy of the BLE
model and viceversa. Moreover, additional experiments showed that the fused model based on
WC –for BLE positioning– was around 15 cm worse in the third quartile, demonstrating that
the proposed method for BLE positioning is more robust and less prone to very large errors.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusions</title>
      <p>Improving the positioning accuracy of Indoor Positioning Systems is attracting many
researchers around the globe. Literature suggested that sensor fusion was one interesting
approach for that purpose.</p>
      <p>In this work, we considered to integrate IMU data with BLE readings since they available in
most smartphones. Adding inertial data do not require to deploy additional infrastructure and
no extra setups are required. Ka´lma´n filter ofered a simple, intuitive but powerful mechanism
for fusion.</p>
      <p>An experiment was designed for comparing accuracy before and after fusion. Existing system
was used as baseline. Sensor fusion results were more accurate than BLE.</p>
      <p>As future work we plan to include map-based filters as an additional source to improve the
navigation experience.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>The authors gratefully acknowledge funding from Ministerio de Ciencia, Innovacoi´n y
Universidades (INSIGNIA, PTQ2018-009981) and Universitat Jaume I (PREDOC/2016/55)</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>G. M.</given-names>
            <surname>Mendoza-Silva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Torres-Sospedra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Huerta</surname>
          </string-name>
          ,
          <article-title>A meta-review of indoor positioning systems</article-title>
          ,
          <source>Sensors</source>
          <volume>19</volume>
          (
          <year>2019</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>P.</given-names>
            <surname>Connolly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Boone</surname>
          </string-name>
          ,
          <article-title>Indoor location in retail: Where is the money</article-title>
          ,
          <source>Business Models Analysis Report</source>
          (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>T.</given-names>
            <surname>Smieszek</surname>
          </string-name>
          , G. Lazzari, M. Salathe,´
          <article-title>Assessing the dynamics and control of dropletand aerosol-transmitted influenza using an indoor positioning system</article-title>
          ,
          <source>Scientific reports 9</source>
          (
          <year>2019</year>
          )
          <fpage>2185</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Skyhook</surname>
          </string-name>
          , Precision location,
          <year>2020</year>
          . URL: https://www.skyhook.com/precision-location/.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>P.</given-names>
            <surname>Davidson</surname>
          </string-name>
          , R. Piche,´
          <article-title>A survey of selected indoor positioning methods for smartphones</article-title>
          ,
          <source>IEEE Communications Surveys &amp; Tutorials</source>
          <volume>19</volume>
          (
          <year>2016</year>
          )
          <fpage>1347</fpage>
          -
          <lpage>1370</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>F.</given-names>
            <surname>Ye</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Guo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Peng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <article-title>A low-cost single-anchor solution for indoor positioning using ble and inertial sensor data</article-title>
          ,
          <source>IEEE Access 7</source>
          (
          <year>2019</year>
          )
          <fpage>162439</fpage>
          -
          <lpage>162453</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>J.-G.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.-H.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-K.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <article-title>Design of the model for indoor location prediction using imu of smartphone based on beacon</article-title>
          ,
          <source>in: International Conference on Software Engineering Research, Management and Applications</source>
          , Springer,
          <year>2018</year>
          , pp.
          <fpage>161</fpage>
          -
          <lpage>173</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Zou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Jiang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Zhu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Soh</surname>
          </string-name>
          , L. Xie,
          <article-title>Fusion of wifi, smartphone sensors and landmarks using the kalman filter for indoor localization</article-title>
          ,
          <source>Sensors</source>
          <volume>15</volume>
          (
          <year>2015</year>
          )
          <fpage>715</fpage>
          -
          <lpage>732</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>H.-Y.</given-names>
            <surname>Kang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-N.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Park</surname>
          </string-name>
          , M.
          <article-title>-</article-title>
          <string-name>
            <surname>J. Bae</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.-B. Kim</surname>
          </string-name>
          ,
          <article-title>Study of a hybrid algorithm for indoor positioning</article-title>
          ,
          <source>International Journal of Control and Automation</source>
          <volume>11</volume>
          (
          <year>2018</year>
          )
          <fpage>25</fpage>
          -
          <lpage>38</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>V.</given-names>
            <surname>Renaudin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ortiz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Perul</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Torres-Sospedra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. R.</given-names>
            <surname>Jimen</surname>
          </string-name>
          <article-title>´ez, A. Per´ez-</article-title>
          <string-name>
            <surname>Navarro</surname>
            ,
            <given-names>G. M.</given-names>
          </string-name>
          <string-name>
            <surname>Mendoza-Silva</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Seco</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Landau</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Marbel</surname>
          </string-name>
          , et al.,
          <article-title>Evaluating indoor positioning systems in a shopping mall: The lessons learned from the ipin 2018 competition, IEEE Access 7 (</article-title>
          <year>2019</year>
          )
          <fpage>148594</fpage>
          -
          <lpage>148628</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>R.</given-names>
            <surname>Faragher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Harle</surname>
          </string-name>
          ,
          <article-title>Location fingerprinting with bluetooth low energy beacons</article-title>
          ,
          <source>IEEE journal on Selected Areas in Communications</source>
          <volume>33</volume>
          (
          <year>2015</year>
          )
          <fpage>2418</fpage>
          -
          <lpage>2428</lpage>
          . URL: http://smedia. ust.hk/james/projects/people aware smart city applications/paper/1.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>G. M.</given-names>
            <surname>Mendoza-Silva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Matey-Sanz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Torres-Sospedra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Huerta</surname>
          </string-name>
          ,
          <article-title>Ble rss measurements dataset for research on accurate indoor positioning</article-title>
          ,
          <source>Data</source>
          <volume>4</volume>
          (
          <year>2019</year>
          )
          <fpage>12</fpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>