MOCHA : modelling organisational change using agents
Agent-based computing is becoming a popular tool for modelling, designing and implementing distributed systems. In the engineering of multi-agent systems both the analyst and architect may benefit by thinking about the solution in terms of the roles that agents may enact and the relationships between them. As in human organisations, roles and the relationships between them define expected behaviours of the members of an organisation. The organisational structure thus produced provides an effective way to capture medium- to long-term associations and dependencies between agents. If the organisation structure can be defined in a formalism with a well-defined syntax and precise semantics the engineer gains the benefits associated with describing a system in a formal specification. In this thesis we propose a means to formally specify, verify and analyse agent organisations. We take an organisational approach, defining the structure of the organisation without making any assumptions about the internal characteristics of the agents who populate it. We adopt a normative view of organisations, and capture the notion of social influence through relationships between roles. Ours is a flexible and expressive approach that contemplates agents taking part in multiple organisations with distinct roles and disparate (possibly conflicting) obligations. We make a distinction between the structure of an organisation and the population instantiating the organisation, and our framework allows the consequences of change in both the organisational structure and the population to be investigated. The model and the functionalities described in this thesis are based on sets and a prototypical Prolog implementation is presented.