1 Introduction

The measurement of any physical process through different sensors produces mixed signals. These mixed signals are mixtures of the signals related to the underlying physical processes. Examples of such processes are, electrocardiogram (ECG) signals sensed through different electrodes, speech signals recorded through multiple microphones, communication signals received through different antennas. The measured signals in ECG, speech processing, and communication systems are mixtures of different signals. The objective in such systems is to estimate each individual signal from the mixed signals. There are different techniques to un-mix these mixed parallel data streams. The most desirable recovery of data is the blind recovery, which means that the source signals and the medium of transmission are not known. This type of signals recovery is known as blind signal separation or blind source separation (BSS).

Independent component analysis (ICA) is a technique used for BSS of the recorded mixed multi-dimensional data [1]. ICA requires statistically independent and non-Gaussian structure of the source signals. It is an unsupervised and data driven signal processing technique. It is based on maximization of non-Gaussianity to un-mix the recorded mixed data. In the light of central limit theorem, the ICA algorithms assume that the mixed signals are more Gaussian as compared to the non-Gaussian individual source signals. Thus, maximization of non-Gaussianity produces the desired un-mixed source signals. ICA has some indeterminacies caused by the non-linear functions used in the algorithms. These indeterminacies include variations in the order of the output signals, inversion in the phase and variations in amplitude [2].

ICA is widely used in various areas e.g., vibration analysis [3, 4], robotics [5], fault diagnosis [6], biomedical signal processing [7], speech processing [8], and wireless communication [9, 10]. ICA applications in different communication areas e.g., wireless sensor networks (WSNs) [11], Cognitive radio networks (CRNs) [12], multiple input multiple output (MIMO) [9] systems, code division multiple access (CDMA) [13] systems, and orthogonal frequency division multiplexing (OFDM) [14] are discussed in this paper. A summery of ICA applications in wireless communication systems is given in Fig. 1. This figure shows that ICA is mainly used in wireless communication systems for the suppression of inter symbol interference (ISI), cancellation of inter channel interference (ICI) and co-channel interference (CCI), direction of arrival (DOA) estimation, spectrum sensing, multi object detection in WSNs, extraction of signal of interest, automatic modulation classification (AMC), and Jammer suppression in CDMA.

Fig. 1
figure 1

Applications of ICA in different areas of wireless communication systems

The modeling of a mixing process is considered to be one of the essential part of the ICA algorithms and the performance of the algorithm depends on the mixing model used. Different mixing models used in the literature are also surveyed in this paper. Also, the number of source signals in the recorded mixed data must be known to the ICA algorithms in advance. In some cases the source signals may be dynamic. Different techniques for signals number estimation are presented in the literature, are also discussed in this paper.

Most of the ICA algorithms assume static or quasi static channel conditions. In quasi static condition the mixing process remains constant during the processing data block. Efficient ICA algorithms are presented in the literature for fixed and quasi static channel conditions e.g., algebraic ICA [15], ICA for stable distributions [16], complex ICA [2], non-stationary ICA [17], gradient based ICA [18], ant-colony optimization based ICA [19], ICA for mutually correlated sources [20], undetermined ICA [21], Infomax [22], noisy ICA [23], genetic algorithm based ICA [24], over complete ICA [25] etc. However, the practical wireless channels are time varying and noisy. The performance of the existing ICA techniques generally degrades in case of time varying channels. In this paper we also reviewed the ICA applications for time varying scenario.

The challenges and limitation of ICA in wireless communication systems are also presented in this paper. Finally, we present some future research directions regarding ICA applications in wireless communication systems. The main objectives of this paper are given below

  • Review of the mixing models used in the theory of ICA.

  • Review of the signals number estimation techniques in the mixed received signals.

  • Detailed survey of the applications, challenges and limitations of ICA in wireless communication systems.

  • Study of the applications of ICA in dynamic channel conditions.

  • To identify some future research directions in the field of ICA applications regarding wireless communication systems.

The notations used throughout this paper are such that capital bold letters are used for matrices and small bold letters represent vectors. Symbols and abbreviations used in this paper are given in Tables 1 and 2 respectively.

Table 1 List of symbols
Table 2 List of abbreviations

The remaining paper is organized as follows. Section 2 contain a comprehensive overview of ICA. The mixing models used in the theory of ICA and signals number estimation techniques in the mixed received signals are also presented in this section. The ICA applications in wireless communication systems are given in Sect. 3. The time varying applications of ICA are presented in Sect. 4. Section 5 contains the challenges and limitations of ICA in wireless communication systems. Section 6 presents some future research directions in the field of ICA applications in wireless communication systems. Finally, conclusion is given in Sect. 7.

2 Independent Component Analysis

Independent component analysis (ICA) is an unsupervised and data driven technique of blind source separation (BSS). It is unsupervised in the sense that the prior information of the source signals is not required like in other statistical signal processing techniques (e.g., Kalman filter, least mean square filter etc). The term data driven means that ICA algorithm designed for a specific application can be used for different physical processes without changing experimental setups. The basic principle used in the ICA algorithms is, the mixed data from any physical process is more Gaussian as compared to non-Gaussian independent mixing source signals and this maximization of non-Gaussianity produces the desired un-mixed signals. To get insight into the theory of ICA, consider a multi-user multiple input multiple output (MIMO) wireless communication system with \(M_T\) transmit antennas and \(M_R\) receive antennas. For the sake of simplicity it is considered that \(M_T = M_R = M\). The transmitted signals vectors are \({\mathbf s} _1, {\mathbf s} _2,\ldots ,{\mathbf s} _M\), where \({\mathbf s} _m=[s_{m1}, s_{m2},\ldots ,s_{mL}]\) and the received mixed signals are \({\mathbf x} _1, {\mathbf x} _2,\ldots ,{\mathbf x} _M\). The system model is shown in Fig. 2. We represent the ICA post process reconstructed signals by \({\mathbf y} _1, {\mathbf y} _2, \ldots ,{\mathbf y} _M\). The ICA algorithms un-mix the received mixed signals in order to find the actual transmitted signals. The received mixed signals can be modeled as follows where \({\mathbf X} \) is \(M \times L\) mixed data matrix, \({\mathbf A} \) is \(M \times M\) mixing matrix and \({\mathbf S} \) is \(M \times L\) matrix, which contains the independent source signals. Equation (1) represents the noise free model of ICA. The noisy ICA model can be represented as

$${\mathbf X} ={\mathbf A} {\mathbf S} +{\mathbf N} $$
(1)

where, \({\mathbf N} \) is \(M \times L\) matrix, which represents the additive white Gaussian noise. The addition of noise also degrades the performance of the algorithms to separate the mix source signals. In Fig. 2, the number of transmit antennas is equal to the number of receive antennas, thus inverse of the mixing matrix \({\mathbf A} \) exists. The inverse of the mixing matrix is known as the un-mixing matrix and denoted by \({\mathbf W} \). The role of the ICA algorithms is to estimate the un-mixing matrix. After estimating the un-mixing matrix the desired output signals can be modeled as follows

$${\mathbf Y} ={\mathbf W} {\mathbf X}$$
(2)

Once the un-mixing matrix \({\mathbf W} \) is determined, then, the individual component signals can be separated from the mixed signals by using Eq. (2). Accuracy of the ICA algorithms depends on proper estimation of the un-mixing matrix. The development of ICA algorithms involve the following steps,

  • Assuming a mixing model

  • Selecting a criterion for maximization of non-Gaussianity

  • Update rule/optimization method

The assumptions used in the theory of ICA are given below,

  • The source signals \({\mathbf s} _m\) are mutually statistically independent. If different signals are related to different sources then the independence assumption becomes valid.

  • The source signals \({\mathbf s} _m\) have non-Gaussian distributions. The non-Gaussian structure of the signals is also practical, because most of the signals from different physical processes have non-Gaussian distribution.

  • The mixing matrix \({\mathbf A} \) is assumed to be square. This assumption is used in ICA literature for the sake of simplicity. If mixing matrix \({\mathbf A} \) is square then estimation of un-mixing matrix \({\mathbf W} \) becomes easy. This condition assumes that the number of underlying component signals \({\mathbf s} _m\) and mixture signals \({\mathbf x} _m\) are equal.

The square mixing matrix provides the number of equations equal to the number of variables. These variables are the mixing coefficients, thus solution becomes easy. In case, if number of the observed mixed signals is less than the number of underlying component signals then the mixing matrix will not be square, and estimation of un-mixing matrix in Eq. (3) will become difficult and writing Eq. (3) directly from Eq. (1) will not be possible. This type of ICA model is known as under-complete or under-determined ICA [25]. If the number of sensors are greater than the underlying component signals then it is called over-complete or over-determined ICA [25].

Fig. 2
figure 2

System model for ICA signal processing

In case, if the mixing matrix is not constant within the processing data block and changes dynamically with time, then the ICA model is called dynamic ICA. In the dynamic mixing matrix the coefficients \(a_{ij}\), where \(i=1,2, \ldots ,M\), and \(j=1,2,\ldots , M\), are time varying and are subject to change at each instant within the processing block. The dynamic ICA also addresses the problem of dynamic number of mixing signals.

There are some indeterminacies in the ICA processed signals, like

  • Order of the ICA post processed signals changes every time.

  • Phase and amplitude of the ICA post processed signals also changes every time.

2.1 Measures of Non-Gaussianity

The basic principle used in ICA separation is maximization of non-Gassianity. The different measures of non-Gaussianity are kurtosis and entropy. Kurtosis is a fourth order moment and can be used for the measurement of non-Gaussianity. Kurtosis of a random variable \(q\) can be written as follows

$$kurt(q)=E(q^4)-3{E(q^2)}^2 $$
(3)

Let the variance of the random variable is unity, then the above equation will become

$$ kurt(q)=E(q^4)-3 $$
(4)

Gaussian random variable has zero kurtosis; it is positive for supper-GaussianFootnote 1 and negative for sub-GaussianFootnote 2 random variables. Kurtosis is sensitive to outliers and in case of super-Gaussian signals the performance of the kurtosis is not good even without outliers and in most of the cases, the signals encountered are super-Gaussian. Hence, kurtosis is not a good measure of non-Gaussianity.

Entropy is the measure of information in the data obtained from a random variable. It can be defined by the following equation

$$ I(q)=\ln \frac{1}{pr[q]}=-\ln (pr[q]) $$
(5)

A Gaussian random variable has largest entropy amongst all the random variables. The concept of negentropyFootnote 3 is introduced to make entropy of Gaussian variable zero and that of others non zero . Negentropy can be defined as

$$J(q)=I(q_{gauss})-I(q)$$
(6)

where \(q_{gauss}\) is a Gaussian random variable of the same covariance as of random variable \(q\). Negentropy is always positive and it is zero for Gaussian random variable. In the next two subsections we shortly discussed the ICA mixing models, and the source number estimation in the mixed received signals.

Fig. 3
figure 3

ICA mixing models

2.2 Mixing Models of ICA

The selection of an approximate mixing model is an important part of the ICA algorithms. The accuracy of the results depends on the mixing model used in the development of the algorithm. A mixing model which is close to the practical mixing will produce better results. Mixing phenomena may be different in different systems e.g., in communication, speech processing, and biomedical etc. Different mixing models of ICA addressed in literature are given below and some important models are listed in Fig. 3.

  1. 1.

    Constant mixing matrix is the one used for all the blocks during the process without any change. This is an ideal mixing model for ICA [8].

  2. 2.

    Mixing matrix which remains constant during a processing block and changes from block to block. This type of ICA is known as quasi stationary ICA [26].

  3. 3.

    Ill-conditioned mixing: Ill-conditioned mixing [27, 28] occurs due to, nonlinear transfer characteristics of the sensors or due to the effects of reflections and interfering signals.

  4. 4.

    Instantaneous mixing: This type of mixing assumes that the mixing is instantaneous in time [8].

  5. 5.

    Convolutive mixing: This type of mixing assumes that the mixing is convolutive in time. The convolutive mixing is normally analyzed in frequency domain. Frequency domain converts the convolutive model into instantaneous model [29].

  6. 6.

    Time varying mixing during a single processing block [30]. The variations may be linear, non-linear, and slow or fast.

  7. 7.

    Nonlinear mixing: Nonlinear mixing represents a mixing model where non-linear effect occur during the mixing process [31].

  8. 8.

    Under-complete mixing: In case, if number of the observed mixed signals is less than the number of underlying component signals then the mixing matrix will not be square, this type of ICA model is known as under-complete or under-determined ICA [25].

  9. 9.

    Over-complete mixing: If the number of sensors are greater than the underlying component signals then it is called over-complete or over-determined ICA [25].

2.3 Estimating the Number of Signals in the Mixture Signals

The number of source signals in the mixed received signals must be known to the ICA algorithm before un-mixing. In some cases the number of source signals is not known or dynamic, therefore, this estimation is necessary for ICA algorithms to get the underlying component signals from the mixture signals. The signals number estimation techniques are surveyed in the following paragraphs.

A signals number estimation technique is proposed in [28]. This technique works well in case of high level additive noise and outliers. This technique also performs well in case of supper and sub Gaussian source signals. The authors in [32] developed a modified geometric approach for undetermined ICA. This is a two step approach, the sources number estimation and the mixing matrix estimation. The authors in [33] presented a source number estimation technique for acoustic signals in frequency domain. They consider convolutive mixing in reverberant and noisy environment. In [34] the authors proposed a technique which is based on the following three steps, (1) calculate the covariance matrix of the observed signals, (2) perform singular value decomposition, (3) finally, select the signals having variances greater than a certain threshold and neglect others. The source number estimation in case of unknown and dynamic number of signals is addressed in [35] for over-determined ICA. Real time tracking is achieved in this paper using subspace method. ICA based fault diagnosis and machinery condition monitoring is studied in [36]. The source number estimation in this scenario is a challenging work due to nonlinear mixing and complex structures of the signals. The authors developed a source number estimation technique which is based on ICA and clustering evaluation analysis. A wavelet based approach for signals number estimation is developed in [37] for undetermined ICA. The source number estimation and un-mixing of the communication BPSK signals using Fuzzy clustering based technique is studied in [38], where the signals number estimation is studied in noise free and noisy conditions. In general, most of the techniques presented in the literature for signals number estimation consider static or quasi static channels conditions.

3 The ICA Applications in Wireless Communication Systems

In wireless communication systems ICA is mainly used for the suppression of inter symbol interference (ISI), cancellation of inter channel interference (ICI), direction of arrival estimation, automatic classification of modulation, and spectrum sensing in cognitive radio networks. A number of research articles explored the ICA applications in various communication areas e.g., wireless sensor networks (WSNs), Cognitive radio networks (CRNs), multiple input multiple output (MIMO) systems, code division multiple access (CDMA), orthogonal frequency division multiplexing (OFDM) and single input multiple output (SIMO) systems. These applications are surveyed in the next two subsections.

The Sect. 3.1 contain the ICA applications in WSNs, CRNs, and CRSNs. A very limited work has been done on WSNs due the random nature of the events in the sensor field. The random number of events and the random length of the events make it more challenging for ICA to blindly process the mixed data. ICA provided efficient solutions to different challenging situations of spectrum sensing and communication in CRNs, which are discussed in Sect. 3.1. Finally we discussed the ICA applications in CRSNs in this subsection. We present the ICA applications in CDMA and next generation networks e.g., MIMO, and MIMO-OFDM in Sect. 3.2. We support our discussion with the help of appropriate figure and tables.

Fig. 4
figure 4

Review of ICA applications in different communication systems

3.1 ICA Applications in Wireless Sensor Networks, Cognitive Radio Networks and Cognitive Radio Sensor Networks

3.1.1 ICA in Wireless Sensor Networks

Wireless sensors networks (WSNs) are used for the monitoring of physical phenomenon. It has a large number of sensor nodes in the field to sense a phenomena and transmit the recorded data through wireless channels. A sensor node consists of sensor, communication system, storage and processing units. The sensor observes physical process and the other parts of the system pre-process the data and transmit it for onward processing.

In [11], an ICA based approach is presented for the first time to track multiple targets in the field of WSNs. Most of the previous research concentrate on the tracking of individual targets at one time and consider that there is only one target present in a field at a time and they also assume that the signals coming from different targets having no interference caused by signals from other targets. The ICA technique in this scenario can un-mix the mixture signals collected from different sensors. The tracking of multiple targets is estimated by correlating individual signals recovered from various sensors. The authors used both the temporal and spatial information to improve the tracking performance. This technique is feasible for real world applications in case where targets are indistinguishable and the interference effect is also considered.

There are some challenging situations in the field of WSNs where ICA can be used, we discussed them in future research directions. The ICA applications in CRNs and CRSNs are presented in the following sub section.

3.1.2 ICA in Cognitive Radio Networks and Cognitive Radio Sensor Networks

The rapid growth of wireless applications in the last two decades also increased the demand for more radio spectrum. The available spectrum bands allocated to different applications do not remain busy all the time. These allocated bands are not utilized all the time. To increase the throughput by utilizing the spectrum during idle time, new radio technology called cognitive radio networks (CRNs) was introduced.

In [39] the idea of CRN is applied to the smart grid. In this research work system architecture, required algorithms, and hardware test bed are studied in detail. The authors also proposed a micro grid test bed, which can support both the power and information flow. ICA in combination with principal component analysis is applied to collect the data from various smart meters. These meters transmit data wirelessly in the presence of strong interference. The independent component analysis model eliminates the need for estimating the parameters of the channel in each data block.

The conventional spectrum sensing techniques are unable to sense the spectrum while the cognitive transmitter is active and the conventional algorithms are unable to distinguish between the primary and the secondary signals. ICA is currently recommended for efficient solution of spectrum sensing in CRNs. In [40] the authors proposed a method, which combines the ICA based spectrum sensing and the primary user activity prediction, and is based on variable order Markov model. In this framework, first the spectrum is sensed to know the status of the primary user and if the primary user is not transmitting, then the secondary user is allowed to communicate. In [41] fast-ICA algorithm is used to un-mix the received mixed signals and then Kurtosis metric is used to predict the status of the primary user. In [42], a new technique for spectrum sensing is developed by combining the ICA based spectrum sensing with the covariance based spectrum sensing technique. The authors in [12], proposed an ICA based spectrum sensing technique, which can operate while the secondary transmitter is active and no synchronization is required with the primary user. In [43], ICA is used to un-mix the recorded mixed signals in various frequency bands with improved performance in multi frequency spectrum sensing. The authors in [44] proposed an algorithm which locates the position of the primary users using the ICA technique.

The conventional algorithms are unable to sense the spectrum if the cognitive transmitter is active and fail to distinguish between the signals from primary and the secondary users. ICA has been used for spectrum sensing in different challenging situations of the CRNs including the situation when the cognitive transmitter is active.

The main advantage of the CRNs is to improve the spectrum utilization and communication quality. These characteristics match the requirements and environment of resource constrained WSNs. The dynamic spectrum access (DSA) provides efficient spectrum utilization for WSNs due to its event driven communication nature. Both the CRNs and WSNs merge in the new area of sensor networks, called cognitive radio sensor networks (CRSN). However in the literature we did not found any paper on the applications of ICA in CRSNs. We mention some future research directions in this field in Sect. 6. We discussed the ICA applications in MIMO, MIMO-OFDM and CDMA in the next subsection.

3.2 ICA Applications in CDMA, MIMO, and MIMO-OFDM Systems

ICA is widely studied for communication systems like CDMA, MIMO, and OFDM. CDMA is a channel access method used by various radio communication technologies, where several transmitters can send information simultaneously over a single communication channel. In MIMO the information is transmitted using two or more antennas and is received using multiple antennas, thus making it an ideal candidate for the ICA. The OFDM modulates digital data on multiple frequencies.

3.2.1 ICA in CDMA Systems

Performance of the ICA algorithms degrades with the decrease in size of data block. The un-mixing of mixed short messages in multi-user system is studied in [45], and an improvement is shown by appending a binary tail before each message. In [10], an ICA based multiple access interference (MAI) suppression technique is presented for CDMA system. This technique is called code constrained ICA (CC-ICA), which is based on the concepts of subspace for the detection of multi-users. The spreading code of each user is used to overcome the order indeterminacy in ICA algorithm. An ICA based technique for DS-CDMA is proposed in [46]. This technique avoids the need for subspace analysis used in [10]. The fast-ICA algorithm is used for Jammer suppression in direct sequence spread spectrum communication system in [47]. The authors showed that for weak Jammer signals the performance of ICA algorithm degrades.

3.2.2 ICA in MIMO and MIMO-OFDM Systems

An optimum block adaptive ICA (OBAICA) algorithm is proposed in [48], for MIMO system to blindly separate the received mixed signals in time varying mixing scenario. The performance of OBAICA is compared with the Fast-ICA algorithm for fixed and time varying scenarios. It is shown in this paper that OBAICA performs well in time varying scenario. The objective function used in the development of the algorithm is fourth order moment i.e., kurtosis. The Pre-processing steps are same as for Fast-ICA algorithm. The authors in [49] presented an ICA based inter-symbol and inter-source interference cancelation technique for MIMO systems.

The authors in [9], proposed an ICA based technique for frequency selective MIMO-OFDM mobile application, where the mixing is complex and frequency domain ICA is used for separation of the mixed received signals. A MIMO-OFDM based communication system is presented in [14] to improve the bandwidth utilization without considering the spatial coding. An ICA based blind OFDM receiver for MIMO system is proposed in [50]. This receiver has low complexity and enhanced performance for large sub-carriers.

The effect of Doppler spread in communication signals is studied in [51] while using blind source separation. A realistic mixing model is proposed, which shows the effect of Doppler spread over mixing signals. A coding based BSS technique is proposed in [52] and it is shown in this paper that the coded assisted BSS is more efficient as compared to un-coded BSS. A semi-blind wireless communication receiver structure is proposed in [53], where a minimum number of pilots are attached with transmitted source symbol to overcome phase and permutation problems in the ICA post processed data. The small number of pilots achieve good bit-error-rate performance and has low computational complexity. A new framework for the constrained ICA (cICA) is developed in [54], for communication signals. It is based on cyclo-stationarity and spatial constraints. An improved complex valued ICA technique for beam forming is presented in [55], which has better convergence characteristics. Separation performance of different ICA algorithms for communication signals is evaluated in [56].

The ICA applications regarding automatic modulation classification and equalization in MIMO and MIMO-OFDM systems are given as follows. Modulation classification means to determine the modulation type of the unknown received communication signals. Recognition of the unknown modulated signals has applications in cognitive radio, spectrum surveillance, signals intelligence and etc. The modulation classification of MIMO systems is a challenging task due to the interference between received signals. An ICA based automatic modulation classification technique using fourth order cumulants is proposed in [57]. An ICA based modulation classification technique in combination with maximum likelihood and support vector machine for MIMO-OFDM system over time varying and frequency selective channel is presented in [58]. The modulation classification techniques are divided into two categories, the likelihood based modulation classification and feature based modulation classification. The likelihood based methods are computationally complex, while feature based methods are computationally efficient. In [59], a feature based automatic modulation classification technique in combination with ICA for MIMO systems is developed. In general the BPSK, QPSK and QAM modulated signals are considered in the above discussed papers.

The ICA technique is used for equalization in multi-user digital communication system in [60]. In [61] ICA is used for wide band multi-channel equalization. The complex ICA algorithm for semi-blind equalization in MIMO system is presented in [62]. The authors in [63] developed an ICA based technique for equalization of 4-QAM digital receiver. In [64], a semi-blind ICA based steepest descent technique is developed for equalization. A novel semi-blind layered space frequency equalization technique is proposed for single carrier MIMO systems in [65]. ICA based equalization for large constellation MIMO systems is presented in [66]. A blind equalization for MIMO-OFDM systems is proposed in [67], which is based on ICA. The ISI is avoided by insertion of cyclic prefix before each OFDM symbol. A linear pre-coding is used to overcome the order ambiguity of ICA. The ICA-JADE algorithm is used to suppress the co-channel and inter-user interference. An ICA based channel estimation for MIMO-OFDM in combination with kernel recursive least square is presented in [68]. It is shown through simulation that this technique is superior to subspace and virtual carrier methods. The Fast-ICA algorithm is used for equalization of the under-water acoustic MIMO-OFDM systems in [29]. The ICA JADE (joint approximate diagonalization of Eigen matrices) algorithm is used for equalization of 4-QAM signals in block transmission communication system in [69]. A MIMO-OFDM structure, based on ICA and pre-coding is developed in [70]. The phase and permutation ambiguities are resolved through linear non-redundant pre-coding. The pre-coding is selected such that a good bit-error-rate (BER) performance is maintained. Maximum likelihood based expectation maximization technique for blind equalization is developed for SIMO systems in [71]. In [72], a new recursive technique for blind adaptive equalization of FIR/IIR MIMO is proposed. Complex BSS in combination with coarse quantize is used for equalization in [73].

ICA applications have been explored in various areas of wireless communication systems. These applications are summarized in Fig. 4, that gives a global picture of the research articles in different areas of communication technologies. Table 3 summarizes some references on the applications of ICA in wireless communication systems. A global overview of some key references is presented in Table 4 that allows the reader to understand the various aspects of different technologies in wireless communication systems using ICA. The density of publications in different areas of wireless communication is given in Fig. 5. This figure shows that most of the work has been done on MIMO systems. A limited work has been done on SIMO systems. Considerable work explored the ICA applications in CDMA and CRNs.

Table 3 Summery of literature on the applications of ICA in wireless communication systems
Table 4 A global overview of some key references on the applications of ICA in different wireless communication technologies

The key findings from the above discussion are summarized below

  • ICA is widely used in MIMO systems.

  • ICA is recently used for modulation classification in MIMO and MIMO-OFDM systems.

  • A limited work has done on time varying wireless channels using ICA.

  • ICA based MIMO-OFDM system is an emerging area of research.

  • Most of the existing literature consider fixed or quasi static channel condition during a single processing data block.

  • It is revealed that ICA is a good statistical tool for BSS and equalization for MIMO systems.

  • Generally, most of the ICA applications in wireless communication assumed high SNR.

  • New algorithms with enhanced performance needs to be developed in time varying wireless scenario.

Fig. 5
figure 5

Research papers regarding ICA applications in different areas of wireless communication systems

4 ICA for Time Varying Channels

As most of the existing work consider static or quasi static channel conditions. BSS in case of time varying mixing is a challenging work for ICA. In this section we surveyed the applications of ICA in different areas for time varying mixing.

The fast-ICA algorithm is extensively used in different applications due to its fast convergence and low computational complexity. This algorithm also avoids selection of the step size parameter. It takes a block of data and processes it. In case of time varying mixing its performance degrades. For reduced length of the processing block, the expectation operator used in the update rule of fast-ICA fails to produce correct results. To overcome this problem, a gradient based ICA algorithm is presented in [48] for time varying communication channel. This algorithm is based on optimal block adaptation, which updates the learning rate for each sample in the separation matrix and updates all the rates in each block iteration. The computational complexity of this algorithm is equal to the fast-ICA algorithm. In case of time varying mixing, the convergence of the proposed algorithm is better as compared to fast-ICA. In [74], a BSS technique called adaptive AMMA algorithm is developed for time varying MIMO channels. This algorithm can perform equalization and carrier phase recovery simultaneously in case of time varying MIMO channels.

In [75], the equivariant source identification algorithm is used for BSS of time varying signals. This is a stochastic gradient algorithm e.g., least mean square algorithm. This algorithm has high computational complexity and slow convergence. An extension of joint approximation diagonalization of Eigen matrices (JADE) algorithm is presented in [76], for moving targets in the field. This technique is named differential joint diagonalization and based on time delayed correlations for time varying mixing. A blind source extraction technique for sequential extraction of quasi periodic signals with time varying period is presented in [26]. This algorithm is based on second order statistics of the signal. In [77], frequency domain ICA (FDICA) is used for the separation of speech signals, where the sources of speech signals are moving in a room. In the first step, un-mixing is performed by using ICA and in the second step post-processing is performed using non stationary spectral subtraction and crosstalk component estimation. The authors in [78] used ICA for time varying mixing scenario. They used piecewise linearly varying mixing matrix in time domain.

In practical scenario the statistical characteristics and the number of source signals may change with time. These two issues are addressed in [79], for blind source separation of the mixed speech signals. A process monitoring scheme with dynamic ICA is presented in [80]. This scheme considers the process dynamics during the ICA processing. In [35], the sources number estimation and tracking technique is presented using subspace method for over determined BSS with dynamic and unknown sources. A multimodal technique to BSS of speech signals for moving sources is presented in [81]. The BSS of linear instantaneous mixtures with cyclostationary signals is presented in [82]. In [83], the challenging problem of BSS with time/position varying mixture is studied. The authors developed a staged sparse component analysis algorithm to handle this challenging situation. In [30], the authors proposed a local change point technique to identify the point of change and then perform BSS accordingly to financial data. BSS of non-stationary and temporally correlated signals is investigated in [84] using Gaussian process approach. The authors considered that the mixing matrix is time varying and any source signal may be active at one time and inactive at other time or may be replaced by a new signal. In [85], BSS of acoustic signals with rapidly time varying mixing is discussed. A modified kernel ICA for time varying process monitoring is developed in [1]. The applications of ICA in time varying scenario are summarized in Table 5.

The above discussion can be summarized as follows; ICA is an efficient statistical tool used for blind separation of the mixed received signals where the channel state information is not required. ICA is not well explored for time varying wireless communication channels in time varying scenario. The BSS algorithms developed for other application i.e., acoustic signals, process monitoring, and financial data for time varying mixing scenario can be adopted for time varying wireless channels.

Table 5 Applications of ICA in time varying channels

5 Challenges and Limitations of ICA in Wireless Communication Systems

The limitations and challenges of ICA in wireless communication systems are summarized as follows

5.1 Limitations

  • Mixing matrix should be square i.e., number of source signals and sensors must be same. In case of non-square mixing matrix the estimation of un-mixing matrix become difficult.

  • Mixing signals should be non-Gaussian, because ICA is unable to un-mix the mixed gaussian source signals. In case if one of the source signals is Gaussian then ICA can process it, but more than one Gaussian signals separation is difficult for ICA.

  • Number of mixing signals should be known to the ICA algorithm. In case if the source signals are dynamic or unknown then signals number estimation is required for ICA algorithm. The situation becomes more challenging if one or more sensors become faulty.

  • Channel is assumed fixed during a single processing data block. The variations in the channel may be linear or non-linear, slow or fast. The fast and abrupt variations limit the ICA applications in wireless communication systems.

  • Multidimensional data is required for ICA signal processing.

  • The resultant reconstructed signals have order, phase and amplitude indeterminacies.

5.2 Challenges

  • Separation of smaller data block lengths: In general performance of most of the ICA algorithms degrades as data block length decreases. Data block length should be large enough for proper estimation of the statistical properties like expectation, and variance etc.

  • Separation of randomly occurring events: Number of the mixing signals must be known to the ICA algorithm to unmix the received mixed data. This problem becomes serious in case of WSNs, because the events may be random or appear for a very short time, that make the un-mixing as a challenging problem.

  • Separation of source signals in abrupt and fast varying mixing scenario: The ideal ICA model assumes static or quasi static channel conditions. In case of time varying channels un-mixing becomes difficult while in case of abrupt and large variations this problem becomes more complex.

  • Separation of signals with different block lengths: The ICA model assumes multidimensional data with equal length vectors. In case if any of the vectors have different length then the un-mixing problem becomes difficult.

6 Future Research Directions

In this section we identify some future research directions in the field of ICA regarding wireless communication systems which are elaborated as follows

6.1 Blind Source Separation in Time Varying Scenario

The wireless channels are time varying and noisy in practical scenarios while most of the existing ICA algorithms assume static or quasi static wireless channels. There are different types of channel variations regarding ICA which are given below:

  1. 1.

    Slowly varying channel

  2. 2.

    Fast variations in the channel

  3. 3.

    Abrupt changes in the channel

  4. 4.

    Linearly time varying channel

  5. 5.

    Non-linearly time varying channel

  6. 6.

    Quasi static channel

  7. 7.

    Variations within the processing data block

Different ICA algorithms are presented in the literature for static or quasi static channel conditions [2, 1525]. The performance of the existing techniques is good for static channel conditions while in case of dynamic channel conditions their performance degrades [48]. A generalized framework can be developed to extend the existing ICA algorithms for time varying wireless channels.

Limited work has been done on time varying wireless channels using ICA. The existing techniques have considered either small variations in the channel or these techniques can perform well for one type of modulation and may not be adaptable for other modulation types [48, 75, 77, 78]. One can develop algorithms to efficiently handle large variations in the channel and these algorithms may be compatible with different modulation types.

The ICA algorithms developed for different applications e.g., acoustic signals, process monitoring, and financial data for time varying mixing can be adapted for time varying wireless channels. Generally, most of the ICA techniques in wireless communication systems assumed high SNR, therefore new algorithms can be developed to perform well in case of low SNR, is another area for future research .

ICA based Jammer suppression technique in direct sequence spread spectrum communication system is presented in [47]. The authors showed that for weak Jammer signals the performance of the proposed algorithm degrades. A modified technique can be developed to perform well in case of weak Jammer signals in direct sequence spread spectrum communication system.

6.2 Modeling of Mixing Process in ICA

The modeling of mixing process is an essential part of the ICA algorithm. The accuracy of the results produced by the algorithm is also depends on the mixing model used in the development of the algorithm. Different mixing models are presented in the literature e.g., linear, non-linear, instantaneous, convolutive, and time varying [8, 2628, 30, 31] etc. The source signals and the mixture signals are analog in nature. An analog mixing model can be developed to analyze the performance of the ICA algorithms over different practical mixing conditions. This model will be a hardware design composed of analog components like operational amplifier, transistor, diode and resistor. This model will serve as a test-bench for evaluating the performance of the ICA algorithm.

Mixing phenomena may be different in different systems like in communication, speech processing, biomedical signal processing etc. The mixed received signals in different systems can be explored for designing new mixing models. Development of these models may improve the performance of the ICA algorithms in different applications.

6.3 Automatic Modulation Classification

ICA is recently used for automatic modulation classification (AMC) in MIMO and MIMO-OFDM systems. The AMC for these systems is a challenging work and is yet not well explored in the literature [58]. The AMC can be studied in time varying scenario and for smaller lengths of the processing data blocks . The AMC can also be performed for analog modulation schemes like frequency modulation, amplitude modulation and phase modulation. It can also be studied in different channel conditions i.e., ill-conditioned mixing, low SNR, highly time varying scenario and etc.

6.4 Separation of Smaller Data Block Lengths

In general, performance of the ICA algorithms degrade as data block lengths become smaller. The data block length should be large enough to give us proper estimate of the statistical parameters like variance, expectation etc. As a future work, new algorithms can be developed to process the smaller data blocks with acceptable performance for fixed as will as time varying scenario.

The existing work [45] for smaller block lengths inserts extra bits in the transmitted data blocks that increases the data block lengths at the transmitter side and remove them after processing through ICA algorithm at receiver side . Insertion of the extra bits in the transmitted data blocks decrease the bandwidth efficiency and increase the transmission power. Hence, new algorithms can be developed for smaller lengths of the processing data blocks that perform well regarding power and bandwidth efficiency.

6.5 Signals Number Estimation in Dynamic Channel Conditions

The signals number estimation in the mixed received signals is an essential requirement of the ICA algorithms, in case if the number of mixing signals is not known. Most of the proposed techniques [3538] for signals number estimation in the mixed received signals assumed fixed or quasi static channels. Hence, new techniques can be developed to perform the signals number estimation in dynamic channel conditions. Also, the effect of different modulation techniques over signals number estimation can be studied in dynamic as well as static channels conditions.

6.6 ICA in Cognitive Radio Sensor Networks

ICA has been used in CRNs for spectrum sensing and WSNs for signals number estimation and un-mixing of the mixed received signals. ICA is also used for interference suppression in different communication systems. Thus, ICA based interference suppression, spectrum sensing, signals number estimation and data separation techniques can be combined in a single framework for cognitive radio sensor networks CRSNs. For example the work proposed in [39] for CRNS, and that in [11] for WSNs can be combined in a single framework to perform spectrum sensing and tracking multiple targets in the field of WSNs.

7 Conclusion

In this paper, we presented a comprehensive survey of the applications of independent component analysis (ICA) in wireless communication systems. The applications of ICA in wireless communication systems include multiple input multiple output (MIMO), wireless sensor networks (WSNs), cognitive radio networks (CRNs), code division multiple access (CDMA), and orthogonal frequency division multiplexing (OFDM) systems. In wireless communication ICA is mainly used for inter symbol interference (ISI)suppression, inter channel interference (ICI)cancelation, direction of arrival (DOA) estimation, automatic modulation classification (AMC), and spectrum sensing etc. The MIMO-OFDM is an open ares of research and yet not explored well in the field of ICA for different mixing scenarios. Cognitive radio sensor networks (CRSNs) is another area, where ICA can be used for spectrum sensing and multiple targets tracking. We also surveyed the mixing models used in the theory of ICA, signals number estimation in the mixed received signals, and blind source separation in time varying scenario. The area of time varying scenario for wireless communication systems is not well studied and needs to be explored well. New efficient algorithms should be designed to perform well for time varying scenario. The challenges and limitations of ICA regarding wireless communication systems are also presented. Finally, some future research directions in the field of ICA applications in wireless communication systems are identified.