An imperative language for task-level planning: Definition in temporal logic

Abstract The problem of the execution of plans of actions by a robot inspired the conception of various representations. Some of them concern the problems of control theory and geometry involved in the execution of each task of a robot. We are interested in the task-level sequencing of such actions, from the point of view of planning in artificial intelligence and languages for the synchronisation of tasks. Planning formalisms are often based on predicate logic and sometimes temporal logic. Robot programming languages, at the task-level, have classical control structures derived from computer programming languages, as well as ones more specifically related to real-time execution. We propose a logical and temporal model of plans of actions augmented by an imperative control structure. We therefore define, on the basis of an interval-based temporal logic, a set of imperative control primitives that define the temporal arrangement of the actions. After that, primitives for the reaction to evolutions in the environment are defined in the same formalism, in order to respond to constraints concerning interaction and adaptation to the external world. The application of the model in a simulation system is described, as well as its use in execution monitoring systems.

[1]  James F. Allen Towards a General Theory of Action and Time , 1984, Artif. Intell..

[2]  Y. Shoham Reasoning About Change: Time and Causation from the Standpoint of Artificial Intelligence , 1987 .

[3]  Gregory R. Andrews,et al.  Concepts and Notations for Concurrent Programming , 1983, CSUR.

[4]  Éric Rutten,et al.  Temporal Logics and Structured Plans , 1989, SCAI.

[5]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[6]  James F. Allen An Interval-Based Representation of Temporal Knowledge , 1981, IJCAI.

[7]  B. Espiau,et al.  A Synchronous Approach for Control Sequencing in Robotics Application , 1990, Proceedings of the IEEE International Workshop on Intelligent Motion Control.

[8]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[9]  Thierry Gautier,et al.  Programming real-time applications with SIGNAL , 1991, Proc. IEEE.

[10]  Nicolas Halbwachs,et al.  LUSTRE: A declarative language for programming synchronous systems* , 1987 .

[11]  Daniel P. Friedman,et al.  Coordinated computing: tools and techniques for distributed software , 1984 .

[12]  T. Lozano-Perez,et al.  Robot programming , 1983, Proceedings of the IEEE.

[13]  Erik Sandewall,et al.  A Representation of Action Structures , 1986, AAAI.

[14]  S. Michalowski,et al.  A natural-language interface to a mobile robot , 1987 .

[15]  William R. Swartout,et al.  DARPA Santa Cruz Workshop on Planning , 1988, AI Mag..

[16]  Rachid Alami,et al.  Dealing with time in planning and execution monitoring , 1988 .

[17]  André Rifaut,et al.  A formal language for the requirements engineering of computer systems , 1991 .

[18]  Éric Rutten,et al.  A task-level robot programming language and its reactive execution , 1992, Proceedings 1992 IEEE International Conference on Robotics and Automation.

[19]  James A. Hendler,et al.  AI Planning: Systems and Techniques , 1990, AI Mag..