Indoor Positioning System Based on Standardizing Waveform Tendency

Estimating the indoor position of users in commercial buildings remains a significant challenge to date. Although the WiFi-based indoor localization has been widely explored in many works by employing received signal strength (RSS) patterns as the features, they usually lead to inaccurate results as the RSS could be easily affected by the indoor environmental dynamics. Besides, existing methods are computationally intensive, which have a high time consumption that makes them unsuitable for real-life applications. In order to deal with those issues, we propose to use standardizing waveform tendency (SWT) of RSS for indoor positioning. We show that the proposed SWT is robust to the noise generated by the dynamic environment. We further develop a novel smartphone indoor positioning system by integrating SWT and kernel extreme learning machine (KELM) algorithm. Extensive real-world positioning experiments are conducted to demonstrate the superiority of our proposed model in terms of both positioning accuracy and robustness to environmental changes when comparing with state-of-the-art baselines.


Introduction
Over the past two decades, with the increasing popularity of smart devices (e.g., smartphones and tablet computers), the demand of Location-Based Services (LBSs) also comes with fast-pace increasing, for instance, driving to a destination, tracking, and recording user's movements [1,2]. These services are commonly performed outdoors through Global Positioning System (GPS) and its derived applications (APPs). Nevertheless, GPS technology is unavailable inside buildings as satellites' signals are blocked by objects in indoor circumstances [3,4].
In cities, there are increasingly numerous shopping malls, which have miscellaneous business shops on each floor as well as large parking lots. GPS cannot offer the positioning services with satisfactory accuracy indoors. Consequently, numerous indoor positioning technologies have emerged to meet the growing demand for indoor LBS in GPS-denied surroundings, such as indoor positioning technology based on Bluetooth [5], ZigBee [6], Radio Frequency Identification (RFID) [7], Ultrawideband (UWB) [8], and IEEE 802.11 (WiFi) [9]. Unlike other wireless technologies, WiFi does not need extra installation and deployment efforts as the existing WiFi infrastructure is off-the-shelf in all kinds of indoor public places thanks to the development of network technology. For the above reason, WiFi-based indoor localization has received extensive attention, and many research institutions have focused on developing WiFi-based LBS technology [10].
After nearly a decade of exploration and research, different WiFi-based positioning methods have been developed. There are two main types of indoor localization methods: range-free and range-based. The location methods based on ranging include Time of Arrival (TOA) [11], Time Difference of Arrival (TDOA) [12], Direction of Arrival (DOA) [13], and received signal strength (RSS) [14,15]. However, these ranging-based methods are not appropriate for non-line-of-sight (NLOS) indoor environment [16,17], and the system based on communication hopping is generally complicated. Fingerprint technology becomes the most prevailing indoor positioning method since it can provide satisfying positioning accuracy.
There are a variety of algorithms employed by fingerprint positioning technology [18]. The most widely adopted algorithms are classification models such as k-nearest neighbor (KNN) [19]; weighted k-nearest neighbor algorithm (WkNN) [20]; probability algorithms, e.g., Bayesian (BYS) estimation [21]; regression algorithms, e.g., Support Vector Regression (SVR) [22]; and neural networks such as Back Propagation (BP) [23] and Convolution Neural Network (CNN) [24]. However, some algorithms (e.g., neural networks) have high computational costs as they are trained using a large amount of data and requiring advanced hardware. Thus, they usually cannot be deployed in commercial computers. Amongst all those approaches, the RSS has been widely adopted. However, it is noteworthy that the RSS is commonly noisy because the RSS could be easily affected by the dynamic environment (e.g., random flow of people and the movement of furniture) and this may result in severe degradation of localization accuracy.
In this paper, we propose a novel indoor positioning system (IPS) to address the aforementioned issues caused by the dynamic environment's effects. Compared with existing works, the proposed IPS improves the traditional fingerprint-based positioning system by applying the standardizing waveform tendency (SWT) of RSS and kernel extreme learning machine (KELM). Experimental results showed that the proposed algorithm can deliver reliable and precise localizations compared with baselines and has high robustness and efficiency to deal with the noise of the indoor environmental dynamic.
The contributions of the paper are summarized as follows: (1) To deal with the robustness issues caused by environmental dynamics, we propose to employ the standardizing waveform tendency as fingerprint characteristics. The proposed SWT is more effective in extracting patterns of wireless network environment and has better tolerance to equipment heterogeneity and indoor dynamic environment. It is worth noting that SWT can be integrated into existing WiFi positioning schemes (2) We propose a kernel extreme learning machine based localization algorithm for indoor smartphone positioning system. The KELM-based localization algorithm is of fast learning speed and better generalization ability (3) We conduct multitudinous simulations and real experiments. The localization error of our algorithm is 1.9 m, which reduces the localization error by 1 m. In contrast, the baseline algorithms typically have an error of more than 3 meters The remaining of this paper is organized as follows. Section 2 gives an introduction of the new fingerprint feature, i.e., SWT. Section 3 provides our proposed SWT-KELM algorithm. In Section 4, the experiment validation of our IPS is presented. We draw the conclusion in Section 5.

Standardized Waveform Tendency Fingerprints
This section elaborates on the standardized waveform tendency (SWT) of RSS employed as a fingerprint feature of our IPS to handle the effects of dynamic environments and equipment heterogeneity.  To investigate the distribution of RSS, we collected RSS measurements in a 32 × 16 m industrial robotics laboratory. There are many large-scale instruments, tables, and chairs crowded in the experimental area where most of the LOS paths are blocked. The layout of the industrial robotics laboratory for experiment is demonstrated in Figure 1. Eight commercial WiFi routers (TP-Link WDR6500) are adopted as access points (APs) in the proposed localization system. The locations of these 8 APs are presented in Figure 1. All APs are placed on 1.2 meters above the ground. We leverage the smartphone (OPPO R7sm) to collect the RSS data in our experiment. Figure 2 shows the RSS data collected from a certain AP over a continuous period at a reference point. It can be found from the figure that at the same point, the received signal strength values from the same AP will fluctuate over time, and large attenuations are generated at some moments. Figure 3 illustrates the raw RSS waveform for 500 measurements from eight APs at the same reference point. It should be noted that although the shape of the curves is chaotic, they show a certain similar trend. This phenomenon can be explained from the theoretical way that the RSS measurements should follow the same distribution without noise and outliers. Motivated by this observation, instead of using RSS fingerprint directly, a new fingerprint feature could be developed with the shape of the RSS curves. So we propose a new fingerprint-standardized waveform tendency, which standardizes the RSS waveform at one location and makes RSS have a consistent trend. The proposed SWT is an idealized fingerprint feature data, leading to improving the accuracy and robustness of fingerprint positioning.
Besides, from the figure, we could find that there are multiple outliers introduced by environmental dynamics and hardware restrictions. To remove the outliers, we need to find a R for n RSS values R i ði = 1,⋯nÞ, which denotes the mean value of n RSS measurements collected at a sample 2 Journal of Sensors point from the same AP, to minimize the square sum of the difference between R and R i , i.e., According to the Gaussian error theory, when the measured value obeys the normal distribution, the probability of the residual that falls into the threefold variance interval (i.e., ½−3σ, 3σ) exceeds 99.17%, and the probability of falling outside this interval is less than 0.13%. Therefore, it can be considered that the measurement with the deviation outside the area is an anomaly. This is the Three-Sigma Limits method.
From (2), we can see that the arithmetic average of R i is R, so the deviation is e According to the 3σ criterion, where the residual deviation is greater than three times the standard deviation, the corresponding measurements will be considered as outliers and should be replaced by R.
where e R b is the outlier in the observations ð1 ≤ b ≤ nÞ.

Journal of Sensors
The removal of outliers will remain a useful information involved in RSS measurements and help to realize satisfied localization performance. Then, we get a new RSS dataset R. The processed RSS waveform is shown in Figure 4.
Considering that the possessed RSS will lead to limited robustness of real-life location prediction, we intend to add some instability characteristics into the offline training measurements. To appropriately expand the predictable range of the new RSS waveform, after several experiments, we add noise N (N ∈ ½−1, 1, satisfying uniform distribution) to the new RSS after removing outliers, namely, where X is the SWT of RSS. SWT can decrease the interference of outliers and abnormal pulses, leading to higher accuracy and robustness of the positioning system. Figure 5 illustrates the SWT waveform of RSS measurements.

Proposed SWT-KELM Algorithm
We shall illustrate the framework of the proposed SWT-KELM in this section.

Preliminaries on KELM. Extreme learning machine (ELM) is designed to train Single-hidden Layer Feedforward
Network (SLFN). Recently, due to its good learning ability [25,26], SLFN has been widely applied in many fields. However, traditional feedforward neural networks generally employ the gradient descent algorithm for training, which has the following defects: (1) since multiple iterations are necessary for training the weights and threshold, it usually takes a long time to train the network; (2) gradient descent algorithm is always easy to fall into local minimum and hard to obtain the global minimum; and (3) the setting of the learning rate has an extremely great effect on the performance of the network. Different from traditional learning algorithms, the weights between the input layer and the hidden layer in ELM are randomly generated, as well as the bias of the hidden layer. The optimal solution could be acquired by setting the number of neurons in the hidden layer [27,28]. Thus, the ELM algorithm could obtain higher training speed and better generalization ability than traditional learning algorithms.
GivenZarbitrary distinct training samples ðX j, P j Þ, j = 1, 2, 3, ⋯, Z, where X j = ½x j,1 , x j,2 , ⋯, x j,m T ∈ R m , P j = ½p j,1 , p j,2 , ⋯, p j,m T ∈ R m , P j in a single hidden layer network withMneural units can be described as follows: where β i is the weight matrix of the output layer and gð·Þ indicates the activation function. W i = ½ω i,1 , ω i,2 , ⋯, ω i,M T denotes the weighting matrix between the input layer and hidden layer, b i is the bias of the ith hidden layer neuron, and • indicates the inner product operation. By simplifying (7), we obtain where To train the network to obtain a minimum error of the estimated output, β, W, and b need to satisfy the leastsquares equation (11). Because the bias b and the input weight W are randomly generated, the least-squares solution   Journal of Sensors of (10) for β can be obtained as (12).
Equation (12) could be rewritten with optimization theory as where C denotes the regularization coefficient and ξ j represents the prediction error of the ground truth relative to the estimated output. Equation (13) could be solved by the KKT optimal conditions Ω ELM is defined as the kernel matrix by applying the Mercer condition: where Kðx i , x j Þ denotes the kernel function, which represents the element in Ω ELM at the jth column and ith row. The output of the hidden layer could be expressed as [26] f In short, the training process of KELM could be mainly summarized in three steps: (1) Randomly set the bias b of the hidden layer and the weight matrix W between the input layer and the hidden layer (1) Offline training stage: the framework of the offline creation procedure is demonstrated in Algorithm 1 (2) Online positioning stage: when a user launches a positioning request to the smartphone, the smartphone collects RSS real time and sends RSS measurements to the server. Then, RSS measurements are fed into the SWT-KELM network for position prediction. In the end, the estimated position information is sent to the smartphone and read by the user

Experimental Validation
In this section, numerous experiments were carried out with the purpose of assessing the performance of the proposed SWT-KELM positioning algorithm. We first depict the deployment of the experiment and the architecture of the proposed IPS, then analyze the results of the experiment and evaluate the performance of our IPS.

Architecture of IPS Based on Smartphone.
The architecture of the proposed smartphone-based IPS is presented in Figure 6. The proposed IPS mainly includes three main components: the existing commercial WiFi routers, mobile phones, and a server. The smartphone used in the experiment is OPPO R7sm. An Android APP for data collection was developed to synchronously collect RSS data and then send RSS data to the server. Meanwhile, a web-based monitor system on the server was developed to allow the server to communicate directly with the mobile phone for receiving collected RSS measurements. The RSS from each AP (TP-Link WDR6500) is collected at each reference point using the smartphone that has the installed APP we developed. Then, the smartphone sends all the collected RSS values to the server (DELL PowerEdge T630). When all data is collected and sent, the server processes the data to form a database. The next step is to train the SWT-KELM model with the built database. Finally, in the online positioning phase, when users request real-time positioning, RSS measurements are collected and sent by smartphone in real time, and then, the well-trained SWT-KELM model is utilized to estimate the current location on the server.

Data Collection.
Our test scenario is a laboratory for industrial robotics which covers an 32 m × 16 m area. The layout of the industrial robotics laboratory for the experiment is demonstrated in Figure 1. There are 23 undergraduate students working and studying in this laboratory regularly. In order to include more features of dynamic environments, our experiments are conducted over five weeks, which could result in greatly increasing the robustness of the data for real-time positioning. There are 100 reference points and 20 testing points collected in our experiments, as shown in Figure 1. Reference points are represented by red dots and testing points are demonstrated by black triangles. The distance between the two adjacent sample points is set to 1.2 m. The collection interval for experiments is set to 200 ms. According to the previous investigations, using more APs, training points, and packages leads to better performances. However, the data acquisition with a larger dataset will lead to high labor costs and computation costs. In order to do a trade-off between the cost and accuracy, 500 sets of RSS vector data are collected at each training and testing point. During the offline stage, 100 offline calibration points were selected; at each offline point, 500 packet RSS receptions from 8 routers are collected. Thus, 100 × 500 RSS information was used to establish the SWT location fingerprint database. The SWT-KELM model is trained on the server with the SWT fingerprints and their physical coordinates as inputs and outputs accordingly. During the online localization stage, the RSS measurements were collected in different periods of a week to reflect the environmental dynamics caused by human movements and physical layout variations. The position of the user is estimated by adopting the well-trained SWTI-KELM model with the raw online RSS.

Parameter Setting
4.3.1. The Type of Activation Function. Based on the above analysis, it could be found that kernel function type has a major impact on the prediction accuracy of KELM. There are two commonly used kernel functions in the KELM algorithm: RBF-kernel and lin-kernel. We evaluate the localization result of different kernel functions. As depicted in Figure 7, the RBF-kernel has better positioning accuracy than lin-kernel in our settings. Thus, RBF-kernel is employed as the kernel function for our proposed SWT-KELM positioning algorithm.

The Number of Hidden Nodes.
Another essential parameter for the SWT-KELM is the number of neurons. After the kernel function is determined, we employed the fivefold cross-validation approach with a range from 100 to 1500 and a step size of 10 to set the optimal number of neurons. As demonstrated in Figure 8, the capability of SWT-KELM is optimal when the number of neurons is 400.

Experimental Results and Evaluation.
In this paper, we utilize Root Mean Square Error (RMSE) and standard deviation (STD) as evaluation indicators to appraise the experimental results: where s denotes the total number of test samples. In our experiment, s is 10,000.

Comparison of Localization Accuracy with Different
Localization Algorithms. Four classical localization methods, BYS, KNN, ELM, and OS-ELM, are chosen to further compare their performance when SWT and RSS are employed as fingerprint characteristics, respectively. The experimental results of different algorithms are shown in Table 1 and Figure 9. Table 1 depicts that the proposed SWT-KELM algorithm exceeds the other four algorithms in terms of RMSE and STD. It can be easily observed that the positioning performance of each algorithm with RSS fingerprint characteristics is not as good as that with SWT, indicating that our standardized waveform trend method is better than the original RSS fingerprint method. In addition, it can be seen that the ELM-based algorithms are better than other algorithms.
As demonstrated in Table 1, the proposed algorithms incur longer training time due to the combination of standardized RSS and kernel functions. What needs to be specifically mentioned is that our proposed algorithm only occupies a little amount of time during the online Server installed with developed software Smartphone installed with APP Figure 6: System architecture of the proposed IPS. 6 Journal of Sensors positioning stage, which can verify that our IPS could satisfy the need of actual applications. Figure 10 displays a comparison of cumulative percentiles of positioning error, which demonstrates that our proposed SWT-KELM algorithm could obtain higher accuracy and lower STD than other algorithms. We also compare our proposed IPS with state-of-the-art WiFi-based positioning systems. The average positioning error of the STI-WELM [29]  (1) Impact of different numbers of APs Furthermore, we also evaluated the positioning error of different algorithms with different numbers of APs. As demonstrated in Figure 11, the positioning error of all five algorithms increases with the reduction in the number of APs. It is easy to see that SWT-KELM is superior to other approaches in various situations. The increase in the number of AP is equal to the increase in the number of features. The experimental results agree with the theory that the increase in the number of features is conducive to the prediction accuracy for machine learning algorithms. From Figure 11, we also notice that in the case of the number of AP changes, the positioning error of our proposed SWT-KELM is relatively stable. It is worth noting that the positioning error of SWT-KELM is the smallest when there are only three APs available within indoor environments.      Performance evaluation of SWT-KELM under the influence of different numbers of training points. We compare the performance of SWT-KELM with other localization methods when the number of training points is altered.
We consider three different settings of training points for this experiment. The locations of training points and testing points are the same as those in Data Collection. The overall performance in terms of RMSE between these approaches under different numbers of training points is demonstrated in Table 2. It can be easily found from Table 2 that the average localization error of all algorithms becomes better when more training points have been trained offline. What is more, as shown in Table 2, SWT-KELM outperforms other methods in every situation.
Performance evaluation of SWT-KELM under the influence of different locations of training points. In order to investigate the influence of the locations of training points, we compare the performance of SWT-KELM with different locations of training points and testing points. Different from the locations shown in Figure 1, we randomly select training points and testing points from this dataset. The number of training points and testing points is 100 and 20, respectively. The RMSE is measured over 2000 repeated realizations, and this experiment is conducted based on the same parameters of algorithms. Figure 12 describes the localization errors of different algorithms by randomly selecting the locations of training and testing points. As illustrated in Figure 12, the localization accuracy of SWT-KELM is higher than that of the other approaches.
In summary, SWT-based localization algorithms can provide higher accuracy than traditional RSS-based fingerprint approaches. The proposed SWT fingerprints have an obvious effect in reducing localization error caused by environmental dynamics. Furthermore, SWT-KELM, which integrates the advantages of both SWT and KELM, can     Journal of Sensors effectively reduce localization error, compared with existing methods in representative indoor environment.

Conclusion
In this paper, we propose an SWT-KELM-based indoor localization system using smartphones. Different from existing fingerprint-based methods, the proposed algorithm standardizes the waveform tendency of RSS to enhance the robustness for noises in the measurements of IPS. The positioning accuracy of the proposed IPS under different experimental settings is further discussed. Extensive experiments are carried out, and the results show that compared with state-of-the-art baselines, our proposed SWT-KELM method is more accurate, efficient, and robust.

Data Availability
Data is available on request.

Conflicts of Interest
The authors declare that they have no conflicts of interest.