Programming-by-Demonstration for Long-Horizon Robot Tasks
arXiv:2305.03129 · doi:10.1145/3632860
Abstract
The goal of programmatic Learning from Demonstration (LfD) is to learn a policy in a programming language that can be used to control a robot's behavior from a set of user demonstrations. This paper presents a new programmatic LfD algorithm that targets long-horizon robot tasks which require synthesizing programs with complex control flow structures, including nested loops with multiple conditionals. Our proposed method first learns a program sketch that captures the target program's control flow and then completes this sketch using an LLM-guided search procedure that incorporates a novel technique for proving unrealizability of programming-by-demonstration problems. We have implemented our approach in a new tool called PROLEX and present the results of a comprehensive experimental evaluation on 120 benchmarks involving complex tasks and environments. We show that, given a 120 second time limit, PROLEX can find a program consistent with the demonstrations in 80% of the cases. Furthermore, for 81% of the tasks for which a solution is returned, PROLEX is able to find the ground truth program with just one demonstration. In comparison, CVC5, a syntax guided synthesis tool, is only able to solve 25% of the cases even when given the ground truth program sketch, and an LLM-based approach, GPT-Synth, is unable to solve any of the tasks due to the environment complexity.
arXiv comment40 Pages, Extended Version of POPL 2024 paper
References in corpus (24)
- PDDL2.1: An Extension to PDDL for Expressing Temporal Planning Domains
- Evaluating Large Language Models Trained on Code
- A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT
- Dissociating language and thought in large language models
- Neural-Guided Deductive Search for Real-Time Program Synthesis from Examples
- Synthesizing Structured CAD Models with Equality Saturation and Inverse Transformations
- BEHAVIOR: Benchmark for Everyday Household Activities in Virtual, Interactive, and Ecological Environments
- FrAngel: Component-Based Synthesis with Control Structures
- Top-Down Synthesis for Library Learning
- Semantics-Guided Synthesis
- Sketching Robot Programs On the Fly
- Explainability in reinforcement learning: perspective and position
- A Survey on Interpretable Reinforcement Learning
- Programming-by-Demonstration for Long-Horizon Robot Tasks
- Unrealizability Logic
- Decidable Synthesis of Programs with Uninterpreted Functions
- Explainable Reactive Synthesis
- Neurosymbolic Programming for Science
- A Decidable Fragment of Second Order Logic With Applications to Synthesis
- Learning Inverse Kinodynamics for Accurate High-Speed Off-Road Navigation on Unstructured Terrain
- Robot Action Selection Learning via Layered Dimension Informed Program Synthesis
- A Divide-Align-Conquer Strategy for Program Synthesis
- Reactive Synthesis: Towards Output-Sensitive Algorithms
- Unsupervised Learning of Neurosymbolic Encoders