92995 - Distributed Autonomous Systems M

Academic Year 2024/2025

Learning outcomes

The course focuses on the design of control, optimization and learning methods and software tools for teams of autonomous systems. These systems consist of cooperative agents, as intelligent robots, autonomous vehicles and decision systems, that aim at performing complex tasks according to a federated and distributed computing paradigm. At the end of the course students will know how to design selected distributed control, optimization and learning algorithms to solve complex tasks involving teams of autonomous systems. To bridge the gap between theory and application, laboratory activities will allow students to design software tools for the studied algorithms and apply them to a number of application domains, including, e.g., planning,guidance and optimal control of cooperative autonomous vehicles and intelligent robots as well as machine learning and data analytics for decision systems.

Course contents

Introduction to Distributed Autonomous Systems

New paradigms and applications domains of autonomous systems: decision systems for data analytics (e.g., recommender systems and localization), sensor networks, cooperative robotics, cooperative mobility, smart energy systems. Introduction to distributed systems: centralized versus distributed computing, key properties and main goals for distributed systems.


Modeling of distributed systems

Models of distributed systems. Graph theory as a tool to model communication among network agents. Preliminaries on graph theory and examples. Distributed algorithms and distributed control laws. Introduction to Python programming with a focus on distributed computing and cooperative robotics via Robotic Operating System 2.


Basic distributed algorithms

Averaging protocols and linear consensus algorithms for multi-agent systems. Complex tasks (e.g., autonomous formation control, containment in leader-follower networks) based on linear consensus algorithms. Practical Python implementation of averaging and distributed control laws on case study examples from decision and control networks.


Introduction to distributed optimization

Optimization basics. Main problem set-ups and examples from estimation, machine learning, decision making, and control in cyber-physical networks.


Distributed decision making via consensus optimization

Consensus optimization algorithms based on averaging. Distributed gradient and gradient tracking methods. Practical Python implementation on case studies from federated and distributed machine learning, e.g., logistic regression, support vector machine, training of neural networks for classification.


Cooperative robotics via distributed optimization

Aggregative optimization. Constraint-coupled optimization algorithms based on decomposition schemes. Hierarchical robotic control architectures. Practical Python implementation on case study examples from formation control, collision avoidance, surveillance and task allocation in cooperative robotics. ROS 2 toolboxes for cooperative robotics.

Readings/Bibliography

The course is based on the following references:
F. Bullo, “Lectures on Network Systems”

G. Notarstefano, I. Notarnicola, A. Camisa, “Distributed Optimization for Cyber-Physical Networks”

A. Testa, G. Carnevale, G. Notarstefano, "A Tutorial on Distributed Optimization for Cooperative Robotics: from Setups and Algorithms to Toolboxes and Research Directions"

and on a set of slides which will be made available throughout the term.

 

Teaching methods

Frontal lectures, slides and lab exercising. Lectures will be always oriented to practical software implementation with application case studies in dedicated laboratory classes.

Assessment methods

Oral exam and discussion of a course project.

Teaching tools

“Virtuale” (course content and material, useful info). Software tools for the simulation of distributed control and optimization algorithms in distributed autonomous systems.

Office hours

See the website of Giuseppe Notarstefano

See the website of Ivano Notarnicola