A Comparison on Task Orchestration Systems for ROS Robotic Systems - Segalle, David; Zenatti, Bruno Emanuel; Armênio, Gustavo Fardo; Nonaka, Arthur Massaru; Fabro, João Alberto (Anais do Simpósio Brasileiro de Robótica e Simpósio Latino Americano de Robótica (SBR/LARS); 2025: Anais do XVII Simpósio Brasileiro de Robótica e XVI Workshop de Robótica na Educação, 2025)
Developments in service robotics brought a plethora of capabilities to robots, however, stringing them into useful tasks is an yet unsolved challenge being tackled by in several directions. One of the challenges is how to instruct a service robot to solve an specific problem by leveraging a set of basic capabilities already implemented by the robot, we call this “task orchestration”. There are libraries and tools that can be used to orchestrate such plans for robots to perform their tasks. In this paper we perform a comparison between two popular task orchestration systems, Behavior Trees and State Machines as a middle layer to supply behaviors for a robot using ROS (The Robotic Operating System). The comparison is performed through the lens of design and implementation complexity, as presented by 2 libraries, as well as how simple they are to mix and match parts of the system to create a new behavior. The implementation and mixing of parts are compared through the development of a sub task for the facial recognition task at Robocup@Home competition. The design complexity is analysed through a pick and place example.