ABSTRACT

A number of languages and testbeds for implementing and simulating artificial social systems have been described in the literature of Distributed Artificial Intelligence (DAI) and its related disciplines (see, for example, Hewitt 1977, Agha 1986, Gasser et al. 1987, Shoham 1990, Bouron et al. 1991, Doran et al. 1991, Ferber & Carle 1991). However, with the possible exception of pure Actor languages (Hewitt 1977, Agha 1986), these tools have relied on an informal, if not ad hoc, notion of agency, with similarly informal techniques for programming agents. As a result, it is difficult to reason, either formally or informally, about the expected behaviour of systems implemented using such tools. It is similarly difficult to derive an a posteriori explanation of such a system’s behaviour. In this chapter, we present a language for simulating co-operative and competitive behaviour in groups of intelligent artificial agents. In contrast to the informal languages and testbeds referred to above, this language, called Concurrent METATEM, has a simple, well-motivated logical (and hence mathematical) foundation. In relative terms, it is easy to reason about Concurrent METATEM systems at both formal and informal levels (Fisher and Wooldridge 1993). Concurrent METATEM is, so far as we are aware, unique in DAI in having such a well developed and motivated logical foundation.