“…The analysis of robustness, safety and efficiency was continued in [155], where it was shown how a learning subtree, with possibly unreliable performance, could be added while some guarantees of robustness, safety and efficiency could still be given for the overall BT.…”
“…In [105] hand coded BTs are used alongside the HTN planner. In [155], a BT is manually designed to include a Neural Network Controller. In [86] BTs are manually coded to translate a formalism from the ALC(D) description logic, and in [139], BTs are manually combined with Motion Generators.…”
Section: Manual Design and Other Approachesmentioning
Behavior Trees (BTs) were invented as a tool to enable modular AI in computer games, but have received an increasing amount of attention in the robotics community in the last decade. With rising demands on agent AI complexity, game programmers found that the Finite State Machines (FSM) that they used scaled poorly and were difficult to extend, adapt and reuse.
“…The analysis of robustness, safety and efficiency was continued in [155], where it was shown how a learning subtree, with possibly unreliable performance, could be added while some guarantees of robustness, safety and efficiency could still be given for the overall BT.…”
“…In [105] hand coded BTs are used alongside the HTN planner. In [155], a BT is manually designed to include a Neural Network Controller. In [86] BTs are manually coded to translate a formalism from the ALC(D) description logic, and in [139], BTs are manually combined with Motion Generators.…”
Section: Manual Design and Other Approachesmentioning
Behavior Trees (BTs) were invented as a tool to enable modular AI in computer games, but have received an increasing amount of attention in the robotics community in the last decade. With rising demands on agent AI complexity, game programmers found that the Finite State Machines (FSM) that they used scaled poorly and were difficult to extend, adapt and reuse.
“…Robotics applications of BTs span from manipulation [2]- [4] to non-expert programming [5]- [7]. Other works include task planning [8], human-robot interaction [9]- [11], learning [12]- [15], UAV [16]- [21], multi-robot systems [22]- [25], and system analysis [26]- [28]. The Boston Dynamics's Spot uses BTs to model the robot's mission [29], the Navigation Stack and the task planner of ROS2 uses BTs to encode the high level robot's behavior [30], [31].…”
This paper addresses the concurrency issues affecting Behavior Trees (BTs), a popular tool to model the behaviors of autonomous agents in the video game and the robotics industry.BT designers can easily build complex behaviors composing simpler ones, which represents a key advantage of BTs. The parallel composition of BTs expresses a way to combine concurrent behaviors that has high potential, since composing pre-existing BTs in parallel results easier than composing in parallel classical control architectures, as finite state machines or teleo-reactive programs. However, BT designers rarely use such composition due to the underlying concurrency problems similar to the ones faced in concurrent programming. As a result, the parallel composition, despite its potential, finds application only in the composition of simple behaviors or where the designer can guarantee the absence of conflicts by design.In this paper, we define two new BT nodes to tackle the concurrency problems in BTs and we show how to exploit them to create predictable behaviors. In addition, we introduce measures to assess execution performance and show how different design choices affect them. We validate our approach in both simulations and the real world. Simulated experiments provide statisticallysignificant data, whereas real-world experiments show the applicability of our method on real robots. We provide an opensource implementation of the novel BT formulation and published all the source code to reproduce the numerical examples and experiments.
“…They are gaining popularity in robotics because they are highly flexible, reusable, and well suited to define deliberative elements in the model-based design of control architectures. The use of BTs in robotics [1] spans from manipulation [2]- [4] to task planning [5], [6], human-robot interaction [7]- [9] to learning [10], [11], UAVs [12], [13], and system analysis [14]- [16]. Moreover, BTs are used in the Boston Dynamics's Spot SDKs to model the robot's mission [17] and in the Navigation Stack of ROS2 [18].…”
Our research aims to enable automated property verification of deliberative components in robot control architectures. We focus on a formalization of the execution context of Behavior Trees (BTs) to provide a scalable, yet formally grounded, methodology to enable runtime verification and prevent unexpected robot behaviors to hamper deployment. To this end, we consider a message-passing model that accommodates both synchronous and asynchronous composition of parallel components, in which BTs and other components execute and interact according to the communication patterns commonly adopted in robotic software architectures. We introduce a formal property specification language to encode requirements and build runtime monitors. We performed a set of experiments both on simulations and on the real robot, demonstrating the feasibility of our approach in a realistic application, and its integration in a typical robot software architecture. We also provide an OS-level virtualization environment to reproduce the experiments in the simulated scenario.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.