Keywords

1 Introduction

The development of indoor navigation systems has become a growing field of research interest in recent years as many applications nowadays require ubiquitous positioning in combined out-/indoor environments. There are still many unresolved challenges in such type of applications as satellite-based GNSS and GNSS-aided inertial navigation systems (INS) are capable methods for mainly outdoor navigation only. Thus, alternative techniques are developed using different signals, such as radio waves, acoustic signals, or other sensory information collected by mobile devices. All of them have their own strengths as well as limitations. Following a classification of Li and Rizos (2014), indoor localization technologies fall into three categories, i.e., designated technologies based on pre-deployed signal transmission infrastructure, technologies based on ‘signals-of-opportunity’ and technologies not based on signals. To the first categories belong systems using infrared or ultrasonic signals, magnetic fields, Ultra Wide Band (UWB) or other RF-based systems. Signals-of-opportunity include RF signals originally not intended for positioning, for instance, Wi-Fi, digital television, mobile telephony, FM radio and others. Dead reckoning (DR) using inertial sensors (accelerometers and gyroscopes) as well as vision/camera systems belong to the third category. This paper focuses on Wi-Fi location fingerprinting where it is investigated whether long-time signal strength measurements could lead to an improvement as the positioning accuracy is highly related to the fluctuation of signal strength. Because long-time measurements show the trend of the received signal strength (RSS) and contain the fluctuation of the emitted signal they provide the potential to minimize these effects. Two methods are used to reduce the influence of the fluctuations and compared to standard fingerprinting.

The remainder of the paper is organized as follows: Sect. 2 reviews briefly the fundamentals of the Wi-Fi positioning principle and its methods. In Sect. 3 the two new methods for the reduction of the RSS observations for the establishment of a radio map of RSS distributions for fingerprinting are described. Section 4 presents the setup and the results of the experiments which were performed to survey the effect of RSS observations from long-time measurements. Finally, Sect. 5 contains the discussion of the major results and the concluding remarks as well as an outlook on future investigations.

2 Wi-Fi Positioning Principle

Wi-Fi technology uses microwave signals to provide an electronic device access to the internet. The ability to measure the RSS of a certain Wi-Fi access point (AP) and the coherence between this signal strength and the distance to the AP provides the possibility to use Wi-Fi for positioning. For positioning in RSS-based solutions usually two different methods are employed, i.e., location fingerprinting and trilateration. In this study only fingerprinting is considered. In the following, the challenges are briefly reviewed and then fingerprinting is discussed in detail including its performance.

2.1 Challenges of Wi-Fi Positioning

The major aim of research concerning Wi-Fi positioning is to significantly improve positioning accuracy to the one meter or even to sub-meter level. The low positioning accuracy of several meters achieved so far, however, is mainly caused by the fluctuation of the RSS which is caused by the following reasons (Bai et al. 2014).

  • Humans consist of a large part of water (around 60 to 70 %) and the signal is absorbed significantly by water,

  • The signal is reflected by metal in walls causing multipath propagation which falsifies the observation of the RSS,

  • The emitted signal strength of some APs is depending on the number of users which are connected to the network,

  • Radio interference, which is caused by other devices like for example microwave ovens or shop door openers, and

  • Different smartphones have different in-built hardware and so the measured RSS differs from phone to phone or other mobile device.

2.2 Wi-Fi Location Fingerprinting

Wi-Fi fingerprinting needs reference points (RPs) with uniquely defined RSS values from every received AP. The current position of the user is then the location which has the greatest similarity to the RSS. Fingerprinting works with a radio map (R) which is based on a number of RPs containing the RSS distributions. These RPs are located in the area of interest and distributed in a representative grid. Figure 1 illustrates the operational principle of fingerprinting.

Fig. 1
figure 1

Operational principle of location fingerprinting

Every RP has a position and an associated fingerprinting matrix (F) (Huang 2014) as described in:

$$R = \left\{ {\overrightarrow {{p_{l} }} ,F_{i} } \right\}\quad i = 1,2, \ldots ,m$$
(1)
$$F_{i} = \left[ {\vec{r}_{{RP_{i} }} \left( {T_{1} } \right),\vec{r}_{{RP_{i} }} \left( {T_{2} } \right), \ldots ,\vec{r}_{{RP_{i} }} \left( {T_{n} } \right)} \right]$$
(2)
$$\vec{r}_{{RP_{i} }} \left( t \right) = \left[ {RSS_{{RP_{i} }}^{{AP_{1} }} \left( t \right),RSS_{{RP_{i} }}^{{AP_{2} }} \left( t \right), \ldots ,RSS_{{RP_{i} }}^{{AP_{k} }} \left( t \right)} \right]$$
(3)

where \(\overrightarrow {{p_{l} }}\) is the position of the RP, m the number of RPs, \(T_{n}\) the last time where the sample is collected, t the selected time stamp, k the number of APs, and \(RSS_{{RP_{i} }}^{{AP_{k} }}\) the RSS value.

The vector \(\vec{r}_{{RP_{i} }} (t)\) in Eq. (2) contains the RSS at the selected RP from all received APs (see Fig. 1). For every time sample there is a \(\vec{r}_{{RP_{i} }} (t)\) labelled by a unique time stamp. It depends on the type of positioning algorithm if just one value for each AP is needed instead of the whole fingerprinting matrix. In case of a single value per AP the median or mean is calculated and just one vector (location fingerprint) \(\vec{r}_{{RP_{i} }} (t)\) further exists. The radio map data is saved in a so-called fingerprinting database (DB) which is fed in the training phase (Sect. 2.2.1). Because of the dependency of the location fingerprint and position it is possible to estimate the current user’s position with another RSS measurement and the comparison from this measurement with the DB. This is called the positioning phase (see Sect. 2.2.2). Figure 2 shows the main tasks to be carried out in the two phases.

Fig. 2
figure 2

Characteristics of the two phases of location fingerprinting

2.2.1 Training Phase

The task of the training, offline or calibration phase is to find the system’s design and to collect data for the fingerprinting DB. The RPs form usually a rectangular grid (compare Fig. 1) and the system’s designer has to find the suitable number of RPs and the distance between them (i.e., grid spacing). The aim is to provide a suitable positioning resolution, best system performance and the reception of at least three APs at all RPs. It depends on the environment which system parameters are best to improve the system accuracy and precision performance. Because of the long time required to collect the reference RSS data it is not the best way to reduce the grid spacing accordingly (Kaemarungsi 2005). As the human’s body absorbs parts of the Wi-Fi signal and falsifies the measured signal strengths multiple measurements in usually four smartphone orientations are performed at every RP. After the grid design is accomplished, the location fingerprints are collected by measuring the RSS from all received APs at every RP. Because of different devices and orientations, multiple DBs are created (for every device and orientation) or models are developed to simulate the influence of different hardware and the user’s body.

2.2.2 Positioning Phase

In the positioning or online phase, the mobile device collects the RSS measurements from every receivable AP at the location to be determined. If the fingerprinting DB of the training phase contains for example a statistical distribution the received RSS vector must have the same number of elements. The result is a vector which contains the average RSS from the received AP (location fingerprint) in the form:

$$\widetilde{{\vec{r}}} = \left[ {\widetilde{RSS}_{{RP_{i} }}^{{AP_{1} }} ,\,\widetilde{RSS}_{{RP_{i} }}^{{AP_{2} }} , \ldots ,\widetilde{RSS}_{{RP_{i} }}^{{AP_{k} }} } \right]$$
(4)

Once the measurements are performed and found to be correct, the location fingerprint of the positioning phase \(\widetilde{{\vec{r}}}\) has to be compared with the location fingerprints of the DB. This comparison is performed by a positioning (Kaemarungsi 2005) or calculation (Mok and Retscher 2007) algorithm like the Nearest Neighbour (Sect. 2.2.3) or K-Nearest Neighbour (Sect. 2.2.4).

2.2.3 Nearest Neighbour Algorithm

The simplest calculation algorithm is the Nearest Neighbour (NN) method because it just requires mean or median vectors and no more other RSS data. The fingerprinting matrix becomes then just s single vector which contains one mean (or median) value per AP. The algorithm then calculates most commonly the Euclidean distance between the location fingerprint of the positioning phase and all fingerprints in the DB. The estimated position is the position of the fingerprint with the minimum distance. Equation (5) defines the selection of the fingerprint \(\widetilde{{\vec{r}}}\) and its position (\(\widehat{p}_{NN}\)) with the basic NN algorithm with Euclidean distance (Huang 2014; Kaemarungsi 2005):

$$d(x,y) = \left\| {\overrightarrow {x} - \overrightarrow {y} } \right\|_{2} = \sqrt {\sum\nolimits_{j = 1}^{l} {(x_{i} - y_{i} )^{2} } }$$
(5)
$$d\left( {\widetilde{{\vec{r}}},\vec{r}_{{RP_{a} }} \left( t \right)} \right) < d\left( {\widetilde{{\vec{r}}},\vec{r}_{{RP_{b} }} \left( t \right)} \right)\quad {\forall }a \ne b$$
(6)
$$\widehat{p}_{NN} = {\vec{\text{p}}}_{i}$$
(7)

where j is the number of elements.

2.2.4 K-Nearest Neighbour Algorithm

An extension of the NN algorithm is the k-Nearest Neighbour (kNN) algorithm. First the fingerprints are sorted by their distance to the location fingerprint of the positioning phase and the first k RPs (k has to be smaller than the number of RPs) with minimal distance are chosen (Eq. (8)). The average over the coordinates of the chosen RPs yields the estimated position (\(\widehat{p}_{KNN}\)) of the mobile device (Huang 2014).

$$\widehat{p}_{KNN} = \frac{1}{K}\mathop \sum \limits_{i = 1}^{K} \vec{p}_{i}$$
(8)

with the position \(\vec{p}_{i}\) of the K chosen RPs.

2.3 Performance of Wi-Fi Fingerprinting

It is difficult to state a generally valid positioning accuracy for Wi-Fi fingerprinting because of the dependence on the surrounding environment. Beside the multipath propagation and signal interference, also the design of the grid of RPs influences the accuracy. Usually averaged positioning accuracies in the range of 1-6 m are obtained (Mok and Retscher 2007). Because of errors in such a range the altitude determination is mostly not accurate enough to estimate the correct floor level. In such cases height can be added using barometric measurements. This is possible because air pressure is directly related to height (Retscher 2007).

3 Fingerprinting with Reduced RSS Observations

The spatial coverage of an AP is called radio cell. The size of this cell is defined on the one hand by the surrounding environment and on the other hand by the broadcasting power. An AP reacts to the rising number of connected clients by a regulation of the broadcasting power to supply all clients equally. The more clients are connected in the cell, the RSS is the more decreasing and the cell size shrinking. This effect occurs also as opposite if the number of clients decreases. Long-time measurements could be used to reduce the influence of this fluctuation. Thus, two new methods are developed and investigated which provide the possibility to model these effects. The first one uses interpolation and the second is referred to as Daily Average Improvement (DAI) method.

3.1 Interpolation Method

The concept for the reduction with long-time measurements in case of fingerprinting is illustrated in the flowchart in Fig. 3. It is based on the assumption that a single RSS value measured at a random point \(\widetilde{RSS}_{mes} \left( {\vec{p},t} \right)\) can be separated in two parts as follows:

Fig. 3
figure 3

Calculation steps of the interpolation method

$$\widetilde{RSS}_{mes} \left( {\vec{p},t} \right) = RSS_{theo} \left( {\vec{p},t} \right) +\Delta _{RSS} (\vec{p},t)$$
(9)

Theoretically \(RSS_{theo} \left( {\vec{p},t} \right)\) is the RSS value at a certain point which is caused by the spatial range of the Wi-Fi Signal. It is not affected by any influence of the surrounding environment, but it contains the signal’s variation over time. Deviation caused by the surrounding environment \(\Delta _{RSS} (\vec{p},t)\) 
is the change in RSS (compared to ideal conditions) which is caused by the measurement site assembly and current conditions. So it contains the influences of present people, walls, radio interference, etc. Those influences have a great spatial dependence which means that a point is theoretically uniquely defined by \(\Delta _{RSS} (\vec{p},t)\). Under the assumption (Eq. (10)) that the theoretical signal strength \(RSS_{theo} \left( {\vec{p},t} \right)\) is approximately represented by the interpolated RSS of long-time measurements \(RSS_{int} (\vec{p},t)\) resulting from Eq. (9) the following subtraction (Eq. (11)) provides the deviation caused by the surrounding environment \(\Delta _{RSS} (\vec{p},t)\).

$$RSS_{theo} \left( {\vec{p},t} \right) \approx RSS_{int} (\vec{p},t)$$
(10)
$$\Delta _{RSS} \left( {\vec{p},t} \right) \approx \widetilde{RSS}_{mes} \left( {\vec{p},t} \right) - RSS_{int} (\vec{p},t)$$
(11)

Equation (11) is called reduction and \(\Delta _{RSS} \left( {\vec{p},t} \right)\) is the reduced RSS. The result has a large spatial dependence but it is approximately free from signal’s variation over time. Because of that \(\Delta _{RSS} \left( {\vec{p},t} \right)\) should be accurate enough for positioning with Wi-Fi fingerprinting. To be able to compare the elements of the fingerprinting DB from the training phase and the RSS vector with the location fingerprint (from the positioning phase), both have to be reduced.

3.1.1 Reference Measurements

To be able to reduce RSS observations reference measurements have to be carried out which are recorded at the same time as the measurements that have to be reduced. Therefore, long-time measurements are performed which temporally overlap the whole measuring process. Tests performed by Retscher and Tatschl (2016a) have shown that it is important to place the reference measuring units directly below the APs because of following reasons: (1) to get the strongest possible RSS, (2) to have a lower risk of multipath propagation, and (3) the construction of most of the antennas weaken the RSS of more distanced antennas (Tatschl 2016). Another important aspect of the reference location is to choose a useful spatial distribution of these stations. The aim is to be able to interpolate the long-time measurements to every reference point of the fingerprinting DB (see Sect. 3.1.2). So one possibility is to place the reference stations at the borders surrounding the area of interest.

3.1.2 Training Phase

A grid of reference points is measured like in the training phase of the standard Wi-Fi fingerprinting (described in Sect. 2.2.1) but the long-time measurements are performed additionally (see Fig. 4). To get a fingerprinting database with reduced RSS the long-time measurements are interpolated to the reference points as indicated by arrows in Fig. 4 and a reduction is proceeded. For the interpolation of the fingerprinting DB the first step is to find long-time measurements which were recorded simultaneously with the reference points or were recorded only a short time apart. After that a 2-D linear plane-interpolation (Eq. (12)) is calculated to get a theoretical RSS for each reference point.

Fig. 4
figure 4

Training phase of the interpolation method

$$RSS_{int} \left( {AP,t} \right) = f\left( {x,y} \right) = a_{0} + a_{1} x + a_{2} y$$
(12)

The coefficients of this polynomial function are dependent on time and a certain AP. They are given by the following equation:

$$\vec{a}\left( {AP,t} \right) = A^{ - 1 *} \vec{z}(AP,t)$$
(13)

or in more detail:

$$\left[ {\begin{array}{*{20}c} {a_{1} } \\ {a_{2} } \\ {a_{3} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} 1 & {x_{1} } & {y_{1} } \\ 1 & {x_{2} } & {y_{2} } \\ 1 & {x_{3} } & {y_{3} } \\ \end{array} } \right]^{ - 1} *\left[ {\begin{array}{*{20}c} {RSS_{{lt_{1} }} \left( {AP,t} \right)} \\ {RSS_{{lt_{2} }} \left( {AP,t} \right)} \\ {RSS_{{lt_{3} }} \left( {AP,t} \right)} \\ \end{array} } \right]$$
(14)

where \(p_{j} = (xj,yj)\) are the coordinates of the reference station equipment which performed the long-time measurements and \(RSS_{{lt_{1} }} \left( {AP,t} \right)\) the RSS of the jth equipment of a certain AP at a certain time.

This interpolation described in Eq. (12) produces a RSS value for a certain AP at a certain reference point. After calculating a RSS value for each AP at each reference point the interpolated radio map is completed.

For the reduction of the fingerprinting DB the subtraction (Eq. (11)) of the interpolated RSS of the long-time measurements and the measurement of the reference points results in the reduced RSS. This result is stored in a DB which defines the radio map (Eq. (1)). The following Eq. (15) describes this fingerprinting DB for the i-th reference point.

$$F_{i} = [\Delta _{{RSS,RP_{i} }}^{{AP_{1} }} ,\Delta _{{RSS,RP_{i} }}^{{AP_{2} }} , \ldots ,\Delta _{{RSS,RP_{i} }}^{{AP_{k} }} ]$$
(15)

where k is the number of APs
and \(\Delta _{{RSS,RP_{i} }}^{{AP_{k} }}\) is the single value of the reduced RSS.

3.1.3 Positioning Phase

Figure 5 illustrates the positioning phase. The positioning starts with the measurement of the location fingerprint. So the RSS of each received AP is scanned and stored in a vector (Eq. (4)):

Fig. 5
figure 5

Positioning phase of the interpolation method

$$\widetilde{{\vec{r}}}(\tau ) = \left[ {\widetilde{RSS}_{{RP_{i} }}^{{AP_{1} }} ,\widetilde{RSS}_{{RP_{i} }}^{{AP_{2} }} , \ldots ,\widetilde{RSS}_{{RP_{i} }}^{{AP_{k} }} } \right]$$
(16)

where τ is the recording time of the location fingerprint and \(\widetilde{RSS}_{{RP_{i} }}^{{AP_{k} }}\) a single RSS value of the location fingerprint of the positioning phase.

The evaluation of the positioning phase consists of two major parts: (1) an approximate position is calculated to know which coordinates (x and y in Eq. (12); see Fig. 5) are used to get the interpolated RSS, and (2) the interpolated RSS and the reduction is calculated. After that the standard fingerprinting positioning algorithm is performed with a DB containing reduced RSS values and a reduced location fingerprint. For the approximate solution of the user’s position the not-reduced RSS values of the reference points are needed. The approximate position is calculated using the process described in Sect. 2.2.2. The results are the coordinates of the approximate position \(\vec{p}_{app} = [x_{app} ,y_{app} ]\). Then the interpolation for a location fingerprint is performed. So for the time τ fitting RSS values from long-time measurements exist:

$$\vec{z}\left( {AP,\tau } \right) = \left[ {RSS_{{lt_{1} }} \left( {AP,\tau } \right),RSS_{{lt_{2} }} \left( {AP,\tau } \right),RSS_{{lt_{3} }} \left( {AP,\tau } \right)} \right]$$
(17)

With Eq. (12) an interpolated fingerprint is calculated:

$$\vec{r}_{vec} \left( {\vec{p}_{app} ,\tau } \right) = \left[ {RSS_{int} \left( {AP_{1} ,\tau } \right),RSS_{int} \left( {AP_{2} ,\tau } \right), \ldots ,RSS_{int} \left( {AP_{k} ,\tau } \right)} \right]$$
(18)

and using Eq. (11) the reduction is calculated. In Eq. (19) the reduction of a single RSS value and in Eq. (20) the reduction of the whole fingerprint is described:

$$\Delta _{RSS} \left( {AP_{k} ,\vec{p}_{app} ,\tau } \right) = \widetilde{RSS}_{{RP_{i} }}^{{AP_{k} }} - RSS_{int} (AP_{k} ,\tau )$$
(19)
$${\vec{\Delta }}_{RSS} \left( {\vec{p}_{app} ,\tau } \right) = \widetilde{{\vec{r}}}\left( \tau \right) - \vec{r}_{int} (\vec{p}_{app} ,\tau )$$
(20)

With the reduced fingerprint \({\vec{\Delta }}_{RSS} \left( {\vec{p}_{app} ,\tau } \right)\) and the reduced fingerprinting DB a position determination can be performed. The resulting positioning vector \(\vec{p}_{red}\) gives the estimated coordinates of the location fingerprint.

So far only a simple linear interpolation has been applied. Future work considers the use of other more advanced interpolation methods, such as Kriging or inverse distance weighted (IDW) interpolation. A detailed performance analysis and comparison with the linear interpolation approach will be carried out.

3.2 Daily Average Improvement Method

To get a numerical value which describes the fluctuation of the Wi-Fi signals the difference between the fingerprints and a constant vector are calculated. This constant vector should be representative of the normal or average behaviour of the APs RSS. So the average of all long-time measurements over the whole day is chosen as given in Eq. (21):

$$\widehat{{\vec{r}}} = \left[ {\widehat{RSS}^{AP1} ,\widehat{RSS}^{AP2} , \ldots ,\widehat{RSS}^{APk} } \right]$$
(21)

To calculate the improvements, the average RSS value of all devices which measure the long-time measurements at the moment when the measurement to be improved was recorded (\(\vec{r}_{lt} \left( t \right)\)), is needed. The following equation yields the improvements of a certain measurement:

$$\vec{r}_{corr} \left( t \right) = \vec{r}_{lt} \left( t \right) - \widehat{{\vec{r}}}$$
(22)

The improved RSS is then calculated with Eq. (23):

$$\vec{r}_{imp} \left( t \right) = \vec{r}\left( t \right) + \vec{r}_{corr} (t)$$
(23)

with the measured fingerprint \(\vec{r}\left( t \right)\) to be improved.

The implementation is as follows: Firstly, the reference points and reference long-time measurements are recorded equally like the difference method described in Sect. 3.1 in the training phase. After computing all improvements for the time when the reference points were recorded and improving the measurements, there is an improved fingerprinting database. Then in the positioning phase the process to get an improved location fingerprint is similar to the training phase. In the beginning, temporal suitable long-time measurements are searched and the average is calculated (\(\vec{r}_{lt} \left( t \right)\)). After the subtraction (Eq. (22)) with the daily average of all received APs the improved location fingerprint is calculated using Eq. (23). To get the position with the improved RSS values, a standard fingerprinting algorithm using the NN or kNN is performed (described in Sect. 2.2.3 or 2.2.4). Figure 6 shows the principle of operation illustrated as flowchart.

Fig. 6
figure 6

Calculation steps of the daily average improvement (DAI) method

4 Indoor Experiments

To test the Wi-Fi-based indoor positioning system the ground floor of a multi-storey office building of the TU Wien—Vienna University of Technology has been chosen. Figure 7 shows the area including the entrance to the building, a foyer and class rooms. In this area walls with different wall thickness, different ceiling height, several floor levels, pillars, windows, computers and tables are present. It is public space which is highly frequented by people. On 93 reference points in a regular grid with a spacing of around 2.5 m RSS measurements were performed whereby six well distributed APs are receivable at most test points. Three Raspberry Pi’s served as reference stations which execute a Python script which records RSS values for all received APs in an infinite loop and an interval of two seconds.

Fig. 7
figure 7

Floorplan and impressions of the test area

4.1 Long-Time Measurements

Figure 8 shows an example of a long-time variations of the RSS to six APs. As can be seen some RSS scans to certain APs show a good stability, but on the other hand large short-time variations can occur, e.g. for AP 4. Retscher and Tatschl (2016a, b) developed a differential Wi-Fi (termed DWi-Fi) positioning concept which is similar to the well-known DGPS principle. In this case, the RSS measured with the Raspberry Pi’s at the reference station locations are used to derive correction parameters and are applied at the mobile client. Thus, a significant improvement of the positioning accuracies is achieved. In the following it is investigated if location fingerprinting can be improved at a similar level.

Fig. 8
figure 8

Long-time reference station RSS observations

4.2 Evaluation

To compare the different methods, the measured data was evaluated in four different ways:

  1. (1)

    Standard Wi-Fi Fingerprinting with the kNN where k was set to 5.

  2. (2)

    Interpolation method with reduced RSS observations and known user position. In this case it was assumed that the user position is known and the long-time measurements could be interpolated at this location. Although this assumption is nonconvertible it could be determined whether the method is basically possible.

  3. (3)

    Interpolation method with reduced RSS observations and known approximate user position. The approximate position is calculated with a standard fingerprinting algorithm and is used to interpolate the long-time measurement to this point.

  4. (4)

    Daily Average Improvement (DAI) method with reduced RSS observations. In this case no approximate solution is needed.

4.3 Resulting Radio Maps of RSS Distribution

The radio maps in Fig. 9 show the spatial distribution of the measured RSS of one AP located inside of the class room VII (compare Fig. 7). As can be seen there are obvious differences in the measured RSS of three smartphones and the recorded measurement runs. For the resulting radio map in Fig. 9a the three reference stations were located at three APs and for the other three Figures the reference stations were placed at the borders surrounding the test site. Figure 9a, b are from the same smartphone. It can be seen that regions of higher RSS are found in an approximate rectangular form which spatially match with the class room (i.e., lecture room VII). This means that the class room’s walls cover up a high percentage of the signal.

Fig. 9
figure 9

Radio maps of three smartphones and two different measurement runs

4.4 Positioning Results

The following three Figs. 10, 11 and 12 show the positioning accuracies of the three used phones in numbers for the four different methods (i.e., standard fingerprinting, interpolation with known position or approximate position and daily average improvement DAI method). Furthermore, the results are shown for four different training and positioning runs. On overview of the characteristics of the four different training and positioning runs can be found in Table 1.

Fig. 10
figure 10

Comparison of four measurement runs and positioning methods for smartphone 1

Fig. 11
figure 11

Comparison of four measurement runs and positioning methods for smartphone 2

Fig. 12
figure 12

Comparison of four measurement runs and positioning methods for smartphone 3

Table 1 Overview of the characteristics of the four measurement runs

The results of the smartphone 1 in Fig. 10 demonstrate that the interpolation method with known position of the user and the DAI method provide a similar performance as standard fingerprinting. The interpolation method using an approximate position, however, shows lower positioning accuracies. The main reason for this is that the approximate user’s position at the ten meter level was not accurate enough. With an improvement of the approximate position higher resulting positioning accuracies are achievable. This can be obtained if the Wi-Fi positioning is augmented by dead reckoning with the smartphone inertial sensors. Then a more precise approximate position is available.

In the results of the other two smartphones (Figs. 11 and 12) some tests are found which show an improvement compared to the standard method. Especially the DAI method’s positioning accuracy is higher and provides therefore better performance than the two interpolation methods. Thus, the used phone has a great influence on the positioning result as well. The first smartphone (compare Fig. 10) measured the highest RSS values and shows overall the best positioning results which confirms that a higher signal strength leads to a better positioning accuracy. So the positioning accuracy is also dependent on the built-in hardware of the phone.

4.5 Spatial Distribution of Positioning Results

The maps in Fig. 13 show the spatial distribution of the positioning accuracy for a certain positioning and training run for smartphone 1. It should be noted that the regions of poor accuracy are found at the periphery areas of the test site. The reason for this is the interpolation of the RSS which is used in each method. The triangle which is formed by the three Raspberry Pi’s does not cover up the whole measuring area which leads to an extrapolation outside of the triangle. In this area the interpolated RSS values leads to a significant inaccuracy. With a longer distance from the triangle the positioning error increases which is also explained by the extrapolation in this areas.

Fig. 13
figure 13

Spatial distribution of positioning result of smartphone 1 for training run 101 and positioning run 102 for the four methods

4.6 Positioning Results Per Measurement Run

In Figs. 14 and 15 the four different measurement runs are compared. Figure 14 shows the accuracy (divided into the results of the four methods) of a measurement run if it is used as training run. Figure 15 on the other hand presents that for the positioning run. It can be seen that no measurement run stands out among the other. Measurement run 104 is the best run if it is used as positioning run but it is the worst run if it is used as training run. There might be great differences in the radio map of the different measurement runs but the positioning result is still quite similar.

Fig. 14
figure 14

Positioning result from different measurement runs as training runs for smartphone 1

Fig. 15
figure 15

Positioning result from different measurement runs as positioning runs for smartphone 1

5 Discussion of Results and Concluding Remarks

In general, no significant differences between the interpolation and DAI methods in comparison to the standard Wi-Fi fingerprinting was found in this practical scenario of the test site. The DAI method is, independent from the used smartphone, the best new method because it needs no approximate position and models the fluctuation of the Wi-Fi signal very well. The comparison between known and approximate position for the interpolation method shows that the approximate position is an additional source of error which leads to a positioning error which is nearly twice as high as the positioning error of the interpolation method with known positions. One way to use this method and get an improvement of positioning accuracy is to find an alternate way of producing an approximate position. The inertial sensors in the smartphone, such as the accelerometers and gyroscopes as well as the magnetometer, can be used to perform dead reckoning and can yield a better approximate position. Especially, the continuous positions of a user can be determined with low drift rates and suitable positioning accuracies if one enters a building and beforehand the absolute user’s location is obtained with GNSS. Thus, we are currently working on an integrated positioning solution combining Wi-Fi fingerprinting with inertial navigation. Then fingerprinting can serve as absolute positioning method and dead reckoning with the inertial sensors for continuous positioning of the mobile client.

Overall the fingerprinting algorithms reached an averaged positioning accuracy of around 5 m dependent on the used smartphone. In the evaluation arithmetic mean and median were compared and the median, which deals better with outliers, shows the better results (i.e., up to 3 m lower positioning errors).

The comparison of the different maps of spatial distribution of the positioning accuracy shows that the regions of poor accuracy are found at the periphery areas of the test site. This is caused by the interpolation and the location of the reference stations. The results can be improved if the reference stations equipped with Raspberry Pi’s are placed outside the measuring area and cover up the whole area of interest. Furthermore, different locations for the reference stations in the test site will be investigated. Thereby the location accuracy of the reference stations will be tested more in detail. It is expected that more than three reference stations will yield to better positioning accuracies for the mobile user. On the other hand, it will be investigated if with DAI method a suitable performance is achieved when a single reference station is placed in the middle of the area of interest as theoretically the average of the RSS variations need to be determined only. In addition, the impact of the different Wi-Fi APs in respect to their received signal strength on each reference point is a further task for investigation. Possible solutions might be to exclude certain AP RSS measurements which have a very low signal strength throughout the measurement campaign on a specific reference point or to perform a weighting depending on their RSS magnitude.

Another way to improve the positioning accuracy is to pay attention to the accuracy of the Raspberry Pi’s system clock. A temporal drift in time between the smartphones and the Raspberry Pi impedes a potential improvement. Furthermore, another source of error could be eliminated if it would be possible to get the emitted RSS directly from the APs.

The tests have also shown that there are big differences between the used smartphones. This differences become first visible in the radio maps of signal strengths (see Fig. 9 for example) and it is obvious that a higher RSS entails a better positioning result. The smartphone 1 positioning results are the best in every measurement run. Consequentially it is very important that each phone has its own fingerprinting database as the device components of the phone significantly influence the positioning result. It is relevant to check whether a joint database of all phones results in similar positioning accuracy if it is combined with long-time measurements. The DAI method is able to improve the standard fingerprinting in five situations using smartphone 2. This fact proofs that the success of a method is additionally dependent of the used phone.

In current analysis it is investigated if the time interval for averaging over one day in the DAI method is suitable or shall be changed depending on the environmental conditions and occurring fluctuations of the RSS. In the conducted long-time observations, it could be seen that for a number of RSS measurements to certain APs very large fluctuations occurred (compare Fig. 8). Thereof the optimum time interval for averaging for a certain AP has to be found. It is conceivable to reduce the time interval for averaging then for a specific AP showing large fluctuations. The major aim of the investigation in this context is to find the optimum time span for averaging of the reference station observations when applying them to the current user’s RSS measurements. Averaging over a whole day might be too long. Due to a successive reduction of this time interval it shall be investigated if an improvement in performance of the algorithm and increase in positioning accuracies for the mobile user is achievable.

In the tests the measurements of the training and positioning phase were made with a maximum time interval of one day. In practice this interval for training is usually many times greater and Ettlinger and Retscher (2016) have shown that this leads to a deterioration of positioning accuracy. In this case it is expected that the new methods are able to achieve an improvement. In future work multiple repeating experiments with a larger time interval between the measurement runs are performed.

Additional future work concerns the applied interpolation strategy and method. Apart from a simple 2-D linear plane-interpolation other more advanced interpolation methods, such as Kriging or inverse distance weighted (IDW) interpolation, will be investigated. For that purpose, a detailed performance analysis and comparison with the linear interpolation approach will be carried out.

To conclude it can be summarized that for this measurement setup and this kind of evaluation the new methods were just able to improve the standard fingerprinting in a few situations. Long-time measurements at the reference stations could lead to a further improvement of standard fingerprinting. Although the positioning accuracy of Wi-Fi fingerprinting is still not competitive with GNSS the rising number of private and public wireless networks makes it a useful and suitable positioning method, especially in the case if GNSS signals are blocked. The further integration with the inertial smartphone sensors is the right direction to obtain a continuous ubiquitous position solution.

Further research is carried out in combination with a new approach for differential positioning using Wi-Fi. A concept has been developed by the first author (see Retscher and Tatschl 2016a, b) based on the well-known DGPS principle where correction parameters are derived from measurements on reference stations. In the case of Wi-Fi positioning differential RSS corrections can be calculated and applied to the current RSS measurements at the mobile client. If the long-time measurements and the thereof derived dynamical radio maps are applied in positioning a significant improvement is achieved. Currently a series of tests is carried out and analyzed. For further information on this approach which integrates Wi-Fi trilateration with fingerprinting, the interested reader is referred to the paper of Retscher and Tatschl (2016b) presenting very promising results. The feasibility of long-time measurements overlapping the whole measurements process is then more realistic in the case if the two positioning methods are combined meaningfully. As already mentioned above a low-cost solution can be realized by using Raspberry Pi’s to serve as reference stations. It is then possible to perform continuous localization of mobile users with improved positioning accuracies as in standard Wi-Fi fingerprinting or trilateration as the application of differential corrections yields to a better consideration of large short-time RSS variations in real-time.