Environment Programming in Multi-Agent Systems – An Artifact-Based Perspective

   page       BibTeX_logo.png   
Autonomous Agents and Multi-Agent Systems 23(2), pages 158-192
September 2011

This article introduces the notion of environment programming in software Multi-Agent Systems (MAS) and describes a concrete computational and  programming model based on the artifact abstraction and implemented by the CArtAgO framework. Environment programming accounts for conceiving the computational environment where agents are situated as a first-class abstraction for programming MAS, namely a part of the system that can be designed and programmed  aside to agents  to encapsulate functionalities that will be exploited by agents at runtime. From a programming and software engineering perspective, this is meant to improve the modularity, extensibility and reusability of the MAS as a software system. By adopting the A&A meta-model, we consider environments  populated by a dynamic set of computational entities called artifacts, collected in workspaces. From the agent viewpoint, artifacts are first-class entities of their environment, representing resources and tools that they can dynamically instantiate, share and use to support their individual and collective activities. From the MAS programmer viewpoint, artifacts are a first-class abstraction to shape and program functional environments that agents will exploit at runtime, including functionalities that concern agent interaction, coordination, organisation, and the interaction with the external environment. The article includes a description of the main concepts concerning artifact-based environments and related CArtAgO technology, as well as  an overview of their application in MAS programming. 

journal or series
book Autonomous Agents and Multi-Agent Systems (J.AAMAS)