Utilizing Lighting Design Software for Simulation and Planning of Machine Learning Based Angle-of-Arrival (AOA) Visible Light Positioning (VLP) Systems

We propose to utilize a commercially available DIALux lighting design software for simulation and planning of machine learning (ML) based angle-of-arrival (AOA) visible light positioning (VLP) systems. Here, different ML models, for example, second order linear regression (LR), artificial neural-network (ANN), and convolutional neural-network (CNN) are employed. The proposed VLP simulator works well with different ML algorithms. The results show that the proposed scheme can acts as an effective indoor VLP planning and design tool. Besides, it may also alleviate the training data collection in ML based VLP systems.


I. INTRODUCTION
T HE rapid developments of Internet-of-Things (IOT), wireless sensor networks, unmanned aerial vehicle (UAV)/autonomous mobile robot (AMR) services, and beyond 5G/6G networks require accurate positioning and location data to enable stable and high quality-of-service (QoS) transmission [1]. The Global Positioning System (GPS) is the most widely used outdoor positioning system; however, it is not suitable to provide accurate indoor positioning since the GPS signals do not penetrate building walls. Indoor positioning systems can provide navigation, tracking, and surveillance, which find more and more applications in places like, factories, shopping malls, supermarkets, hospitals, tunnels, metro stations, etc [2]. Manuscript  A number of indoor positioning technologies have been proposed, for example, Radio-Frequency Identification (RFID), Bluetooth, Ultra Wideband (UWB), etc [3]. In the passive RFID technology, a RFID reader will transfer RF energy to activate the RFID tag. ID and data from the RFID tag will then be received by the RFID reader for positioning. However, the RFID technology only allows localization at a specific point where the reader is located, and the transmission distance is only in meters. The Bluetooth positioning technology involves measuring the Bluetooth signal strength from fixed beacons/tags using a Bluetooth receiver (Rx). It can be used to locate assets with an accuracy < 1 m. UWB is a short-range RF technology, and the positioning can be realized using time-of-flight (TOF) method. The positioning accuracy is in tens of centimeter. Although the above RF schemes can provide indoor positioning, they may face problems including the RF multipath fading and electromagnetic interference (EMI) from nearby RF devices. These limit the use of the RF based positioning system in areas, such as hospitals and power stations [3]. In addition, ultrasound based indoor positioning system has been proposed. It uses the sound wave with a relatively large wavelength; hence, the positioning accuracy is low [4]. Besides, the positioning performance is affected by the temperature and humidity of the indoor environments.
On the other hand, indoor positioning can be achieved using the light emitting diode (LED) lighting infrastructure [2], [5], which is known as visible light positioning (VLP). The relatively large modulation bandwidth of LED allows it to be an effective optical transmitter (Tx) providing visible light communication (VLC) [6], [7], [8], [9], [10], [11], [12], [13], [14]. The LED based VLC technologies offer many advantages, including, free from EMI, more energy efficiency and cost efficiency, longer lifetimes. Besides, due to the use of the optical spectrum instead of the highly congested RF spectrum, VLC is also regarded as promising candidates for the beyond 5G and 6G mobile network [15], [16]. Unlike the RF indoor positioning technologies, optical signal cannot penetrate walls; hence it be confined in the illumination area and does not interfere with other RF devices. Besides, the VLP can be integrated with the existing LED lighting system; hence, additional deployment cost and power consumption can be minimized. VLP systems using This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ different positioning algorithms have been reported, including proximity [17], time-of-arrival (TOA) [18], time-difference-ofarrival (TDOA) [19], received-signal-strength (RSS) [20], [21], and angle-of-arrival (AOA) [22], [23]. The proximity scheme may require table-lookup and location approximation; hence, the positioning accuracy may not high. The TOA and TDOA schemes need to calculate the optical signal arrival time or arrival time difference for location estimation; hence, strict time synchronization between Tx and receiver (Rx) should be maintained. The RSS scheme is based on the inverse relation between the received optical power and distance between Tx and Rx, as well as trilateration to estimate the position. Hence, multiple LED light sources are required. If only a single LED light source is present, or the distance between the LED light sources are too far away, the RSS scheme cannot perform well. In the AOA scheme [22], [23], angular diversified Rx or multi-element Rx can be used to extract the arrival angles and directions of the incident optical signals from the LEDs. Then, the position information can be estimated. The AOA VLP can avoid the synchronization complexity of the time-based VLP.
Current VLP research is focusing on methods to enhance the positioning accuracy, and machine learning (ML) can offer several possibilities for accuracy improvement. VLP system is significantly affected by the presence of outliers, which are data points leading to incorrect prediction. ML allows systems the capability to learn and improve from the experience without being programmed explicitly. ML scheme based on clustering algorithms, such as, K-means or K nearest neighbors (KNN) [2], [3] can seek the data sets satisfying some distance criteria and perform data cleaning. Other sophisticated ML schemes, such as neural network (NN) and deep learning were also developed for the VLP systems [24], [25], [26]. NN contains several layers of connected neurons, which are influenced by neurons from previous layers. The weight and bias of each neuron can be adjusted and activated during the training process; hence, the NN can develop meaning from the uncertain data to improve the VLP accuracy.
In this work, we propose utilizing a commercially available DIALux lighting design software for simulation and planning of AOA based VLP systems. Here, we evaluate the applicability of the proposed scheme to several popular ML models, including second order linear regression (LR), artificial neural-network (ANN), and convolutional neural-network (CNN). Previously, DIALux has been applied in the RSS based VLP systems without [27], [28] and with obstacle [29], as well as in 3D environment [30]. Here, we evaluate the applicability of DIALux for the AOA based VLP system. The results show that the proposed scheme can act as an effective indoor VLP planning and design tool.
II. AOA VLP EXPERIMENT AND ALGORITHMS Fig. 1(a) shows the experimental setup of the AOA based VLP system using only a single LED lamp. The Rx is an integrated silicon based solar cell (IQSC) consists of four quadrants. Each quadrant has a separated electrode for detecting the generated photocurrent. The size of the IQSC is 4 cm × 4cm. The LED Tx is commercially available from Osram. The LED is modulated In order to achieve the angle-diversified Rx needed for the AOA VLP system, two vertical cardboards perpendicular to each other are mounted on the IQSC as shown in Fig. 1(a) for providing the shadows. The IQSC converts optical signal into photocurrent, and the quantity of photo-current is directly related to the absorbed optical signal. As shown in Fig. 1(b), different position of the LED Tx will cast different shadows to different quadrants of the IQSC due to the presence of cardboards. Hence, by analyzing the relative photocurrents of the IQSC four quadrants, the location of the LED Tx with respect to the IQSC Rx can be identified.
Here, we propose and demonstrate utilizing a commercially available DIALux lighting design software for simulation and planning of ML based AOA VLP system. The experimental conditions are input into DIALux software to construct a simulation room as shown in Fig. 1(b). The emission profile of the MR-16 LED lamp could be available from the manufacturer in illuminating engineering society (IES) format, and it can be simply imported into the DIALux software to produce the light emission profile.
As discussed above, the cardboards will affect the received photon of each quadrant by casting different shadows when the IQSC Rx is at different locations with respect to the LED Tx. We can predict the coordinates of the IQSC Rx form the generated photocurrents in the four quadrants. Fig. 1(c) illustrates an example of the top view of IQSC Rx when the LED Tx is at the top right side of IQSC Rx. Assuming the vertical distance between LED and IQSC is A cm; the horizontal distance between LED and the edge of the shadow is C i where i represents different quadrant of the IQSC; the height of cardboard is a cm; L sc is the length of the quadrant; and V i and R i are the voltage and the length of shadow in the i th quadrant. The C i and R i can be represented by (1) and (2).
As a result, the x and y coordinates between the LED Tx and the center of the IQSC Rx can be obtained by using the relations shown in (3).  Fig. 2(b), the orange dots and the blue dots are the training and testing points respectively. In this work, DIALux evo 9.2 version is used, and it is installed in a low-end laptop computer (Acer Aspire A515-51G) with Windows 10. Fig. 3 shows the procedure in flow chart of utilizing DIALux software for the VLP simulation. To simulate the AOA VLP  model by DIALux, the experimental environment is constructed. This including setting up the IQSC, the barriers for the IQSC and the light source. The IES file of the light source is imported. Then, we set up the calculation points at the four quadrants of the IQSC. When the IQSC is moved at different locations with respect to the LED lamp, the detected optical signal at different quadrants of the IQSC will be different. As the DIALux does not now allow changing the Rx location; the position of the LED lamp is adjusted with respected to the Rx instead to provide the positioning analysis. Next, we collect and store the intensity at each quadrant and location data, which will be export to a spreadsheet. Data augmentation is performed by adding Gaussian random noise to increase the numbers of data for training the ML models. There are 25 training points and 55 testing points as illustrated in Fig. 2(b). It is also worth to mention that the training and testing points are not overlapped. The data is augmented to 20 times to increase the training and testing data. Then, the second order LR machine learning, fully-connected ANN and CNN models are applied for constructed AOA VLP system for evaluation.
In order to work properly, the proposed AOA based VLP scheme using IQSC should assume no rotation or tilt of the IQSC Rx. This could be implemented by installing the IQSC Rx on top of an AMR, in which the AMR camera can identify the direction, while the IQSC can assume no tilting.
We use the second order LR machine learning model shown in (4) for the evaluation. The details of the LR model has been reported in [31], [32]. Let L be the matrix of coordinate matrix,Ω be the matrix of amplitude, W ML be the weight vector, and D be the dimension (i.e., D = 4, since there are 4 quadrants in the IQSC). In (1), i and j mean the i th and j th quadrant of the IQSC respectively; and p i and p j are the values of the i th and j th quadrant respectively, (4) where the amplitude Ω is a two dimensional matrix, and it can be written as (5), where N is the number of training data. We choose 25 training points inside the positioning unit cell, and each training location, there are 20 sets of data augmented.
The target vector T involving the x-and y-coordinates is shown in (6).
The W ML can be found out in (7). After the W ML is obtained, the IQSC Rx location can be predicted using (4), The fully-connected ANN and CNN models are also applied for the AOA VLP evaluations. In the ANN model, there are five   Fig. 4. The input layer having 14 nodes and they are the four z-score normalized values of the four quadrants of the IQSC with the cross terms. The three hidden layers have node numbers of 32, 16 and 8, respectively. Finally, the output layer has one node for the prediction of x-or y-coordinates. For the CNN model as shown in Fig. 5, similar to the ANN model, the input is the four z-score normalized values in the four quadrants of the IQSC. The first convolutional layer has 8 filters with kernel of 3, stride of 1; and the first max-pooling layer has the size of 2 and stride of 1. Then the second convolutional layer has 32 filters and second max-pooling layer has the size of 2 and stride of 1. After the flatten layer, there are three fully connected layers with nodes 64, 16 and 1 respectively. Finally, we can get the output x-and y-coordinates.   DISCUSSION   Fig. 6 illustrates the positioning error distributions of the training results and the testing results obtained from the DIALux simulated AOA VLP system using LR, ANN and CNN models respectively. The red dot and black circles are the training/testing locations and maximum positioning error respectively. As expected, the training results have smaller positioning errors since the models are trained and evaluated by the same set of data. We can observe that the black circles are small and condensed, particular when the ANN and CNN models are utilized. When the models are trained with training data, but evaluated with testing data, the positioning errors increase. The average positioning errors of different models are shown in Table I  respectively. These results also agree with the error distribution profiles shown in Fig. 6. We also include the experimental AOA VLP results in Table I for comparison. The hyperparameters of the models, such as the number of hidden layers, as well as the number of nodes are optimized by employing different combinations of hyperparameters and looking for the minimum average positioning error. It is also believed that lower average positioning error may be obtained by using other ML models with better optimization.
Besides, in the CNN model, convolutional layer and pooling layer are used to perform feature extraction on the RSS data; hence, more representative features can be obtained. From the convolutional layer, we obtain the advantage of weights sharing, which uses the same kernel for information extraction and the relative relationship between features can be preserved at the same time. The role of the max pooling layer is a nonlinear form of down sampling that continuously reduces the spatial size of the data. It can reduce the number of parameters and calculation; hence, it can avoid overfitting to a certain extent. As a result, the CNN model can have better positioning accuracy when compared that using LR and ANN models. Fig. 7(a) and (b) show the positioning error cumulative distribution function (CDF) of the training results and testing results respectively. For the testing cases, the P80 and P90 CDF errors of the CNN case are within 6 cm and 7 cm respectively.
We have consolidated our parameters chosen in the simulation, and then evaluated by the experimental data. The results are compared with using the parameters chosen in the experiment and then evaluated by the experimental data. The variation of using different machine learning models are within 10%. This also agree with our previous study in the RSS based VLP system as reported in ref. [29]. In order to evaluate the proposed AOA VLP scheme to a more practical environment, the positioning unit cell is extended from 40 cm × 40 cm × 100 cm to a more practical unit cell of 120 cm × 120 cm × 280 cm. In this case, the vertical distance between the LED and the Rx is 280 cm. Similar to the small unit cell case, 25 training points and 55 testing points are chosen inside the positioning unit cell for fair comparison. Table II shows the average error of training results and testing results in a large unit cell. By comparing the results in Table I (i.e., small unit cell) and Table II (i.e., large unit cell), we can observe that, for example, when using the ANN model, the average error in the testing data increases from 5.19 cm to 29.3 cm, showing an error increase of 5.6 times while the unit cell volume is increased by 25.2 times. The significant increase in the average error is due to the limited output lumen and diverge angle of the LED Tx, since the same LED with diameter of 5 cm and output lumen of 700 lm in the small unit cell case is used.
For the practical AOA based VLP system used in shopping malls or offices, the whole area is covered by positioning unit cells. In order to differentiate different positioning unit cells, each LED lamp serving at a particular unit cell is modulated by a specific frequency, as illustrated in Fig. 8. In our experiment, the LED lamp is modulated by a 7 kHz sinusoidal signal via a bias-tee circuit. The LED modulation frequency should be higher than 100 Hz (i.e., people cannot detect the light fluctuation); and it should be lower than the frequency response of the IQSC. Fig. 9(a) show the measured response of the IQSC. We can observe that the 3-dB bandwidth is ∼50 kHz. This implies that the LED modulation frequencies lower than 50 kHz can be detected by the IQSC. Here, we experimentally constrict two positioning unit cells with the LED lamps modulated by 7 kHz and 17 kHz respectively. Fig. 9(b)-(d) show the experimental fast Fourier transform (FFT) spectra detected by the IQSC when it is directly under the 7 kHz modulated LED; directly under the 17 kHz modulated LED, and at the boundary between the 7 kHz and 17 kHz modulated LED, respectively. We can observe the FFT peak can be well identified in each case. Hence, in a multi-cell VLP system, the position of the Rx at which unit cell is first found out by analyzing the modulation frequency. Then, the precise position inside a particular unit cell can be obtained by using AOA VLP scheme.
Using DIALux for the VLP systems have already been reported [27], [28], [29], [30]; however, they are applied for the RSS based VLP system. Here, our contribution is to show the feasibility of using DIALux for the AOA based VLP system. As DIALux can only analyze the average optical illumination for the positioning area, it can be well applied to model the average-optical-intensity-based VLP systems, such as the RSS and AOA based VLP schemes. However, DIALux cannot study modulated nor pulsed optical signals; hence it cannot be applied to model the TOA and TDOA based VLP schemes. As discussed above, in the practical AOA based VLP system, the whole area is covered by positioning unit cells. In order to differentiate different unit cells, each LED lamp is modulated by different frequencies. As DLALux cannot study modulated optical signal, we can only model different positioning unit cell separately. This is another limitation of the DLALux.

IV. CONCLUSION
In this work, we proposed utilizing a commercially available DIALux lighting design software for simulation and planning of ML based AOA VLP system. Here, different popular ML algorithms: LR, ANN, and CNN were employed. The average positioning errors obtained in DIALux when utilizing the LR, ANN and CNN models evaluated by training data were 1.74, 1.12 and 0.66 cm respectively. The average positioning errors obtained in DIALux when utilizing the LR, ANN and CNN models evaluated by testing data were 5.80, 5.19 and 3.83 cm respectively. The results showed that proposed scheme can work well with different popular ML algorithms, including LR, ANN and CNN. The proposed scheme can act as an effective indoor VLP planning and design tool.