Overview
My research activity revolves around one prominent themes: how to best coordinate an ensamble of digital entities towards a systemic goal.
As such, I’m doing (or did) research activities in the following fields (exemplary, meant to give a rough idea of my research topics):
- learning to coordinate in multi-agent systems
- distributed causal reasoning in multi-agent systems
- self-organising mechanisms and systems
- cooperation of Autonomous Agents and Digital Twins
- argumentation-based coordination
- socio-cognitive models of behaviour and interaction to enhance coordination mechanisms
- logic programming as a form of “Edge intelligence”
- blockchain technologies and smart contracts for distributed and decentralised coordination
Application of the above research lines span:
- pervasive systems such as the Internet of Things, Industry 4.0+, Cyber-Physical Systems in general
- swarm robotics
- cooperative driving
- socio-technical systems such as information management systems
- decision support systems in healthcare applications for patient empowerment and clinical practice
Below, the main research activities I’m currently carrying on are briefly described further, along with the reference publications to checkou if you are interested. If any of these is paywalled, ask me a copy asap :)
Learning to coordinate

Problem: Agents in multi-agent systems are usually equipped with pre-defined interaction means (e.g. messaging abilities) and fixed coordination protocols to abide to. This cannot cope with highly dynamic scenarios demanding for adaptation.
Solution: Let agents learn how to interact and coordinate at best.
Goal: Improve agents adaptation abilities also along the interaction dimension of computation.
Methods: Transfer (multi-agent) reinforcement learning techniques to the multi-agent domain and across coordination tasks.
Reference publications:
- Learning Stigmergic Communication for Self-organising Coordination
- Developing a “Sense of Agency” in IoT Systems: Preliminary Experiments in a Smart Home Scenario
- An Adaptive Approach for the Coordination of Autonomous Vehicles at Intersections
Distributed causal reasoning

Problem: The causal relationships amongst variables in a system (e.g. sensors and actuators in a smart home) are usually implicitly encoded in the way we program the software agents controlling such variables. This can be problematic if we don’t have full design-time knowledge of such relationships, or if the system needs to adapt to contingencies.
Solution: Let agents learn what the causal relationships are.
Goal: Improve agents adaptation abilities by making sense of their surrounding environment (virtual or physical).
Methods: Transfer causal learning techniques to a distributed setting.
Reference publications:
- Distributed Discovery of Causal Networks in Pervasive Environments
- Improving Reinforcement Learning-Based Autonomous Agents with Causal Models
- Developing a “Sense of Agency” in IoT Systems: Preliminary Experiments in a Smart Home Scenario
Modular intelligence with Agents and Digital Twins

Problem: Autonomous software agents and Digital Twins (DTs) seem somewhat overlapping concepts according to a notable amount of literature, and their synergies are exploited mostly in an ad-hoc way heavily driven by specific applications and domains. This inevitably leads to reinventing the wheel for new deployments, and fragments the research landscape.
Solution: Clarify the relationships and roles of agents and DTs according to well-defined software engineering principles.
Goal: Promote modularity and reusability of technical solutions to avoid reinventing the wheel and to maximise the synergies between autonomous agents and DTs.
Methods: Define clear design principles inspired to the overarching “separation of concerns”, derive suitable blueprints for software architectures, develop a full-fledged design methodology.
Reference publications:
- Distributing intelligent functionalities in the Internet of Things with agents and Digital Twins
- Agents and Digital Twins for the engineering of Cyber-Physical Systems: opportunities, and challenges
Coordination in socio-technical systems

Problem: Socio-technical systems1 cannot be coordinated with the same mechanisms and techniques used for purely technical systems.
Solution: Consider socio-cognitive theories of action and interaction while designing such coordination mechanisms and techniques.
Goal: Improve system coordination outcomes, however defined on a functional or non-functional perspective.
Methods: Exploit humans social interactions and cognitive stance to adapt system behaviour.
Reference publications:
- Coordination in Socio-technical Systems: Where are we now? Where do we go next?
- An Argumentation-Based Perspective Over the Social IoT
- Coordination of Complex Sociotechnical Systems: Self-organisation of Knowledge in MoK (book)
Decision support systems in healthcare

Problem: Designing decision support systems for the healthcare domain is difficult for many reasons, amongst which (1) support portability of the machine learning pipeline (2) optimise the trade-off between well-assessed best practices and patient-specific data (3) guarantee interpretable suggestions.
Solution: Respectively (1) rely on well-assessed software engineering principles (2) design a coherent conceptual and technological framework for the broad domain of so-called cognitive systems (3) adopt transparent and explainable algorithms.
Goal: Extend adoption and improve performance of decision support systems in healthcare
Methods: Again, respectively (1) rely on standards such as PFA for machine learning pipelines representation and sharing and prefer web technologies for deployment (2) integrate the BDI agent architecture with machine learning methods (3) prefer explainable algorithms or adopt argumentation
Reference publications:
- Developing an ML pipeline for asthma and COPD: The case of a Dutch primary care service
- Augmenting BDI Agency with a Cognitive Service: Architecture and Validation in Healthcare Domain
- Risk Prediction as a Service: a DSS architecture promoting interoperability and collaboration
-
According to my own interpretation, briefly: systems featuring “humans-in-the-loop” which are not merely users but actively contribute in the system’s own functioning. For the original definition see Trist and Baxter-Sommerville (paywall). ↩