The dMARS architecture. A specification of the distributed multi-agent reasoning system.

d'Inverno, Mark; Georgeff, M.; Kinny, D. and Luck, M.. 2004. The dMARS architecture. A specification of the distributed multi-agent reasoning system. Autonomous Agents and Multi-Agent Systems, 9(1/2), pp. 5-53. ISSN 13872532 [Article]

No full text available

Abstract or Description

The Procedural Reasoning System (PRS) is the best established agent architecture currently
available. It has been deployed in many major industrial applications, ranging from fault diagnosis on the
space shuttle to air traffic management and business process control. The theory of PRS-like systems has
also been widely studied: within the intelligent agents research community, the belief-desire-intention
(BDI) model of practical reasoning that underpins PRS is arguably the dominant force in the theoretical
foundations of rational agency. Despite the interest in PRS and BDI agents, no complete attempt has yet
been made to precisely specify the behaviour of real PRS systems. This has led to the development of a
range of systems that claim to conform to the PRS model, but which differ from it in many important
respects. Our aim in this paper is to rectify this omission. We provide an abstract formal model of an
idealised dMARS system (the most recent implementation of the PRS architecture), which precisely
defines the key data structures present within the architecture and the operations that manipulate these
structures. We focus in particular on dMARS plans, since these are the key tool for programming dMARS
agents. The specification we present will enable other implementations of PRS to be easily developed, and
will serve as a benchmark against which future architectural enhancements can be evaluated

Item Type:


Identification Number (DOI):

Departments, Centres and Research Units:



October 2004Published

Item ID:


Date Deposited:

12 Mar 2009 15:41

Last Modified:

20 Jun 2017 09:59

Peer Reviewed:

Yes, this version has been peer-reviewed.


Edit Record Edit Record (login required)