PROBABILISTIC ROBOTICS

Obiettivi formativi

Obiettivi generali: Acquisire conoscenza sugli strumenti di base per la stima dello stato in sistemi robotici. Essere in grado do applicare tali strumenti a casi di studio reali ed implementare soluzioni funzionanti. Valutare le prestazioni e la qualita' di uno stimatore dello stato. Il corso alterna teoria e pratica. Nelle lezioni pratiche agli studenti e' richiesto il completamento di frammenti di codice di un sistema che rappresenta casi pratici. Obiettivi specifici: Conoscenza e comprensione: - Manipolazione di distribuzioni di probabilita' - Basi sulle tecniche di filtraggio (hisrogram filters, Gaussian filters, particle filters) - Modello generale di un sistema non lineare stazionario e dinamico - Formulazione densa e sparsa di algoritmi di minimizzazione (Gauss-Newton, Levenberg Marquardt) - Il problema della Data Association, e strumeni tipici per affrontarlo (RANSAC, euristiche) - Casi di studio tipici per problemi di stima in robotics (Calibrazione, Localizzazione, Mappatura and SLAM) Applicare conoscenza e comprensione: - Essere in gradi di modellare un problema di stima ed adattare gli strumenti proposti al dominio specifico - Svuluppare uno stimatore dello stato funzionante. Capacità critiche e di giudizio: - Individuare i pro ed i contro che presentano soluzioni diverse allo stesso problema. - Individuare gli strumenti utilizzabili per approcciare i sotto-problemi di uno stimatore. Lo sviluppo di tali capacita' e' ottenuto mediante lo sviluppo di un progetto sviluppato come parte dell'esame. Capacità comunicative: - Acquisire un linguaggio comune per descrivere e modellare gli stimatori dello stato e che supporti un'interazione tra sviluppatori definendo un insieme di obiettivi e termini comuni. Capacità di apprendimento: Lo studente possiedera' capacita e conoscera' tecniche per affrontare problemi di stima dello stato generali. Gli esempi nel dominio della navigazione autonoma presentati durante il corso servono come casi di studio. Gli argomenti individuali appresi (Manipolazione di PDF , Filtering Designs, Minimizzazione), sono strumenti prezioni per affrontare problemi che esulano tali casi specifici di studio.

Canale 1
GIORGIO GRISETTI Scheda docente

Programmi - Frequenza - Esami

Programma
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)
Prerequisiti
Lo studente deve possedere solide basi in algebra lineare, geometria ed analisi. In particolare sono necessarie le seguenti conoscenza - Matrici, Vettori, Autospazi, Soluzione di sistemi Lineari (densi e sparsi) - Minimizzazione di funzioni multivariate con tecniche iterative - Trasformazioni nello spazio, gruppi SE(2), SO(2), SE(3), SO(3) Oltre a fornire basi teoriche il corso si propone di sviluppare nello studente la capacita' di realizzare in pratica quanto appreso. Per una fruizione ottimale dell'insegnamento e' pertanto necessario avere discrete basi di programmazione. Nel corso si usera' estensivamente Matlab/Octave, e sporadicamente C/C++.
Testi di riferimento
Le informazioni aggiornate del corso si trovano presso la seguente pagina web, da cui e' disponibile tutto il materiale. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2023-24/home Videolezioni registrate durante la pandemia sono disponibili dal sito dell'aa 2021/22. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2021-22/home
Modalità insegnamento
Il corso si tiene in inglese. Verra' svolto attraverso lezioni in classe. Ad ogni argomento spiegato seguira' una esercitazione interattiva in cui agli studenti verra' chiesto di completare dei programmi parzialmente svolti dal docente e dal tutor. In tali lezioni pratiche si richiede allo studente di disporre di un computer portatile. Le lezioni verranno (a partire dall AA 2020/21) anche trasmesse in streaming. Tutto il materiale ed informazioni aggiuntive ed aggiornate sono disponibili presso il sito del corso che viene aggionrato di anno in anno. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2019-20 Nel caso il link non dovesse funzionare potete seguire il link del corso dell'anno accademico corrente da questa pagina: https://sites.google.com/dis.uniroma1.it/grisetti/teaching
Frequenza
La frequenza del corso e' caldamente raccomandata. Le lezioni del periodo di pandemia sono communque disponibili su youtube
Modalità di esame
The exam will consist in a written test AND a project The written test is articulated in 2 sessions. In the first session (lastin 30 min), the student will be asked to expose an argument explained during the course. In this time, obviously, the student cannot access the course material. In the second session (lasting about 2 hours), the student will be asked to solve \real problems, applying the concepts learned in theory. The project will consist in the development of a software system to approach a classical problem. The exam ends when both the test and the project are completed.
Bibliografia
http://asrl.utias.utoronto.ca/~tdb/bib/barfoot_ser17.pdf
Modalità di erogazione
Il corso si tiene in inglese. Verra' svolto attraverso lezioni in classe. Ad ogni argomento spiegato seguira' una esercitazione interattiva in cui agli studenti verra' chiesto di completare dei programmi parzialmente svolti dal docente e dal tutor. In tali lezioni pratiche si richiede allo studente di disporre di un computer portatile. Le lezioni verranno (a partire dall AA 2020/21) anche trasmesse in streaming. Tutto il materiale ed informazioni aggiuntive ed aggiornate sono disponibili presso il sito del corso che viene aggionrato di anno in anno. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2019-20 Nel caso il link non dovesse funzionare potete seguire il link del corso dell'anno accademico corrente da questa pagina: https://sites.google.com/dis.uniroma1.it/grisetti/teaching
GIORGIO GRISETTI Scheda docente

Programmi - Frequenza - Esami

Programma
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)
Prerequisiti
Lo studente deve possedere solide basi in algebra lineare, geometria ed analisi. In particolare sono necessarie le seguenti conoscenza - Matrici, Vettori, Autospazi, Soluzione di sistemi Lineari (densi e sparsi) - Minimizzazione di funzioni multivariate con tecniche iterative - Trasformazioni nello spazio, gruppi SE(2), SO(2), SE(3), SO(3) Oltre a fornire basi teoriche il corso si propone di sviluppare nello studente la capacita' di realizzare in pratica quanto appreso. Per una fruizione ottimale dell'insegnamento e' pertanto necessario avere discrete basi di programmazione. Nel corso si usera' estensivamente Matlab/Octave, e sporadicamente C/C++.
Testi di riferimento
Le informazioni aggiornate del corso si trovano presso la seguente pagina web, da cui e' disponibile tutto il materiale. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2023-24/home Videolezioni registrate durante la pandemia sono disponibili dal sito dell'aa 2021/22. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2021-22/home
Modalità insegnamento
Il corso si tiene in inglese. Verra' svolto attraverso lezioni in classe. Ad ogni argomento spiegato seguira' una esercitazione interattiva in cui agli studenti verra' chiesto di completare dei programmi parzialmente svolti dal docente e dal tutor. In tali lezioni pratiche si richiede allo studente di disporre di un computer portatile. Le lezioni verranno (a partire dall AA 2020/21) anche trasmesse in streaming. Tutto il materiale ed informazioni aggiuntive ed aggiornate sono disponibili presso il sito del corso che viene aggionrato di anno in anno. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2019-20 Nel caso il link non dovesse funzionare potete seguire il link del corso dell'anno accademico corrente da questa pagina: https://sites.google.com/dis.uniroma1.it/grisetti/teaching
Frequenza
La frequenza del corso e' caldamente raccomandata. Le lezioni del periodo di pandemia sono communque disponibili su youtube
Modalità di esame
The exam will consist in a written test AND a project The written test is articulated in 2 sessions. In the first session (lastin 30 min), the student will be asked to expose an argument explained during the course. In this time, obviously, the student cannot access the course material. In the second session (lasting about 2 hours), the student will be asked to solve \real problems, applying the concepts learned in theory. The project will consist in the development of a software system to approach a classical problem. The exam ends when both the test and the project are completed.
Bibliografia
http://asrl.utias.utoronto.ca/~tdb/bib/barfoot_ser17.pdf
Modalità di erogazione
Il corso si tiene in inglese. Verra' svolto attraverso lezioni in classe. Ad ogni argomento spiegato seguira' una esercitazione interattiva in cui agli studenti verra' chiesto di completare dei programmi parzialmente svolti dal docente e dal tutor. In tali lezioni pratiche si richiede allo studente di disporre di un computer portatile. Le lezioni verranno (a partire dall AA 2020/21) anche trasmesse in streaming. Tutto il materiale ed informazioni aggiuntive ed aggiornate sono disponibili presso il sito del corso che viene aggionrato di anno in anno. https://sites.google.com/diag.uniroma1.it/probabilistic-robotics-2019-20 Nel caso il link non dovesse funzionare potete seguire il link del corso dell'anno accademico corrente da questa pagina: https://sites.google.com/dis.uniroma1.it/grisetti/teaching
  • Codice insegnamento1052218
  • Anno accademico2025/2026
  • CorsoEngineering in Computer Science and Artificial Intelligence - Ingegneria Informatica e Intelligenza Artificiale
  • CurriculumCurriculum unico
  • Anno2º anno
  • Semestre1º semestre
  • SSDING-INF/05
  • CFU6
  • Ambito disciplinareAttività formative affini o integrative