Neural Network-Based Channel Estimation and Detection in Spatial Modulation VLC Systems

—We consider a spatial modulation aided indoor visible light communication system with user mobility and random receiver orientation. Two artiﬁcial neural networks (ANNs) are proposed which are able to predict the channel state information (CSI) with high accuracy and resolution. These architectures use estimated CSI at pilot instances obtained using least square or minimum mean square error estimation and predict CSI at intermediate locations. Moreover in ANN 2, predicted user position information is used to improve the performance. Numerical results show that the proposed ANNs deliver a better bit error rate compared to a benchmark spline interpolation-based method. Further, ANN 2 is shown to perform robustly in a high mobility scenario.


I. INTRODUCTION
In the recent developments of wireless systems, visible light communication (VLC) has become a promising technology to provide high-speed reliable communication using the existing indoor lighting infrastructure [1].Moreover, spatial modulation (SM), which is a promising technique to enhance the spectral efficiency, has been studied in the context of VLC [2], [3].SM is a technique that enables modulation over space, across different antennas at a transmitter.Specifically, directive light patterns of light-emitting diodes (LEDs) and LED/photodiode (PD) positioning can be exploited to obtain distinct channel gains that are essential for SM.
In the literature several papers have applied SM to VLC systems [3]- [7].In [3], the bit error ratio (BER) performance of a generalized SM scheme that activates multiple LEDs per channel use has been analyzed.In [5], a precoding scheme for SM has been presented.Adaptive SM in which an arbitrary number of transmitters can be used has been studied in [4].The work in [6] proposed a novel LED array structure to enable reliable SM transmission by manipulating the transmitter geometry.In [7], a SM aided system has been proposed to cope with receiver orientation errors and device blockages.In [8], a group-based LED selection method is proposed for generalized SM under user mobility and receiver orientation.
User mobility is a key aspect in VLC systems since movement causes time variations of the channel gains.In addition, random receiver orientations due to human activities such as sitting and walking also influence the channel gains.While most of the literature has studied static receivers, some papers have considered user mobility and random receiver orientation [9], [10].Typically, designing a receiver for robust communication under such conditions is challenging.Moreover, accurate channel estimation in high mobility is difficult to achieve and can cause errors at the data detection phase.
In a VLC receiver, channel estimation is performed prior to the data detection phase.For that purpose, interleaved pilot symbols in the time and/or frequency domain are sent [11].Conventional channel estimation techniques such as least squares (LS) and minimum mean square error (MMSE) estimation have been explored in the context of VLC systems [11]- [14].To finely estimate the channel with high mobility, an additional amount of pilot symbols should be inserted.In order to predict the channel state information (CSI), interpolation techniques can be used.Among them, linear, spline, and piece-wise cubic Hermite polynomial interpolation are well established techniques [15].Depending on the pilot spacing and non-linear channel variation due to mobility, interpolated channel gains can be mismatched with the actual channel gains.On the other hand, machine learning based techniques have gained attention to perform transmitter and receiver operation in VLC systems [14].However, fluctuations of the channel gain matrix due to the mobility and receiver orientation in indoor settings can cause a significant performance deterioration in the considered SM VLC system.To the best of authors knowledge, work on suitable artificial neural network (ANN) architectures for channel estimation and detection of a SM VLC systems with practical conditions such as user mobility and random receiver orientation have not been developed.To this end, we propose novel ANN based solutions with path prediction incorporated.In this paper, we present ANN based channel prediction method which can reduce the number of pilot symbols and result in reduced BER for SM aided indoor VLC systems.We consider a realistic user mobility model based on random way-points and a random receiver orientation model based on measurements.SM detectors are sensitive to effects such as user mobility and random receiver orientation errors.The goal of the proposed technique is to recover the transmitted signals based on accurate CSI estimation.ANN based CSI estimation can capture random and realistic channel conditions.Therefore, it is effective in many cases of practical scenarios.Our contributions are summarized as follows.
• We present two ANNs which can predict CSI with higher accuracy and resolution with user mobility and random receiver orientation.ANN 1 uses only estimated channels at known pilot instances as inputs while ANN 2 uses both estimated channels and predicted user locations as inputs to generate results.• Results reveal that the presented architectures are capable of achieving significant performance improvement compared to the benchmark spline interpolation method.
Fig. 1: Indoor SM aided VLC system.The azimuth and polar angles of the device are also marked.Specifically, ANN 2 is well suited for high mobility conditions since it captures the mobility and requires a small window size for prediction.II.SYSTEM MODEL Fig. 1 shows the indoor SM aided VLC system with N t ceiling mounted LEDs and N r receiver PDs.We assume onoff keying for the transmission.Each LED is either OFF or emits light of intensity {I 0 , I 1 } ∈ I per channel use, where I is the set of all possible intensity levels [3].Hence, the number of bits transmitted in a given channel use is η SM = log 2 (N t ) + log 2 (M I ) where the set of intensity levels M I for on-off keying is two and . is the floor function.Let s[n] denote the N t × 1 transmit vector for n-th time slot.There are 2 η SM possible activation patterns of s[n] denoted as s is where i s = {1, . . ., 2 η SM }.Therefore, the received real-valued signal vector at the receiver for n-th time slot can be expressed as where r is the responsivity of the PD, H[n] is the N r × N t optical channel matrix for n-th time slot, η[n] is the noise vector of dimension N r × 1.The (k, l)-th element of the H[n] matrix contains the channel gain from l-th LED to the k-th PD, h k,l [n].However, we assume that channel doesn't vary for a block of k c small number of time slots and, hence, h k,l [n] = h ic k,l for n = {(i c − 1)k c + 1, . . ., i c k c } where i c is the block number.Each element of η[n] is distributed as real additive white Gaussian noise with zero mean and variance σ 2 η .

A. Channel Model
We assume that the channel gain from a LED transmitter to a PD receiver is determined through line-of-sight (LoS) geometric loss which is deterministic for a fixed LED/PD.The LoS channel gain can be evaluated with the help of the well known Lambertian radiation pattern equation as [7] where m = − ln(2)/ ln(cos(θ 1/2 )) is the Lambertian order of the LED, A is the aperture area of the PD, l ic k,l is the Euclidean distance between the l-th LED and the k-th PD, and θ 1/2 is the half power angle of the LED.θ ic k,l is the irradiance angle of the (l, k)-th LED/PD pair, φ ic k,l is the incident angle of the (l, k)-th LED/PD pair, G is the gain of the trans-impedance amplifier (TIA) at the receiver, and c(φ ic k,l ) is the concentration gain expressed as where ρ is the internal refractive index of the concentration and Φ F oV is the field-of-view (FoV).It is noted that θ ic k,l , φ ic k,l and l ic k,l in (2) vary with the time due to the user mobility and random receiver orientation as explained in the sequel.

B. User Mobility and Random Receiver Orientation
The user mobility and the random receiver orientation have direct relationships with the azimuth angle, α ic and the polar angle, β ic of the receiver.In an indoor environment, the variation of β ic is faster than the walking speed.Hence, we select the value of k c such that the difference between β ic and β ic+1 is less than a pre-defined threshold.
1) User Mobility: We consider the random way-point based model in [7] and [9] to account for user mobility.The key concept of this model is to consider a set of random points and fill the intermediate points to obtain a walking path.Such intermediate points can be accurately modeled using a walking human trajectory model as presented in [16].In our work, a set of random points, p ip = (x ip , y ip ), where i p = {1, . . ., N p }, and N p is the number of points which lie on the floor area were selected.Next, the path for the movement between points p ip and p ip+1 was obtained by solving the optimization problem in [16] that can be expressed as under the constraints: Final condition where x(t) = (x(t), y(t), α(t), v f orw , v orth , ω) T and u(t) = (u 1 (t), u 2 (t), u 3 (t)) T are the state and control variables.In here, (x(t), y(t)) is the coordinate of the user at time t, α(t) is the azimuth angle at time t, v f orw is the velocity for the forward direction, v orth is the velocity for the orthogonal direction, ω is the angular velocity, T ip is the travel time to the i p -th point, φ f (x(t), u(t)) is the objective function, respectively.φ f (x(t), u(t)) is given by [16] where a 0 = 1, a 1 = 1.2, a 2 = 1.7, a 3 = 0.7, a 4 = 5.2, a 5 = 5, a 6 = 8 in our system.The dynamic equation of the locomotion system is ẋ In this model, (T ip+1 − T ip ) is not fixed due to variable time of movement between two random points.To obtain T ip+1 for each p ip+1 point, an iterative search can be used.We start by setting where v n is the nominal speed.Next, we increase (T ip+1 −T ip ) until φ f (x(t), u(t)) is smaller than a pre-defined threshold.Using this mobility model, the azimuth angle α(t), and user coordinates (x(t), y(t)) for time t are recorded.Such signals Fig. 2: Time frame of the proposed channel estimation and prediction protocol.are sampled at i c k c T s where T s is the time duration between two time slots to obtain the user coordinates, (x ic , y ic ) and azimuth angle, α ic throughout the movement.
2) Random Receiver Orientation: To model random receiver orientation several techniques are used in the literature.In [10], the polar angle is assumed to be distributed in a uniform distribution.In [9], a measurement based realistic model has been presented.Based on the measurements the polar angle of the mobile device is independent of the azimuth angle and the user position.According to the model, the polar angle of the receiver for walking, β ic follows a Gaussian distribution and adjacent samples are correlated.A correlated Gaussian random process (RP) can be used generate samples of the polar angle.We use a first order linear auto-regressive (AR) model to generate the i c -th sample of the correlated Gaussian RP, β ic , which is expressed as where c 0 is the bias level, c 1 is the constant factor of the AR, and w ic is the white Gaussian noise with variance σ 2 w [9].The parameters of the AR model can be calculated using and , where E(.) denotes the mean, R β (.) is the auto-correlation function of β ic , T c,β is the coherence time, and σ 2 β is the variance of β ic , respectively.The position of k-th PD can be obtained with 3D translations and rotations around the y and x-axes of the receiver's local coordinate frame.Hence, the coordinates of the k-th PD is   where (x k,0 , y k,0 ) is the coordinate of the k-th PD in the receiver's local coordinate frame.Next, θ ic k,l , φ ic k,l , and l ic k,l in (2) can be calculated as and where (x l , y l , z l ) is the coordinates of the l-th LED.

C. Channel Estimation and Detection
In this work, we present a channel estimation and prediction protocol as shown in Fig. 2. According to the protocol, pilot symbols are transmitted at an interval of K blocks or Kk c T s seconds.At the receiver, LS or MMSE channel estimation is used to obtain the CSI at pilot instances.Let Channel gains from the block ( jc-1)K+2 to the block jcK+1 Nw LS or MMSE estimated channel gains andr eceiver positions Fig. 3: Proposed ANN architecture.S jc p be the pilot matrix of the dimension N t × k c which contains the known pilot symbols for j c -th pilot instance where j c = (i c − 1)/K + 1 , and Y jc p be the received signal matrix of N r × k c .The estimated channel gain matrix using LS estimation can be expressed as where Ĥjc LS ∈ R Nr×Nt is the estimated channel matrix [12], [13].Similarly, the channel gain matrix for MMSE is where R H is the co-variance matrix of the channel [11], [12].
After LS and MMSE estimation, channel gains for the blocks from ((j c −1)K +1) to (j c K +1) are predicted using the ANN architectures presented in Sec.III.Hence, the estimated and predicted channel gain matrix for the n-th time slot, Ĥj [n] can be obtained where j ∈ {LS, M M SE} denotes the channel estimation method.We use ML detection to decode the received message stream [3], i.e.,

III. ANN BASED CHANNEL ESTIMATION AND PREDICTION
In this section, we present two ANNs that make use of CSI and user position information, to obtain higher resolution channel estimates.Recall that in our system, pilots are sent at a block interval of K followed by estimating the channels at these pilot positions using methods such as LS or MMSE.For this purpose, a window comprising N w pilot instances are considered as shown in Fig. 2. The estimated CSI and predicted device positions from (j c − N w + 1) to j c pilot instances are used as inputs to the proposed ANNs.The output of ANNs are the predicted values of the CSI for blocks from ((j c − 1)K + 2) to (j c K + 1).

A. Proposed ANN Architecture
Fig. 3 shows the ANN Architecture (referred to as ANN 1), which has an input layer, two hidden layers, and an output layer.The input layer consists of N w × N r × N t neurons, the values of which are taken from N w estimated channel matrices of the input window.We adopt two fully connected hidden layers with N 1 , and N 2 neurons in each layer.The widely used rectified linear unit (ReLU) function f ReLU (x) = max(0, x) is used as the activation function.We denote the output for the hidden layers as x(2) ∈ R N1 , and x(3) ∈ R N2 and can be written as x(2) = f ReLU W 1 x(1) + k 1 , and Nw×Nr×Nt) and W 2 ∈ R N2×N1 are the weight vectors for the first and second hidden layers, k 1 ∈ R N1 and k 2 ∈ R N2 are the bias vectors for the first and second hidden layers, and x( 1) is input to the first layer, respectively.The output layer, which consists of K×N r ×N t neurons, is used to obtain the predicted K channel gains from ((j c − 1)K + 2) to (j c K + 1) blocks.No activation function is used at the output layer.Hence, the output can be expressed as ŷ = W o x(3) , where W o ∈ R (K×Nr×Nt)×N2 is the weight vector.

B. ANN Architecture with User Position Information
In addition to the estimated CSI, prior knowledge of the receiver position can be used to refine the channel prediction.This key idea has been incorporated in extension to the ANN architecture (referred to as ANN 2) as shown in Fig. 3. Let position and azimuth angle of the device given by c = (x(t), ȳ(t), ᾱ(t)) T , are recorded with a sampling interval of T R at time instances T m , where c is piece wise continuous on each [T m , T m+1 ] interval.The traveled trajectory of the device is given by (c 0 , c1 , . . ., cm ) T .Considering cm as the initial location and cm+1 as the final location, intermediate device positions are predicted exploiting the path prediction technique in [17].Next, it is sampled at Kk c T s to obtain device locations for (j c − N w + 1) to j c pilot instances.The N w number of predicted (x, y) coordinates are used as the additional inputs to the ANN 2. Accurate path prediction can be realized using techniques such as video surveillance cameras and wall/floor mounted sensors leading to a rich statistical analysis of the movement data.Our ANN architectures are sufficiently flexible, for example the training phase can easily accommodate all real-world data sets.
In ANN 2, the input layer consists of (N w × N r × N t + 2 × N w ) neurons where additional 2 × N w neurons than ANN 1 are used to provide predicted (x, y) coordinates of the device at N w pilot instances.Two hidden layers consists of N 3 and N 4 neurons in each layer.It is noted that a better result can be obtained, even with N 3 < N 1 and N 4 < N 2 due to the use of device location prediction.The ReLU function is used as the activation function.Similar to ANN 1, K × N r × N t neurons are used at the output layer.
In the training phase of both ANNs, initial values for the network weights, Forward propagation is applied to obtain ŷ for a selected input.In this letter, the mean squared error between ŷ and a vector containing perfect CSI for K blocks, y 0 is used as the loss function which is expressed as φ , where B is the mini batch size of the training.An optical power measurement technique can be used to measure received power, and hence, y 0 can be calculated.Hardware imperfections may introduce random effects for channel gains such as in optical OFDM, while in this work, training data is processed with the help of (2) under the assumption that the VLC channel gains are deterministic.θ is updated for training batches using the stochastic gradient descent algorithm that can be expressed as θ + := θ − ∇φ(θ), where is the learning rate.Note that for training we use the Adam optimizer to minimize the loss Algorithm 1 Proposed algorithm for ANN 2
ANN 1 and ANN 2 involves a trade-off between complexity and performance.In terms of complexity, ANN 1 requires Moreover, the latter requires the device position prediction which increase the complexity.

C. Spline Interpolation
In order to benchmark the performance of ANN based CSI estimation, we compare the results with an existing interpolation method in which spline interpolation is used to obtain the intermediate (K − 1) blocks [15].Accordingly, the spline interpolation for each (k, l)-th element of the channel gain matrix Ĥj [n], h k,l [n] is done separately.Depending on the value of N w , the order of the spline polynomial can be selected.The interpolation polynomial of the order N w is expressed as where a i , ∀ i ∈ {1, N w } are constants.The spline polynomial should pass through N w points in the window.Hence, an N w set of equations can be formed to find a i .Optimal a i values can be found for example using MATLAB ® software.Further, h ij (t) is sampled at T s to obtain h k,l [n].

IV. NUMERICAL RESULTS AND DISCUSSION
In this section, numerical results are presented to illustrate the performance of the ANNs under different system and channel parameters.A room dimension of 5m × 5m × 3m is assumed.Unless stated explicitly otherwise in all simulations, we have set the parameter values as ρ = 1.25,A = 10 −3 m 2 , Φ F oV = 90 0 , θ 1/2 = 60 0 ,r = 0.5A/W, T = 1, N t = 4, N r = 4, P t = 1W, N w = 5, K = 10, T c = 13ms, N 1 = 20, N 2 , N 3 = 20, N 4 = 20, k c = 10, and SNR of 25 dB at pilot instances, respectively [7], [9].A set of 10 7 channel matrices were generated.A series of simulations were conducted to obtain suitable percentages for training, validation, and testing and finally are selected as 40%, 20%, and 40%.The evaluation is performed by MATLAB and Python running in a Acer Asphire E5-574G-58WK with a 2.3 GHz Intel Core i5 CPU and a NVIDIA GeForce 920M GPU.The average execution times for ANN 1 and ANN 2 are 7.52 µs and 10.34 µs, respectively.Fig. 4 shows the BER performance with ANNs, perfect CSI, and spline interpolation.These results corresponds to two mobility and receiver orientation conditions.v n = 1.0 ms −1 and T c,β = 80 ms corresponds to high mobility while v n = 0.5 ms −1 and T c,β = 130 ms is the low mobility case.Both ANN 1 and ANN 2 are capable of achieving a significant performance at moderate to high SNR when compared with the case of perfect CSI.Moreover, using the ANNs, the irreducible error floor due to imperfect channel estimation can be considerably reduced.At low mobility, both ANNs show a near optimal performance while there is a performance deterioration at high mobility.However, ANN 2 achieves a lower BER performance than ANN 1 and spline interpolation in both mobility conditions.Fig. 5(a) shows the BER versus K, when N w = 5 and MMSE is used.A lower K value results in more accurate channel prediction and, hence a lower BER can be observed.In the considered setup, a BER better than 10 −3 can be observed when K < 15 using both ANNs.In order to obtain 10 −3 BER, the K value needs to be 6, 16, and 21 for in the cases of spline, ANN 1 and ANN 2, respectively.Fig. 5(b) shows the BER versus N w , when K = 10 and MMSE is used.A higher value of N w increases the prediction accuracy which in turn reduces the BER.Presented results are helpful to select a practical value for N w .In our setup, a BER below 10 −3 can be achieved when N w ≥ 5.The gap between ANNs reduces and settles to a constant value as N w increases which shows the ANN 1 is able to mitigate the absence of position information to some extent.Hence, ANN 2 is well suited for lower N w values.
V. CONCLUSION In this letter, we have considered channel estimation and performance evaluation of SM aided indoor VLC systems under mobility and receiver orientation.Specifically, two ANNs which use estimated CSI at pilot instances and user position information to obtain CSI with higher resolution have been proposed.Our ANNs are capable of achieving a low BER with reduced amount of pilot symbols as compared to existing solutions.For the considered setup, using our ANN solutions reduces the number of pilots required by 71%.Moreover, the presented ANN solution with user position information is robust against a wide range of user mobility cases and receiver orientations without much performance degradation, hence suitable for VLC applications.