Ing - Civ (Mag.)(ord. 270) - MI (495) GEOINFORMATICS ENGINEERING - INGEGNERIA GEOINFORMATICA
*
A
ZZZZ
089013 - ROBOTICS
Ing Ind - Inf (1 liv.)(ord. 270) - MI (358) INGEGNERIA INFORMATICA
*
A
ZZZZ
089013 - ROBOTICS
Ing Ind - Inf (Mag.)(ord. 270) - MI (473) AUTOMATION AND CONTROL ENGINEERING - INGEGNERIA DELL'AUTOMAZIONE
*
A
ZZZZ
052359 - PERCEPTION, LOCALIZATION AND MAPPING FOR MOBILE ROBOTS
Ing Ind - Inf (Mag.)(ord. 270) - MI (481) COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA
*
A
ZZZZ
089013 - ROBOTICS
Obiettivi dell'insegnamento
This course will introduce the basic concepts and techniques used within the field of autonomous mobile robotics with a special focus on sensing and perception, mapping, localization, and autonomous navigation. We analyze the fundamental challenges for autonomous intelligent systems when these move on wheels or legs and present the state of the art solutions.
Risultati di apprendimento attesi
Dublin Descriptors
Expected learning outcomes
Knowledge and understanding
Students will learn:
· What are the main type of mobile robot kinematics and their characteristics in terms of direct and inverse kinematics equations
· How to structure the autonomous navigation system of mobile robots and autonomous vehicles
· What are the classical method for trajectory planning, i.e., graph and sample based, and the most common algorithms for trajectory planning
· What are the most common algorithm for trajectory following and obstacle avoidance
· What are the most used techniques for localization, mapping and simultaneous localization and mapping (SLAM)
· What are the common sensors used in robot perception, their pros and cons, their use for autonomous navigation and mapping
· The Robot Operating System (ROS) framework and how it can be used in the development of autonomous robots
Applying knowledge and understanding
Given a specific domain design for a mobile robot, the student will be able to:
· Design the system architecture for the autonomous navigation of the robot, its modules, and their algorithms
· Implement the software system controlling a modern autonomous robot based on the ROS middleware
· Design and develop SLAM algorithms for simultaneous localization and mapping
· Derive the kinematic equation for a mobile robot, develop the corresponding odometry system and integrate its outcome into a localization or SLAM system
Making judgments
Given an autonomous robot design problem, students will be able to:
· Identify the proper kinematics for the robot to be developed
· Identify the proper sensors the robot should have to fulfill its task
· Select the most appropriate algorithms for trajectory planning and trajectory following
· Select the most appropriate approach for SLAM, localization or mapping
Communication
The student will learn to:
· Discuss in written form the pros and cons of different kinematics in the realm of a specific design problem
· Describe the learned algorithms in written form, discussing their pros and cons.
Lifelong learning skills
Student will learn to:
· Face the design of the software system for an autonomous robot with a sound background and well defined patterns
· Develop the software controlling an autonomous robot/vehicle based on the ROS middleware and simulate it under Gazebo
Argomenti trattati
The course is composed by a set of lectures on autonomous robotics, ranging from the main architectural patterns in mobile robots and autonomous vehicles to the description of sensing and planning algorithms for autonomous navigation. The course outline is:
Mobile robots kinematics,
Sensors and perception,
Robot localization and map building,
Simultaneous Localization and Mapping (SLAM),
Path planning and collision avoidance,
Robot development via ROS
Lectures will provide theoretical background as well as real-world examples; these will be complemented with practical exercises in simulation for all the proposed topics and the students will be guided in developing the algorithms to control an autonomous robot using ROS, the Robot Operating System (http://www.ros.org/).
The slides from all the lectures will be available on the course website (http://chrome.ws.dei.polimi.it/index.php/Robotics) together with a detailed schedule of the classes, links to relevant papers, and online resources.
Prerequisiti
Students are expected to know the principles and methods of programming; indeed the ROS framework is based on the object oriented programming principles.
Modalità di valutazione
The course comprises theoretical lectures and practical sessions, the grade will reflect both. Part of the grade will be based on a classical written exam (mandatory), while the remaining part of the grade will be based on practical, at home, coding exercises (optional).
The home exercises are optional, but in case the student will not turn them in, the grade will include only the marks from the written part which is 90% of the maximum grade for the exam.
Type of assessment
Description
Dublin descriptor
Written test
The solution of practical and design problems
· Computation of kinematics equations for a mobile robot and the corresponding odometry
· Compute the shortest trajectory with a graph based planning algorithm
Answer to theoretical questions
· Describe and discuss the pros and cons of different trajectory planning algorithms together with their functioning
· Describe and discuss the pros and cons of different trajectory following and obstacle avoidance algorithms together with their functioning
· Describe and discuss the pros and cons of different SLAM algorithms together with their functioning
· Describe the architecture and the functioning of ROS
1, 2, 3
1, 2, 3, 4, 5
Assessment of practical homework
Execution of a practical project
· Design of some ROS components implementing navigation capabilities for an autonomous mobile robot
2, 3, 4, 5
Bibliografia
Sebastian Thrun, Wolfram Burgard, Dieter Fox, Probabilistic Robotics, Editore: MIT Press, Anno edizione: 2005, ISBN: 978-0262201629 http://www.probabilistic-robotics.org/
Software utilizzato
Nessun software richiesto
Forme didattiche
Tipo Forma Didattica
Ore di attività svolte in aula
(hh:mm)
Ore di studio autonome
(hh:mm)
Lezione
30:00
45:00
Esercitazione
20:00
20:00
Laboratorio Informatico
0:00
0:00
Laboratorio Sperimentale
0:00
0:00
Laboratorio Di Progetto
0:00
10:00
Totale
50:00
75:00
Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua
Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese