Probabilistic Robotics

A.Y. 2020/21

OPIS CODE: ZJ385C20

News

2021/09/27: Due to bureaucratic issues, the exam session of September will be officially closed on Infostud tomorrow 28th September. All exams that in date 28th September are not concluded due to missing projects will be registered on Infostud in the upcoming exam sessions, when they are completed.

The lessons are planned to start on September 22. Both the lessons and the introduction to practicals will be recorded and made publicly available on some streaming platform.

The lessons will start on October 6, due to delays in setting the rooms for remote teaching.

All lessons will be made available through the following youtube channel (click here).

Abstract

This course aims at providing the students with the necessary mathematical background and the practical guidelines to tackle complex problems in state estimation and model identification for robots. At the end of this course the student will possess the necessary background to approach fundamental problems in robotics including, but not limited to localization, simultaneous localization and mapping (SLAM), calibration and tracking.

Teachers

Prof. Giorgio Grisetti

Tiziano Guadagnino

Barbara Bazzana

Office (DIAG)

B121

Hours

Monday 11:00, 13:00 + anytime previous email appointment.

email appointment

email appointment

Prerequisites

Despite this course in the "manifesto" is scheduled for the first year of the MARR/AIRO studies, it requires reasonably solid notions of Linear Algebra, Robotics 1 (or their italian versions Geometria and Robotica 1) and Autonomous and Mobile Robotics. For this reason, we recommend the students to sustain the exam during the second year.

Course Enrollment

Please fill the following form to get enrolled in the course.

Enrollment Form

Time and Location of the Lectures

When: Fall semester (about 12 weeks), Start: Tuesday, 2020/09/29

Tuesday 10:00-13:00, Room A5

Friday 14:00-16:00, Room A4

Where:

Exam

ECTS Credits: 6

How to complete the credits for this module: After attending classes, students should:

  • develop a small project.

  • sustain a written exam.

Next Exams:

  • June 7 2021, 10:00-13:00, Room B2, DIAG

  • July 7 2021, 10:00-13:00, Room B2, DIAG

  • September 1 2021, 14:30-17:30, Room B2, DIAG

  • October 27 2021, 11:00 - 14:00; Room A2, DIAG



A reminder on what a mark means

  • The grade is on the test not on the student: a brilliant student can make a test that scores poorly, and a lucky student can make a test that scores high.

  • We evaluate the tests. We do not judge the students.

  • Anxiety sucks.

  • If you (after looking at the solutions) don't feel your mark is correct we might have misunderstood something (or you wrote hieroglyphs). Come and ask for explanations.

Exam Results


If you wish to discuss the exam, send an email to barbara, tiziano and giorgio, with subject [PR-20210211-discussion]. We will try to clarify the correction by email, and should this not be sufficient we will schedule an individual meet/zoom/whatsoever.

Preliminary Program

  • Probability Primer

    • Axioms of probability

    • Bayes Rule, Chain Rule, Marginalization and Conditioning

    • Statistical independence

  • Manipulating pdf representations: marginalizing, conditioning, applying a function

    • Discrete

    • Gaussian

    • Particles

  • Dynamic Systems

    • System Model (state, observations, controls)

    • Filtering (Discrete , Kalman and Particle)

  • Geometry and Linear Algebra Refresher

    • vectors, matrices and their operations, SO(X) groups, SE(X) groups

    • computation of gradients (symbolic, numerical and automatic differentiation)

  • Applications of Filtering

    • Localization (Kalman and Particle)

  • SLAM (Kalman and Particle)

  • Least Squares Estimation

    • Gauss-Newton and Levenberg/Marquardton Euclidean Spaces

    • Probabilistic Interpretation

    • Manifolds

    • Robust Kernels

  • Applications of Least Squares Estimation

    • Calibration

    • Sensor Registration (ICP, Bearing-only, Range-Only)

  • Sparse Least Squares

    • Structure of the problem

    • Factor Graphs

    • Sparse Solvers

  • Applications of Sparse Least Squares

    • Graph-SLAM

    • Simultaneous Localization, Calibration and Mapping

  • Data Association

    • Mahalanobis Distance

    • Voting and Consensus Methods (RANSAC and variants)

Tentative schedule of the lectures

Week 1: Intro, Sensors, Mobile Platforms, Probability

Week 2: Manipulating PDF

Week 3: Dynamic Systems, Filtering, Discrete Filters

Week 4: Kalman Filters

Week 5: Gaussian Filters

Week 6: Wrapup on Filtering and Applictions: Localization and SLAM

Week 7: Least Squares Estimation

Week 7: Least Squares Estimation, Applications: Calibration, Sensor Registration

Week 8: Sparse Least Squares

Week 9: Applications of Sparse Least Squares: Graph-SLAM

Week 10: Data Association

Week 11: Wrapup and Applications

Extras : C++ course by Igor Bogoslavskyi, University of Bonn

Link

We remind that the knowledge of C++ is not mandatory for the exam. Still, we believe that this programming skill might be useful for your career in Robotics.