|SETTORE SCIENTIFICO DISCIPLINARE||ING-INF/05|
Software Architectures for Robotics (SofAR) is a novel and highly experimental field involving research and development activities aimed at providing scholars and professionals with conceptual tools and practical knowledge about how to design and implement complex software architectures for real-world robots. The course covers a few basics in high-end software development and focuses on real-world scenarios, e.g., companion robots for in-home assistance, or collaborative robots in factories.
A robot is a multi-purpose, multi-form and multi-function machine. It exhibits completely new and unique characteristics with respect to what it is for, how it is structured and what it is able to do. In order to cope with this diversity in form and function, software architectures for robots must be grounded on top of a model enforcing flexibility and efficiency well beyond those developed in other domain applications.
The main objective of Software Architectures for Robotics (SofAR) is to provide students and scholars with methodological tools and practical information about how to design and develop complex software architectures for robots able to operate in real-world environments.
Robots are becoming complex systems made up of modules and components whose behavior is complex in its own right, i.e., not all consequences of certain design choices can be easily predicted in advance. Given a specific scenario where a robot must operate autonomously and effectively, the problem of defining a software architecture requires:
SofAR will provide a reasoned treatment of current state‐of‐the‐art design approaches, software engineering basics, development software frameworks (specifically, ROS will be considered), modeling tools, and advanced research trends in this field, as well as a comprehensive discussion about typical scenarios, solutions, and use cases.
SofAR is organized in five key topics. Each key topic is made up of theoretical concepts followed by practical work. SofAR will use the flipped classroom teaching methodology. Students are strongly encouraged to propose novel solutions to specific practical problems, which originate from real-world research challenges or industrial needs.
Every year, SofAR hosts the so-call SofAR seminars, with lecturers addressing specific issues or providing a unique perspective on novel problems.
Each year, the SofAR team tries at best to update the course given new trends and development. This means that the course is slightly different each year. SofAR mixes up theoretical insights with practice classes centered around the widely adopted ROS framework. SofAR is usually centered based on five key topics.
TOPIC 1: Introduction and motivations:
TOPIC 2: Basics of software engineering aspects:
TOPIC 3: The component-based software engineering (CBSE) methodology:
Practice classes focused on TOPIC 3.
TOPIC 4: Bio-inspired approaches to the development of software architectures for robots:
Practice classes focused on TOPIC 4.
TOPIC 5: Knowledge representation and reasoning for robots (joint with AI4RO1 and AI4RO2)
Practice classes focused on TOPIC 5.
Relevant material will be given by the teacher and the instructors during the lectures.
Ricevimento: Il docente è disponibile previo appuntamento via email.
FULVIO MASTROGIOVANNI (Presidente)
RENATO UGO RAFFAELE ZACCARIA (Presidente Supplente)
L'orario di tutti gli insegnamenti è consultabile su EasyAcademy.
The SofAR final mark is based on assignments (50%) and on a written exam (50%). Assignments work as follows:
Please note that:
Properly carrying out an assignment means providing:
The written exam will check single students' knowledge about the topics discussed throughout the course.
The overall grade will be determined on the basis of: