Research on Multi-Agent Systems (MAS) has led to the development of several models, languages, and technologies for programming not only agents, but also their interaction, the application environment where they are situated, as well as the organization in which they participate. Research on those topics moved from agent-oriented programming towards multi-agent-oriented programming (MAOP). A MAS program is then designed and developed using a structured set of concepts and associated first-class design and programming abstractions that go beyond the concepts normally associated with agents. They include those related to environment, interaction, and organization. JaCaMo is a platform for MAOP built on top of three seamlessly integrated dimensions (i.e. structured sets of concepts and associated execution platforms): for programming belief desire intention (BDI) agents, their artefact-based environments, and their normative organizations. The key purpose of our work on JaCaMo is to support programmers in exploring the synergy between these dimensions, providing a comprehensive programming model, as well as a corresponding platform for developing and running MAS. This paper provides a practical overview of MAOP using JaCaMo. We show how emphasizing one particular dimension leads to different solutions to the same problem, and discuss the issues of each of those solutions.
29 October 2017 in Autonomous Agents and Multi-Agent Systems
As the complexity of software systems rises, explainability - i.e. the ability of systems to provide explanations of their behaviour - becomes a crucial property. This is true for any AI-based systems, including autonomous systems that exhibit decisionmaking capabilities such as multi-agent systems. Although explainabil- ity is generally considered useful to increase the level of trust for end-users, we argue it is also an interesting property for software engineers, developers, and designers to debug and validate the system’s behaviour. In this paper, we propose a multi-level explainability framework for BDI agents to generate explanations of a running system from logs at different levels of abstraction, tailored to different users and their needs. We describe the mapping from logs to explanations, and present a prototype tool based on the JaCaMo platform which implements the framework.