A normative programming language for multi-agent organisations
Abstract
The specification of multi-agent organisations is typically based on high-level modelling languages so as to simplify the task of software designers. Interpreting such high-level specifications as part of the organisation management infrastructure (OMI) is a difficult and cumbersome task. Simpler and more efficient tools need to be used for this. Based on primitives such as norms and obligations, we introduce in this paper a Normative Programming Language (NPL)--a language dedicated to the development of normative programs. We present the interpreter for such a language and show how it can be used within an organisation management infrastructure. While designers and agents can still use a high-level organisational modelling language to specify and reason about the multi-agent organisation, the OMI interprets a simpler language. This is possible because the high-level specifications can be automatically translated into the simpler (normative) language. Our approach was used to develop an improved OMI for the M oise framework, as described in this paper. We also show how M oise 's organisation modelling language (with primitives such as roles, groups, and goals) can be translated into NPL programs. Finally, we briefly describe how this all has been implemented on top of ORA4MAS , the distributed artifact-based organisation management infrastructure for M oise .