Course presentation
This course teaches adaptive signal processing algorithms for extracting information from noisy signals. The emphasis is on recursive, model based estimation methods for signals and systems whose properties change in time. Applications in, for example, communications, control and medicine are covered.
The course presents the fundamentals of adaptive signal processing; meansquare estimation, Wiener filters. Introduction to adaptive filter structures and the least squares method. State space models and optimal (Kalman) filtering. Stochastic gradient, LMS (least mean squares), and RLS (recursive least squares) methods. Analysis of adaptive algorithms: Learning curves, convergence, stability, excess mean square error, misadjustment. Extensions of LMS and RLS.
Headings denoted with an asterisk ( * ) is retrieved from the course syllabus version Spring 2019
Content and learning outcomes
Course contents^{}
This course teaches adaptive signal processing algorithms for extracting information from noisy signals. The emphasis is on recursive, model based estimation methods for signals and systems whose properties change in time. Applications in, for example, communications, control and medicine are covered.
The course presents the fundamentals of adaptive signal processing; meansquare estimation, Wiener filters. Introduction to adaptive filter structures and the least squares method. State space models and optimal (Kalman) filtering. Stochastic gradient, LMS (least mean squares), and RLS (recursive least squares) methods. Analysis of adaptive algorithms: Learning curves, convergence, stability, excess mean square error, misadjustment. Extensions of LMS and RLS.
Intended learning outcomes^{}
After completing the course, the student should be able to:
• Design and apply optimal minimum mean square estimators and in particular linear estimators. To understand and compute their expected performance and verify it.
• Design, implement and apply Wiener filters (FIR, noncausal, causal) and evaluate their performance.
• Design, implement and apply the different adaptive filters to given applications.
• Analyze the accuracy and determine advantages and disadvantages of each method.
• Use the theoretical understanding to do troubleshooting, e.g., in cases the observed performance is not as expected.
• Report the solution and results from the application of the filtering techniques to given problems.
Learning activities
Lectures
There are 13*2h lectures scheduled. Before each lecture we recommend that you read the corresponding pages in the lecture notes. After each lecture we recommend you to look at the corresponding exercises for self study. Please note that very little time is scheduled for problem solving in class (see below). We rather encourage you to try to solve these problems outside class and discuss them with your fellow students. If there still are questions remaining, you are of course welcome to make an appointment with us.
Tutorials
There are 8*2h problem solving seminars scheduled. The problems that will be covered are listed in the schedule.
Voluntary Homework Assignments
As part of the course we will hand out weekly sets of homework problems. In total there will be six such sets. They are not mandatory and you can choose not doing them. If you do hand them in in due time, we will grade them and provide brief feedback. If most of it is correct you will also get 0.5 bonus points towards the exam. Hence, in total you can get maximum 3 points on top of your exam score. However, the main motivation should be the help to get started in doing problem solving early on in the study period. Problem solving is indeed an important part of this course.
Individual handwritten solutions should be submitted in Canvas before the deadline. The problem sets will be made available under "Assignments."
Computer exercises
An important part of the course is the computer (matlab) exercises included in the course material. We have not scheduled any specific times for these in the computer labs. However, we strongly encourage you to use the computers to learn the subject matter. Questions are of course welcome. Please make an appointment or send an email.
The computer exercises are also extremely useful as a preparation for the project assignments.
Matlab functions and data files that are needed are available from the course homepage under "Course material."
Project assignments (mandatory, part of examination)
Two projects in which you will solve "typical" application problems are included in the examination. Instructions are handed out during the course. The release dates and deadlines for reporting are given under "Assignments."
Detailed plan
Schema VT2022286
Preliminary Lecture and Tutorial Plan

Content 
Chapters/Problems 
Lecture 1 
Course Introduction, Review stationary signals 
1,2 
Lecture 2 
Introduction to Estimation Theory, Wiener Filtering 
3, 4.1  4.2 
Tutorial 1 
Estimation, Wiener Filtering 
1.4, 1.5, 1.10 






Lecture 3 
Wiener 
4.3, 4.4 
Lecture 4 
Wiener, Onestep ahead Prediction 
4.4, 4.5 
Tutorial 2 
Wiener filtering/Prediction 
2.1, 2.3, 2.17 






Lecture 5 
Statespace models 
5 
Lecture 6 
Kalman filtering 
6.16.4,6.56.13 
Tutorial 3 
StateSpace Systems/ Kalman Filtering 
3.4, 3.1, 3.26, 3.18 






Lecture 7 
Spectral Estim./ Equalization/ Noise cancellation., Adaptive filtering: steepest descent 
7, 8, 9 
Lecture 8 
LMS 
10 
Tutorial 4 
Kalman/Adaptive filtering 
3.5, 3.25, 4.1 (3.22) 






Lecture 9 
LMS cont'd, applications 
10, 11 
Lecture 10 
RLS 
12 
Tutorial 5 
LMS 
4.12, 4.6, 4.18, 4.10 






Lecture 11 
RLS cont'd 
12 
Lecture 12 
Adaptive filtering as Kalman filtering, review 
13 
Lecture 13 
Extensions to Kalman filtering and LMS 
extra material 
Tutorial 6 
RLS 
4.14, 4.20, 4.33 
Tutorial 7 
walkthrough, questions 
catch up problems, old exam 
Tutorial 8 
walkthrough, questions 
Old exam 
Preparations before course start
Recommended prerequisites
Recommended prerequisites corresponding to: EQ1220 Signal theory or EQ1270 Signal processing
EQ2300 Digital Signal Processing
Specific preparations
The course includes computer based exercises and projects based on using the Matlab software. Students need to install Matlab from the KTH software center on their computers or get access to suitable computer labs.
Literature
 Lecture notes: Adaptive Signal Processing, Hjalmarsson & Ottersten
 Collection of Problems in Adaptive Signal Processing
 Computer Exercises in Adaptive Signal Processing
The above material is available under "Course material" in Canvas.
Instructions for the projects are handed out on the release dates under Assignments.
A collection of formulas for signal processing may be useful "Collection of Formulas in Signal Processing". (This is the same as in our previous courses and can be downloaded under the link: "Course material." )
The following general table of formulas is allowed on the exam:
 BETA Mathematics Handbook
Support for students with disabilities
Students at KTH with a permanent disability can get support during studies from Funka:
Funka  compensatory support for students with disabilities
Examination and completion
Grading scale^{}
A, B, C, D, E, FX, F
Examination^{}
 PRO1  Project 1, 1.5 credits, Grading scale: P, F
 PRO2  Project 2, 1.5 credits, Grading scale: P, F
 TEN1  Exam, 4.5 credits, Grading scale: A, B, C, D, E, FX, F
Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.
The examiner may apply another examination format when reexamining individual students.
The exam consists of five exercises with a maximum score of 50p in total. It is graded by AF. Normally, 23p is required to pass. If you get 2122p, you will get the FX grade and be offered the possibility to do complementary examination for the Egrade.See further the old exams under "course material."
Exams are given two times a year in March and May/June (see schedule for details).
The following are allowed aids on the exam:
 Sheet of selected formulas from the Lecture notes (prepared by the student).
 "Collection of formulas in Signal Processing" KTH EECS.
 BETA Mathematics Handbook
Notice that it is NOT allowed to have written notes in the books and that no other material or electronic equipment is allowed.
Remember to register to the exam well in advance by using My Pages at KTH.
Supplementary information
In this course, the EECS code of honor applies, see: https://www.kth.se/en/eecs/utbildning/hederskodexLinks to an external site..
Other requirements for final grade^{}
2 Project assignments (PRO1, 1,5 ECTS credits, grading P/F; PRO2, 1,5 ECTS credits, grading P/F) completed and reported in pairs of at most 2 students before given deadlines.
Written exam (TENA, 4,5 ECTS credits, grading AF)
Opportunity to raise an approved grade via renewed examination
It is possible to raise an approved grade with a renewed examination. Please contact EECS education administration well ahead of the exam date if you are interested.
Ethical approach^{}
 All members of a group are responsible for the group's work.
 In any assessment, every student shall honestly disclose any help received and sources used.
 In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.
Course Coordinator
Teachers
Teacher Assistants
Examiner