Formalizing Properties of Agents
There is a wide gulf between the formal logics used by logicians to describe agents
and the informal vocabulary used by people who actually build robotic or software
agents. In an effort to help bridge the gap, this report applies techniques borrowed
from the field of formal software methods to develop a common vocabulary.
Terms useful for discussing agents are given formal definitions. A framework for
describing agents, tasks and environments is developed using the Z specification
language. The terms successful, capable, reactive, reflexive, perceptive, predictive,
interpretive, rational and sound are then defined in terms of this framework. In
addition, a hierarchy for characterizing tasks is given. The aim of this report is to
develop a precise vocabulary for discussing and comparing agents.