HIERARCHICAL BLIND MODULATION CLASSIFICATION IN THE PRESENCE OF CARRIER FREQUENCY OFFSET A thesis submitted in partial fulfilment of the requirements for the degree of Master of Science (by research) in Communication Systems and Signal Processing by Chaithanya Velampalli 200736002 [email protected]Communications Research Center INTERNATIONAL INSTITUTE OF INFORMATION TECHNOLOGY GACHIBOWLI, HYDERABAD, A.P., INDIA - 500 032 May 2010
39
Embed
HIERARCHICAL BLIND MODULATION CLASSIFICATION IN THE ...web2py.iiit.ac.in/publications/default/download/mastersthesis.pdf.98… · HIERARCHICAL BLIND MODULATION CLASSIFICATION IN THE
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Denote the ensemble average of the square of the absolute value of the difference
of adjacent samples of Y1(n) as
TY1(n) = E[|Y1(n)− Y1(n− 1)|2]
and similarly
TX1(n) = E[|X1(n)−X1(n− 1)|2]
Combining the above definitions with (2.13), we obtain (after some manipulations)
TY1(n) = P 2TX1(n) + 4Pσ2w + 2σ4
w
from which we have the following
TX1(n) =TY1(n) − 4(M21,y(n) − σ2
w)σ2w − 2σ4
w
(M21,y(n) − σ2w)2
, (2.14)
where we have used (2.4) for P . The values of TX1(n) for 4-PSK and O-QPSK,
evaluated in Appendix A, are given in Table 2.3. Note that TX1(n) can be used as the
feature for separating 4-PSK from O-QPSK.
CHAPTER 2. FEATURES USED FOR CLASSIFICATION 11
Table 2.3: TX1(n) for 4-PSK and O-QPSK
Constellation TX1(n)
4-PSK 2O-QPSK 1
The estimated normalized value of TX1(n), evaluated from Y1(n), is given by
T̃ =T̂Y1(n) − 4(M̂21,y(n) − σ2
w)σ2w − 2σ4
w
(M̂21,y(n) − σ2w)2
(2.15)
We use (2.6), (2.11), (2.12) and (2.15) as features for classification.
Chapter 3
Algorithm for Hierarchical
Classification
3.1 Approach
We use distance metric based approach in the classification algorithm. In this ap-
proach, the metric used for classification is the distance between the estimate and its
asymptotic value of an individual feature. Consider the problem where we have to
identify the constellation of the received signal from among n hypotheses correspond-
ing to n constellations. Let the feature used for this be F, its estimated normalized
value obtained from finite data be F̃, and its asymptotic value under kth hypothesis
be Fk. We then calculate di under each of the n hypotheses
di = |F̃− Fi|2, i = 0, · · · , n− 1. (3.1)
and decide in favor of kth hypothesis if di is found to be minimum for i=k. We perform
the classification in four stages as described below (see Fig. 3.1).
12
CHAPTER 3. ALGORITHM FOR HIERARCHICAL CLASSIFICATION 13
3.2 Algorithm
STAGE-1
In this stage, we decide whether the incoming signal belongs to PAM constellation
set or to PSK/QAM set. From Table 2.2 we note that the asymptotic values of
|M̃20,dp| corresponding to the above two sub-classes are well separated, and hence,
can serve as the feature for separating into these two sub-classes. Let H0 and H1
represent the hypotheses that the incoming signal is from PAM set and PSK/QAM
sets, respectively. We apply the distance metric choosing the threshold as 0.5. From
the received data, we evaluate |M̃20,dp| . If this is greater than or equal to 0.5 we
choose the hypothesis H0, otherwise H1.
Figure 3.1: Algorithm for hierarchical modulation classification using distance metric(modulations considered are PAM, PSK and QAM)
CHAPTER 3. ALGORITHM FOR HIERARCHICAL CLASSIFICATION 14
STAGE-2
In this stage, we perform inter classification among PAM constellations if the incoming
signal is classified as PAM sub-class in the first stage or separation between PSK and
QAM sub-classes otherwise. Note from Table 2.1 that the asymptotic values of M̃42
for the PSK set is 1 while it is around 1.32 for QAM set. We use distance metric
choosing the threshold as 1.155. Let hypothesis H0 represent PSK set and H1 QAM
set. From the received data, we evaluate M̃42. If this is less than 1.155, we choose
the hypothesis H0, otherwise H1. For inter classification among PAM, we choose the
thresholds as shown in Fig. 3.1 and classify into 2-, 4- and 8-PAM.
STAGE-3
In this stage, we classify QAM constellation set or PSK constellation set into two
groups depending on the sub-classification at Stage 2. In QAM case, we use the
feature M̃42 and in PSK case, we use |M̃40,dp|. We use distance metric choosing the
thresholds as given in Fig. 3.1 and classify into two groups.
STAGE-4
In this stage, we perform inter classification between 16 and 32-QAM or between
O-QPSK and 4-PSK depending on the classification of the incoming signal at Stage
3. We use the feature |M̃40,dp| for classification in QAM and T̃ for classification in
the PSK case. We use distance metric choosing the thresholds as given in Fig. 3.1.
Chapter 4
Results
4.1 Simulation Results
We conducted simulations with data size of 1000 symbols with 2 samples per symbol,
and chose ε = 0.01. For each constellation, we carried out 105 trials, with different
realization of symbol sequence and noise sequence in each trial. From the number of
correct classifications obtained over 105 trials, the percentage of correct classification
is computed. Table 4.1 gives this value for all the constellations for various SNR
values. Note here that since the features used are insensitive to the carrier frequency
offset, the results will be same for all values of ε. The quantities to be stored in
the library are the thresholds given in Fig 3.1. The results show that our approach
performs very well for the SNR values ≥ 10dB. Even for lower SNR values of 6 to 10
dB, the performance is very good for all except the 32-QAM.
Fig. 4.1 gives the average percentage of correct classification, computed by aver-
aging over all the constellations. In [4], the average percentage of correct classification
for data size of 1000 symbols is given as 76 percent (approximately) at SNR of 10
dB. The corresponding value from our algorithm is about 95 percent. Of course, this
may not be a fair comparison since [4] considered 10 modulations while we considered
9 modulations of which only 8 are common to both, and the pulse shapes used in
both cases are different. Nevertheless, we wanted to point out this to convey that the
15
CHAPTER 4. RESULTS 16
Table 4.1: Performance of the proposed algorithm as percentage of correct classification(1000 symbols with two samples per symbol and ε=0.01 are used in 105 trials)
Figure 4.1: Average percentage of correct classification
features used here have smaller variance and this resulted in improved performance.
4.2 10-Class Problem
We now consider a 10-Class problem consisting of 2-, 4- and 8-PAM, 4-PSK, O-
QPSK (Offset-QPSK), 8-PSK and 16-PSK, 16-, 32- and 64-QAM. All the considered
CHAPTER 4. RESULTS 17
constellations are same as that of 9-class problem except 16-PSK. The asymptotic
values of various features used in the 9-class problem for 16-PSK are same as that of 8-
PSK as shown in Table 4.2. We, therefore, used eighth-order moment of differentially
processed signal as the feature for interclassification between 8-PSK and 16-PSK.
This feature is defined as
M80,Y2(n) = E[Y 82 (n)]
Using (2.8) and simplifying, we get
M80,X2(n) =e−j32πεM80,Y2(n)
(M21,y(n) − σ2w)8
(4.1)
The phase offset is removed by taking the absolute value. The estimated nor-
malised eighth order moment is given by
|M̃80,dp| =|M̂80,Y2(n)|
(M̂21,y(n) − σ2w)8
(4.2)
The asymptotic value of |M̃80,dp| is |M80,X2(n)| and Table 4.2 gives this value for
8-PSK and 16-PSK.
Table 4.2: Moments of x(n) and X2(n) for 8- & 16-PSK ( x(n) is of unit variance )Constellations M42,x(n) |M20,X2(n)| |M40,X2(n)| |M80,X2(n)|
8-PSK 1 0 0 116-PSK 1 0 0 0
We follow the same classification procedure as in 9-Class problem for classify-
ing constellations and use |M̃80,dp| for inter-classification of 8-PSK and 16-PSK. The
asymptotic value of |M̃80,dp| is 1 for 8-PSK and 0 for 16-PSK. Let H0 and H1 represent
the hypotheses that the incoming signal is from 8-PSK and 16-PSK, respectively. We
apply the distance metric choosing the threshold as 0.5. From the received data, we
evaluate |M̃80,dp|. If this is greater than or equal to 0.5 we choose hypothesis H0, oth-
erwise H1. The complete algorithm is given in Fig 4.2 and the corresponding results
CHAPTER 4. RESULTS 18
Figure 4.2: Algorithm for hierarchical modulation classification using distance metricfor 10-Class problem (modulations considered are PAM, PSK and QAM)
in Table 4.3.
Table 4.3: Performance of the proposed algorithm as percentage of correct classificationfor 10-class problem (1000 symbols with two samples per symbol and ε=0.01 are used in105 trials)SNR 2-PAM 4-PAM 8-PAM 4-PSK O-QPSK 8-PSK 16-PSK 16-QAM 32-QAM 64-QAM
We observe that the classification of 8-PSK and 16-PSK is good for SNR values
greater than 10dB. Since the eighth order feature has higher variance compared to
that of fourth-order for a given data size, SNR required will be higher for obtaining
above average probability of correct classification.
Chapter 5
Conclusion
We addressed the problem of blind modulation classification with finite data in the
presence of carrier frequency offset. A hierarchical algorithm for classification is
proposed. Unlike in the recently reported works which focus more on cumulants, we
used moments as features while providing some motivation for their use. Simulation
results are given to illustrate the classification performance with our method.
5.1 Future Work
The problem of blind modulation classification becomes difficult when we simulta-
neously have several imperfections such as timing offset, multipath fading channels
apart from carrier frequency offset. So, development of methods for modulation clas-
sification in the combined presence of these imperfections is suggested as the future
work.
20
Appendix A
Evaluating Feature Used for 4-PSK & O-QPSK Classification
Let the four symbols of 4-PSK/ O-QPSK constellation be given by A, B, C and D.
Calculation of TX1(n) for 4-PSK
TX1(n) = E[|X1(n)−X1(n− 1)|2]
where
X1(n) = x∗(n− 1)x(n)
Case 1
Let n − 2, n − 1, n denote instances of time. Let us consider that symbol A has
come in the (n − 2)th instance from among the four symbols. Then the symbol at
(n − 1)th instance would also be A (because we are considering two samples per
symbol). Symbol at (n)th instance can be A, B, C or D. These transitions along with
the respective probabilities are given in Table A.1 .
Table A.1: Symbol transitions along with respective probabilities for 4-PSKn− 2 n− 1 n Probability
A A A [1/4]A A B [1/4]A A C [1/4]A A D [1/4]
21
APPENDIX A. EVALUATING FEATURE USED FOR 4-PSK & O-QPSK CLASSIFICATION22
Table A.2: X1(n) and X1(n− 1) along with respective probabilities for 4-PSKX1(n) X1(n− 1) Probability|A|2 |A|2 [1/4]A∗B |A|2 [1/4]A∗C |A|2 [1/4]A∗D |A|2 [1/4]
Now X1(n) is obtained by multiplying second(with conjugate) and third columns
and X1(n−1) is obtained by multiplying first(with conjugate) and second columns in
Table A.1. The resulting sequences are given in Table A.2. Now |X1(n)−X1(n− 1)|is obtained by subtracting first and second columns in Table A.2.
Table A.3: Absolute difference along with respective probabilities for 4-PSK|X1(n)−X1(n− 1)| Probability
0 [1/4]√2 [1/4]2 [1/4]√2 [1/4]
Case 2
Let n− 2, n− 1, n denote instances of time. Let us consider that symbol A has come
in the (n− 2)th instance from among the four symbols. Then the symbol at (n− 1)th
instance can be any one of A, B, C or D. Symbol at (n)th instance would be same as
that of (n − 1)th instance. These transitions along with the respective probabilities
are given in Table A.4 .
Table A.4: Symbol transitions along with respective probabilities for 4-PSKn− 2 n− 1 n Probability
A A A [1/4]A B B [1/4]A C C [1/4]A D D [1/4]
Now X1(n) is obtained by multiplying second(with conjugate) and third columns
and X1(n−1) is obtained by multiplying first(with conjugate) and second columns in
APPENDIX A. EVALUATING FEATURE USED FOR 4-PSK & O-QPSK CLASSIFICATION23
Table A.5: X1(n) and X1(n− 1) along with respective probabilities for 4-PSKX1(n) X1(n− 1) Probability|A|2 |A|2 [1/4]|B|2 A∗B [1/4]|C|2 A∗C [1/4]|D|2 A∗D [1/4]
Table A.6: Absolute difference along with respective probabilities for 4-PSK|X1(n)−X1(n− 1)| Probability
0 [1/4]√2 [1/4]2 [1/4]√2 [1/4]
Table A.4. The resulting sequences are given in Table A.5. Now |X1(n)−X1(n− 1)|is obtained by subtracting first and second columns in Table A.5 and is provided in
Table A.6.
Case 1 occurs with probability (1/2) and Case 2 with probability (1/2). So TX1(n)
will be
1
2
[1
4× 0 +
1
4× 2 +
1
4× 4 +
1
4× 2
]+
1
2
[1
4× 0 +
1
4× 2 +
1
4× 4 +
1
4× 2
]
which is 2.
Due to symmetry, symbols B, C and D at (n− 2)th instance would also give value
of TX1(n)=2. All the four symbols occur with probability of [1/4]. So net value of
TX1(n)=2.
Calculation of TX1(n) for O-QPSK
TX1(n) = E[|X1(n)−X1(n− 1)|2]
where
X1(n) = x∗(n− 1)x(n)
APPENDIX A. EVALUATING FEATURE USED FOR 4-PSK & O-QPSK CLASSIFICATION24
Let n − 2, n − 1, n denote instances of time. Let us consider that symbol A
has come in the (n − 2)th instance from among the four symbols. Then the symbol
at (n)th instance can be any one of A, B, C or D each with probability [1/4]. The
transition from (n−2)th instance to (n)th instance occurs via (n−1)th instance. These
transitions along with the respective probabilities are given in Table A.7 .
Table A.7: Symbol transitions along with respective probabilities for O-QPSKn− 2 n− 1 n Probability
A A A [1]×[1/4]A B B [1/2]×[1/4]A A B [1/2]×[1/4]A B C [1/2]×[1/4]A D C [1/2]×[1/4]A D D [1/2]×[1/4]A A D [1/2]×[1/4]
Table A.8: X1(n) and X1(n− 1) along with respective probabilities for O-QPSKX1(n) X1(n− 1) Probability|A|2 |A|2 [1/4]|B|2 A∗B [1/8]A∗B |A|2 [1/8]B∗C A∗B [1/8]D∗C A∗D [1/8]|D|2 A∗D [1/8]A∗D |A|2 [1/8]
Table A.9: Absolute difference along with respective probabilities for O-QPSK|X1(n)−X1(n− 1)| Probability