Search programme

​Use the search function to search amongst programmes at Chalmers. The study programme and the study programme syllabus relating to your studies are generally from the academic year you began your studies.

Syllabus for

Academic year
SSY345 - Sensor fusion and nonlinear filtering
Sensorfusion och olinjär filtrering
Syllabus adopted 2021-02-26 by Head of Programme (or corresponding)
Owner: MPSYS
7,5 Credits
Grading: TH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Education cycle: Second-cycle
Major subject: Automation and Mechatronics Engineering, Computer Science and Engineering, Electrical Engineering

Teaching language: English
Application code: 35126
Open for exchange students: No
Block schedule: B
Maximum participants: 100

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0117 Written and oral assignments 7,5c Grading: TH   7,5c    

In programs



Lars Hammarstrand

  Go to Course Homepage


General entry requirements for Master's level (second cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

English 6 (or by other approved means with the equivalent proficiency level)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

Working knowledge of basic probability, statistics, and linear algebra. Basic MATLAB programming skills are also required in order to complete the home assignments and the course projects.


The purpose with this course is to give a thorough introduction to sensor fusion in time-varying settings (also known as filtering or smoothing), i.e., how to perform state estimation using a variety of sensors. Such methods continue to receive considerable attention due to their high versatility; famous examples include that they enabled the landing on the moon and that they are currently important for the development of self-driving cars.

In the course we emphasize on positioning of vehicles, people, mobile phones, robots, etc, though the potential applications go way beyond that. The intention with the course is to provide a solid theoretical background and to give hands-on experience on how to apply the techniques to solve problems of practical importance.

Learning outcomes (after completion of the course the student should be able to)

After the course, students should be able to

  • explain the fundamental principles in Bayesian estimation
  • describe and model commonly used sensors' measurements
  • summarize and compare the most typical motion models in positioning in order to know when to use them in practical problems
  • derive the expression for an optimal filter
  • describe the essential properties of the Kalman filter (KF) and apply it on linear state space models
  • implement the key nonlinear filters (above all the extended Kalman filter, unscented Kalman filter and the particle filter) in Matlab, in order to solve problems with nonlinear motion and/or sensor models
  • select a suitable filter method by analyzing the properties and requirements in an application
  • apply the linear and nonlinear Rauch-Tung-Striebel smoothers to general smoothing problems
  • solve a variety of important real-world filtering and smoothing problems, by employing and adapting the above knowledge to a variety of applications.


The overall problem is to use data from several different types of sensors to estimate an unknown state (here often containing position, velocity, etc). We cover the main concepts, models and methods: 

  • Bayes rule and Bayesian estimation (e.g., MMSE estimators)
  • Optimal filtering and optimal smoothing
  • Models of discrete time systems with uncertainty: both both motion models (e.g., the constant velocity model) and sensor models.
  • Sigma point methods
  • Linear and nonlinear Kalman filters (KF, EKF, UKF, CKF, etc)
  • Particle filters
  • Linear and nonlinear Rauch-Tung-Striebel smoothers
  • Application of all of the above on various problems


The course comprises on-line lectures (to watch before the class), practice sessions (where we review material from the corresponding lecture), home assignments, projects, tutorial sessions (related to the home assignments and projects) and two oral exams.


We mainly use
Simo Särkkä, Bayesian Filtering and Smoothing. Cambridge University Press, 2013.
which is available online

Examination including compulsory elements

There is no written exam in this course. Instead the students are evaluated individually based on their performance in the different activities in the course; more specifically, the grade is obtained by weighting the results on hand-ins, projects and oral examinations and the degree of attendance.

The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.

Page manager Published: Mon 28 Nov 2016.