Probabilistic Robotics
A.Y. 2023/24
News
2023-11-13: from today on Monday we are in A3, the rest of the week we stay in B2
The course is planned to start on the Week of September 25 2023
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.
Prerequisites
This course in the "manifesto" is scheduled for both the first and the second year of the MARR/AIRO studies. Since it requires reasonably solid notions of Linear Algebra, Robotics 1 (or their italian versions Geometria and Robotica 1 which are taught on the 1st year of the master, we recommend the students to put Prob Rob in the second year of the study plan.
Exam
ECTS Credits: 6
How to complete the credits for this module: After attending classes, students should:
develop a project.
sustain a written exam.
Next Exams:
29/01/2024, 09:00, Aula 108 Marco Polo
19/02/2024, 09:00, Aula 105 Marco Polo
04/04/2024, 12:00, Viale Regina Elena 295, aula 201
25/06/2024, 9:00, Aula 105 Marco Polo
25/07/2024, 9:00, Aula 108 Marco Polo
02/09/2024, 9:00, Aula 105, Marco Polo
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.
Total grade
Written test is 3/4 (max mark 30), project takes 1/4 (max mark 8) and the total grade is 32
Example:
Written part 27/30
Project grade 6/8
Total grade: 27*24/30 + 6 = 27,6 => 28
Projects 2023/2024
Poject Enrollment
Please fill the following form to choose a project.
Project Submission
Prepare a readme file in your repo with some explanation about your project, what did you do and how did you solve it. Embed plots (if required, this depends on the project), some tables with numerical errors and output files required (for this create a folder called `output`) for us to evaluate independently the quality of your work.
Send us an email when you complete the project.
Exam Results
If you wish to discuss the exam, send an email to Omar, Lorenzo, Leonardo and Giorgio, with subject [PR-[date_of_exam]-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
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.
Visit the Colosseum without coming to Rome