Accurate location or positioning of people and self-driven devices in large indoor environments has become an important necessity The application of increasingly automated self-operating moving transportation units, in large indoor spaces demands a precise knowledge of their positions. Technologies like WiFi and Bluetooth, despite their low-cost and availability, are sensitive to signal noise and fading effects. For these reasons, a hybrid approach, which uses two different signal sources, has proven to be more resilient and accurate for the positioning determination in indoor environments. Hence, this paper proposes an improved hybrid technique to implement a fingerprinting based indoor positioning, using Received Signal Strength information from available Wireless Local Area Network access points, together with the Wireless Sensor Networks technology. Six signals were recorded on a regular grid of anchor points, covering the research space. An optimization was performed by relative signal weighting, to minimize the average positioning error over the research space. The optimization process was conducted using a standard Quantum Particle Swarm Optimization, while the position error estimate for all given sets of weighted signals was performed using a Multilayer Perceptron (MLP) neural network. Compared to our previous research works, the MLP architecture was improved to three hidden layers and its learning parameters were finely tuned. These experimental results led to the 20% reduction of the positioning error when a suitable set of signal weights was calculated in the optimization process. Our final achieved value of 0.725 m of the location incertitude shows a sensible improvement compared to our previous results.

In recent years, the fast development of wireless technologies and their ubiquitous applications [

In order to overcome these limitations, wireless technologies are being widely implemented for indoor positioning purposes. These techniques include Radio Frequency IDentification (RFID), [

In order to determine the position of a mobile reception unit in an indoor environment, the most common approach is based on the Received Signal Strength (RSS) and the pattern matching of multiple WLAN sources [

Nevertheless, even indoor environments can provide challenging scenarios when using RSS based techniques for localization purposes. The propagation of WLAN and WiFi signals is affected by fading effects and noise [

A pattern matching approach is classified as a deterministic algorithm [

In view of all these considerations, this paper contributions are listed as follows:

To develop an optimization algorithm by investigating the relative importance of wireless signals in the Multilayer Perceptron neural network.

To introduce a heuristic approach for the determination of the weighting of the wireless signals. With this fact in mind, a Quantum Particle Swarm Optimization (QPSO) algorithm was integrated into the positioning neural network application.

To improve the accuracy of the localization system by investigating the importance of signal weighting based on information of largest gradient of signal intensities variation. The achieved relative importance of the signals RSSI values will be considered for a future extension of this work.

This study is organized in four parts. The first section gives a brief introduction of the research area and related work. The second presents in more detail the approach and techniques which we used in this research. Particular attention was given to the QPSO optimization process and to the improvement of the MLP, which was used in our previously published works. The third part of this paper presents the results of this study, with references to the optimization of the MLP and the performance of our proposed QPSO algorithm. The final achievement of our optimization process is presented and compared with previous results both from literature and from the authors’ own research. Finally, the conclusions of this work are briefly discussed and projects and ideas for future research are introduced.

WiFi technology has been one of most promising solutions for indoor positioning system. However, a major drawback of utilizing single WiFi sources consists of the deviation of signals in the spatial space because of human presence and infrastructures. To mitigate such issues, WiFi positioning systems have been proposed to cooperate with other wireless technologies, such as magnetic field, inertial measurement unit and WSN.

Chen et al. [

Li et al. [

Chen et al. [

Luo et al. [

This work implements a hybrid approach by means of both WSN and WiFi technologies in order to improve the accuracy of the positioning system. The application of WSN-WiFi does not require computation on user’s mobiles and it is capable of a real-time location estimation process. We utilize a new algorithm based on standard QPSO optimization and we integrate this with the MLP neural network in order to improve the accuracy of the localization system. The detailed method, which aims to find a set of appropriate signal weighing, is introduced in the next section.

Due to their widespread deployments and access points availability, WLAN-based and WSN-based technologies are gaining interest in the domain of indoor localization and positioning services. For these purposes, information data from WLAN and WSN sources are becoming more and more relevant to refine and improve the accuracy in indoor environments [

Nevertheless, we tackled the possibility of further improvements and optimization of our previously published results [

Preliminary inspection of the collected data confirmed the lack of linearity of signal intensities with respect to the relative positions inside the research area. This aspect reinforced the need to process the data by means of a machine learning approach. On top of this aspect, experimental observations on the data which was collected for this project showed that locally some signals presented spatial irregularities, especially in the corners of the research space [

In order to address the subject of an accurate indoor positioning system, the initial raw data collection, as well as data analysis are significant for location fingerprinting. This study investigates a collection of data which were measured as RSSI values based on an IEEE 802.11b/g wireless card. For experimental RSS data collection, the main basement level of the Faculty of Engineering and Built Environment at the Universiti Kebangsaan Malaysia (UKM), was used [

The research area and the schedule of the data acquisition were purposely chosen in order to reproduce normal conditions of a typical working day. This way, disturbances on the signals and their stability, as they were received and measured, would be taken into account. A regular grid of anchor points was selected in order to encompass the available free space in the building ground floor, and working hours were used, regardless of people and materials transiting the experimental area. A sketch of the research area with boundary details and the position of the grid of anchor points are shown in

For experimental RSS data collection, we selected a regular grid of 96 anchor points for the creation of the fingerprinting database and its implementation, in an array of 6 × 16 points. These numbers resulted from the chosen horizontal and vertical separation between anchor points, respectively 1 and 1.5 m in the directions parallel to the main walls. The height of each anchor points was strictly kept at the value of 1 m, in order to avoid variations of the locally measured signal intensities and to remove the height as a possible sensitive variable. The effects of an altitude variation were previously investigated and reported in [

A Lenovo G580 laptop computer with a core i5 processor and Windows 7 operating system was used as a measurement setup. Furthermore, for the collection of RSS data samples, an Atheros AR9285 on-board wireless adaptor, based on 802.11n) was added. For the collection and analysis of RSS data samples, an “inSSIDer” open WiFi Scanner software was used. Some adaptations were executed in the inSSIDer software, in order to create the log files of the measured RSS signals, with respect to visible MAC address and the time stamp.

In each of the 96 anchor points, the signal intensities from three available WiFi and the four installed WSN signal sources were recoded simultaneously 300 times for one minute, i.e., every 0.2 s. However, only three signals from the WSN were considered for the database, as it was immediately clear that one of the WSN access points was faulty and provided random, unreliable values. The average of each set of 300 values was used to build the signal intensity database. The stability of all six available signals was checked through the standard deviation of each set, which was satisfactorily within the 5% of the average value for all anchor points.

The acquired data were organized and saved in a matrix of 96 × 6 elements, in which the signals intensities from each source would occupy a column of the matrix. In columns 1–3 the WiFi data were recorded, while in columns 4–6 the WSN data would take place. For the consistency of this research and its practical applications, it was fundamental to take note of the identification and position of each source. While the philosophy of this work would not be affected, any practical implementation of the proposed research would be rendered useless by any variation of the sources, as the signal intensities at each anchor point would depend on the access points locations.

The procedural scheme of the proposed optimization algorithm is based on a number of fundamental sections. First, data from hybrid sources were acquired and stored using fingerprinting and RSS principles, without any particular preprocessing. Data were recorded on an as-is basis without any analysis and without suggestions of further need of more anchor points.

The second step consisted of the creation of a mathematical model capable of reproducing the behavior of the measured signal intensities along the 2D space of the experimental area. Due to the features of the signal intensities, a Multilayer Perceptron (MLP) neural network was developed and trained, in consideration of its capabilities to make models and to classify inherently non-linear data. Through the MLP modelling of the 2D behavior of each signal, the reduction of positioning errors on selected test points was supposedly achieved.

Finally, an optimization algorithm was developed in order to address the main subject of this research, i.e., to investigate the possibility that an improved positioning accuracy can be achieved through the MLP by an appropriate weighting of the raw signal intensities. When taking in consideration the number of signals and anchor points altogether, it is clear that a heuristic approach to this optimization process is required. A QPSO algorithm was chosen, due to its features of rapid convergence to global optimal solution and its relative ease of programming, when compared to other available optimization algorithms [

The role of the QPSO in the data analysis of this research consists in searching for an appropriate set of weights for the raw signal intensities and to feed the weighted values to the MLP. Like any machine learning based optimization algorithm, the determination of optimal values is heuristically performed across a multidimensional search space. In this work there are six signal intensity values, consequently the search space becomes hexadimensional.

The QPSO algorithm [

The QPSO algorithm, first introduced in 2004, is inspired by the Quantum Mechanics concept that every particle is associated to a wave, and the fact that, in principle, the quantum waves cover all the search space. The classical laws of motion in

The parameter

The algorithm is usually repeated a pre-defined number of times. Considering its nature, in which the positions are evaluated by linear combination of vectors, the applicability is naturally taken into consideration when the search space is a subset of a multidimensional set of real numbers

For each set of weights

An Artificial Neural Network [

The ultimate goal of any MLP training consists of reducing the error computed on the mismatch between the MLP output and an expected target, in a supervised learning procedure. In order to achieve this goal, input data are split into two sets, namely the training and testing data. Both sets consist of a list of {input vector–expected target} pairs, but only the former is used for training, while the latter is a form of control on the quality of the training, in terms of the verification of the network generalization

In this research work, the set of six relatively weighted RSS signals

The training data is used in the standard feedforward-backpropagation learning process with the goal of finding an appropriate set of weight matrixes

In this work, all 96 experimental points were retained as training data, each consisting of a set of six signals and two spatial coordinates. The testing data were created as a list of 20 points of coordinates

The first step of the feedforward phase of the training algorithm consists in multiplying the vector of signals and subsequently filtering the result, thus obtaining the first hidden layer

In this expression

Depending on the number of hidden layers, the process is repeated iteratively for each hidden layer

The backpropagation phase consists in the correction of each term of the weight matrixes, with value proportional to the partial gradient of the training error

However, the hidden layers are not actually modified, but the calculation of these variations is necessary to evaluate the correction on the weights, which is obtained by:

The correction values thus achieved are multiplied by a constant

In this work we applied a refinement of the standard backpropagation process, which includes the so-called adaptative momentum technique, or “adam” [

The equations for the update of first and second momenta are:

In this research work, the positioning algorithm was built with the purpose of matching a set of RSS signal weights to the minimum error for indoor localization. The goal is to find an optimum set of weights for which the average distances between the measured and the inferred positions of the testing data are reduced. In order to achieve this goal, a standard QPSO algorithm was designed with the parameters shown in

Design parameters | Architecture parameters | ||
---|---|---|---|

Number of individuals | 12 | 1 | |

Number of iterations | 40 | 1.5 | |

Number of cost calculations | 492 | Initial |
1 |

Initial search range | [0.5 1] randomized | Final |
0.1 |

Total search space |

The QPSO algorithm, like any other heuristic optimization process, is supposed to improve the search results by increasing the size of the population and the number of generations. However, for this work, each cost calculation took an average of 250 s; thus, the values reported in

The outcome of MLP is typically heavily depending on the initial random set of training weights

Both in these validation runs and in the actual QPSO optimization algorithm, the MLP was run 1000 times in order to achieve the best performances, i.e., to identify a suitable set of weights

The cost value for each QPSO individual was finally evaluated as the average of the best 50 out of the 1000 MLP runs, which would correspond to a fortunate initial random choice of the

After the definition of the optimization procedure, by means of a QPSO algorithm, and the technique for the calculation of the localization error, by means of a standard MLP with an adaptative backpropagation process, the next step of this research consisted in the determination of the most suitable MLP architecture. In general, several parameters can be identified in order to achieve an effective process of optimization with the QPSO algorithm and a quick training process with the MLP. For the QPSO part, it was decided to stay with the standard parameters found in literature, namely those reported in

Multilayer Perceptron neural networks are subject to several parameters which greatly affect the training accuracy and the computing time. In order to fine-tune the MLP used in this research, several dry runs were performed before launching the whole optimization process, which would include many hundred million training iterations. The number of hidden layers plays an important role in terms of the generalization capabilities of the MLP. Consequently, the described process of taking the best 50 out of 1000 runs and inspecting the final positioning error was applied for MLPs with up to five hidden layers. In each case, the same number of twenty units in the layers was considered and the original, unweighted set of signals for training was used in this stage. A few tests were performed with different numbers of hidden units in each layer, looking again for the lowest averaged error on random sets of test points. Settling for 18 hidden units in each layer. As shown in

Architecture parameters | Training parameters | ||
---|---|---|---|

Hidden layers | 3 | Learning rate | |

Hidden units | 18 per layer | Momenta adam values | |

Activation function | Logistic sigmoid | Threshold train error | 0.3 |

Training points | 96 | Max iterations number | 3000 |

Test points | 20 | Computing time | ~26 h |

The values of the learning rates and momentum coefficients, as well as the maximum number of iterations and the threshold for the MLP training error were determined by performing many runs, by visual inspection of profiles as in

The QPSO optimization procedure was repeated for a total of 40 generations, each producing a new population of 12 vectors of 6 signal weights. Thanks to the QPSO own nature, the global best individual, i.e., the vector of signal weights producing the lowest positioning error, was recorded at every stage of the algorithm. Each individual weights vector

For each QPSO generation, the best vector of signal weights was recorded as an integral part of the optimization algorithm. Among the 12 individuals, the global best was retained and recorded as being the partial performance of the optimization procedure. The value of the resulting positioning error as a function of the QPSO iteration number is shown in

The initial value of 0.81 m matches the positioning error found for three hidden layers in the tune-up stage of this process, as shown in

The set of six signal weights

These values were rescaled so that the highest weight was set to be equal to 1, for ease of comparison. Several further rounds of 1000 iterations were performed in order to verify the consistency of the achieved results, and each time the MLP provided a positioning error on the test data very close to the QPSO final value. As expected, the rescaling of the signal weights would not alter the final MLP output, as the first weight matrix of the MLP would adapt, during training, to the relative proportions of the signals. The lowest value of the positioning error, achieved by considering the test population, equals to 0.725 m. By inspecting the final values of the signal weights in

It can be observed that the distribution of the values for each signal weight is fairly contained within a limited range, rather than being spread all over the QPSO search space and beyond. In all cases, signal #6 is by far the most relevant in the role of indoor positioning by RSS and fingerprinting technique and consequently all values were rescaled with respect to this signal. In general, the weights of signals 4–6, which are coming from the WSN sources, are proportionally higher with respect to the signals 1–3 which are generated by the WiFi sources. The reason of this behavior might be linked to the fact that WSN signals are shorter ranged than WiFi signals and consequently produce a larger spatial intensity gradient. It is possible that this feature generates a higher positioning accuracy, and it should be considered as a subject of further investigation.

The Cumulative Distribution Function (CDF) is represented in

A comparison of the results achieved in this research with a selection of relevant previously published location average errors is presented in

Reference | Chosen approach and implementation | Research area and anchor points (AP) | Error |
---|---|---|---|

Ficco et al. [ |
Source selection, WiFi + Bluetooth | 20 m × 21 m, 26 AP | >4 m |

Jiang [ |
K-NN modelling, WiFi + RSS | 15 m × 40 m, 100 AP | 1.70 m |

Xiong et al. [ |
Particle filter, WiFi + RFID | 25 m × 12 m, 80 AP | 1.60 m |

Chen et al. [ |
Optimization, IMU + WLAN | 90 m path, 113 AP | 1.48 m |

Farid et al. (same dataset) [ |
MLP modelling, WiFi + WSN | 6 m × 24 m, 96 AP | 1.22 m |

Khan et al. (same dataset) [ |
Tessellation, WiFi + WSN | 6 m × 24 m, 96 AP | 1.01 m |

This research | Optimization, WiFi + WSN | 6 m × 24 m, 96 AP | 0.725 m |

This paper illustrates a QPSO optimization algorithm for an indoor positioning system based on hybrid raw RSS signals. The proposed system is centered on the strength and intensity of the received signals obtained from a set of locations used for experiments. The idea of achieving an enhanced localization accuracy by successfully explored by implementing the concept of weighting of the received signals. A Multilayer Perceptron neural network was developed in order to predict a heuristically optimum positioning error for each QPSO individual. An accurate choice of MLP parameters was preliminarily studied as a further improvement of the performance of the overall algorithm. As a noteworthy particular, a three hidden layers MLP architecture was identified as an optimal starting point with the positioning accuracy in mind. The QPSO optimization results of the proposed system provided a final set of weights to be applied to the raw input signals in order to minimize the positioning error of our algorithm. In particular, a comparison was drawn with our previously published results on the same set of data. Our final achieved localization accuracy was 0.725 m, which constitutes an improvement of at least 20% with respect to our previous results on the same dataset.

On top of these algorithmic achieved results, our hybrid indoor positioning approach provides advantages in term of decreased cost, easy access to RSS signals and easy expandability to large areas, in order to further test the performance and robustness of the overall procedure.

As future work, the positioning accuracy might be investigated by changing the size of the experimental area as well as changing the distances between anchor points. Computing time being a sensible limiting factor of this research, the QPSO approach in terms of total number of individuals can be improved with the availability of more powerful hardware.

The relative importance of the RSS signals was established by the fairly compact distributions of the weights of each signal. This observation will surely be considered as a starting point for further investigation, as little analysis was performed on the spatial distribution of the signals.

The authors wish to thank Assoc. Prof. Ir. Dr. Rosdiadee Nordin and Prof. Dr. Mahamod Ismail of UKM for helping in the organization of data collection in public areas of the Faculty of Engineering.