# ECE 6279: Spatial Array Processing

Georgia Institute of Technology

Spring 2013

**Instructor:** Prof. Aaron Lanterman

**Official Office:** Van Leer W431

**Phone:** 404-385-2548 (I only occasionally check messages – e-mail

is by far the best way to get in touch with me)

**E-mail:** lanterma@ece.gatech.edu (If you’re e-mailing me about a 6279

related topic, please put “6279” in your

subject line so I can sort 6279 related e-mails easily. Similarly, when

I send class related e-mail, which I tend to do a *lot*, I’ll try to put

6279 in the subject, although sometimes I will forget.)

**Course website**: users.ece.gatech.edu/~lanterma/ece6279

(actually you should know that already if you’re reading this)

**When and where:** TuTh, 12:05-1:25, Van Leer C457

**Syllabus**: You’re looking at it right now. It’s a *living*

syllabus. I’m not going to pass out a dead tree version, nor do I suggest you

print it out when you can always get the latest version by looking at the

website. Go electrons!

# News

- 11/30: Homework 10 posted. Last one!

# Exams

- Quiz 1: October 10
- Quiz 2: November 19

# Homeworks

- Homework 1,

due Tuesday, 9/10/13

- Homework 2,

due Tuesday, 9/17/13 - Homework 3,

due Tuesday, 10/1/13 - Homework 4,

due Tuesday, 10/8/13- MATLAB files:

look_vector.m,

steering_vector.m,

makecross.m,

steered_response_hw4_11.m,

crandn.m

- MATLAB files:
- Homework 5,

due Tuesday, 10/22/13 - Homework 6,

due Tuesday, 10/29/13 - Homework 7,

due Tuesday, 11/5/13- MATLAB file: hw7_data11.mat

- Homework 8,

due Friday, 11/15/13 (only worth half as much as a regular homework) - Homework 9,

due Friday, 11/22/13 - Homework 10,

due Friday, 12/6/13# Lectures

Credit to where it’s due: These slides draw heavily from Johnson and

Dudgeon, and are also heavily influenced by notes provided by Doug Williams

for earlier versions of this course, and the version of this course I

took from Dan Fuhrmann at Washington University many years ago.In addition to the PDF, I’ll include the MATLAB code used to make the

various figures on the slides and for various in-class demos. Note that

I whipped up each code fragment as quickly as possible to get the result

I needed, with no thought to re-use, good coding style, or even any

sense of common decency. The comments may be leftovers from previous

scripts, victims of cut and paste, and hence may not accurate.

Use at your own risk!- 8/20: Lecture 1: Introduction and Sales Pitch

(slides,

slides 4-up) - 8/22: Lecture 2: Propagating Waves

(slides,

slides 4-up) - 8/27: Lecture 3: Wavenumber-Frequency Space

(slides,

slides 4-up) - 8/29: Lecture 4: Apertures, Part I

(slides,

slides 4-up,

MATLAB) - 9/3: Lecture 5: Apertures, Part II

(slides,

slides 4-up,

MATLAB) - 9/5: Lecture 6: Delay-and-Sum Beamforming for Plane Waves

(slides,

slides 4-up,

MATLAB) - 9/10: Lecture 7: Delay-and-Sum Beamforming for Spherical Waves

(slides,

slides 4-up,

MATLAB,

21.5 MB AVI movie) - 9/12: Lecture 8: Filter-and-Sum Beamforming

(slides,

slides 4-up) - 9/17: Lecture 9: Conventional Narrowband Beamforming

(slides,

slides 4-up) - 9/19: Lecture 10: Stochastic Narrowband Models

(slides,

slides 4-up) - 9/24: Lecture 11: Signal to Noise

(slides,

slides 4-up) - 9/26: Lecture 12: Time Averaging

(slides,

slides 4-up) - 10/1: Lecture 13: Spatial Averaging and Co-arrays

(slides,

slides 4-up)- D.L. Snyder, The

Role of Likelihood and Entropy in

Incomplete-Data Problems: Applications to

Estimating Point-Process Intensities and

Toeplitz Constrained Covariances, Proc. IEEE, Vol. 75, No. 7, July 1987,

pp. 892-907. - D.R. Fuhrmann, Application of Toeplitz

Covariance Estimation to Adaptive Beamforming and Detection,*IEEE*, Vol. 39, No. 10, Oct. 1991, pp. 2194-2198.

Trans. on Signal Proc.

- D.L. Snyder, The
- 10/3: Lecture 14: Constrained Optimization

(slides,

slides 4-up) - 10/8: Lecture 15: MVDR Beamforming

(slides,

slides 4-up) - 10/10: Quiz 1
- 10/15: Fall Break
- 10/17: Aaron out of town — no lecture
- 10/22: Lecture 16: Subspace Methods: Eigenvalue Method and MUSIC

(slides,

slides 4-up) - 10/24: Lecture 17: Root MUSIC

(slides,

slides 4-up)- B.D. Rao and K.V.S. Hari,

Performance

Analysis of Root-Music,

*IEEE Trans. on Acoustics, Speech, and Signal Proc.*, Vol. 37, No. 12,

Dec. 1989.

- B.D. Rao and K.V.S. Hari,
- 10/29 Lecture 18: ESPRIT

(slides,

slides 4-up)- A. Paulraj, R. Roy, and T. Kailath,

A Subspace Rotation Approach to Signal Parameter Estimation,

Proc. IEEE, Vol. 74, No. 7, July 1986, pp. 1044-1045. - A.L. Swindlehurst, B. Ottersten, R. Roy, and T. Kailath,

Multiple

Invariance ESPRIT,

*IEEE Trans. on Signal Proc.*, Vol. 40, No. 4, 1992. (See Section II;

most of this paper is beyond the scope of what we covered, but the review

of basic ESPRIT is nice.)

- A. Paulraj, R. Roy, and T. Kailath,
- 10/31: Lecture 19: Robust Constrained Estimation

(slides,

slides 4-up) - 11/5: Lecture 20: Introduction to Estimation Theory

(slides,

slides 4-up) - Useful paper covering some material in Lectures 21 and 22:

M.I. Miller and D.R. Fuhrmann,

“Maximum-likelihood

narrow-band direction finding and the EM algorithm“, IEEE Trans. on

Acoustics, Speech, and Signal Proc., Vol. 38, No. 9, Sept. 1990,

pp. 1560-1577. - 11/7: Lecture 21: “Deterministic Signal” Gaussian Model

(slides,

slides 4-up) - 11/12: Lecture 22: “Stochastic Signal” Gaussian Model

(slides,

slides 4-up) - 11/14: Lecture 23: Introduction to Cramer-Rao Bounds

(slides,

slides 4-up) - 11/19: Quiz 2
- 11/21: Lecture 24: Cramer-Rao Bounds for Arrays

(slides,

slides 4-up) - 11/26: Aaron our of town — no lecture
- 11/28: Thanksgiving break
- 12/3: Lecture 25: Transformations of Cramer-Rao Bounds

(slides,

slides 4-up)

<!–

- 8/20: Lecture 1: Introduction and Sales Pitch
- 10/29 ESPRIT
- 10/31 Robust Constrained Est
- 11/5 Intro Est Th Part 1
- 11/7 Stochastic Signal Guassian Model
- 11/12 Det Sig Gaussian Model
- 11/14 Special Cases of ML Est
- 11/19 Intro to CR Bounds
- 11/21 CRB for Arrays
- 11/26 Transform of CR Bounds
- 12/3 Model Order Est
- 12/6 Unconstrained Cov Est
- 10/1: Lecture 11: Conventional Wideband Beamforming

(slides,

slides 4-up) - 10/15: Fall Break
- 10/29: Lecture 18: Pisarenko Harmonic Decomposition

(slides,

slides 4-up) - 11/12: Lecture 22: ESPRIT, Part 2 (Total Least Squares)

(slides,

slides 4-up) - 11/21: Lecture 25: Introduction to Estimation Theory, Part II

(slides,

slides 4-up)- P. Stoica and A. Nehorai,

“MUSIC, Maximum Likelihood, and

Cramer Rao Bound“, IEEE Trans. on Acoustics, Speech, and Signal

Proc., Vol. 37, No. 5, May 1989, pp. 720-741. - P. Stoica and A. Nehorai,

“MUSIC, Maximum Likelihood, and

Cramer-Rao Bound: Further Results and Comparisons“, IEEE Trans. on

Acoustics, Speech, and Signal Proc., Vol. 38, No. 12, Dec. 1990, pp.

2140-2150.

- P. Stoica and A. Nehorai,
- 4/25: Lecture 32: Model Order Estimation

(slides,

slides 4-up) - 4/13: Lecture 33: Unconstrained Covariance Estimation

(slides,

slides 4-up) - 4/15: Lecture 34: Where to Go from Here?

(slides,

slides 4-up)

–># References

**Only required text:**D.H. Johnson and J.E. Dudgeon,

*Array Signal Processing: Concepts and Techniques*, Prentice Hall, 1993.

Available in the bookstore. (I also saw a few used copies at a reasonable

price on Amazon.) If the bookstore has run out and you want a copy from them,

let me know so I can tell them to order more.**Good to get if you’re rolling in extra $$$ and plan to do**

serious research in array signal processing:

H.L. Van Trees,*Optimum Array Processing*(Part IV of Detection,

Estimation, and Modulation Theory), Wiley 2002 (not required!)- The Matrix Cookbook (thanks to

Aaron Albin for the tip)

# Administrative Details

**Laptops down during lecture**: This isn’t because I’m offended that

you’re paying more attention to your e-mail than to me; it has to do with

the degree to which I am easily distracted. When I see laptops up, I find

myself wondering what people are looking at and I too easily wander off course.**Prerequisities**: Officially, ECE4270: Introduction to Digital

Signal Processing. In reality, I won’t use much more theory than you

would find in ECE2025 or ECE2026+ECE3084.

You will need to know basic probability theory

(Gaussian distributions, covariances,

Bayes rule, conditional expectations) at the

level of ECE3075, and not be afraid of a little linear algebra (i.e.

eigenvectors and eigenvalues should be good friends), although you need

not have had an entire class on linear algebra. I will try to make this

course as accessible to a wide variety of backgrounds as possible; hence,

if I start throwing around some theory you’ve never seen before, let me

know. I wouldn’t mind either doing a little review in class, or pointing

you to where you should look to get caught up quickly.Note that at

other universities, a detection and estimation class is usually a prerequisite

for an spatial array processing. That is not the case at Georgia Tech.

Hence, I will give Reader’s Digest versions of some topics from ECE7251,

just focusing on the results you’ll need, without the proofs.We will be doing a lot of hacking in MATLAB. You can use another language

if you really really really want, but you will find MATLAB will make your

life much easier. The rather inexpensive student version is available in

the bookstore. Also,

you can look into Octave or

FreeMat,

which are pretty impressive open-source programming languages designed to

be compatible with MATLAB.**Office hours:**Shortly before

homeworks and exams, I will send out an e-mail describing when and

where I will be sure to be available for questions. This will tend to

change slightly from week to week, so look for that e-mail. (Also,

if you walk by my office and

happen to see my office door open, you are welcome to pop in with

questions about the class and/or life in general.)Of course you are always welcome to e-mail me and we can set up a specific

time to meet. Again, put “6279” in your subject.**Homeworks:**Homeworks will be assigned every one to two weeks, and

should

be turned in at the beginning of the class they are due. If you need to

miss class, make other arrangements to get the homework to me.

Late homeworks will be penalized, usually 30% per day (or something

like that; details will be provided on each homework),

and not be accepted at all after

solutions are handed out to the class. The class is rather large and was

given no T.A. support.

Hence, I will probably not be able to do heavily

detailed grading and to a certain extent will be grading by zen. Please have

mercy on me and do not quibble over minor partial credit issues – these things

tend to average out in the end.**Honor code**:

This course will be conducted under the rules and guidelines of

the Georgia Tech Honor Code; infractions will be reported to the

Dean of Students.**Backfile policy**: Use of homework solutions and quizzes from previous

versions of ECE6279 is**forbidden.**The material is highly complex, so it is

extremely difficult to come up with 100% new problems on each offering.

Please be fair to students who may not have access to the same old materials.

Detection of the use of backfiles will result in significant wrath. I have

substantial experience with this matter on recycled lab reports in ECE2025.

I have never had to report an honor code violation in any of my graduate

classes; please let me continue that trend.**Collaboration policy**:

You are encouraged to discuss the homework problems with one other

at the “whiteboard” level – i.e., you are free to exchange ideas about

how to approach a problem, and doodle equations to each other on napkins

at lunch. Working homework in groups is OK (you are encouraged to learn

from each other as much as you learn from me!), but you must keep the

discussion at a conceptual level, and**the work you turn in should be your**

own. You shouldn’t look at someone else’s completed solution, as the

temptation to just copy it would be too high.You can help one another debug at the level of:

- “Why is MATLAB giving me

this error on line 52?” - “Hey, what’s the MATLAB command to find

the eigenvalues of an unlaiden European swallow?” - “Glancing at this horrendous recursion,

can you think of why I’m running out of memory?” - “Why does my linear beamforming code complain about me dividing by

zero?” - “Why don’t my matrix dimensions match in this multiplication?”

…but you should not spend a whole lot of time looking

at the screen of a fellow student when they are

working on their code. In particular:

**Under no circumstances**.

should you give your computer code

to another studentTo my knowledge, this pretty much matches the approach most grad

classes in ECE

take towards what collaboration is and isn’t allowed. Ask me if you

are uncertain about any of this.**Quizzes**: We will have two midterm quizzes given during the usual

lecture period.The quizzes will be targeted to be about an hour in length, but

to avoid punishing people who understand the material but have difficulties

working under the stress of time pressure, I will give you the full hour and a

twenty minutes to work them. The quizzes will be open book and open notes.**Tentative grade breakdown:**Quiz 1: 20%, Quiz 2: 20%, Final: 25%,

Homeworks 35%.Note the homework is worth more than you’ll find in most classes –

that’s because the homework will include some valuable computer exercises

that I cannot replicate in an exam setting,

and I want to make sure you don’t blow them off.The class divides nicely into three chunks, and the final will primarily

focus

on the last chunk

(hence it’s not worth much more than the two earlier quizzes).**Major emergencies**: If you have some sort of major life emergency

– serious illness or injury, death in the family, house

burns down or is flooded, etc. – that seriously

impedes

your progress in the class,

*please*let me know*as soon as possible*so we can work something

out. You will find professors can be quite reasonable if you keep us in the

loop. Please don’t disappear with no warning

half way through, making me think that you

dropped the class, and then reappear out of nowhere

during dead week asking what you can do to make

things up. (Yes, this has happened quite a bit, in both undergrad and

grad classes.)# Tentative Topics

Here are the topics I covered in previous offerings of ECE6279, in

the order I covered them, and the number of lectures I spent on each topic.

I’ll probably rearrange things as we go along, adding and deleting a topic

here or there, sometimes swapping things aroung if I think of a better order,

but this will give you an idea of where we’re going:Introduction and Sales Pitch – Propagating Waves – Wavenumber-Frequency Space

– Apertures (two lectures) – Delay-and-Sum Beamforming for Plane Waves –

Delay-and-Sum Beamforming for Spherical Waves –

Filter-and-Sum Beamforming –

Bandlimited Signals –

Conventional Narrowband Beamforming –

Conventional Wideband Beamforming –

Stochastic Narrowband Models –

Signal to Noise –

Temporal Averaging –

Spatial Averaging and Co-Arrays –

Constrained Optimization –

MVDR Beamforming (two lectures) –

Pisarenko Harmonic Decomposition –

Subspace Decompositions –

Eigenvalue Method and MUSIC –

Root MUSIC –

ESPRIT (three lectures) –

Robust Constrained Optimization –

Nonrandom Parameter Estimation –

Properties of Estimators –

“Stochastic Signal” Gaussian Model –

“Deterministic Signal” Gaussian Model –

Special Cases of Maximum-Likelihood Estimation –

Introduction to Cramer-Rao Bounds –

Cramer-Rao Bounds for Direction Finding –

Model Order Estimation – Unconstrained Covariance Estimation –

Where to Go from Here