On the external concurrency of current BDI frameworks for MAS
Martina Baiardi, Samuele Burattini, Giovanni Ciatto, Danilo Pianini, Alessandro Ricci, Andrea Omicini
TL;DR
This paper distinguishes internal concurrency (parallelism within a single agent’s control loop) from external concurrency (how multiple agents map onto underlying execution primitives) and argues that the external model must be chosen independently of MAS specification to enable domain-specific tuning. It provides a taxonomy of external concurrency patterns (1A1T, AA1T, AA1EL, AA1E, with 1A1P as a potential extension) and analyzes several active BDI platforms (Astra, Goal, Jadex, JaKtA, Jason, Phidias, Spade-BDI) to determine which models they support and how configurable they are. Through a three-pronged methodology—empirical benchmarking, code/docs inspection, and direct maintainer feedback—the study reveals heterogeneity and often opacity in how external concurrency is exposed, with some platforms hard-coding models and others offering flexible configurability. The authors advocate for designing BDI technologies that separate agent behaviour from the external concurrency model, enabling swapping and tuning of concurrency strategies (e.g., AA1T/AA1EL for determinism, AA1E for performance) without altering the MAS specification, and they discuss implications for controllability, performance, and future standardization. Overall, the work provides practical guidance for MAS engineering and identifies future research directions to broaden methodology, study interaction effects, and extend the taxonomic framework to non-BDI AOP technologies.
Abstract
The execution of Belief-Desire-Intention (BDI) agents in a Multi-Agent System (MAS) can be practically implemented on top of low-level concurrency mechanisms that impact on efficiency, determinism, and reproducibility. We argue that developers should specify the MAS behaviour independently of the execution model, and choose or configure the concurrency model later on, according to the specific needs of their target domain, leaving the MAS specification unaffected. We identify patterns for mapping the agent execution over the underlying concurrency abstractions, and investigate which concurrency models are supported by some of the most commonly used BDI platforms. Although most frameworks support multiple concurrency models, we find that they mostly hide them under the hood, making them opaque to the developer, and actually limiting the possibility of fine-tuning the MAS.
