Alastair D. Burt,
Klaus Fischer,
Jörg H. Siekmann
Multi-Agent Systems Group
DFKI GmbH (German Centre for Artificial Intelligence)
Saarbrücken, Germany
The COMMA-COGs project (Cooperative Man Machine Architectures - Cognitive Architecture for Social Agents) is part of the Multi-Agent Systems group's larger aim to develop integrated architectures for multi-agent systems. In this larger context we hope to give an account of motivation in integrated agent architectures that exploits relevant research in cognitive science.
A new branch of computer applications is opening up based on virtual animated worlds, where human users, their software representatives and a host of services co-exist in a networked environment. This promises to be a major area for the application of agent-oriented techniques. However, these applications demand multi-agent systems that are more flexible than current systems and integrate a wide variety of functionality in a dynamic fashion. The key to achieving this integration is to take seriously the notion of bounded rationality and develop an architecture which manages the resources of an agent consistent with changes in the environment. It should also share resources out to sub-components of the agent according to the way they contribute to the agent's overall goals. The agent society, correspondingly, must be structured to take into account the resource managing behaviour of the individual agents.
The COGs project has three major technical goals:
The resource-oriented and holonic constructs are being added to an architecture whose individual components have a clear, logical characterisation and which uses logic-based planning techniques to derive future courses of action. The architecture is based on the INTERRAP model, which has three layers. In this view the algorithm defining the behaviour of an agent can be captured with the following equation:
algorithm = logic + motivationThis interprets the original equation by Kowalski by relabelling the control component as motivation. By this we mean to indicate that the behaviour of an agent is determined by how the logical specification is used to derive a collection of concurrent sub-processes within an INTERRAP layer, and how the concurrent layers interact, downwards through activation and inhibition and upwards through interrupts.
We use the term motivation to describe this form of control because we are looking a models of motivation from biology and cognitive science as a means to redesign the architecture. A guiding engineering principle behind the redesign is that the resulting behaviour should exhibit bounded rationality: that is to say that given a particular machine to run the algorithm and a utility measure to describe the value of resource usage, the combination of logic and motivation in the above equation makes optimal use of resources for a particular class of environment.
To describe the behaviour of a group of agents we have to indicate how the social structure imposes additional constraints on both the logic and control components of the individual agents and how the protocols for agent interaction allow one agent to influence the behaviour of another.
The agent architecture that is being extended within the COGs project is INTERRAP[18]. It is a hybrid architecture, combining the strengths of reactive and deliberative architectures. In addition, it has functionality to provide the agent with social competence in multi-agent settings. It is composed of three layers:
Recent research in the group has been directed towards providing a more logical account of INTERRAP, than that given in [18]. In particular, we have developed a declarative planning framework based on hierarchical event calculus combined with efficient inference engines based on abductive logic programming[16]. Other aspects of the formalisation have been the development the development of COOP [7], an abstract semantics for the agent model, and its specification in the language Z.
Part of the formalisation of the agent model has been to represent the interaction between layers as a form of meta-level control. This extends naturally to the resource-oriented control constructs we are introducing. In this context, each layer consists of concurrent modules that compete for resources that may be concrete, such as the football in our virtual soccer application, or more abstract, such as whether to attack or defend. A control module for each layer keeps book on the behaviour of the modules of that layer and adjusts the allocation of resources to modules based on how useful the module has been in the past. However, the ability to reason about resource consumption on each layer is limited. It is the layer above that reasons about major strategic changes in resource configuration in the layer below and exerts meta-level control by directing the control module in the layer below[13].
One goal of COGs has been to investigate the novel holonic paradigm of multi-agent programming [9], where agents surrender some of their autonomy and merge to form a "super-agent" (or holon), that acts, when viewed externally, as a single agent.
We have provided a formal definition of a holon, given a classification of possible application domains, and have developed an algebraic characterisation of the merge operation. Putting this into practice, we have developed algorithms for holon formation and on-line re-configuration. We have also begun to examine how resource contention between agents can be managed within the holonic paradigm[8].
The main vehicle for implementing the redesigned architecture is the programming language Oz, in particular its latest incarnation Mozart (see http://www.mozart.org/ for details). This has proven particularly useful for the following reasons:
The results of the project are being used in a variety of application areas. The resource-oriented decomposition of systems into holons is being used for the dynamic scheduling of inter-modal transport[3]. The resource oriented control that has been added to the architecture has been tested in the RoboCup Virtual Soccer competition[11]. In addition, we have developed a distributed toolkit for simulating societies of agents. The toolkit can be use to visualise animated objects in distributed, virtual worlds[17]. We are currently using the toolkit to realise a server for RoboCup Rescue, an extension of the RoboCup Soccer idea to the simulation of a rescue operation after a major urban catastrophe such as an earthquake. The rescuers in this simulation are being implemented as agents incorporating our resource-oriented constructs.
In order to test some of our ideas on the relationship between resource oriented control and models of emotion and motivation, we are using an agent architecture to drive a lifelike character on a web page[1]. The behaviour of the agent is determined in part by a component that reasons about the emotional state of the agent. Ongoing research is looking at how the model of emotions that lies behind this component can also be used to describe the major control-related events in the COGs agent architecture.
Further details about the projects and copies of most of the papers in the list of references can be found at http://www.dfki.de/mas/.