Multi-Agent Systems

[335SM]
a.a. 2025/2026

2° Year of course - Second semester

Frequency Not mandatory

  • 6 CFU
  • 48 hours
  • English
  • Trieste
  • Opzionale
  • Standard teaching
  • Oral Exam
  • SSD INF/01
Curricula: DATA SCIENCE AND ARTIFICIAL INTELLIGENCE FOR ECONOMY AND SOCIETY
Syllabus

In this course you will hear a computer science perspective on multiagent systems, focusing on the theory and tools that help to formalise, execute and analyse multi-agent systems. We end the course with illustrative case studies from different application domains.

In the first part of the course, we will introduce the fundamental concepts of multiagent systems: agents, communication, notion of time/events, utility function, perception. Then, we segway to the macroscopic level and related concepts of emergence, scalability, collaboration, self-organisation, adaptation.

In the second part of the course, we introduce collective decision-making. We begin with a brief review of traditional algorithms for finding the optimal strategy for a single Markovian decision-maker. Following that, we introduce the classical game-theoretic setup for multiple agents without cooperation (Nash equilibrium; repeated and sequential games), and with cooperation (coalition; core and Shapley value, specialised techniques e.g. bargaining for reaching agreements on matters of common interest). We finish the second part by illustrating how reinforcement learning is applied for collective decision-making.

In the third part of the course, we showcase advanced modelling scenarios for multiagent systems in synthetic biology, collective animal behaviour, and swarm robotics.

Knowledge and understanding: Students will become familiar with the most important concepts about multiagent systems. Moreover, they will see the concepts in practice, through a selection of illustrative case studies from domains of synthetic biology and swarm robotics.

Applying knowledge and understanding: At the end of the course, the students will be able to design, simulate and reason about properties of a multiagent system.

Making Judgement: The students will learn how to design a multiagent system, and how to solve a given problem in a systematic and scientifically grounded manner.

Communication skills: The students will practise communication skills through teamwork for project assignments, as well as while exchanging feedback with the instructors and tutors, and through the final project presentation. They will be able to explain the basic concepts of multiagent systems, and assess their importance in a given context of technology and/or research.

Learning skills: The successful student will be able to explore the literature on multiagent systems so as to identify and apply state-of-the-art methods when solving complex tasks. If needed, the student will be able to design novel or combine existing methods.

Basic knowledge of Python, introductory courses of automata theory, formal verification, introduction to AI.

Part I:
- Introduction: What are MAS, what makes them fascinating?
- Modelling multiagent concurrent systems: Labelled Transition Systems, Bisimulation and Hennessy–Milner logic
- Modelling multiagent concurrent systems: Petri nets, Reactive modules, reaction networks

Part II: Multiagent Decision Making
- Brief recap of MDPs
- Competitive Game Theory (Normal form, Sequential, and Stochastic games)
- Cooperative Game Theory (coalition; core and Shapley value, specialised techniques e.g. the contract net for task sharing; auctions are used to efficiently allocate scarce resources; bargaining for reaching agreements on matters of common interest; and voting procedures for aggregating preferences)
- Multi Agent Reinforcement Learning
- Mechanism Design

Part III: Case studies and Applications
- Engineering genetic circuits (systems and synthetic biology, Lambda phage stochastic switch)
- Adaptive aggregation in honeybees (swarm robotics)

Recommended:
1. Shoham, Yoav, and Kevin Leyton-Brown. Multiagent systems: Algorithmic, game-theoretic, and logical foundations. Cambridge University Press, 2008.
2. Russel and Norvig. Artificial Intelligence: A Modern Approach. Pearson, 2020, 4th edition.
3. Wooldridge, M. An Introduction to Multi-agent Systems, Wiley, 2009, 2nd edition.
4. Aceto L., Ingólfsdóttir A., Larsen K. G., and Srba J. Reactive Systems: Modelling, Specification and Verification. Cambridge University Press, 2007.

Further readings:
5. Heiko Haman, Swarm Robotics: A Formal Approach. Springer, 2018.
6. Henzinger, Thomas, Barbara Jobstmann, and Verena Wolf. "Formalisms for specifying Markovian population models." International Journal of Foundations of Computer Science 22.04 (2011): 823-841.
7. Myers, Chris J. Engineering genetic circuits. CRC Press, 2016.

Modelling multiagent systems is central to many traditional as well as emerging fields and applications such as robotics and autonomous systems, distributed control, economics and market mechanisms, disaster response, to name but a few. The course offers a comprehensive view on multi-agent systems, providing powerful tools to study a wide range of complex natural and artificial environments where multiple agents operate and interact. The first module introduces the necessary theoretical notions and foundational aspects, laying the bases for what follows. A number of settings and techniques will be explored, which allow to model and analyse multi-agent systems in concurrent and stochastic environments, under purely competitive or possibly collaborative setup. The students will learn methodologies coming from game theory and AI, as a means to study the behaviour, the strategy and the performance of agents operating in multiagent environments. The last module showcases advanced modelling scenarios for multiagent systems in applications in synthetic biology, collective animal behaviour, and swarm robotics.

Throughout the course, students will engage in a variety of activities designed to enhance their learning experience. These include exercise sessions and the development of independent research projects on a chosen topic of interest.

Part I:
- Introduction: What are MAS, what makes them fascinating?
- Modelling multiagent concurrent systems: Labelled Transition Systems, Bisimulation and Hennessy–Milner logic
- Modelling multiagent concurrent systems: Petri nets, Reactive modules, reaction networks

Part II: Multiagent Decision Making
- Brief recap of MDPs
- Competitive Game Theory (Normal form, Sequential, Stochastic games)
- Cooperative Game Theory (coalition; core and Shapley value, specialised techniques e.g. the contract net for task sharing; auctions are used to efficiently allocate scarce resources; bargaining for reaching agreements on matters of common interest; and voting procedures for aggregating preferences)
- Multi Agent Reinforcement Learning
- Mechanism Design

Part III: Case studies and Applications
- Engineering genetic circuits (systems and synthetic biology, Lambda phage stochastic switch)
- Adaptive aggregation in honeybees (swarm robotics)

Each topic of the course will be covered with lectures and exercise sessions. At the exercise sessions, the students will be working on a set of tasks which will allow them to practise and deepen their understanding of the concepts seen during the lectures. Some tasks will include a hands-on implementation on a computer. The recommended programming language is Python.

The evaluation will consist of three parts:

1. Project. Projects are chosen from a list of topics given by the instructors; Concrete project goals and tasks can be proposed by the students. Projects may be done solo or in groups, ideally groups of 2 or 3 students. Each group works on a well-defined goal. The project results are presented in 10 minutes, explaining the research question and results obtained. Main points of evaluation are clarity and comprehensiveness of the presentation, understanding of the topic, as well as the scope, depth, and originality of the performed work and analyses.

2. An oral exam where few questions will be asked, so as to assess the individual contributions to the project, and the overall level of understanding of the topics of the course. Main points of evaluation are clarity and precision of answers, technical understanding of the methods, as well as understanding the context of applicability.

The parts (1) and (2) can be done in the same session or in separate sessions, but the group presentation requires all group members to be present.

The final mark is obtained by the following grading key: 60% project, 40% oral exam.
Laude can be given in exceptional cases.