EE 388 : Syllabus

The basic philosophy of the course is:

Many of the ideas in modern coding are very intuitive and natural.

If someone had not invented them a few years ago, you could invent them yourself.

A significant part of this course is devoted to: (i) Codes based on sparse graph constructions; (ii) Iterative decoding algorithms. For these topics a useful reference is the text book by Tom Richardson and Rudi Urbanke (pointers in parenthesis) For other topics (eg spatial coupling and polar codes) we will use handouts and original papers.

Here is a rough syllabus (changes are possible, and suggestions/feedback are welcome).

January 5, 7

Basic terminology and scope of coding theory. Regular sparse graph ensembles. Basic properties. (Chapter 1)

January 12, 14

Message passing decoding for the Binary Erasure Channel. Analysis through density evolution. (Chapter 3)

January 19, 21

Irregular graph ensembles. Density evolution. Achieving capacity on the Binary Erasure Channel. Tornado Codes, LT codes, Raptor Codes. (Chapter 3)

January 26, 28

General Binary Memoryless Symmetric (BMS) channels. Message passing decoders. Belief propagation, quantized message passing. Density evolution. Thresholds. (Chapter 4)

February 2, 4

Rateless codes. Finite block-length performances. Error floor. Waterfall. (Chapter 3.23, 3.24, 4.13, 4.14)

February 9, 11

Achieving capacity on BMS channels through spatial coupling.

February 16, 18

Polar codes. Basic construction. Achieving capaciy via sequential decoding.

February 23, 25

Polar codes. Other decoding algorithms. Finite-length performances and universality.

Mar 1, 3

Convolutional codes, Viterbi and BCJR algorithms. Turbo Codes. (Chapter 6)

Mar 8

Project presentations.

The final project was assigned on Thursday, February 11. It consists in constructing a code which optimizes some performance metric under some constrants and simulating it. Project presentations will take place on Monday, March 7.