PROSKILL: A formal skill language for acting in robotics
Félix Ingrand
TL;DR
This work tackles the need for verifiable acting in autonomous robots by introducing ProSkill, a formal skill language that maps to Fiacre for both offline model checking and online execution. ProSkill provides state variables, events, basic and composite skills, with automatic translation into Fiacre objects and processes, enabling rigorous verification via the Tina toolkit and runtime supervision via the Hippo engine. The approach is demonstrated on a UAV survey mission, showing offline verification of large state spaces and successful online deployment, linking specification directly to execution. By unifying acting primitives with a formal verification framework, ProSkill offers a practical pathway to trustworthy robotic behavior, combining design-time guarantees with run-time enforcement, even in the presence of external nondeterminism and timing constraints.
Abstract
Acting is an important decisional function for autonomous robots. Acting relies on skills to implement and to model the activities it oversees: refinement, local recovery, temporal dispatching, external asynchronous events, and commands execution, all done online. While sitting between planning and the robotic platform, acting often relies on programming primitives and an interpreter which executes these skills. Following our experience in providing a formal framework to program the functional components of our robots, we propose a new language, to program the acting skills. This language maps unequivocally into a formal model which can then be used to check properties offline or execute the skills, or more precisely their formal equivalent, and perform runtime verification. We illustrate with a real example how we can program a survey mission for a drone in this new language, prove some formal properties on the program and directly execute the formal model on the drone to perform the mission.
