View/Open - Wichita State University

advertisement
FREQUENCY OFFSET EFFECTS ON MAXIMIN AND MOSTLE
A Thesis by
Dong-Hyeuk Yang
B.S.M.E, Korean Air Force Academy, 1997
Submitted to the Department of Electrical Engineering
and the faculty of the Graduate School of
Wichita State University
in partial fulfillment of
the requirements for the degree of
Master of Science
July 2006
FREQUENCY OFFSET EFFECTS ON MAXIMIN AND MOSTLE
I have examined the final copy of this thesis for form and content, and recommend that it
be accepted in partial fulfillment of the requirements for the degree of Master of
Philosophy with a major in Electrical Engineering.
H. M. Kwon, Committee Chair
We have read this thesis
and recommend its acceptance:
M. Edwin Sawan, Committee Member
Daowei Ma, Committee Member
ii
ACKNOWLEDGEMENTS
First, I would like to thank Dr. Hyuck. M. Kwon, my academic adviser, for his
support, guidance, and understanding throughout my graduate studies. I also wish to
express my appreciation and gratitude to Dr. M. Edwin Sawan and Dr. Daowei Ma for
their valuable comments and instruction during all stages of this thesis. My thanks are
extended to all of my close friends—Mr. Inha Hyun, Taegyu Lee, Wantae Kim,
Dongwook Kim, and Kanghee Lee who have been a part of my life. This dissertation is
also dedicated to my parents and family—especially to my wife, Eunsug Park—who has
always given me love and encouragement.
Last but not least, I would like to express my deepest appreciation to my military
supervisors—Col. Han, Col. Lee Chan-Gyung, and Lt. Col. Tae Myung-Chul—for their
understanding about my absence from the Korean Air Force.
iii
ABSTRACT
The Maximin algorithm, proposed by Dr. Torrieri and Bakhru, adaptively
updates the weights of an antenna array to provide simultaneous interference
suppression and beamforming in a frequency hopping (FH) communication system.
The Maximin algorithm is named such because the desired signal is enhanced and the
interference is suppressed simultaneously. However in this thesis, it was found that the
Maximin algorithm shows poor performance under frequency offset and friendly
interference, i.e., a data-modulated interference environment. In this thesis, frequency
effects on the Maximin algorithm are derived analytically and verified with simulation
results.
iv
TABLE OF CONTENTS
Chapter
1.
INTRODUCTION
1
1.1
1.2
1.3
1
1
2
2
7
10
10
1.4
1.5
2.
3.
5.
History
Background
Existing Systems and Studies
1.3.1
Maximin
1.3.2 MOSTLE
Issues
Goal
SYSTEM MODEL
11
2.1
2.2
11
12
Basis Configurations
Simulation Parameters
SIMULATIONS
16
3.1
16
16
17
27
29
30
33
33
34
3.2
3.3
3.4
3.5
4.
Page
Frequency Offset to MSK Signal
3.1.1
Introducing Frequency Offset
3.1.2
Effects of Frequency Offsets
Initial Weight Vectors
Computational Complexity
Increase of Antennas
Maximin Algorithm Performance under Different Interferences
3.5.1
Tone Interference
3.5.2
Friendly Interference
CONTRIBUTIONS
36
4.1
4.2
4.3
4.4
36
36
37
37
Introducing Frequency Offset to Desired MSK Signal
Initial Weight Vectors
Increase of Antennas and computational FLOPs Analysis
Maximin Algorithm under Different Interference
CONCLUSIONS
39
v
LIST OF REFERENCES
40
APPENDICES
41
A.
B.
C.
D.
Average SINR with Frequency Offset
Signal Power Degradation D(S)
Increasing ULA (M) and Computational FLOPs
Norm of Weight Vector of Maximin versus Iterations
vi
42
47
49
56
LIST OF FIGURES
Figure
Page
2.1
Block diagram of a typical FH system with array antennas
11
2.2
Square with M=4 omni antennas at the vertices
14
2.3
Uniform linear array (ULA) with M omni antennas
14
3.1
Minimum shift-keying (MSK) data modulation
16
3.2
Average SINR for 20 trials under AWGN channel in the presence of
tone interferences and zero frequency offset (∆f=0), assuming input
SNR=20 dB, M=4 square array and ω(0)=[1,0,0,0]
(Maximin algorithm used a convergence parameter of α=0.2)
18
Average SINR for 20 trials under AWGN channel in the presence of
tone interferences and frequency offset ∆f=1/(1.5Tb), assuming input
SNR=20dB, M=4 square array, and ω(0)=[1,0,0,0]
(Maximin algorithm used a convergence parameter of α=0.2)
19
Average SINR for 20 trials under AWGN channel in the presence of
tone interferences and frequency offset ∆f=1/(1Tb), assuming input
SNR=20 dB, M=4 square array and ω(0)=[1,0,0,0]
(Maximin algorithm used a convergence parameter of α=0.2)
20
Signal power degradation D(S) versus Frequency Offset amount (∆f≠0)
of Maximin algorithm, assuming input SNR=20 dB
26
Average SINR for 20 trials under AWGN channel in the presence of
tone interferences, assuming input SNR=20dB, ∆f=0, M=4 square
array, and ω(0)=[1,0,0,0].
(Maximin algorithm used a convergence parameter of α=0.2)
27
Computational real FLOPs versus omni-directional uniform linear
Array (ULA) Antenna (M)
32
Norm of Weight Vector of Maximin algorithm versus Iterations under
Friendly and Tone interference, assuming input SNR=20dB, ∆f=0,
M=4 square array, ω(0)=[1,0,0,0], and convergence parameter of α=0.2
34
3.3
3.4
3.5
3.6
3.7
3.8
vii
LIST OF TABLES
Table
Page
2.1 Simulation Parameters
3.1
12
Final SINR in dB under Frequency Offset and Tone Interference
(M=4 ULA, ω(0)=[1,0,0,0])
(Maximin Algorithm used a Convergence Parameter of α=0.2)
21
Final SINR in dB under Frequency Offset and Friendly Interference
(M=4 ULA, ω(0)=[1,0,0,0])
(Maximin Algorithm used a Convergence Parameter of α=0.2)
21
3.3 Number of Iterations to Reach SINR within ±0.5dB from Final SINR
under Frequency Offset and Tone Interference (M=4 Square, ∆f=1/(5Tb))
(Maximin Algorithm used a Convergence Parameter of α=0.2)
28
3.4 Number of Iterations to Reach SINR within ±0.5dB from Final SINR
under Frequency Offset and Friendly Interference (M=4 Square, ∆f=1/(5Tb))
(Maximin Algorithm used a Convergence Parameter of α=0.2)
28
3.5 Approximate Operation Count Real FLOPs
29
3.6 Final SINR in dB Versus M when Input SNR=20dB under Tone Interference
(ULA, ∆f=0)
(Maximin Algorithm used a Convergence Parameter of α=0.2)
30
3.7 Final SINR in dB Versus M when Input SNR=20dB under Friendly
Interference (ULA, ∆f=0).
(Maximin Algorithm used a Convergence Parameter of α=0.2)
30
3.8 Computational Cost of Complex Floating Point Operations (FLOPs) Versus
Number of Antenna (M)
31
3.2
viii
CHAPTER 1
INTRODUCTION
1.1
History
The Maximin algorithm is an adaptive-array algorithm that suppresses
interference before it enters the demodulator of a frequency-hopping (FH)
communication system and thereby provides a spatial processing gain that supplements
the inherent processing gain of the frequency hopping system [2,6]. The Maximin
algorithm was named because the desired signal was enhanced and the interference was
suppressed simultaneously. It relies on the basic characteristics of the desired signal
wave form and requires only that the frequency-hopping pattern be known by the
receiver. In this thesis, it was found that the Maximin algorithm shows poor performance
under the frequency offset and friendly interference, i.e., data-modulated wave form.
1.2
Background
Most adaptive algorithms differentiate between the desired signal and the
interfering signals based on the arrival angles of the signals that impinge the antenna array.
Other algorithms make this differentiation based on the maximization of the desired
signal power at the output of the antenna array. Shor [1] demonstrated that the method of
“steepest ascent” could be employed to increase the desired signal power while
differentiating the coherent interferences. Torrieri and Bakhru [2] applied a version of
Shor’s algorithm to an FH communication system and called it Maximin. The Maximin
algorithm was named because the desired signal was enhanced and the interference was
suppressed simultaneously. They proposed a receiver structure operating on two frequency
1
bands—one to estimate the power in the desired signal band and the other to estimate the
noise and interference powers in a frequency band adjacent to the desired signal band.
Maximin is a blind algorithm since it does not require any training sequences, decisiondirected adaptation, or knowledge of the directions of arrival. It was shown that the
Maximin algorithm requires only synchronization of the frequency hop pattern of the
transmitted signal with that of the receiver for it to perform. They demonstrated that the
Maximin has the ability to maximize the desired signal power while simultaneously
suppressing noise and tone interferences.
1.3
Existing Systems and Studies
1.3.1 Maximin Algorithm
The discrete-time vector of complex envelopes of the M antenna outputs after
each one has been dehopped, filtered, and sampled at the output of the baseband filters is
x (i ) = s (i ) + n (i )
(1)
which will be applied to the adaptive filter. Here, s(i ) is the vector of the desired-signal
complex envelopes, and n(i) is the vector of thermal-noise plus interferences complex
envelopes. Also, note that x (i ), s (i ), n (i ) ∈ CM and i denote the sample index.
Treating the complex weight vector ω (i) as a constant during the update period,
the output of the adaptive filter is obtained as
y (i ) = ω x (i ) = y s (i ) + y n (i )
T
where
2
(2)
y s (i ) = ω s (i )
(3)
y n (i ) = ω n (i )
(4)
T
T
and the superscript T denotes the transpose.
Following Proakis [3], the output power of the complex signal component is
defined as
Ps =
1
2
⋅ E [| y s ( i ) | 2 ] = ω R ss ω
†
(5)
where E [⋅] denotes the expected value, and the desired-signal auto-correlation matrix is
defined as
1
Rss = E[s* (i)sT (i)]
2
where the superscript
†
(6)
denotes the conjugate transpose, and * is the complex conjugation.
Similarly, the noise-plus-interference output power is
Pn =
1
2
⋅ E [| y n ( i ) | 2 ] = ω R nn ω
†
(7)
where the noise-plus-interference auto-correlation matrix is defined as
1
Rnn = E[n* (i)nT (i)]
2
(8)
The signal-to-interference-plus-noise ratio (SINR) is given as
P
ω R ω
ρ = s = † ss
Pn ω Rnn ω
†
3
(9)
The SINR provides the performance that the adaptive algorithm seeks. The weight
vector may be decomposed as ω = ω R + jω I , where ω R and ω I are the real and
imaginary parts of ω . The method of the steepest descent that Rao [4] applied to discretetime systems gives rise to
ω ( k + 1) = ω ( k ) + µ ( k )∇ ω J ( k )
(10)
where ∇ ω J (k ) represents the gradient of the cost function J(k) with respect to ω, and k
denotes the weight iteration number and the update index. The parameter µ (k ) is a scalar
sequence that controls the rate of change of the weight vector. If ρ(k) is regarded as the cost
function, then equation (10) becomes
ω ( k + 1) = ω ( k ) + µ ( k )∇ ω ρ ( k )
(11)
where
∇ ω ρ (k ) =
=
=
∂ρ
∂ω
∂
∂ω
(ω R ss ω )(ω R nn ω ) − (ω R ss ω )
H
H
H
∂
∂ω
(ω R n n ω )
H
(ω R n n ω )(ω R n n ω )
H
∂
∂ω
(ω R ss ω )
H
(ω R n n ω )
H
H
(ω R ss ω )
H
−
∂
∂ω
(ω R nn ω )
H
(ω R nn ω )(ω R n n ω )
H
H
(12)
ω R ω
2 R ss ω
(ω R ss ω ) ⋅ 2 R nn ω
=
× H ss −
H
H
H
(ω R nn ω ) ω R ss ω ( ω R n n ω )(ω R n n ω )
H
=
ω H R ss ω ⎡ R ss ω
×⎢
−
ω H R n n ω ⎣ 12 ω H R ss ω
H
R nn ω ⎤
⎥
H
1
R nn ω ⎦
2 ω
⎡ R ( k )ω ( k ) R nn ( k )ω ( k ) ⎤
= 2 ρ ( k ) ⎢ ss
−
⎥
Ps ( k )
Pn ( k )
⎣
⎦
and Rss(k), Rnn(k), Ps(k), and Pn(k) vary with every update in practice and need to be
estimated. Hence, the Maximin algorithm requires the estimation of Rnn, which is unknown
4
in general. Furthermore, Rss is also unknown in the absence of information about the
direction of the desired signal. The desired-signal component of the adaptive filter output
can be decomposed as
y s (i ) = y sR (i ) + j ⋅ y sI (i )
(13)
where y sR (i ) and ysI (i ) are the real and imaginary parts of y s (i ), respectively. If y s (i ) is
modeled as a zero-mean, wide-sense stationary process, then the autocorrelations of y sR (i )
and ysI (i ) are identical. As a result, equations (3), (4), and (13) imply that
⎡1
⎤
E [ s * ( i ) y sR ( i )] = E ⎢ s * ( i ) s T ( i )ω ⎥
⎣2
⎦
=
1
E ⎡⎣ s * ( i ) s T ( i ) ⎤⎦ ω
2
(14)
This equation and equation (6) yield
Rss (k )ω (k ) = E[ s* (i ) ysR (i )]
(15)
Similarly, if the interference arriving at each antenna is a delayed version of interference
arriving at antenna 1, and if the thermal noise is independent, then
Rnn (k )ω (k ) = E[n* (i) ynR (i)]
(16)
By substituting equations (15) and (16) into (12),
[
] [
]
⎧ E s * y sR E n * y nR ⎫
∇ω ρ = 2ρ ⎨
−
⎬
Pn ⎭
⎩ PS
5
(17)
Let s* ysR (k ) and n* ynR (k ) denote estimates at iteration k of the desired-signal correlation
vector E[ s* ysR ] and the noise-plus-interference correlation vector E[n* ynR ] . The scalar
sequence is
µ (k ) =
where ρˆ =
α
2
2(ρˆ ( k ) )
(18)
PˆS (k )
. PˆS (k ) is the estimate of PS (k ) , and Pˆn (k ) is the estimate of Pn (k ) .
ˆ
P (k )
n
Therefore, the Maximin algorithm can be defined as
ω ( k + 1) = ω ( k ) +
α ⎡ s * y sR ( k ) n * y nR ( k ) ⎤
−
⎢
⎥
ρˆ ( k ) ⎢⎣ PˆS ( k )
Pˆn ( k ) ⎥⎦
(19)
Suitable estimates for each component are as below :
Desired-signal correlation vector: s* ysR (k ) =
1 km
x* (i ) ysR (i )
∑
m i =( k −1) m +1
Noise-plus-interference correlation vector: n* ynR (k ) =
1 km
nˆ * (i ) yˆ nR (i )
∑
m i =( k −1) m +1
(20)
(21)
1 km
Desired-signal power: PˆS (k ) =
y 2 sR (i )
∑
m i =( k −1) m +1
(22)
1 km
2
(i )
Noise-plus-interference power: Pˆn (k ) =
yˆ nR
∑
m i =( k −1) m +1
(23)
If the adaptation constant (α ) is approximately selected, the convergence analysis will then
show the effectiveness and robustness of the Maximin algorithm.
6
Lastly,
s * y sR (k )
can be interpreted as the signal term of the algorithm to direct the array
PˆS (k )
beam toward the desired-signal, and
n* ynR (k )
is the noise term that enables the
Pˆn (k )
algorithm to suppress the interference signals.
1.3.2 MOSTLE
Balakrishnan et al. [5] proposed the technique “MOSTLE,” which stands for
Maximin algOrithm with STep-Length Estimation. MOSTLE updates step-length
parameter µ (k ) as well as updated weight vector, using the estimate of desired-signal
autocorrelation matrix Rˆ ss (k ) and the estimate of noise-plus-interference autocorrelation
matrix Rˆ nn (k ) .
If the (M×m) matrix X of the received signal does not have a full rank where m is
the number of snapshots, or if the rank is unknown, the singular value decomposition (SVD)
technique is usually used to decompose a matrix into several component matrices and to
show the orthogonal property [8]. By using the SVD, Rˆ ss (k ) and Rˆ nn (k ) , defined earlier,
can be found as follows. The SVD of X gives
X = S X ⋅ ∑ X ⋅VX
where S X ∈
M×M
, ∑X ∈
M×m
, and VX ∈
m×m
(24)
, with S X , VX being unitary and ∑ X
being diagonal. Defining the estimate of Rxx as
m
Rˆ xx (k ) = ∑ x(i )x† (i )
i =1
7
(25)
then, the above equation can be rewritten for the number of antenna array elements M,
e.g., M=4 as
†
†
†
Rˆ xx (k ) = XX † = ( S X ⋅ ∑ X ⋅V X )(V X ⋅ ∑ X ⋅S X ) = S X ⋅ ∑ 2X ⋅S X
⎡ s11 s12
⎢s
s
= ⎢ 21 22
⎢s31 s32
⎢
⎣s 41 s 42
s13
s 23
s33
s 43
s14 ⎤⎡Σ11 0
s 24 ⎥⎢ 0 Σ 22
⎥⎢
s34 ⎥⎢ 0
0
⎥⎢
s 44 ⎦⎣ 0
0
0
0
Σ 33
0
0 ⎤
0 ⎥
⎥
0 ⎥
⎥
Σ 44 ⎦
(26)
2
⎡ s11 s12
⎢s
s
⎢ 21 22
⎢s31 s32
⎢
⎣s 41 s 42
s13
s 23
s33
s 43
s14 ⎤
s 24 ⎥
⎥
s34 ⎥
⎥
s 44 ⎦
†
.
In a similar way, the estimation of Rnn is
†
†
†
Rˆ nn (k ) = NN † = ( S N ⋅ ∑ N ⋅VN )(VN ⋅ ∑ N ⋅S N ) = S N ⋅ ∑ 2N ⋅S N
(27)
where N = [n(1),..., n( m )] = S N ⋅ ∑ N ⋅VN , with S N , ∑ N , and VN defined in a similar
manner. From equation (1),
Rˆ ss (k ) = Rˆ xx (k ) − Rˆ nn (k )
(28)
where Rˆ ss (k ) is the estimate of the signal auto-correlation matrix during the kth update.
We define a new cost function, f ( µ ( k )) , such that
~
P
f ( µ (k )) = ~s
Pn
(29)
~
Ps = ω † (k + 1) Rˆ ss (k )ω (k + 1)
(30)
~
Pn = ω † (k + 1) Rˆ nn (k )ω (k + 1)
(31)
with
where x̂ denotes the estimate of a quantity x .
8
The process of finding µ (k ) among all µ ∈
is called the line search. Rewriting
equation (29) with respect to the step-length parameter µ (k ) , we obtain
f ( µ (k )) =
A1µ 2 (k ) + B1µ (k ) + C1
A2 µ 2 (k ) + B2 µ (k ) + C2
(32)
Observe that f ( µ ( k )) is scalar valued with critical points that can be obtained by
differentiating with respect to µ (k ) yielding
− B ± B 2 − 4 AC
µ (k ) =
2A
(33)
where Aq, Bq, and Cq for q = 1,2 of equation (32) as
Aq = ρˆ 2 (k ) z † (k ) Rq z (k )
Bq = ρˆ (k ) ( z † (k ) Rqω (k ) + ω † (k ) Rq z (k ) )
(34)
Cq = ω † (k ) Rqω (k )
where R1 = Rˆ ss and R2 = Rˆ nn , the signal and noise autocovariance matrices, and
⎡ Rˆ ( k )ω ( k ) Rˆ nn ( k )ω ( k ) ⎤
−
z ( k ) = ∇ ω ρˆ (k) = ⎢ ss
⎥
ˆ (k )
P
Pˆn ( k ) ⎦
s
⎣
(35)
Setting the derivative of equation (32) with respect to µ (k ) to zero, we obtain
Aµ 2 (k ) + Bµ (k ) + C = 0
(36)
where
A = A1 B2 − A2 B1 , B = A1C2 − A2 C1 , and C = B1C2 − B2C1
9
(37)
We observed from Balakrishnan et al. [5, 10] that the sequence { µ (k ) } converges to
zero as k → ∞ . Therefore, the MOSTLE can be defined as
⎡ Rˆ ss ( k )ω ( k ) Rˆ nn ( k )ω ( k ) ⎤
−
⎥
ˆ (k )
P
Pˆn ( k ) ⎦
s
⎣
ω ( k + 1) = ω ( k ) + µ ( k + 1) ρˆ ( k ) ⎢
1.4
(38)
Issues
The Maximin algorithm has not been tested under the frequency offset ∆f of a data
signal wave form. In practice, ∆f is typically nonzero. It was reported by Balakrishnan et
al. [10] that the performance of the Maximin algorithm is drastically degraded in the
presence of friendly interferences, i.e., when the interferences are also users in the same
system. Hence, MOSTLE has been proposed to enhance the performance of the Maximin
algorithm by updating the step length (the adaptation parameter) based on a maximization
criterion instead of retaining it as a constant [2,6]. MOSTLE shows significant
improvement under the friendly interferences environment. Still, MOSTLE has not been
tested under the frequency offset environment yet.
1.5
Goal
This thesis aimed to analytically study the frequency offset effects on both the
Maximin algorithms and MOSTLE. A data-modulated interferences environment was also
considered. Simulation results will be presented.
In Chapter 2, the basic system model and simulation parameters are introduced.
Chapter 3 will show the differences between the Maximin algorithm and MOSTLE under
various environments. In Chapters 4 and 5, contributions of this thesis are stated and
conclusions are made, respectively.
10
CHAPTER 2
SYSTEM MODEL
2.1
Basic Configuration
Figure 2.1 shows the frequency-hopping (FH) system to be considered [2,10]. The
FH replica generated by a synchronized local frequency synthesizer removes the
frequency hoppings in the received signal. After dehopping, the received signal is filtered
to prevent aliasing and to reject noise. Then the received signal is processed in an
intermediate frequency (IF) range, where it is sampled at a rate prescribed in Table 2.1.
Lastly, the sampled values of the complex envelope of the dehopped signal are applied to
the adaptive filter.
Dehopped
Signal
Antenna 1
Front End
Device
IF Samples
IF Filter
ADC
Baseband
Converter
Baseband
Filter
X1R
}
X1
X1I
FH Replica
Moniter
Filter
n1R
}
n1I
X
{
X1
.
.
RXX
XM
W1
Weight Processor
(New Approach)
n
{
}W
WM
n1
..
.
.
Rnn
nM
Figure. 2.1. Block diagram of a typical FH system with array antennas.
11
n1
2.2
Simulation Parameters
The edge length is equal to one or two times the wavelength corresponding to the
center frequency. Each interference source is in the plane of the array, and all the signals
are assumed to arrive as plane waves. Refer to Table 2.1 for more detail.
TABLE 2.1
SIMULATION PARAMETERS
Parameters
Antenna array
Array edge length (d)
DOA of desired user
DOA of interferences
Center frequency
Hop dwell time (TH )
Data rate
Frequency modulation
Signal-to-noise-ratio
Hopping bandwidth
Number of frequency-hopping channels
Monitor filter offset (fo)
Sampling rate
Weight iterations per hop
Total interference-to-signal-ratio
Interference type
Number of hops per experiment
Fading model
Vehicular speed
Value
Square with M=4 omni antennas at the
vertices, or a uniform linear array with M
omni antennas
λ
0°
40°, 70°
3 GHz
1 ms
100 kbps
Minimum shift-keying (MSK)
20 dB per antenna per channel
30 MHz or 300 MHz
N FHC = 300 or 3000
200 KHz
800-kilo samples per second
8
10 N FHC
Tones and MSK signals in all channels
50
Jakes
50 km/h
An FH signal has a randomly chosen carrier frequency within the hopping band and
is modulated by binary minimum shift-keying (MSK). The sequence of data bits is
randomly generated at the rate of 100 kbps with a hop dwell time of 1 ms. The thermal
noise at the output of each IF filter following an antenna is modeled as filtered white
12
Gaussian noise. The ratio of signal power to thermal noise power (SNR) is defined
relative to a single-frequency channel and is set at 20 dB. Since the FH signal is
assumed to be non-coherent in carrier phase from one hop to another, each FH pulse has
an initial phase that is uniformly distributed over the interval [−π , π ] . The hopping
frequencies are separated by 100 kHz and spread uniformly over the total hopping band,
which occupies either 30 or 300 MHz. Thus, there are either 300 or 3,000 contiguous
frequency channels. The total interference power due to all interference signals is equal to
ten times the number of frequency channels, which maintains a constant value of
interference power per frequency channel. Thus, the signal-to-interference ratio ( ρ1 ) is
slightly less than -10 dB. Here, we consider the cases when the interferences are toneand MSK-modulated.
Perfect synchronization between the frequency-hopping signals at all antenna
outputs and the frequency synthesizer in the receiver is assumed. The baseband and monitor
filters are modeled as digital eight-pole Butterworth filters with 3-dB bandwidths equal to
100 kHz, which is the bandwidth of a frequency channel. The monitor filter has a single
passband with center frequency of f 0 = 200 kHz and a bandwidth equal to that of the
baseband filter. The sampling rate of the analog-to-digital converter (ADC) is 800-kilo
samples per second. There are eight weight iterations per hop, which means 100 samples
per weight iteration. In other words, the number of samples per update is m=100. An
array of M=4 omni-directional antennas located at the vertices of a square and a uniform
linear array (ULA) are considered. The symmetry of the vertices of a square allows full
azimuth coverage. The edge length is equal to one or two times the wavelength
corresponding to the center frequency. Each interference source is in the plane of the array,
13
and all signals are assumed to arrive as plane waves. Refer to Figure 2.2 and 2.3 for more
detail. The arrival time delay differences between elements 1 and others (2,3, and 4) are
denoted by τ 1 , τ 2 , and τ 3 , respectively, where element 1 is the reference.
d si
nø
ø
co s π
(
4 − ø)
2
ø
ø
π
4
M=4
d co
2d
d
sø
2d
1
3
d
Adaptive System
ø
M=4
d
3
d
dsi
nø
2ds
inø
3ds
inø
Figure. 2.2. Square with M=4 omni antennas at the vertices.
ø
2
d
1
Adaptive System
Figure. 2.3. Uniform linear array (ULA) with M omni antennas.
14
Table 2.1, shown earlier, gave an array of square with M=4 omni antennas at the vertices
and a uniform linear array (ULA) with M omni antennas. The number of samples per
update is m=100.
Define the data matrix X using the output of the baseband filters as
⎡ x1,1 LL x1,m ⎤
⎢
⎥
X = [ x(1),..., x(m)] = ⎢ M LL
M ⎥
⎢⎣ x M ,1 LL x M ,m ⎥⎦
(39)
where x(i) ∈ CM is defined in equation (1) and i=1,..., m, and m is the number of
observations per iteration.
15
CHAPTER 3
SIMULATIONS
3.1 Frequency Offset to MSK Signal
3.1.1 Introducing Frequency Offset
The FH signal has a randomly chosen carrier frequency within the hopping band
and is modulated by binary minimum shift-keying. A small offset frequency (=∆f) is
introduced to the MSK wave form to be more realistic. Refer to Xiong [9] for more detail.
I(t)
A cos
a(t)=(1,-1,1,-1,-1,...)
S/P
πt
2Tb
cos 2π f c t
+
s(t)
Σ
+
T
Q(t)
A sin
πt
2Tb
sin 2π f c t
Figure. 3.1. Minimum shift-keying (MSK) data modulation.
The MSK signal with the frequency offsets can be written as
s(t ) = Re [ν (t ) exp( j 2π ( fc + ∆f )t )]
= Re [ν (t ) exp( j 2π∆ft ) ⋅ exp( j 2π fct )]
= Re [ v%(t ) ⋅ exp( j 2π fct )]
16
(40)
where ν (t ) is the equivalent low pass signal, which can be written as
v(t ) = A(a I (t ) cos
πt
2Tb
+ jaQ (t ) sin
πt
2Tb
)
(41)
and ν~ (t ) is the equivalent low pass signal under the frequency offset which can be written
as
v% (t ) = Av(t ) exp( j 2π∆ft )
= A(vR (t ) + jvI (t ))(cos 2π∆ft + j sin 2π∆ft )
where ∆f =
(42)
1
(k = 0, 0.5, 1, 1.5, 2, and 5)
kTb
Therefore,
v%(t ) = Av(t )exp( j 2π∆ft )
⎛
πt
πt ⎞
= A⎜ aI (t )cos
+ jaQ (t )sin
⎟ ( cos 2π∆ft + j sin 2π∆ft )
T
T
2
2
b
b ⎠
⎝
⎧⎪⎛
⎞
πt
πt
= A ⎨⎜ aI (t )cos
cos 2π∆ft − aQ (t )sin
sin 2π∆ft ⎟
2Tb
2Tb
⎠
⎩⎪⎝
(43)
⎛
⎞⎪⎫
πt
πt
+ j ⎜ aQ (t )sin
cos 2π∆ft + aI (t )cos
sin 2π∆ft ⎟⎬
2Tb
2Tb
⎝
⎠⎭⎪
3.1.2 Effects of Frequency Offsets
Figures 3.2 and 3.3 show the average signal-to-interference-plus-noise power ratio
in equation (9) for 20 trials under an AWGN channel in the presence of tone interferences
where the input SNR=20 dB, M=4 square array, and ω(0)=[1,0,0,0]. A convergence
parameter of α=0.2 is used for the Maximin algorithm, and frequency offsets are ∆f=0 and
∆f=1/(1.5Tb), respectively.
17
Comparing Figures 3.2 and 3.3, it is observed that the frequency offset
(∆f=1/(1.5Tb)) can cause degradation in the final SINR of about 2.5 dB for both
algorithms. However, it is also observed that the frequency offset does not degrade the
convergence speed of MOSTLE, but it does degrade to that of the Maximin algorithm
noticeably, in the case of frequency offset ∆f>>1/(1.5Tb), as shown in Figure 3.4.
Figure. 3.2. Average SINR for 20 trials under AWGN channel in the presence of tone
interferences and zero frequency offset (∆f=0), assuming input SNR=20 dB, M=4 square
array and ω(0)=[1,0,0,0] (Maximin algorithm used a convergence parameter of α=0.2)
18
Figure. 3.3. Average SINR for 20 trials under AWGN channel in the presence of tone
interferences and frequency offset ∆f=1/(1.5Tb), assuming input SNR=20 dB, M=4 square
array and ω(0)=[1,0,0,0] (Maximin algorithm used a convergence parameter of α=0.2)
Figure 3.4 shows the average SINR for 20 trials under an AWGN channel in the
presence of tone interferences and frequency offset (∆f=1/(1Tb)). It is also assumed that
the input SNR=20 dB, M=4 square array, ω(0)=[1,0,0,0], and convergence parameter of
α=0.2 is used.
19
Figure. 3.4. Average SINR for 20 trials under AWGN channel in the presence of tone
interferences and frequency offset ∆f=1/(1Tb), assuming input SNR=20 dB, M=4 square
array and ω(0)=[1,0,0,0] (Maximin algorithm used a convergence parameter of α=0.2)
Tables 3.1 and 3.2 list the final SINR in dB under tone and friendly-user
interference, respectively, for various frequency offsets. Here, a uniform linear array of
M=4 elements and antenna element spacing equal to a half wavelength of the desired signal
were used. Also an AWGN channel with input SNR=20 dB, and ω(0)=[1,0,0,0] were
assumed. The Maximin algorithm used a convergence parameter of α=0.2. These tables
show that the SINR is degraded rapidly when the frequency offset ( ∆f ) is larger than
1/(1.5Tb).
20
TABLE 3.1
FINAL SINR IN DB UNDER FREQUENCY OFFSET AND TONE INTERFERENCE
(M=4 ULA, ω(0)=[1,0,0,0]) (MAXIMIN ALGORITHM USED A CONVERGENCE
PARAMETER OF α=0.2)
∆f
MAXIMIN
MAXIMIN
SVD
MOSTLE
0
24.71 dB
1/(5Tb)
23.97 dB
1/(2Tb)
23.95 dB
1/(1.5Tb)
22.15 dB
1/Tb
11.10 dB
1/(0.5Tb)
0.0024 dB
24.72 dB
24.13 dB
24.11 dB
22.30 dB
14.55 dB
7.29 dB
24.84 dB
24.29 dB
24.25 dB
22.50 dB
15.17 dB
7.98 dB
TABLE 3.2
FINAL SINR IN DB UNDER FREQUENCY OFFSET AND FRIENDLY
INTERFERENCE (M=4 ULA, ω(0)=[1,0,0,0]) (MAXIMIN ALGORITHM USED A
CONVERGENCE PARAMETER OF α=0.2)
∆f
MAXIMIN
MAXIMIN
SVD
MOSTLE
0
1.02 dB
1/(5Tb)
0.93 dB
1/(2Tb)
0.96 dB
1/(1.5Tb)
1.00 dB
1/Tb
0.97 dB
1/(0.5Tb)
0.96 dB
13.50dB
13.20 dB
13.05 dB
12.85 dB
11.38 dB
7.25 dB
25.24dB
24.70 dB
24.46 dB
22.78 dB
16.41 dB
9.50 dB
The monitor filter plays a role as a band-rejection filter with two passbands
symmetrically located. And, because it has a passband offset by f o (= 200kHz ) from the
baseband filter, there is negligible spillover of the desired signal into the output of the
monitor filter for zero-frequency offset. When the frequency offset is introduced to the
MSK modulator, the power spectral density (PSD) of the modulated data signal shifts about
the same amount to the frequency offset. Therefore, the introduced nonzero frequency
offset tends to diminish the desired signal power, which causes the steady-state SINR to
fall. Refer to Proakis [3] for more detail. Defining s(t ) to be a bandpass signal and ν (t ) to
be a equivalent lowpass signal, then
21
⎧ πt
⎪sin 2T
∞
b
⎪
v(t ) = ∑[I 2n g (t − 2nTb ) − jI 2n+1 g (t − 2nTb − Tb )], g (t ) = ⎨
n=−∞
⎪ 0
⎪
⎩
, 0 ≤ t ≤ 2Tb
(44)
,
else
where I 2 n is the even bit, and I 2 n+1 is the odd bit. Then,
s(t ) = Re[ν (t ) exp( j 2πf C t )]
(45)
and
S ( f ) ∆f = Re [ν (t ) ⋅ exp( j 2π∆ft ) ⋅ exp( j 2π fCt )]
= Re [ v%(t ) ⋅ exp( j 2π fCt )]
(46)
where v~(t ) = ν (t ) exp(j 2π∆ft)
The autocorrelation function of v~ ( t ) is
Rv% (τ ) = E ⎡⎣v%(t) ⋅ v%*(t −τ )⎤⎦
= E ⎡⎣ν (t)exp( j2π∆ft)ν*(t −τ )exp(− j2π∆f (t −τ ))⎤⎦
= E ⎡⎣ν (t)ν*(t −τ )exp( j2π∆f τ )⎤⎦
(47)
= Rv (τ )exp( j2π∆f τ )
Therefore, the power spectral density of v% (t ) is
Φv% ( f ) = Fourier Transform[ Rv% (τ )]
= Fourier Transform[ Rv (τ )exp( j 2π∆f τ )]
= Fourier Transform[ Rv (τ )] exp( j 2π∆f τ )
= Φv ( f − ∆f )
22
(48)
The PSD of ν (t ) can be written as
Φv ( f ) =
1
2
G( f )
Tb
2
1 ⎛ 4Tb ⎞ cos2 2π Tb f
= ⎜
⎟
Tb ⎝ π ⎠ (1 −16T 2 f 2 )2
b
=
(49)
16Tb cos2 2π Tb f
π 2 (1 −16Tb2 f 2 )2
And
G( f ) = Fourier Transform[ g (t )]
∞
= ∫ g (t )exp(− j 2π ft )dt
(50)
−∞
2Tb
⎛ πt ⎞
= ∫ sin ⎜
⎟ exp(− j 2π ft )dt
0
⎝ 2Tb ⎠
Here, using trigonometric identity, sin x =
G( f ) = ∫
2Tb
0
exp( jx) − exp(− jx)
2j
⎛ πt ⎞
⎛
1 ⎛
πt ⎞⎞
⎜⎜ exp ⎜ j
⎟ − exp ⎜ − j
⎟ ⎟⎟ exp(− j 2π ft )dt
2j⎝
2
T
2
T
b ⎠
b ⎠⎠
⎝
⎝
4T cos 2π Tb f
exp(− j 2π fTb )
= b
π 1 − 16Tb 2 f 2
(51)
Therefore, the PSD of v% (t ) is
Φv% ( f ) =
2
16Tb cos 2π Tb ( f − ∆f )
(
π 2 1 −16T 2 ( f − ∆f )2
b
)
2
exp(− j 2π ( f − ∆f )Tb )
(52)
It is analytically shown in equation (53) how the approximate steady-state SINR is
degraded due to the frequency offset. The SINR ∆f represents the degraded final SINR due
to ∆f.
23
⎛ S ∆f ⎞
SINR∆f = 10log10 ⎜
∆f ⎟
⎝ (I + N ) ⎠
(53)
⎛ S/D(S) ⎞
=10log10 ⎜
⎟
⎝ (I+N) ⋅ D(S) ⎠
where D(S ) is the desired user MSK signal power degradation due to the PSD shift which
can be written as
2
1
T
D(S ) = ∫ b1 Φv% ( f ) df
−T
b
=∫
(54)
2
16Tb cos 2π Tb ( f − ∆f )
1
Tb
− T1
b
(
π 2 1 −16T 2 ( f − ∆f )2
b
)
2
df
Note that in equation (50), signal power is reduced by factor D(S), but the interferenceplus-noise power is increased by factor D(S) because the monitor filter is adjacent to the
baseband signal filter and the lost signal power is captured by the monitor filter. The
steady-state SINR of the Maximin algorithm at zero frequency offset is 24.71dB, as shown
in Table 3.1. And, SNR=20dB, which implies that N=10-2S.
Hence,
SINR ∆f =0 =
=
S
I +N
S
I + S ⋅10−2
(55)
= 24.71dB
From equation (55), the interference power can be found as I = 10−2.471 ⋅ (1 − 10−0.471 )⋅ S .
Therefore, the SINR ∆f can be written as
24
⎛
⎞
S / D(S )
⎟
SINR∆f = 10log10 ⎜ −2.471
−0.471
−2
⎜ (10
⎟
⋅
−
⋅
+
⋅
⋅
1
10
S
S
10
)
D
(
S
)
(
)
⎝
⎠
⎛
⎞
1/ D(S )
⎟
= 10log10 ⎜ −2.471
−0.471
−2
⎜ (10
⎟
⋅
−
+
⋅
D
S
1
10
10
)
(
)
(
)
⎝
⎠
(56)
⎛
⎞
1
⎟
= 10log10 ⎜ −2.471
−0.471
−2
2
⎜ (10
⎟
⋅
−
+
⋅
D
S
1
10
10
)
(
)
(
)
⎝
⎠
Hence, with equation (53) it can be explained why Table 3.1 shows that the
frequency offset does not degrade all three schemes under tone interference when ∆f is
smaller than 1/(1.5Tb). However, the final SINRs become unacceptably low when ∆f is
larger than 1/(1.5Tb) because the ∆f causes the loss of the modulated data signal power and
interference-plus-noise power is increased simultaneously. Figure 3.5 shows that the signal
power degradation in dB for the Maximin algorithm is 0, 0.0047, 0.42763, 1.4012, and
6.6009 at frequency offset at ∆f = 0, 1/5Tb, 1/2Tb, 1/1.5Tb, and 1/Tb, respectively. Also the
corresponding SINR ∆f in dB values are 24.71, 24.7, 23.8547, 22.4296, and 11.5056,
respectively. Table 3.2 shows that both the Maximin and Maximin with SVD algorithms
fail when friendly interference and frequency offset are simultaneously active. However,
MOSTLE shows robust performance even under these worse environments.
25
Signal Power Degradation D(S)
7
6
5
4
3
2
1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Normalized Frequency Offset
Figure. 3.5. Signal power degradation D(S) versus frequency offset amount ( ∆f ≠ 0 ) of
Maximin algorithm, assuming input SNR=20 dB.
3.2 Initial Weight Vectors
We observed in Figure 3.2 that the MOSTLE converges faster than the Maximin
algorithm for ω(0)=[1,0,0,0], and there is no performance gain for the MOSTLE except
the faster convergence under the tone interference. Figure 3.6 shows performance
comparisons using the same simulation parameters as in Figure 3.2 except friendly
interference or data-modulated signals from other users instead of tone interference and
frequency offset ∆f=1/(1.5Tb). Also, the Maximin algorithm is modified to include
autocorrelation computations, via SVD, so that it could be compared with Maximin and
MOSTLE.
26
30
Average SINR(dB)
25
20
15
10
Maximin
Maximin w/ SVD
Mostle
5
0
0
50
100
150
200
250
300
350
400
Iterations
Figure. 3.6. Average SINR for 20 trials under AWGN channel in the presence of friendly
interferences, assuming input SNR=20 dB, ∆f=1/1.5Tb, M=4 square array, and
ω(0)=[1,0,0,0] (Maximin algorithm used a convergence parameter of α=0.2)
Tables 3.3 and 3.4 show that the average number of iterations to reach a SINR the
first time within ±0.5 dB from the final SINR under tone and friendly interference,
respectively. Two initial weights, ω(0)=[1,0,0,0] and ω(0)=[1,1,1,1], are considered with a
square array of M=4 elements, an AWGN channel, input SNR=20 dB, and ∆f=1/(5Tb). The
Maximin algorithm uses a convergence parameter of α=0.2. These tables show that the
convergence speed of Maximin can be the fastest among the three schemes under tone
interference when ω(0) is [1,1,1,1].
27
TABLE 3.3
NUMBER OF ITERATIONS TO REACH SINR WITHIN ±0.5dB FROM FINAL SINR
UNDER FREQUENCY OFFSET AND TONE INTERFERENCE (M=4 SQUARE,
∆f=1/(5Tb)) (MAXIMIN ALGORITHM USED CONVERGENCE PARAMETER OF
α=0.2)
ω(0)
MAXIMIN
MAXIMIN SVD
MOSTLE
[1,0,0,0]
149
44
44
[1,1,1,1]
7
34
31
TABLE 3.4
NUMBER OF ITERATIONS TO REACH SINR WITHIN ±0.5dB FROM FINAL SINR
UNDER FREQUENCY OFFSET AND FRIENDLY INTERFERENCE (M=4 SQUARE,
∆f=1/(5Tb)) (MAXIMIN ALGORITHM USED A CONVERGENCE PARAMETER OF
α=0.2)
ω(0)
MAXIMIN
[1,0,0,0]
20
1503
MAXIMIN SVD
(2,800 Iterations/Trial)
MOSTLE
80
[1,1,1,1]
35
176
41
However, the final SINR values are unacceptable under the friendly interference
environment, even if ω(0)=[1,1,1,1] is used. In other words, the final SINRs of the
Maximin algorithm under a friendly interference are around 1 dB and close to those shown
in Figure 3.6, which were obtained with ω(0)=[1,0,0,0]. The Maximin algorithm is
sensitive to initial weight ω(0) and fails under a friendly users environment. Note from
Table 3.4 that even though the Maximin with SVD algorithm shows the worst convergence
speed among the three schemes under the friendly interference environment, it can be
converged to steady-state by using SVD. Also, the corresponding average number of
iterations that reach a SINR within ±0.5 dB from the final SINR is 1,503, when
ω(0)=[1,0,0,0] is used. These results also show that the MOSTLE is robust in the presence
28
of friendly interferences, while the Maximin algorithm suffers severely. Furthermore, the
Maximin algorithm with SVD computations fairs better but still falls behind the MOSTLE.
3.3
Computational Complexity
The total real computational cost of µ(k) in equation (33), which involves Aq, Bq,
and Cq, where q=1&2, are 2 ( Aq + B q + C q ) = 2 ( M 2 + M ) + 2 ( M ) = 2 M 2 + 4 M .
MOSTLE, the Maximin with SVD, and the Maximin require real floating point operations
proportional to 24M3+6M2+6M, 24M3+4M2+2M, and 2mM+2m per iteration. Table 3.5,
referred to by Balakrishnan et al. [10], shows the number of real computational FLOPs per
iteration.
TABLE 3.5
APPROXIMATE OPERATION COUNT REAL FLOPs
CRITERION
MOSTLE
MAXIMIN W/ SVD
MAXIMIN
SVD ( XX † )
12M3
12M3
-
SVD ( NN † )
12M3
12M3
-
R ss ( k )ω ( k )
2M2
2M2
mM
Rnn ( k )ω ( k )
2M2
2M2
mM
Pˆs ( k )
M
M
M
Pˆn ( k )
M
M
M
µ (k )
2M2+4M
-
-
TOTAL
24M3+6M2+6M
24M3+4M2+2M
2mM+2m
29
3.4 Increase of Antennas
Tables 3.6 and 3.7 list the final SINR in dB for various numbers of antenna
elements M. Here, the input SNR = 20 dB, tone and friendly interference, a ULA of M
elopements, an AWGN channel, and ∆f=0 are considered. And the Maximin algorithm uses
a convergence parameter of α=0.2.
TABLE 3.6
FINAL SINR IN dB VERSUS M WHEN INPUT SNR=20dB UNDER TONE
INTERFERENCE (ULA, ∆f=0) (MAXIMIN ALGORITHM USED A CONVERGENCE
PARAMETER OF α=0.2)
M
MAXIMIN
MAXIMIN SVD
MOSTLE
2
3.78
13.39
17.38
4
24.71
24.72
24.84
6
26.04
26.74
26.49
8
27.69
26.41
26.19
TABLE 3.7
FINAL SINR IN dB VERSUS M WHEN INPUT SNR=20dB UNDER FRIENDLY
INTERFERENCE (ULA, ∆f=0) (MAXIMIN ALGORITHM USED A CONVERGENCE
PARAMETER OF α=0.2)
M
MAXIMIN
MAXIMIN SVD
MOSTLE
2
0.69
3.73
1.30
4
1.02
13.50
25.24
6
0.89
25.97
26.51
8
1.0249
26.048
26.602
Table 3.6 shows that performance of all three schemes improves as M increases
under tone interference. In addition, Table 3.7 shows that the Maximin algorithm fails
under friendly interference, even if M increases. However, performance of the MOSTLE
and Maximin with SVD algorithms improves as M increases, even under friendly
interference. Table 3.8 shows that the computational cost of real floating point operations
versus the number of antenna elements.
30
TABLE 3.8
COMPUTATIONAL COST OF REAL FLOATING POINT OPERATIONS (FLOPs)
VERSUS NUMBER OF ANTENNA (M)
M
MAXIMIN
MAXIMIN SVD
MOSTLE
2
600
212
228
4
1,000
1,608
1,656
6
1,400
5,340
5,436
8
1,800
12,560
12,720
This result indicates that the MOSTLE is numerically inexpensive when the
number of antenna array of elements is small, e.g., M≤4, but it becomes expensive
when M>>4 compared to the Maximin algorithm. Figure 3.7 shows the total number of
FLOPs versus the number of antenna elements M. MOSTLE requires computationally
intensive per iteration, but the MOSTLE is robust even when the interferences are spaced
very close to the desired user that is friendly. For futher results, refer to Ref [5,10]. For a
trade-off analysis between performance and complexity, e.g., Figure. 3.7, the simulation
results listed in Tables 3.3 and 3.4, were used. They show the number of iterations to reach
a SINR the first time within ±0.5 dB from the final SINR for each of three algorithms.
Therefore, these can be used for counting the total number of FLOPs to reach a steady-state
SINR value, which is the number of iterations multiplied by the number of FLOPs per
iteration. The number of FLOPs per iteration can be calculated from Table 3.5 for a given
M. Then, the total number of FLOPs versus M can be plotted as shown in Figure. 3.7.
However, this comparative analysis does not fairly indicate a trade-off between
performance and complexity because each algorithm yields different SINR values, i.e.,
different performance. For example, as indicated from Table 3.7, when M=4, the final
SINR values are 1.02 dB, 13.50 dB, and 25.24 dB for the Maximin, Maximin with SVD,
and MOSTLE algorithm, respectively.
31
Total Computational Multiplication
14000
12000
Maximin
Maximin w/ SVD
Mostle
10000
8000
6000
4000
2000
0
1
2
3
4
5
6
7
8
9
Number of Antenna(M)
Figure. 3.7. Computational real FLOPs versus omni-directional uniform linear array (ULA)
antenna (M).
The Maximin algorithm cannot be used in this situation because its final SINR is so
low. Even with an infinite number of FLOPs, the Maximin algorithm won’t reach the
MOSTLE’s final SINR under this environment. Therefore, it is impossible to compare the
total FLOPs of Maximin with that of MOSTLE at a reasonably good performance.
3.5 Maximin Algorithm under Different Interference
3.5.1 Tone Interference
Figure 3.2 shows that the Maximin algorithm performs fast convergence under tone
interference. The monitor filter is a band-rejection filter with two passbands and has the
same bandwidth with a baseband filter. The monitor filter allows the adaptive filter to
32
monitor the interference that will be present in the baseband filter. Whenever tone
interference is observed at the output of the monitor filter, the adaptive weights have small
value ( ω < 1) and are changed to cancel the interference. The output power of the complex
signal component ( Ps = ω † Rssω ) is gradually decreased. The noise-plus-interference
output power ( Pn = ω † Rnnω ) is also decreased, but at some iterations this occurs rapidly for
the above reason. Therefore, the SINR, which is defined as ρ , is gradually increasing. In
this case, the Maximin algorithm shows good performance and fast convergence speed.
3.5.2 Friendly Interference
Figure 3.6 shows that the Maximin algorithm shows poor performance under
friendly interference environments, which are data-modulated signals from other users
instead of tone interference. If the friendly interference feeds into the monitor filter, then
the monitor filter is occupied by wide non-negligible, large, spectral regions, which cause
the adaptive filter outputs ( y R (i )) to contain significant interference power before weight
converging occurs. The friendly interference increases the norm of the weight vector as the
iterations increase and also increases the component of the desired signal correlation matrix
and noise-plus-interference correlation matrix at the same time. The desired signal power
Pˆs ( k ) and the noise-plus-interference power Pˆn ( k ) also increase at the same rate. In other
words, the adaptive weights cannot cancel the interference effectively.
Therefore, the SINR ρ cannot increase, and the Maximin algorithm shows poor
performance under the friendly interference. Figure 3.8 shows the norm of weight vector
versus the number of iterations for M=4 case. As shown, the convergence of weight vector
pattern depends on the type of interference. The weights converge to a steady-state value
33
under tone interference but those under friendly interference increase gradually when the
Maximin algorithm is used.
Figure. 3.8. Norm of weight vector versus iterations for the Maximin in the friendly
interference and tone interference, assuming input SNR=20 dB, ∆f=0, M=4 square array,
ω(0)=[1,0,0,0], and convergence parameter of α=0.2.
34
CHAPTER 4
CONTRIBUTIONS
4.1
Introducing Frequency Offset to Desired MSK Signal
In this thesis, a non-zero frequency offset was introduced for a MSK signal to
consider a realistic scenario in an FH system. Comparing simulation results of the
Maximin algorithm and MOSTLE showed that the frequency offset causes degradation in
the final SINR for both algorithms. When the frequency offset is introduced to a MSK
modulator, the PSD of the modulated data signal is shifted to the amount of the frequency
offset. Therefore, the introduced frequency offset causes the loss of desired signal power
and hence the steady-state SINR is lowered. This thesis presented an approximate final
SINR formula, i.e., SINR ∆f , to explain the amount of numerical degradation for a given
∆f . It was also found that the frequency offset does not degrade the convergence speed of
the MOSTLE scheme, but the frequency offset can make the convergence speed noticeably
slow for the Maximin algorithm.
4.2
Initial Weight Vectors
In this research, it was found that the initial weight vector can affect the
convergence speed of the weight vector. Two initial weights, ω(0)=[1,0,0,0] and
ω(0)=[1,1,1,1], were considered under tone interference and friendly interference. The
simulation results in Table 3.3 showed that the convergence speed of the Maximin
algorithm can be the fastest among the three schemes under tone interference when ω(0) is
[1,1,1,1]. However, its final SINR values were unacceptable under a friendly interference
35
environment. The final SINR of the Maximin algorithm under a friendly interference was
around 1 dB.
4.3
Increase of Antennas and Computational FLOPs Analysis
In this research, it was shown that the total number of FLOPs to reach a steadystate SINR value was counted. Figure 3.6 showed that the MOSTLE was computationally
more intensive than the Maximin algorithm if the number of antenna array elements
was larger than or equal to four. However, the final SINR of the Maximin can be as
low as 1 dB under a friendly interference environment, whereas the MOSTLE could
enhance the robustness of the communication link in a friendly interference and in a
multiple-access circumstance, although its FLOPs are lager than those of the
Maximin.
4.4
Maximin Algorithm under Different Interferences
The reason why the Maximin algorithm under friendly interference shows poor
performance was also checked. There were two kinds of bandpass filters—baseband and
monitor. The monitor filter was a band-rejected filter with two passbands and had the same
bandwidth as the baseband filter. The monitor filter allowed the adaptive filter to monitor
interference that was presented in the baseband filter. Whenever a tone interference was
observed at the output of the monitor filter, the adaptive weights had small values ωi , j < 1 ,
and were changed to cancel the interference. In other words, the output power of the
complex signal component ( Ps = ω † Rssω ) was gradually decreased, and the noise-plusinterference output power ( Pn = ω † Rnnω ) was also decreased, but at some iterations this
36
occurs rapidly. Therefore, the signal-to-interference-plus-noise ratio gradually increased.
In this case, the Maximin algorithm showed good performance and fast convergence speed.
The Maximin algorithm, however, showed poor performance under the friendly
interference, data-modulated signals from other users. If the friendly interference was
allowed to the monitor filter, then the monitor filter occupied large spectral regions, which
caused the adaptive filter outputs ( y R (i )) to contain significant interference power before
weight to converge.
The friendly interference increased the magnitude of the adaptive weight
coefficients ωi, j as the iteration increased. The weight vector increased the desired signal
and noise-plus-interference correlation matrix elements simultaneously. PˆS ( k ) and Pˆn ( k )
were also increased at the same rate, which meant that the adaptive weights could not
cancel the interference effectively. Therefore, the SINR could not increase, and the
Maximin algorithm showed poor performance under friendly interference.
37
CHAPTER 5
CONCLUSIONS
This thesis compared the MOSTLE and Maximin algorithm performance under
several conditions. As shown in the simulation and analytical results, MOSTLE can
improve the performance of the Maximin algorithm in the presence of friendly
interferences and frequency offsets. A frequency offset can cause the loss of desired signal
power, which reduces the steady-state SINR but does not degrade the convergence speed of
the MOSTLE scheme significantly. The Maximin algorithm is sensitive to the initial
weight ω(0) and fails under a friendly users. The performances of all three schemes, i.e.,
the Maximin, Maximin with SVD, and MOSTLE, improve as the number of antenna (M)
increases under the tone interference, but the Maximin algorithm fails under friendly
interference, even if M increases. Furthermore, MOSTLE is computationally more
intensive than the Maximin algorithm when the number of antenna array of elements
is larger than four.
38
LIST OF REFERENCES
39
LIST OF REFERENCES
[1]
S. W. W. Shor, “Adaptive Technique to Discriminate against Coherent Noise in a
Narrow-Band System,” Journal of the Acoustical Society of America, vol 39, no.1,
pp. 74-78, Jan. 1966.
[2]
D. Torrieri and K. Bakhru, “The Maximin Algorithm for Adaptive Arrays and
Frequency Hopping Systems,” U. S. Army Research Laboratory, Adelphi, MD,
Tech. Rep. TR-2026, Dec. 1999.
[3]
J. G. Proakis, Digital Communications, 3rd ed., New York: McGraw-Hill, 1995.
[4]
S. S. Rao, Optimization Theory and Applications, 2nd ed., New Delhi: Wiley
Eastern, 1991.
[5]
R. D. Balakrishnan, B. S. Nugroho, and H. M. Kwon, “Modified Maximin
Adaptive Array Algorithm for FH Systems under Fading Situations,” MILCOM
2002, Anaheim CA, Oct. 2002.
[6]
K. Bakhru and D. Torrieri, “The Maximin Algorithm for Adaptive Arrays and
Frequency-Hopping Communications,” IEEE Trans. Antennas Propagat., vol. 32,
pp. 919-928, Sept. 1984.
[7]
R. T. Compton, Adaptive Antennas: Concepts and Performance, New York:
Prentice-Hall, 1988.
[8]
Gene H. Golub and Charles F. Van Loan, Matrix Computations, 3rd ed., New York:
The Johns Hopkins University Press, 1996.
[9]
Fuqin Xiong, Digital Modulation Techniques, MA: 2000 Artech House, 2000.
[10]
R. D. Balakrishnan, Hyuck M. Kwon, Dong-Hyeuk Yang, and Yong H. Lee,
“Maximin Algorithm with a Step-Length Estimation Technique,” IEEE Trans.
Antennas Propagat. Accepted, April 2006.
40
APPENDIXES
41
APPENDIX A
AVERAGE SINR WITH FREQUENCY OFFSET
===============================================================
This program generates average SINR for 20 trials under AWGN channel in the
presence of tone interferences with different frequency offset (0, 1/(5Tb), 1/(2Tb),
1/(1.5Tb), 1/(1Tb), 1/(2Tb)), assuming input SNR=20 dB, M=4 square array, and
w(0)=[1,0,0,0]. The Maximin algorithm uses a convergence parameter of alpha=0.2.
Frequency offset was introduced to the MSK modulation.
DONG-HYEUK YANG 04/24/06
===============================================================
clear all;
clc;
cntr=1;
SIR=.1;
phi1=40;
phi2=70;
alpha1=0.2;
KK=10;
% Count Coefficient
% Signal to Interference ratio
% Direction of Interference 1 Angle
% Direction of Interference 2 Angle
% Torrieri's case adaptation constant alpha
% One-tenth expedites the convergence
SNRindB=20;
SNR=10^(SNRindB/10);
d=1/2;
lambda=1;
lambdaf=0.9;
DR=100000;
THOP=0.001;
NITER=8;
theta=0;
NSAMP=100;
W1=[];
RHO1=[];
% SNR_in_dB
% SNR
% Interelement distance between antennas
% Wavelength
% Forgetting factor for Mostle way(using SVD)
% Data rate
% Hop Duration
% Number of iterations per hop
% Desired Signal Angle
% Number of Samples per iteration(=m)
% Initialization vacant weight vector
% Initialization vacant weight vector
[filnum,filden]=butter(8,0.25); % Filter modeled 8th butterworth
Wn(Cutoff Frequency : 1.0 = Sampling rate x 0.5)
NHOPS=50;
NOT=20;
% Number of hops
% Experiments trials
42
APPENDIX A (continued)
for not=1:NOT
Wcurrent=[1 0 0 0]';
Wcurrent1=Wcurrent;
pnprev=10;
Rnn2=ones(4,4);
Rss2=zeros(4,4);
Rxx2=zeros(4,4);
RSS2=zeros(4,4);
% Womni
% Initialization value
% Previous Interference plus noise output power
% Generate of Initial Estimate Noise value
% Generate of Initial Estimate of Signal autocorrelation matrix
% Generate of Initial Estimate Signal value
% Generate of Initial Estimate of Signal autocorrelation matrix during kth update
%%%%% Generation random input data for MSK Modulation
inpdata=2*round(rand(DR*THOP*NHOPS,1))-1; % Signal is -1 or 1
%%%%% Transmission : MSK MODULATION
txop=mskmod_nooffset(inpdata,NITER); % Zero_Offset : delta_f = 0
txop=mskmod_offset(inpdata,NITER);
% Different Offset Frequency : delta_f = 1/(5Tb), 1/(2Tb), 1/(1.5Tb),
1/(1Tb), 1/(2Tb)
%%%%% Receiver
for nhops=1:NHOPS
% Number of hopping
fprintf('\nNOT = %d\tNHOPS = %d\n',not,nhops);
for iter=1:NITER
% Number of iterations 1 to 8
fprintf('*');
k=(nhops-1)*NITER+iter;
signal=steeringlinear4(theta,d,lambda)*txop(cntr:cntr+NSAMP-1);
% Generate signal using array steering vector
%%%%% NOISE and INTERFERENCE Generation for Baseband Filter
noiseB=sqrt(2/SNR)*randn(4,NSAMP);
% Generate Noise standard deviation for Baseband Filter
interf=sqrt(1/(2*SIR))*steeringlinear4(phi1,d,lambda)*ones(1,NSAMP) +
sqrt(1/(2*SIR))*steeringlinear4(phi2,d,lambda)*ones(1,NSAMP);
%%%%% NOISE and INTERFERENCE Generation for Monitor Filter
noiseM=sqrt(2/SNR)*randn(4,NSAMP);
% Generate Noise for Monitor Filter
iim= steeringlinear4(phi1,3e9/(3e9+.2e6)*d,lambda)*sqrt(1/(2*SIR))
*ones(1,NSAMP) +steeringlinear4(phi2,3e9/(3e9+.2e6)*d,lambda)
*sqrt(1/(2*SIR))*ones(1,NSAMP);
43
APPENDIX A (continued)
%%%%% INPUT TO THE BASEBAND FILER
BFinp=signal+noiseB+interf;
% Baseband filter Input
%%%%% INPUT TO THE MONITOR FILTER
MFinp=iim+noiseM;
% Moniter filter Input
%%%%% Maximin Algorithm
[Num11,Den11,Num12,Den12]=
Maximin(filnum,filden,BFinp,MFinp,Wcurrent1);
rhohat1(k)=Den11/Den12;
% SINR Value
Wfuture1=Wcurrent1+(alpha1/rhohat1(k))*(Num11/Den11 Num12/Den12);
% WEIGHT VECTOR UPDATE
mu1(k)=0.5*alpha1/(rhohat1(k)^2);
W1=[W1 Wfuture1];
Wcurrent1=Wfuture1;
cntr=cntr+NSAMP;
end;
end;
RHO1=[RHO1 rhohat1'];
% SINR Accumulate
end;
Rhohat1=mean(RHO1,2);
% Legend for Figure 3.2 : X axis - 400 Iterations; Y axis - SINR in dB;
figure(1)
n=[1:length(Rhohat1)];
plot(n,10*log10(Rhohat1));
xlabel('Iterations');
ylabel('Average SINR(dB)');
grid on;
zoom on;
axis([0,400,0,30]);
44
APPENDIX A (continued)
===============================================================
This program generates the complex MSK envelope of input data d(-1,1) for
different frequency offset (∆f=1/kTb), k=5,2,1.5,1, and 0.5.
===============================================================
function s=mskmod_offset(data,ns)
nb=max(size(data));
in=1;
% Inphase Signal
qu=2;
% Quadrature Signal
k=5;
k=2;
k=1.5;
k=1;
k=0.5
% Delta_frequency 1/5Tb
% Delta_frequency 1/2Tb
% Delta_frequency 1/1.5Tb
% Delta_frequency 1/1Tb
% Delta_frequency 1/0.5Tb
delta_f=(k+4)/k;
% Frequency Offset
for m=1:nb
% bit number
eo=mod(m,2);
% every other one, changing input inphase and quadrature.
if eo==1
in=m;
for n=1:2*ns % sample number
si(n+(ns*(m-1)))=data(in)*cos(pi*n*delta_f/(2*ns));
% Odd
end;
else
qu=m;
for n=1:2*ns % sample number
sq(n+(ns*(m-1)))=data(qu)*sin(pi*(n-ns)*delta_f/(2*ns)); % Even
end;
end;
end;
s=si(1:nb*ns)+j*sq(1:nb*ns); % Complex Value MSK signal
45
APPENDIX A (continued)
===============================================================
This program generates the Torrieri's Maximin algorithm including a small
offset frequency ∆f
===============================================================
function [num1,den1,num2,den2]=
Maximin(filnum,filden,BFinp,MFinp,Wcurrent);
for k=1:4
X(k,:)=filter(filnum,filden,hilbert(BFinp(k,:))); % Signal plus Noise
N(k,:)=filter(filnum,filden,hilbert(MFinp(k,:))); % Noise
end;
ynhat=Wcurrent.'*N;
ynRhat=real(ynhat);
y=Wcurrent.'*X; % y=ys(i)+yn(i)
yR=real(y);
num1=mean(X.*[yR;yR;yR;yR],2);
num2=mean(N.*[ynRhat;ynRhat;ynRhat;ynRhat],2);
den1=mean((yR.*yR)/2);
den2=mean((ynRhat.*ynRhat)/2);
46
APPENDIX B
SIGNAL POWER DEGRADATION D(S)
===============================================================
This program generates Figure. 3.3. : Signal power degradation D(S) versus
frequency offset amount ( ∆f ≠ 0 ) of the Maximin algorithm, assuming input SNR=20 dB.
===============================================================
clear all;clc;
A=1;
T=1;
delta_f=1/50*T;
delta_T=1/delta_f;
f=-4/T:delta_f:4/T;
sft1=18;
sft2=9;
% Normalized Amplitude
% Time index
% Sample frequency
% Sample Time
% Frequency Domain
deltaf0=0;
Gf=(4*T/pi)*cos(2*pi*T*f)./(1-16*(f.^2));
Gff=Gf.*Gf;
% Power Spectral Density at deltaf=0
Power_0=sum(Gff(3*delta_T+sft1:5*delta_T-sft2))/delta_T;
% Total Power at deltaf=0
deltaf5=1/5*T;
Gf5=(4*T/pi)*cos(2*pi*T*(f-deltaf5))./(1-16*(f-deltaf5).^2);
Gffdeltaf5=Gf5.*Gf5;
% Power Spectral Density at deltaf=1/5Tb
Power_5=sum(Gffdeltaf5(3*delta_T+sft1:5*delta_T-sft2))/delta_T;
% Total Power at deltaf=1/5Tb
deltaf2=1/2*T;
Gf2=(4*T/pi)*cos(2*pi*T*(f-deltaf2))./(1-16*(f-deltaf2).^2);
Gffdeltaf2=Gf2.*Gf2;
% Power Spectral Density at deltaf=1/2Tb
Power_2=sum(Gffdeltaf2(3*delta_T+sft1:5*delta_T-sft2))/delta_T;
% Total Power at deltaf=1/2Tb
deltaf15=1/1.5*T;
Gf15=(4*T/pi)*cos(2*pi*T*(f-deltaf15))./(1-16*(f-deltaf15).^2);
Gffdeltaf15=Gf15.*Gf15; % Power Spectral Density at deltaf=1/1.5Tb
Power_15=sum(Gffdeltaf15(3*delta_T+sft1:5*delta_T-sft2))/delta_T;
% Total Power at deltaf=1/1.5Tb
47
APPENDIX B (continued)
deltaf1=1/1*T;
Gf1=(4*T/pi)*cos(2*pi*T*(f-deltaf1))./(1-16*(f-deltaf1).^2);
Gffdeltaf1=Gf1.*Gf1;
% Power Spectral Density at deltaf=1/1Tb
Power_1=sum(Gffdeltaf1(3*delta_T+sft1:5*delta_T-sft2))/delta_T;
% Total Power at deltaf=1/1Tb
deltaf05=1/0.5*T;
Gf05=(4*T/pi)*cos(2*pi*T*(f-deltaf05))./(1-16*(f-deltaf05).^2);
Gffdeltaf05=Gf05.*Gf05; % Power Spectral Density at deltaf=1/0.5Tb
Power_05=sum(Gffdeltaf05(3*delta_T+sft1:5*delta_T-sft2))/delta_T;
% Total Power at deltaf=1/0.5Tb
X=[deltaf0 deltaf5 deltaf2 deltaf15 deltaf1 deltaf05];
y2=[Power_0/Power_0 Power_5/Power_0 Power_2/Power_0 Power_15/Power_0
Power_1/Power_0 Power_05/Power_0];
Y2=10*log10(y2);
figure(1);
plot(f,Gff,f,Gffdeltaf5,f,Gffdeltaf2,f,Gffdeltaf15,f,Gffdeltaf1,f,Gffdeltaf05)
xlabel('Frequency');
ylabel('Power spectrum of the MSK');
grid on;
zoom on;
axis([-1.5,2,0,1.8]);
figure(2);
plot(X,Y2)
xlabel('Offset Frequency Ratio');
ylabel('Power Degradation');
grid on;
zoom on;
axis([0,1,0,7]);
48
APPENDIX C
INCREASING ULA (M) AND COMPUTATIONAL FLOPS
===============================================================
This program generates Figure. 3.5. : Computational real FLOPs versus omnidirectional uniform linear array (ULA) antenna (M) of Torrieri's Maximin algorithm at
zero frequency offset.
===============================================================
[Main Program]
clear all;
clc;
warning off;
for M=2:2:8;
% Increase number of Antenna (M)
[ Mul_Maximin(M)]=Maximin_Complex(M);
end;
figure(1);
M=[2:2:8];
plot(M,Mul_Maximin(M));
xlabel('Number of Antenna(M)');
ylabel('Total # of Multiplication');
title('Number of Antenna vs Total # of Multiplications');
grid on;
zoom on;
axis([1,9,0,6000]);
49
APPENDIX C (continued)
===============================================================
This program counts the FLOPs of multiplication and addition of the
Maximin algorithm under increasing ULA of antennas ( M =2, 4, 6, 8 ).
===============================================================
function [Complex_Maximin,Add_Maximin,Mul_Maximin]
=Maximin_Complex(M)
Initial conditions are the same as in APPENDIX A
NOT=1;
% Number of Trial
for not=1:NOT
if M==2
Wcurrent=[1 0]';
Wcurrent1=Wcurrent;
pnprev=10;
Rnn2=ones(2,2);
Rss2=zeros(2,2);
Rxx2=zeros(2,2);
RSS2=zeros(2,2);
elseif M==4
Wcurrent=[1 0 0 0]';
Wcurrent1=Wcurrent;
pnprev=10;
Rnn2=ones(4,4);
Rss2=zeros(4,4);
Rxx2=zeros(4,4);
RSS2=zeros(4,4);
% Number of Antenna (M) = 2
% Womni
% Initialization value
% Previous Interference plus noise output power
% Initial Estimate Noise value
% Initial Estimate of Signal auto-correlation matrix
% Initial Estimate Signal value
% Initial Estimate of Signal auto-correlation
matrix during kth update
% Number of Antenna (M) = 4
elseif M==6
% Number of Antenna (M) = 6
Wcurrent=[1 0 0 0 0 0]';
Wcurrent1=Wcurrent;
pnprev=10;
Rnn2=ones(6,6);
Rss2=zeros(6,6);
Rxx2=zeros(6,6);
RSS2=zeros(6,6);
50
APPENDIX C (continued)
else
% Number of Antenna (M) = 8
Wcurrent=[1 0 0 0 0 0 0 0]';
Wcurrent1=Wcurrent;
pnprev=10;
Rnn2=ones(8,8);
Rss2=zeros(8,8);
Rxx2=zeros(8,8);
RSS2=zeros(8,8);
end;
%%%%% Signal generation of -1 & 1
inpdata=2*round(rand(DR*THOP*NHOPS,1))-1;
%%%%% MSK MODULATION No_Offset Function
txop=mskmod_nooffset(inpdata,NITTER);
% Zero Frequency Offset
%%%%% RECEIVER
for nhops=1:NHOPS
% Number of hopping
fprintf('\nNOT = %d\tNHOPS = %d\n',not,nhops);
for iter=1:NITER
% Number of iterations 1 to 8
k=(nhops-1)*NITER+iter;
if M==2
% Number of Antenna (M) = 2
signal=steeringlinear2(theta,d,lambda)*txop(cntr:cntr+NSAMP-1
noiseB=sqrt(2/SNR)*randn(2,NSAMP);
interf=sqrt(1/(2*SIR))*steeringlinear2(phi1,d,lambda)*ones(1,NSAMP)
+ sqrt(1/(2*SIR))*steeringlinear2(phi2,d,lambda)*ones(1,NSAMP);
noiseM=sqrt(2/SNR)*randn(2,NSAMP);
iim=sqrt(1/(2*SIR))*steeringlinear2(phi1,3e9/(3e9+.2e6)*d,lambda)
*ones(1,NSAMP) + sqrt(1/(2*SIR))*
steeringlinear2(phi2,3e9/(3e9+.2e6)*d,lambda)*ones(1,NSAMP);
elseif M==4 % Number of Antenna (M) = 4
signal=steeringlinear4(theta,d,lambda)*txop(cntr:cntr+NSAMP-1);
noiseB=sqrt(2/SNR)*randn(4,NSAMP);
interf=sqrt(1/(2*SIR))*steeringlinear4(phi1,d,lambda)*ones(1,NSAMP)
+ sqrt(1/(2*SIR))*steeringlinear4(phi2,d,lambda)*ones(1,NSAMP);
noiseM=sqrt(2/SNR)*randn(4,NSAMP);
iim=sqrt(1/(2*SIR))*steeringlinear4(phi1,3e9/(3e9+.2e6)*d,lambda)
*ones(1,NSAMP) + sqrt(1/(2*SIR))
*steeringlinear4(phi2,3e9/(3e9+.2e6)*d,lambda)*ones(1,NSAMP);
51
APPENDIX C (continued)
elseif M==6 % Number of Antenna (M) = 6
signal=steeringlinear6(theta,d,lambda)*txop(cntr:cntr+NSAMP-1);
noiseB=sqrt(2/SNR)*randn(6,NSAMP);
interf=sqrt(1/(2*SIR))*steeringlinear6(phi1,d,lambda)*ones(1,NSAMP)
+ sqrt(1/(2*SIR))*steeringlinear6(phi2,d,lambda)*ones(1,NSAMP);
noiseM=sqrt(2/SNR)*randn(6,NSAMP);
iim=sqrt(1/(2*SIR))*steeringlinear6(phi1,3e9/(3e9+.2e6)*d,lambda)
*ones(1,NSAMP) + sqrt(1/(2*SIR))
*steeringlinear6(phi2,3e9/(3e9+.2e6)*d,lambda)*ones(1,NSAMP);
else
% Number of Antenna (M) = 8
signal=steeringlinear8(theta,d,lambda)*txop(cntr:cntr+NSAMP-1);
noiseB=sqrt(2/SNR)*randn(8,NSAMP);
interf=sqrt(1/(2*SIR))*steeringlinear8(phi1,d,lambda)*ones(1,NSAMP)
+ sqrt(1/(2*SIR))*steeringlinear8(phi2,d,lambda)*ones(1,NSAMP);
noiseM=sqrt(2/SNR)*randn(8,NSAMP);
iim=sqrt(1/(2*SIR))*steeringlinear8(phi1,3e9/(3e9+.2e6)*d,lambda)
*ones(1,NSAMP) + sqrt(1/(2*SIR))
*steeringlinear8(phi2,3e9/(3e9+.2e6)*d,lambda)*ones(1,NSAMP);
end;
% INPUT TO THE BASEBAND FILER
BFinp=signal+noiseB+interf;
% INPUT TO THE MONITOR FILTER
MFinp=iim+noiseM;
if M==2
[Num11,Den11,Num12,Den12,complex1,numofmulti1,numofadds1]
=maximincomplex2(filnum,filden,BFinp,MFinp,Wcurrent1);
rhohat1(k)=Den11/Den12;
% SINR Value
Wfuture1=Wcurrent1+(alpha1/rhohat1(k))*(Num11/Den11 –
Num12/Den12);
% WEIGHT VECTOR UPDATE
mu1(k)=0.5*alpha1/(rhohat1(k)^2);
W1=[W1 Wfuture1];
Wcurrent1=Wfuture1;
elseif M==4
[Num11,Den11,Num12,Den12,complex1,numofmulti1,numofadds1]
=maximincomplex4(filnum,filden,BFinp,MFinp,Wcurrent1);
rhohat1(k)=Den11/Den12;
% SINR Value
Wfuture1=Wcurrent1+(alpha1/rhohat1(k))*(Num11/Den11 –
Num12/Den12);
% WEIGHT VECTOR UPDATE
52
APPENDIX C (continued)
mu1(k)=0.5*alpha1/(rhohat1(k)^2);
W1=[W1 Wfuture1];
Wcurrent1=Wfuture1;
elseif M==6
[Num11,Den11,Num12,Den12,complex1,numofmulti1,numofadds1]
=maximincomplex6(filnum,filden,BFinp,MFinp,Wcurrent1);
rhohat1(k)=Den11/Den12;
% SINR Value
Wfuture1=Wcurrent1+(alpha1/rhohat1(k))*(Num11/Den11 –
Num12/Den12);
% WEIGHT VECTOR UPDATE
mu1(k)=0.5*alpha1/(rhohat1(k)^2);
W1=[W1 Wfuture1];
Wcurrent1=Wfuture1;
else
[Num11,Den11,Num12,Den12,complex1,numofmulti1,numofadds1]
=maximincomplex8(filnum,filden,BFinp,MFinp,Wcurrent1);
rhohat1(k)=Den11/Den12;
% SINR Value
Wfuture1=Wcurrent1+(alpha1/rhohat1(k))*(Num11/Den11 –
Num12/Den12);
% WEIGHT VECTOR UPDATE
mu1(k)=0.5*alpha1/(rhohat1(k)^2);
W1=[W1 Wfuture1];
Wcurrent1=Wfuture1;
end;
end;
end;
RHO1=[RHO1 rhohat1'];
end;
Rhohat1=mean(RHO1,2);
% Total Number of Complexity for Maximin
if M==2
Complex_Maximin=complex1;
Add_Maximin=numofadds1;
Mul_Maximin=numofmulti1;
elseif M==4
Complex_Maximin=complex1;
Add_Maximin=numofadds1;
Mul_Maximin=numofmulti1;
53
APPENDIX C (continued)
elseif M==6
Complex_Maximin=complex1;
Add_Maximin=numofadds1;
Mul_Maximin=numofmulti1;
else
Complex_Maximin=complex1;
Add_Maximin=numofadds1;
Mul_Maximin=numofmulti1;
end;
54
APPENDIX C (continued)
===============================================================
This program generates the ULA (M = 8) steering vector for the Maximin
algorithm. The interelement distance is d =
λ
.
2
===============================================================
function [s]=steeringlinear8(theta,d,lambda);
thetanew=theta*pi/180;
steer=[1;
exp(-sqrt(-1)*2*pi*sin(thetanew)*d/lambda);
exp(-sqrt(-1)*2*pi*sin(thetanew)*2*d/lambda);
exp(-sqrt(-1)*2*pi*sin(thetanew)*3*d/lambda);
exp(-sqrt(-1)*2*pi*sin(thetanew)*4*d/lambda);
exp(-sqrt(-1)*2*pi*sin(thetanew)*5*d/lambda);
exp(-sqrt(-1)*2*pi*sin(thetanew)*6*d/lambda);
exp(-sqrt(-1)*2*pi*sin(thetanew)*7*d/lambda); ];
===============================================================
This program generates the square (M = 4) array steering vector for the Maximin
algorithm. The interelement distance is d = λ .
===============================================================
function [steer]=steering(theta,d,lambda);
thetanew=theta*pi/180;
steer=[1;
exp(-sqrt(-1)*2*pi*sin(thetanew)*d/lambda);
exp(-sqrt(-1)*2*pi*sqrt(2)*cos(pi/4-thetanew)*d/lambda);
exp(-sqrt(-1)*2*pi*cos(thetanew)*d/lambda);];
55
APPENDIX D
NORM OF WEIGHT VECTOR OF MAXIMIN VERSUS ITERATIONS
===============================================================
This program generates Figure 3.6 : Norm of weight vector of Maximin algorithm
versus iterations in the friendly interference and tone interference, Maximin algorithm's
degradation under Friendly User, SNR=20 dB, ∆f=0, M=4 square array, ω(0)=[1,0,0,0],
and convergence parameter of α=0.2.
===============================================================
Initial conditions are the same as in APPENDIX A
NHOPS=50;
% Number of hops
NOT=1;
% Experiments trials
for noe=1:NOT
Wcurrent=[1 0 0 0]';
Wcurrent1=Wcurrent;
Wcurrent2=Wcurrent;
pnprev=10;
Rnn2=ones(4,4);
Rss2=zeros(4,4);
Rxx2=zeros(4,4);
RSS2=zeros(4,4);
% Womni
% Initialization value
% Initialization value
% Previous Interference plus noise output power
% Generate of Initial Estimate Noise value
% Generate of Initial Estimate of Signal autocorrelation matrix
% Generate of Initial Estimate Signal value
% Generate of Initial Estimate of Signal autocorrelation matrix during kth update
%%%%% Signal generation of -1 & 1
inpdata=2*round(rand(DR*THOP*NHOPS,1))-1; % Signal is -1 or 1
%%%%% TRANSMITTED SIGNAL - MSK MODULATION
txop=mskmod_nooffset(inpdata,Ns)';
%%%%% Friendly Interference for two DOA
friendly1=mskmod_nooffset(inpdata,Ns)';
friendly2=mskmod_nooffset(inpdata,Ns)';
56
APPENDIX D (continued)
%%%%% RECEIVER
for nhops=1:NHOPS
% Number of hopping
fprintf('\nNOT = %d\tNHOPS = %d\n',not,nhops);
for iter=1:NITER
% Number of iterations 1 to 8
k=(nhops-1)*NITER+iter;
signal=steering(theta,d,lambda)*txop(cntr:cntr+NSAMP-1);
% Generate signal using array steering vector
%%%%% NOISE and INTERFERENCE Generation for Baseband Filter
noiseB=sqrt(2/SNR)*randn(4,NSAMP);
% Generate Noise standard deviation for Baseband Filter
interf1=sqrt(1/(2*SIR))*steering(phi1,d,lambda)
*friend1(cntr:cntr+NSAMP-1) +
sqrt(1/(2*SIR))*steering(phi2,d,lambda)
*friend2(cntr:cntr+NSAMP-1);
interf2=sqrt(1/(2*SIR))*steering(phi1,d,lambda)*ones(1,NSAMP) +
sqrt(1/(2*SIR))*steering(phi2,d,lambda)*ones(1,NSAMP);
%%%%% NOISE and INTERFERENCE Generation for Monitor Filter
noiseM=sqrt(2/SNR)*randn(4,NSAMP);
% Generate Noise for Monitor Filter
iim1=sqrt(1/(2*SIR))*steering(phi1,3e9/(3e9+.2e6)*d,lambda)
*friend1(cntr:cntr+NSAMP-1) + sqrt(1/(2*SIR))
*steering(phi2,3e9/(3e9+.2e6)*d,lambda)
*friend2(cntr:cntr+NSAMP-1);
iim2=sqrt(1/(2*SIR))*steering(phi1,3e9/(3e9+.2e6)*d,lambda)
*ones(1,NSAMP) + sqrt(1/(2*SIR))
*steering(phi2,3e9/(3e9+.2e6)*d,lambda)*ones(1,NSAMP);
%%%%% INPUT TO THE BASEBAND FILER
BFinp1=signal+noiseB+interf1;
% Baseband Input for Friendly
BFinp2=signal+noiseB+interf2;
% Baseband Input for Tone
%%%%% INPUT TO THE MONITOR FILTER
MFinp1=iim1+noiseM;
% Monitor Input for Friendly
MFinp2=iim2+noiseM;
% Moniter Input for Tone
%%%%% Case 1 : Under Friendly Interference
[Num11,Den12,Num13,Den14]=
Maximin1(filnum,filden,BFinp1,MFinp1,Wcurrent1);
den12(k)=Den12;
den14(k)=Den14;
rhohat1(k)=Den12/Den14;
% SINR Value
57
APPENDIX D (continued)
Wfuture1=Wcurrent1+(alpha1/rhohat1(k))*(Num11/Den12 –
Num13/Den14);
% WEIGHT VECTOR UPDATE
W1=[W1 Wfuture1]; Wcurrent1=Wfuture1;
%%%%% Case 2 : Under Tone Interference
[Num21,Den22,Num23,Den24]=
Maximin2(filnum,filden,BFinp2,MFinp2,Wcurrent2);
den22(k)=Den22;
den24(k)=Den24;
rhohat2(k)=Den22/Den24;
% SINR Value
Wfuture2=Wcurrent2+(alpha1/rhohat2(k))*(Num21/Den22 –
Num23/Den24); % WEIGHT VECTOR UPDATE
W2=[W2 Wfuture2]; Wcurrent2=Wfuture2;
end;
end;
RHO1=[RHO1 rhohat1'];
RHO2=[RHO2 rhohat2'];
end;
% Friendly Interference
% Tone Interference
Rhohat1=mean(RHO1,2);
Rhohat2=mean(RHO2,2);
% Friendly Interference
% Tone Interference
wv1=abs(W1);
for k=1:400
wv11(k)=sum(wv1(:,k))/4;
end;
% Norm of Interference Weight
wv2=abs(W2);
for k=1:400
wv22(k)=sum(wv2(:,k))/4;
end;
% Norm of Tone Weight
% Legend for Figure 1: X axis - iterations; Y axis - SINR in dB;
figure(1)
n=[1:length(Rhohat1)];
plot(n,wv11,n,wv22);
xlabel('Iterations');
ylabel('Norm of Weight Vector');
title('The Weight Vector Comparison');
grid on;
zoom on;
58
Download