Controller Synthesis for Golog Programs over Finite Domains with Metric Temporal Constraints

Executing a Golog program on an actual robot typically requires additional steps to account for hardware or software details of the robot platform, which can be formulated as constraints on the program. Such constraints are often temporal, refer to metric time, and require modifications to the abstract Golog program. We describe how to formulate such constraints based on a modal variant of the Situation Calculus. These constraints connect the abstract program with the platform models, which we describe using timed automata. We show that for programs over finite domains and with fully known initial state, the problem of synthesizing a controller that satisfies the constraints while preserving the effects of the original program can be reduced to MTL synthesis. We do this by constructing a timed automaton from the abstract program and synthesizing an MTL controller from this automaton, the platform models, and the constraints. We prove that the synthesized controller results in execution traces which are the same as those of the original program, possibly interleaved with platform-dependent actions, that they satisfy all constraints, and that they have the same effects as the traces of the original program. By doing so, we obtain a decidable procedure to synthesize a controller that satisfies the specification while preserving the original program.

[1]  Gerhard Lakemeyer,et al.  A Logic for Specifying Metric Temporal Constraints for Golog Programs , 2018, CogRob@KR.

[2]  Hector J. Levesque A Completeness Result for Reasoning with Incomplete First-Order Knowledge Bases , 1998, KR.

[3]  Lydia E. Kavraki,et al.  Reactive synthesis for finite tasks under resource constraints , 2017, 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[4]  Alexander Ferrein,et al.  Constraint-Based Online Transformation of Abstract Plans into Executable Robot Actions , 2018, AAAI Spring Symposia.

[5]  Simon Wimmer,et al.  Timed Automata , 2016, Arch. Formal Proofs.

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

[7]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[8]  Joël Ouaknine,et al.  On the decidability of metric temporal logic , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[9]  Jens Claßen,et al.  Planning and Verification in the agent language Golog , 2013 .

[10]  Joël Ouaknine,et al.  Some Recent Results in Metric Temporal Logic , 2008, FORMATS.

[11]  Thomas A. Henzinger,et al.  Real-Time Logics: Complexity and Expressiveness , 1993, Inf. Comput..

[12]  Alberto Finzi,et al.  Representing Flexible Temporal Behaviors in the Situation Calculus , 2005, IJCAI.

[13]  Ron Koymans,et al.  Specifying real-time properties with metric temporal logic , 1990, Real-Time Systems.

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

[15]  Giuseppe De Giacomo,et al.  Synthesis for LTL and LDL on Finite Traces , 2015, IJCAI.

[16]  J. McCarthy Situations, Actions, and Causal Laws , 1963 .

[17]  Patricia Bouyer,et al.  Controller Synthesis for MTL Specifications , 2006, CONCUR.

[18]  Gerhard Lakemeyer,et al.  A semantic characterization of a useful fragment of the situation calculus with knowledge , 2011, Artif. Intell..

[19]  Hector J. Levesque,et al.  IndiGolog: A High-Level Programming Language for Embedded Reasoning Agents , 2009, Multi-Agent Programming, Languages, Tools and Applications.

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

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

[22]  Gerhard Lakemeyer,et al.  Self-Maintenance for Autonomous Robots controlled by ReadyLog , 2010 .