Indoor Visible Light Positioning Based on Improved Particle Swarm Optimization Method With Min-Max Algorithm

In this paper, an improved particle swarm optimization (IPSO) algorithm is proposed to solve the problem of premature convergence and redundant particles of the original PSO used in visible light positioning (VLP) systems. In the proposed IPSO algorithm, an adaptive particle initialization method based on Min-Max algorithm is used to adjust the number of particles and ensure that there are always particles near the target node (TN). Moreover, a nonlinear decreasing strategy of inertia weight is designed to ensure the stability of particle velocity during the iterative process. Simulation results show that, compared with the original PSO algorithm, the averaged positioning accuracy of the proposed IPSO-Min-Max algorithm is enhanced significantly at the expense of limited time consumption. What’s more, we also find that for the proposed IPSO-Min-Max algorithm the increase of particle generation spacing will reduce the positioning delay but with the penalty in positioning accuracy. Therefore, it is necessary to select an appropriate particle spacing value according to specific requirements.


I. INTRODUCTION
With the development of intelligent mobile terminals and service robots, the demands for indoor location information are increasing rapidly. Nowadays, people usually spend most of their time indoors, and therefore accurate indoor positioning is of great significance. Presently, Global Positioning System (GPS) is widely used in aircraft, vehicles, and portable devices to provide outdoor real-time positioning and navigation. However, satellite signals are usually attenuated or interrupted by ceiling or other obstacles, and that inevitably leads to a sharp decline in indoor positioning accuracy and continuity [1]. To fill the gap of GPS signals, various indoor positioning techniques, such as WiFi [2], Bluetooth [3], RFID [4], and UWB [5] have been developed to provide indoor positioning services.
The associate editor coordinating the review of this manuscript and approving it for publication was Pallab K. Choudhury .
In recent years, visible light positioning (VLP) systems based on light emitting diode (LED) have attracted considerable attention because of their low-cost, high precision and easy implementation [6]. In a VLP system, LEDs are often used as light sources at the transmitter, and photodetectors (PDs) or image sensors (ISs) are usually used at the receiver [7]. Considering the cost and accuracy issues, most PD-based VLP systems are equipped with one PD and multiple LEDs, and their receivers perform position estimation using received signal strength (RSS) [8].
Among RSS-based VLP systems, some directly use the RSS measurement to calculate the distance between transmitter and receiver [9], [10]. Others exploit the RSS values as location fingerprints to further perform matching algorithms [11], [12]. For fingerprint-based positioning, a large amount of work is needed to establish a fingerprint database in advance. Therefore, distance-based positioning is suitable for application scenarios without training overhead.
Most distance-based positioning methods usually use trilateral positioning [13], [14] or Min-Max algorithm [15], [16]. The positioning accuracy of the Min-Max algorithm is limited because it can only obtain an area of interest (AoI) to roughly determine the target's position. However, due to its advantages of low complexity and good robustness, the Min-Max algorithm can be combined with other algorithms to obtain better positioning accuracy.
In recent years, particle swarm optimization (PSO) algorithm was introduced into indoor positioning to improve the localization performance, because of its high positioning accuracy, simple implementation and fewer parameters [17]. However, there are some inherent problems needed to be addressed when the original PSO algorithm is used in indoor VLP systems, such as premature convergence and low convergence accuracy.
Aiming at the above problems of the original PSO algorithm, a hybrid annealing PSO algorithm was proposed in [18] to improve the average positioning accuracy and accelerate the convergence speed. In [19] and [20], trilateral localization was used to reduce the number of iterations and improve the localization accuracy by limiting the generation area. However, in these improved PSO algorithms, the number of initial particles needs to be specified in advance and the particles are randomly distributed, so it is inconvenient to apply them to indoor VLP systems. Therefore, in this paper, we propose an improved PSO Min-Max (IPSO-Min-Max) algorithm for indoor VLP systems. In the proposed IPSO-Min-Max algorithm, the receiver first receives the RSS values at a certain height from each LED and converts them into corresponding distances. Then, a cuboid AoI is formed using the Min-Max algorithm, and the initial particles are generated at equal intervals in the AoI. Finally, the IPSO algorithm is performed iteratively to obtain the particle coordinates with the best fitness, which can be selected as target coordinates. Our major contributions are summarized as follows: i. An adaptive particle initialization method based on Min-Max AoI is used in the proposed IPSO algorithm to generate initial particles uniformly in the measured room and ensure that there are always particles near the target node (TN). ii. A nonlinear decreasing strategy of inertia weight is designed to ensure the stability of particle velocity during the iterative process. iii. The proposed IPSO-Min-Max algorithm is compared with the existing PSO [17] and its improved versions [18], [19], [20] in positioning accuracy and real-time performance to demonstrate the effectiveness of our algorithm.
The rest of this paper is organized as follows. In Section II, we describe the system models including the LED radiation, visible light channel, and noise models. Then we briefly introduce the existing algorithms used in this paper in Section III. The proposed IPSO-Min-Max algorithm is presented in Section IV. Furthermore, simulation results are shown in Section V, followed by the conclusion in Section VI.

II. SYSTEM MODELS A. RADIATION MODEL OF SPHERICAL LED
For visible light systems, RSS measurement usually refers to the received power or received light intensity. As shown in Fig. 1, the radiation mode of light emitted by a spherical LED in free space follows the Lambert radiation model. The radiation intensity of LED at emission angle φ is calculated as follows [21]: where I (0) denotes the intensity at 0 • angle and m is the order of Lambertian emission. φ 1/2 is LED's emission angle at half power, and P t is radiation power. From Fig. 1, we also see that with the increase of m, the radiation energy is more and more concentrated near the 0 • line, and that can be beneficial for optical communications. However, this will reduce the illumination coverage of LED and may not meet lighting needs. Fig. 2 shows that when m = 1, the LED can achieve good coverage with the increase of emission power. Therefore, m can be set as close as possible to 1 to satisfy the needs of positioning and lighting at the same time.

B. VISIBLE LIGHT CHANNEL MODEL
To measure the distance from PD to LED, the TN's receiver also needs to detect the visible light power at an unknown position. As shown in Fig. 3, in the presence of a line-of-sight (LOS) path, the received optical power P r can be expressed VOLUME 10, 2022 as [21]: where H (0) is the LOS path gain, which can be represented as [21]: where G(φ, ψ) = cos m (φ)T s (ψ)g(ψ)cos(ψ) denotes the angle-dependent variable. φ is the LED transmitting angle, ψ is the PD receiving angle, and d i is the distance between the receiver and the i-th transmitter. ψ c is the field-of-view (FOV) angle, indicating the maximum angle of incidence allowed by the PD. T s (ψ) is the gain of the optical filter and A is the effective receiving area of the PD. g(ψ) is the gain of the optical concentrator [21]: where n is the refractive index of the lens fixed on the PD.

C. NOISE AND INTERFERENCE MODEL
For indoor VLP systems, the noise mainly includes electron thermal noise and shot noise. Electron thermal noise mainly includes field effect transistor (FET) channel noise and feedback impedance noise, and shot noise is mainly related to optical signal and background current generated by sunlight [22]. Moreover, similar to the multipath reflection in wireless communications, the PD will also receive reflected light from various obstacles, and that may cause ranging errors in distance-based positioning methods.
For the sake of analysis, shot noise, electron thermal noise, and reflected light interference are usually modeled as additive Gaussian noise [23]. Moreover, assuming that the non-line-of-sight (NLOS) path gain is H ref (0), the received electric power P re can be expressed as [24]: where R denotes the PD responsivity. (0)] is the received optical power, and σ 2 is the total noise variance consisting of thermal noise and shot noise, which can be modeled as [24]: where k is the Boltzmann constant and T is the Fahrenheit temperature.
G is the open-loop voltage gain and η is the fixed capacitance per unit area of the PD. q is the unit charge, and I bg is the background current. I 2 and I 3 are the noise bandwidth factors and B is the equivalent noise bandwidth. g m is the transconductance of FET and is the channel noise factor.

III. ALGORITHMS USED IN THIS PAPER A. MIN-MAX ALGORITHM
Min-Max algorithm is a ranging-based positioning method that has the characteristics of low complexity and simple implementation [15], [16]. In two-dimensional (2-D) scenarios, by using the Min-Max algorithm, multiple square areas can be obtained according to the distances between the TN and each LED, and the AoI can be determined by the intersection area of these square areas. Fig. 4 illustrates the 2-D Min-Max algorithm with three LEDs. As shown in Fig. 4, the four vertices of the AoI are ( , which can be obtained by [16]: where i = 1, 2, · · · , N , and N is the number of LEDs. d (i) hor is the horizontal distance. For a VLP system, (x i , y i ) is known, and the received power P (i) r can be detected by the PD. Using (4) and (5), the hor between the PD and the i-th LED can be obtained by [25]: where h is the room height (see Fig. 3).
Moreover, the TN's location (x, y) can be estimated by [16]: As for 3-D positioning, it is necessary to obtain the slant distances d i between the PD and each LED (see Fig. 3), and determine the corresponding AoI. As shown in Fig. 5, compared with the 2-D case, the 3-D AoI becomes a cubic box instead of a rectangle. d i can be obtained using (1)- (6). Similarly, we take the center of the AoI as the estimated location (x, y, z) of the TN, which can be calculated as follows: It should be noted that in the 3-D case, the height of the receiver H should be known in advance to calculate the slant distance according to the RSS model.

B. PARTICLE SWARM OPTIMIZATION ALGORITHM
We consider a 3-D space where each particle represents a location and the population size of particles is M . The position coordinate and the velocity vector of the l-th particle are z ), respectively. The individual extreme value of the l-th particle is defined as the best position coordinate b (l) z ) at each iteration. The population extremum of the t-th iteration is defined as the particle position g(t) = (g x (t), g y (t), g z (t)) with the best fitness. At the t-th iteration, the l-th particle's position and velocity can be updated as follows [17]: where w is the inertia weight. c 1 and c 2 are individual and social learning factors of population particles, respectively. They are used to adjust the step length of particles moving towards the individual and population extreme values, respectively. r 1 and r 2 are two independent random variables uniformly distributed in the interval [0,1]. After the iteration is completed, the optimization process can be realized by selecting several particles with the best fitness. Assuming that the Euclidean distance from the l-th particle to the i-th LED is d (l) i , the fitness function can be expressed as [19]: can be obtained using the coordinates of LED and p (l) .
From (17), we see that the closer a particle is to the TN, the smaller the fitness function value. Moreover, particles will always move to the particle with the lowest fitness in each iteration. This means after a sufficiently large number of iterations, one or more particles with the least fitness can be selected as the estimated coordinates of the TN.
It is noted that when the PSO algorithm is used in indoor VLP systems, the number of LEDs must be greater than or equal to 3 to achieve sufficiently high positioning precision. As shown in Fig. 6, when single-LED or two LEDs are used, there are infinite optimal fitness points in addition to the TN's position, and that leads to poor positioning accuracy. In actual positioning environments, the number of LEDs usually needs to be more than three to obtain satisfactory performance. If there are obstacles on one or more LOS paths (namely the number of LEDs), as long as the receiver can smoothly receive three or more LOS components from independent LEDs, the performance will not deteriorate significantly. Therefore, the probability of performance deterioration can be minimized by optimizing the layout design of LED arrays. Due to the limited space, the optimization of LED layout design is not discussed in this paper, and we assume that there are always three independent LOS paths available.

IV. PROPOSED LOCALIZATION ALGORITHM
To improve the overall performance of the original PSO method, in this paper, the Min-Max algorithm is combined with the PSO method. The main process of the proposed IPSO-Min-Max method is performed by the following steps.
Step 1: Calculate the distances according to the RSS values at the TN; Step 2: Acquire the AoI using the Min-Max algorithm; Step 3: Generate particles at equal intervals adaptively according to the size of the AoI and determine the maximum value of particle velocity according to the minimum edge length of the AoI.
Step 4: Perform the PSO iteration with the nonlinear decreasing strategy of inertia weight designed in this paper to estimate the position of the TN.
According to the above steps, we see that the nonlinear decreasing strategy of inertia weight and adaptive particle generation play important roles in the proposed IPSO-Min-Max method. Therefore, they will be discussed in detail in this section.

A. NONLINEAR DECREASING STRATEGY OF INERTIA WEIGHT
This strategy is designed to avoid the local optimization problem caused by the excessive moving speed of particles. Generally speaking, we expect the particles to move fast toward the optimal position at the beginning of the iteration, but slowly at the end of the iteration so as not to miss the optimal position.
Observing (16), we see that the moving speed of particles can be adjusted by the inertia weight w. Therefore, we let w gradually decrease from the maximum value with the increase of the number of iterations by using the frequency response function of the low-pass Bessel filter. The system function of the low pass Bessel filter can be expressed as [26]: where A i and B 0 are polynomial coefficients and M is the filter order. Fig. 7 shows the frequency response of the Bessel filter with M = 2. From Fig. 7 we see that the amplitude decreases gradually with the increase of frequency, and the change rate (gradient) increases firstly and decreases after the cut-off frequency is approached. We apply this trend to the factor controlling the particle moving speed, namely the inertia weight. Accordingly, the inertia weight in (16) can be refined as: where B 0 = A 0 = T 2 /4, A 1 = T /(2Q), and A 2 = 1. T is the total number of iterations. Q = 0.5773 is the quality factor related to M [26]. From (19) we see that w(t) decreases nonlinearly with the increase of the number of iterations in the range of [0.1,0.9], where the lower and upper limits are determined empirically as 0.1 and 0.9, respectively. Using this strategy can ensure that the particles' velocity decreases nonlinearly with the iteration, so as to make sure that the particles can be closer to the TN. In addition, when the number of iterations is given, the inertia weight of each iteration can be directly acquired according to (19), so this method can solve the problem of poor convergence accuracy without significantly increasing the computational complexity.

B. ADAPTIVE PARTICLE GENERATION METHOD
In the PSO algorithm, how determining the initial position and number of particles is an important problem. Too many particles will lead to unnecessary computation overhead, and too few particles may result in local optimization problems. Moreover, if the initial particle is too far away from the TN, likely, that particles cannot approach the optimal position FIGURE 8. Initial and final particle distributions of the proposed adaptive particle generation algorithm.
within a limited number of iterations. Therefore, we use the Min-Max algorithm to solve this problem.
Using the Min-Max algorithm described above, the vertices of the AoI affiliated with the TN can be obtained, and that means the initial particles can be generated within the AoI to make sure that the initial particles can be as close to the TN as possible. The adaptive particle generation process is shown in Algorithm 1. According to Algorithm 1, we see that the number of particles does not need to be specified in advance and it just can be obtained directly after the AoI affiliated with the TN is determined. By this means, particles can be closer to the TN and their speed can also be limited by the size of the AoI. Therefore, compared with the existing PSO algorithms in which particles should be initialized in advance using random distribution, the proposed adaptive particle generation method can be more suitable for VLP systems thanks to its flexibility and ease of implementation. More specifically, Fig. 8(a) and Fig. 8(b) present the initial and final particle distributions of the adaptive particle generation method, respectively. It should be noted that the TN has been limited within the AoI, so the range of Algorithm 1 Adaptive Particle Generation Method x min + l, x min + 2l, · · · , x min + k 1 l ≤ x max ); 9: p y = (y min , y min + l, y min + 2l, · · · , y min + k 2 l ≤ y max ); 10: p z = (z min , z min + l, z min + 2l, · · · , z min + k 3 l ≤ z max ); 11: for k=1 to k 3 + 1 do 12: for i=1 to k 1 + 1 do 13: for j=1 to k 2 + 1 do 14: p(ii) = [p x (i), p y (j), p z (k)];

15:
ii = ii + 1; 16: end for 17: end for 18: end for Outputs: particle coordinates p, maximum value of particle velocity v lim . particle velocity can be determined according to the size of the AoI.

C. IPSO-MIN-MAX POSITIONING
According to the definition of the fitness function mentioned above, after the iteration process is completed, the particle coordinate with the smallest fitness value is selected as the estimated position of the TN. Therefore, at the end of the iteration, the TN's position (x, y, z) can be expressed as: Based on the above discussions, Algorithm 2 presents the implementation process of the proposed IPSO-Min-Max algorithm. Compared with the original PSO algorithm [17], the proposed IPSO-Min-Max algorithm has the following advantages: 1) higher positioning accuracy because of faster convergence and closer to the optimal value; 2) initial particles can be generated as close to the TN as possible.

V. SIMULATION RESULTS
This section gives the performance evaluation of the proposed IPSO-Min-Max algorithm in terms of positioning accuracy and latency. In the simulations, the averaged positioning error was evaluated by averaging the results obtained from 200 random positions in the measured room. Some simulation parameters of the VLP system are shown in Table 1, in which

Algorithm 2 IPSO-Min-Max Positioning Algorithm
, total number of iterations T, fitness function f (·). Initialization: 1: Q=0.5773 into algorithm 1 to obtain the initial particle coordinates p and range of particle's velocity v lim , and let b=p.  most parameters are the same as, or similar to those reported in [17], [18], [19], and [20]. Moreover, the parameters of the investigated PSO algorithms can be derived empirically and they are presented in Table 2. Fig. 9 shows the overall positioning effect of the proposed IPSO-Min-Max algorithm when SNR=15 dB and with different H values. It can be seen that the proposed IPSO-Min-Max algorithm has good positioning accuracy when H ranges from 0 to 3 meters. To evaluate the performance of the proposed IPSO-Min-Max algorithm, we consider the original PSO [17], the original Min-Max [15], [16], PSO using nonlinear weights in (19) (IPSO), PSO with Algorithm 1 (PSO-Min-Max), and two   existing improved PSO proposed in [18], [19], and [20] as its counterparts. Fig. 10 presents an example of the comparison of fitness values for the investigated PSO algorithms when the TN's exact position is (2, 2, 1.5). From Fig. 10 we see that the proposed IPSO-Min-Max algorithm has the best fitness values and best convergence, and that demonstrates the effectiveness of the proposed IPSO-Min-Max algorithm. Moreover, the robust convergence of fitness values of the proposed IPSO-Min-Max can also be observed in Table 3. During each iteration, the position and speed of all particles are updated respectively towards the global optimum. The average iteration time is 0.075-0.09 ms for each iteration and therefore, it will take 2.25-2.7 ms after 30 iterations are performed. Fig. 11 presents the averaged positioning errors of the seven investigated positioning algorithms with different SNR values. We see that the IPSO-Min-Max performs best in most  SNR values. For the PSO-Min-Max algorithms, although the Min-Max algorithm limits the particle generation area, the positioning accuracy is still not sufficient, and that demonstrates the effectiveness of our proposed localization method. Fig. 12 shows the cumulative distribution function (CDF) of the positioning error for the seven investigated positioning algorithms when SNR is fixed at 15 dB. We see that the proposed IPSO-Min-Max algorithm outperforms the other six algorithms in positioning accuracy.
From Figs. 10-12, we also see that the proposed adaptive particle initialization method (used in the PSO-Min-Max) is exactly better than the random particle generation (used in the original PSO) in terms of the positioning accuracy. Fig. 13 presents the performance comparison in terms of positioning delay, which represents the real-time performance of the seven investigated positioning algorithms. We see that the positioning latency of the proposed IPSO-Min-Max algorithm is higher than the other six investigated algorithms. That means the benefit of the proposed IPSO-Min-Max algorithm in positioning accuracy comes at the expense of computational complexity. During all the simulations, we observed that the particle initialization time   is 1-2 ms for the adaptive particle generation method, and 0.5-1 ms for the random generation method, respectively. Therefore, in accordance with Fig. 13, we can infer that only using the nonlinear decreasing of inertia weight (single IPSO) does not significantly increase the computational complexity compared with the random particle distribution (the original PSO [17]). However, for the PSO-Min-Max algorithm and the proposed IPSO-Min-Max algorithm, small initial particle pacing (0.8 m) accounts for the dramatic increase in computational complexity. Therefore, the initial particle spacing is crucial to reach the trade-off between positioning accuracy and computational complexity, which are shown in Figs. 14 and 15.
Figs. 14 and 15 provide the averaged positioning error and positioning latency of the proposed IPSO-Min-Max algorithm with different initial particle spacing values, respectively (SNR=15 dB). We see that with the increase of initial particle spacing, the positioning accuracy becomes worse, but the positioning delay becomes smaller. Therefore, we can adjust the particle generation spacing according to the actual positioning requirements to balance the computational complexity and the positioning accuracy.

VI. CONCLUSION
In this paper, we propose a visible light indoor positioning method referred to as the IPSO-Min-Max algorithm, which includes the nonlinear decreasing strategy of inertia weight based on Bessel filter model and the particle initialization strategy based on Min-Max algorithm. Simulation results demonstrated the effectiveness and feasibility of the proposed IPSO-Min-Max algorithm. Therefore, it can be considered a promising solution for indoor high-precision VLP applications with low cost.
In our future work, we will continue to focus on the research and development of RSS-ranging-based VLP systems, mainly including the optimization of LED layout design, real-time positioning algorithm design, and system implementation for practical applications. HUI LI received the B.Eng. degree in communication engineering from Northeast Electric Power University, China, in 2021. She is currently pursuing the master's degree with the Department of Communication Engineering, School of Information Engineering, Chang'an University. The focus of her current research is on indoor ultra-wideband positioning techniques. Her research interests include machine learning, indoor positioning, and optimization algorithms. VOLUME 10, 2022