Arrow Research search

Author name cluster

Danilo Pianini

Possible papers associated with this exact author name in Arrow. This page groups case-insensitive exact name matches and is not a full identity disambiguation profile.

8 papers
2 author rows

Possible papers

8

JAAMAS Journal 2026 Journal Article

Testing BDI-based multi-agent systems using discrete event simulation

  • Martina Baiardi
  • Samuele Burattini
  • Danilo Pianini

Abstract Multi-agent systems are designed to deal with open, distributed systems with unpredictable dynamics, which makes them inherently hard to test. The value of using simulation for this purpose is recognized in the literature, although achieving sufficient fidelity (i. e. , the degree of similarity between the simulation and the real-world system) remains a challenging task. This is exacerbated when dealing with cognitive agent models, such as the Belief Desire Intention (BDI) model, where the agent codebase is not suitable to run unchanged in simulation environments, thus increasing the reality gap between the deployed and simulated systems. We argue that BDI developers should be able to test in simulation the same specification that will be later deployed, with no surrogate representations. Thus, in this paper, we discuss how the control flow of BDI agents can be mapped onto a Discrete Event Simulation (DES), showing that such integration is possible at different degrees of granularity. We substantiate our claims by producing an open-source prototype integration between two pre-existing tools (JaKtA and Alchemist), showing that it is possible to produce a simulation-based testing environment for distributed BDI agents, and that different granularities in mapping BDI agents over DESs may lead to different degrees of fidelity.

AAMAS Conference 2024 Conference Paper

Concurrency Model of BDI Programming Frameworks: Why Should We Control It?

  • Martina Baiardi
  • Samuele Burattini
  • Giovanni Ciatto
  • Danilo Pianini
  • Andrea Omicini
  • Alessandro Ricci

We provide a taxonomy of concurrency models for BDI frameworks, elicited by analysing state-of-the-art technologies, and aimed at helping both BDI designers and developers in making informed decisions. Comparison among BDI technologies w. r. t. concurrency models reveals heterogeneous support, and low customisability.

EUMAS Conference 2023 Conference Paper

JaKtA: BDI Agent-Oriented Programming in Pure Kotlin

  • Martina Baiardi
  • Samuele Burattini
  • Giovanni Ciatto
  • Danilo Pianini

Abstract Multi-paradigm languages are becoming more and more popular, as they allow developers to choose the most suitable paradigm for each task. Most commonly, we observe the combination of object-oriented (OOP) and functional programming (FP), however, in principle, other paradigms could be hybridised. In this paper, we present JaKtA, an internal DSL adding support for the definition of belief-desire-intention (BDI) agents in Kotlin. We believe is a first step to investigate the blending of Agent-Oriented Programming (AOP) with other popular paradigms and we discuss the opportunity and value of doing so with an internal DSLs. Finally, through JaKtA, we show how this can already lead to compactly and expressively create BDI agents that smoothly interoperate with the host language, its libraries and tooling.

TAAS Journal 2022 Journal Article

A Collective Adaptive Approach to Decentralised k-Coverage in Multi-robot Systems

  • Danilo Pianini
  • Federico Pettinari
  • Roberto Casadei
  • Lukas Esterle

We focus on the online multi-object k -coverage problem (OMOkC), where mobile robots are required to sense a mobile target from k diverse points of view, coordinating themselves in a scalable and possibly decentralised way. There is active research on OMOkC, particularly in the design of decentralised algorithms for solving it. We propose a new take on the issue: Rather than classically developing new algorithms, we apply a macro-level paradigm, called aggregate computing, specifically designed to directly program the global behaviour of a whole ensemble of devices at once. To understand the potential of the application of aggregate computing to OMOkC, we extend the Alchemist simulator (supporting aggregate computing natively) with a novel toolchain component supporting the simulation of mobile robots. This way, we build a software engineering toolchain comprising language and simulation tooling for addressing OMOkC. Finally, we exercise our approach and related toolchain by introducing new algorithms for OMOkC; we show that they can be expressed concisely, reuse existing software components and perform better than the current state-of-the-art in terms of coverage over time and number of objects covered overall.

EAAI Journal 2021 Journal Article

Engineering collective intelligence at the edge with aggregate processes

  • Roberto Casadei
  • Mirko Viroli
  • Giorgio Audrito
  • Danilo Pianini
  • Ferruccio Damiani

Edge computing promotes the execution of complex computational processes without the cloud, i. e. , on top of the heterogeneous, articulated, and possibly mobile systems composed of IoT and edge devices. Such a pervasive smart fabric augments our environment with computing and networking capabilities. This leads to a complex and dynamic ecosystem of devices that should not only exhibit individual intelligence but also collective intelligence—the ability to take group decisions or process knowledge among autonomous units of a distributed environment. Self-adaptation and self-organisation mechanisms are also typically required to ensure continuous and inherent toleration of changes of various kinds, to distribution of devices, energy available, computational load, as well as faults. To achieve this behaviour in a massively distributed setting like edge computing demands, we seek for identifying proper abstractions, and engineering tools therefore, to smoothly capture collective behaviour, adaptivity, and dynamic injection and execution of concurrent distributed activities. Accordingly, we elaborate on a notion of “aggregate process” as a concurrent collective computation whose execution and interactions are sustained by a dynamic team of devices, whose spatial region can opportunistically vary over time. We ground this notion by extending the aggregate computing model and toolchain with new constructs to instantiate aggregate processes and regulate key aspects of their lifecycle. By virtue of an open-source implementation in the ScaFi framework, we show basic programming examples as well as case studies of edge computing, evaluated by simulation in realistic settings.

TAAS Journal 2017 Journal Article

Self-Adaptation to Device Distribution in the Internet of Things

  • Jacob Beal
  • Mirko Viroli
  • Danilo Pianini
  • Ferruccio Damiani

A key problem when coordinating the behaviour of spatially situated networks, like those typically found in the Internet of Things (IoT), is adaptation to changes impacting network topology, density, and heterogeneity. Computational goals for such systems, however, are often dependent on geometric properties of the continuous environment in which the devices are situated rather than the particulars of how devices happen to be distributed through it. In this article, we identify a new property of distributed algorithms, eventual consistency, which guarantees that computation converges to a final state that approximates a predictable limit, based on the continuous environment, as the density and speed of devices increases. We then identify a large class of programs that are eventually consistent, building on prior results on the field calculus computational model (Beal et al. 2015; Viroli et al. 2015a) that identify a class of self-stabilizing programs. Finally, we confirm through simulation of IoT application scenarios that eventually consistent programs from this class can provide resilient behavior where programs that are only converging fail badly.

KER Journal 2016 Journal Article

Spatial awareness in pervasive ecosystems

  • Simon Dobson
  • Mirko Viroli
  • Jose Luis Fernandez-Marquez
  • Franco Zambonelli
  • Graeme Stevenson
  • Giovanna Di Marzo Serugendo
  • Sara Montagna
  • Danilo Pianini

Abstract Pervasive systems are intended to make use of services and components that they encounter in their environment. Such systems are naturally spatial in that they can only be understood in terms of the ways in which components meet and interact in space. Rather than treating spatiality separately from system components, researchers are starting to develop computational models in which the entire structure of a pervasive system is modelled and constructed using an explicit spatial model, supporting multi-level spatial reasoning, and adapting autonomously to spatial interactions. In this paper, we review current and emerging models of spatial computing for pervasive ecosystems, and highlight some of the trends that will guide future research.

v2026.09.13