Signal Detection for QPSK Based Cognitive Radio Systems using Support Vector Machines

Cognitive radio based network enables opportunistic dynamic spectrum access by sensing, adopting and utilizing the unused portion of licensed spectrum bands. Cognitive radio is intelligent enough to adapt the communication parameters of the unused licensed spectrum. Spectrum sensing is one of the most important tasks of the cognitive radio cycle. In this paper, the auto-correlation function kernel based Support Vector Machine (SVM) classifier along with Welch’s Periodogram detector is successfully implemented for the detection of four QPSK (Quadrature Phase Shift Keying) based signals propagating through an AWGN (Additive White Gaussian Noise) channel. It is shown that the combination of statistical signal processing and machine learning concepts improve the spectrum sensing process and spectrum sensing is possible even at low Signal to Noise Ratio (SNR) values up to −50 dB.


Introduction
The concept of cognitive radio raised a question on the effectiveness of fixed spectrum access and indicate the need to change the spectrum assignment policy.Radio spectrum is assigned and regulated by the government and international bodies following long-term fixed spectrum assignment policy [1].The unlicensed spectrum is overcrowded [2] due to tremendous increase in the usage of wireless devices and new services.Various studies show under-utilization of licensed spectrum [2,3,4] that leads to wastage of precious radio resources.According to Federal Communications Commission (FCC) 2002 report, the licensed bands are underutilized and the ISM (Industrial, scientific and Medical) radio bands are over crowded [2].The report also stated that the average utilization of licensed bands is 15-85% [2].
The temporarily unused band is known as spectrum hole.The idea of cognitive radio introduced by J. Mitola [6] is to utilize these spectrum holes without affecting the communication priority of primary (licensed) users.It will provide more bandwidth to the un-licensed (cognitive) users.It will compensate the under-utilization of valuable licensed radio resources [5,6] and provide more bandwidth to cognitive users.Cognitive radio is the enhanced version of SDR (Software Defined Radio).SDR transceiver is designed to work at various frequencies and modulation techniques with most of its functional implementation in software rather than hardware.SDR allows cognitive user to intelligently adapt communication parameters (carrier frequency, bandwidth, power, coding schemes, modulation scheme etc.) for the unused licensed spectrum, thus making dynamic spectrum access possible [7].In the United States FCC allowed the dynamic access of the UHF-TV bands by the cognitive radio devices [8].
In order to utilize a licensed spectrum in an opportunistic way, first spectrum sensing is applied to detect the potential unused spectrum.Spectrum sensing improves the spectrum efficiency and reduces the interference [13,14].Welch's periodogram is a widely used energy based detection technique.Welch's Periodogram improved the Bartlett method and it reduces the noise in the estimated power spectra with the help of FFT (Fast Fourier Transform) [26].Using this technique, spectrum estimation performance is improved by applying the arbitrary window on the data segments.It can be used as an easy and simple solution for detection of the spectrum holes and mitigation of noise in cognitive radio systems, and it requires less prior information of the source signal and channel.This technique can detect successfully the narrow-band signals up to −25 dB.However, it will be more interesting to evaluate its performance at very low Signal to Noise Ratio (SNR) values.
In this paper, the system design approach to meet the challenges of detecting very weak signals with the help of machine learning technique, is presented.Our goal is to present a practical system design for spectrum sensing functionality to improve the spectrum sensing performance [9].Support Vector Machine (SVM) based classifier is used for detection of very weak signals.According to statistical ma-chine learning theory, SVM works based on the structural risk minimization principle [10].SVM has an advantage that can provide better generalization and improve performance for a small number of training samples.Recently spectral correlation analysis and feature detection have been used for the communication parameter detection using SVM [11,12].A mapping function known as a kernel is used by SVM to map the input space to high-dimensional feature space [15,16].SVM performance mainly depends on the chosen kernel function that makes the kernel a key part of SVM.
In this work, we have implemented two signal detectors.Firstly, the auto-correlation kernel based Support Vector Machine (SVM) classifier and secondly, Welch The scalar SNR is a fundamental and important measure in communication systems.Generally, it is the ratio of the signal power to the noise power and is used as a device parameter for describing the noise performance of the detector.The SNR is a unit less quantity, often expressed in decibels (dB).A higher value indicates more signal than noise.In our simulation, SNR is taken as the ratio of signal (symbol) energy to the AWGN spectrum density.The results indicate high performance at low very SNR values.The signal detection is done with the help of a new SVM kernel known as the Auto Correlation kernel Function (ACF) [10].The results show that the proposed detector detects the spectrum holes up to 89% accuracy for communication signals at very low SNR values in AWGN Channel for QPSK based four signals.
The rest of the paper is organized as follows: Section 2 contains brief introduction of Support Vector Machine for pattern classification.Section 3 describes auto-correlation SVM kernel function.Section 4 explains the system model and gives the implementation details.Simulation results are presented in Sec. 5 and, finally, the paper is concluded in Sec. 6.

Support Vector Machines for Pattern Classification
In this section, a brief introduction of Support Vector Machine (SVM) is presented, for further details see [17] and [16].SVM belongs to the category of supervised learning algorithms that requires a supervisor, to reveal the true interpretation of the data, such interpretation involves class labeling of the data.The goal is to learn a mapping from the input data to the output, given by a supervisor.Depending on the nature of the output, the algorithms can be subdivided into a classification problem (where the output space is represented in a discrete form) or a regression problem (where the output space is a continuous form) [18].
The task of learning by support vector machines with general kernel functions for a binary classification problem is formulated as follows.Given training samples or data-set in the form of set of auto-correlation functions ( the autocorrelation kernel will be discussed in the following section shortly): where l is the total number of training samples, y i ∈ {−1, +1} is the class label of signal x.The SVMs learn a discriminant function of the form where the data r si (x)(1 ≤ i ≤ n) are the support vectors and the coefficients α i are the solutions of the following quadratic programming problem, subject to and the bias b is given by Here, C is a user-defined constant and K(r i , r j ) is the kernel function that must satisfy the Mercer theorem [22].Generally, for the kernel functions either a linear inner-product, defined as is used linear decision boundaries or the Gaussian kernel function, defined as is used for non-linear decision boundaries in the feature space.It follows that all kernels function that can be expressed in terms of the inner products of data and that satisfy the Mercer theorem can be used for computing the kernel matrix.We use the auto-correlation function for computing the kernel matrix corresponding to an SVM trained in autocorrelations feature space.

Autocorrelation Kernel for SVM
Auto-correlation function is one of the important functions used in signal processing.It is the correlation between two samples x k and x l separated by time lag (i − j).It is actually the measure of dependence of successive samples on the previous samples.Auto-correlation function is symmetric in time lag (i − j).Definition of auto-correlation function is represented by (8), An auto-correlation function is also an important feature of random signals.The auto-correlation function is an acceptable SVM kernel as it is symmetric function (satisfies Mercer condition), and the discrete-time Fourier transform of auto-correlation function is the power spectrum of the random signal x i .So auto-correlation function satisfies both conditions of being an acceptable SVM kernel [10].

System Model and Implementation
This section describes the system model and gives its implementation details.In this work, we have implemented two signal detectors.Firstly, an auto-correlation kernel based SVM detector and secondly, Welch's Periodogram detector.For simulation purpose, we have used four QPSK based signals.These singles are propagating through AWGN channel with the help of signals sideband AM modulation technique with four different carrier frequencies f 1 , . . ., f 4 respectively.The AWGN noise is added in each of the four signals.In the simulations the signals were propagating with different SNR values in different cases.
The system is depicted in Fig. 1.It consists of four transmitters acting as primary users.At the receiver end, the signals are sampled and processed.These processed signals are then classified or detected by the detectors.
The signal detection problem can be formulated into a binary hypothesis form as where H 0 is a null hypothesis which represents the presence of only noise or absence of a signal and H 1 is the alternative hypothesis which shows the presence of the information signal.Here, s(n) is the received signal (n = 0, 1, . . ., N − 1) and w(n) represents the additive white Gaussian noise.We performed this signal classification and detection with two methods, Welch's Periodogram detector and auto-correlation kernel function based on SVM.The Welch's Periodogram [26] is an energy detector worked on the basis of overlapping window used for spectral power density estimation (PSD).Welch's Periodogram reduces the noise in the estimated power spectra with the help of FFT.In this technique, Spectrum estimation performance is improved by applying the arbitrary window on the signal segments.The presence of the signal is shown by lobes.The comprehensive detail of this method is out of the scope of this paper.However, we briefly describe the steps involved in calculating the Welch's Periodogram as: • The signal, x, is split into L overlapping segments and the length of each segment is M. The overlap is defined by a factor D. The overlap is 50% for D = M/2, and it is equal to 0 for D = 0.
• The overlapping segments are then windowed.For each segment a periodogram is calculated by computing discrete Fourier transform and then its square magnitude is computed.Then we calculate an average of the individual periodograms.
• The end result is shown by frequency bins versus the PSD graph.The presence of the signal is shown by lobes.
In the case of the Welch's Periodogram detector, we followed the Neyman-Pearson criterion.The criterion maximizes the probability of detection P D for a given probability of the false alarm (P FA ) [19,20].
In case of the SVM detector P FA represents the 'false positive rate' and 'true positive rate' is represented by

Simulation Results
We performed a series of simulation experiments for the evaluation of the proposed detector.We use the Area Under ROC (Receiver Operating Characteristics) curve, or simply AUC as a measure of detector performance.In machine learning community, the AUC is widely used for the performance evaluation of machine learning algorithms.Interested reader can find more details about AUC in [24], and [25], here we describe it briefly.The ROC is a plot of the probability of classifying correctly the positive examples (True positive rate or true detection) against the rate of incorrectly classifying true negative examples (False positive rate or false detection).Fig. 2 depicts an example of the ROC curve.The diagonal line corresponds to the ROC curve of a classifier that predicts the class at random, and the performance improves the further the curve is near to the upper left corner of the plot.AUC is the performance measure extracted from the ROC curve.When AUC is equal to 1, the classifier achieves perfect accuracy, and a classifier that predicts the class at random has an associated AUC of 0.5.Another interesting point of the AUC is that it depicts a general behavior of the classifier since it is independent of the decision threshold used for obtaining a class label [25].The AUC is computed by calculating the area using the following equation: where f (.) is the decision or scoring function of a classifier, which is defined by ( 2), x + and x − denote the positive class labeled and negative class labeled data samples, and n + and n − are the number of positive and negative examples.The holds and 0 otherwise.The AUC of a classifier is maximal when f (x + i ) > f (x − j ), ∀ i = 1, . . ., n + , ∀ j = 1, . . ., n − .The AUC decreases when ever a negative data sample is ranked higher than a positive class labeled data sample.
The performance of the detector depends upon the number of training samples, SNR values range and frequency of a signal to be detected.At low SNR values the performance of detector is decreased.The low SNR can be dealt by decreasing the step size [21] or increasing the number of training samples.The simulation's results show that the signal detection is possible at very low SNR values.
The decision threshold value is a minimum confidence level for signal detection or for obtaining the signal class label.In the current scenario, this decision threshold value is selected with the help of standard cross validation procedure.In this work confidence level or decision threshold > 20% shows the presence of the signal.This value is fixed through experiments using the 10-fold cross validation procedure in order to make a balance between false detection and true detection.The maximum performance achieved by the SVM detector is measured with AUC equal to 89%).Figs. 2, 3, 4, and 5 illustrate the performance of the simulation results at different SNR values ranges.Our simulation results show that the SVM detector's performance depends on the step size and can be improved by decreasing step size, which will increase the size of training data-set.This can be easily observed in Fig. 2 and Fig. 3.In Fig. 2 AUC is 0.86 for the step size of 10 while in Fig. 3 AUC is improved to 0.89 as step size is decreased to 2 for the same SNR range.We can see in Fig. 4      The results suggest that the SVM detector identifies very weak signals.The combination of Welch's periodogram detector and an SVM based detector could provide means to detect signals at low SNR levels more reliably.However further investigation is required to obtain more accurate results.

Conclusions
In this paper, the auto-correlation function kernel based SVM classifier along with Welch's periodogram detector is successfully implemented for the detection of four QPSK based signals propagating through an AWGN channel.The main attraction in SVM-based signal detection is its flexibility and its potential ability to operate at very low SNR values.The performance of the detector is better as compared to conventional energy detectors.
Our results suggest the SVM detector identifies very weak signals.We have shown that increase in the frequency range decreases the performance of the detector.Furthermore, larger SNR range of values results in low AUC (ROC).Similarly, performance of the detector is improved by decreasing the SNR step size.By reducing the SNR step size the number of training samples will increase that will eventually increase the accuracy of the signal detection.Higher the number of training samples the better will be the performance of the detector.Additionally, we showed that the Welch's periodogram detector does not perform well at SNR ≤ −30 dB for an AWGN channel.On the other hand, signal detection could be done at SNR ≤ −30 dB with the help of the auto-correlation kernel based SVM detector.
Along with various advantages of using SVM for signal classification, it can detect the signals at very lower SNR values.In this paper, we presented a spectrum sensing technique with better accuracy at very low SNR values.Our results showed that by using the combination of statistical signal processing and machine learning concepts, spectrum sensing could be improved.With the use of machine learning techniques, cognitive radio networks could become selfaware and behave in a really adaptive way.In future work, we will use the auto correlation kernel function based signal detection technique for the detection of weak earthquake and star signals.
P D .We use an auto correlation kernel function based SVMs for the detection of four signals propagating through AWGN channel.The receiver and the transmitters are both in fixed positions, so the Doppler shift is f ds = 0.The signals are transmitted with adjustable SNR values range e.g., for a range of SNR values = [−80 : 10 : 20] dB where 10 is the step size we have a total of 11 SNR values.The transmission channel is modeled as a non-line of sight AWGN channel.These signals, generated using a simulator developed in MATLAB, are used as input for training the four binary SVM based classifiers.We have used the Chang et al implementation called libSVM for training SVMs [23].For the experimentation purpose, we trained four binary SVMs using the auto correlation kernel on training data set.This class labeled data set is generated using our AWGN pass-band signal generator program.The number of the samples used for training the SVM varies and depends on the given SNR values range.For example, for a given SNR range [−40 : 2 : 20] we have a total of 31 SNR values and for each SNR value, we generate 1 500 training data set of signals consisting of an equal number of 15 combinations of the four frequencies signals.This makes a total of 46 500 training samples.To evaluate the performance of the detectors, a test data set is generated for the same SNR range of values.

Fig. 2 .
Fig. 2. ROC performance curve with AUC = 0.86 for the auto-correlation kernel based SVM detector.The detector was trained and tested with data-set containing 20, 30, 40 and 60 kHz AWGN pass-band signals and SNR values in the range [−40 : 10 : 40].

Fig. 3 .
Fig. 3. ROC performance curve with AUC = 0.89 for the auto-correlation kernel based SVM detector.The detector was trained and evaluated with data-set containing 20, 30, 40 and 60 kHz AWGN passband signals and SNR values in the range [−40 : 2 : 40].

Fig. 4 .
Fig. 4. ROC performance curve with AUC= 0.75 for the auto-correlation kernel based SVM detector.The detector was trained and evaluated with data-set containing 20, 30, 40 and 60 kHz AWGN passband signals and SNR values in the range [−80 : 10 : 40]

Fig. 5 .
Fig. 5. ROC performance curve with AUC = 0.74 for the auto-correlation kernel based SVM detector.The detector was trained and evaluated with data-set containing 200, 300, 400 and 500 kHz AWGN pass-band signals and SNR values in the range [−80 : 10 : 20].
that the performance decreases when SNR values range is increased.The simulation results shown in Fig. 5 confirms that the performance of SVM detector depends upon the frequency range of the signal.It is shown that the increase in the frequency range of the signals will decrease the performance of the detector for the same SNR range of values and step size.For the purpose of performance evaluation, we performed a number of experiments to compare the Welch's periodogram and auto-correlation kernel based SVM based techniques.For these experiments we trained four autocorrelation kernel based SVM detectors with a training data set containing class labeled of four 20, 30, 40 and 60 kHz carrier frequencies signals which were transmitted with adjustable SNR values range equal to [−80 : 10 : 40].

Fig. 6 .
Fig. 6.Four test signals at SNR = −10 dB with four 20, 30, 40 and 60 kHz carrier AWGN Pass band frequencies.Both Welch's periodogram (shown by the upper graph) and the auto-correlation kernel based SVM detectors detect (shown in the lower green box) correctly all the four signals, the confidence > 20%.

Fig. 7 .
Fig. 7. Four test signals at −30 dB with four 20, 30, 40 and 60 kHz carrier AWGN Pass band frequencies.Only the auto-correlation kernel based SVM detectors detect (shown in the lower green box) correctly all the four frequencies of the signals, the confidence > 20%.

Fig. 8 .
Fig. 8. Four test signals at −40 dB with four 20, 30, 40 and 60 kHz carrier AWGN Pass band frequencies.Only the auto-correlation kernel based SVM detectors detect (shown in the lower green box) correctly all the four frequencies of the signals, the confidence > 20%.

Fig. 9 .
Fig. 9. Four test signals at −50 dB with four 20, 30, 40 and 60 kHz carrier AWGN Pass band frequencies.Only the auto-correlation kernel based SVM detectors detect (shown in the lower green box) correctly all the four frequencies of the signals, the confidence > 20%.The results after passing test signals with four carrier frequencies at −10 dB, −30 dB, −40 dB and −50 dB SNR values are shown in Fig. 6, Fig. 7, Fig. 8 and Fig. 9 respectively.In these figures, the upper graph are the Welch's power spectral density estimates that show the results for detection of signals by Welch's periodogram while the lower green box shows the signal detection with the help of autocorrelation function kernel based SVM detector.It is worth reminding that the SVM detector detects a signal correctly if its confidence level or decision threshold > 20%, while the presence of a signal is shown by lobes in the graph Welch's periodogram.These results show that the signals are not detected by Welch's periodogram at SNR ≤ −30 dB while SVM detects the signals at SNR ≤ −30 dB.
, . . ., f 4 respectively.The AWGN noise is added in the four signals.In the simulations the signals are propagated with different SNR values in different cases.