Litcius/Paper detail

Sketching Robot Programs On the Fly

David Porfirio, Laura Stegner, Maya Çakmak, Allison Sauppé, Aws Albarghouthi, Bilge Mutlu

202319 citationsDOIOpen Access PDF

Abstract

Service robots for personal use in the home and the workplace require end-user development solutions for swiftly scripting robot tasks as the need arises. Many existing solutions preserve ease, efficiency, and convenience through simple programming interfaces or by restricting task complexity. Others facilitate meticulous task design but often do so at the expense of simplicity and efficiency. There is a need for robot programming solutions that reconcile the complexity of robotics with the on-the-fly goals of end-user development. In response to this need, we present a novel, multimodal, and on-the-fly development system, Tabula. Inspired by a formative design study with a prototype, Tabula leverages a combination of spoken language for specifying the core of a robot task and sketching for contextualizing the core. The result is that developers can script partial, sloppy versions of robot programs to be completed and refined by a program synthesizer. Lastly, we demonstrate our anticipated use cases of Tabula via a set of application scenarios.

Topics & Concepts

Scripting languageComputer scienceRobotTask (project management)SimplicityHuman–computer interactionSet (abstract data type)Artificial intelligenceService robotRoboticsService (business)Software engineeringProgramming languageEngineeringSystems engineeringEconomicsEpistemologyEconomyPhilosophySpreadsheets and End-User ComputingTeaching and Learning ProgrammingSoftware Engineering Techniques and Practices
Sketching Robot Programs On the Fly | Litcius