Jiancun Fan,Jianxiong Zhang,Xiaoyuan Dou
School of Information and Communication Engineering,Xi’an Jiaotong University,Xi’an,Shaanxi 710049,China
Abstract:In order to achieve higher accuracy and lower cost of indoor localization,we propose a positioning method using multiple input and multiple output(MIMO)channel state information(CSI)as a fingerprint.The method can be divided into three stages,feature extraction,offline training and online localization.In the feature extraction,the segmented average and principal component analysis(PCA)are used to reduce the data dimension and decrease system complexity.In the offline training,the deep neural network(NN)model is trained to implement the position classification.In the online localization,the data are input into the trained NN model first,and then its output is further processed by weighted k-nearest neighbor(WKNN)technology to estimate the position.Experimental results show that the proposed method can significantly reduce the positioning error compared to other methods and the average error is 1.39m in a complex indoor environment.
Keywords:electronics and communication engineering; indoor positioning; channel state information;neural network;PCA;WKNN
Localization is the core technology in various location-based services such as navigation,wireless network resource management,mobile advertising,and weather forecasting[1].Although GPS has a good performance in outdoor positioning,but it cannot be used in indoor case due to the penetration loss of GPS signal and the multipath[2,3].The traditional distance-based positioning method is not suitable for indoor positioning due to the existence of multipath and the absence of direct path in many cases.The distance-based positioning method estimates the location through wireless signal parameters.For instance,the positioning method based ontime of arrival(ToA)andtime difference of arrival(TDoA)is to estimate the location according to the time of signal transmission between the mobile device and the base station[4,5].The positioning method based onangle of arrival(AoA)is to estimate the location according to the angle of signal transmission between the mobile device and the base station[6,7].They perform poorly in multipath environments or environments without direct path[8].In the case of no direct path and multipath,fingerprint-based location method is generally used and has attracted many researchers’attention due to its low cost and high accuracy in complex indoor environments[9].This paper mainly studies the singlesite fingerprint location based on MIMO-CSI which makes full use of the gains brought by multiple antennas andorthogonal frequency division multiplexing(OFDM).
Localization systems based on fingerprints are usually divided into offline stage and online stage.The offline stage is also called the training stage and the online stage is also called the test stage[10].In the offline stage,the task is usually to usereceived signal strength(RSS)or CSI as the fingerprint to establish a database[11–13].In the online stage,the task is to match the test data with the database through a matching method to estimate the location of the test data.
The RSS is widely used in fingerprint location because it is simple and easy to obtain[14].For example,the Horus system uses a probabilistic approach to estimate the location of RSS data[15].However,the RSS is easily affected by indoor multipath,which leads to the wrong mapping of fingerprint map(the far point has stronger RSS than the near point)and the great difference between different times in the same location.At the same time,it is a rough value measured with theradio frequency(RF)signal of each packet level,so it is difficult to obtain the exact value corresponding to the position[16].At present,most wireless communication devices support OFDM,which can achieve carrier-level information.CSI is measured at the physical layer,and it contains the amplitude and phase of the channel on each transmission subcarrier.It can be used as a fingerprint to locate and improve the accuracy of indoor positioning.For example,thefinegrained indoor fingerprint recognition system(FIFS)scheme uses the weighted average CSI value on multiple antennas to determine the location of the test object through correlation calculations based on a probability algorithm[17].Chapreet al.[18]proposes an indoor fingerprint positioning system that combines CSI and MIMO.This system calculated the difference value of CSI amplitude and phase on the adjacent subcarriers respectively,and then constructed the position fingerprint based on the average value of all the differences,so as to make full use of the frequency diversity of CSI to improve the accuracy of indoor positioning.The above fingerprint positioning method needs to use the CSI of multiple base stations as fingerprints to build a database[17,18].With the application of MIMO in wireless communication[19],it is possible to obtain a large amount of CSI information in a certain location through a single site.Single site location is an attractive technology because of its low cost and easy implementation.Jaffe and Wax[20]proposed a localization method of extracting location fingerprint information by maximum identification transformation projection and location estimation by similarity matching.Compared with the above method,the proposed method in this paper takes the space-frequency dimension as a feature,which first uses segmented average,mean filtering,and PCA for data preprocessing.Segmented average and PCA are used to reduce the dimensionality of data,and thus reduce the complexity of the system.Mean filtering is used to reduce errors introduced by measurement and electronic noise.It can make better use of the spatial diversity gain brought by multiple antennas and the carrier-level information gain brought by CSI.Then the method use the ability of neural network to fit complex nonlinearities to capture the uniqueness of location.Finally,WKNN technology is used to effectively consider the influence of surrounding points to accurately estimate the position.
We propose a positioning method using CSI of a single-site MIMO-OFDM system as fingerprint,and to preprocess the data by segmented average,mean filtering and PCA,so as to make full use of the spatial diversity brought by MIMO and the frequency diversity brought by OFDM,and extract the most effective data information for location estimation.Through data preprocessing,the original very high dimensional features of the spatial frequency domain are reduced to extra low dimensional,and the main features of the wireless signal related to the location are retained.
The multi-layer neural network is used for complex nonlinear learning,and the data are classified accurately according to the position.This method can well fit the classification-based location estimation problem,and has strong generalization ability.
According to the output of the neural network model,the WKNN method is used to reasonably consider the influence of surrounding points and estimate the location of the unknown data.The experimental results show that the proposed method is more accurate than the original one.
Our experimental environment is a 10m×5m laboratory,in which there are many obstacles such as tables,benches and experimental equipment.The short distance among the sample points will cause the wireless signal to be unable to accurately distinguish the position,and the long distance among the sample points will cause the error of the estimated position to increase.The location resolution will increase with the center frequency and bandwidth of signal transmission.Considering the complexity of indoor environment,the distance between adjacent training points is set to 50cm.CSI data from 105 locations were collected in this region as training data sets,and 18 locations are randomly selected in this region as the test data set,as shown in Figure 1.
Figure 1.Experimental scenarios.
Figure 2.Software radio platform.
Figure 3.Architecture.
The method proposed in this paper is to use the software radio platform ZedBoard as shown in Figure 2 to obtain the CSI data sent by the fixed single station and received at different locations.ZedBoard is a low-cost development board for Xilinx Zynq™-7000 that runs on the Windows operating system and obtain CSI data through channel estimation algorithm at the receiving end.
The transmission channel bandwidth is 10MHz,and the sub-carrier interval is Δf=15kHz.A total of 600 sub-carriers are used to transmit signals.The data sending program is run at the sending end.The number of transmitting antennas is 2 and the data is continuously sent out at the transmitting frequency of 2GHz.The receiving data program is run at the receiving end with 2 receiving antennas.The sending time interval of each OFDM symbol is 71.4µs.CSI packets of 90 ms are collected at each receiving location to obtain a CSI complex matrix of 600×2×2×1260.In order to better simulate the real life situation,the training data set and the test data set were obtained separately.Training data sets are used in the preprocessing of calculation parameters.
As shown in Figure 3,the overall architecture of our proposed method is divided into feature extraction,offline training stage and online positioning stage.CSI needs to undergo the same feature extraction before offline training and online positioning to extract effective features as fingerprints.
Figure 4.Carrier interval.
Because the test equipment has multiple antennas and the signal has the characteristics of multiple carriers,the dimensionality of the CSI data measured in the baseband is very high.It also brings dimensional disasters while containing rich information.The requirements of the equipment and the complexity of the calculation increase as the dimensionality of the input data increases[21].By analyzing the data,an effective feature extraction method can be proposed to further reduce the computational complexity.We propose a three-step method for feature extraction as follows.
3.2.1 Subcarrier Segment Average
Since the change of adjacent carriers is small,we propose to use the method of sub-carrier segmentation to reduce the dimension first,so as to remove the dimension with strong correlation.The basic principle of averaging in segments is to segment subcarriers,and the average value of data in each segment is taken as the representative of the segment.The size of each segment is determined by the shortest distance between two weakly coherent subcarriers.The coherence of two arbitrary different subcarriers with a distance ofkΔfis defined as
whereρkΔfrepresents the correlation coefficient of the two data with the interval ofkΔfcarriers.H(f)is the channel response of subcarrierf,H(f+kΔf)∗is the conjugate of the channel response of subcarrierf+kΔf.Δfis the interval bandwidth between the sub-carriers,kis the number of carriers in the requested segment,and the value ofkis calculated by selecting the appropriateρkΔf.Typically,ρkΔfis commonly set to be 0.5 or 0.9.Since the high dimensionality of the data,we setρkΔfto 0.5.
The data at each location can be divided into 4 groups of 600×1260 CSI complex matrices,representing one of the 4 antenna pairs of the 2×2 transceiver antenna.Because the relative uniqueness of amplitude information in multipath interference,path loss and frequency diversity of different locations in the environment,this paper proposes to use amplitude information of CSI complex matrix as fingerprint information.In order to make full use of spatial diversity,each antenna is processed separately.
Calculate the subcarrier segmentation interval of the 4 antenna pairs at each position in the frequency domain.When the correlation coefficient was less than 0.5,the minimum subcarrier segment interval is the number of subcarrier segment intervals at that position,and an appropriate number of segment carriers is obtained.The number of subcarrier intervals at each location is shown in Figure 4.
Figure 5.Before and after mean filtering.
Taking the smallest number of subcarrier intervals in all training positions as the number of carriers in a segment to perform auto-correlation dimension reduction,we can getk=6.After averaging the subcarrier segments,the dimension of the data changes from 2400 to 400.
3.2.2 Mean Filtering
In order to suppress the interference of measurement noise and electronic noise in data measurement,we use the method of segmented mean filtering.The basic principle of segmented mean filtering is that the value of each point is replaced by the mean value of the points in the field of the point.
wheresrepresents the data after mean filtering,xrepresents the original data,andNis the range.Mean filtering is performed by setting appropriateNvalues.
Mean filtering is performed on each antenna pair at each location.Figure 5 shows a comparison of the first antenna pairs at the first position before and after filtering.At the same time,it can be seen that the mean filter can better suppress the interference caused by noise and make the data better represent the characteristics of the corresponding position.
3.2.3 Principal Component Analysis
For each location,the space-frequency features are extracted as fingerprints,and the mean-filtered data is structurally transformed to form a 400×1260 matrix.400 represents the characteristics of a certain moment,1260 represents different moments.In order to reduce the calculation complexity,this paper proposes to use PCA method to further reduce the dimension of the data,so that the data structure is simpler,the complexity of the neural network model is reduced,and the robustness of the system is increased.
PCA is an unsupervised dimension reduction method,which transforms a vector from the original d-dimension input space into the new k-dimensional(k < d)space by means of projection.The projection process is expressed as
wherexrepresents the vector before dimension reduction,wrepresents the projection matrix,andzrepresents the vector after dimension reduction.By maximizing the variance of the sample,the projection of the sample onto the principal componentwis the most dispersed and the difference between the sample points becomes the most obvious.PCA is based on two hypotheses,one is that the large variance vector of the data is of great importance,and the other is that the main component vectors of the data are orthogonal,so linear algebra can be used to solve the problem.
There are two methods for obtaining the principal components of the sample.One is to perform eigenvalue decomposition on the covariance matrix of the sample data set,and the other is to perform singular value decomposition on the data matrix.The feature vector corresponding to the largest topkfeatures or singular values is selected to form a projection matrix.The value ofkis determined by the ratio of the sum of the firstkeigenvalues or singular values to the total eigenvalues or singular values.According to the interference degree of the indoor signal by noise and the low complexity requirements of the system,the threshold of the variance interpretation rate is set to 0.95,which can reflect the data characteristics well.Finally,each location fingerprint information is a matrix of 14×1260.Among them,14 is a characteristic,and 1260 is a different moment.The first position point CSI matrix,PCA before and after comparison chart is shown in Figure 6.
Figure 6.Before and after PCA.
PCA reduces the dimension of data by 96.5%,which greatly improves the calculation efficiency and reduces the complexity of the neural network model.
The neural network aims to understand the function of the human brain and is a non-parametric distributed parallel information processing method.The multi-layer neural network adjusts the interconnection weights of a large number of internal neurons layer by layer through the back propagation algorithm,so as to achieve the purpose of processing complex nonlinear mapping.The input-output mapping relationship of each neuron as
wheref(x)represents the activation function of the neuron,xrepresents the input vector of the neuron,brepresents the bias of the neuron,andyrepresents the output of the neuron.
The number of neurons in the input layer is determined by the sample features,the number of neurons in the output layer is determined by the number of classification categories,and the hidden layer determines the complexity of the neural network.The more layers and the number of neurons,the more complex the model.Complex models are prone to overfitting,that is,the model performs well on the training set and poorly on the test set.If the model is too simple,the complex nonlinear mapping cannot be learned well.
We propose a neural network model with three hidden layers as shown in Figure 7 to classify the input data features.
Figure 7.Neural network model.
Figure 8.Comparison of distance error when WKNN takes different K values.
The offline training stage learns the neural network model according to the characteristics of each location point data in the training data,so that the trained neural network model can be used to estimate the position of the new input feature.
In the online stage,we input the test data into the trained neural network.According to the output of the neural network,we use the WKNN method to estimate the location where the data is accurately estimated.
The output of the neural network is a vector whose dimension is the number of neurons in the output layer.The number of neurons in the output layer is the same as the number of positions of the training set.Data characteristics of different locations were input during training,and the expected output of the corresponding neural network was set as 1 for one neuron and 0 for the rest.When the test set is preprocessed,the neural network will also output the vector whose dimension is the number of position points of the training set.According to the principle that similar inputs of neural networks produce similar outputs,when the value of a certain output neuron is larger,the position of the test sample is closer to the corresponding position of the neuron.
The test set is measured at a location different from the training set,so in order to comprehensively consider each point near the test point,we use the WKNN method to estimate the location.
where(x,y)is the estimated position andKis the constant set,and the largestKoutputs in the neural network output are selected.wiis the proportion of thei−th output amongKoutputs,and(xi,yi)is the position coordinate of the training data corresponding to thei−th output.
In this section,we introduce the neural network structure and parameter settings,and the positioning results when the positioning algorithm WKNN takes different K values.The performance of this algorithm is compared with the FIFS algorithm and thesingle-site localization via maximum discrimination multipath fingerprinting(SSLVMDMF).
The transmitter is placed directly in front of the laboratory,and the receiver is used at each test point to obtain the CSI matrix.
The neural network adopts a model with three hidden layers,and the number of neurons in the input layer is 14,the same as the number of fingerprint features.The number of neurons in the three hidden layers was set to 1400,700 and 350,respectively.The first hidden layer is set to 1400 to fully capture the information contained in the features,the second hidden layer and the third hidden layer decrease successively,and the number of neurons in the output layer is determined to be 105 according to the number of position points in the training data set,thus building a complex deep neural network.
Since this is a non-convex multi-class training problem,the optimizer uses root mean square prop,the loss function uses categorical crossentropy,the activation function of the neuron in the input layer and the hidden layer selects the relu function.In order to facilitate multiple classification,softmax function was selected as the activation function of the neuron in the output layer.
The performance metric is the distance error as
whereNis the number of testing points and(xi,yi)andis the true and estimated position of thei−th testing points,respectively.εis the distance error.
4.2.1 Comparison of Positioning Results When WKNN Takes Different K Values
WKNN can comprehensively consider the influence of the points near the test point on the positioning results,making the positioning results more accurate.K value represents the number of nearby points to be considered,and different K values will have different results.When K value is small,the surrounding points cannot be better considered.When K value is large,it is easy to bring in the distant points,increasing the distance error and computing complexity.
Figure 8 shows that when the value of K increases,the distance error first decreases and then increases,but due to the principle of the WKNN algorithm and the output layer of the neural network selects the softmax function,the farther away from the estimated position,the smaller the weight the effect of location estimation is also smaller.Therefore,as K increases,the accuracy of position estimation changes less.For simplicity and high accuracy,when K is 8,it is the optimal value,which can well consider the surrounding points of the estimated position,and will not introduce distant points.As shown in Figure 8,a good result has been achieved when the K value is taken as 4.The position estimation is shown in Figure 9,when the K value is taken as 4,the points in the four directions of the unknown position can be considered theoretically,and when the K value is 8,the influence of the surrounding points is more comprehensively considered.
Figure 9.Position estimation.
4.2.2 Performance Comparison of Different Localization Algorithms
Based on the same experimental data,this section compares the performance of the proposed method with that of two well-known positioning methods that are more relevant to the proposed method.
FIFS is a CSI-based indoor positioning method proposed by Xiaoet al.[17].The method is divided into calibration phase and positioning phase.Calibration phase,the CSI matrix from multiple MIMO base stations is first averaged in the antenna domain and averaged in the frequency domain to reduce system complexity,and then the sum of squares of CSI amplitudes on different subcarriers is used as a fingerprint.Positioning phase uses Bayesian algorithm for position estimation.SSLVMDMF is a single-site positioning method based on maximum resolution multipath fingerprint recognition proposed by Jaffe and Wax[20].This method uses the maximum resolution projection of the space-time covariance matrix of the sample as the fingerprint,and uses the similarity profile matching criterion for position estimation.
The positioning performance of the above two indoor positioning methods and thesingle-site indoor fingerprint localization based on MIMO-CSI(SSIFL)method proposed in this paper under the same experimental data is shown in Figure 10.The proposed method achieves better positioning performance in complex indoor environments compared to other algorithms.The experimental results show that the mean value of FIFS positioning error is 1.79m,the mean value of single site localization via maximum discrimination multipath fingerprinting positioning error is 3.14m,and the mean value of positioning error of the two methods is less than the mean value of 1.39m.
Figure 10.Comparison of positioning results.
Figure 10 shows that the method proposed in this paper has about 40%probability of positioning accuracy within 1m,and about 90% probability of positioning accuracy within 2m.The experimental results show that the minimum positioning error is 0.19m.
We propose a single site indoor location method based on MIMO-CSI.This method makes full use of the spatial diversity of MIMO to construct a unique fingerprint for each location after data preprocessing.At the same time,joint dimensionality reduction technology is used to reduce the space frequency dimension of data from 2400 to 14,which greatly reduces the complexity of model and calculation and improves the robustness of the system.The deep neural network model is used to fully capture the characteristics of location information and carry out accurate classification.In addition,we use WKNN technology to further fully consider the adjacent points of the estimated position for accurate position estimation.The results show that in the complex indoor environment,the average positioning accuracy is 1.39m.Compared with the other two well-known localization algorithms,the method presented in this paper presents better results in this environment.
In this paper,we only use the amplitude information of CSI matrix,and we can also use phase,power and so on to construct fingerprint.I believe that all the information contained in the CSI matrix can be perfectly utilized with the proper preprocessing method to achieve a better positioning effect.
This work is partially supported by the National Natural Science Foundation of China under Grants No.61671367,the Key Research and Development Plan of Shaanxi Province under Grant No.2018GY-003,the Research Foundation of Science and Technology on Communication Networks Laboratory,and the Fundamental Research Funds for the Central Universities.