Mobile Robots and Autonomous Vehicles
Descriptif
Mobile Robots are increasingly working in close interaction with human beings in environments as diverse as homes, hospitals, public spaces, public transportation systems and disaster areas. The situation is similar when it comes to Autonomous Vehicles, which are equipped with robot-like capabilities (sensing, decision and control). Such robots must balance constraints such as safety, efficiency and autonomy, while addressing the novel problems of acceptability and human-robot interaction. Given the high stakes involved, developing these technologies is clearly a major challenge for both the industry and the human society.
The objective of this course is to introduce the key concepts required to program mobile robots and autonomous vehicles. The course presents both formal and algorithmic tools, and for its last part's topics (behavior modeling and learning), it will also provide realistic examples in Python. This course is designed around a real-time decision architecture using Bayesian approaches. It covers topics such as:
- Sensor-based mapping and localization: presentation of the most popular methods to perform robot localization, mapping and to track mobile objects.
- Fusing noisy and multi-modal data to improve robustness: introduction of both traditional fusion methods as well as more recent approaches based on dynamic probabilistic grids.
- Integrating human knowledge to be used for scene interpretation and decision making: discussion on how to interpret the dynamic scene, predict its evolution, and evaluate the risk of potential collisions in order to take safe and efficient navigation decisions.
TARGETED AUDIENCE
The course is primarily intended for students with an engineering or masters degree, but any person with basic familiarity with probabilities, linear algebra and Python can benefit from it.
The course can also complement the skills of engineers and researchers working in the field of mobile robots and autonomous vehicles.
PRE-REQUISITES
Basic notions of robotics, probabilities, linear algebra and Python (only for part 5).
COURSE SYLLABUS
Click on a link below to access the videos of the course.
Part 1: Objectives, Challenges, State of the Art
Part 2: Bayes and Kalman Filters
Part 3: Extended Kalman Filters
Part 4: Perception and Situation Awareness and Decision Making
Part 5: Behavior Modeling and Learning
The material of this course come from a MOOC delivered on France Université Numérique : https://www.fun-mooc.fr/courses/inria/41005S02/session02/about
Vidéos
1.0. Introduction
The objective of this course is to show how to program the new generation of mobile robots. The course is primarily intended to students with engineering or Masters Degree, but any person with a
1.1. Socio-economic context
This is the first lesson of the course on mobile robots and autonomous vehicles. It addresses the objectives, the challenges, the state of the art and the technologies.
1.2. Technological evolution of Robotics and State of the Art
This video deals with technological evolutions of robotics and state of the art.
1.3. New challenges for Robotics in Human Environments
Introducing robots in human environments bring new challenges to robotics.
1.4. Decisional and Control Architecture for Autonomous Mobile Robots and IV
This video is presenting the decision and control architecture for autonomous mobile robots and intelligent vehicles. The question is how to control robot action in a dynamic world populated by
1.5. Sensing technologies: Object Detection
This video addresses sensing technologies. Sensing technologies is one of the key functions for autonomous robots. Sensing is performed using various internal and external sensors.
1.6. Sensing technologies: Robot Control and HRI
This video addresses sensing technology, and focuses on robot control and human-robot interaction applications.
1.7. Basic technologies for Navigation in Dynamic Human Environments
This video presents the basic technologies for navigation in dynamic human environments. The objective is to achieve goal oriented navigation in open, dynamic and uncertain environments populated
1.8. Intelligent Vehicles: Context and State of the Art
This video introduces intelligent vehicles and presents more specifically the context and a state of the art.
1.9. Intelligent Vehicles: Technical Challenges and Driving Skills
This video presents the technical challenges and driving skills for intelligent vehicles.
2.1. Localization process in a probabilistic framework: basic concepts
In this part, we will talk about localization which is a fundamental problem that a robot has to be able to solve in order to accomplish almost any tasks. In particular, we will start by
2.2. Characterization of proprioceptive and exteroceptive sensors
Before deriving the equations of the Bayes filter, I want to remind you a few concepts in the theory of probability, and also some mathematical characterization for the statistical error of the
2.3. Wheel encoders for a differential drive vehicle
In this video, we want to discuss the case of a wheel encoders in 2D, and in particular the case of a robot equipped with a differential drive which is very popular in mobile robotics.
2.4. Sensor statistical models
So far in the characterization of our sensor measurements, we didn't talk about the errors. This is precisely what we want to do in this video. In particular, we want to compute two probability
2.5. Reminds on probability
In this sequence I want to remind you a few concepts in the theory of probability and then in the next one we finally derive the equations of the Bayes filter. So the concept that I want to
2.6. The Bayes Filter
The equations of the Bayes filters are the equation that allow us to update the probability distribution for the robot to be in a given configuration by integrating the information that are in the
2.7. Grid Localization: an example in 1D
Now that we have the equations of the Bayes filter, we need a method in order to implement in real cases these equations. So, in the following, I want to discuss two methods, which are commonly
2.8. The Extended Kalman Filter (EKF)
We have seen the grid localization, and the advantage of this approach is that we can deal with any kind of probability distribution; in particular we don't need to do a Gaussian assumption. The
3.1. Examples for the Action in the EKF
In part 2, we have seen the equations of the Bayes filter, which are the general equations which allow us to update the probability distribution, as the data from both proprioceptive sensors and
3.2. Examples for the Perception in the EKF
In this video we discuss the second two equations of the Kalman filter.
3.3. The EKF is a weight mean
In this video I want to discuss the second two equations of the Kalman filter. And in particular I want to show that these actually perform a kind of weight mean.
3.4. The use of the EKF in robotics
In this video I want to explain the steps that we have to follow in order to implement an extended Kalman filter in robotics.
3.5. Simultaneous Localization and Mapping (SLAM)
In this video, we are discussing the SLAM problem: simultaneous localization and mapping.
3.6. Observability in robotics
In this video we discuss a fundamental issue which arises when we deal with an estimation problem: understanding if the system contains enough information to perform the estimation of the state.
3.7. Observability Rank Criterion
In this video, we discuss an automatic method which is analytical and allows us to answer the question if a state is observable or not: this method is the Observability Rank Criterion which has
3.8. Applications of the Observability Rank Criterion
In this video we want to apply the observability rank criterion to understand the observability properties of the system that we saw in the previous videos.
4.1. Robot Perception for Dynamic environments: Outline and DP-Grids concept
The fourth part of the course addresses perception, situation awareness and decision making. In this first video, we're giving an outline of the problem and introducing the new concept of dynamic
4.2. Dynamic Probabilistic Grids – Bayesian Occupancy Filter concept
This video will show how to describe Bayesian occupancy filter concept.
4.3. Dynamic Probabilistic Grids – Implementation approaches
This video addresses the problem of the practical implementation for the dynamic probabilistic grid.
4.4. Object level Perception functions (SLAM + DATMO)
This video is dedicated to the object level perception functions: Simultaneous Localization Mapping (SLAM) and Detection and Tracking surrounding Mobile Objects (DATMO).
4.5. Detection and Tracking of Mobile Objects – Problem and Approaches
This video adresses the Detection and Tracking of Mobile Objects (DATMO) problem.
4.6. Detection and Tracking of Mobile Objects – Model and Grid based approaches
This video addresses the question of model-based and grid-based approaches.
4.7. Embedded Bayesian Perception and Short-term collision risk (DP-Grid level)
This video deals with embedded Bayesian perception and short-term collision risk.
4.8. Situation Awareness – Problem statement and Motion / Prediction Models
This videos addresses the problem of situation awareness and motion prediction models.
4.9. Situation Awareness – Collision Risk Assessment and Decision (Object level)
This video addresses the problem of collision risk assessment and decision.
5.1. Introduction
In this part of the course we are going to go deeper into situation awareness and in particular we are going to study how to model and learn human behavior which is a crucial task for social-aware
5.2. Expectation-Maximization Clustering
In this video, we are going to start working towards building a motion model.
5.3a. Learning typical trajectories 1/2
In video 5.2 we showed how to apply the expectation maximization clustering algorithm to two-dimensional data. In this video we will learn how to apply it to trajectory data. And then we will be
5.3b. Learning typical trajectories 2/2
In this video we are aiming to improve on the results we obtained in video 5.3a, in particular with respect to the greyed-out trajectories that are badly represented.
5.4. Bayesian filter inference
In this video we will review the base filter and we will study a particular instance of the Bayesian filter called Hidden Markov models which is a discrete version of a Bayesian filter.
5.5. From trajectories to discrete time-state models
In this video we are going to apply the concepts we have reviewed in the video 5.4 into real trajectories.
5.6. Predicting Human Motion
In video 5.5 we have defined an HMM in Python. In this video we are going to learn how to use it to estimate and predict motion.
5.7. Typical Trajectories: drawbacks
In previous videos we have discussed how to implement the typical trajectories and motion patterns approach. In this video we are going to discuss what are the drawbacks of such an approach,
5.8. Other approaches: Social Forces
In this video we will review one of the alternatives we are proposing to the use of Hidden Markov models and typical trajectories: the Social Force model.
5.9. Other approaches: Planning-based approaches
In this video we are going to study a second, and probably the most promising alternative for motion prediction: planning-based algorithms.
Intervenants et intervenantes
Auteur d'une thèse de 3e cycle en informatique (Grenoble 1, 1976) et d'une thèse d'état en sciences (Grenoble INPG, 1987). - Directeur de thèse en informatique et en robotique à Grenoble INPG. Directeur de recherche à l'INRIA Grenoble Rhône-Alpes
Directeur de Recherche, en poste au Centre Inria de l'Université de Grenoble Alpes - Montbonnot FRANCE
Membre du jury lors d'une thèse soutenue à l'INSA Lyon en 2026
Directeur de thèse à l'Université de Grenoble
Titulaire d'un doctorat de l'Institut national polytechnique de Grenoble, spécialité " Imagerie, vision, robotique "










































