Skip to content


Open Access

Spectrum sensing using low-complexity principal components for cognitive radios

EURASIP Journal on Wireless Communications and Networking20152015:184

Received: 31 October 2014

Accepted: 13 May 2015

Published: 26 June 2015


Principal component (PC) algorithm has recently been shown as a very accurate blind detection technique in comparison with other covariance-based detection algorithms. However, it also has a higher complexity owing to the computation of the eigenvectors. We propose a low-complexity Lanczos principal component (LPC) algorithm that utilizes Lanczos iterative method to compute the eigenvectors. In comparison with the PC algorithm, the proposed LPC algorithm offers significant reduction in complexity while giving a similar detection performance. Low-complexity LPC algorithm allows for the use of larger sized covariance matrix that further improves the detection performance. Maximum-minimum eigenvalue (MME) algorithm is also included in the comparison and it gives an inferior performance as compared to both PC and LPC algorithm. All the algorithms were tested with experimental data while using universal software radio peripheral (USRP) testbed that was controlled by GNU radio software.


Spectrum sensingCognitive radioCovariance-based detectionSoftware defined radio

1 Introduction

Cognitive radio has the ability to communicate over the unused frequency spectrum intelligently and adaptively. Spectrum sensing in a cognitive radio (CR) is crucial in generating awareness about the radio environment [1]. Blind detection methods such as covariance-based detection (CBD) algorithms enable signal detection in low signal-to-noise ratio (SNR) conditions without relying on the prior knowledge of the primary user’s (PU) signal. CBD techniques also overcome the issue of noise power uncertainty that exists in an energy detector [2, 3]. These methods use the covariance and variances of the received signal and do not require information about the noise variance. The performance of the CBD algorithms is associated with the number of samples involved in the detection. However, using a large number of samples also increases the sensing time and complexity [48]. Recently, principal component analysis (PCA) has been applied for spectrum sensing in cognitive radios [911]. The principal of dimension reduction has been used in [12] to devise PC algorithm that outperforms other CBD algorithms, such as Maximum-minimum eigenvalue (MME), maximum eigenvalue detection (MED), and energy with maximum eigenvalue (EME). PCA reduces the dimensionality of the data and retains the most significant components that account for the greatest variation of the original data [1316]. However, the PC algorithm also has the highest complexity in comparison with other CBD techniques.

As envisaged in internet of things (IoT), the number of things (or devices) connected to the network might exceed the number of human users. The same idea also derives the research on 5G networks where the network capacity will be enhanced by a 1000 fold. Opportunistic spectrum access may help in this scenario where multiple overlaid devices try to access the spectrum. Spectrum sensing can help eradicate collisions and excessive contention delay experienced by dense node deployment. Such devices/sensors have embedded computing nature, hence energy efficiency is their major concern. Therefore, low complexity, energy efficient spectrum sensing algorithms are vital for implementation in such devices.

In this paper, we firstly analyse the performance of the PC algorithm while considering the effect of dimension reduction on the detection performance and the related complexity. Next we describe the proposed Lanczos principal component (LPC) algorithm, which is an energy efficient version of the PC algorithm. The LPC can be used in low powered devices (e.g. sensors employed in IoT) for blind signal detection. The performance of LPC is compared with PC as well as MME algorithms. MME has been included in the comparison as it is the best-known CBD technique. All the algorithms were tested with actual wireless microphone signals using a universal software radio peripheral (USRP)2 testbed and GNU radio software. The specific contributions of this paper are as follows.
  • The detection performance of the PC algorithm is analysed under a low SNR (<−15 dB) scenario while varying the number of principal components included in the decision test statistic. The effect of dimension reduction on the sensing performance is also considered along with the complexity involved in each case.

  • A low-complexity LPC algorithm is proposed that employs an iterative approach to compute the principal components and achieves the similar detection performance as of the PC algorithm with a reduced complexity. This reduction in complexity saves the sensing time and improves the energy efficiency.

  • The performance of the proposed LPC algorithm is compared with the PC and the MME algorithms while using the actual signals. In addition, computational complexity of all the three algorithms (MME, PC and LPC) is also computed and compared mathematically and graphically.

  • All the algorithms has been evaluated under both single and multiple receive antenna system with actual wireless microphone signals. Experimental setup is established using USRP2 and GNU radio software.

2 System model, detection with MME and PCA

2.1 System model

We have considered both a single and a multiple receive antenna system. f s is the signal’s sampling rate and f s >>w, here w is the received signal’s bandwidth. The signal is over-sampled to get a high correlation between the samples. Let T s =1/f s be the sampling period. We define \({y(n)\triangleq y({nT}_{s})}\), \({s(n)\triangleq s({nT}_{s})}\) and \({w(n)\triangleq w(nT_{s})}\), where y(n) is the received signal after passing through the channel, s(n) is the PU’s signal and w(n) is the additive white Gaussian noise (AWGN). w(n) follows a normal distribution \({w(n)\sim \mathcal {N}(0,1)}\). Complex baseband samples from a single receive antenna system can be represented as
$$ \textbf{y}(n) =\left[y_{1}(n),y_{1}(n-1),\cdot \cdot \cdot,y_{1}(n-N+1)\right]. $$
Where N is the total number of samples used in making a single decision about the signal’s presence under both hypotheses. For a multiple receive antenna system with M radio frequency (RF) front ends, the complex base band samples are represented as
$$ \begin{aligned} \textbf{y}(n)=\left[y_{1}(n),\cdot\cdot\cdot,y_{M}(n),y_{1}(n-1)\cdot\cdot\cdot,y_{M}(n-1),\right.\\ \left. y_{1}(n-N/M+1)\cdot\cdot\cdot,y_{M}(n-N/M+1)\right]. \end{aligned} $$
Spectrum sensing can be expressed as
$$ y(n)=\left\{ \begin{array}{ll} w(n):\qquad\qquad\qquad H_{0} \\ s(n)+w(n):\qquad \quad H_{1}, \\ \end{array}\right. $$

Where H 0 is the null hypothesis that shows the absence of the PU’s signal. H 1 is the alternative hypothesis which indicates the presence of the signal. Probability of detection (P d ) and probability of false alarm (P fa ) characterizes the sensing performance. Where P d =Pr(H 1|H 1) and P fa =Pr(H 1|H 0).

2.2 MME

MME algorithm calculates the eigenvalues (λ) and finds the ratio of maximum to minimum eigenvalue [7].
$$ \lambda_{\text{max}} / \lambda_{\text{min}}> \psi $$

PU’s signal exists if the ratio is greater than ψ, where ψ is the threshold set according to desired probability of false alarm. MME is a blind detection algorithm without noise uncertainty issue, but calculation of eigenvalues using conventional method is computationally intensive.

2.3 PC Algorithm

Considering L consecutive outputs where L is the smoothing factor and N samples are involved in making a detection decision. Data set consists of baseband samples that are complex, and follow a normal distribution. k=2M dimensional data set in the matrix form is
$$ \mathbf{X}=\left[\textsc{x}(n),\textsc{x}(n-1),...., \textsc{x}(n-N+1)\right]. $$
We have a finite number of samples which needs to define a sample covariance matrix instead of a statistical covariance matrix, expressing X(ni) as X i covariance matrix will be
$$ \mathbf{R}(N)=\frac{1}{N}\sum_{i=1}^{N}\textsc{x}_{i} \textsc{x}_{i}^{T}. $$
Let λ 1λ 2λ 3≥.....λ k be the eigenvalues of R such that
$$ |\mathbf{R}-\lambda \mathbf{I}|=0, $$
Here I is the identity matrix with dimension as of covariance matrix R. γ 1,γ 2,γ 3....γ k are the characteristic vectors of R. To form a feature matrix, first, we need to select G, that is, the number of most significant eigenvector corresponds to the highest eigenvalues where 1≤Gk. Principal components associated with eigenvalues larger in magnitude than the average of the eigenvalues are taken. The transformation of the original data set is as below
$$ \mathbf{p}_{i}= \mathbf{F}^{T} \mathbf{x}_{i}, $$
F is the feature matrix containing G most significant eigenvectors i=1,2,..,N complete PC can be expressed as P j =[p j1,p j2,…,p jN ], j=1,2,.…G. The set of PCs with no redundant data is P=[P 1,P 2,…,P G ] T with g row vectors each containing N entries.
$$ \sum_{i=1}^{N} p_{ji}^{2} =\lambda_{j}. $$
(9) follows that jth PC gives the distribution of the energy given by the jth eigenvalue [15]. Test statistic T to distinguish between signal and noise is as follows [12]
$$ T=1/N \sum_{j=1}^{g} p_{j1}^{2} +p_{j2}^{2} +p_{j3}^{2}+\ldots+ p_{jN}^{2} > \psi. $$

Here p ji is the ith element of jth PC and ψ is the detection threshold determined empirically at a desired probability of false alarm. PU exists if T>ψ.

2.4 Performance analysis of the PC algorithm

Wireless microphone signals were used to formulate the PU, simulations were done using N samples. The value of N is set to 20,000. Figure 1 represents the probability of detection versus SNR curves with varying number of PCs. It can be seen from the figure that the probability of detection is improved as we include more principal components for detection; in Fig. 1, ‘pc’ represents the number of principal components included in test statistic. It is also clear that the first two PCs retain the most useful information as compared to the last ones. There is an improvement in detection performance while moving from one to two and two to three PCs, but no significant improvement is observed when we include all four PCs, that is the point where we encounter the redundant data that can be discarded to save the sensing time. This supports the statement that the variables with little variances could be discarded without significantly influencing the total variance, thereby reducing the number of variables. The use of smaller number of PCs not only reduces the sensing time but also loses some useful info that results in a low probability of detection in our case. As we increase the number of PCs, detection time also increases because it gets involved more number of operations to calculate the test statistic that increases the complexity of the algorithm.
Fig. 1

Analysis of the PC algorithm. Improvement in probability of detection with increasing number of principal components at 10 % probability of false alarm and N=20,000

3 Proposed LPC algorithm

From the performance analysis of the PC algorithm, it is observed that the detection performance can be improved by including more PCs while using larger sized covariance matrix. However, doing so increases the complexity. In this section, we propose the LPC algorithm that uses the iterative method to compute the eigenvectors, required to generate PCs; the use of this approach significantly reduces the complexity. The proposed method performs much faster than the existing method, as it only computes the eigenvectors corresponding to the highest eigenvalues, whereas the direct method computes all the eigenvectors, thus wasting resources in computing in significant eignvectors. This approach is more efficient as it obviates the calculation of all the eignvectors and then sorting them at the end. Advance algorithms such as Lanczos and Arnoldi save this data and use the Gram-Schmidt process or Householder algorithm to reorthogonalize them into a basis spanning the Krylov subspace corresponding to the matrix. As the matrix size increases, the direct method becomes very slow, therefore not feasible practically, while the proposed method only calculates the desired eigenvectors via an iterative approach.

There are many iterative approaches like Arnoldi algorithm, Jacobi-Davidson algorithm and Lanczos algorithm [17]. We found Lanczos algorithm appropriate for our scenario as it has the least convergence time as compared to other approaches [17]. A disadvantage of this algorithm is that the number of iterations can be large. To cater for this issue, a variation of the Lanczos algorithm known as implicitly restarted Lanczos algorithm (IRLA) is used to compute the desired eigenvectors [18]. Implicitly restart (IR) extracts the useful information from a large Krylove subspace and resolves the storage issue and the difficulties associated with the standard approach. IR does this by compressing the useful data into a fixed size k dimensional subspace. IRLA is summarized in Algorithm 1 [18]. A is the symmetric matrix of interest v is the starting vector, T k k×k is real, symmetric and tridiagonal with nonnegative subdiagonal elements. V k C n×k (the columns of V k ) are the Lanczos vectors.

Here k represents the desired number of eigenvectors to calculate and r is the residual. Selection of shift μ j depends upon the user’s required set of vectors. o steps of shifted Q R iterations are applied to T m using μ 1,μ 2,....μ o as shifts. [β k =T m (k+1,k)]=0 if we use exact shifts. LPCA can be summarized as follows:
  1. 1.

    Calculate the covariance matrix as in (6).

  2. 2.

    Decompose the covariance matrix via implicitly restarted Lanczos algorithm as described in Algorithm 1.

  3. 3.

    Generate the principal components.

  4. 4.

    Calculate test statistic T as in (9).

  5. 5.

    Decide between H 1 and H 0 by comparing the T with a predetermined threshold (Empirically determined at the desired probability of false alarm).


3.1 Computational complexity comparison

As of the other covariance-based detection techniques, complexity of the PC algorithm also comprises of two major steps, one is the computation of the covariance matrix as in (6) and the other is the decomposition of the covariance matrix to calculate eigenvectors in our case. As the covariance matrix is a block Toeplitz and Hermitian, due to these properties of covariance matrix, we only need to evaluate its first block. Calculation of the covariance matrix requires (M 2 L N s ) multiplications and O(M 2 L(N s −1)) additions; here M is the number of receive antennas, L is the smoothing factor and N s is the number of samples [4]. Eigen decomposition of the covariance matrix requires O(M 3 L 3) multiplications and additions [5].

Therefore, the total complexity of eigenvalue-based detection algorithm (i.e. MME) is O(M 2 L N s )+O(M 3 L 3). Hence, after sorting, the total complexity of the PC algorithm becomes O(M 2 L N s )+O(M 3 L 3)+O(L 2), the complexity involved in the generation of principal components is negligible as compare to the calculation and decomposition of covariance matrix. The use of the iterative approach reduces the complexity up to 2L 2 [17]. Complexity with purposed LPC algorithm reduced to O(M 2 L N s )+O(M 3 L). Figure 2 shows the lognormal plot of the complexity of all three algorithms (MME, PCA and LPCA).
Fig. 2

Lognormal plot of complexity. Complexity plot of proposed LPCA, existing PC and MME method

4 Experimental setup

The algorithms were tested using the USRP testbed. Two receiver systems with single (M=1) and multiple antenna (M=2) were set up with the help of USRP2 for receiving correlated wireless signals, as shown in Fig. 3. Transmission parameters were set as in [12]. USRP and USRP2 are generally used hardware platforms in the field of cognitive radios and SDR provided by Ettus Research [19]. It consists of a motherboard and a selectable RF daughter boards along with a gigabit ethernet port that can be attached to a host computer for further processing. WBX was connected to the motherboard. It has a single transmit and receive antenna and covers a wide frequency range of 50 MHz to 2.2 GHz [19]. One of the advantages of USRP2 is that it works with GNU radio, open source software along with an abundance of resources, which simplify its usage [20]. Signal reception and down conversion was performed by the RF daughterboard. Afterwards a gigabit ethernet was used to pass the down-converted signal to host computer for further processing. A master/slave configuration was established to connect the two USRPs. The host computer was connected to the master USRP through an ethernet interface. The two USRP kits were interconnected via a MIMO cable that enables the synchronization between them. In addition, it also transfers down-converted signals from slave to master. Synchronization is achieved by feeding two reference signals to the master USRP. A frequency reference is provided by a 10-MHz signal and sample time is synchronized by a one pulse per second (1 PPS) signal. In our experimental setup, the PU was emulated using an Rhode & Schwarz SMF100A microwave signal generator that transmits an FM signal at a frequency of 410 MHz with a bandwidth of 200 kHz [21]. The SNR was varied by changing the transmit power of the signal generator. The sampling rate of the received signal was 6.25 Mega samples per second. A high correlation between the samples is achieved by over-sampling. The received signals were fed to the host computer through an ethernet cable for subsequent performance analysis. The SNR was measured by tuning off the transmitter and recording the noise at each RF front end. The power of the signal at M th front end is calculated by \({P_{M}=1/S\sum _{n=1}^{S}|X_{M}(n)|^{2}}\). Where S is the total samples used for computing power, P M,1 represents the power of signal and P M,0 is the powerof noise.
$$ SNR_{M}=10log_{10}[(P_{M,1} - P_{M,0})/P_{M,0}]. $$
Fig. 3

Experimental setup. Experimental setup with two receive antennas

5 Results and discussions

This section describes the performance comparison of the LPC, PC and MME algorithms. Figure 4 shows the performance analysis of the three algorithms in terms of probability of detection vs. SNR at 10 % probability of false alarm for single (M=1) and multiple (M=2) receive antenna cases. Probability of detection improves for the M=2 case as the use of multiple antennas at the receiver overcomes the effect of channel fading and also enhances the robustness against interference [22]. Antennas were configured for correlated reception (i.e antenna spacing <λ c /2) which enhance the received signal’s correlation between the samples. The results obtained from the PC and LPC algorithms were with G=2 and the number of samples used in making a single detection decision N was kept constant for all the three algorithms. It was observed that the proposed method (LPCA) gives similar detection performance as of the PC method with significantly reduced complexity and it also outperforms the MME algorithm. There is no effect on the detection test statistic except the reduction in computational complexity, this allows the inclusion of more PCs that ultimately improve the detection performance. The proposed algorithm reduces the complexity by using an iterative approach and subspace method. Improvement in probability of detection is attained using LPCA, this improvement is achieved by using the covariance matrix of order L=6 instead of L=4 while in case of PC and MME algorithm L=4. With this L the complexity of PC algorithm is L 3+L 2=80 and MME has the complexity L 3=64 while that of the LPCA is L=6, the proposed LPCA gives the better detection with low complexity even using large covariance matrix.
Fig. 4

Performance comparison. Comparison of performance in term of probability of detection for single and multiple receive antennas cases at 10 % probability of false alarm G=2,N=60,000

The direct method becomes slow as the matrix size increases; therefore, it is not feasible practically. With the direct method, while getting the required eigenvector, we also got a series of vectors, which were, finally, discarded, this can result in a large amount of disregarded information; LPCA overcomes this issue and makes the things simpler. Receiver operating curves at different SNR are shown in Fig. 5 for MME, PC and LPCA at SNR −15 and −20 dB with L=4 and N=60,000. Detection threshold was empirically calculated by considering the normalized histogram of the test statistic under H 0 and corresponds to probability of false alarm of range 0 to 1. It can be seen from the figure that receiver operating characteristics (ROC) of both PC and LPCA are almost the same (Fig. 5). As expected, the proposed algorithm gives the same performance as that of the PC algorithm with a reduced complexity and significantly exceeds the sensing requirements defined by the FCC, that is, achieving 90 % P d with 10 % P f a at SNR of −12 dB for wireless microphone signals.
Fig. 5

ROC. Receiver operating curve probability of detection (P d ) vs. probability of false alarm (P f ) at SNR −15 and −20 dB

6 Conclusion

Complexity is a major issue in blind signal detection algorithms that are based on a covariance matrix. The use of a large number of received samples increases the size of the covariance matrix and as a result the complexity. In this paper, we proposed a novel algorithm for blind signal detection, i.e. LPC algorithm that has an iterative nature which reduces the complexity and saves sensing time. LPC achieves the same detection performance as PC, yet its complexity is significantly less than the PC algorithm. Thus, LPC can be used in even low-powered devices for blind signal detection. The performance of LPC is compared with PC as well as MME algorithms. The proposed method gives the best sensing performance while reducing the complexity from O(L 3+L 2) to O(L). All the algorithms are tested with actual wireless microphone signals while using a USRP2 testbed and GNU radio software. In the future, these algorithms can be tested on a stand-alone platform for real-time performanceevaluation.


Authors’ Affiliations

Department of Electrical Engineering, National University of Sciences and Technology (NUST), Islamabad, Pakistan
Electrical Engineering Department, Institute of Space Technology, Islamabad, Pakistan


  1. S Haykin, DJ Thomson, JH Reed, Spectrum sensing for cognitive radio. Proc. IEEE. 97(5), 849–877 (2009).View ArticleGoogle Scholar
  2. DD Ariananda, M Lakshmanan, H Nikookar, in Cognitive Radio and Advanced Spectrum Management, 2009. CogART 2009. Second International Workshop On. A survey on spectrum sensing techniques for cognitive radio (IEEE, 2009), pp. 74–79.Google Scholar
  3. T Yücek, H Arslan, A survey of spectrum sensing algorithms for cognitive radio applications. Commun. Surv. Tutorials IEEE. 11(1), 116–130 (2009).View ArticleGoogle Scholar
  4. Y Zeng, Y-C Liang, Spectrum-sensing algorithms for cognitive radio based on statistical covariances. Vehicular Technol. IEEE Trans. 58(4), 1804–1815 (2009).View ArticleGoogle Scholar
  5. Y Zeng, Y-C Liang, Eigenvalue-based spectrum sensing algorithms for cognitive radio. Commun. IEEE Trans. 57(6), 1784–1793 (2009).View ArticleGoogle Scholar
  6. Y Zeng, CL Koh, Y-C Liang, in Communications, 2008. ICC’08. IEEE International Conference On. Maximum eigenvalue detection: theory and application (IEEE, 2008), pp. 4160–4164.Google Scholar
  7. Y Zeng, Y-C Liang, in Personal, Indoor and Mobile Radio Communications, 2007. PIMRC 2007. IEEE 18th International Symposium On. Maximum-minimum eigenvalue detection for cognitive radio (IEEE, 2007), pp. 1–5.Google Scholar
  8. Y Zeng, Y-C Liang, R Zhang, Blindly combined energy detection for spectrum sensing in cognitive radio. Signal Process. Lett. IEEE. 15, 649–652 (2008).View ArticleGoogle Scholar
  9. AM Rao, B Karthikeyan, GRK DipayanMazumdar, Energy detection technique for spectrum sensing in cognitive radio. SAS_TECH. 9 (2010).Google Scholar
  10. S Hou, R Qiu, M Bryant, M Wicks, in IEEE Waveform Diversity and Design Conference, 514. Spectrum sensing in cognitive radio with robust principal component analysis, (2012).Google Scholar
  11. Y Han, H Lee, J Lee, in Vehicular Technology Conference (VTC Fall), 2013 IEEE 78th. Spectrum sensing using robust principal component analysis for cognitive radio (IEEE, 2013), pp. 1–5.Google Scholar
  12. FA Bhatti, GB Rowe, KW Sowerby, in Wireless Communications and Networking Conference (WCNC), 2012 IEEE. Spectrum sensing using principal component analysis (IEEE, 2012), pp. 725–730.Google Scholar
  13. J Ma, GY Li, BHF Juang, Signal processing in cognitive radio. Proc. IEEE. 97(5), 805–823 (2009).View ArticleGoogle Scholar
  14. JE Jackson, A User’s Guide to Principal Components, vol. 587 (John Wiley & Sons, Canada, 2005).Google Scholar
  15. BC Moore, Principal component analysis in linear systems: Controllability, observability, and model reduction. Automatic Control IEEE Trans. 26(1), 17–32 (1981).MATHView ArticleGoogle Scholar
  16. JF Hair, WC Black, BJ Babin, RE Anderson, RL Tatham, Multivariate Data Analysis, vol. 6 (Pearson Prentice Hall Upper Saddle River, NJ, New York, 2006).Google Scholar
  17. A Ikram, A Rashdi, in Communications (APCC), 2012 18th Asia-Pacific Conference On. Complexity analysis of eigenvalue based spectrum sensing techniques in cognitive radio networks (IEEE, 2012), pp. 290–294.Google Scholar
  18. D Calvetti, L Reichel, DC Sorensen, An implicitly restarted lanczos method for large symmetric eigenvalue problems. Electronic Trans. Numeric. Anal. 2(1), 21 (1994).MathSciNetGoogle Scholar
  19. Ettus Reserch.
  20. GNU RADIO.
  21. C Clanton, M Kenkel, Y Tang, Wireless microphone signal simulation method. IEEE 802.22-07/0124r0 (2007).Google Scholar
  22. Y-C Liang, G Pan, Y Zeng, in Global Telecommunications Conference (GLOBECOM 2010), 2010 IEEE. On the performance of spectrum sensing algorithms using multiple antennas (IEEE, 2010), pp. 1–5.Google Scholar


© Idrees et al. 2015

This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.