Indoor Localization by Fusing a Group of Fingerprints Based on Random Forests

03/07/2017 ∙ by Xiansheng Guo, et al. ∙ 0

Indoor localization based on SIngle Of Fingerprint (SIOF) is rather susceptible to the changing environment, multipath, and non-line-of-sight (NLOS) propagation. Building SIOF is also a very time-consuming process. Recently, we first proposed a GrOup Of Fingerprints (GOOF) to improve the localization accuracy and reduce the burden of building fingerprints. However, the main drawback is the timeliness. In this paper, we propose a novel localization framework by Fusing A Group Of fingerprinTs (FAGOT) based on random forests. In the offline phase, we first build a GOOF from different transformations of the received signals of multiple antennas. Then, we design multiple GOOF strong classifiers based on Random Forests (GOOF-RF) by training each fingerprint in the GOOF. In the online phase, we input the corresponding transformations of the real measurements into these strong classifiers to obtain multiple independent decisions. Finally, we propose a Sliding Window aIded Mode-based (SWIM) fusion algorithm to balance the localization accuracy and time. Our proposed approaches can work better in an unknown indoor scenario. The burden of building fingerprints can also be reduced drastically. We demonstrate the performance of our algorithms through simulations and real experimental data using two Universal Software Radio Peripheral (USRP) platforms.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I abstract

Indoor localization based on SIngle Of Fingerprint (SIOF) is rather susceptible to the changing environment, multipath, and non-line-of-sight (NLOS) propagation. Building SIOF is also a very time-consuming process. Recently, we first proposed a GrOup Of Fingerprints (GOOF) to improve the localization accuracy and reduce the burden of building fingerprints. However, the main drawback is the timeliness. In this paper, we propose a novel localization framework by Fusing A Group Of fingerprinTs (FAGOT) based on random forests. In the offline phase, we first build a GOOF from different transformations of the received signals of multiple antennas. Then, we design multiple GOOF strong classifiers based on Random Forests (GOOF-RF) by training each fingerprint in the GOOF. In the online phase, we input the corresponding transformations of the real measurements into these strong classifiers to obtain multiple independent decisions. Finally, we propose a Sliding Window aIded Mode-based (SWIM) fusion algorithm to balance the localization accuracy and time. Our proposed approaches can work better in an unknown indoor scenario. The burden of building fingerprints can also be reduced drastically. We demonstrate the performance of our algorithms through simulations and real experimental data using two Universal Software Radio Peripheral (USRP) platforms.

Ii IEEEkeywords

GrOup Of Fingerprints (GOOF), Sliding Window aIded Mode-based (SWIM) fusion, multiple antennas, USRP, Random Forests.

Iii Introduction

Emergence of location-based service and applications has led to a growing demand for space sensing and localization [1, 2]. Although Global Positioning System (GPS) has gained great success in many outdoor localization fields, such as commercial, personal, and military applications, it does not perform effectively in complex indoor environments owing to the disability of GPS signals to penetrate in-building materials. Therefore, precise indoor localization is well sought and critical for a wide range of applications.

Indoor localization environment consists of severe multipath and non-line-of-sight (NLOS) between the transmitter and receiver. In addition, the changing environment resulted from moving people and closing/opening of doors and windows, presents a big challenge for indoor localization. These factors degenerate the performance of some range-based indoor localization approaches [3, 4]

. The fingerprint-based approach does not need to estimate the distance between the transmitter and receiver. It achieves better performance than the range-based approach in a complex indoor environment. However, most of the existing fingerprint-based approaches are based on a SIngle Of Fingerprint (SIOF), such as received signal strength (RSS). The major challenge of RSS is its fluctuation with time and changing environment. So, RSS shows low accuracy and poor robustness in practice. Other SIOFs, including channel impulse response (CIR)

[5, 6], signal strength difference (SSD) [7, 8], signal subspace [9, 10], power delay doppler profile (PDDP) [11], can improve the accuracy of indoor localization to some extent. All in all, they all belong to the SIOF-based localization framework, which cannot work well in an unknown indoor environment because it only uses little information about indoor environment.

Another drawback of the SIOF-based localization approach is the big burden of building fingerprint. To reduce this burden, some fingerprint building strategies have been proposed, including crowdsourcing [12], matrix completion (MC) [13], compressive sensing (CS) [14], and others [15]. These techniques can alleviate the fingerprint building burden from different viewpoints. However, the performance of rebuilding fingerprints may decrease as the number of samples in the original fingerprint decreases.

Recently, we first creatively proposed a GrOup Of Fingerprints (GOOF) based localization framework [16]. GOOF can overcome the drawbacks resulted from SIOF. Based on the constructed GOOF, after training multiple GOOF-AadaBoost classifiers, we used MUltiple Classifiers mUltiple Samples (MUCUS) to determine the final location prediction. MUCUS can yield higher accurate results. However, the main drawback of MUCUS is the timeliness.

In this study, we propose a novel localization framework by Fusing A Group Of fingerprinTs (FAGOT) based on random forests. The new proposed GOOF is composed of six different kinds of fingerprints, namely, RSS fingerprints (RSSFs), power spectral density fingerprints (PSDFs), covariance matrix fingerprints (CMFs), and signal subspace fingerprints (SSFs), fourth-order cumulant fingerprints (FoCFs), and fractional low order moment fingerprints (FLOMFs), which can be obtained by different transformations of the received signals

of multiple antennas, as illustrated in Fig. 1. Each fingerprint in the GOOF has its special function. Among them, RSSFs reflect the distance between a transmitter and a receiver; SSFs are robust to multipath propagation [9]; CMFs, FoCFs, and FLOMFs are robust to Gaussian, color, and impulse noise, respectively; PSDFs describe the distribution of signal power in the frequency domain and have been used as an efficient fingerprint in many fields [17]. In a real indoor localization scenario, the types of noise and environment are changing and cannot be predicted in advance, and we cannot know which fingerprint can work better in an unknown indoor scenario. Based on the constructed GOOF, we design a GOOF multiple classifiers based on Random Forests (GOOF-RF) to train fingerprints in the GOOF. Finally, we localize the target by inputting the corresponding transformations of the online data into the strong classifiers. A fast fusion strategy, referred to as the Sliding Window Aided Mode-based (SWIM) fusion algorithm, is proposed to refine a better location estimation.

Fig. 1: The proposed GOOF building sketch by using multiple antennas.

Our proposed localization framework consists of two phases: an offline phase, which includes GOOF building and GOOF-RF training, and an online localization phase, which includes GOOF-RF testing and SWIM fusion, as summarized below.

  • The offline phase

    1. GOOF building: Assume that we have grids in an unknown indoor environment, the received array with antennas is deployed at the origin, and snapshots of size are collected at each grid. Then, we can build the GOOF by using with different transformations. The different labels are also added into the constructed GOOF for further classification.

    2. GOOF-RF training: After obtaining the GOOF, we divide each fingerprint in the GOOF into two parts, one to train the GOOF multiple classifiers based on random forests (GOOF-RF) and the other to test these classifiers. Assume that we have different kinds of fingerprints in our constructed GOOF; then, we can train strong classifiers by using random forests.

  • The online phase

    1. GOOF-RF testing: Assume that we can obtain samples of each fingerprint for testing. First, we input all the testing data to the trees in the random forest strong classifiers. Then, each classifier outputs an

      prediction vector

      . The total prediction matrix is , as depicted in Fig. 3.

    2. SWIM fusion: Based on , we choose a rectangle sliding window of length to provide fast prediction. Our proposed SWIM fusion algorithm can optimize the balance between the localization accuracy and speed, which is very attractive in the real environment.

The proposed localization algorithm can synthesize not only different predictions of strong classifiers but also the predictions of each strong classifier with different samples. The adopted sliding window strategy readily balances the localization speed and accuracy simultaneously. The main contributions of this work are summarized below:

  • As compared with the SIOF-based framework, our proposed FAGOT localization framework can achieve better performance in an unknown indoor environment in that it can fuse the predictions of different classifiers. Theoretically, the more different kinds of fingerprints in the GOOF, the higher localization accuracy of FAGOT.

  • The proposed GOOF-RF training and testing algorithms are simple to implement, and less susceptible to overfitting without tuning a bunch of parameters. The testing time is shorter and easier to realize.

  • The proposed SWIM fusion algorithm can balance the localization speed and accuracy simultaneously by combining the predictions of multiple classifiers and different samples with a sliding window. The localization time could be shortened to of MUCUS with being the length of a sliding window.

  • The fingerprints building burden is reduced efficiently because the GOOF building strategy can obtain different kinds of fingerprints based on the measurements of received antennas. Specifically, in case of building the same number of fingerprints, the building burden of the GOOF is of that of the SIOF-based approaches. Meanwhile, the localization accuracy can be improved remarkably.

Iv Related Work

The existing indoor localization techniques using wireless sensor networks (WSN), wireless local area networks(WLAN), radio frequency identification (RFID) technology, light visible communication, and others [18, 19, 20], have limited ability in coping with complex multipath, NLOS, and changing environment in indoor scenarios. In the past few decades, array signal processing has gained tremendous achievements in outdoor target identification, direction finding, and beamforming [20, 21]. As the development of antenna technique and high speed baseband processing integrated circuit (IC), small array processing platforms, such as USRP, have been used in many fields based on software defined radio (SDR) technology [22]. Hence, indoor localization using small platform with multiple antennas becomes feasible and has been a hot research subject. Kleisouris et al. [23] provided an experimental evaluation of the localization performance under multiple antennas and showed that the localization accuracy can be improved greatly by employing multiple low-cost antennas regardless of whether fingerprint matching, statistical maximum likelihood estimation, or multilateration is used. Note that this conclusion was drawn by only using RSS of multiple antennas as the metric.

Recently, random forest, as one of the most popular machine learning techniques, has been studied widely in many fields

[24]. The random forest is unexcelled in accuracy and runs efficiently on large databases. It can handle thousands of input variables without variable deletion as well as give estimates on which variables are important in the classification. Meanwhile, it can effectively estimate missing data and maintain accuracy when a large proportion of the data are missing. Although random forest has achieved tremendous success in regression and classification problems, it is seldom studied in indoor localization. Calderoni et al. [25] studied an indoor localization approach by using random forest classifiers based on RFID technology. Jedari et al. [26] proposed a random forest based localization approach in the WLAN environment. All these approaches belong to the SIOF-based indoor localization framework. To make full use of multiple fingerprints, we first creatively proposed a GOOF based localization framework in [16]. The constructed GOOF is trained as multiple strong classifiers by using AdaBoost. A multiple classifiers multiple samples (MUCUS) fusion algorithm was proposed to fuse the predictions of these strong classifiers with multiple samples. The robustness and accuracy of [16] are good enough but the speed of localization is slightly slow. In this work, we propose a novel FAGOT indoor localization framework based on random forests to overcome the above drawbacks as follows.

V Methodology

V-a Signal Model

Consider an indoor environment deployed with a uniform linear array (ULA) in which antenna elements are equally spaced apart, with an inter-distance of , as shown in Fig. 1. Let denote the received signal at the th antenna element with channel gain , delay , and angle-of-arrival (AoA) . Note that the received signal of each path consists of an enormous number of unresolvable signals received around the mean of AoA in each element in a complex indoor scenario. A signal is transmitted from the location of . A vector of the received signals in the ULA can be expressed as [27, 20]


where denotes the number of paths received by each antenna element and is an array steering vector. The location of the transmitted signal is to be estimated. The unknown noise vector with being the noise of the th antenna element. The array steering vector is defined as , where its th element is


where denotes a complex field pattern of the th array element and is the carrier wavelength. The received signal in Eq. (1) can be expressed in the following integral form:



represents the channel as a function of the azimuth-delay spread (ADS). The average power azimuth-delay spectrum (PADS) is given by


where is the expectation operator and is the Dirac deta function. The central angular of arrival (CAoA) and angular spread (AS) are defined as


where is the power angular spectrum (PAS).

Similarly, the average delay spread (ADS) and delay spread (DS) can be given by


where is the power delay spectrum (PDS). The indoor localization problem using ULA is to estimate from the measurements of .

V-B GOOF Building

Here, we address how to build our proposed GOOF from the received signals by using snapshots. Assume that we divide the indoor environment into grids with equal spacing. The signal is transmitted from one antenna located at the th grid, and the received signals vector of antenna elements at time is denoted by .

  • Covariance matrix fingerprints (CMFs)
    We can estimate the covariance matrix by using snapshots at the th grid without any knowledge of noise distributions as follows:


    Note that the estimated covariance matrix (7) can be expressed as


    The th entry of (8) is the correlation between the outputs of the th and th antennas. We can estimate the RSS from (8) as follows.

  • RSS fingerprints (RSSFs)
    It is well known that the th diagonal element of the estimated covariance matrix in Eq. (8) denotes the autocorrelation of the received signals of the th antenna element, i.e.,


    So, we can build the RSS fingerprints by taking the diagonal elements of (8), i.e.,


    where is the operator of extracting the diagonal elements of a matrix. In comparing with Eqs. (8) and (10), it is remarkable that the CMFs can offer more information about the indoor channel than that of the RSSFs because the CMFs have much correlation information among antenna elements. So, we have enough reasons to believe that the CMFs yield a more accurate location estimate than that of the RSSFs.

  • Power spectral density fingerprints (PSDFs)
    The normalized PSD can be calculated by



    is a sequence of complex Discrete Fourier Transform (DFT) coefficients for the received signal sequence

    of the th antenna, which is given by


    in which is the DFT length and is the point number in the frequency domain.

  • Signal subspace fingerprints (SSFs)
    By taking eigen-decomposition (ED) of the estimated covariance matrix, we have


    where is the signal subspace corresponding to the

    largest eigenvalues whose elements are the diagonal elements of the diagonal matrix

    ; is the noise subspace, which corresponds to the small eigenvalues. Signal subspace methods are empirical linear methods for dimensionality reduction and noise reduction. They have also been demonstrated to be robust to multipath propagation in indoor localization [9]. Note that we just build the signal subspace fingerprints by taking the first column of instead of finding the columns of for simplicity.

  • Fourth-order cumulant fingerprints (FoCFs)
    The FoC of the received signals can be given by






    It is well known that the FoCFs are generally robust to color noise [28].

  • Fractional low order moments fingerprints (FLOMFs)
    Impulsive noise distorts the signal and causes the degeneration of localization accuracy of source. Studies in [29] have shown that the symmetric alpha-stable (SS) processes are able to model the impulsive noise better. We can calculate the FLOMFs as follows [30].


    where is the characteristic exponent of an SS processes. Note that when , Eq. (17) is the special case of Eq. (7). However, for impulse noise, the FLOM is unbounded. The FLOM is a good statistic used to estimate DOAs of sources in array signal processing field.

Fingerprint Transformations Dimension before transformation Dimension after transformation
CMFs reshape, abs
PSDFs reshape
FoCFs reshape, abs
FLOMFs reshape, abs
SSFs abs
RSSFs none
TABLE I: Transformations on the GOOF.

So far, we have addressed how to build the GOOF based on the received signals. Note that the dimensions of the six proposed fingerprints in the GOOF are not the same. Except for the RSSFs, the rest of them are complex values. For the complex fingerprints, we just take absolute values of them and drop the phase information, which is sensitive to the noise level. We adjust the dimensions and data types of the constructed GOOF, as shown in Table. I. For comparisons, we summarize the GOOF building procedures in Algorithm 1. To obtain as many fingerprints as possible at each grid for further random forests classifiers training, we partition the snapshots into groups with each group having snapshots. We just use the snapshots to estimate each fingerprint.

It is worth to note that the proposed GOOF building strategy can reduce the fingerprints building burden as compared with the SIOF-based approaches [13, 15, 14]. The GOOF building strategy can obtain multiple types of fingerprints with different transformations from the same measurements, while the SIOF building strategies can only obtain one kind fingerprint from the same measurements. Hence, the efficiency of our GOOF building strategy is much higher than the SIOF-based building strategies. In other words, GOOF can obtain the same localization precision with less fingerprints building time as compared with the SIOF. Furthermore, the SIOF building strategies can only reduce the fingerprints building burden but not improve the localization accuracy; our GOOF strategy can not only reduce the fingerprints building burden, but also improve the accuracy of localization, which is very attractive for real application.

1: 1. The received signals of . 2. The number of grid . 3. The location label . 4. The initial empty GOOF , , , , , , . 5. The group number at each grid.
2: GOOF.
3:for   do
4:   for   do
5:      Calculate by using Eq. (7)
6:      Calculate by using Eq. (10)
7:      Calculate by using Eq. (11)
8:      Calculate by using Eq. (13)
9:      Calculate by using Eq. (14)
10:      Calculate by using Eq. (17)
11:      Transform the GOOF like Table. I.
12:       CMFs = CMFs
13:       RSSFs = RSSFs
14:       PSDFs = PSDFs
15:       SSFs = SSFs
16:       FoCFs = FoCFs
17:       FLOMFs = FLOMFs
18:   end for
19:end for
21:return GOOF
Algorithm 1 GOOF building

V-C GOOF multiple classifiers training and testing based on random forests (GOOF-RF)

Random forests (RF) are a combination of tree predictors such that each tree depends on the values of a random vector sampled independently and with the same distribution for all trees in the forest [31]. The key aspect of random forest is the fact that its component trees are all randomly different from one another. This leads to decorrelation between the individual tree predictions and, in turn, results in improved generalization and robustness. A tree is a collection of nodes and edges organized in a hierarchical structure. Nodes are divided into split nodes and leaf nodes. All nodes have exactly one incoming edge.

Fig. 2: The framework of our proposed GOOF-RF training approach.

Our proposed GOOF multiple classifiers based on random forests (GOOF-RF) will build multiple strong classifiers from our constructed GOOF. Each strong classifier yields its final location estimation of the target. We illustrate our proposed GOOF-RF training procedures in Fig. 2, which shows that each kind of fingerprints can be trained as a random forest classifier. We summarize the basic principle of random forests as follows.

Let be a data vector, where the components represent some attributes of the vector and represents the constructed GOOF; is the dimensionality of . In our case, represents the different fingerprints vector built in the GOOF. Note that may vary from different kinds of fingerprints. In general, the feature space and can be very large, especially in the image processing field. Fortunately, we can extract only a small portion of as , where denotes the dimensionality of the subspace and denotes the selected dimensions. In general, . Each node has a test function with binary outputs


where denotes the parameters of the test function at the th split node. Here,

defines the geometric primitive used to separate the input data (e.g., an axis-aligned hyperplane, an oblique hyperplane, a general surface, etc.)

[32]. The parameter vector captures thresholds for the inequalities used in the binary test. The filter function selects some features of choice out of the entire vector .

At each node , depending on the subset of the incoming training set , we learn the function that “best” splits into and . The parameter vector is selected by maximizing the following objective function at the th node


where is called information gain at node and it is a function of the vector . The left child node and right child node are defined in mathematics as


and the information gain can be defined as


where is the Shannon entropy at node before the split, which can be defined as


where indicates the class label of . The set of all classes is denoted as and is the empirical distribution extracted from the points within the set

. Other key model parameters that impact the behavior of a decision tree most include the maximum allowed tree depth

and the tree number in a forest. Given , for a binary decision tree, we can calculate the number of internal nodes and the number of leaf nodes as follows


The total number of nodes in a decision tree with depth is .

The proposed GOOF-RF algorithm can be divided into an offline training phase and an online testing phase. We first summarize the procedures of our proposed GOOF-RF training algorithm in Algorithm 2. After obtaining multiple strong classifiers, each testing sample is simultaneously pushed through all trees in these multiple strong classifiers until it reaches the corresponding leaves. Tree testing is done in parallel, thus achieving high computational efficiency. The GOOF-RF testing algorithm is summarized in Algorithm 3. Note that the function in Algorithm 3 denotes that it chooses the classification having the most votes (over all the trees in the forest). Note that the th entry of the vector in Algorithm 3 is 1 and others are zeros if the th classifier predicts the location to be . We can transform given by the th strong classifier into a vector whose th entry is the location label estimated from the th classifier when inputting the th testing sample, i.e.,


where returns the location of nonzero entry in . The final output of Algorithm 3 is the final prediction matrix , as shown in Fig. 3. How to fuse these predictions is the key for indoor localization. In [16], we proposed the MUCUS fusion algorithm to obtain a robust location prediction. However, the timeliness is the bottleneck for real implementation. In this paper, we derive an improved fusion algorithm to balance the robustness, accuracy, and timeliness.

1: 1. The training sample set . 2. The number of decision trees for each fingerprint in the GOOF. 3. The weak learner model . 4. The tree depth . 5. The number of different fingerprints in the GOOF.
2: The strong random forest classifiers
4:for   do
5:   Select a geometric primitive
6:   Initiate
7:   for  do
8:      Compute the number of nodes using Eq. (23)
9:      Set node
10:      for  do
11:         Initiate information gain =0
12:         Select a threshold randomly based on
13:         Select split dimension based on
14:         Call the weak learner
15:         Compute entropy of node using Eq. (22)
16:         Compute entropy of node using Eq. (22)
17:         Compute information gain using Eq. (21)
18:         Choose at split node using Eq. (19)
20:      end for
22:   end for
23:end for
Algorithm 2 GOOF-RF Training
1: 1. The testing sample set . 2. The strong random forest classifiers . 3. The number of testing sample .
2: The prediction matrix
3:for   do
4:   for  do
5:      Initiate the prediciton of random forest
6:      for  do
7:         Compute the prediction of the th tree
8:      end for
10:   end for
12:end for
Algorithm 3 GOOF-RF Testing

V-D Sliding Window aIded Mode-based (SWIM) fusion localization algorithm

Let be the testing samples at the th grid of the th type fingerprint, where is the th sample vector of the th fingerprint and is the corresponding location label. We can input the testing samples of the th fingerprint one by one into the th random forest strong classifier, which has been trained by Algorithm 2. Then, the th strong classifier will work as a predictor to give a prediction vector for the samples, in which denotes the output of the th classifier when inputting the th testing sample. The total prediction matrix , as shown in Fig. 3. For the th testing sample, the strong classifiers yield different prediction results . For the th strong classifier, different testing samples may give different prediction results . From these prediction results, we find that the outputs of all the strong classifiers with different samples can be combined to produce a more accurate fusion result. We demonstrate our proposed Sliding Window aIded Mode-based (SWIM) fusion localization algorithm as follows.

Fig. 3: The diagram of the prediction matrix and sliding window.

First, we can calculate the entropy of the prediction of the th strong classifier with samples as follows


where is calculated as normalized empirical histogram of predictions of the th strong classifier in . denotes the robustness of the th classifier to the environment noise, i.e., the smaller , the better robustness of the predictions of the th strong classifier.

Similarly, we can calculate the entropy of the th testing sample for all strong classifiers as follows


where is calculated as the normalized empirical histogram of predictions of the th testing sample in . Note that shows the environment adaptability of these fingerprints, i.e., how well these fingerprints cope with multipath and changing environment. The bigger , the more complex of the environment.

Based on the above analysis, a good location estimation should be given from the th strong classifier with the minimal entropy , which has good performance to cope with the environment noise and yields


which means that we choose the predictions of the th strong classifier with a high priority which has the best robustness to the environment noise. In order to combine the predictions of the other classifiers, we first give a mode-based robustness estimator as


where returns the sample mode of , which is the most frequently occurring value in . This estimator means that the optimal estimate must come from the most frequently occurring value in , meanwhile, this value must occur in .

The main drawback of (28) is the timeliness. In general, the value of determines the speed of real localization, the bigger , the slower the localization speed. In order to optimize the localization speed and robustness, we further propose the SWIM fusion algorithm as follows.

Assume a rectangular sliding window of length () to be used in the samples. We can just consider fusing submatrice instead of the total prediction matrix . Given a matrix , we can obtain some submatrice . The number of is . Here, is the prediction frequency, i.e., the localization occurrences per unit time, which shows the speed of localization, . Based on submatrice , we can derive the SWIM algorithm as


where the submatrix and vector are




respectively, where . By using (29), we can obtain a faster localization result with a tiny robustness loss.

Assume that the true grid location is

; to evaluate the performance of our proposed algorithm, we define a metric of the prediction probability



which will be used to evaluate the performance of our proposed FAGOT localization framework. The operator is defined as


V-E Performance Analysis

V-E1 Localization time

One of the main advantages of our proposed framework is that the localization time based on can be shortened to of the localization time based on . The sliding window aided strategy can not only improve the speed of our approach, but also overcome the fluctuation of some SIOF-based localization approaches, which can be seen in experimental results. The larger , the smaller and the slower of the localization speed. However, it can improve the robustness and accuracy of SWIM.

V-E2 Robustness

Consider the worst case that the predictions of all strong classifiers in a sliding window are different, which corresponds to . In this case, if , which means is a small number close to zero, then (33) can give a stable prediction. However, if is not the small number close to zero ( can be determined in advance depending on ), it shows that has different predictions. So, it may give a wrong prediction based on (33) with a certain probability, and thus leads to the decrease of robustness. In this case, we can improve the robustness by choosing a bigger sliding window length .

V-E3 Accuracy

From (33), we find that our estimator will work well, even if only one of these six strong classifiers works well while the others have lower prediction probability. Generally speaking, the larger , the higher accuracy and robustness but slower speed of SWIM. So, how to balance the speed and accuracy is a key problem. In general, should be chosen based on the noise level. The basic principle of choosing is that we should choose a larger when SNR is lower. In general, if one of the strong classifiers can provide a more robust prediction, can guarantee that the fusion result of SWIM will not be worse than the best one of these strong classifiers.

1: 1. The final prediction matrix . 2. The length of sliding window .
2: The prediction probability .
4:Compute by using (30)
5:Compute by using (31)
6:for   do
7:   for   do
8:      Compute the entropy by using (25)
9:   end for
10:   Find the optimal classifier label by using (27)
11:   Compute the location estimate by using (29)
12:end for
13:Calculate the prediction probability by using (32)
Algorithm 4 SWIM

Vi Experimental Results

We will employ simulation data and real data to test the performance of our proposed algorithms. In the simulation part, we consider different noise by using our proposed signal model in Section V-A, and in the real experimental setup, we use two SDR [22] platforms to collect real data.

Vi-a Simulation Data

Assume we have a ULA of 7 antennas with carrier frequency at 950 MHz. The interspace between adjacent antenna is half wavelength. The uniform PAS model is adopted, i.e., , where is defined by (5). An indoor environment is divided into grids with equal interspace of 1m. The location of the th grid is denoted as ; the ULA is deployed at the corner of this room with the location of the central element being , and its normal direction points to the diagonal of the indoor area (for simplicity, we just consider a 2D indoor environment, i.e., =0). The CAoA and average time delay of the transmitted signal are calculated from the locations of receiver array and the location . We control the time delay spread (DS) and angular spread (AS) to be and , respectively. We add 20 paths to each LOS at each grid.

First, Gaussian white noise is added to the generated signals. The signal-noise-ratio (SNR) is defined as

, where and

are signal and noise variance, respectively. The total number of snapshots is 3200 at each grid, and we get

samples with each sample having 32 snapshots. The SNRs are set from -10 to 30 dB with 8 dB interspace. The fingerprints are considered. We build the GOOF by using Algorithm 1, and then we divide each of these fingerprints into two groups: one with 60 samples is used to train the multiple strong classifiers, and the other with 40 samples is used to test these classifiers. The tree number of each random forest , the tree depth , and the weak learner is a decision dump.

Fig. 4 shows the average prediction probabilities for all grids of SWIM versus different SNRs. In this figure, the CMFs, PSDFs, FoCFs, RSSFs, FLOMFs, and SSFs are the prediction results by using random forests separately. The MUCUS curve is calculated from all 40 testing samples at all grids [16]. The curve of our proposed SWIM algorithm is obtained by using a sliding window with length . It is seen that SWIM and MUCUS have higher prediction probabilities than the other SIOF-based methods regardless of the SNRs. SWIM almost has the same performance as MUCUS. However, the prediction frequency of SWIM is , while the prediction frequency of MUCUS is . This means that SWIM can give 36 times location predictions, but MUCUS can just produce one prediction result in the same time period. Hence, SWIM is a faster algorithm as compared with MUCUS.

Fig. 4: The prediction performance of different algorithms versus different SNRs: Gaussian noise.

Second, we consider the color noise case. The color noise is generated from filtering Gaussian white noise by using a finite impulse response (FIR) filter with a rectangular window of length 5. The same SNRs are considered. The parameters of random forest and sliding window are the same as the ones in above the Gaussian noise case. The results of these algorithms are illustrated in Fig. 5. As shown in Fig. 5, SWIM shows better performance than MUCUS when SNRs are low. Both of them are better than the other six SIOF-based localization algorithms.

Fig. 5: The prediction performance of different algorithms versus different SNRs: color noise.

Now, we consider an impulse noise case. A (SS) processes whose SNR is defined as , where is the dispersion parameter. The other parameters are , , [29]. The same SNRs values are considered. Fig. 6 shows the prediction results of SWIM versus different SNRs. As compared with MUCUS and the other six SIOF-based algorithms, SWIM obtains the best predictions for different levels of impulse noise. We can conclude from Figs. 4, 5, and 6 that SWIM and MUCUS have nearly the same performance in cases with higher SNRs, while SWIM shows higher accuracy in cases with lower SNRs, such as SNRs below zero because the exponent weighting strategy used in MUCUS cannot select a correct prediction when all the strong classifiers show poor performance. SWIM cannot work well in an extremely poor case too, such as SNR=-10 dB as shown in Fig. 6 because all classifiers cannot work well in this case.

Fig. 6: The prediction performance of different algorithms versus different SNRs: impulse noise.

To test the performance of GOOF-RF versus different random forests parameters. At each grid, we choose 50 RSS samples randomly in the GOOF as the training fingerprints, and the other 50 samples as the testing fingerprints. We evaluate the prediction probability versus different in Fig. 7. Here, and is a decision stump. Note that the prediction probability becomes better as increases from 2 to 8. However, the performance shows limited improvement when increases from 6 to 8, while the training time and testing time become much longer, as shown in Fig. 8.

We fix and to be the above decision dump and change from 10 to 100 with 30 interspaces. We depict the average prediction probability versus SNRs with different in Fig. 9. The corresponding average training and testing time are shown in Fig. 10. It is seen that the best for our problem is 40, too large cannot improve the prediction probability significantly. Note that the training time belongs to the offline phase, which does not effect the localization speed. We here just evaluate the testing time. From Fig. 10, we can find the total time of testing 40 samples is s when and . Hence, the testing time for each sample is about s. This can be treated as the localization time of SWIM because the sliding window we used can obtain each prediction corresponding to every input testing sample after the first 5 samples. While MUCUS needs s to give a prediction. So, SWIM algorithm is much faster than MUCUS.

Fig. 7: The prediciton probability versus SNRs with different tree depths.
Fig. 8: The training and testing time versus different tree depths.
Fig. 9: The prediciton probability versus SNRs with different tree numbers.
Fig. 10: The training and testing time versus different tree numbers.

Vi-B Real Data

We use the SDR technology to build our testbeds. The experiment receiver platform is based on two Universal Software Radio Peripheral1 (USRP1) units; each USRP1 is equipped two RFX900 daughterboards and each daughterboard is equipped two antennas (i.e, a total of four antenna elements), and the transmitter platform is one USRP1 with one RFX900 daughterboard and one antenna. The transmitter and the receiver platforms are developed based on the open-source software toolkit named GNU Radio. The operating system is Ubuntu10.10. The pictures of this two experimental platforms can be seen in [16]. The experimental environment is the KB508 laboratory at University of Electronic Science and Technology of China (UESTC), which has many desks, partitions, and about 30 graduate students. The topological layout is also shown in [16]. The length and width of our laboratory are 9.8m and 6.3m, respectively. The receiver array with 4 antennas is deployed at the corner of the laboratory at the height of 1.5m.

We transmit a cosine signal with carrier frequency of 900MHz at 18 grid to build the GOOF by using the signals received at the four antennas. snapshots are taken, and are divided into samples with each group having 5 snapshots, i.e., we just use 5 () snapshots to estimate each fingerprint at each grid. Each kind of fingerprints has 80 samples incorporated in our final GOOF. We use 40 samples () as the training data, and the other 40 () samples as the testing data. is a 2D general oriented hyperplane; , . A sliding window of length is adopted to the 40 testing samples. So, we can obtain predictions at each grid. The prediction probability of SWIM is calculated based on the predictions by using (32), as shown in Fig. 11. While MUCUS uses all the 40 samples to give one prediction. From Fig. 11, it shows that the prediction probabilities of MUCUS at all grids are one because it gives only one prediction at each grid and all the predictions are correct. SWIM can obtain almost the same performance as MUCUS even with the shorter sliding window Note that our results are given without any knowledge of environment. So, our algorithm is very robust to the unknown indoor environment. By the way, the number of snapshots used to compute the GOOF is only five, which may degrade the fingerprints in the GOOF. However, our proposed fusion algorithm can work well in this case.

Fig. 12 shows the evaluation of the localization speed of our proposed algorithm, with the testing time of 40 samples versus different grid numbers. The testing time of different fingerprints shows little differences. From this figure, we find that the total testing time of 18 grids is about 1.0231s. So, the testing time of each grid is about 0.0568s. In this time, MUCUS can only output one location prediction, while SWIM can produce 31 location predictions with . So, our proposed algorithm can balance the localization speed and robustness well.

Fig. 11: The comparison of prediction probability at each grid.
Fig. 12: The testing time versus different grid numbers.

Vii Conclusion

Based on the FAGOT localization framework, we have proposed random forest based classifiers training and testing algorithms. We have also proposed SWIM to balance the speed and robustness of indoor localization. Our proposed algorithms can not only overcome drawbacks of SIOF-based indoor localization methods, but also balance the robustness and speed of the MUCUS [16].

Apart from the fingerprints constructed in the GOOF of [16], we have also incorporated PSDFs into our GOOF, which further enrich the channel information of the GOOF. Of course, other fingerprints, such as CIR, PDDP, crowdsourcing, can also be added into the GOOF. All in all, GOOF strategy just represents the developing trend of building fingerprints. Here, we just discuss random forest based classifiers and AdaBoost based classifiers [16]

. Other machine learning methods, such as Support Vector Machine (SVM), Neural Network (NN), and Convolutional Neural Network (CNN), can also be used as classifiers. How to use this GOOF better by using machine learning is an interesting future pursuit.

Simulations show that our proposed localization framework can achieve better performance regardless of noise types. The real experiment results demonstrate that our proposed localization framework is still robust to the unknown localization environment. The proposed GOOF can not only reduce the burden of building fingerprints, but also can offer more information about the indoor environment for further localization, and is thus very attractive for localization in an unknown complex indoor environments.


  • [1] X. Guo, L. Chu, and X. Sun, “Accurate localization of multiple sources using semidefinite programming based on incomplete range matrix,” IEEE Sensors Journal, vol. 16, no. 13, pp. 5319–5324, 2016.
  • [2] X. Huang, T. Han, and N. Ansari, “On green-energy-powered cognitive radio networks,” IEEE Communications Surveys & Tutorials, vol. 17, no. 2, pp. 827–842, 2015.
  • [3] G. Wang, H. Chen, Y. Li, and N. Ansari, “NLOS error mitigation for TOA-based localization via convex relaxation,” Wireless Communications, IEEE Transactions on, vol. 13, no. 8, pp. 4119–4131, 2014.
  • [4] G. Wang, Y. Li, and N. Ansari, “A semidefinite relaxation method for source localization using TDOA and FDOA measurements,” Vehicular Technology, IEEE Transactions on, vol. 62, no. 2, pp. 853 – 862, 2013.
  • [5] C. Nerguizian, C. Despins, and S. Affès, “Geolocation in mines with an impulse response fingerprinting technique and neural networks,” Wireless Communications, IEEE Transactions on, vol. 5, no. 3, pp. 603–611, 2006.
  • [6] Y. Jin, W.-S. Soh, and W.-C. Wong, “Indoor localization with channel impulse response based fingerprint and nonparametric regression,” Wireless Communications, IEEE Transactions on, vol. 9, no. 3, pp. 1120–1127, 2010.
  • [7] A. Mahtab Hossain, Y. Jin, W.-S. Soh, and H. N. Van, “SSD: A robust RF location fingerprint addressing mobile devices’ heterogeneity,” Mobile Computing, IEEE Transactions on, vol. 12, no. 1, pp. 65–77, 2013.
  • [8] X.-S. Guo, L. Chu, B. Li, B. Xu, Q. Wan, and Y. Shen, “A robust vector matching localization approach based on multiple channels SSD fingerprinting of ZigBee networks,” Progress In Electromagnetics Research, vol. 144, pp. 133–140, 2014.
  • [9] H. Tsuji, S. Kikuchi, and M. Kaveh, “Indoor localization using subspace matching: An experimental evaluation,” in Sensor Array and Multichannel Processing, 2006. Fourth IEEE Workshop on.   IEEE, 2006, pp. 541–545.
  • [10] S. Ikeda, H. Tsuji, and T. Ohtsuki, “Effects of spatial correlation between signal subspaces on indoor localization using subspace matching,” in TENCON.   IEEE, 2007, pp. 1–4.
  • [11] T. Öktem and D. Slock, “Power delay doppler profile fingerprinting for mobile localization in NLOS,” in PIMRC.   IEEE, 2010, pp. 876–881.
  • [12] C. Wu, Z. Yang, and Y. Liu, “Smartphones based crowdsourcing for indoor localization,” Mobile Computing, IEEE Transactions on, vol. 14, no. 2, pp. 444–457, 2015.
  • [13] S. Nikitaki, G. Tsagkatakis, and P. Tsakalides, “Efficient training for fingerprint based positioning using matrix completion,” in EUSIPCO.   IEEE, 2012, pp. 195–199.
  • [14] Z. Gu, Z. Chen, Y. Zhang, Y. Zhu, M. Lu, and A. Chen, “Reducing fingerprint collection for indoor localization,” Computer Communications, 2015.
  • [15]

    J. Talvitie, M. Renfors, and E. S. Lohan, “Distance-based interpolation and extrapolation methods for RSS-based localization with indoor wireless signals,”

    Vehicular Technology, IEEE Transactions on, vol. 64, no. 4, pp. 1340–1353, 2015.
  • [16] X. Guo and N. Ansari, “Localization by fusing a group of fingerprints via multiple antennas in indoor environment,” Sep. 2016. [Online]. Available:
  • [17] W. C. Suski II, M. A. Temple, M. J. Mendenhall, and R. F. Mills, “Using spectral fingerprints to improve wireless network security,” in GLOBECOM.   IEEE, 2008, pp. 1–5.
  • [18] H.-S. Kim, D.-R. Kim, S.-H. Yang, Y.-H. Son, and S.-K. Han, “An indoor visible light communication positioning system using a rf carrier allocation technique,” Journal of Lightwave Technology, vol. 31, no. 1, pp. 134–144, 2013.
  • [19] Y. Zhang, N. Ansari, and H. Tsunoda, “Wireless telemedicine services over integrated ieee 802.11/wlan and ieee 802.16/wimax networks,” IEEE Wireless Communications, vol. 17, no. 1, pp. 30–36, 2010.
  • [20] X. Guo, Q. Wan, W. Yang, and X. Lei, “Low-complexity 2D coherently distributed sources decoupled DOAs estimation method,” Science in China Series F: Information Sciences, vol. 52, no. 5, pp. 835–842, 2009.
  • [21] X. Guo, Q. Wan, C. Chang, and E. Y. Lam, “Source localization using a sparse representation framework to achieve superresolution,” Multidimensional Systems and Signal Processing, vol. 21, no. 4, pp. 391–402, 2010.
  • [22] J. Friedman, A. Davitian, D. Torres, D. Cabric, and M. Srivastava, “Angle-of-arrival-assisted relative interferometric localization using software defined radios,” in MILCOM.   IEEE, 2009, pp. 1–8.
  • [23] K. Kleisouris, Y. Chen, J. Yang, and R. P. Martin, “Empirical evaluation of wireless localization when using multiple antennas,” IEEE Transactions on Parallel and Distributed Systems, vol. 21, no. 11, pp. 1595–1610, 2010.
  • [24] M. Sonka, V. Hlavac, and R. Boyle, Image processing, analysis, and machine vision.   Cengage Learning, 2014.
  • [25] L. Calderoni, M. Ferrara, A. Franco, and D. Maio, “Indoor localization in a hospital environment using random forest classifiers,” Expert Systems with Applications, vol. 42, no. 1, pp. 125–134, 2015.
  • [26] E. Jedari, Z. Wu, R. Rashidzadeh, and M. Saif, “Wi-Fi based indoor location positioning employing random forest classifier,” in IPIN.   IEEE, 2015, pp. 1–5.
  • [27] Y. S. Cho, J. Kim, W. Y. Yang, and C. G. Kang, MIMO-OFDM wireless communications with MATLAB.   John Wiley & Sons, 2010.
  • [28] C. L. Nikias, “Higher-order spectral analysis,” in Engineering in Medicine and Biology Society, 1993. Proceedings of the 15th Annual International Conference of the IEEE.   IEEE, 1993, pp. 319–319.
  • [29] X. Zhong, A. Premkumar, and A. Madhukumar, “Particle filtering for acoustic source tracking in impulsive noise with alpha-stable process,” Sensors Journal, IEEE, vol. 13, no. 2, pp. 589–600, 2013.
  • [30] T.-H. Liu and J. M. Mendel, “A subspace-based direction finding algorithm using fractional lower order statistics,” Signal Processing, IEEE Transactions on, vol. 49, no. 8, pp. 1605–1613, 2001.
  • [31] L. Breiman, “Random forests,” Machine learning, vol. 45, no. 1, pp. 5–32, 2001.
  • [32]

    A. Criminisi, J. Shotton, and E. Konukoglu, “Decision forests: A unified framework for classification, regression, density estimation, manifold learning and semi-supervised learning,”

    Foundations and Trends® in Computer Graphics and Vision, vol. 7, no. 2–3, pp. 81–227, 2012.