Next Article in Journal
Erratum: Li, S.; Miao, L.; Xu, H.; Zhou, X. Searchable Encryption Scheme for Personalized Privacy in IoT-Based Big Data. Sensors 2019, 19, 1059
Next Article in Special Issue
ConvNet and LSH-Based Visual Localization Using Localized Sequence Matching
Previous Article in Journal
Optimal Power Allocation and Relay Location for DF Energy Harvesting Relaying Sensor Networks
Previous Article in Special Issue
An Innovative High-Precision Scheme for a GPS/MEMS-SINS Ultra-Tight Integrated System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

High-Precision Indoor Visible Light Positioning Using Modified Momentum Back Propagation Neural Network with Sparse Training Point

1
Key Laboratory of Photonics Information Technology, Ministry of Industry and Information Technology, Beijing 100081, China
2
School of Optoelectronics, Beijing Institute of Technology, Beijing 100081, China
3
China Academy of Electronics and Information Technology, Beijing 100041, China
*
Authors to whom correspondence should be addressed.
These authors contributed equally to this work.
Current address: Department of Engineering Science, University of Oxford, Oxford OX1 3PJ, UK.
Submission received: 29 March 2019 / Revised: 1 May 2019 / Accepted: 17 May 2019 / Published: 20 May 2019
(This article belongs to the Collection Positioning and Navigation)

Abstract

:
In this letter, we propose an indoor visible light positioning technique using a Modified Momentum Back-Propagation (MMBP) algorithm based on received signal strength (RSS) with sparse training data set. Unlike other neural network algorithms that require a large number of training data points to locate accurately, we have realized high-precision positioning for 100 test points with only 20 training points in a 1.8 m × 1.8 m × 2.1 m localization area. In order to verify the adaptability of the MMBP algorithm, we experimentally demonstrate two different training data acquisition methods adopting either even or arbitrary training sets. In addition, we also demonstrate the positioning accuracy of the traditional RSS algorithm. Experimental results show that the average localization accuracy optimized by our proposed algorithm is only 1.88 cm for the arbitrary set and 1.99 cm for the even set, while the average positioning error of the traditional RSS algorithm reaches 14.34 cm. Comparison indicates that the positioning accuracy of our proposed algorithm is 7.6 times higher. Results also show that the performance of our system is higher than some previous reports based on RSS and RSS fingerprint databases using complex machine learning algorithms trained by a large amount of training points.

1. Introduction

In recent years, with the rapid development of wireless sensor networks and the Internet of Things, indoor positioning technology has been used in many fields, such as shopping guidance, intelligent robots, and so on. Traditional positioning techniques based on radio wave communication, such as the extensively used global positioning system (GPS), suffer from multipath fading and severe attenuation, which lead to large positioning errors in the indoor environment. Other indoor positioning systems such as wireless local area network (WLAN), ZigBee, Ultra-Wideband (UWB), Bluetooth, and Radio-frequency Identification (RFID) deliver positioning errors from tens of centimeters to a few meters [1,2]. Visible light communication (VLC) systems based on LEDs have emerged in recent years and show many advantages. Firstly, LEDs are cost-effective, energy-efficient and widely utilized for indoor illumination. Secondly, VLC systems have a strong ability to resist electromagnetic interference [3,4].
For the above reasons, more and more researchers are focusing on how to improve the performance of indoor visible light positioning (VLP) systems. Both photo-diodes (PDs) and image sensors can be utilized as the detector [5,6,7,8,9,10,11]. Taking into consideration the system complexity and cost, PD-based systems using the RSS algorithm are most widely reported [5,6,7,8]. In 2012, W. Zhang et al. proposed a PD-based visible light positioning system to locate a target within centimeters in the simulation [5]. In [6], the average distance error was 1.7 cm and 2.1 cm in the x- and y-coordinates within a space of 94.8 cm × 80 cm × 127.7 cm based on RSS. In addition, typical PD-based algorithms are more practical in large scenarios where more objects need to be located [7].
As known to all, the positioning error performance of VLP based on RSS is usually poor, so researchers have begun to exploit new methods to scale the accuracy based on RSS. In recent works, machine learning has been used in VLP based on RSS. In [12], the average positioning error was only 6.39 cm in the simulation stage with the Levenberg-Marquardt algorithm and the number of training data was 2630 within a 5 m × 5 m × 3 m area. Earlier this year, Hsu et al. realized 3.65 cm accuracy in a 1 m × 0.9 m triangular unit cell [13]. However, this learning method was very slow and the parameters in this paper were corrected iteratively with 5680 training points. In addition, combining an RSS fingerprint database with machine learning is also reported in some papers. In [14], Zhang. C proposed a lightweight fingerprint-based indoor positioning algorithm using generalized regression neural network (GRNN) to approach the time-consuming and labor-intensive process of fingerprint surveying. They selected 140 training points in the area of 3 m × 5 m and the average positioning error was 8.7 cm. In [15], Guo. X proposed a localization technique by fusing multiple classifiers based on RSS fingerprint base of visible light and realized high precision indoor positioning. However, the experiment was only performed within a 0.7 m × 0.7 m area. In [16], Guo X proposed a two-layer fusion network (TLFN) indoor localization method using the same visible light positioning scenario as [15] and the average positioning error was 5 cm.
In our paper, we mainly focus on the application of machine learning algorithms in a 2D localization scene and how to achieve high-precision positioning results with sparse training points. Therefore, the height of the detector isn’t our main consideration when collecting the training data. In this letter, a VLP system based on RSS and modified momentum back-propagation (MMBP) artificial neural network (ANN) is implemented under a large experimental environment. The ANN is trained using the MMBP method. Unknown positions across the whole positioning area can then be calculated using the trained ANN. Experimental results show that the average localization accuracy using the arbitrary training set is 1.88 cm in a 1.8 m × 1.8 m × 2.1 m cell with 1.42 cm and 0.88 cm along the x- and y-axis respectively, and the maximum positioning error is only 5 cm. For the even set, the average localization accuracy is 1.99 cm with 1.49 cm and 0.83 cm in the x- and y-axis, while bringing a 9.64 cm maximum positioning error. In comparison with the traditional RSS location algorithm, our positioning accuracy is 7.6 times higher. Furthermore, compared with the results based on RSS fingerprint in [15], our results are more accurate and the size of the training set is only 1/11 of that reported in Reference [11].

2. Theory and Methods

In our proposed system, a typical indoor scenario with four LEDs and a photo-detector is investigated, as shown in Figure 1. To overcome the signal interference between densely arranged LEDs, we have allocated a unique modulation frequency to each of the four LEDs. The shape of a room is normally rectangular or square, a positioning system composed of four LEDs is nearest to the actual positioning scene. In addition, considering cost and complexity, we believe our positioning system based on four LEDs is the most suitable. Using more than four LEDs would mean higher complexity and cost. If the number of LED in the positioning area is more than 4, we can achieve the positioning by selecting four LEDs as the inter-cell in the area.
The RSS information which contains four different frequencies is detected by the detector and extracted by Fourier transformation, then used as inputs of the network. The output of our network is the position of the detector. The frequency of background light is different from the transmitted signal and can be ignored during demodulation. Supposing that the LEDs have a Lambertian radiation pattern, when only the line-of-sight (LOS) channel is considered, the distance between an LED and the receiver can be estimated by measuring the received signal power, which can be expressed by [12].
P r i = A r ( m + 1 ) 2 π d i 2 cos m ( ϕ i ) cos ( φ i ) T t r a n s g ( φ i ) P t i , i = 1 , 2 , 3 , 4
where P r i ( i = 1 , 2 , 3 , 4 ) is the received signal power of the four LEDs, P t is the transmitted signal power, A r is the physical area of the detector, d is the distance between the LED and the receiver, ϕ is the angle of irradiance, φ is the angle of incidence, T t r a n s is the optical transmittance, g ( φ ) is the gain of the optical concentrator and m is the Lambertian mode number related to the semi-angle at half-power ϕ 1 / 2 of the LED, denoted by.
m = ln ( 2 ) ln ( cos ϕ 1 / 2 )

2.1. Traditional RSS Algorithm

Traditional RSS-based trilateration algorithms adopt the radio frequency allocation (RFA) technique. The signals transmitted from various LEDs are detected by a detector and distinguished according to their frequencies. In the scenario, we set the LED coordinate as ( x 1 , y 1 , z ) ,     ( x 2 , y 2 , z ) ,     ( x 3 , y 3 , z ) , and ( x 4 , y 4 , z ) . The height of detector is h s . In our case, the detector is placed on the ground, therefore h s = 0   m. In the experiment, the position of the detector is ( x , y ) and it needs to be calculated by the algorithm. The transmitted power of LED 1, LED 2, LED 3, and LED 4 are denoted as P t 1 ,   P t 2 ,   P t 3 ,   P t 4 and the received signal strengths as P r 1 ,   P r 2 ,   P r 3 ,   P r 4 , respectively. According to Equation (1), we have
{ P r 1 P t 1 = H 1 ( 0 ) = A r ( m + 1 ) 2 π d 1 2 cos m ( ϕ 1 ) cos ( φ 1 ) T t r a n s g ( φ 1 ) P r 2 P t 2 = H 2 ( 0 ) = A r ( m + 1 ) 2 π d 2 2 cos m ( ϕ 2 ) cos ( φ 2 ) T t r a n s g ( φ 2 ) P r 3 P t 3 = H 3 ( 0 ) = A r ( m + 1 ) 2 π d 3 2 cos m ( ϕ 3 ) cos ( φ 3 ) T t r a n s g ( φ 3 ) P r 4 P t 4 = H 4 ( 0 ) = A r ( m + 1 ) 2 π d 4 2 cos m ( ϕ 4 ) cos ( φ 4 ) T t r a n s g ( φ 4 )
In our experiment, A r can be obtained from the detector datasheet, m can be calculated by Equation (2) and the semi-angle at half-power ϕ 1 / 2 can be obtained from the LED datasheet. T t r a n s and g ( φ ) can be considered as constants. The detector plane is placed parallel to the floor. Then ϕ i and φ i can be expressed as
{ cos ( ϕ i ) = ( z h s ) / d i cos ( φ i ) = ( z h s ) / d i
And Equation (3) can be expressed as
{ P r 1 P t 1 = H 1 ( 0 ) = C d 1 m + 3 P r 2 P t 2 = H 2 ( 0 ) = C d 2 m + 3 P r 3 P t 3 = H 3 ( 0 ) = C d 3 m + 3 P r 4 P t 4 = H 4 ( 0 ) = C d 4 m + 3
where C   is the parameter related to the hardware of the VLP and can be expressed by
C = A r ( m + 1 ) ( z h s ) m + 1 2 π T t r a n s g ( φ )
where g ( φ ) is a constant with the same value in all directions within the field of view and therefore we have g ( φ ) = g ( φ 1 ) = g ( φ 2 ) = g ( φ 3 ) = g ( φ 4 ) in Equation (3). According to the relationship between the detector and four LEDs in the positioning area, we get
{ ( x x 1 ) 2 + ( y y 1 ) 2 + ( z h s ) 2 = d 1 2 ( x x 2 ) 2 + ( y y 2 ) 2 + ( z h s ) 2 = d 2 2 ( x x 3 ) 2 + ( y y 3 ) 2 + ( z h s ) 2 = d 3 2 ( x x 4 ) 2 + ( y y 4 ) 2 + ( z h s ) 2 = d 4 2
Combining Equations (5) and (7), we get
{ ( x x 1 ) 2 + ( y y 1 ) 2 + ( z h s ) 2 = ( C P t 1 P r 1 ) 2 m + 3 ( x x 2 ) 2 + ( y y 2 ) 2 + ( z h s ) 2 = ( C P t 2 P r 2 ) 2 m + 3 ( x x 3 ) 2 + ( y y 3 ) 2 + ( z h s ) 2 = ( C P t 3 P r 3 ) 2 m + 3 ( x x 4 ) 2 + ( y y 4 ) 2 + ( z h s ) 2 = ( C P t 4 P r 4 ) 2 m + 3
We can therefore attain the position of the detector by solving Equation (8). It should be noted that Equation set (8) is over-determined, and is therefore solved by the computer. However, in practical scenarios, the amount of power detected by the receiver can be affected by many external factors including multipath reflections and the incidence angle, leading to large positioning errors.

2.2. Modified Momentum Back Propagation (MMBP) Algorithm

The results shown in [12] prove the effectiveness of BP algorithms in reducing positioning errors and the verified positioning error is 6.39 cm. In fact, the main advantage of BP neural network is the outstanding ability of non-linear mapping and classification which is ideal for applications in indoor positioning systems [17]. Therefore, the BP algorithm is very suitable for indoor positioning due to the characteristics of indoor scenes [18,19,20,21]. In this paper, we use the Back-Propagation algorithm based on multi-layer feed-forward neural networks to realize high precision indoor positioning. The number of hidden layers is a critical factor determining the complexity of neural networks, and complex neural networks need a lot of training data to train. If we train complex neural networks with large amounts of training data, we would presumably achieve high-precision positioning results. However, as we mainly focus on the question of how to achieve high-accuracy positioning with sparse training points, the number of training data in our paper is only 20. Complex neural networks trained by sparse training data often lead to over-fitting. Therefore, to prevent over-fitting, we have selected only one hidden layer in the neural network and verified the effect of different numbers of hidden layers on the positioning accuracy. The structure of the multi-layer feed-forward neural network based on the proposed MMBP algorithm mainly consists of three parts, namely the input layer, hidden layer, and the output layer. The number of nodes in the hidden layer is determined through experiment and the output of our network is the position of the detector. The structure of multi-layer feed-forward neural network is shown in Figure 2:
We set the received signal strength from LED 1, LED 2, LED 3, LED 4 as the input of the neural network and it can be expressed by x = ( x 1 ,   x 2 ,   x 3   x n ) where n = 4 in this paper. The number of hidden layer nodes and output layer nodes are denoted as r and m , respectively. In this paper, the value of m is 2. The output of the neural network is the position of the detector and is expressed as h ( x , y ) ; w i j is the weight between the input layer and hidden layer and the threshold is θ j . w j k is the weight between the hidden layer and output layer and the threshold is θ k . Then we have the output of the hidden layer [22]:
x j = f ( i = 1 n w i j x i θ j ) ,   j = 1 ,   2 ,   3   r
The output of the output layer is
h ( x j , y j ) = f ( j = 1 r w j k x j θ k ) , k = 1 ,   2
When p   denotes the p   th input of the neural network, d p and y p are the   p   th desired output and real output, respectively. Then the   p   th mean square error of the neural network can be expressed as
E ( p ) = 1 2 l = 1 m ( d l ( p ) y l ( p ) ) 2
And the total output error of the trained neural network is as follows:
E A = p = 1 p E ( p ) = 1 2 p = 1 p l = 1 m ( d l ( p ) y l ( p ) ) 2
Let w s p be a connection weight in the network, then according to the gradient descent method, the weight correction should be as follows:
Δ w s p = η E w s p
Taking into consideration the complexity of practical environments, in order to increase the convergence rate of our network and avoid oscillation, in our algorithm, we have adopted a highly efficient learning method that combines momentum BP algorithm with variable learning rate BP algorithm. The update of weight coefficients between layers is guided by a momentum factor α so that
Δ ω ( n ) = η ( 1 α ) E w s p ( n 1 ) + α Δ ω ( n 1 )
where Δ ω ( n ) and Δ ω ( n 1 ) are the correction values of weight coefficients in iteration n and n 1 , η is the learning rate, and E w s p is the error gradient of the network. The learning rate η self-adapts itself to the network decided by the direction in which the error changes and the update formula of η can be expressed by
η ( n + 1 ) = { k i n c η ( n ) ,     E w s p ( n ) < E w s p ( n 1 ) k d e c η ( n ) ,     E w s p ( n ) > E w s p ( n 1 )
where k i n c is a constant increment factor and k d e c is a constant decrement factor both determined by the actual performance of the network.
Our ANN functions through two stages. In the training stage, the network is trained by the RSS values of a chosen set of training points in the positioning area. The total squared error between desired coordinates and the actual output of the network is optimized by the MMBP algorithm. If the training is completed, the neural network enters the testing stage. During this process, the input of the neural network is the position of the test points, and then the coordinates of test points can be calculated by the neural network. The flow chart of the ANN-based VLP algorithm is shown in Figure 3.

3. Experiment and Results

3.1. Experimental Facilities

The effectiveness of the proposed BP Neural Network -based VLP system is verified under indoor environment. As in Figure 4a, four commercial LEDs that transmit different frequencies of 4100 Hz, 3000 Hz, 5000 Hz and 2200 Hz, are mounted on the ceiling of a 1.8 m × 1.8 m × 2.1 m positioning area. The locations of the four LEDs are (0, 0, 2.1), (0, 1.8, 2.1), (1.8, 0, 2.1), and (1.8, 1.8, 2.1), respectively. We have used a Thorlabs (APD110A2) as the detector and the transmitter is shown in Figure 4b. The radio frequency signal is modulated into the optical signal using a modulator based on the STM32 F103. Specific parameters of the positioning system are shown in Table 1.
In our experiment, 100 test points (blue points) are evenly placed in the positioning area with a density of 20 cm × 20 cm. Twenty points (red points) are selected as the training set, and all 100 test points are positioned in the validation stage. We perform measurements five times at each training data point (red point) to reduce the influence of light intensity fluctuation on the positioning error and save them as the training data set. In order to verify the adaptability of the proposed algorithm, we use two different training data sets: arbitrary set and even set.

3.2. Result and Analysis

In our experiment, we firstly demonstrate the positioning error optimized by MMBP algorithm with the even training data set and the even training data set is shown in Figure 5. The number of nodes in the hidden layer of the ANN is determined experimentally by evaluating its effect on positioning accuracy. We define the average positioning error as the same as in Reference [15]. Figure 6 shows the corresponding average positioning error with different numbers of hidden layer nodes.
Increasing the number of hidden layer nodes can reduce the positioning error, but at the cost of making the neural network more complex and leading to increased training time. We have therefore selected the number of hidden layer nodes from 4 to 14 due to the limited number of training points. The average positioning error with different numbers of nodes under the even training data set is shown in Figure 6. We can see that the best performance is obtained when there are 13 nodes in the hidden layer and the average positioning error is 1.99 cm, suggesting that a 13-neuron structure is most optimal for this scenario. Other parameters of the neural network using the even training set are shown in Table 2.
Meanwhile, in Figure 6, the maximum positioning error observed with different number of nodes is only 3.35 cm. This demonstrates the high positioning accuracy of the MMBP algorithm. The 2D positioning results in the validation stage at all 100 points are shown in Figure 7. It verifies that after being trained with only 20 points, the neural network is able to perform accurately for all other points in the positioning area, and the average positioning error is 1.99 cm.
Then we compare the average positioning error using the traditional RSS algorithm. We have derived the calculation process earlier in the paper, which can be referred to in Equations (1)–(8).
We evaluate the effectiveness of MMBP by comparing its performance with the traditional RSS-based algorithm. The distribution of positioning error of MMBP and traditional RSS-based algorithm are shown in Figure 8a,b. The corresponding cumulative distribution function (CDF) of positioning errors is presented in Figure 9. Results indicate that the performance of MMBP is much better than the traditional algorithm, where the average estimation error is significantly lowered by more than one magnitude from 14.34 cm to 1.99 cm. The accuracy along the x-axis is improved from 10.14 cm to 1.49 cm while that along the y-axis is improved from 8.55 cm to 0.83 cm. Figure 9 shows that the maximum positioning error for the traditional RSS algorithm is 26.66 cm and the error of 80% confidence is 19.31 cm. In comparison, with the MMBP algorithm, the largest positioning error is successfully kept within 10 cm (9.64 cm), and the error of 80% confidence is reduced to 2.77 cm. The average positioning accuracy of the MMBP algorithm is 7.2 times higher than the traditional RSS algorithm. The MSE of the MMBP with the even training data set is shown in Figure 10. Although the MSE declined rapidly, we can see that the mean square error reaches the minimum value after 8000 iterations. In addition, in Table 3, the positioning time of traditional RSS-based algorithm is 2.25 s, while the positioning time of our proposed algorithm is only 0.007s and the training time is 2.36 s (CPU: AMD FX-6300). The comparison results prove that the proposed algorithm can achieve high-precision and real-time positioning.
To verify the adaptability of the proposed algorithm, we also demonstrate the performance achieved using an arbitrary training set and the arbitrary training data set is shown in Figure 11. Unlike the neural network with the even training data set, best performance is obtained with 10 nodes in the hidden layer. The experimental results are shown in Figure 12.
The parameters of the neural network with the arbitrary training data set are shown in Table 4. It can be seen from Figure 12 that the maximum average positioning error is only 2.64 cm which is obviously much lower than the results shown in Figure 6. Meanwhile, the minimum average positioning error is only 1.88 cm when the number of hidden layer nodes is 10. Comparing Figure 6 with Figure 12, we can find that the neural network trained by the arbitrary training data set has better positioning performance. The 2D positioning results in the validation stage at all 100 points are shown in Figure 13. We can see that after being trained with only 20 points, the network is able to perform accurately for all other points in the positioning area, and the average positioning error is 1.88 cm.
The distribution of positioning error of MMBP algorithm and the traditional RSS-based algorithm are shown in Figure 14a,b. The maximum positioning error is 5 cm, which is just half as that obtained with the even training data set. In addition, the distribution of positioning errors with the even training data set is different from that of the arbitrary set due to different distributions of training points. The corresponding cumulative distribution function (CDF) of positioning errors is presented in Figure 15.
Results shown in Figure 14 and Figure 15 indicate that the performance of the MMBP algorithm is much better than the traditional RSS algorithm, where the average estimation error is significantly lowered by more than one magnitude from 14.34 cm to 1.88 cm. The accuracy along the x-axis is improved from 10.14 cm to 1.42 cm while that along the y-axis is improved from 8.55 cm to 0.88 cm. Figure 15 shows that the maximum positioning error for the traditional RSS algorithm is 26.66 cm and the error of 80% confidence is 19.31 cm. In comparison, with our proposed algorithm, the largest positioning error is only 5 cm, and the error of 80% confidence is reduced to 2.88 cm. The average positioning accuracy of MMBP algorithm is 7.6 times higher than the traditional RSS algorithm. Figure 16 shows the MSE performance with the arbitrary training data set. Compared with the results shown in Figure 10, after only 900 iterations, the mean square error of the proposed algorithm reaches the minimum value. Then we test the time cost of the algorithm and the results are shown in Table 5. We can find the positioning and training time with the arbitrary data set are only 0.005 s and 0.403 s, respectively, which are faster than the results with the even data set due to fewer hidden layer nodes and iteration times.
In Figure 17, we can find that the maximum positioning error is obviously different when the neural network is trained by different training data sets. The maximum positioning error for the arbitrary set is only 5 cm while that for the even set is 9.64 cm. The distribution area of points with maximum positioning errors using the two different training methods is almost the same. The positioning accuracy of Figure 7 and Figure 13 in the center area is lower than that of the outer edges. This is mainly due to fluctuations of the light intensity in this red region being noticeably larger. In fact, the fluctuation of the LEDs’ illumination is not consistent and will lead to an increase in positioning errors, according to the [23]. The maximum positioning error for the arbitrary training data set is obviously lower due to more training points in the area.
Then we compare the performance of our system with other localization algorithms which have been reported and the parameters are shown in Table 6.
Comparison results of the probability of positioning errors being less than 5 cm using different algorithms are shown in Figure 18. Here we have used “arb-MMBP” to denote the MMBP trained by the arbitrary data set, and “even-MMBP” for that trained by the even data set. Comparing the performance of the five positioning systems, while the probability of positioning errors being less than 5 cm for BP, GD-LS, and GI-LS algorithms are only 81%, 88.78%, and 93.17%, respectively, that for the even-MMBP and arb-MMBP methods are as high as 95% and 100%. This suggests that our positioning accuracy is even better than the performance optimized by the GD-LS and GI-LS algorithms, which are verified by 225 training points utilizing the fingerprint base. It is to be noted that the size of our training set is only 20, which is 1/11 of that used for GD-LS and GI-LS in [15]. This is also the conclusion reached while comparing our results with [13], and the training set used in the BP method is 283 times larger than ours. In addition, the dimension of our positioning area is seven times larger than that in [15], and is the largest among the three systems. In a word, compared with the results in [13,15], we have achieved a higher positioning accuracy with the least training data in the largest positioning scenario. All of the above results indicate that the high-precision, easy-training and fast-convergent MMBP algorithm can be more widely adopted in practical scenarios.

4. Conclusions

In this letter, a visible light positioning system using an RSS- and ANN-based MMBP algorithm is implemented in an indoor environment with four LEDs and a detector. Results indicate that the average positioning error with the MMBP algorithm is 1.88 cm for the arbitrary set and 1.99 cm for the even set with only 20 training points in the 1.8 m × 1.8 m × 2.1 m area. Compared with the traditional RSS localization algorithm, the average positioning accuracy of the MMBP algorithm is 7.6 times higher. It is also higher than many machine-learning-based reports of RSS and RSS fingerprint base algorithms. More importantly, in comparison with the other positioning algorithms mentioned in this paper, we have realized the highest positioning accuracy with the least number of training points in the largest localization area, which is the closest analog to real scenarios. In addition, the training and positioning durations for the even set are only 2.36 s and 0.007 s, respectively; while for the arbitrary set the two processes are sped up even more to 0.403 s and 0.005 s. The timeliness results show that the MMBP algorithm has a fast convergence rate. In conclusion, the MMBP algorithm proves to be highly precise, easily trained and rapidly convergent, demonstrating the potential to be widely used in actual indoor positioning scenarios.

Author Contributions

The authors contributions are described as follows: Conceptualization, H.Z. and J.C.; Data curation, H.Z.; Formal analysis, J.C. and H.L.; Funding acquisition, L.F. and A.Y.; Investigation, H.Z. and J.C.; Resources, B.L. and H.H.

Funding

This research was funded by the National Natural Science Foundation of China (Nos. 61675025).

Acknowledgments

Acknowledge to Xianyuan Gui for his instructive discussions.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Xie, Z.; Guan, W.; Zheng, J.; Zhang, X.; Chen, S.; Chen, B. A High-Precision, Real-Time, and Robust Indoor Visible Light Positioning Method Based on Mean Shift Algorithm and Unscented Kalman Filter. Sensors 2019, 19, 1094. [Google Scholar] [CrossRef] [PubMed]
  2. Zhang, R.; Zhong, W.; Qian, K.; Wu, D. Image Sensor Based Visible Light Positioning System With Improved Positioning Algorithm. IEEE Access 2017, 5, 6087–6094. [Google Scholar] [CrossRef]
  3. Şahin, A.; Eroğlu, Y.S.; Güvenç, İ.; Pala, N.; Yüksel, M. Hybrid 3-D Localization for Visible Light Communication Systems. J. Lightwave Technol. 2015, 33, 4589–4599. [Google Scholar] [CrossRef]
  4. Rahman, M.S.; Kim, K.-D. Indoor Location Estimation Using Visible Light Communication and Image Sensors. Int. J. Smart Home 2013, 7, 99–113. [Google Scholar]
  5. Zhang, W.; Kavehrad, M. A 2-D indoor localization system based on visible light LED. In Proceedings of the 2012 IEEE Photonics Society Summer Topical Meeting Series, Seattle, WA, USA, 9–11 July 2012; pp. 80–81. [Google Scholar]
  6. Zheng, H.; Xu, Z.; Yu, C.; Gurusamy, M. Indoor three-dimensional positioning based on visible light communication using Hamming filter. In Proceedings of the Advanced Photonics Congress 2016, Vancouver, BC, Canada, 18–21 July 2016. [Google Scholar]
  7. Yang, A.; Feng, L.; Liu, X.; Feng, L. Combination of light-emitting diode positioning identification and time-division multiplexing scheme for indoor location-based service. Chin. Opt. Lett. 2015, 13, 12–17. [Google Scholar]
  8. Do, T.-H.; Yoo, M. An in-Depth Survey of Visible Light Communication Based Positioning Systems. Sensors 2016, 16, 678. [Google Scholar] [CrossRef] [PubMed]
  9. Lee, S.J.; Yoo, J.H.; Jung, S.Y. VLC-based indoor location awareness using LED light and image sensors. In Proceedings of the 2012 Photonics Asia, Beijing, China, 5–7 November 2012. [Google Scholar]
  10. Hossen, M.S.; Park, Y.; Kim, K.D. Performance improvement of indoor positioning using light-emitting diodes and an image sensor for light-emitting diode communication. Opt. Eng. 2015, 54, 035108. [Google Scholar] [CrossRef]
  11. Fu, M.; Zhu, W.; Le, Z.; Manko, D.; Gorbov, I.; Beliak, I. Weighted average indoor positioning algorithm that uses LEDs and image sensors. Photonic Netw. Commun. 2017, 34, 202–212. [Google Scholar] [CrossRef]
  12. Huang, H.Q.; Yang, A.Y.; Feng, L.H.; Ni, G.Q.; Guo, P. Artificial neural-network-based visible light positioning algorithm with a diffuse optical channel. Chin. Opt. Lett. 2017, 15, 050601. [Google Scholar] [CrossRef]
  13. Hsu, C.-W.; Liu, S.M.; Lu, F.; Chow, C.-W.; Yeh, C.-H.; Chang, G.-K. Accurate Indoor Visible Light Positioning System utilizing Machine Learning Technique with Height Tolerance. In Proceedings of the 2018 Optical Fiber Communications Conference and Exposition (OFC), San Diego, CA, USA, 11–15 March 2018. [Google Scholar]
  14. Chen, Z.; Wang, J. GROF: Indoor Localization Using a Multiple-Bandwidth General Regression Neural Network and Outlier Filter. Sensors 2018, 18, 3723. [Google Scholar] [CrossRef] [PubMed]
  15. Guo, X.; Shao, S.; Ansari, N.; Khreishah, A. Indoor Localization Using Visible Light Via Fusion of Multiple Classifiers. IEEE Photonics J. 2017, 9, 1–16. [Google Scholar] [CrossRef]
  16. Guo, X.; Hu, F.; Elikplim, N.R.; Li, L. Indoor Localization Using Visible Light via Two-Layer Fusion Network. IEEE Access 2019, 7, 16421–16430. [Google Scholar] [CrossRef]
  17. Horikawa, S.; Furuhashi, T.; Uchikawa, Y. On fuzzy modeling using fuzzy neural networks with the back-propagation algorithm. IEEE Trans. Neural Networks 1992, 3, 801–806. [Google Scholar] [CrossRef] [PubMed]
  18. Miao, K.; Chen, Y.; Miao, X. An indoor positioning technology based on GA-BP Neural Network. In Proceedings of the 2011 6th International Conference on Computer Science & Education (ICCSE), Singapore, 3–5 August 2011; pp. 305–309. [Google Scholar]
  19. Wang, C.; Wu, F.; Shi, Z.; Zhang, D. Indoor positioning technique by combining RFID and particle swarm optimization-based back propagation neural network. Optik 2016, 127, 6839–6849. [Google Scholar] [CrossRef]
  20. Mehmood, H.; Tripathi, N.K. Optimizing artificial neural network-based indoor positioning system using genetic algorithm. Int. J. Digital Earth 2013, 6, 158–184. [Google Scholar] [CrossRef]
  21. Guan, W.; Wu, Y.; Xie, C.; Chen, H.; Cai, Y.; Chen, Y. High-precision approach to localization scheme of visible light communication based on artificial neural networks and modified genetic algorithms. Opt. Eng. 2017, 56, 106103. [Google Scholar] [CrossRef]
  22. Rumelhart, D.E.; Hinton, G.E.; Williams, R.J. Learning representations by back-propagating errors. Nature 1986, 323, 533–536. [Google Scholar] [CrossRef]
  23. Lv, H.; Feng, L.; Yang, A.; Guo, P.; Huang, H.; Chen, S. High Accuracy VLC Indoor Positioning System With Differential Detection. IEEE Photonics J. 2017, 9, 1–13. [Google Scholar] [CrossRef]
Figure 1. Typical indoor visible light positioning (VLP) scenario with modulated LEDs.
Figure 1. Typical indoor visible light positioning (VLP) scenario with modulated LEDs.
Sensors 19 02324 g001
Figure 2. Structure of multi-layer feed-forward neural network.
Figure 2. Structure of multi-layer feed-forward neural network.
Sensors 19 02324 g002
Figure 3. Flow chart of proposed Modified Momentum Back-Propagation (MMBP) algorithm.
Figure 3. Flow chart of proposed Modified Momentum Back-Propagation (MMBP) algorithm.
Sensors 19 02324 g003
Figure 4. (a) Experimental setup of positioning system, (b) LED transmitter.
Figure 4. (a) Experimental setup of positioning system, (b) LED transmitter.
Sensors 19 02324 g004
Figure 5. Even training data set.
Figure 5. Even training data set.
Sensors 19 02324 g005
Figure 6. Positioning error with different numbers of hidden layer nodes under the even training data set.
Figure 6. Positioning error with different numbers of hidden layer nodes under the even training data set.
Sensors 19 02324 g006
Figure 7. Final 2D positioning results with even training data set.
Figure 7. Final 2D positioning results with even training data set.
Sensors 19 02324 g007
Figure 8. Distribution of positioning error for (a) MMBP algorithm with even training data set and (b) traditional received signal strength (RSS)-based algorithm.
Figure 8. Distribution of positioning error for (a) MMBP algorithm with even training data set and (b) traditional received signal strength (RSS)-based algorithm.
Sensors 19 02324 g008
Figure 9. Cumulative distribution of positioning error for the MMBP algorithm using even training data set and traditional RSS-based algorithm.
Figure 9. Cumulative distribution of positioning error for the MMBP algorithm using even training data set and traditional RSS-based algorithm.
Sensors 19 02324 g009
Figure 10. MSE performance with the even training data set.
Figure 10. MSE performance with the even training data set.
Sensors 19 02324 g010
Figure 11. Arbitrary training data set.
Figure 11. Arbitrary training data set.
Sensors 19 02324 g011
Figure 12. Positioning error with different numbers of hidden layer nodes under the arbitrary training data set.
Figure 12. Positioning error with different numbers of hidden layer nodes under the arbitrary training data set.
Sensors 19 02324 g012
Figure 13. Final 2D positioning results with arbitrary training data set.
Figure 13. Final 2D positioning results with arbitrary training data set.
Sensors 19 02324 g013
Figure 14. Distribution of positioning error for (a) MMBP algorithm with arbitrary training data set and (b) traditional RSS-based algorithm.
Figure 14. Distribution of positioning error for (a) MMBP algorithm with arbitrary training data set and (b) traditional RSS-based algorithm.
Sensors 19 02324 g014
Figure 15. Cumulative distribution of positioning error for the MMBP algorithm using arbitrary training data set and traditional RSS-based algorithm.
Figure 15. Cumulative distribution of positioning error for the MMBP algorithm using arbitrary training data set and traditional RSS-based algorithm.
Sensors 19 02324 g015
Figure 16. MSE performance with the arbitrary training data set.
Figure 16. MSE performance with the arbitrary training data set.
Sensors 19 02324 g016
Figure 17. Cumulative distribution of positioning error for the arbitrary training data set and even training data set.
Figure 17. Cumulative distribution of positioning error for the arbitrary training data set and even training data set.
Sensors 19 02324 g017
Figure 18. Probabilities of positioning errors less than 5 cm with different algorithms.
Figure 18. Probabilities of positioning errors less than 5 cm with different algorithms.
Sensors 19 02324 g018
Table 1. Specific Parameters of Positioning System.
Table 1. Specific Parameters of Positioning System.
ParametersValue
Injection current of LEDs (A)1
Receiver active area diameter (mm)1
Responsivity of detector (A/W)25 (@600 nm)
Sampling rate of oscilloscope (MSa/s)100
Half power angle of LEDs45°
LED 3dB bandwidth3 MHz
Table 2. Parameters of the neural network with the even training.
Table 2. Parameters of the neural network with the even training.
ParameterValue
Hidden layer ( L )13
Learning rate ( η )0.0003
Momentum factor0.9
Iteration times6594
Constant increment factor ( k i n c )1.01
Constant decrement factor ( k d e c )0.75
Table 3. Time cost of different algorithms with even training data set.
Table 3. Time cost of different algorithms with even training data set.
ParametersMMBP AlgorithmTraditional RSS-Based Algorithm
Training time (s)2.36NAN
Positioning time (s)0.0072.25
Table 4. Parameters of the neural network with the arbitrary training data set.
Table 4. Parameters of the neural network with the arbitrary training data set.
ParameterValue
Hidden layer ( L ) 10
Learning rate ( η )0.001
Momentum factor ( α )0.9
Iteration times975
Constant increment factor ( k i n c )1.065
Constant increment factor ( k d e c )0.4
Table 5. Time cost of different algorithms with arbitrary training data set.
Table 5. Time cost of different algorithms with arbitrary training data set.
ParametersMMBP AlgorithmTraditional RSS-Based Algorithm
Training time (s)0.403NAN
Positioning time (s)0.0052.25
Table 6. Parameters of different location system.
Table 6. Parameters of different location system.
MMBPBP [13]GD-LS [15]GI-LS [15]
Training points205680225225
Location area1.8 m × 1.8 m1 m × 0.9 m0.7 m × 0.7 m0.7 m × 0.7 m
Positioning methodRSSRSSRSS-fingerprint baseRSS-fingerprint base

Share and Cite

MDPI and ACS Style

Zhang, H.; Cui, J.; Feng, L.; Yang, A.; Lv, H.; Lin, B.; Huang, H. High-Precision Indoor Visible Light Positioning Using Modified Momentum Back Propagation Neural Network with Sparse Training Point. Sensors 2019, 19, 2324. https://0-doi-org.brum.beds.ac.uk/10.3390/s19102324

AMA Style

Zhang H, Cui J, Feng L, Yang A, Lv H, Lin B, Huang H. High-Precision Indoor Visible Light Positioning Using Modified Momentum Back Propagation Neural Network with Sparse Training Point. Sensors. 2019; 19(10):2324. https://0-doi-org.brum.beds.ac.uk/10.3390/s19102324

Chicago/Turabian Style

Zhang, Haiqi, Jiahe Cui, Lihui Feng, Aiying Yang, Huichao Lv, Bo Lin, and Heqing Huang. 2019. "High-Precision Indoor Visible Light Positioning Using Modified Momentum Back Propagation Neural Network with Sparse Training Point" Sensors 19, no. 10: 2324. https://0-doi-org.brum.beds.ac.uk/10.3390/s19102324

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop