This paper describes a novel approach to high-level agent programming based on a highly developed logical theory of action. The user provides a specification of the agents’ basic actions (preconditions and effects) as well as of relevant aspects of the environment, in an extended version of the situation calculus. He can then specify behaviors for the agents in terms of these actions in a programming language where one can refer to conditions in effect in the environment. When an implementation of the basic actions is provided, the programs can be executed in a real environment; otherwise, a simulated execution is still possible. The interpreter automatically maintains the world model required to execute programs based on the specification. The theoretical framework includes a solutionto the frame problem, allows agents to have incomplete knowledge of their environment, and handles perceptual actions. The theory can also be used to prove programs correct. A simple meeting scheduli...
Yves Lespérance, Hector J. Levesque, Fangzh