A Novel Indoor Localization Algorithm for Efficient Mobility Management in Wireless Networks

,


Introduction
With the penetration of mobile devices and smart applications [1], how to provide efficient mobility infrastructure and how to effectively manage mobility issues in future networks become more and more challenging [2][3][4][5][6][7][8].For example, we need to provide flexible mobility infrastructure to support real-time multimedia applications and on-demand services in vehicular networks.The current Long Term Evaluation (LTE) 4G networks [9] and the future 5G [10] networks require smart mobility management schemes to handle the mobility of even millions of mobile terminals.Mobility infrastructure and mobility management are also critical in the new emerging computing paradigms like mobile cloud computing [6] and fog computing [11].
How to accurately estimate the position of a target object (e.g., mobile device or a person) plays a vital, important role in efficient mobility management.In recent years, along with the rapid development of location-based services (LBSs), accurate positioning techniques are required in many fields including travel guidance, mobile advertising, and urban computing.Many LBSs require knowing the positions of target objects in indoor environments.Indoor localization has received much research attention in recent years [12][13][14][15][16][17].Among others, due to the pervasive penetration of wireless local area networks (WLANs) and Wi-Fi enabled mobile terminals, the fingerprint-based indoor positioning technology [18] has attracted much research attention in both academic and industry communities.Most existing works utilize received signal strength (RSS) [14] or channel state information (CSI) [12,19] as the fingerprint of a particular position.Unlike RSS that is an aggregated value of the all subcarriers' amplitudes, CSI estimates the channel on each subcarrier in the frequency domain.Thus it can depict the multipath propagation to some extent and provide more stable and fine-grained signature in distinguishing different positions [20].

Wireless Communications and Mobile Computing
Many localization methods utilize single type of signal feature as location fingerprint, which may not well deal with the instability of signal features caused by mobility.We need to combine multiple types of signal features (e.g., RSS and CSI) to enhance the robustness and reliability of positioning and support more flexible mobility management.Moreover, we find that it is not the case that for all positions CSIbased approaches generate more accurate results than RSSbased approaches, although the overall statistical positioning performance of CSI-based method is usually better than that of RSS-based approaches [13,19].We conduct some experiments and find that, for a nonnegligible fraction of positions, the Horus algorithm [14], which is a representative RSS-based fingerprint approach, outputs more accurate location estimations than FIFS [19], a representative CSI-based fingerprint approach.
The above observation inspired us to design new localization algorithms to achieve higher localization accuracy by fusing different signal features as the position's fingerprint.In particular, we combine the results of Horus [14], FIFS [19], and D-CSI [15], which use different features as fingerprints of positions, to achieve higher accuracy than using each single feature.D-CSI [15] is a new positioning approach which uses the distribution of CSI amplitude as location fingerprints called Hp.It achieves higher accuracy than FIFS because it uses distribution of CSI amplitude as position fingerprints, which contains both spacial-diversity and frequency diversity of the signal, while FIFS only simply adds up all the subcarriers' amplitudes and uses them as position fingerprints called He.
In this paper, based on our previous work [21], we propose a hybrid method with multiple feature fusion (MFF) to counteract the positioning error of single feature based approaches.We first propose Fusion 1, a weighted fusion localization method simply combining the results of Horus and FIFS which can quickly obtain the location of mobile user.In order to further improve the positioning accuracy, we propose Fusion 2 which merges three different features as position fingerprints, namely, RSS, He, and Hp.Specifically, we first get a set of reference points called alternative reference points by running Horus, FIFS, and D-CSI, respectively.Secondly, we select three most possible candidate positions from the generated reference points of the three approaches.When there are more than three reference points, we use a minimal-triangle principle to select three out of them.Finally, we calculate a weighted centroid of the three reference points and take it as the target location.Experiments show that the proposed localization approach achieves median error of 0.5m and 1.1m in two typical indoor environments, significantly less than that of the best single feature based approach whose corresponding error is 0.7m and 1.3m, respectively.In average, our approach can reduce localization error by a factor of around 30% by feature fusing.
The rest of this paper is organized as follows.Section 2 reviews related work.In Section 3 the proposed method is described in detail with analysis.The simulation results are given and discussed in Section 4. Finally, Section 5 concludes this paper.
The authors analyze advantages of different schemes and compare their performance via simulation.In [22], the authors propose a self-organizing and adaptive Dynamic Clustering algorithm to perform efficient data gathering in WSNs with a mobile element.
The mobility infrastructure and mobility management in LTE 4G networks and 5G networks have also been widely studied recently.In [4] the authors discussed how to implement a decentralized LTE network and design a novel mobility management approach to support mobile IP.In [2] the authors discuss how to efficiently manage resource and handle mobility issues in dense 5G networks.In [10], the authors propose a memory-full context-aware mobility management algorithm that can predict the mobility of devices to achieve fast network handover.In [6,11] the authors summarized latest research progress in new emerging computing paradigms like cloud computing and fog computing.

Indoor Localization.
Indoor localization has attracted a growing research attention and various techniques have been proposed, including Wi-Fi [14,33,34], Bluetooth [35], radiofrequency identification (RFID) [7,36], FM radio [37], acoustic signals [38], magnetic field [39], UWB [40], and light [41].Among these signals, the use of Wi-Fi signal has attracted continuous attention due to the pervasive deployment of WLANs and Wi-Fi enabled mobile devices.Many efforts have been done to improve accuracy of WLAN based localization approaches.
The indoor localization system RADAR [33] is a pioneer work in WLAN fingerprinting, which used the K-nearest neighbor method to get the location of a person and achieved a median error of about 5m.Horus [14] used a maximum likelihood based approach to infer the target position and achieves higher accuracy than RADAR.Besides these two typical RSS-based fingerprint location approaches, there are many improvements over them.More RSS-based indoor localization approaches can be found in the literature review [42].
The signals of WLAN based localization contain RSSI and CSI.Compared to using RSSI as fingerprints, channel state information is considered as a finer grained signature to improve the localization accuracy.Wu  fingerprint-based indoor location system called FIFS [13], which used the CSI values obtained from the physical layer.
The authors collected and proceeded with the CSI values as fingerprint by leveraging both the frequency diversity and spatial diversity to generate the radio map.Specifically, FIFS used the aggregated CSI amplitude values over all the subcarriers and leverages the spatial diversity to improve the performance of the RSSI-based method.The location fingerprint, which is aggregated over the all subcarriers, is a coarse metric and may not effectively distinguish the target position among different locations.Xiao et al. [15] proposed a D-CSI system that makes better use of the frequency diversity with different subcarriers and the spatial diversity with multiple antennas and thus effectively improves the localization accuracy.The Kullback-Leibler divergence is used to calculate the similarity between different fingerprints, based on which the best matched position is calculated in the localization phase.Sen et al. [43] proposed a PinLoc system that utilizes the per-subcarrier frequency response as the feature of a location and relies on the machine learning algorithms to classify a device measurement to one of the trained locations.It leverages the frequency diversity but does not consider the spatial diversity.Wang et al. [17] presented DeepFi which is a deep learning based indoor fingerprinting scheme using CSI information.Although these techniques achieve a high localization precision, they require intensive computations and more training samples to localize the mobile users via machine learning or deep learning.

System Description
The CSI-based approaches usually achieve higher accuracy than the RSS-based approaches, but we find that the former may have lower accuracy than the latter in some positions.Therefore, the localization accuracy can be improved by integrating the methods that are based on different physical measurement.
In order to ensure the timeliness of localization results, we first give a method that leverages the weighted fusion of RSS and He.Then, adding the Hp feature, a localization method of fusing three features is proposed to further improve the positioning accuracy.

System Framework.
There are two phases in fingerprintbased positioning system: the training phase and the positioning phase.Figure 1 shows the system architecture.In the training phase, we acquire physical measurements of wireless signals for calibration points, including both RSS and CSI.Then the features of He [19] and Hp [15] are extracted from the CSIs, together with the RSS as the location feature.Finally, we use the position information and the location feature of the calibration points to construct the fingerprint databases of RSS, He, and Hp, respectively.
In the positioning phase, RSS and CSI values are firstly collected at an unknown location.They are sent to the positioning engine and processed using the method as in the training phase to extract the fingerprint.In terms of positioning timeliness and accuracy, two methods are proposed to get the location of the mobile user.One fuses RSS and He features, called Fusion 1; the other one fuses RSS, He, and Hp features, called Fusion 2.
For each fingerprint feature, Fusion 1 finds the location result of the mobile user.Specifically, we feed out the RSS and He to Horus and FIFS, to calculate the candidate position for each approach.The position of the mobile user is obtained by weighted fusion of the two candidate results.
Adding the Hp feature, Fusion 2 finds three candidate reference points whose fingerprints are mostly close to the fingerprint of the unknown position.Specifically, we feed out the RSS, He, and Hp to Horus, FIFS, and D-CSI, respectively, and calculate the candidate position set for each approach.Three most possible candidate points are then selected from these positions according to a newly defined metric called confidence degree.Finally, the weighted centroid of the three selected candidate points is calculated and used as the position estimation.are denoted as  = { 1 ,  2 , ⋅ ⋅ ⋅ ,   }.The algorithm contains 4 steps and the detailed operations in each step will be described as follows.

Algorithm
Step 1. Establish the RSS, He, and Hp fingerprint database.
Given the coordinates of the reference points and corresponding RSS and CSI values, we build the RSS, He, and Hp fingerprint database.Taking RSS as an example, the process of the fingerprint database construction is as follows.We denote the RSS vector of the M reference points as , where    represents the RSS of the ith reference point from the Nth AP.Then,   and L constitute the RSS fingerprint database.The features He and Hp can be obtained by FIFS and D-CSI approaches.Thus,  ,  , and L constitute the He and Hp fingerprint database.
Step 2. Fusion 1 calculates the coordinates of the test point.
We denote   = [ 1 ,  2 , ⋅ ⋅ ⋅ ,   ] as the RSS obtained by the mobile device at an unknown location.Then the distance between the point and the reference point is Step 3. Fusion 2 calculates and fuses the candidate reference points.
We denoted   = [ 1 ,  2 , ⋅ ⋅ ⋅ ,   ] as the Hp preprocessed under the CSI.Using symmetric KL distance, the distance   between each reference point and the test point is calculated under D-CSI method.We sort  ,  , and   in the ascending order and select the first three reference points as the candidate positions for RSS, He We put all points in  ,  , and   into a position set called   and calculate the degree of each candidate point as follows.For each candidate point, we draw a circle with radius R (whose optimal value will be determined in Section 4) and count the number of reference points in   that fall in the circle.The number is defined as the degree of that candidate point.When calculating the degree, if the reference point is at the area boundary, its degree is increased by 0.5 to compensate for the boundary effect.After calculating degree for all points in  , we sort them in descending order according to their degree and denote the sorted set as  .
The final position calculation and optimization are shown in Algorithm 2.

Algorithm Analysis.
Assume that the reference points are evenly distributed in the monitoring area in a grid pattern with grid space a.When R is less than a, the degree of each reference point will be zero because no other reference point will fall within the circle.When  ≤  < √ 2, the alternative reference point adjacent to the reference point will fall into a circle with radius R. When √ 2 ≤  < 2, an alternative reference point that is either adjacent to the reference point or diagonally opposite to the rectangle falls within a circle of radius R. Therefore, based on the above analysis, in the next Input:  ,  , R, offset Output: The coordinates of the target point (  ,   ) (1) Calculate the number of the reference points with the degree of  (1) and  (2), denoted as 1 and 2, respectively.
Find the set  = { 1 ,  2 , ⋅ ⋅ ⋅ ,   }, where   is a reference point of degree  (2) and m is the number of the reference points of degree  (2) in  .(5) Obtain the all candidate set  = { 1 ,  2 , ⋅ ⋅ ⋅ ,   }, where   is a candidate set which contains three reference points.One is the reference point of degree  (1), the others are any two points in the R. ( 6) else (7) Select the reference points with degree  (1),  (2) and  (3) as the candidate set C. (8) else (9) if 1 = 2, then (10) Find the set  = { 1 ,  2 , ⋅ ⋅ ⋅ ,   }, where   is a reference point of degree  (3) and m is the number of the reference points of degree  (3) in  .(11) Obtain the all candidate set  = { 1 ,  2 , ⋅ ⋅ ⋅ ,   }, where   is a candidate set which contains three reference points.One is the reference point of degree  (3) in R, the others are two points with degree of  (1).( 12) else (13) The  +  will be used as the radius and recalculate the degrees of each reference point according to the procedure in step 3, the repeat the operation of steps 1 to 11.
Find all the reference points of  (1), three of three combinations as the candidate set C. (16) According to all the candidate set C, calculate the perimeter of the triangle enclosed by the reference point in the set, select the set of reference points with the shortest perimeter, and find the center of the triangle as the coordinate of the point to be measured.section of performance analysis, we compare the positioning error of Fusion 2 under the different R.
In Algorithm 2, another parameter offset is set for the following reasons.When there are more than three reference points with the same degree of maximum degree in the candidate reference points, they cannot be distinguished to be used as the final candidates of the test point, which suggests the granularity of the selected point to be measured is too small, and it is necessary to increase the length of the radius, filter out those reference points with no further increase, and then select the reference point set which is close to the point to be measured.Combining the above analysis of R, offset sets the following principles.When  ≤  < √ 2, offset should be set as √ 2 ≤  +  < 2; when √ 2 ≤  < 2, offset should be set as 2 ≤  +  < √ 5; when 2 ≤  < √ 5, offset should be set as √ 5 ≤  +  < 3.
The algorithm proposed in this chapter can improve the positioning accuracy, mainly for the following two reasons.One is the set of reference points under three characteristic fingerprints.As a single feature fingerprints have limitations in positioning; a set of reference points obtained by merging multiple fingerprints can make up for its shortcomings.The second is to use a reference point set with a moderate reference point.The higher the reference point is, the closer to the test point it is.

Overhead Analysis.
The proposed approach needs to store three fingerprint metrics (RSS, He, and Hp) for every training position.Assume that there are N APs in the environment and each AP has L antennas.Denote by U the number of intervals for counting the CSI amplitude distribution, and denote by M the number of antennas at the mobile device.In the Horus approach, it needs to record N values, each value being a received signal strength of AP.In the FIFS approach, for each position it only needs to record  ×  ×  values, each representing an aggregated metric over 30 subcarriers.Then for each training position of D-CSI, it needs to record  ×  ×  × 30 values, each value being a float representing the possibility of the amplitude falls in the corresponding interval.Thus, the storage cost of our approach is higher than that in each single fingerprint method.However, because the values of N, L, U are usually smaller, the total storage cost of our approach can be afforded.
For the time efficiency, in our approach we need to calculate the Euclidean distance between two RSS metrics, the Euclidean distance between two CSI aggregated metrics, and the KL distance between two CSI amplitude distributions, which incurs slightly higher computation cost than each approach.However, compared with the time used in calculation, the time used to collect data is the major factor that determines the time efficiency.Our approach uses similar number of packets as in FIFS or D-CSI, and thus the time efficiency is similar as in previous approaches.

Experiment Results
For the methods proposed in this paper, we have collected the signal strength value and channel state information of the corresponding locations and compared them with those of the single feature.This section first introduces the experimental setup and the data acquisition process.Then the performance analysis of the two methods is given, respectively.Specifically, the performance of Fusion 1 under different weights is compared, and we compare the performance of the fusion location algorithm with different radius R, as well as the performance of the location method with the single feature fingerprint and the localization method with the two or three characteristic fingerprints.In the acquisition of RSS and CSI, we use of a fixed device to prevent human error caused by jitter data.

Experiment Scenarios.
In our experiment, the training spots are evenly distributed in the entire room and the test spots are randomly chosen.TL-WR742N routers work as the transmitters, while a Dell E6410 equipped with an Intel Wi-Fi Link 5300 NIC is used as the mobile device in both the training and the positioning phases.We also modify the driver as in [19] to collect the raw CSI values.We evaluate the system in two typical indoor environments: a computer laboratory and a meeting room.

Computer Laboratory.
The floor plan of the computer laboratory is shown in Figure 2(a).Four APs are deployed at the four corners.In the training phase, the RSS and the CSI values are collected at 42 locations with 1.2m spacing in the room for constructing the fingerprint database.During the test, we randomly select 30 locations as the test positions.At each spot, we collect the raw CSI values of 60 packets.We collect 20 RSS samples at each position and select the RSS that appears most of the time as the fingerprint of the corresponding position.

Meeting Room.
The floor plan of the meeting room is shown in Figure 2(b) and the four APs are also placed on the four corners.We collect 49 different calibration positions which are 1m apart in this scenario.10 test locations are randomly selected.At each location, we also collect the RSS and the CSI data of 60 packets.We also collect 20 RSS samples at each position and select the RSS that appears most of the time as the fingerprint of the corresponding position.

Optimal
Weight.We first consider the impact of the weight of Fusion 1 in two experiment environments.We know that the sum of the two weights equals 1.Without loss of generality, we choose the weight   as the system parameter to evaluate the localization performance.Through the experiment, we obtain the optimal weight so as to get the minimum positioning error.
The results are plotted in Figure 3.We can see that when 0.5<   <0.8, the localization error can reach the minimum.  is too large or too small, and the localization accuracy decreases.Specifically, when   is too large, the position where the Horus is obtained with higher accuracy may not be selected.In extreme cases, the final position of the test point is the result of FIFS.When   is too small, it is not conductive to use the stability of CSI, which can make the localization accuracy increase.
It also can be observed that when   <   , the overall positioning performance is high.This also indicates that the overall positioning effect of FIFS is better than that of the Horus method.When the proportion of FIFS is higher than that of the Horus method, method one can achieve  better positioning accuracy.Figure 4 plots the CDFs of the localization errors under different   in two experiment environments.As shown in Figure 4(a), when   = 0.7, 80% of the test spots have an error under 1.6m.However, when   = 0.9 and 0.1, the distance errors of the 80% spots enlarge to 2m and 2.3m, respectively.Similar trend can be observed in Figure 4(b).We can conclude that   = 0.7 is beneficial to improving the positioning accuracy.

Optimal Radius.
In this section, we consider the influence of system parameter R, which is set in Fusion 2 method.R is a system parameter which is used in calculating each alternative reference point degree.The setting of R has a great influence on the size of the reference point degree and affects the selection of the reference point degree, which determines the positioning performance.Through the experiments, we determine the interval that makes the positioning performance of fusion localization algorithm the best.
Figure 5 shows the mean distance error for the fusion localization method along with the curve of the R change in the two experimental scenarios.We can see when  ≤  < √ 2, the positioning error can reach the minimum.When R is too large, centered on an alternative reference point with a radius R, this will increase the degree of reference points that are themselves at the edges, so that reference points that should not be selected may be used as the location of the point to be measured.In extreme cases, when R is the length of the entire region boundary, all alternative reference points will be three for a group to be the final reference point set of points to be measured, so it cannot make full use of the feature that filters the reference points by calculating the size of degree, thus affecting the positioning accuracy.
In addition, when R is too small, it will make the degree size of the reference points with no difference, so that it is not easy to distinguish which alternative reference points should be selected for calculating the position of points to be measured.In the extreme case, as R is too large, it cannot make full use of the feature that filters the reference points by calculating the size of degree, thus affecting the positioning accuracy.So, whether too large or too small, the positioning effect will have a negative impact.
Figure 6 shows the boxplots of Fusion 2 localization errors under the different R. As shown in the figure, when √ 2 ≤  < 2, the positioning errors of more than 75% test points are less than 1.2m, but when 2 ≤  < √ 5 and  ≤  < √ 2, in case of having the same number of test points, the positioning error-free range was expanded to 1.5m and 2m.The same trend is seen in Figure 6(b).These results show that R is not too large and too small in actual deployment.Based on our results in two experimental scenarios, Fusion 2 can achieve better positioning performance when R is set to √ 2 ≤  < 2.

Localization Performance of Fusion 1.
In this subsection, we conduct the performance comparison tests among Horus, FIFS, and Fusion 1.We consider the situation of   = 0.7 and give the mean distance error and the cumulative distribution (CDF) of the localization error, respectively.

Mean Distance
Error. Figure 7 gives the mean distance error obtained by three methods in the two representative scenarios.As shown in the figure, in the meeting room, Fusion 1 achieves the median accuracy of 1.2m, which outperforms FIFS and Horus by more than 0.2m and 0.4m, and the gain is about 14% and 25%.Moreover, in the computer laboratory scenario, the mean accuracy of our approach is 1.4m, which is about 12.5% and 23% gain compared with FIFS and Horus, respectively.In addition, the standard deviation of the localization error of each method is given in Figure 7. From the two experimental scenarios, we find that Horus has the largest standard deviation, which shows that there is a big difference among the test spots.Fusion 1 has the minimum standard deviation.This shows that the difference of the localization error becomes smaller and more stable after fusing RSS and He.

CDF of Localization
Error. Figure 8 plots the CDFs of the localization errors in the meeting room and the computer laboratory, respectively.As shown in Figure 8(a), for over 80% of the test spots, the errors of Fusion 1 are less than 1.6m.However, FIFS and Horus have the localization errors of 2.1m and 2.4m under the same experimental conditions.
As shown in Figure 8(b), in this more complex wireless signal environment, the median error of three methods is under 1.8m.However, for over 80% of the test spots, the error of Fusion 1 is 1m and 0.5m lower than Horus and FIFS, respectively.

Localization Performance of Fusion 2.
In this subsection, we conduct the performance comparison tests between Fusion 2 and the existing works that used a single feature, such as Horus, FIFS, and D-CSI.We consider the radius varying from √ 2 to 2a.We give the mean distance error and the cumulative distribution function of localization error of the four localization schemes in the two representative scenarios.1 gives the mean distance error obtained by Fusion 2, Horus, FIFS, and D-CSI.As shown in the table, in the meeting room, Fusion 2 achieves the median accuracy of 0.8m, which outperforms D-CSI, FIFS, and Horus by more than 0.1m, 0.5m, and 0.7m, and the gain is about 11%, 38%, and 47%, respectively.Moreover, in the computer laboratory scenario, where there exists abundant multipath, the mean accuracy of our approach is 1.3m, which is with about 7%, 18.5%, and 31% gain compared with D-CSI, FIFS, and Horus, respectively.

Mean Distance Error. Table
In addition, the standard deviation of the localization error of each method is given in Table 1.From the two experimental scenarios, we find that Horus has the largest standard deviation, which shows that there is a big difference among the test spots.Fusion 2 has the minimum standard deviation.This shows that the difference of the localization error becomes smaller and more stable after fusing RSS, He, and Hp.Therefore, Fusion 2 is suitable  for applications that require smaller jitter of localization results.

The Cumulative Distribution Function of Localization
Error. Figure 9 plots the boxplots of the localization errors in the meeting room and the computer laboratory, respectively.As shown in Figure 9(a), for over 80% of the test spots, the errors of Fusion 2 are less than 1.1m.However, D-CSI, FIFS, and Horus have the localization errors of 1.2m, 2.1m, and 2.4m under the same experimental conditions.All of the Fusion 2 test spots have an error under 1.3m, while only about 85%, 60%, and 40% of the D-CSI, FIFS, and Horus test spots have the same localization accuracy.
As shown in Figure 9(b), in this more complex wireless signal environment, Fusion 2 and D-CSI have a distance error of 1.4m for 50% of the test spots.Meanwhile, the median error of FIFS and Horus is 1.6m.However, for over 80% of the test spots, the error of Fusion 2 is 0.5m lower than D-CSI; the error of FIFS is 0.3m lower than Horus.

Conclusion
This paper proposes a multiple feature based indoor localization scheme that uses RSS and CSI information extracted from the commercial off-the-shelf Wi-Fi NICs.Firstly, we propose a weighted fusion scheme that can quickly obtain the location of mobile user while improving the localization accuracy.In order to further improve the positioning accuracy, we propose a three-feature fusion method that first gets the summation of the received signals (He) and the distribution of the subcarriers (Hp) from the CSI value.Then, a set of candidate reference points is obtained using the localization method of each fingerprint feature.Finally, according to the degree of each reference and the principle of triangle minimization, we find the best three reference points and take the centroid as the target location.The proposed method is evaluated in two typical indoor environments and is compared with the existing work.The results show that our scheme achieves better performance under the different scenarios.

( 17 )
return result.Algorithm 2: Optimization of the final location of the test point.

Figure 2 :
Figure 2: The layout of two environments.

Figure 3 :
Figure 3: The mean distance error of different   .

Figure 4 :
Figure 4: CDF of localization error using different   .

Figure 5 :
Figure 5: The mean distance error under the different indoor environments.

Figure 6 :
Figure 6: The boxplots under the different R.

Figure 8 :Figure 9 :
Figure 8: The CDFs under the different indoor environments.
et al. proposed a Details.The framework of MFF is given in Algorithm 1. Assume that there are N APs and M reference points in the region.The positions of the reference points Input: The RSS and CSI values of the test point.The coordinates, RSS and CSI values of the calibration points.Output: The coordinates of the test point (1) According to the coordinate, RSS and CSI values of the calibration points to build RSS, He and Hp fingerprint database.//Step 1 (2) In the case of timeliness of positioning results, according to RSS and CSI values collected at the test point and the fingerprint databases built in step 1, Fusion1 feeds out the RSS and He to Horus and FIFS, then calculates the candidate position for each approach.The position of the test point is obtained by weighted fusion of the two candidate results and the coordinates of the test point is returned.//Step 2 (3) In the case of high positioning accuracy scenario, Fusion2 uses KL distance as the similarity metric and calculate candidate calibration point set under D-CSI.Merge the candidate reference points which are obtained by Horus, FIFS and D-CSI approaches and calculate the degree of each candidate calibration point.//Step 3 (4) Depending on the size of each calibration point degree obtained in step 3, Fusion2 optimizes the final location of the test point and returns the coordinates of the test point.//Step 4 Algorithm 1: The algorithm of MFF.
where i=1, 2,⋅ ⋅ ⋅ , M. A smaller    represents a shorter distance between the unknown position and the reference point.We select three minimum values from    and calculate the location of the test point under Horus method, denoted as   = (  ,   ).We denoted   = [ 1 ,  2 , ⋅ ⋅ ⋅ ,   ] as He preprocessed under the CSI.The distance between the test point and the reference points can also be measured by the Euclidean distance,    = (∑  =1 |  −    | The position of the test point is calculated by  =   *   + ℎ *  ℎ ,   + ℎ = 1, where   and  ℎ are the weight of the location result under Horus and FIFS. 2), where i=1, 2,⋅ ⋅ ⋅ , M. We also select three minimum values from    and calculate the location of the test point under FIFS method, denoted as  ℎ = ( ℎ ,  ℎ ).