Modelling self-managing multi agent systems using norms

Businesses have an increasing need for adaptive systems to face the challenges of today’s complex and dynamic world. The Multi Agent Systems (MAS) paradigm offers principles for the building of complex distributed intelligent systems, hence, MASs are potentially strong candidates to aid the take-off of a new generation of smart business processes. The use of one or multiple agents to manage business processes offers access to MAS properties such as the ability to cooperate and coordinate and to manipulate and change the system behaviour autonomously, in both a reactive and proactive manner. Modelling and developing agent based applications is not an easy task though, and successful development of industrial-strength applications requires the availability of comprehensive robust software engineering methodologies. Although, a number of MAS development methodologies have been proposed and are now available, none of them has reached the status of being the standard method for developing MAS, and majority of them are not accessible for business users with limited or no knowledge of MAS. Following the Design Science Research Methodology, we develop a new MAS development methodology called Modelling Self-managing MultiAgent Systems (MSMAS). We propose MSMAS as a means to enable business users, as well as MAS specialists, to translate their ideas into designs with embedded system norms. Norms are a type of constraints that forbids or requires certain types of behaviour within a context. The use of norms and their formal representation enable the software designers to verify the correctness and other properties of these designs, to map their designs into code ready for deployment, and to validate the behaviour of the running system against the requirements. Our proposed methodology combines business process concepts with agent concepts and deﬁne notations for visual models with underlying formal presentation to build MAS applications. MSMAS thus attempts to bring multiagent techniques closer to real-world applications and commercial users. This thesis covers our main contribution of deﬁning a new methodology for the development of multiagent systems. The new methodology is established based on three fundamental aspects: concepts, models, and process. We present a set of agent and business process concepts in the form of metamodel, that supports the formalisation of MAS models, adopts the principles of normative multi agent systems, and employs the concepts of institutions and institutional roles to specify the organisational structure of such systems. We deﬁne four types of system norms to express the requirements at the level of system goals, institutional roles, communication protocols and business activities. MSMAS system norms are constraints that specify permissable and forbidden actions. We realize our methodology by extending the semantics of an existing declarative language to express the system norms within MSMAS models. We also utilise existing logic-based languages to formally encode the system norms. We use then this representation of norms to verify the correctness and other properties of MSMAS system models. Furthermore, we present a mechanism for the monitoring of system traces to verify that the execution meets the requirements. In conclusion, MSMAS is a comprehensive MAS development methodology that covers the full development life cycle and consists of three phases: analysis, design and implementation. MSMAS employs system norms and an institution structure to deﬁne the social aspects of the system and to capture the business requirements formally. MSMAS allows for veriﬁcation and validation of the design and deployed system respectively. The evaluation of MSMAS against software engineering principles and the investigation of its strengths and shortcomings by means of comparison with a number of other MAS methodologies establishes, its capacity to capture business requirements and present them in visual models, with an underlying formal presentation that links business process concepts with agent concepts at a range of abstraction levels.