1. Introduction
The necessity for indoor location-based services has been growing over the past decades due to its significance in the development of various applications, such as smart home appliances, robots, supermarkets, shopping malls, hospitals, etc. Various conventional positioning techniques are based on radio frequency (RF) technologies; for instance, the global positioning system has been used in outdoor environments. However, in indoor environments, it suffers from multipath-induced fading, which can affect the accuracy of the position estimation significantly [
1,
2]. A number of RF-based positioning systems have also been introduced including Bluetooth [
3], ultrasound [
4], wireless local area network [
5], ultra-wide band [
5], and RF identification [
6].
Light-emitting diodes (LEDs)-based visible light communication (VLC) systems have been introduced in recent years, which have shown great potential in achieving high-precision indoor positioning due to the use of optical signals. These systems are known as visible light positioning (VLP), which allows the usage of pre-installed LED luminaries as transmitters (Txs) in indoor environments [
7]. VLP systems are considered as an emerging and cost-effective solution compared with other technologies. VLP also leverages the use of well-developed algorithms, which have been developed for other technologies [
8], including the angle of arrival (AOA), time of arrival (TOA), proximity, scene analysis, and received signal strength (RSS) [
9]. RSS, AOA, and TOA have been explored in VLP systems with the
of 10 to 40 cm, where
represents the positioning error, which is the difference between the actual and estimated output [
10]. RSS-based positioning systems are much simpler for implementation compared with TOA and AOA-based positioning systems due to the fact that, they do not need highly accurate transceiver synchronization or a receiver (Rx) with efficient detection of the incidence angle [
11]. Therefore, most of the previous studies have been focused on RSS-based VLP systems [
12,
13,
14,
15], where the strength of the received power is used to estimate the Rx’s position. Numerous research works have reported
close to 1 cm in the past three years [
15,
16,
17]. The relatively simpler algorithms, such as proximity and scene analysis, trade simplicity with accuracy and are most appropriate for low accuracy systems.
Different estimation approaches have been used to estimate the Rx’s position. For instance, in [
18], two conventional methods relying on linear least squares (LLS) and non-linear least squares (NLLS) were used for the position estimation. However, NLLS and LLS achieved the
values of 46.42 and 55.89 cm, respectively, where
represents the minimum positioning error achieved. An efficient RSS-based VLP algorithm was proposed in [
16] to estimate the three- dimensional location of an Rx, combining two-dimensional trilateration with the NLLS. The computational time for NLLS is limited to approximately 17 ms, which is further reduced to less than 2 ms using a fast search algorithm.
Recently, an artificial neural network (ANN) has been utilized in RSS-based positioning systems. In [
17], both RSS and ANN methods were proposed to achieve an accurate indoor VLP system with a diffuse optical channel. An accuracy of 6.4 cm was achieved with the averaged
being ~13 times smaller than RSS-based positioning system. In addition, a low-cost indoor VLP system was proposed using a machine learning algorithm in [
6], which achieved an
of 3.7 cm with a height tolerance of 15 cm in line of sight (LoS) environment. In [
19], a new 2-D ANN-based VLP system was proposed, where the LEDs were grouped into blocks, and the block coordinates were encoded using under-sampled modulation. A camera was used as an Rx to decode the block coordinate, and the system achieved a mean
of 1.5 cm in LoS channel. In [
20], a VLP system based on the RSS and a deep ANN-based Bayesian regularization VLP system was proposed, where only the LoS transmission was considered. The results showed that, using only 20 training points a minimum
of 3.4 cm was achieved. In [
21], an ANN-based approach was proposed exploiting the distortions caused by inaccurate modeling (i.e., phase and intensity models) in both phase difference of arrival and RSS-based positioning systems. The pre-trained models were applied to the ANN-based VLP system for reduced complexity and enhanced robustness, showing an
of 12 cm in an indoor LoS channel.
However, in many previous works, the effects of noise and multipath were not fully and consistently considered. For example, the works reported in [
20,
21] considered only LoS paths in the analysis of positioning performance without taking into account the multipath nature of the channel. Note, for systems using Txs and Rxs with a wide beam and a field of view (FOV), respectively, the impact of multipath reflections is inevitable and therefore must be considered as was reported in [
18]. The results showed that,
values of 0.4 and 46.4 cm were achieved for the entire room without and with multipath reflections, respectively. Moreover, the impact of noise was investigated in [
22], but the considered signal-to-noise ratio (SNR) was very high (i.e., 30 dB). Alternatively, in [
23] the non-line of sight (NLoS) was considered under a very low power noise level (i.e., −140 to −180 dBm), where the minimum
of 0.05 cm was achieved by analytically solving the Lambertian transmission equation group. In [
24], both multipath reflections and the impact of noise were considered, where
of 28 cm was achieved, although at a high SNR of 30 dB. Therefore, the impact of multipath reflections should be considered as it severely reduces the accuracy of the VLP system. Although the influence of NLoS on the system performance has been studied extensively and reported in the literature [
25,
26], not much has been done on the power distance relation, which is more complex. For regression analysis and position estimation, several machine learning approaches can be used.
The aim of this work is to investigate the utilization of ANN for regression analysis in the VLP system. A comprehensive study is conducted about the optimization of an ANN for VLP systems and a complete assessment of its performance. The error performance of the proposed system is evaluated by considering the noise over a wide range of SNR. For that, three different ANN algorithms, including Levenberg–Marquardt, Bayesian regularization, and scaled conjugate gradient, are explored to minimize the
of the proposed VLP system. The error performance is analyzed and compared with the traditional RSS technique, which uses an NLLS algorithm along with a polynomial regression model [
26]. Firstly, the proposed ANN is optimized based on the number of neurons in the hidden layers (HLs) and the number of training epochs. Finally, we analyze the noise performance of the proposed system in comparison with the traditional approaches. We show that, the ANN with Bayesian regularization outperforms the traditional RSS technique using NLLS for a wide range of SNR. Moreover, we also analyze the impact of different training dataset sizes when training the neural network. We also observed an improvement in the positioning accuracy for the inner region by 43, 55, and 50% compared to 57, 32, and 6% in the outer region for the SNR values of 10, 20, and 30 dB, respectively.
The main contribution of this work is the performance evaluation and the design process of already existing ANN algorithms in the VLP systems considering a multipath channel, which has not been reported previously. In addition, we have optimized the proposed ANN model based on different parameters, such as the number of neurons in the hidden layers, the number of training epochs, and the size of the training set, which is proven to improve the positioning accuracy of the VLP system.
The rest of the paper is organized as follows;
Section 2 presents the system model, the positioning algorithms, and the polynomial regression approach in detail. The ANN used for position estimation and different training algorithms are presented in
Section 3. In
Section 4, simulation results are discussed in detail, and finally,
Section 5 concludes the paper.
4. Results and Discussion
The proposed system adopted in
Section 2 is implemented in the simulation environment using MATLAB. Both NLLS and different ANN algorithms are applied to the proposed VLP system, and the performance of all algorithms is compared. The ANN structure is composed of four layers, which include an input layer, two HLs, and an output layer. The number of neurons in each layer is variable, with four and two neurons in the input and output layers, respectively. The latter represents the estimated
x and
y position coordinates. Using (6), the calculated distances from each Tx are fed to the input layer. A sigmoid transfer function is used as the activation function for the neurons in the HLs, which thresholds the input data and provides the output as a continuous value between zero and one. The output layer employs a linear transfer function.
Besides, the proposed positioning process includes: (i) the total received power computed at the Rx; (ii) the polynomial regression model used to determine the power distance relation, and the distance from each Tx to the Rx; (iii) the computed distance is used as the input to the ANN algorithm for training purpose; and (iv) the position is estimated as the output of the ANN algorithm. Furthermore, for the real implementation, the use of these algorithms would imply two phases: the training phase, where previously collected data will be used for training the ANN; and the stand-alone phase, where the trained ANN with fixed weights will be used in the hardware for position estimation.
Figure 5 illustrates the overview of the neural network used in the proposed system. The training data consist of different samples,
ν of inputs and outputs, where
ν is the total number of samples. The distances are considered as inputs, which are computed by (6). The real position of the Rx, (
X,
Y) is considered as the output for the training data. The training data is fed to the neural network for training and the prediction output, (
xRx,
yRx) is obtained as estimated positions. These estimated positions are further compared with real positions and the error is again sent to the training algorithm for the modification of weights. This process continues until the network is fully trained.
In this study, two datasets are considered for training, testing, and validation of the ANN as detailed in
Table 2. These datasets are composed of the received power information for a given grid of Rxs with different noise power levels (according to the SNR). Note: (i) the data samples are randomly scrambled; and (ii) different datasets are used to avoid biasing of the training process, that is, ANN optimization is conducted using a single dataset, while for the validation and testing, another dataset is adopted. Therefore, 80% of dataset A is used for training, while 20% of dataset B is used for validation and testing. Data scrambling is used to feed the data randomly to the inputs of the neural network for training the network. We consider a grid (1 cm resolution) of 3600 Rx’s positions on the receiving plane, which is divided into two regions, i.e., the inner region where the received power is more uniform and includes the area of the receiving plane within the Txs (LEDs), and the outer region representing the remaining area near the walls and corners as depicted in
Figure 1. All the other key system parameters are given in
Table 3.
4.1. VLP Error Performance
Generally, RSS-based positioning algorithms are susceptible to the ambient induced shot noise, thus leading to increased
. In this work, we consider the impact of noise, which is modelled as Gaussian with
N (0,
), on the performance of VLP. A total of 1000 iterations are performed in this simulation to gain some statistical significance. The performance evaluation of the VLP system is provided in terms of the Quantile function
, which is a valid performance metric to show the level of accuracy. The measurement of the confidence interval of
is carried out through the performance metrics of the
, which is given by [
26]:
where CDF represents the cumulative distribution function of
, and
is the percentage of the confidence interval.
Figure 6 shows the measured
as a function of the SNR for different ANN algorithms in both inner and outer regions. It is observed that, LM and BR outperform SCG in both regions. For instance, in the inner region at the SNR of 10 dB,
are 54, 62, and 66 cm for LM, BR, and SCG, respectively, which increases to 80, 95, and 170 cm, respectively, for the outer region. Note, the SNR thresholds for the inner and outer regions are 10 and 15 dB, respectively, where beyond these values, the positioning errors remain almost constant at the lowest levels. Note that, we have considered the average SNR values in the analysis. The decreasing trend in the
is justified by the increase in SNR. For high values of SNR, the effect of noise on the estimated position is reduced. On the contrary, for the small values of SNR, the randomness of the input data leads to overfitting, thus making the estimated error larger. To improve the proposed VLP system, we further investigate the impact of ANN algorithms, the number of neurons in the HLs, and the epochs in the following sections.
4.2. Selection of the Training Algorithm and Number of Neurons in the HL
The number of neurons in the HL and different training methods are investigated in this subsection to determine the optimum algorithm based on
. The accuracy of the inner region is higher than the outer region due to more reflections being considered in the corners of the room. Therefore, we have only considered the inner region for the selection of the number of neurons in both HLs. As depicted in
Figure 6, both LM and BR have lower
compared with SCG, and therefore, are considered for further analysis. Next, we investigate a different number of neurons in the HL and the training for an ideal scenario (i.e., no noise).
Figure 7 shows the surface plots for
of 95% for the different number of neurons for LM and BR. As depicted in
Figure 7,
are 0.11 and 0.06 cm for: (i) LM with 36 neurons each in the HLs of 1 and 2; and (ii) BR with 32 and 28 neurons in HLs 1 and 2, respectively. Based on
the number of neurons in the HL is selected for LM and BR as detailed in
Table 4. Note, the training performance is compared for 1000 epochs between LM and BR with the total computation times of 22 and ~10 min, respectively, which are achieved using CPU Intel I Core I i9-9900K CPU @ 3.60 GHz, 3600 MHz, 8 Core PC, having 16 Logical Processors and 32 GB RAM. The epochs represent the number of times the ANN algorithm will run over the full training dataset. BR offers a faster training phase, and therefore, is selected for further investigation of the impact of a different number of epochs.
4.4. Impact of Different Training Dataset Sizes on the VLP System
Furthermore, we analyze the impact of different training dataset sizes denoted by In on the . For this, we have considered two training scenarios: the random selection (RS), and the uniform selection (US). In the former, the original dataset A is down-sampled from the original 18,000 samples to 9000, 4500, 2250, and 1125 datasets. While in the latter, the grid size is down-sampled from the original 60 × 60 samples to the aforementioned sizes. By doing so, we aim to show if the system performance depends on the selection of training dataset samples. Here, we have only generated results by considering only the data from the inner region.
Figure 11 shows the error performance versus the SNR for a range of
In and for both RS and US scenarios. For the RS scenario, the
values are 2, 11, and 44 cm for the SNR values of 30, 20, and 10 dB, respectively, with a lower
In of 9000 compared to 15, 22, and 44 cm for the US scenario with a higher
In of 18,000. Results show that, the US scenario conducts to larger errors, and this is a result of us sampling the grid resolution. This may conduct to overfitting problems. With the RS scenario, the accuracy improves for high SNR values showing that there is an optimum size for the training dataset. This can be attributed to the fact that the original grid resolution is fixed, leading to less probability of overfitting. Therefore, considering the original dataset provides improved results, the proper selection of the training dataset sizes is also essential to properly design the system.