Taking Recoveries to Task: Recovery-Driven Development for Recipe-based Robot Tasks
Siddhartha Banerjee, Angel Daruna, David Kent, Weiyu Liu, Jonathan, Balloch, Abhinav Jain, Akshay Krishnan, Muhammad Asif Rana, Harish, Ravichandar, Binit Shah, Nithin Shrivatsav, Sonia Chernova

TL;DR
This paper introduces Recovery-Driven Development (RDD), a method for improving robot task robustness through hierarchical, iterative scripting and situated testing, demonstrated on a mobile manipulator for complex tasks.
Contribution
The paper presents RDD, a novel development process that simplifies creating robust robot task recovery strategies through hierarchical specification and iterative testing.
Findings
RDD enabled rapid development of robust recovery strategies.
The approach improved system robustness in complex robot tasks.
Successful validation on the FetchIt! Challenge platform.
Abstract
Robot task execution when situated in real-world environments is fragile. As such, robot architectures must rely on robust error recovery, adding non-trivial complexity to highly-complex robot systems. To handle this complexity in development, we introduce Recovery-Driven Development (RDD), an iterative task scripting process that facilitates rapid task and recovery development by leveraging hierarchical specification, separation of nominal task and recovery development, and situated testing. We validate our approach with our challenge-winning mobile manipulator software architecture developed using RDD for the FetchIt! Challenge at the IEEE 2019 International Conference on Robotics and Automation. We attribute the success of our system to the level of robustness achieved using RDD, and conclude with lessons learned for developing such systems.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Real-Time Systems Scheduling · Advanced Software Engineering Methodologies
