Core Concepts
Customizable concurrency models are essential for BDI agent programming frameworks to enable tuning execution to specific application needs and execution environments.
Abstract
The content provides a taxonomy of concurrency models for BDI agent programming frameworks, including one-agent-one-thread (1A1T), all-agents-one-thread (AA1T), all-agents-one-event-loop (AA1EL), and all-agents-one-executor (AA1E) models. It analyzes several popular BDI frameworks like Jason, Astra, JaKtA, Phidias, Spade-BDI, and Jadex, and their support for these concurrency models.
The key insights are:
- The choice of concurrency model deeply impacts aspects like performance, determinism, and reproducibility of multi-agent systems (MAS) built on top of BDI frameworks.
- Experienced developers need control over the concurrency model to tune the execution of their MAS to specific application requirements and execution environments.
- BDI framework designers should promote a clear separation between the MAS specification and its actual runtime concurrency model, enabling flexibility in model selection.
- Further investigation is needed to provide a general concurrency blueprint for BDI technologies.