Agent-Oriented Programming

   page       BibTeX_logo.png   
Yoav Shoham
Artificial Intelligence 60(1), pages 51-92
March 1993

A new computational framework is presented, called ~agent-oriented programming~ (AOP), which can be viewed as a specialization of ~object-oriented programming~. The state of an agent consists of components such as beliefs, decisions, capabilities, and obligations; for this reason the state of an agent is called its mental state. The mental state of agents is described formally in an extension of standard epistemic logics: beside temporalizing the knowledge and belief operators, AOP introduces operators for obligation, decision, and capability. Agents are controlled by ~agent programs~, which include primitives for communicating with other agents. In the spirit of ~speech act theory~, each communication primitive is of a certain type: informing, requesting, offering, and so on. This article presents the concept of AOP, discusses the concept of mental state and its formal underpinning, defines a class of agent interpreters, and then describes in detail a specific interpreter that has been implemented.

journal or series
book Artificial Intelligence (AI)