Automatic Finite-State Machine Generation for Robotic Tasks from Natural Language Specifications

Guided by Maya Cakmak

TODO:

  • Exploring Habitat
  • Finding alternative libraries writing FSM
  • Try to write simple FSM and make it work in Habitat in realtime
  • Try to implement a FSM visualization, something like SMACH viewer

Finite State Machines (FSMs) are a common representation used in programming robots due to their expressivity and alignment with how robot tasks tend to be modularized. However creating complete, robust FSMs for different tasks is tedious and error-prone. Further, for any high level preference change, such as level of desired human assistance, many parts of an FSM needs to be re-written. In this project we will explore generation of robot FSMs from specifications, using large language models (LLMs).