Osion kuvaus

  • Welcome to the course Basics of Sensor Fusion in Autumn 2022. The Lectures of the course are in lecture hall TU2 on Tuesdays at 12-14 and the Exercises in lecture hall AS2 on Fridays at 12-14. The first lecture is on Tuesday 6.9.2022.

    Please notice that Lecture = H01 and Exercise = L01 in Sisu and MyCourses (i.e., they are swapped).

    Lectures and Exercises

    Main lecturer Prof. Simo Särkkä (simo.sarkka@aalto.fi)

    Co-lecturer Fatemeh Yaghoobi (fatemeh.yaghoobi@aalto.fi)

    Office hours: Please send an email to book an appointment or telco.

    Homeworks and Project Work

    Fatemeh Yaghoobi (fatemeh.yaghoobi@aalto.fi)

    Office hours: Please send an email to book an appointment or telco.

    Course Zulip

    We use Zulip for online discussion. 

    Course Zulip: https://sensor-fusion-2022.zulip.aalto.fi

    Zulip registration link: https://sensor-fusion-2022.zulip.aalto.fi/join/q32jnxrvie5lcvio4ppn5fa4/

    Intended Learning Outcomes

    After successfully completing this course, the participants are able to:

    • explain the principles and components of sensor fusion systems,
    • construct continuous and discrete time state space models based on ordinary differential equations, difference equations, and physical sensor models,
    • identify and explain the differences between linear and nonlinear models and their implications on sensor fusion
    • develop and compare state space models and Kalman filtering algorithms for solving sensor fusion problems.
    Assessment Methods and Criteria

    Achievement of the intended learning outcomes is assessed through written mid-term exams, homeworks, and project work. The high-level formula for the grade is

      final grade = max(exams+homework grade, project grade)

    You still must pass both the exams+homework and project!

    The exams and homeworks give a total of 100 points, which determine the grade via mapping

    •  ≥50pts -> grade 1,
    •  ≥60pts -> grade 2,
    •  ≥70pts -> grade 3,
    •  ≥80pts -> grade 4,
    •  ≥90pts -> grade 5.

    Each of the 2 exams gives a maximum of 30 points and the homeworks (10) give 4 points each. The project work grading is clarified in Project work section (the grade is also 1-5 with a few catches).

    Study Material

    The course is mainly based on lecture notes and handouts that are made available on the course homepage in Reading materials section. 


    Basic knowledge of linear algebra, mathematical statistics, and calculus is required. Knowledge of signals and systems, estimation theory, and electronics may come in handy but is not required.

  • Tentative Schedule

    6.9.  Lecture 1: Course Overview and Introduction to Sensor Fusion
    9.9.  Exercise 1: Sensor Models

    13.9. Recap of matrix computations and Python
    16.9. Matrix computations exercises in Python

    20.9.  Lecture 2: Sensors, Models, and Least Squares Criterion (iPad Notes 2)
    23.9.  Exercise 2: Gaussian Distribution and Cost Functions

    27.9.  Lecture 3: Static Linear Models and Linear Least Squares (iPad Notes 3)
    30.9.  Exercise 3: Linear Models and Least Squares

    4.10.  Lecture 4: Static Nonlinear Models, Gradient Descent, and Gauss-Newton (iPad Notes 4)
    7.10. Exercise 4: Nonlinear Optimization

    11.10. Lecture 5: Gauss-Newton with Line Search and Levenberg-Marquardt Algorithm (iPad Notes 5)
    14.10. Exercise 5: Nonlinear Optimization II

    Monday 17.10. at 9-12 First exam -- covers Lectures 1-5

    25.10. Project work information session
    28.10. No class

    1.11. Lecture 6: Linear Continuous-Time Dynamic Models (iPad Notes 6)
    4.11. Exercise 6: Dynamic Models I

    8.11.  Lecture 7: Nonlinear Continuous-Time Models and Discrete-Time Dynamic Models (iPad Notes 7)
    11.11.  Exercise 7: Dynamic Models II

    15.11. Lecture 8: Discretization of Continuous-Time Dynamic Models (iPad Notes 8)
    18.11. Exercise 8: Dynamic Models III

    20.11. Project work part I DL

    22.11. Lecture 9: Filtering Problem and Kalman Filtering (iPad Notes 9)
    25.11. Exercise 9: Kalman filtering

    29.11. Lecture 10: Extended and Unscented Kalman Filtering
    2.12. Exercise 10: Nonlinear Kalman filtering

    18.12. Project work part II DL

    Friday 9.12. at 13-16  Second exam -- covers Lectures 6-10

    Self-study material (if you want to do an extra homework): Lecture 11: Boostrap particle filtering

    Homework 11 (Extra)

  • The main course material is:

    Roland Hostettler and Simo Särkkä (2020). Lecture notes on Basics of Sensor FusionLecture notes of course ELEC-E8740 - Basics of sensor fusionhttps://users.aalto.fi/~ssarkka/pub/basics_of_sensor_fusion_2020.pdf

    The lecture slides will be available on the schedule page.

  • Exercise sessions and homeworks

    Exercise sessions are held on Fridays, 12:15 - 14.00 in AS2, starting on Friday, 9th, 2022. In the exercise sessions, the teacher shows you hands-on how to solve the exercises. You also have the chance to solve the exercises yourself. They consist of both pen & paper and computer exercises, Python, Matlab, or Octave can be used to solve the latter. Exercise sessions are not mandatory but highly recommended, the exam questions are likely to be related to the exercises

    Homeworks are partially mandatory. At the end of each exercise paper, there is homework which affects the grading.

    Pre-requisite exercise: on Friday 16th at 12:15 - 14:00 there is a voluntary session on basic matrix calculus as well as Python.

  • Project's goal

    The aim of this project is to develop an algorithm for tracking an autonomous robot by using a set of sensors. The robot, a DiddyBorg rover-type robot, is programmed to follow a black line inside a closed area surrounded by walls. The robot is equipped with an inertial measurement unit (IMU), which is a combination of accelerometer, gyroscope, and magnetometer. In addition to the IMU, the robot is also equipped with an infrared detector, a motor controller, and a camera module. The detailed information is given in the project instruction

    Project practicality

    • The project has two parts. The first part of the project should be done individually. The second part can be done either individually or in a group of maximum 3 students.
    • For the first part of the project, all students will be given the data which are collected previously.
    • For the second part of the project, you can choose to either allocate time and take measurements yourselves using the robot, or you can use the data which are collected previously.
    •  In case you want to collect data yourselves, you need to book time for coming to the lab in this webpage.
    • If you choose to use available data, you will be given the access to the data through this web-page. 
    • Please read the Project guide thoroughly. The Data collection videos are also available. The videos were taken previous years by Sakira Hassan.

    Please note that all the members of the group should proceed with a same option of either coming to the lab to collect data or using the previous data.

    Project work deadlines

    • Part I: Sunday, November 20, 2022, 23:59 
    • Part II: Sunday, December 18, 2022, 23:59 

    Project work grading

    • In order to get grade 1, you need to successfully complete Part I: Tasks 1-4.
    • In order to get grades 2-3, you need to successfully complete Part II: Task 5.
    • In order to get grade 4, you need to successfully complete Part II: Task 6.
    • In order to get grade 5, you need to successfully complete Part II: Task 7.
    • However, even if you do all the tasks, the final grading is still 1-5 based on the quality of the final outcome.

    Part I

    For the first part of the project, we will give you the data which are collected previously, and you need to solve the required tasks in this part individually.

    A dataset is assigned using the following rule:

    (student_number mod 5) 

    Example: If your student number is 1, you should work with Dataset1.

    If your student number is 2, you should work with Dataset2.

    If your student number is 3, you should work with Dataset3.

    If your student number is 4, you should work with Dataset4.

    If your student number is 5, you should work with Dataset5. 

    So on.

    Download your assigned dataset from Datasets for part I

    Part II

    Second part of the project can be done either individually or in a team of maximum three persons.
    In any case, you need to choose a team in Group selection part.

    Groups selection

    Select your group in Group selection by Sunday, October 30, 2022, 23:59.

    Datasets for part II
    If you choose to use available data, you will be given the access to the data via this web-page.

    Lab booking

    In case you want to collect data yourselves, please book a time for coming to the lab from Lab booking by Sunday, October 30, 2022, 23:59.

    Report format

    Please check Project guide-Section 5 for detailed information. For both parts (Part I and Part II), your submission should consist of a PDF report and the code(s) (Python/MATLAB) with solutions used for the tasks.  

  • Saatavilla vasta, kun: You are a(n) Opiskelija