Formal Semantics for an Abstract Agent Programming Language

In this article we investigate agent-oriented programming both from a theoretical and a practical view. We propose an abstract agent programming language with a clear and formally defined semantics. The semantics of our language is defined in terms of a transition system. Our language combines features of both logic programming, i.e. it is rule-based, and imperative programming, i.e. it includes the full range of conventional programming constructs. These features are well-understood and provide a solid basis for a structured agent programming language. On the more practical side we investigate the different properties of agents usually attributed to them, i.e. agents have a complex mental state, act pro-actively and reactively, and have reflective capabilites. We illustrate how these properties of agents are implemented in our programming language. In particalur, we propose general rules, called practical reasoning rules, which are used to define the reflective capabilities of agents and provide a mechanism for goal revision. The combination of the theoretical and practical perspective contributes, we hope, to filling the gap between theory and practice.

[1]  Michael Fisher,et al.  A Survey of Concurrent METATEM - the Language and its Applications , 1994, ICTL.

[2]  Daniel Marcu,et al.  Foundations of a Logical Approach to Agent Programming , 1995, ATAL.

[3]  Anand S. Rao,et al.  AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language , 1996, MAAMAW.

[4]  John-Jules Ch. Meyer,et al.  Formalising Motivational Attitudes of Agents , 1995, ATAL.

[5]  Richard Fikes,et al.  STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving , 1971, IJCAI.

[6]  John-Jules Ch. Meyer,et al.  A Logic of Capabilities , 1994, LFCS.

[7]  Agostino Poggi,et al.  DAISY: An Object-Oriented System for Distributed Artificial Intelligence , 1995, ECAI Workshop on Agent Theories, Architectures, and Languages.

[8]  John Wylie Lloyd,et al.  Foundations of Logic Programming , 1987, Symbolic Computation.

[9]  Jan Treur,et al.  Agent Modelling in METATEM and DESIRE , 1997, ATAL.

[10]  Frank Dignum,et al.  Intentional Agents and Goal Formation , 1997, ATAL.

[11]  Yoav Shoham Agent-Oriented Programming , 1993, Artif. Intell..

[12]  Michael Wooldridge,et al.  A Knowledge-Theoretic Semantics for Concurrent METATEM , 1996, ATAL.

[13]  Hector J. Levesque,et al.  Intention is Choice with Commitment , 1990, Artif. Intell..

[14]  Jörg P. Müller,et al.  The Design of Intelligent Agents , 1996, Lecture Notes in Computer Science.

[15]  Jan Treur,et al.  Compositional Formal Specification of Multi-Agent Systems , 1994, ECAI Workshop on Agent Theories, Architectures, and Languages.

[16]  Sarah Rebecca Thomas,et al.  PLACA, an agent oriented programming language , 1993 .

[17]  Michael Wooldridge,et al.  A Formal Specification of dMARS , 1997, ATAL.

[18]  Hector J. Levesque,et al.  Reasoning about Concurrent Execution Prioritized Interrupts, and Exogenous Actions in the Situation Calculus , 1997, IJCAI.