\n
\n\n \n \n \n \n \n \n Towards Bridging the Gap between High-Level Reasoning and Execution on Robots.\n \n \n \n \n\n\n \n Hofmann, T.\n\n\n \n\n\n\n Ph.D. Thesis, RWTH Aachen University, Aachen, Germany, 2023.\n
\n\n
\n\n
\n\n
\n\n \n \n
Paper\n \n \n\n \n\n \n link\n \n \n\n bibtex\n \n\n \n \n \n abstract \n \n\n \n \n \n 13 downloads\n \n \n\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n
\n
@phdthesis{hofmannBridgingGapHighlevel2023,\n title = {Towards Bridging the Gap between High-Level Reasoning and Execution on Robots},\n author = {Hofmann, Till},\n year = {2023},\n address = {{Aachen, Germany}},\n url = {https://doi.org/10.18154/RWTH-2023-10508},\n abstract = {When reasoning about actions, e.g., by means of task planning or agent programming with Golog, the robot's actions are typically modeled on an abstract level, where complex actions such as picking up an object are treated as atomic primitives with deterministic effects and preconditions that only depend on the current state. However, when executing such an action on a robot it can no longer be seen as a primitive. Instead, action execution is a complex task involving multiple steps with additional temporal preconditions and timing constraints. Furthermore, the action may be noisy, e.g., producing erroneous sensing results and not always having the desired effects. While these aspects are typically ignored in reasoning tasks, they need to be dealt with during execution. In this thesis, we propose several approaches towards closing this gap. Based on a logic that combines the situation calculus with metric time and metric temporal logic, we model the robot platform with timed automata and temporal constraints to describe the connection between the high-level actions and the robot platform. We then describe two approaches towards transforming the high-level program. First, we view the transformation as a synthesis problem, where the task is to synthesize a controller that executes the program while satisfying the specification, independent of the environment's choices. We show that the synthesis problem is decidable, describe an algorithm to construct a controller, and evaluate the approach in two robotics scenarios. While this approach supports controlling arbitrary Golog programs against any specification with timing constraints, it does not scale well. For this reason, we describe a second approach based on some simplifying assumptions which allow us to view the transformation problem as a reachability problem on timed automata, which can be solved with state-of-the-art tools. We demonstrate the effectiveness and scalability of the approach in a number of scenarios. Finally, we turn towards noisy sensors and effectors. Based on DS, a probabilistic variant of the situation calculus that allows modeling the agent's degree of belief, we describe an abstraction framework for Golog programs with noisy actions. In this framework, a high-level and non-stochastic program is mapped to a more detailed and stochastic low-level program. As the high-level program is non-stochastic, we may use non-probabilistic reasoning methods such as task planning or classical Golog program execution. At the same time, by mapping the abstract actions to low-level programs, we may still deal with uncertainty during execution. We define a suitable notion of bisimulation that guarantees the equivalence between the high-level and low-level programs and demonstrate the approach with an example.},\n school = {RWTH Aachen University},\n keywords = {artificial intelligence,belief-based programs,cognitive robotics,Golog,knowledge representation,metric temporal logic,situation calculus,stochastic actions,synthesis,timed systems,verification}\n}\n\n
\n
\n\n\n
\n When reasoning about actions, e.g., by means of task planning or agent programming with Golog, the robot's actions are typically modeled on an abstract level, where complex actions such as picking up an object are treated as atomic primitives with deterministic effects and preconditions that only depend on the current state. However, when executing such an action on a robot it can no longer be seen as a primitive. Instead, action execution is a complex task involving multiple steps with additional temporal preconditions and timing constraints. Furthermore, the action may be noisy, e.g., producing erroneous sensing results and not always having the desired effects. While these aspects are typically ignored in reasoning tasks, they need to be dealt with during execution. In this thesis, we propose several approaches towards closing this gap. Based on a logic that combines the situation calculus with metric time and metric temporal logic, we model the robot platform with timed automata and temporal constraints to describe the connection between the high-level actions and the robot platform. We then describe two approaches towards transforming the high-level program. First, we view the transformation as a synthesis problem, where the task is to synthesize a controller that executes the program while satisfying the specification, independent of the environment's choices. We show that the synthesis problem is decidable, describe an algorithm to construct a controller, and evaluate the approach in two robotics scenarios. While this approach supports controlling arbitrary Golog programs against any specification with timing constraints, it does not scale well. For this reason, we describe a second approach based on some simplifying assumptions which allow us to view the transformation problem as a reachability problem on timed automata, which can be solved with state-of-the-art tools. We demonstrate the effectiveness and scalability of the approach in a number of scenarios. Finally, we turn towards noisy sensors and effectors. Based on DS, a probabilistic variant of the situation calculus that allows modeling the agent's degree of belief, we describe an abstraction framework for Golog programs with noisy actions. In this framework, a high-level and non-stochastic program is mapped to a more detailed and stochastic low-level program. As the high-level program is non-stochastic, we may use non-probabilistic reasoning methods such as task planning or classical Golog program execution. At the same time, by mapping the abstract actions to low-level programs, we may still deal with uncertainty during execution. We define a suitable notion of bisimulation that guarantees the equivalence between the high-level and low-level programs and demonstrate the approach with an example.\n
\n\n\n
\n
\n\n \n \n \n \n \n \n Abstracting Noisy Robot Programs.\n \n \n \n \n\n\n \n Hofmann, T.; and Belle, V.\n\n\n \n\n\n\n In
Proceedings of the 22nd International Conference on Autonomous Agents and Multiagent Systems (AAMAS), 2023. \n
\n\n
\n\n
\n\n
\n\n \n \n
Paper\n \n \n\n \n\n \n link\n \n \n\n bibtex\n \n\n \n \n \n abstract \n \n\n \n \n \n 27 downloads\n \n \n\n \n \n \n \n \n \n \n\n \n \n \n\n\n\n
\n
@inproceedings{hofmannAbstractingNoisyRobot2023,\n title = {Abstracting Noisy Robot Programs},\n author = {Hofmann, Till and Belle, Vaishak},\n booktitle = {Proceedings of the 22nd International Conference on Autonomous Agents and Multiagent Systems (AAMAS)},\n year = {2023},\n abstract = {\n Abstraction is a commonly used process to represent some low-level\n system by a more coarse specification with the goal to omit unnecessary\n details while preserving important aspects. While recent work on\n abstraction in the situation calculus has focused on non-probabilistic\n domains, we describe an approach to abstraction of probabilistic and\n dynamic systems. Based on a variant of the situation calculus with\n probabilistic belief, we define a notion of bisimulation that allows to\n abstract a detailed probabilistic basic action theory with noisy\n actuators and sensors by a possibly non-stochastic basic action theory.\n By doing so, we obtain abstract Golog programs that omit unnecessary\n details and which can be translated to detailed programs for\n execution. This simplifies the implementation of noisy robot\n programs, opens up the possibility of using non-stochastic reasoning\n methods (e.g., planning) on probabilistic problems, and provides domain\n descriptions that are more easily interpretable.\n },\n url = {https://kbsg.rwth-aachen.de/papers/aamas2023-abstraction.pdf}\n}\n\n\n
\n
\n\n\n
\n Abstraction is a commonly used process to represent some low-level system by a more coarse specification with the goal to omit unnecessary details while preserving important aspects. While recent work on abstraction in the situation calculus has focused on non-probabilistic domains, we describe an approach to abstraction of probabilistic and dynamic systems. Based on a variant of the situation calculus with probabilistic belief, we define a notion of bisimulation that allows to abstract a detailed probabilistic basic action theory with noisy actuators and sensors by a possibly non-stochastic basic action theory. By doing so, we obtain abstract Golog programs that omit unnecessary details and which can be translated to detailed programs for execution. This simplifies the implementation of noisy robot programs, opens up the possibility of using non-stochastic reasoning methods (e.g., planning) on probabilistic problems, and provides domain descriptions that are more easily interpretable. \n
\n\n\n
\n
\n\n \n \n \n \n \n \n Controlling Timed Automata against MTL Specifications with TACoS.\n \n \n \n \n\n\n \n Hofmann, T.; and Schupp, S.\n\n\n \n\n\n\n
Science of Computer Programming, 225: 102898. January 2023.\n
\n\n
\n\n
\n\n
\n\n \n \n
Paper\n \n \n\n \n \n doi\n \n \n\n \n link\n \n \n\n bibtex\n \n\n \n \n \n abstract \n \n\n \n \n \n 5 downloads\n \n \n\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n\n\n\n
\n
@article{hofmannControllingTimedAutomata2023,\n title = {Controlling Timed Automata against {{MTL}} Specifications with {{TACoS}}},\n author = {Hofmann, Till and Schupp, Stefan},\n year = {2023},\n month = jan,\n journal = {Science of Computer Programming},\n volume = {225},\n pages = {102898},\n issn = {0167-6423},\n url = {https://kbsg.rwth-aachen.de/papers/scico2023-tacos.pdf},\n doi = {https://doi.org/10.1016/j.scico.2022.102898},\n abstract = {TACoS is a tool for synthesizing controllers against specifications of undesired behavior with timing constraints. Given a timed automaton and an MTL specification, the tool synthesizes a controller that guarantees that every possible execution of the system satisfies the given specification. TACoS comes with a C++ library with a simple-to-use API and can read from and write to human-readable text input and output. In this paper, we outline the approach of the tool and present two examples in further detail.},\n langid = {english},\n keywords = {Controller synthesis,Metric temporal logic,Timed automata}\n}\n\n
\n
\n\n\n
\n TACoS is a tool for synthesizing controllers against specifications of undesired behavior with timing constraints. Given a timed automaton and an MTL specification, the tool synthesizes a controller that guarantees that every possible execution of the system satisfies the given specification. TACoS comes with a C++ library with a simple-to-use API and can read from and write to human-readable text input and output. In this paper, we outline the approach of the tool and present two examples in further detail.\n
\n\n\n