ConGolog, Sin Trans: Compiling ConGolog into Basic Action Theories for Planning and Beyond

ConGolog is a logical programming language for agents that is defined in the situation calculus. ConGolog agent control programs were originally proposed as an alternative to planning, but have also more recently been proposed as a means of providing domain control knowledge for planning. In this paper, we present a compiler that takes a ConGolog program and produces a new basic action theory of the situation calculus whose executable situations are all and only those that are permitted by the program. The size of the resulting theory is quadratic in the size of the original program - even in the face of unbounded loops, recursion, and concurrency. The compilation is of both theoretical and practical interest. From a theoretical perspective, proving properties of programs is simplified because reification of programs is no longer required, and the compiled theory contains fewer second-order axioms. Further, in some cases, properties can be proven by regressing the program to the initial situation, eliminating the need for second-order axioms altogether. From a practical perspective, the compilation provides the mathematical foundation for compiling ConGolog programs into classical planning problems, including, with minor restrictions, into the Plan Domain Definition Language (PDDL), which is used as the input language for most state-of-the-art planners. Moreover, Hierarchical Task Networks (HTNs), a popular planning paradigm for industrial applications can be represented as ConGolog programs and can thus now also be compiled to a classical planning problem. Such compilations are significant because they allow the best state-of-the-art planners to exploit ConGolog and HTN search control, without the need for special-purpose machinery.

[1]  Raymond Reiter,et al.  Proving Properties of States in the Situation Calculus , 1993, Artif. Intell..

[2]  Hector J. Levesque,et al.  ConGolog, a concurrent programming language based on the situation calculus , 2000, Artif. Intell..

[3]  Hector J. Levesque,et al.  GOLOG: A Logic Programming Language for Dynamic Domains , 1997, J. Log. Program..

[4]  Stefan Edelkamp,et al.  Automated Planning: Theory and Practice , 2007, Künstliche Intell..

[5]  Tran Cao Son,et al.  Adapting Golog for Composition of Semantic Web Services , 2002, KR.

[6]  Sheila A. McIlraith,et al.  Monitoring Plan Optimality During Execution , 2007, ICAPS.

[7]  Maria Fox,et al.  PDDL2.1: An Extension to PDDL for Expressing Temporal Planning Domains , 2003, J. Artif. Intell. Res..

[8]  Paolo Traverso,et al.  Automated Planning: Theory & Practice , 2004 .

[9]  Nils J. Nilsson,et al.  Artificial Intelligence , 1974, IFIP Congress.

[10]  Hector J. Levesque,et al.  The cognitive agents specification language and verification environment for multiagent systems , 2002, AAMAS '02.

[11]  Craig A. Knoblock,et al.  PDDL-the planning domain definition language , 1998 .

[12]  Hector J. Levesque,et al.  A concurrent programming language based on the situation calculus: Language and implementation , 1999 .

[13]  Hector J. Levesque,et al.  Foundations for the Situation Calculus , 1998, Electron. Trans. Artif. Intell..

[14]  Pavol Návrat,et al.  Expressivity of STRIPS-Like and HTN-Like Planning , 2007, KES-AMSTA.

[15]  John David Funge,et al.  Making them behave: cognitive models for computer animation , 1998 .

[16]  Dana S. Nau,et al.  SHOP2: An HTN Planning System , 2003, J. Artif. Intell. Res..

[17]  Jorge A. Baier,et al.  Exploiting Procedural Domain Control Knowledge in State-of-the-Art Planners , 2007, ICAPS.

[18]  James A. Hendler,et al.  HTN Planning: Complexity and Expressivity , 1994, AAAI.

[19]  Raymond Reiter,et al.  The Frame Problem in the Situation Calculus: A Simple Solution (Sometimes) and a Completeness Result for Goal Regression , 1991, Artificial and Mathematical Theory of Computation.

[20]  James A. Hendler,et al.  Information Gathering During Planning for Web Service Composition , 2004, SEMWEB.

[21]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[22]  Yongmei Liu A hoare-style proof system for robot programs , 2002, AAAI/IAAI.

[23]  Jorge A. Baier,et al.  Planning with First-Order Temporally Extended Goals using Heuristic Search , 2006, AAAI.

[24]  Alex M. Andrew,et al.  Knowledge in Action: Logical Foundations for Specifying and Implementing Dynamical Systems , 2002 .

[25]  Wolfram Burgard,et al.  Experiences with an Interactive Museum Tour-Guide Robot , 1999, Artif. Intell..

[26]  Gerhard Lakemeyer,et al.  A Logic for Non-Terminating Golog Programs , 2008, KR.

[27]  Alfredo Gabaldon Programming Hierarchical Task Networks in the Situation Calculus , 2002 .

[28]  Alexander Ferrein,et al.  On-Line Decision-Theoretic Golog for Unpredictable Domains , 2004, KI.