Estimating the time and angle of arrivals in mobile
communications
Mémoire
Bahareh Elahian
Maîtrise en génie électrique
Maître ès sciences (M.Sc.)
Québec, Canada
© Bahareh Elahian, 2013
Résumé
Dans ce projet, nous présentons une méthode nouvelle et précise d’estimation de la direction
et des délais d’arrivée dans un environnement à trajets multiples, à des fins d’estimation de
canal. Récemment, les méthodes de super-résolution ont été largement utilisées pour l’estimation à haute-résolution de la direction d’arrivée (DOA) ou de la différence de temps
d’arrivée (TDOA). L’algorithme proposé dans ce travail est applicable à l’estimation d’un
canal espace-temps pour des systèmes de traitement spatio-temporel qui emploient la technologie hybride DOA / TDOA. L’estimateur est basé sur l’algorithme MUSIC classique pour
trouver la DOA et en profitant d’un simple corrélateur, il est possible de trouver le retard de
chaque arrivée. Il est pertinent d’associer chaque angle à son propre retard pour être capable
d’estimer les caractéristiques du canal quand nous ne connaissons pas la séquence transmise
par l’émetteur. Pour ce faire, nous proposons une formation de faisceaux (voix) très simple et
optimale par l’application du MVDR (Maximum Variance Distortion-less Response). Cette
formation de faisceaux maximise le signal desiré par rapport aux autres signaux.
Après détermination de l’angle d’arrivée par l’algorithme MUSIC, nous appliquons l’algorithme
de formation de faisceaux MVDR pour obtenir le signal qui est reçu par le réseau d’antennes
pour une direction. Ce signal est corrélé avec les autres signaux correspondants aux autres
directions d’arrivée. Les pics dans les figures ainsi obtenues montrent le décalage temporel de chaque source par rapport à celle obtenue par la formation de faisceaux MVDR. La
soustraction du plus petit décalage, correspondant au premier signal reçu à chaque décalage
temporel, nous donne le temps d’arrivée de chaque source. Pour être plus précis, nous pouvons choisir la moyenne des vecteurs des délais estimés, chacun étant obtenu à partir d’une
angle pour l’algorithme MVDR.
iii
Abstract
In this project, we present a novel and precise way of estimating the direction and delay of arrivals in multipath environment for channel estimation purposes. Recently, super-resolution
methods have been widely used for high resolution Direction Of Arrival (DOA) or Time
Difference Of Arrival (TDOA) estimation. The proposed algorithm in this work is applicable to space-time channel estimation for space-time processing systems that employ hybrid
DOA/TDOA technology. The estimator is based on the conventional MUSIC algorithm to
find the DOA and by using a simple correlator it is possible to find the delay of each arrival.
It is of interest to associate each angle to its proper delay to be able to estimate the characteristics of the channel when we have no knowledge about the transmitted sequence. To do
this, we suggest a very simple and optimal beamforming method by performing Maximum
Variance Distortion-less Response (MVDR). This beamforming maximizes the desired signal
in the desired direction compare to the other signals that come from other directions.
After finding the DOAs by MUSIC algorithm and selecting our desired direction, we obtain
the signal from this direction by applying MVDR beamforming. Then, we perform a correlation between this signal and the others incoming signals from other directions. The peaks
in the simulation figures illustrate the delay between each source with the obtained signal
from MVDR. If we subtract the delay of the first arrival (the smallest delay in time), from the
delays indicated in the figures, we can obtain the delay of each arrival. To be more precise,
the mean of these estimated TOAs vector follows the exact TOA of each source.
v
Contents
Résumé
iii
Abstract
v
Contents
vi
List of Tables
ix
List of Figures
xi
List of Symbols
xiii
Abbreviation
xv
Remerciements
1
xvii
Introduction
1
Introduction
1.1 Background and motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Objectives and novel contributions . . . . . . . . . . . . . . . . . . . . . . . . .
2
3
vi
System model
2.1 Introduction . . . . . . .
2.2 Array antenna modeling
2.3 Covariance matrix . . . .
2.4 Estimation of DOAs . . .
2.5 Conclusion . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
MUSIC Algorithm
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . .
3.2 Array signal space definition . . . . . . . . . . . . .
3.3 Eigen-analysis for array signal space . . . . . . . . .
3.4 Rank calculation . . . . . . . . . . . . . . . . . . . . .
3.5 Estimation of the covariance matrix . . . . . . . . .
3.6 MUSIC spectrum . . . . . . . . . . . . . . . . . . . .
3.7 Simulation of the classical method to find the DOAs
3.8 Root-MUSIC . . . . . . . . . . . . . . . . . . . . . . .
3.9 ESPRIT . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
2
.
.
.
.
.
5
5
5
8
9
13
.
.
.
.
.
.
.
.
.
15
15
15
17
19
20
20
21
28
30
3.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
4
MVDR Beamforming
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Specification of a beam between different arrival beams . . . . . . . . . . . . .
4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
33
33
37
5
Proposed algorithm: JDTDOA
5.1 Introduction . . . . . . . . . .
5.2 Non joint TDOA and DOA . .
5.3 DOA and TDAO matching . .
5.4 First version of JDTDOA . . .
5.5 The final version of JDTDOA
5.6 Conclusion . . . . . . . . . . .
6
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
39
39
39
40
40
46
47
Simulations of JDTDOA
6.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Operation of JDTDOA . . . . . . . . . . . . . . . . . . . . .
6.3 Computational complexity . . . . . . . . . . . . . . . . . . .
6.4 Analysis of JDTOA for different SNRs . . . . . . . . . . . .
6.5 Standard deviation of the delay . . . . . . . . . . . . . . . .
6.6 Effect of the error in determining the DOAs on the TDOAs
6.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
49
49
49
53
55
57
60
63
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Conclusion
65
Bibliography
67
vii
List of Tables
2.1
2.2
Simulation parameters to compare different methods to find DOAs. . . . . . . .
Simulation parameters to compare different methods to find DOAs with the same
source power. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
3.1
3.2
3.3
3.4
Non correlated signals M ≤ N, K → ∞. . . . .
Non correlated signals M ≤ N, K < ∞. . . . .
Non correlated signals, M ≥ N, K → ∞. . . .
Correlated signals, M ≥ N, K → ∞. . . . . . .
.
.
.
.
22
23
24
26
5.1
Simulation parameters to determine TDOA and DOA.
. . . . . . . . . . . . . . .
43
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
12
ix
List of Figures
2.1
2.2
2.3
3.1
3.2
3.3
3.4
3.5
3.6
3.7
4.1
4.2
4.3
5.1
5.2
5.3
6.1
6.2
6.3
6.4
6.5
6.6
Uniform array antenna with two impinging signals. . . . . . . . . . . . . . .
Comparison between Capon and conventional beamforming algorithms to
the direction of arrivals with different source powers. . . . . . . . . . . . . .
Comparison between Capon and conventional beamforming algorithms to
the direction of arrivals with the same source power. . . . . . . . . . . . . . .
. . .
find
. . .
find
. . .
Space for M = 2 signals and an N = 3 elements antenna array and eigenspace
from R xx [5]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MUSIC pseudo-spectra to find the DOAs according to the parameters in Table 3.1.
MUSIC pseudo-spectra to find the DOAs according to the parameters in Table 3.2.
MUSIC pseudo-spectra to find the DOAs according to the parameters in Table3.3.
MUSIC pseudo-spectra to find the DOAs according to the parameters in Table 3.4.
Finding DOAs using the MUSIC algorithm. . . . . . . . . . . . . . . . . . . . . . .
Two possible subarrays from an eight-element linear antenna array usable with
ESPRIT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Beamforming structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
How MVDR works to maximized the desired beam while minimizing the others.
a) Maximizing the signal at 30◦ and nulling the sources situated at 60◦ and 90◦ b)
Maximizing the signal at 60◦ and nulling the sources situated at 30◦ and 90◦ . . . .
MUSIC pseudo-spectrum from the simulation of the numerical example. . . . . .
Correlation function curves between xn (t) (n = 1, 2, . . . 8) and the direct signal
sd (t) to find the delays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
All correlation functions curves between xn (t) (n = 1, 2, . . . 8) and ym (t) for each
m (m = 1, 2, 3, 4) after beamforming with wcapon to find the delays associated to
the m-th arrival. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Correlation functions curves u1 p (τ ) (taking θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦
and θ4 = 70.18◦ ) to find the associated delays. . . . . . . . . . . . . . . . . . . . .
Correlation functions curves u3 p (τ ) (θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦ and
θ4 = 70.18◦ ) to find the associated delays. . . . . . . . . . . . . . . . . . . . . . . .
Correlation functions curves u2 p (τ ) (θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦ and
θ4 = 70.18◦ ) to find the associated delays. . . . . . . . . . . . . . . . . . . . . . . .
Correlation functions curves u4 p (τ ) (θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦ and
θ4 = 70.18◦ ) to find the associated delays. . . . . . . . . . . . . . . . . . . . . . . .
Variance of θ̂m versus SNR for all 4 sources at θ = [30◦ − 10◦ 40◦ 70◦ ]. . . . . .
Variance versus the changes of θ2 − θ1 when SNR1 = 15 dB, K = 200. . . . . . .
6
12
13
19
22
24
25
27
28
30
34
35
36
43
44
45
50
51
52
53
55
57
xi
6.7
6.8
6.9
6.10
6.11
6.12
6.13
6.14
6.15
xii
Variance versus the changes of θ2 − θ1 , when SNR1 = 10 dB and K = 200. . .
Standard deviation of the delay versus the changes of τm − τp , when SNR1
14 dB, SNR2 = 20 dB and K = 200. . . . . . . . . . . . . . . . . . . . . . . . . .
Effect of the SNR on the standard deviation of τ. . . . . . . . . . . . . . . . . .
Effect of the SNR on the average value of τ. . . . . . . . . . . . . . . . . . . . .
TDOA estimation when there are no errors is in determining the DOA. . . . .
Effect of a 10◦ error in determining the DOA on estimating τ. . . . . . . . . .
Effect of a 20◦ error in determining the DOA on estimating τ. . . . . . . . . .
Effect of a 25◦ error in determining the DOA on estimating τ. . . . . . . . . .
Effect of a 30◦ error in determining the DOA on estimating τ. . . . . . . . . .
. .
=
. .
. .
. .
. .
. .
. .
. .
. .
57
58
59
59
60
61
61
62
62
List of Symbols
[]∗
[] H
[]T
∗
ai = e− j2πd sin θm (i=1,2,. . . M)
a(θm )
A = [a(θ1 ), . . . , a(θm )]
bθ
c
C
Conjugate of a complex signal
Hermitian transpose
Transpose
Correlation function
Phase factor on different antenna elements
Direction vector (N × 1 dimensions for MUSIC)
Direction matrix (N × M for MUSIC)
Sum of all non-linear vector components with a(θm )
Light speed
Symmetric Hermitian matrix in Root MUSIC algorithm which i
equal to Pn in Conventional MUSIC algorithm
d
The index shows the direct arrival’s property
D
Distance between two antenna elements
D(z)
Conventional Root Music polynomial
Es
Principal eigenvector corresponding to the M largest eigenvalues
f0
Carrier frequency
I
Identity matrix
J1 , J2
Selection matrices in ESPRIT Algorithm
K
Number of snapshots
M
Number of incident signals on array antenna or number of sources
N
Number of antenna array elements
Pcap
Capon spatial spectrum
P(w)
Average power of the array antenna
PMUSIC (θ )
Spatial spectrum for MUSIC algorithm
Q
Number of elements in sub-array
R xx
N × N array auto-correlation matrix
Rss
M × M signal auto-correlation matrix
sd (t)
Direct signal from transmitter to receiver
s(t) = [s1 (t), . . . , sm (t)]
m source signal vector
Tm
The delay between the components of arrival signals
xiii
T̂
Estimated time delay in correct ordering
T̆
Estimated time delay not in correct ordering
Ts
Sampling time
u(t)
Noise free signal space
V n = [ v M +1 , . . . , v N ]
Noise subspace matrix whose columns are the noise eigenvectors
v1 ,. . .,v M
Eigenvector of R xx
w = [ w1 , w2 , . . . , w k
]T
Complex weight coefficient vector for correlated signals
wcap
Weight vector for Capon algorithm
wmvdr
Weight vector for MVDR algorithm
xi ( t )
Captured signal in element i of array antenna
y(w)
Received signal after beam forming with the weight vector w
α
Complex weight coefficient, represents the time delay and amplitude attenuation with respect to LOS
αθ
Amplitude of the signal coming from direction θ
β
Proportionality constant
β0
Phase constant
∆E = D
Displacement of the elements in array antenna in ESPRIT theory
∆ r mi
Distance between two different paths from source m on element i
σs2
σn2
Variance or power of the direct signal
Variance or power of the additive Gaussian noise signal
λi
Eigenvalues of Rxx
θ
Signal’s angle of arrival with respect to the array line
θ̂
Estimate of θ
µ
Expectation of a function of realization for a probability model
µθ
Variance of αθ
ϕ
Phase difference between antenna elements
Φ
Diagonal M × M matrix containing the relative phase between adjacent time
samples for each of the M sources
τm
Delay taken by m-th signal path between two adjacent elements
Ψ
Matrix whose eigenvalues are equal to diagonal elements of Φ and the
columns of matrix P are the eigenvectors of Ψ
xiv
Abbreviation
DOA
Direction Of Arrival
ESPRIT
Estimation of Signal Parameters via Rotational Invariance Techniques
i.i.d.
independent and identically distributed
JDTDOA
Joint DOA and TDOA
LMS
Least Mean Squares
LOS
Line Of Sight
MVDR
Minimum Variance Distortion-less Response
MUSIC
MUltiple SIgnal Classification
NLOS
Non Line Of Sight
TDOA
Time Difference Of Arrival
TLS-ESPRIT
Total Least Squares-Estimation of Signal Parameters via Rotational Invariance Techniques
TOA
Time Of Arrival
SIR
Signal to Interference Ratio
SNR
Signal to Noise Ratio
STD
Standard Deviation
ULA
Uniform Linear Array
xv
To my parents in Iran and whom
treat me like parents in Quebec
xvi
Remerciements
My deepest gratitude goes first and foremost to my supervisor Dr. Dominic Grenier, for
his constant support and guidance, and patience during the whole period of my thesis. His
intuitive way of viewing things helped me grasp things about signal processing that were
more than a mystery before. I will never forget his recommendation to not start out with
something too difficult. He thought me to work my way up from something easy and that
progressing step by step can make it a lot easier to proceed with the algorithms from the very
beginning to the end point. Additionally, my special thanks also go to my co-supervisor Dr.
Paul Fortier for his kind guidance and support to go in the right direction for my thesis.
I would like to show my appreciation to another professor in LRTS, Jean-Yves Chouinard,
for his interesting course in the theory of information which encouraged me to go forward
to know more about codes and have another course in the theory of coding.
I would like to thank Emmanuel Racine for his friendly help and guidance and explanations
during this thesis. Many thanks go to my friends in LRTS, especially Pascal Djiknavorian
who when I talk to, gives me a feeling that I am talking to a real brother who I have never
had in my life. I also appreciate the positive point of view of my friend, Mathieu Gallichand,
who always encouraged me to view the glass half full and be more hopeful. Many thanks
to all who participated in our coffee breaks, for making a friendly and enjoyable atmosphere
for the laboratory.
Also special thanks to Suzanne Samson for her really kind emotional support and to be like
a mother for me here in Quebec. I will never forget our coffee meetings and the snowshoes
sport which we have done together.
And all my emotions, thanks, gratitude, feelings denotes to my lovely parents whose distance support was the roots of this work. I do not know how I should express my love to
both of you the angels of my life.
xvii
Chapter 1
Introduction
1.1
Background and motivation
Nowadays, estimating the channel characteristics in mobile terminals and networks is among
the most interesting topics in mobile radio research and development.
Joint parameter estimation plays an important role in several application technologies. There
are a lot of algorithms which try to find the DOA and TDOA of the wireless users such as [1].
In addition, channel parameters are required to enhance the signal reception of the transmitted signal in space-time processing systems which is especially useful in multipath environments. By estimating the channel parameters, the received signal from different paths can
be weighted and shifted according to these channel parameters, to get the stronger signal,
such as algorithms in [2], [3] or the algorithm which is used in Rake receivers [4].
Several method has been proposed to get angle or time delay of each path. Some of them
considered an indoor environment to find TOA or TDOA [7]. Some other methods take DOA
and TDOA.
Channel estimation is an important technique especially in wireless network systems. There
are some undesirable effects of a wireless communication channel on the signals transmitted
through it which are caused by its physical properties. These in turn always result in attenuation, distortion, delays, and phase shifts of the signals arriving at the receiver end of the
communication system. In multipath environments, what is needed is the direction and time
delay of each arrival (direct signal and multiple reflected signals) for each user, so that the
channel characteristics can be well estimated for each user. It is important to properly match
the delays and directions of all arrivals and do so as efficiently as possible. Associating the
directions to their proper delays can be very complicated. It is therefore desirable to seek a
procedure that automatically yields and sorts the delay-direction pairs in a straightforward
and highly precise way.
1
For efficient transmission over wireless links, reliable channel estimation is critical. Channel
estimation is based on the training sequence of bits that are unique for a certain transmitter
and are repeated in every transmitted burst [23]. In other words, for each signal in transmission we send also a certain known sequence to the receiver. In brief, we can state the reasons
of channel estimation in wireless transmission as:
a) Allows the receiver to approximate the effect of the channel on the signal.
b) The channel estimate is essential for removing inter-symbol interference, noise rejection, etc.
c) Also used in diversity combining, Maximum Likelihood (ML) detection, direction of
arrival estimation, etc.
There are several articles that try to find simultaneously DOA and TDOA of the arrival signals in multipath environments. In [8] - [12], the authors show how we can use different
simple algorithms such as MUSIC [5] to find the DOAs and in each they propose an algorithm for also finding the TDOAs. The problem in many of these articles are the calculations
which are massive or they need a known transmitted sequence for their algorithm and if not,
they are not capable to associate each DOA to its proper TOA.
In this work, a practical method to estimate the TDOA associated with DOA information in
the presence of multipath is proposed. By using high resolution, we focus on eliminating the
DOA and TDOA of each arrival, which are two closely related aspects of array processing.
1.2
Objectives and novel contributions
It is clear that the accuracy of DOA and TDOA measurements are important for better channel estimation.
There are numerous works that have been done to estimate the direction and time difference
of arrival of signals in multipath areas. Some of the main disadvantages of these works are:
a) In most of them we need to have some knowledge about the transmission channel and
most of all we need the information related to the transmitted signal or at least a known
sequence of the transmitted signal.
b) We can obtain the DOAs and the TDOAs, but we are not capable to associate them
together.
c) There is a massive amount of work and complicated calculations to do to overcome
one of the aforementioned drawbacks.
2
To do so, we propose to use the conventional MUSIC algorithm [5] and Capon beamforming
[18], [19] in conjunction with the correlation function. The latter is made between a copy of
signal which is coming from specific direction and other copy of received signals from other
DOAs observed. The proposed new numerical method is then able to associate the DOA
from the MUSIC algorithm and the TDOA from the special correlator.
Thesis outline
There are 6 chapters in this dissertation. The subsequent chapters are as follows:
Chapter 2 is an overview on the model of the system and signal which we use in this work.
In all other chapters we will respect the same notations and definitions mentioned in this
chapter.
Chapter 3 provides a brief background of the MUSIC algorithm and the equations which
we need to implement in our program to find the DOAs in the multipath environment
with an array antenna. In the same chapter, we show different assumptions to perform
the best estimation of direction of arrivals by varying the main parameters in the MUSIC
algorithm, namely the number of elements and the number of sources as well as the SNR.
We compare the MUSIC algorithm with Capon beamforming. In addition in this chapter, we
introduce the Root-MUSIC and ESPRIT algorithms, which are MUSIC enhancements and
perform some simulations to better illustrate their performances.
In Chapter 4, we show the main properties of MVDR beamforming as an optimal beamforming in multipath environments, which is able to maximize the signal to interference
ratio (SIR) so as to specify one direction of our arrival signals from the others.
In the following chapter, Chapter 5, we introduce our proposed algorithm to deal with the
problems which exist for the association of DOAs to their proper TDOAs, as discussed in the
previous chapter. Then we explain the mathematical development and completely describe
the proposed algorithm. In this chapter we proposed two versions of our algorithm. The
simulation of the first version is done in this chapter and we discuss about how we can find
the DOAs and TDOAs and associate them together even more simply.
In Chapter 6, we perform simulations to show that the second version of the proposed algorithm works well. In the same chapter, we find the limitations of our algorithm in the
direction of arrivals or the time difference of each arrival. Then, we search for the effect of
the SNR on the variance of the directions and the delays of all arrival on the array antenna.
We also show results on the affect of the errors in estimating the direction of arrivals on the
TOAs.
3
Chapter 2
System model
2.1
Introduction
This chapter is a general introduction of the basic theory of the developments presented
in this document. The main objective of this chapter is to cover part of the theory which
is essential and also the popular processing methods which already exist in the channel
estimation domain. In addition in this chapter, we will introduce the principal notations
which we will use in the rest of this document.
2.2
Array antenna modeling
The system model in this work is a linear array antenna consisting in N identical elements
on which we have impinging signals send from the users. At first, we consider one user
with M signals (where M < N) consists of one direct signal and M − 1 reflected ones. Figure
2.1 illustrates only the direct signal and one reflection from this user. It will be possible to
extend the proposed algorithm to consider several users with different sources giving more
direct signals and more reflections.
Assuming no noise, the m-th signal received at the n-th element at time t can be written as:
xnm (t) = <{sm (t)e jω0 t }
1 ≤ n ≤ N; 1 ≤ m ≤ M
(2.1)
where sm (t) is the analytic complex envelope of the signal. Each reflection signal is in fact a
delayed and weighted copy of the direct signal. So the envelope in (2.1) is now expressed as:
sm (t) = αm sd (t − Tm )
(2.2)
where αm and Tm are the (arbitrary) amplitude and delay of each signal path, respectively. In
our assumption sd (t) is the direct signal received at the first element with αd = 1 and Td = 0;
d is the index of the direct signal.
5
2∆
∆
θ
D
x1
x2
x3
xN
∆ = D sin θ
τ = ∆/c
Figure 2.1: Uniform array antenna with two impinging signals.
In the case of the m-th signal alone, each output of the N elements of the array antenna is
also an advanced or delayed copy of the output taken at the first element by a delay of τnm :
xnm (t) = <{sm (t − τnm )e jω0 (t−τnm ) }
− jω0 τnm
= <{sm (t − τnm )e
{z
|
s nm ( t )
}
}e
jω0 (t)
(2.3)
.
(2.4)
The narrowband assumption can be used since the carrier frequency f 0 is assumed much
larger than the bandwidth of the source. Moreover, the total length of the antenna array
involved a maximum delay τnm which is always small with respect to the variation on the
envelope (or equivalently the inverse of the signal bandwidth). So, we can write:
sm (t − τnm ) ≈ sm (t) .
(2.5)
The delay τnm causes only a phase shift between different element outputs e− jω0 τnm as seen
in (2.4). This is the reason why it is more convenient to work in the complex plane with the
analytic complex envelope of each signal.
The next step is to express the delay τnm in terms of array geometry. This delay is related
to the difference of path length followed by the plane wave from element 1 to element n in
such a way to have:
∆ nm
c
where c is the speed of light. Then the phase shift becomes:
τnm =
ϕ nm
= ω0 τnm =
= β 0 ∆ nm
where β 0 =
2π
λ
(2.6)
ω
∆n
c m
(2.7)
represents the phase constant and λ is the wavelength. Considering a linear
array antenna with interelement spacing D, ∆mn is linked to the direction of arrival θm of the
6
m-th signal (shown in Figure 2.1), and to the distance between the n-th element and the first
one, as:
∆nm = (n − 1) D sin θm .
(2.8)
So, for a linear array antenna, we have:
ϕ nm
= ( n − 1) ϕ m
ϕm = βD sin θm
(2.9)
(2.10)
The total length of the array is then ( N − 1) D.
The third step is to write equations in a matrix form considering now the M signals. We
define at first the vector x(t) as a snapshot of the N outputs (one output per element of the
array antenna) sampled at the same time t. The analytic received signal is composed of the
sum in the complex plane of the M signals arriving from different directions and at different
times and is expressed as:
M
x(t) =
∑
sm (t) + n(t)
(2.11)
m =1
where:
sm (t) =
s 1m ( t )
s 2m ( t )
..
.
s Nm (t)
.
(2.12)
Using (2.4) in conjonction with (2.6), (2.7) and (2.8), we can rewrite (2.12) as:
sm (t) =
1
e− jϕm
..
.
e − j ( N −1) ϕ m
sm (t) .
(2.13)
The vector in (2.13) is an N × 1 vector which is known as the direction vector or steering vector
and is expressed as:
h
i>
a(θm ) = 1, e− jϕm , . . . , e− j( N −1) ϕm
.
(2.14)
The symbol > denotes transpose and n(t) is the N × 1 complex additive noise vector. The
noise at different elements of the array antenna can be considered as zero-mean Gaussian
stationary random processes and independent from each element. So the noise at the antenna elements is mutually uncorrelated and is also uncorrelated with the signals.
Finally, the snapshot x(t) can be written in matrix from equations (2.11) to (2.14) like this:
x(t) = As(t) + n(t)
(2.15)
7
where A is the steering matrix:
A = [a(θ1 ), a(θ2 ), . . . , a(θ M )]
(2.16)
s(t) = [s1 (t), s2 (t), . . . , s M (t)]> .
(2.17)
and s(t) is the source vector:
Because the construction of the steering vector a(θ ) in (2.14), the steering matrix A has a
Vandermonde structure for a linear array antenna.
We recall that narrowband assumption implies that the delays produced by interelement
spacing (τm ) are much smaller than signal variations so they are related to phase shifting.
On the other hand, the delays (Tm ) between the components of arrival signals are much
larger than the duration of autocorrelation of emitted signal (or just the direct signal). Therefore these components are non correlated between themselves and we can consider them as
independents sources.
2.3
Covariance matrix
Many signal processing applied to array antennas involve second order statistical estimation. The second order statistics applied to the signal vector x(t) gives the auto-covariance
matrix R xx (t) (or simply covariance matrix). This is an N × N matrix having some special
properties that can be used to develop specific estimator. For our project, all sources are assumed stationary in the strict sense, so we can drop the t parameter and R xx can be written
as:
n
o
R xx = E x(t)x H (t)
= ARss A H + σn2 I N
(2.18)
The symbol H denotes the Hermitian transpose. The variables σn2 and I N are the variance
of the additive noise and identity matrix, respectively, because the noises are independent
from one element to the others; Rss denotes the M × M auto-correlation matrix for the source
signals:
n
o
Rss = E s(t)s H (t)
s1 ( t )
s2 ( t )
.
s(t) = .
..
s M (t)
8
(2.19)
The matrix Rss is a diagonal matrix since the arrivals are considered as independent sources.
The variable σm2 then corresponds to the power of the m-th arrivals. This matrix, called the
source auto-covariance matrix, is written as:
Rss =
σs21 0
0
..
.
σs22
..
.
0
0
··· ···
······
0
0
..
.
· · · · · · σs2M
.
(2.20)
On the other hand Rnn is the auto-covariance matrix of the noise. Since we suppose that the
noise is i.i.d. (independently and identically distributed), we can write
Rnn = σn2 I .
(2.21)
where I is the identity matrix and σn2 is the power of the noise.
Note that because σn2 ≥ 0, R xx is now positive definite; all of its eigenvalues are greater or
equal to zero. In addition, Rss can be classified in three cases [5], [6]:
1. Diagonal, non-singular and positive definite when the signals are uncorrelated;
2. Non-diagonal, non-singular and positive definite when some signals are partially correlated;
3. Non-diagonal, singular and semi-positive definite when some signals are correlated,
which means that some eigenvalues are equal to zero.
2.4
Estimation of DOAs
This section points out some of the numerous ways to find the direction of arrival on array
antennas in narrowband systems. Here we just mention some algorithms which we will use
in the rest of the thesis.
We can regroup all DOA’s estimation algorithms in three main groups:
1. Classic methods which are related to conventional beamforming or beam-steering
2. The methods based on maximum likelihood.
3. The method based on calculation of subspaces.
More details about item 3 will be given in Chapter 3.
9
We begin to define a single output of an array antenna which is a weighted sum of each
element output:
y(w) = w H x
(2.22)
where w is the weight vector. The average power of this single output for a given weight
vector is calculated by:
P(w) = E|ym (w)|2 = w H R xx w .
(2.23)
We can see the covariance matrix appearing.
2.4.1
Conventional beamforming or beam-steering
Many choices are available for w. Depending on the choice, the antenna has some properties.
For example, by a simple phase shift constructed in a similar manner to the steering vector
defined in (2.14), it is possible to steer the main lobe of the antenna in the direction θ0 , putting
θ m = θ0 .
The most simple beamforming is the conventional beamforming. It consists of making a
beam steering in direction θ0 putting the weight vector:
h
i>
wbs (θ0 ) = 1, e− jϕ0 , . . . , e− j( N −1) ϕ0
(2.24)
where ϕ0 is given by (2.10).
The estimated direction of arrivals are obtained by plotting the power of P(w(θ )) given by
(2.23) in all directions. By doing so, the directions which have more power are considered as
the directions where the sources are located.
The principle of beam steering is just to compensate the phase shift produced by the difference of path length.
2.4.2
Capon or Maximum Likelihood method
The Maximum Likelihood (ML) algorithm [16] is also a high resolution method. The true ML
solution is computationally prohibitive, especially when multiple sources exist, although it is
more robust and has a smaller estimation error as compared with any other DOA estimators.
The Capon algorithm [18], [19] is a variant of ML. It does not really realize a maximum
likelihood estimation in a wide sense but considers only the other sources not present in the
analysis direction as interference; the noise is not taken into account.
The algorithm starts by constructing a real-life signal model as described in the previous
section. The peaks in the Capon spectrum occur when a source exists in the direction θ0
by minimizing the contribution of the undesired interferences while maintaining the gain
10
along the look direction to be constant, usually unity. Then the output power, without noise,
is equal to the power of the source in that direction. That is,
min E|y(w(θ ))|2 = min w H R xx w,
subject to w H a(θ ) = 1 .
(2.25)
Using Lagrange multiplier, the weight vector that solves (2.25) can be shown to be:
wcapon =
1
R−
xx a ( θ )
.
1 (
a H (θ )R−
xx a θ )
(2.26)
The output power of the array antenna as a function of θ gives the DOA estimation using
the Capon method:
Pcapon =
1
1 (
a H (θ )R−
xx a θ )
.
(2.27)
The directions of arrival correspond to the peaks in this angular spectrum and the high of
the peaks correspond to the power of the sources.
Example 2.1: Comparison between Capon and conventional
beamforming
To compare the Capon algorithm with conventional beamforming, we perform a simulation
according to the parameters given in Table 2.1.
Figure 2.2 illustrate a comparison between these two algorithms. It is evident that the Capon
algorithm is more efficient, since in the Capon case, all sources are estimated with more
precision and hence the peaks are narrower. We can observe that for these two methods, the
amplitude of each peak corresponds to the power level of the arrivals.
Table 2.1: Simulation parameters to compare different methods to find DOAs.
Parameters
N
θ
σs2
K
D
Values
7
60◦ , 90◦ ]
[6 4 10]
∞
λ/2
[30◦ ,
11
Table 2.2: Simulation parameters to compare different methods to find DOAs with the same
source power.
10
Parameters
Values
N
θ
σs2
σn2
K
D
7
30◦ , 60◦ , 90◦
11
1
∞
λ/2
Conventional Beamforming
Capon
9
8
σ2s [dB]
7
6
5
4
3
2
1
0
20
40
60
θ [°]
80
100
120
Figure 2.2: Comparison between Capon and conventional beamforming algorithms to find
the direction of arrivals with different source powers.
In another simulation, we assume that the noise power σn2 = 1 and the power of all the
arrivals is σs2 = 11, i.e. all arrivals have the same power which is 11 times the power of the
noise. The results are illustrated in Figure 2.3.
12
Conventional Beamforming
Capon
11
10
9
8
σ2s [dB]
7
6
5
4
3
2
1
0
20
40
60
θ [°]
80
100
120
Figure 2.3: Comparison between Capon and conventional beamforming algorithms to find
the direction of arrivals with the same source power.
2.5
Conclusion
In this chapter, we reviewed the signal representation to model the system. We also presented the basic theory to model an array antenna which we will use in this project. We
pointed out some known algorithms to find direction of arrivals (DOAs) in multipath areas.
A very short comparison between them was given. The Capon or Maximum Likelihood
method beats the conventional beamforming method to find precisely the DOAs in multipath environments. There is one more method which is more precise than Capon, namely
the MUSIC algorithm, which will be introduced in the next chapter.
13
Chapter 3
MUSIC Algorithm
3.1
Introduction
In this chapter, a specific estimator called the MUSIC (MUltiple SIgnal Classification) algorithm for DOA estimation is fully investigated. The original or conventional MUSIC algorithm was proposed by Schmidt [1] to estimate the parameters of multiple uncorrelated or at
most partially correlated signals incident on an antenna array. It can provide asymptotically
unbiased estimates of the following parameters:
1. The number of signals;
2. The angle of arrivals in the space domain (or the frequency of arrivals in the time
domain).
Because the resolution given by the MUSIC algorithm exceeds the Rayleigh resolution criterion, it is classified as a high-resolution or super-resolution algorithm. This criteria was
developed following works made by Lord Rayleigh in 1879. It states that two arrivals are
considered resolved when the first minimum angular spectrum value of one signal coincides
with the maximum angular spectrum value of the other signal. In addition to the presentation of conventional MUSIC, we will give some useful and basic details about ESPRIT and
also Root-MUSIC. Both are based on MUSIC.
3.2
Array signal space definition
Before going too far about eigen-analysis, it is necessary to have more knowledge about
array data space and the relationship between the array signal vector x(t) and the steering
matrix A or the steering vector a(θ ).
15
We assume M signals impinging on an N elements (with N > M) antenna array. In the noiseless case, the eigenvalues (and eigenvectors) of the covariance matrix R xx can be grouped
into two sets:
1. N − M null eigenvalues and the corresponding eigenvectors construct the kernel (null
space) also called noise subspace;
2. M non-null eigenvalues and the corresponding eigenvectors construct the signal subspace.
As a result, an N dimensional space is spanned by N eigenvectors and this space is partitioned into the above two subspaces: the noise and the signal subspaces.
In the case of M > N, the signals cannot be resolved by an antenna array since the system
has more unknowns (M) than equations (N).
As we will see later in this chapter, the noise eigenvectors and the signal eigenvectors are
orthogonal, hence the inner product of the signal eigenvectors with the noise eigenvectors
should be zero. Based on the above eigen-decomposition technique and the partition into
two orthogonal subspaces, the parameters of multiple signals can be estimated. The following development can help to figure out the array data space and the relationship between
array signal vector x(t), steering matrix A or steering vector a(θ M ).
The expression of the array signal vector x (t) in (2.11) can be rewritten as:
x(t) = As(t) +n(t) .
| {z }
u(t)
(3.1)
The matrix A is already defined in (2.16). The vector u(t) represents the noise free signal
vector. It can be seen that u(t) is the linear combination of the steering vectors a(θm ) where
the coefficients are the source signals sm (t). The covariance matrix R xx of x(t) can now be
written as:
R xx = ARss A H + σn2 I
= Ruu + σn2 I N .
(3.2)
As introduced in [1], there are N − M eigenvectors associated to the kernel (null space) of
R xx in the noiseless case. But this is only valid when all source signals are independent or not
fully correlated together to keep the full rank of Rss . To be sure that we have independent
sm (t), the path delay Tm in (2.2) should be greater than the autocorrelation of sd (t) for all
1 ≤ m ≤ M but d 6= m (we recall that Td = 0 since the index d is reserved to the direct path).
With this condition, we have
E{sd (t)sd (t − Tm )}
E{sd (t)sm (t)}
=
1
2
σd
σd2
16
(3.3)
where σd2 is the power of the direct signal as seen in (2.20).
3.3
Eigen-analysis for array signal space
To begin the analysis, we have to organize the eigenvalues and corresponding N × 1 eigenvectors of R xx in a decreasing order:
{λ1 , λ2 , . . . λ N }, (λ1 ≥ λ2 ≥ . . . λ M > 0) ⇐⇒ {v1 , v2 , . . . , v M } .
(3.4)
In the noisy case, having the covariance matrix of the noise in the form of (2.18), the following
results can be obtained:
λ1 ≥ λ2 ≥ . . . λ M > σn2
λ M+1 = λ M+2 = . . . = λ N = σn2
(3.5)
The corresponding eigenvectors have the following properties since R xx has Hermitian symmetry:
vi ⊥v j or viH v j = 0
(i, j = 1, 2, . . . M, i 6= j)
(3.6)
and
viH vi = 1 .
(3.7)
Equation (3.6) shows well this fact that all eigenvectors of a covariance matrix are always
orthogonal.
A matrix Vn is made from the eigenvectors vi associated with the N − M smaller eigenvalues
of R xx as:
V n = [ v M +1 , v M +2 , . . . , v N ] .
(3.8)
Since all column of Vn are orthonormal, they span a space which corresponds to the noise
space. We can use this matrix to project a given vector in the noise space. If the vector lies in
the source space, the projection will be null since the source space is orthogonal to the noise
space. The derivation can be made as follows.
The noise space eigenvectors correspond to the kernel of Ruu , so we can write:
ARss A H vi = 0
i = M + 1, . . . N .
(3.9)
By applying a left multiplication A H to (3.9) and continuously multiplying (A H A)−1 to the
resulting equation, one can get the following expression:
(A H A)−1 (A H A)Rss A H vi = 0 i = M + 1, M + 2, ..., N
.
or
H
Rss A vi = 0
i = M + 1, M + 2, ..., N
(3.10)
17
The covariance matrix of sources Rss has full rank (under the assumption of independent or
1
not fully correlated sources). Then its inverse exists. By a left multiplication by R−
ss on the
above equation, we conclude by these important relations:
A H vi
= 0 i = M + 1, . . . N
so
a H ( θ j ) vi
= 0 or viH a θ j = 0
(
j = 1, 2, . . . M
i = M + 1, M + 2, . . . N
(3.11)
The following important facts are deduced:
- There are N − M minimum eigenvalues that are equal to σ2 .
- All direction vectors a(θ j ) ( j = 1, 2, . . . M) in the Vanderemonde-structure steering matrix A are orthogonal to the N − M noise eigenvectors corresponding to the N − M
minimum eigenvalues.
The concept of eigen-analysis-based signal space is illustrated in Figure 3.1. As shown in
the figure, M = 2 signals are impinging on an array antenna with N = 3 elements. The two
dimensional signal subspace can be visualized as a plane spanned by the signal eigenvectors
v1 and v2 ; the one dimensional noise subspace is orthogonal to the plane, in the direction of
eigenvector v3 .
18
x3
The signal subspace spanned
by the signal eigenvectors
v2
signal eigenvector
a(θ2 )
a(θ1 )
signal eigenvector
v1
x1
x2
v3
The continuum of direction
noise eigenvector
Figure 3.1: Space for M = 2 signals and an N = 3 elements antenna array and eigenspace
from R xx [5].
3.4
Rank calculation
When the signals impinging on the antenna array are uncorrelated or partially correlated,
Rss = E{s(t)s H (t)} is non-singular with rank{Rss } = N. Moreover, the Vandermonde-
structure of the steering matrix A is known to have full rank over the smaller dimension.
The matrix R xx = AR xx A H has a rank of:
n
o
rank{R xx } = rank ARss A H
n
o
≤ min rank{A}, rank{Rss }, rank{A H }
= min (rank{A}, rank{Rss }) .
(3.12)
In general, inequality of rank{Z} ≤ min (rank{X}, rank{Y}) for a matrix product of Z = XY
is encountered in special circumstanced where X or Y have at least one row or one column
completely equal to zero. Here, by considering the natural property of matrices A and Rss ,
this probability will be discarded and we can write:
rank{R xx } = min {rank{A}, rank{Rss }} .
(3.13)
When we have
• no correlation then rank{Rss } = M;
19
• each source is in a direction different from the others then, from (2.14), the first M
columns of matrix A make an ensemble which is linearly independent;
the resulting rank calculation gives:
rank{R xx } = min (min ( M, N ) , M ) = min ( M, N ) .
3.5
(3.14)
Estimation of the covariance matrix
The expression of the covariance matrix in (2.18) or in (3.2) is an ideal situation. In reality,
the expectation requires an infinite number of samples in the time domain.
In fact, we have to made an estimation of the covariance matrix from a limited K number of
snapshots taken at discrete time (kTs ) where Ts is the sample period. The estimation is given
by:
R̂ xx ≈
1
K
K
∑ x(kTs )x H (kTs ) .
(3.15)
k =1
With an estimation rather than the exact value, the smaller eigenvalues of R xx are not equal
to σn2 , and the two subspaces are approximated. So the products in (3.11) are not completely
equal to zero.
3.6
MUSIC spectrum
We recall from (3.11) that all steering vectors a(θm ) are orthogonal to all vectors in Vn . Conventional MUSIC is based on this fact and we can write:
a H (θm )Vn VnH a(θm ) = 0
(m = 1, 2, ..., M)
(3.16)
where index m indicates the source signal index (m = 1 for direct, m = 2, ..., M for reflected
ones).
Therefore, by exploiting the orthogonality between the steering vector and the null space in
(3.16), the MUSIC spectrum for spatial estimation is expressed as [6]:
PMUSIC (θ ) =
1
a H (θ )Vn VnH a(θ )
(3.17)
where a H (θ ) is constructed as in (2.14) with different values of θ.
The denominator of (3.17) gives the norm of the resulting projection of the scanning vector
a(θ ) on the noise subspace. If the angle θ is equal to one in the set θm , then a(θ ) = a(θm )
which lies in the source subspace, orthogonal to the noise subspace. The projection is null.
20
Consequently, peaks of the MUSIC spectrum correspond to the direction-of-arrival of the
signals impinging on the antenna array. The relationship between the number of elements
N in the linear array and the number M of uncorrelated signals should be as follows:
N ≥ M+1
(3.18)
This is because there should be at least one vector space for noise among N eigenvectors to
scan out M = N − 1 signals.
The steps in the conventional MUSIC algorithm are summarized as follows:
1. Choose N (the number of linear array elements) sufficiently large (N > M, the number
of uncorrelated signals);
2. Estimate the correlation matrix R xx of the K measured snapshots;
3. Calculate the eigenvalues of the correlation matrix R xx ;
4. Estimate the number of uncorrelated sources M by an analysis of the eigenvalues;
5. Construct the noise matrix Vn based on noise eigenvectors;
6. Evaluate the spatial “pseudo-spectrum” using (3.17);
7. Pick the M peaks of PMUSIC (θ ) and obtain the DOAs.
3.7
3.7.1
Simulation of the classical method to find the DOAs
Non correlated signals M ≤ N, K → ∞
This is an ideal case where the noise covariance has exactly the form σn2 I. Figure 3.2 shows the
pseudo-spectrum from the MUSIC algorithm with the given values indicated in the caption.
All sources are located correctly and there are well observed maxima in the curves for these
two θ.
If we compare this pseudo-spectrum to the one obtained with the Capon estimator, there is
no doubt that MUSIC estimations are more precise in the spatial dimension since the peaks
are very sharp. In part (b) a lower SNR in dB for all sources is used. The SNR for the m-th
source corresponds to the σm2 /σn2 ratio. The same remarks than in part (a) are made but the
performance impairment is more accentuated. The MUSIC estimator in this part shows very
good performances in estimating the DOAs of the sources.
21
60
50
p(θ) [dB]
40
30
20
10
0
−10
0
20
40
60
80
100
θ [deg]
120
140
160
180
160
180
(a) SNR = 10 dB for each source.
50
40
p(θ) [dB]
30
20
10
0
−10
0
20
40
60
80
100
θ [deg]
120
140
(b) SNR = 0 dB for each source.
Figure 3.2: MUSIC pseudo-spectra to find the DOAs according to the parameters in Table
3.1.
Table 3.1: Non correlated signals M ≤ N, K → ∞.
Parameters
22
Values
N
7
θ
30◦ , 50◦ , 70◦ , 90◦ , 120◦ , 150◦
K
∞
D
λ/2
3.7.2
Non correlated signals M ≤ N, K < ∞
In this subsection, we decrease the number of snapshots K. Therefore as it is explained,
the dominator in (3.17) is not exactly zero with an approximation of the covariance matrix.
Therefore, we expect lower performances than in the previous subsection. Figure 3.3 shows
the result of this assumption with K = 100. The indicated SNR is applied to all arrivals, i.e.
each arrival has the same power level which is 10 times or equal to the noise power.
The same case but with the Capon estimator shows a little change compare to the ideal covariance matrix as stated in Example 2.1. On the other hand, the MUSIC estimator shows a
lower performance, especially when the SNR = 0 dB; we can see that the first two sources
are not well estimated by the sharp peak in the pseudo-spectrum. The inverse of the covariance matrix is not so affected as the two orthogonal subspaces. In general, however, we
observe that the DOA estimation performances of the MUSIC algorithm, even in less than
ideal conditions, remain higher than those of conventional estimators or Capon estimators.
Table 3.2: Non correlated signals M ≤ N, K < ∞.
Parameters
3.7.3
Values
N
7
θ
30◦ , 50◦ , 70◦ , 90◦ , 120◦ , 150◦
K
100
D
λ/2
Non correlated signals, M ≥ N, K → ∞
In this subsection, the number of elements are less than the number of sources. As it is
pointed out in [20], it is easy to conceive that such a situation may be encountered in radio
communications where the number of incident front wave in the receiving antenna becomes
significant. As it is shown in Figure 3.4, the pseudo-spectrum can just estimate 4 sources of
a total of 6 sources. In addition, even with K → ∞, the peaks are not well estimated even in
the MUSIC case. Considering non correlated signals and also M ≥ N, as we stated in (3.14),
we have rank{R xx } = N and therefore N − rank{R xx } = 0: no eigenvalues able to span the
noise subspace and no vector a(θ ) satisfying a H (θ )vi = 0.
However, only the eigenvector associated with the smaller eigenvalue is taken as the noise
subspace here. The pseudo-spectrum PMUSIC (θ ) on θ = θm will be discrete. As it is shown
in Figure 3.4, the denominator of (3.17) has a small value but is not zero. The exact DOAs
cannot be extracted. If we want to estimate the exact values of DOAs in the case of non
correlated signals and also M ≥ N, we have to go deeper in the details which is out of the
perspective of this thesis. Here we just point out the result of this case.
23
50
40
p(θ) [dB]
30
20
10
0
−10
0
20
40
60
80
100
θ [deg]
120
140
160
180
160
180
(a) SNR = 10 dB for each source.
35
30
25
p(θ) [dB]
20
15
10
5
0
−5
−10
0
20
40
60
80
100
θ [deg]
120
140
(b) SNR = 0 dB for each source.
Figure 3.3: MUSIC pseudo-spectra to find the DOAs according to the parameters in Table
3.2.
Table 3.3: Non correlated signals, M ≥ N, K → ∞.
Parameters
24
Values
N
5
θ
30◦ , 50◦ , 70◦ , 90◦ , 120◦ , 150◦
K
∞
D
λ/2
50
40
P(θ) [dB]
30
20
10
0
0
20
40
60
80
θ [°]
100
120
140
160
180
160
180
(a) SNR = 10 dB for each source.
35
30
25
P(θ) [dB]
20
15
10
5
0
−5
0
20
40
60
80
θ [°]
100
120
140
(b) SNR = 0 dB for each source.
Figure 3.4: MUSIC pseudo-spectra to find the DOAs according to the parameters in Table3.3.
3.7.4
Correlated signals M ≥ N, K → ∞.
In this subsection, we change our assumption and consider that the signals are fully correlated. This situation occurs when a signal is a copy of another one like a very close echo.
25
Suppose that the first and second signals at 30◦ and 50◦ are correlated. Therefore we have:
s2 (t) = αs1 (t)
(3.19)
where α is the complex weight coefficient, which represents the phase shift and amplitude
attenuation with respect to the LOS signal, for example.
As it is well illustrated in Figure 3.5, it is impossible to estimate our first two sources.
Table 3.4: Correlated signals, M ≥ N, K → ∞.
Parameters
Values
N
θ
K
D
7
30◦ , 50◦ , 70◦ , 90◦ , 120◦ , 150◦
100
λ/2
To explain more about this case, suppose we have just two source signals impinging on
a linear three element array antenna, and suppose a noiseless case. The exact covariance
matrix R xx of the data x(t) = [a(θ1 )s1 (t) a(θ2 )s2 (t)]> with σ12 = 1, can be expressed as:
R xx = E{x(t)x H (t)}
"
#
1 α∗
= A
AH
2
α α
(3.20)
It is evident that Rss is not a full rank with rank{Rss } = 1. Then the source subspace from R xx
has one dimension; only one scanning vector can (by chance) be perpendicular to the noise
subspace. Therefore, DOAs cannot be estimated by the MUSIC spatial pseudo-spectrum
directly by (3.17).
26
45
40
35
P(θ) [dB]
30
25
20
15
10
5
0
−5
0
20
40
60
80
θ [°]
100
120
140
160
180
160
180
(a) SNR = 10 dB for each source.
40
35
30
P(θ) [dB]
25
20
15
10
5
0
−5
0
20
40
60
80
θ [°]
100
120
140
(b) SNR = 0 dB for each source.
Figure 3.5: MUSIC pseudo-spectra to find the DOAs according to the parameters in Table
3.4.
Example 3.1: Comparison between MUSIC, Capon and
beamforming
To show that MUSIC works much better than the Capon and conventional beamforming
methods, we simulate the same example as in Section 2.5.1, with the same parameters as in
27
Table 2.2 using the MUSIC algorithm. Figure 3.6 shows the results. Compared to Figure 2.3,
we see that the peaks of the pseudo spectrum (3.17) are sharper and higher than with the
other methods.
50
40
p(θ) [dB]
30
20
10
0
−10
0
20
40
60
80
100
θ [deg]
120
140
160
180
Figure 3.6: Finding DOAs using the MUSIC algorithm.
3.8
Root-MUSIC
To evaluate DOAs with the MUSIC algorithm, a scanning vector is needed to scan over all
possible angle of arrivals. To obtain a finer resolution, more sample points must be taken.
Moreover, we need a visual analysis of the pseudo-spectrum to retrieve the peaks and finally
find the DOAs. Consequently, we need a lot of processing resources. The Root-MUSIC
algorithm is a modification of the MUSIC algorithm without using a scanning vector.
The pseudo-spectrum of MUSIC in (3.17) can be rewritten as [6]:
P(θ ) =
where C = Vn VnH .
28
1
a H (θ )Ca(θ )
(3.21)
For a linear array antenna, the element of the steering vector in (2.14) can be written as:
a m n = e − j ( n −1) ϕ m
(3.22)
which is related to the n-th element of the m-th source. So we have:
−1
PMUSIC
=
N
N
∑ ∑ e j( p−1) ϕ c pq e− j(q−1) ϕ
(3.23)
p =1 q =1
where c pq is the entry in the p-th row and q-th column of C. Combining the two summations
into one, (3.23) can be simplified as:
N −1
∑
−1
PMUSIC
=
cn e j nϕ
(3.24)
n=−( N −1)
where cn ≡ ∑ p−q=n c pq , that is cn is the sum of the elements in the n-th diagonal of C. Because
of the Hermitian symmetry of C, it is evident that c−n = c∗n and c0 is real. A polynomial D(z)
similar to (3.24) can be constructed as follows:
N +1
∑
D(z) =
cn z−n .
(3.25)
n=−( N +1)
Evaluating the MUSIC spectrum P(θ ) becomes equivalent to the polynomial evaluation of
D(z) on the unit circle: the peaks in the MUSIC spectrum are where the roots of D(z) lie close
to the unit circle. In the noiseless case, the poles lie exactly on the unit circle at locations
determined by the DOAs. The M roots zm (having unity modulus) should correspond to
n
jnϕm . In the complex plane, the roots on the unit circle are the
those of (3.24) posing z−
m = e
positions of the sources ϕm . It is enough for a linear array antenna to solve the following
equation to find the angular position of the sources:
arg(zmi )
θ̂i = arcsin −
βD
.
(3.26)
Example 3.2: Root-MUSIC
With the same parameters as in examples 2.1 and 3.1, if we want to show the performance
of Root-MUSIC, with the same parameters as in Table 2.2, we can obtain the polynomial:
D(z) = (0.0725 + 0.0992i )z6 + (−0.3768 − 0.4189i )z5 + (−0.7178 + 0.3522i )z4
+ (−0.4940 + 0.0192i )z3 + (−0.4475 + 0.6261i )z2 + (−0.0364 − 1.2191i )z + 4.0000
+ (−0.0364 + 1.2191i )z−1 + (−0.4475 − 0.6261i )z−2 + (−0.4940 − 0.0192i )z−3
+ (−0.7178 − 0.3522i )z−4 + (−0.3768 + 0.4189i )z−5 + (0.0725 − 0.0992i )z−6
29
To find the position of the sources, first we need the zeros of D (z):
zm = [(5.2383 − 1.5974i ) (−1.2255 + 1.3016i ) (0.4481 + 1.7629i ) (−0.9127 − 0.4086i )
(−0.9127 − 0.4086i ) (−1.0000i ) (−1.0000i ) (1.0000)
(1.0000) (−0.3835 + 0.4072i ) (0.1354 + 0.5328i ) (0.1747 − 0.0533i )]
The angle we obtain by Root-MUSIC are [00.0000◦ 60.0000◦ 30.0000◦ ] which shows how
much this algorithm is precise in finding the angle of the different directions, without the
necessity to scan the direction space.
3.9
ESPRIT
In the case of high resolution direction-finding algorithms, ESPRIT [13] is attractive for realtime applications due to its computational and implementation advantages. The basic idea
behind this algorithm is to exploit the so called array displacement invariance structure, i.e.
two identical subarrays separated by a common distance ∆ E .
Subarray 1
Q=N −1
∆E = D
Q=N −1
Subarray 2
Subarray 1
Q=N −2
∆E = 2D
Q=N −2
Subarray 2
Figure 3.7: Two possible subarrays from an eight-element linear antenna array usable with
ESPRIT.
Without loss of generality we suppose the linear array case. As shown in Figure 3.7, the
first Q and last Q elements can be used to form two identical sub-arrays with displacement
∆ E = D ( N − Q), 1 ≤ Q ≤ N − 1 (we must have Q > M). Thus, the array manifold vectors
for these two sub-arrays can be expressed as A1 = J1 A and A2 = J2 A, where J1 and J2 are
selection matrices:
J1 = [ I Q
|{z}
Q× Q
30
0 ], J2 = [ |{z}
0
|{z}
Q× N − Q
Q× N − Q
IQ ] .
|{z}
Q× Q
(3.27)
It is clear that J1 A picks the first Q rows of A, whereas J2 A chooses the last Q rows of A.
Since A is a Vandermonde matrix, it can be shown that:
J1 A = J2 AΦ H
(3.28)
Φ = diag{e− jβ∆E sin θ1 , . . . , e− jβ∆E sin θ M } .
(3.29)
where Φ is:
It is obvious that the matrix A is in the signal space spanned by Vs with Vs = I − Vn since
the signal space is orthogonal to the noise space spanned by Vn . Thus, there exists a matrix
T so that A can be represented as A = Vs T. Thus, we can rewrite (3.28) as:
J1 Vs T = J2 Vs TΨ H
(3.30)
Ψ = TΦT−1 .
(3.31)
where
The matrix Ψs is created from the matrix Φ by a transformation that preserves the eigenvalues. In other words, if we know the eigenvalues of Ψ, we also know the eigenvalues of Φ.
Since Φ is a diagonal matrix, its eigenvalues are directly the element in the diagonal. As a
consequence, the eigenvalues of Ψ and the angles of arrivals are connected via (3.29) by the
expression e− jβ∆E sin θm , where m = 1, . . . M.
3.10
Conclusion
In this chapter we reviewed the important points of the MUSIC algorithm and its two extensions: the Root-MUSIC and ESPRIT algorithms.
MUSIC performs using the eigen-decomposition of the signal covariance matrix R xx . This
matrix generates two orthogonal subspaces called signal and noise subspaces. The latter is
spanned by the eigenvectors associated with the N − M smaller eigenvalues. The principle
is to project the scanning vector on the noise subspace and the pseudo-spectrum gives the
length of the projection. The peaks of this pseudo-spectrum are related to the DOAs. Also, by
simulations, we showed some problems which can occur with the MUSIC algorithm when
the number of sources is larger than the number of elements in the array antenna or when
we have correlated source signals.
The Root-MUSIC algorithm eliminates the need for performing a computationally intensive
search, replacing it with a root-solving problem. The implementation of the root-MUSIC
algorithm is easier than the MUSIC algorithm which requires careful determination of the
peaks and interpolation of the array manifold.
31
The other mentioned algorithm in this chapter is ESPRIT. The algorithm can successfully
estimate the direction of arrivals by exploiting a displacement property of the array. The displacement translates into an underlying rotational invariance of signal subspaces spanned
by two data vectors received by two subarrays.
32
Chapter 4
MVDR Beamforming
4.1
Introduction
The objective of beamforming is to resolve the direction of arrival of spatially separated signals within the same frequency band. Among all forms of beamforming, Minimum Variance
Distortion Response (MVDR) is well known as the optimum beamformer to maximize the
signal to interference ratio. In this chapter, we will have a glance at the main properties and
equations of this beamformer.
4.2
Specification of a beam between different arrival beams
The advantage of array antennas is to have direct access to each elements so it is possible to create spatial filtering by weights adjustment assigned to each element output. The
weighting is made by an amplitude and phase control to form an electronically-steerable
beamformer [21]. The element outputs are multiplied by the weights and summed to produce the beamformer output. Having the sensor outputs x(t) at time t, the array weights
w(θm ) where θm is the direction of interest, the beamformer can be expressed as:
ym (t) = w H (θm )x(t) .
(4.1)
The adaptive beamformer based on the MVDR criterion selects the array weights w(θm )
by minimizing the variance (i.e. average power) of the beamforming output y(t), subject
to maintaining unity response in the look direction (the direction of the source of interest).
This principle is also retrieved in the Capon estimator seen in Chapitre 1. This explains why
MVDR is also referred to as Capon beamforming. Figure 4.1 illustrates a basic adaptive
beamformer with adjustable weights able to put the main lobe in the direction of interest
while eliminating other signals which are considered as interference as in Figure 4.2. In this
manner, the signal-to-interference ration (SIR) goes to infinity in theory, or is maximized in
practice.
33
sensor 1
x1
xN
w1
wN
P y = w∗ x
sensor N
Figure 4.1: Beamforming structure.
We have to estimate the complex N × 1 weight vector w by maximizing the SIR. The input
signal vector x(t) in the noiseless case can be separated into two parts: the signal coming
from the desired direction θ and all other signals. It can be rewritten as:
x = αθ (t)a(θ ) + bθ .
(4.2)
where αθ is complex amplitude of the signal coming from direction θ, bθ is the sum of all
vector components non-linear with a(θ ), i.e. all signals coming from others directions than
θ. If no signal is coming from this direction, then αθ = 0, while if a signal comes from this
direction (i.e. θ = θm ) then αθm (t) = sm (t), using the same notation as in (2.13). The SIR is
now expressed by:
SIR =
where
α θ w H ( θ ) a ( θ ) 2
a H (θ )Rbb a(θ )
(4.3)
Rbb = R xx − µθ a(θ )a H (θ )
(4.4)
µθ = var{αθ (t)} .
(4.5)
and
Applying Schwartz’s inequality to (4.3) yields:
1
SIR ≤ |αθ |2 a H (θ )R−
bb a ( θ ) .
(4.6)
The maximum of this ratio is obtained for:
1
wmvdr (θ ) = βR−
bb a ( θ )
(4.7)
where β is a proportionality constant. Using the matrix inversion lemma and (4.4), we can
write:
1
−1
R−
bb = R xx + µθ
1
R xx a(θ )a H (θ )R−
xx
.
−
1
1 − µθ a H (θ )Rbb a(θ )
(4.8)
Applying (4.8) in (4.7), we retrieve the well-known expression of the MVDR beamforming
as:
wmvdr (θ ) =
34
1
R−
xx a ( θ )
.
1
a H (θ )R−
xx a ( θ )
(4.9)
Desired Signal
Interfering signal
ϕ
β0 D
Figure 4.2: How MVDR works to maximized the desired beam while minimizing the others.
This is exactly the same expression as the weight vector for the Capon estimator given by
(2.26).
As illustrated in Figure 4.2, the radiation diagram of the antenna shows a main lobe in the
direction of the desired signal while the zeros of the diagram are in the direction of the two
other signals. In this regard, there is only one direction which has the maximum power and
the others are approximately zero.
Figure 4.3 shows better how beamforming nulls the interfering signals while maximizing
the desired one. In this example, we suppose the sources are at [30 60 90]◦ , and the other
parameters are according to Table 2.1. Using MVDR beamforming, the directions can be
obtained as shown in Figure 4.3:
35
6
4
0
2
σ [dB]
2
−2
−4
−6
−8
0
20
40
60
80
θ [°]
100
120
140
160
180
100
120
140
160
180
(a)
6
4
0
2
σ [dB]
2
−2
−4
−6
−8
0
20
40
60
80
θ [°]
(b)
Figure 4.3: a) Maximizing the signal at 30◦ and nulling the sources situated at 60◦ and 90◦ b)
Maximizing the signal at 60◦ and nulling the sources situated at 30◦ and 90◦ .
36
4.3
Conclusion
In this chapter we reviewed one of the popular beamformers called MVDR. The weight
vector helps us to maximize the signal to interference ratio. Thus, MVDR ensures that the
signal passes through the beamformer undistorted. Therefore, the output signal power is the
same as the look-direction source power alone. The minimization process then minimizes
the total noise, including interferences and uncorrelated noise.
The MVDR will be used in this project to keep only the signal impinging on the array from
a specific direction. The output will then be equivalent to retrieving a copy of this signal
alone, without any interference.
37
Chapter 5
Proposed algorithm: JDTDOA
5.1
Introduction
In this chapter, we propose a very simple algorithm to find the TDOA and DOA of signals
on an array antenna and associate them together without any knowledge of the transmitted
sequence. We discuss each step to be performed. This algorithm is called Joint DOA and
TDOA (JDTDOA).
5.2
Non joint TDOA and DOA
As stated before, determining the direction and delay of the arrival signals in a multipath
environment is interesting to characterize the propagation channel for mobile communications.
As seen previously, the direction of arrivals can be determined using algorithms such as:
conventional beamforming, Capon or even better MUSIC with an array antenna.
To obtain the delay, the correlation function is used in numerous articles [26], [27]. In most of
the proposed algorithms, the delay can be found effectively by using the correlation function
of the received signal and the transmitted one. In the case of an array antenna, the delays
of different impinging signals can be measured at each element. All peaks in the correlation
function are related to the delays of the arrivals signals, but the question is how to associate
each delay to its proper direction of arrival. To apply the correlation function directly on
the received signal with this known signal to find the delay of the arrival signal, we need to
know about the transmitted signal. This is a disadvantage.
The major drawback to proceed separately for DOA and TDOA estimation is the association
of these delays to their proper directions of arrivals. We cannot suppose that delays and
directions are sorted in the same way. How to overcome this problem is a big challenge and
one of the remarkable points of the proposed algorithm.
39
5.3
DOA and TDAO matching
In this section we are going to explain how we can associate direction and delay without
sorting them in the same order.
There are many ways to estimate the time and direction of each arrival in an array antenna.
Two main ways can be taken. It is possible to deal with this problems by obtaining jointly
the direction and the delay by a two parameter directional vector to create a(θ, t). Then the
MUSIC algorithm can be used to search in a two-dimensional space of the pseudo-spectrum
P(θ, t) as in (3.17). A peak must appear at each (θm , Tm ) so the association between direction
and delay is made directly. The problem here is the complexity of the search: scanning the
entire space can take a very long time. If we have an idea where one of the M peaks is, an
LMS or gradient search can be perform to accelerate the method.
The other method is to proceed independently by applying the MUSIC algorithm to estimate
all directions of arrival signals; after that, applying a conventional cross-correlator between
the signal at one receiving element and a copy of the emitted signal to estimate all delays of
arrival signals. Two limitations appear with this method: first, it is necessary to include a
known pilot signal at the receiver to create the copy of the direct signal alone. Without an
idea of the direct signal, the autocorrelation can be used instead but many peaks will appear
at all positions Tp − Tq (p 6= q) and not just at positions Tm − Td (where the index d corre-
spond to the direct signal). Second, the delays and the directions are estimated separately.
Another step is needed to match or associate each estimated delay with one direction among
those estimated.
5.4
First version of JDTDOA
So, we propose to proceed in an intermediate way. Rather than having completely independent searches of directions and delays, we suggest to make the second search (in T) considering the result of the first search (in θ). The proposed algorithm has many advantages: no
known signal is needed any more, and in addition, not only the association is made directly,
but also the two searches are performed in a simple way.
5.4.1
Main principle
We eliminate the problem of using pilot signal by taking the output of a beamformer filter as
the close copy of the emitted signal. For each element of our array antenna, we just consider
one direction θm at a time by performing the beamforming. We will take one by one the
directions of arrivals found by a DOA algorithm, MUSIC for instance. For each direction of
arrivals, the output of the filter gives a copy of the signal coming from specific direction.
Up to now, it is impossible to know if this copy corresponds to the direct signal or a reflected
40
one. As stated in (2.2), each reflection is linked to the direct signal which corresponds to the
emitted signal shifted in time by the propagation delay. We can perform the correlation of
this copy with one of the signals among the N elements of the array antenna, named xn (t).
The correlation function would exhibit as many peaks in τ as the number M of arrivals since
the received signal at each element always contains all arrivals.
If we repeat this process (beamforming and cross-correlation) for another direction say θ p
(the p-th arrival), we will obtain another correlation function very similar to the previous
one, except it is shifted in τ by the delay Tm − Tp .
Taking all directions θ p among the M available (1 ≤ p ≤ M, but p 6= m), it is now possible
to know all M − 1 delays compared to that from the m − th arrival in direction θm .
The steps are:
a) The MUSIC algorithm, shown in Chapter 3, is applied to find all directions of arrivals
θm . The θm are the M maxima of the pseudo-spectrum P(θ ) of (3.17). We can also use
ESPRIT [13] or Root-MUSIC [17] to estimate directly all directions of arrivals without
plotting any graph.
b) A new signal is generated at the output of the antenna array applying a beamformer
filter in one of the directions found in the previous step. This process tries to eliminate
all arrival signals except the one having the index m in the direction θm . The conventional beam steering can be made by phasing the array to steer the main lobe in the
direction θm .
Even though this step is very simple, this is the main contribution of this work. The
idea is important because we now have a pseudo copy of sm (t), named ym (t), defined
in (2.2) by summing the signals from all elements as in a phased array antenna. We
then have
βsm (t) ≈ ym (t) = w H (θm )x(t)
(5.1)
where β is a proportional constant and w(θ ) is the weights of the beamformer filter.
For the case of conventional beam steering on a linear array, we have w = wbs so that:
wbs (θm ) = [1, e− jϕm , e− j2ϕm , . . . , e− j( N −1) ϕm ]>
(5.2)
where ϕm is calculated as in (2.10) and x(t) is the snapshot vector defined in (2.11).
c) Then, we make a conventional cross-correlation between ym (t) (which contains ideally
only the signal from the m-th arrival) and the signal received at any of the N elements
xn (t) (which contains all arrivals) to retrieve an output um (τ ):
u mn ( τ ) = y m ( t ) ∗ x n ( t )
(5.3)
41
where ∗ is the correlation function. However, sm (t) is only a proportional delayed
version of sd (t) since sm (t) = αm sd (t − Tm ) as written in (2.2). Then we have umn (τ ) =
αm udn (τ − Tm ) where udn (τ ) is the output of the cross-correlation with yd (t) which is
close to sd (t), the direct signal. We recall that index d is used for the direct signal so
that Td = 0. Consequently, the delay associated with the m-th arrival can be obtained
from one element (say n-th) in the case where the power of one arrival is always higher
than the others, as:
Tmn ≈ arg max (umn (τ )) − arg max (udn (τ )) .
τ
τ
(5.4)
Taking the highest peak of umn for all m with a given n is prone of errors since the
highest peak can differ depending of m. Consequently, the best is to take another crosscorrelation between umn (τ ) and udn (τ ) for a given n, to find the delay:
Tmn = arg max ((umn (τ ) ∗ udn (τ )) .
τ
(5.5)
We can also profit of having N elements to make the means over the N estimate Tmnb .
So, we have finally:
Tm =
1
N
N
∑ Tm
n
.
(5.6)
n =1
This new method works very well as we will see in the next section showing simulation
results. However, we can improve the method by a small change in step (b). The purpose
of this step is to remove all arrival signals except the one in direction θm . The beam steering
works but arrival signals coming from directions close to θm are just attenuated a little bit, not
enough for very good results. This is why we suggest to use MVDR beamforming instead.
With MVDR, w = wmvdr is calculated as in (4.7) or equivalently (2.26) :
wmvdr (θm ) =
1
R−
xx a ( θm )
1
a H (θm )R−
xx a ( θm )
(5.7)
which gives a ym (t) much more proportional to sm (t) since all contributions from other directions than θm are completely removed.
5.4.2
Simulation results
The array is made with N = 8 elements having an distance of D = λ/2.
To show that the algorithm is able to associate direction and delay of arrivals, we consider
a direct signal coming from the source at θ2 = 30◦ with a signal-to-noise ratio SNR =
µ
σ2
=
20 dB. The index for the direct signal is then d = 2 (T2 = 0). Three reflected signals are
impinging on the array from θ1 = −10◦ , θ3 = 40◦ and θ4 = 70◦ with delays from the direct
42
35
30
25
P(θ) [dB]
20
15
10
5
0
−5
−80
−60
−40
−20
0
θ [°]
20
40
60
80
Figure 5.1: MUSIC pseudo-spectrum from the simulation of the numerical example.
signal equal to T1 = 11.5, T3 = 2.8 and T4 = 18.4 µs respectively and SNR1 = 14, SNR3 = 6
and SNR4 = 17 dB. So, we have M = 4 and
θ = [−10◦ , 30◦ , 40◦ , 70◦ ]
T = [11.5, 0, 2.8, 18.4] µs.
An estimation of the covariance matrix is computed from K = 500 snapshots. A snapshot
is taken at interval corresponding to the symbol duration Ts = 1.0 µs. Then, when a crosscorrelation is made between different signals, the resolution will be equal to 1 µs.
Table 5.1: Simulation parameters to determine TDOA and DOA.
Parameters
Values
N
θ
SNR
T
f0
D
Ts
K
8
[−10◦ ,
30◦ , 40◦ 70◦ ]
[14 20 6 17]
[11.5 0 2.8 18.4]µs
109 Hz
λ
2
1.0µ s
500
The MUSIC algorithm using (3.17) is now applied and the pseudo-spectrum is plotted in
Figure 5.1. From this figure, the 4 peaks give the direction of arrivals. We found, for this
43
Normalized cross−correlation xn(t) and s1(t)
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
−20
−15
−10
−5
0
τ [µs]
5
10
15
20
Figure 5.2: Correlation function curves between xn (t) (n = 1, 2, . . . 8) and the direct signal
sd (t) to find the delays.
example, an estimated vectors of DOAs with Root-MUSIC:
θ̂ = [−9.92◦ , 30.12◦ , 39.86◦ , 70.18◦ ] .
At this step we are not able to determine which direction correspond to the direct path and
which ones corresponds to the reflected paths.
If we apply an autocorrelation directly on xn (t) (we recall than xn (t) is the signal received
at the n-th element), we will obtain a lot of peaks (more than 4) at all positions Tp − Tq .
Applying a cross-correlation between xn (t) and sd (t) (sd (t) is the direct signal alone) rather,
we obtain 4 peaks at position Tm̆ − Td in a different order m̆ as seen on Figure 5.2. Effectively,
the 4 peaks are located close to TDOAs T̆ ≈ [0, 2, 11, 18] µs; vector T̆ contains an estimation
of TDOAs in increasing order which is not the right order considering the signal order in
the vector of estimated directions of arrival θ̂. We recall that the exact TDOA vector is T =
[11.5, 0, 2.8, 18.4] µs. The problem now, is to associate each TDOA to each DOA. Moreover,
we need to know the content of the emitted signal (or to have the direct signal alone) when
proceeding in this manner. That is why step b) in the proposed algorithm is so important.
Beginning for instance, with the DOA at −9.92◦ (m = 1 but the order is not important)
and the corresponding weight vector wmvdr (−9.92◦ ) following (4.7), the cross-correlation
between y1 (t) from (5.1) and xn (t) gives u1n (τ ) defined in (5.3). The signal y1 (t) should be
close to s1 (t) so u1n (τ ) exhibits 4 peaks as shown in the top-left of Figure 5.3. These curves
are plotted with the 8 different values of n (1 ≤ n ≤ 8).
Now, we repeat the algorithm with the signal whose DOA is at 30.12◦ (m = 2). We obtain
the corresponding weight vector wmvdr (30.12◦ ). The signal y2 (t) should be close to sd (t)
44
20
Normalized cross−correlation
20
Normalized cross−correlation
Normalized cross−correlation
Normalized cross−correlation
m=1
1
0.8
0.6
0.4
0.2
−20
−10
0
τ [µs]
m=3
10
1
0.8
0.6
0.4
0.2
−20
−10
0
τ [µs]
10
m=2
1
0.8
0.6
0.4
0.2
−20
−10
0
τ [µs]
m=4
10
20
−10
0
τ [µs]
10
20
1
0.8
0.6
0.4
0.2
−20
Figure 5.3: All correlation functions curves between xn (t) (n = 1, 2, . . . 8) and ym (t) for each
m (m = 1, 2, 3, 4) after beamforming with wcapon to find the delays associated to the m-th
arrival.
(d = 2 in this example) so the cross-correlation of this signal and xn (t) gives the functions
u2n (τ ) for the 8 values of n. They are very close to the curves in Figure 5.2 and proves that
y2 (t) ≈ sd (t). We can find the delay T1 − T2 by the application of another cross-correlation
function between u1n (τ ) and u2n (τ ). It is easy to see that the curves on the top-right of Figure
5.3 seem to be the same curves than the ones on the top-left with a left shift of approximately
11 µs. The signal at −9.92◦ with index m = 1 is then delayed by +11 µs from the signal at
30.12◦ with index m = 2.
With the signal at 39.86◦ , the output of the filter wmvdr (39.86◦ ) gives y3 (t), and the crosscorrelation of this signal and xn (t), gives u3n (τ ). The delay T3 − T2 can be found from another
cross-correlation function between u2n (τ ) and u3n (τ ). It is easy to see that the curves on the
bottom-left of Figure 5.3 seem to be the same curves than the ones on the top-right with a
left shift by approximately +3 µs: the signal at 39.86◦ is delayed by 3 µs from signal at 30.12◦ .
The procedure is similar for the DOA at 70.18◦ .
45
5.5
The final version of JDTDOA
As it is mentioned in the previous section, we succeeded in finding the delay and direction
of each arrival and at the same time to associate them together. The problem of this first
version was a need of two cross-correlation functions and the fact that some signal can be
embedded by the others such as, in the last example, the fact that the reflection just had a
delay of 2.8 µs from the large direct signal.
In this section we use the first two items in the previous section but we change step “c” to
have more precise and less complicated calculations. The step is now described as follows:
c) We make a conventional cross-correlation between ym (t) from m = 1 . . . M (which
contains ideally only the signal of the m-th arrival) and any other arrival signal among
the M ones, say y p (t) from the p-th arrival, where p can be taken in 1 . . . M. That gives
the output um p such that:
um p (τ ) = ym (t) ∗ y p (t)
(5.8)
The correlation function exhibits now a unique strong peak rather than M peaks with
variable heights. The correlation function would be maximum when τ corresponds
exactly to the delay between ym (t) and y p (t). Since ym (t) is the pseudo copy of sm (t),
ym (t) is proportional to sd (t − Tm ) according to (2.2). The same reasoning is applied
to y p (t) with sd (t − Tp ). Then the unique peak of um p (τ ) gives the delay difference
between the m-th and the p-th arrivals:
Tm − Tp = τm− p = arg max um p (τ ) .
τ
(5.9)
After obtaining all Tm − Tp for m = 1 . . . M for a given p, we can find the index d of the
direct signal. In fact, the value of m giving the most negative τm− p (or it can be 0, if we
select by chance p = d) corresponds to the index d of the direct signal since the direct
signal is always the first arrival. So, we have:
d = arg min Tm − Tp .
m
(5.10)
Consequently, the delay for each arrival compared to the direct signal can be obtained:
Tm − Tp − Td − Tp
= arg max um p (τ ) − arg max ud p (τ )
Tm =
τ
τ
(5.11)
since Td is assumed to be 0.
As with the first version, to associate each DOA to each TDOA, the algorithm considers one
direction of arrival at a time from those provided by the MUSIC spectrum, and calculate the
46
beamformer output signal ym (t) from each of them. The advance (τm− p < 0 ) or the retard
(τm− p > 0) of the m-th arrival compare to a given p-th arrival in (5.9) is extracted by the peak
location in τ of the correlation function (5.8).
This new method works very well as we will see in the next chapter showing simulation
results.
5.6
Conclusion
In this chapter, we developed and explained the proposed algorithm. This new algorithm is
much less complicated in mathematical calculations than joint MUSIC with steering vector in
θ and T. We found a very simple way to associate the direction and the delay obtained by two
well known process: MUSIC for DOA and cross-correlation for TDOA. Two versions were
discussed. Although in both versions we use the MUSIC and MVDR algorithms, the last
step is different. In the first version, the MVDR beamforming is performed on one direction
of arrival and we calculate the correlation of this signal with the one which is received in
a selected element without having applied MVDR on other DOAs. The peaks illustrate the
delay of our arrivals. We can find and associate each direction to its proper delay with high
resolution. However, the second version of the proposed algorithm constitutes the best way.
The second algorithm is based on all correlation functions of the pseudo copy of the emitted
signal which is the output of the MVDR beamformer from all directions.
In this chapter, we just explained the steps of the second proposed algorithm. We will perform simulations in the next chapter to prove that this algorithm works well.
47
Chapter 6
Simulations of JDTDOA
6.1
introduction
In this chapter, we present results from simulations to show how the second version of the
proposed JDTDOA algorithm performs. Many cases are simulated using different parameters according to the aims in view.
6.2
Operation of JDTDOA
At first, we will use the same parameters for which results were shown at each step of the
first version of the algorithm in subsection 5.4.2.
Since the first step of version 1 and version 2 of JDTDOA are the same, then the MUSIC
pseudo-spectra giving the DOAs are also the same. We retrieve the one for this example in
Figure 5.1. We found, for this example, an estimated vectors of DOAs with Root-MUSIC:
θ̂ = [−9.92◦ , 30.12◦ , 39.86◦ , 70.18◦ ]
(exact DOAs are θ̂ = [−10◦ , 30◦ , 40◦ , 70◦ ]).
In the second step, it is preferable in the second version to calculate all pseudo copy ym (t) at
time t = kTs for directions in θ̂ using MVDR beamforming. The choice of MVDR is driven
by the fact that results were better with MVDR compared to conventional beam steering for
the beamforming.
The change between the two versions appears in the third step. Rather than two crosscorrelations for each arrival, the second version applies cross-correlations directly on the
pseudo-copies ym (t).
49
20
Normalized cross−correlation
20
Normalized cross−correlation
Normalized cross−correlation
Normalized cross−correlation
p=1
1
X: 0
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=3
1
0.8
X: −9
Y: 1
0.6
0.4
0.2
−20
0
τ [µs]
p=2
1
X: −11
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=4
20
1
X: 7
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
20
Figure 6.1: Correlation functions curves u1 p (τ ) (taking θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦
and θ4 = 70.18◦ ) to find the associated delays.
For each θ in vector θ̂, we must obtain the pseudo-copy ym (t). Beginning with θ = −9.92◦
(m = 1, the order is not important yet), we compute the corresponding weight vector wmvdr
following (5.7) taking θm = −9.92◦ . We retrieve y1 (t) by applying this weight vector to the
received signal as in (5.1). The signal y1 (t) should be close to s1 (t) = α1 sd (t − T1 ). And so
on for θ = 30.12◦ , 39.86◦ and 70.18◦ in this example.
Figure 6.1 shows the M = 4 cross-correlations between y1 (t) and y p (t) giving the functions
u1 p (τ ) (m = 1) according to (5.8). From these curves we see that d = 2, since the peak appears
at the −11µs (we recall that the resolution of cross-correlation is Ts = 1 µs) in the upper-right
graph p = 2, which is the most negative peak location in τ for the 4 correlation functions. We
can also observe that the DOA corresponding to θ = −9.92◦ has index m = 1 since the peak
is at τ = 0 as for the autocorrelation function. Then the arrival coming from θ1 = −9.92◦
is 11 µs behind the arrival coming from θ2 = 30.12◦ . The peak of the correlation function
u13 (τ ) (θ3 = 39.86◦ ) is approximately at τ = −9 µs then the arrival coming from θ1 = −9.92◦
is 9 µs behind the arrival coming from θ3 = 39.86◦ . From the correlation function u14 (τ ), the
arrival coming from θ4 = 70.18◦ is in advance by close to 7 µs from the arrival coming from
50
θ1 = −9.92◦ . The estimated time delays from these graphs (with m = 1) following (5.11) are
then in the right order now:
T̂ 1 = [0, −11, −9, 7] − [−11, −11, −11, −11] µs
= [11, 0, 2, 18] µs .
In this simulation, the first reflection (arrival #3) is very weak and placed very near in time
(just 2.8 µs late) compared to the direct signal (#2). So, the signal from this reflection is
drowned out by the direct signal. We observed in Figure 5.2 small peaks at the right of the
first peak for all correlation curves. However, the proposed algorithm performs very well to
extract the delay T3 even if this weak signal is very closed to the strongest one. This shows
that the algorithm succeeds to associate the delays and the directions even in the dramatic
20
Normalized cross−correlation
p=1
20
Normalized cross−correlation
Normalized cross−correlation
Normalized cross−correlation
situations.
1
X: 9
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=3
1
X: 0
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=2
1
X: −3
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=4
20
1
X: 16
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
20
Figure 6.2: Correlation functions curves u3 p (τ ) (θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦ and
θ4 = 70.18◦ ) to find the associated delays.
Figure 6.2 shows the results when we repeat the same process but taking the DOA at 39.86◦
(arrival #3), the corresponding weight vector wmvdr , to compute y3 (t) from which are found
the 4 cross-correlation functions um p (τ ). Again, from the graph at lower-left, we see that
51
p = 3 since the peak is at τ = 0 in this graph. The figure indicates that
T̂ 3 = [9, −3, 0, 16] − [−3, −3, −3, −3] µs
= [12, 0, 3, 19] µs .
This new vector of estimated delays of arrivals obtained with m = 3 is slightly different from
the one with m = 1 but it is always in the right order.
If we repeat the process with m = 2, Figure 6.3 shows the results taking the DOA at 30.12◦
(arrival #2). From the graph m = 2, since the peak is at τ = 0. Now we have
T̂ 2 = [11, 0, 3, 18] − [0, 0, 0, 0] µs
20
Normalized cross−correlation
p=1
20
Normalized cross−correlation
Normalized cross−correlation
Normalized cross−correlation
= [11, 0, 3, 18] µs .
1
X: 11
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=3
1
X: 3
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=2
1
X: 0
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=4
20
1
X: 18
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
20
Figure 6.3: Correlation functions curves u2 p (τ ) (θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦ and
θ4 = 70.18◦ ) to find the associated delays.
Finally, Figure 6.4 shows the results with m = 4 i.e. the DOA at 70.18◦ (arrival #4) and the
estimates are:
T̂ 4 = [−7, −18, −16, 0] − [−18, −18, −18, −18] µs
= [11, 0, 2, 18] µs .
52
20
Normalized cross−correlation
20
Normalized cross−correlation
Normalized cross−correlation
Normalized cross−correlation
p=1
1
0.8
X: −7
Y: 1
0.6
0.4
0.2
−20
0
τ [µs]
p=3
1
X: −16
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=2
1
X: −18
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
p=4
20
1
X: 0
Y: 1
0.8
0.6
0.4
0.2
−20
0
τ [µs]
20
Figure 6.4: Correlation functions curves u4 p (τ ) (θ1 = −9.92◦ , θ2 = 30.12◦ , θ3 = 39.86◦ and
θ4 = 70.18◦ ) to find the associated delays.
For a better precision, it is possible to compute the average of these 4 estimated time delay
vectors, T̂ 1 , T̂ 2 , T̂ 3 , T̂ 4 . The mean of these M = 4 vectors gives:
1
T̂¯ =
4
4
∑ T̂ p
= [11.25, 0, 2.5, 18.75] µs
p =1
which is very close to the vector of exact delays.
6.3
Computational complexity
The 2D-MUSIC [24] algorithm is selected as basis to compare the computational complexity.
The 2D-MUSIC is also able to find with high resolution and to well associate DOA and
TDOA of direct and reflected signals in multiple environment. The complexity is evaluated
in terms of complex multiplications.
Either 2D-MUSIC and JDTDOA, the first steps are then same: forming the covariance matrix
R xx from the K snapshots, making the eigen-decomposition of R xx .
53
The principle of 2D-MUSIC is to search in a 2D plane using θ and τ as two distinct parameters. As MUSIC, the steering vector a(θ, τ ) is projected in the noise subspace as in (13)
whose eigenvectors V n form the basis. Each projection needs 2N multiplication and one
division (or one multiplication by the inverse). The pseudo-spectrum is then plotted in 3D
for a grid having nθ points in θ and nτ points in τ. Therefore, a total of nθ × nτ × (2N + 1)
multiplications is required for all combination of θ and τ, besides the eigen-decomposition.
After that, a procedure must be added to localize the M peaks of the 2D pseudo-spectrum.
Root-MUSIC could have been more interesting to reduce calculations and to avoid peaks
retrieving in the the pseudo-spectrum. Unfortunately, a version of Root-MUSIC having 2
scanning parameters is not found until now.
On the other hand, the proposed algorithm JDTDOA takes the following steps:
• The direction of arrivals are found from 1D-MUSIC requiring nθ × (2N + 1) multiplica-
tions. A procedure must be added to localize the M peaks but in a 1D pseudo-spectrum
which is simpler than 2D search. At this step however, the proposed algorithm can
profit of Root-MUSIC to calculate the DOAs without peaks search and with a less computational complexity than 1D standard MUSIC pseudo-spectrum alone!
1
• To retrieve the R−
xx , we can use eigen-decomposition as in MUSIC-2D; however 2N
multiplications must be added after inverting (another N multiplications) all eigenvalues 1/λi for eigenvectors matrix V = [v1 , v2 , . . . v N ] multiplications on each side:
−1 H
−1
1
R−
= diag{1/λ1 , 1/λ2 , . . . , 1/λ N }.
xx = V λ V where λ
• For the next step, the weight vector wθ of MVDR is calculated as in (21). For each
source, N multiplications must be done. So MVDR required a total of M × N multiplications.
• In this step, the pseudo copy of sm (t), corresponding to ym (t) is obtained from (22).
The weight vector wθ is multiplied by the received signal vector x(t) for each value
of t and for each θ = θm . This step is the more consumer one since it takes a total of
K × M × N multiplications
• Finally, the correlation must be made M times (for each source) following (24); each
one needs nτ multiplications for a total of M × nτ .
Consequently, the JDTDOA takes (4nθ + 3 + (1 + K ) M ) × N + Mnτ multiplications.
Considering a system with M = 6 sources (1 direct signal and 5 reflected ones which is sufficient enough) where the received signal on the N elements of an antenna array is sampled
K = 100 times which is sufficient to evaluate the covariance matrix for mobile application.
Considering also a realistic pseudo-spectrum where nτ = 50 (maximum delay of 25 symbols;
54
a longer delay in unnecessary since the reflection arriving far away from the direct signal is
normally insignificant in practice), nθ = 180 (a resolution of 1 degree is typical to separate
each component of the received signal). In this condition, the 2D-MUSIC algorithm needs
up to 18000N + 9000 multiplications whether JDTDOA requires only 1329N + 300 multiplications. However, the extraction of peaks from the 2D pseudo-sprectrum must be made to
retrieve the direction and time delay of arrivals. For a human with his eyes and his brain,
this process is easy; but it is very complex for a computer machine when some peaks are
very smooth (not sharp). The DOAs can be extracted easily using Root-MUSIC at the first
step of JDTDOA and the unique peak of the cross-correlation functions um p (τ ) is found taking τ giving the maximum value. Consequently, as mentioned in [25], the 2D-MUSIC or
2D-Capon needs more calculus in spit of the good results achieved; these latter are however
comparable to the ones from JDTDOA.
6.4
Analysis of JDTOA for different SNRs
In this section, we make a stochastic analysis of the JDTDOA algorithm to find the variance
of the direction of arrival in terms of SNR. The applied parameters are always those taken in
the example of Subsection 5.4.2 and Table 5.1.
The variance of each θ̂m is found by using Root-MUSIC in Monte-Carlo simulations where
the stochastic variable is the noise. Figure 6.5 illustrates that less variance in θ is observed at
higher SNRs as we could expect.
0.1
source 1
source 2
source 3
source 4
0.09
Standard deviation of θ
0.08
0.07
0.06
0.05
0.04
0.03
0.02
0.01
0
−10
−5
0
SNR [dB]
5
10
Figure 6.5: Variance of θ̂m versus SNR for all 4 sources at θ = [30◦ − 10◦ 40◦ 70◦ ].
.
At very low SNRs, the peaks of the MUSIC pseudo-spectrum are very weak, although the
55
positions of the peaks in θ seem to be still correct. When the SNR increases, we will have
the sharper peaks in their exact positions; with SNR even higher, we will have less and less
variation of direction of arrivals. Figure 6.5 shows this fact very well.
Now, we make another analysis by varying two directions of arrivals to see how much the
sources can be brought closer without being confused. In this simulation, only two arrivals
are impinging on the array antenna of 8 elements. One is the direct signal and the other is
the reflected one. The direct signal has an SNR of 10 dB higher than the reflection (SNR2 =
SNR1 − 10 dB). The direction of the direct signal is fixed at θ1 = −30◦ whereas the direction
of the reflection θ2 varies from −26◦ to −20◦ . We perform Monte-Carlo simulations to plot
the variance of θ̂m versus the difference between the two directions.
SNR1 = 15 dB in the first try. As illustrated in Figure 6.6, when the two sources are closer
than 5◦ , the direction estimations of the reflection begins to be poorer since this weak signal
is lost in the most powerful direct signal. The variance of θ̂2 becomes too high and it is not
suitable. A note to explain why the x axis starts with 4 rather than 0: it is because when
we have two sources closer than 4◦ , the algorithm is not able to recognize both and it will
estimate just one peak close to the direction of the most powerful signal.
In another try, the SNR of the direct signal is decreased from 15 to 10 dB. From Figure 6.7,
we can deduce that when the SNR goes down while the number of snapshots is constant,
the algorithm is less able to give good direction estimations. Here, having two sources that
are closer to each other than 6.5◦ becomes hazardous for the continuation of the processing.
The STD curves could be made more relevant at lower angle differences (θ2 − θ1 ) over the
same SNR interval if the number of snapshots would be increased. They could also be made
less relevant if the number of snapshots is decreased. We recall that JDTDOA needs DOAs
estimation from the first step for the weight vector calculation before obtaining the pseudo
copy ym (t) in the second step.
56
0.4
source 1
source 2
0.35
Standard deviation of θ
0.3
0.25
0.2
0.15
0.1
0.05
0
4
5
6
7
θ2− θ1 [deg]
8
9
10
Figure 6.6: Variance versus the changes of θ2 − θ1 when SNR1 = 15 dB, K = 200.
0.4
source 1
source 2
0.35
Standard deviation of θ
0.3
0.25
0.2
0.15
0.1
0.05
0
4
5
6
7
θ2− θ1 [deg]
8
9
10
Figure 6.7: Variance versus the changes of θ2 − θ1 , when SNR1 = 10 dB and K = 200.
6.5
Standard deviation of the delay
In this section, we consider the effect of the delay between two signals. For this purpose, we
vary the delay of two arrival signals to investigate how much the sources can become close
to each other (in time metric), without any problem to calculate the delay of each one. In
this simulation, similarly to Section 6.2, we consider only two arrivals. One direct signal and
one reflected signal. The direct arrival is at −10◦ while the reflected one occurs at 30◦ . The
57
delay of the reflection varies from 1 µs to 10 µs. As it is shown in Figure 6.8 and stated in
Section 5.4.2, since the snapshot is taken at interval corresponding to the symbol duration
Ts = 1 µs, if the delay between two arrivals is less than Ts , we obtain a very high Standard
deviation of T̂ which is not desirable. However, as the delay between two sources increases,
the Standard deviation of delay decreases. In another experience, we show the effect of SNR
−6
1.2
x 10
Standard deviation of τ [s]
1
0.8
0.6
0.4
0.2
0
0
1
2
3
4
5
τm−τp [s]
6
7
8
9
−6
x 10
Figure 6.8: Standard deviation of the delay versus the changes of τm − τp , when SNR1 =
14 dB, SNR2 = 20 dB and K = 200.
on the Standard deviation of the delay. In this simulation, the delay between two signals
is 12 µs. Figure 6.9 illustrates that by increasing the SNR the standard deviation (STD) of
the delay decreases. Since an estimate of τ is taken as the delay corresponding to the maximum of the autocorrelation function, errors can be introduced if the autocorrelation peak of
a desired signal is too low with respect to noise or other secondary peaks. This situation is
observed in Figure 6.9 for SNRs lower than −7 dB, where at each simulation run the auto-
correlation maximum is not (or almost never) associated with the signal of interest. Instead,
the maxima correspond to noise-generated values, or may sometimes "lock" on a secondary
repetitive peak pattern generated as a by-product of the autocorrelation, producing a lower
STD and giving the illusion of a performance enhancement (SNRs below −12 dB). As the
SNR increases, the peak of the desired signal becomes progressively higher than other spurious or misleading peaks (relatively), and the statistics of the estimated delay then become
relevant. This is the situation depicted in this figure for SNRs of −10 dB and more. When
the SNR becomes even higher, the peak position is systematically detected at each simulation run, and no association error is made. Since discrete time steps are used to estimate the
delay, the apparent STD becomes zero when the true STD of the peak becomes too small to
induce significant changes of association among the quantized time intervals. Figure 6.10
58
5
4.5
Standard deviation of τ [µs]
4
3.5
3
2.5
2
1.5
1
0.5
0
−15
−10
−5
0
SNR [dB]
Figure 6.9: Effect of the SNR on the standard deviation of τ.
12
source 1
source 2
Average value of τ [µ s]
10
8
6
4
2
0
−2
−30
−25
−20
−15
SNR [dB]
−10
−5
0
Figure 6.10: Effect of the SNR on the average value of τ.
illustrates the effect of SNR on the average of the delay and it is shown that when the SNR
increases, the average of the delay will converge to its exact value which is 12 µs. There is a
note here that in figures from 6.6 to 6.10, the number of Monte-Carlo tries are ke = 1000, and
we can interpret the small peak in Figure 6.9 for this numbers. If we increase this number
we can obtain the more smooth curves.
59
700
600
Cross−correlation
500
400
300
200
100
0
−2
−1.5
−1
−0.5
0
τ [s]
0.5
1
1.5
2
−5
x 10
Figure 6.11: TDOA estimation when there are no errors is in determining the DOA.
6.6
Effect of the error in determining the DOAs on the TDOAs
In this section, we investigate how the errors estimating the DOAs can effect determination
of the TDOAs and how much the margin of errors in the DOAs have or not an important
effect on determining the TDOAs. As it shown in Figure 6.11, since the DOAs of the sources
are estimated correctly, the peaks in the correlation function are situated at the values related
to the exact delays of the sources. By gradually increasing the error on one of the DOAs
(here on source 2), the curves of the correlation of this source becomes "noisy" (figures 6.12
and 6.13). However, the error in DOA estimation has a limit and when we pass this limit,
the peak of the TDOA of the second source is lost in the noise (Figure 6.15). Just to be
more precise, it is shown in Figure 6.14 that even for an error of 25◦ for the DOA, we still
can have the correct TDOA by using the same algorithm. Therefore, we can conclude from
these runs that increasing the error on DOA estimation does not have an effect on estimating
the delay up to a certain point, and after this point the error on DOA estimation will have
a significantly negative impact on delay estimation using the correlation function as it is
explained in Section 5.5. The parameters in these simulations are the same as in Table 5.1 for
the first two sources and the SNR is fixed at 5 dB for both sources.
60
45
40
Cross−correlation
35
30
25
20
15
10
5
0
−2
−1.5
−1
−0.5
0
τ [s]
0.5
1
1.5
2
−5
x 10
Figure 6.12: Effect of a 10◦ error in determining the DOA on estimating τ.
30
Cross−correlation
25
20
15
10
5
0
−2
−1.5
−1
−0.5
0
τ [s]
0.5
1
1.5
2
−5
x 10
Figure 6.13: Effect of a 20◦ error in determining the DOA on estimating τ.
61
30
Cross−correlation
25
20
15
10
5
0
−2
−1.5
−1
−0.5
0
τ [s]
0.5
1
1.5
2
−5
x 10
Figure 6.14: Effect of a 25◦ error in determining the DOA on estimating τ.
30
Cross−correlation
25
20
15
10
5
0
−2
−1.5
−1
−0.5
0
τ [s]
0.5
1
1.5
2
−5
x 10
Figure 6.15: Effect of a 30◦ error in determining the DOA on estimating τ.
62
6.7
Conclusion
As we mentioned in Chapter 5, by using the MUSIC algorithm and just a simple beam former, we are able to determine the DOA of each arrival. We find a new algorithm called
JTDOA. Simulation results prove that we do not need the received signal at any of the N
elements xn (t) to perform the cross-correlation and retrieve the Um (τ ). It is possible to make
the cross-correlation between ym (t) (which contains ideally only the signal of m-th arrival)
and any other arrival signal among the M ones.
We also performed other simulations to show the effect of SNR on the variance of the DOA
and to show how close the two sources can be set to be able to determine them. We also
investigated the limitation of the proposed algorithm for the two factor, TOA and DOA, for
each arrival to estimate how much two sources can get close without losing the estimation
accuracy of the algorithm.
Finally, we considered the effect of errors in determining the DOAs on the TDOAs estimation. As it is shown, this algorithm can bear the error in determining the DOAs until 30◦ ; if
the error is more than 30◦ , we cannot estimate the TDOAs correctly.
63
Conclusion
Contributions
In this research project, we gave an overview on existing methods which determine either
the direction or the delay of each arrival in multipath environments using an array antenna.
Several methods for finding the direction of arrivals (DOA) can be mixed with methods for
finding the delay of arrivals (TDOA) in the purpose of making an estimation of these two
parameters at the same time. However, their combinations are not able to associate these
two parameters together and in addition they need a known transmit sequence to perform
the correlation function for finding the delays.
The main objective of this work is the association of each direction of arrival to its proper
time delay of arrival in a very simple way without any necessity for a known transmitted
signal.
Methods like ESPRIT, Root-MUSIC or even MUSIC can be modified to make joint parameter
estimations in θ and T simultaneously. But in each case, we encounter some drawbacks
like the load of mathematical calculations, the imprecision of the results, or the need of some
information about the transmitted signal or other characteristics of the transmission channel.
In this work, we proposed a simple and precise method to associate the directions and the
delays of any arriving signals on an array antenna in multipath areas, without any knowledge of any known sequence of the signal. The proposed method called JDTDOA is based
on a mixture of MUSIC estimation, MVDR beamforming and cross-correlation. In fact, MUSIC is a high resolution estimator for DOAs while MVDR is optimal in the sense of SIR to
eliminate undesired signal coming from other directions. The output of the MVDR beamformers for all DOAs give pseudo copies of the emitting signal. The delays are extracted by
using a simple correlator between all pseudo copies with each other.
The complexity of the proposed algorithm is much smaller than the other algorithms working jointly in space and time to find the directions and the delays of arrival signals.
The resolution of DOAs depends on the MUSIC estimation which is known as a high resolution algorithm. However, the resolution in delay is given by a cross-correlation only, with no
65
second-order statistics involved. To increase this resolution, we can use the means of TOAs
found using each of the M recovered copies as the reference, one at a time.
At the end of this thesis, we performed some stochastic simulations to show the relation
between different values of SNR and the variance of DOAs and also TDOAs, to report how
close we can bring the two sources and the effects on the variance of the DOAs. A similar
analysis was made for the TDOAs.
We also found the effects of errors in estimating DOAs in determining the TDOAs.
Future works
In this work, we considered the delay for each arrival taking one sample per symbol. It is
possible to take more samples per symbol by decreasing Ts . However, if the delay is less
than Ts , the algorithm can become unable to find the peaks in the correlation matrix. Here
our suggestion is to consider the steepness of the correlation curves as mentioned in [27] or
directly the profile as in [26].
The other important issue is to make a deep analysis of the JDTDOA with respect to multiple parameters, not only the SNR, to find the limitations in angle resolution and in delay
resolution. We can improve the algorithm to limit the effect of the DOAs on TDOAs.
We can also try to use the same principle but for moving sources (targets). In this case, we
have to consider their Doppler parameters as well as velocity given by other algorithm such
as the Kalman filter.
To extend this work, we can apply different networks of array antennas and in this case the
most challenging issue is dealing with the hand-off problem between base stations or access
points as the source(s) move(s).
66
Bibliography
[1]
P. Deng and P. Fan , An AOA assisted TOA positioning system, International Conference
on Communication Technology Proceedings, 2000. WCC ICCT 2000, vol. 2, pp. 15011504, August 2000.
[2]
N. Hew and N. Zein, Space time estimation techniques for UTRA system, IEEE Colloquium on Capacity and Range Enhancement Techniques for the Third Generation Mobile Communications and Beyond (Ref. No. 2000/003), pp. 6/1-6/7, February 2000.
[3]
R. Jurgen, Smart Cars and highways go global, IEEE Spectr., vol. 28, no. 5, pp. 26-36, May
1991.
[4]
Y.-F. Chen and M. Zoltowski, Joint angle and delay estimation for DSCDMA with application
to reduced dimension space-time rake receivers, IEEE International Conference on Acoustics,
Speech, and Signal Processing, ICASSP 99. Proceedings., vol. 5, pp. 2933-2936, March
1999.
[5]
R. O. Schmidt, Multiple Emitter Location and Signal Parameter Estimation, in Proc. RADC
Spectral Estimation Workshop, pp. 243-258, 1979.
[6]
D. Grenier, Notes de cours Antennes et propagation radio, chapitre Traitement d’antenne,
http://w3.gel.ulaval.ca/ dgrenier/enseignement.html#notes, 2013.
[7]
Q. Spencer, M. Rice, B. Jears, and M. Jensen, A statistical Model for Angle of Arrival in
Indoor multipath propagation, in Proc. IEEE Trans. Vehicular Tech. Conf., Vol. 3, pp. 14151419, May 1997.
[8]
W. Ren, N. Ioannis Psaromiligkos, Direction-of-Arrival and Propagation Delay Estimation
of DS/CDMA Transmissions in Multipath Environments, in Proceedings of the TwentySecond Biennial Symposium on Communications, Queen’s University, Kingston,
Canada, June 2004.
[9]
M. Seunghyun, S. Dongyoun, B. Lee Kwang , Direction-of-Arrival Tracking Scheme for
DS/CDMA Systems: Direction Lock Loop, IEEE trasactions on wireless communication,
VOL. 3, NO. 1, January 2004.
[10] M. Oziewicz, On Application of MUSIC Algorithm to Time Delay Estimation in OFDM
Channels, IEEE Transactions on broadcasting, vol. 51, no. 2, June 2005.
[11] S. Al-Jazzar, J. Caffery, A New Joint AOA/Delay Estimator for Wideband Spread Spectrum
Systems, 1st Mobile and Wireless Commun. Summit, Dresden, Germany, June 19-23,
2005.
67
[12] M. C. Vanderveen, B. C. Ng, C. B. Papadias, A. Paulraj, Joint Angle and Delay Estimation
(JADE) for Signals in Multipath Environments, Thirtieth Asilomar IEEE Conference on
Systems and Computers, vol. 2, pp. 1250 - 1254 ,1996.
[13] R. Roy, T. Kailath, ESPRIT-Estimation of Signal Parameters via Rotational Invariance Techniques, IEEE Trans. on Acoustic, Speech, and Signal Processing, vol. 37, no. 7, July 1989.
[14] M. Haardt, Unitary ESPRIT how to obtain increased estimation accuracy with a reduced computational burden, IEEE Transactions on Acoustics, speech and signal processing, vol. 43,
no. 5, pp. 1232-1242, 1995.
[15] D. Wang, H. Yao and Y. Wu , A Second-Order Performance Analysis of the ESPRIT Algorithm
in Presence of Array Modeling Errors, Acta Electronica Sinica, vol. 40, no. 10, pp. 21332139, 2012.
[16] I. N. EI-Behery, R. H. Macphie, Maximum Likelihood Estimation of Source Parameters from
Time-Sampled Outputs of a Linear Array, J. Acoustic Soc. Am., vol 62, no. 1, July 1977.
[17] T. J. Shan, M. Wax, and T. Kailath, On Spatial Smoothing for Direction-of- Arrival Estimation
of Coherent Signals, IEEE Trans. on Acoustics, Speech, and Processing, Vol.33, No. 4, Aug
1985.
[18] G. Tsoulos, Smart Antennas for Mobile Communication Systems: Benefits and Challenges, IEE Electron. Commun Eng. Journal, ll(2): pp. 84-94, Apr. 1999.
[19] J. Capon, High-resolution frequency-wave number spectrum analysis, IEEE Proc, 57, pp.
1408-1418, 1969.
[20] J. H. Winters, Optimum Combining in Digital Mobile Radio with Cochannel Interference,
IEEE Journal on Selected Areas in Communications, vol. 2, no. 4, july 1984.
[21] J. Litva and T. K-Y. Lo, Digital beam forming in wireless communications, Artech House, 1st
edition, 1996
[22] B. A. Cipra, The best of the 20th century: editors name top 10 algorithms, SIAM News, vol.
33, no. 4, 2000.
[23] M. Pukkila, Channel Estimation Modeling, Nokia research center HUT,S-72.333 Postgraduate Course in Radiocommunications, Fall 2000.
[24] N. Laghmardi, F.Harabi, H. Meknessi, A. Gharsallah, A Space-Time Extended MUSIC
Estimation Algorithm for Wide Band Signals, Springer-Verlag, Arabian Journal for Science
and Engineering, Vol. 38, Issue 3, pp. 661-667, March 2013.
[25] J.-H. Lee, S.-W. Cho, and H.-J. Moon, Application of the alternating projection strategy
to the Capon beamforming and the MUSIC algorithm for azimuth/elevation AOA estimation, Journal of Electromagnetic Waves and Applications , vol. 27, no. 12, pp. 1439-1454,
England, July 2013.
[26] S. A. Sattarzadeh and B. Abolhassani, TOA Extraction in Multipath Fading Channels for
Location Estimation, in Proc. IEEE Symposium on Personal, Indoor and Mobile Radio
Comm., (PIMRC’06), pp. 1–4, Helsinki (Finland), 2006.
68
[27] K. S. Shanmugam, A. Lopez, D. Lu, Ning Luo, J. Nielsen, G. Lachapelle, R. Klukas
and A. Taylor, Wireless Location in IS–95 CDMA Cellular Radio Systems, TRLab Wireless
Conference, Calgary, 11-13 July, 2005.
69
© Copyright 2026 Paperzz