English

BehaVerify: Verifying Temporal Logic Specifications for Behavior Trees

Robotics 2024-02-21 v2

Abstract

Behavior Trees, which originated in video games as a method for controlling NPCs but have since gained traction within the robotics community, are a framework for describing the execution of a task. BehaVerify is a tool that creates a nuXmv model from a py_tree. For composite nodes, which are standardized, this process is automatic and requires no additional user input. A wide variety of leaf nodes are automatically supported and require no additional user input, but customized leaf nodes will require additional user input to be correctly modeled. BehaVerify can provide a template to make this easier. BehaVerify is able to create a nuXmv model with over 100 nodes and nuXmv was able to verify various non-trivial LTL properties on this model, both directly and via counterexample. The model in question features parallel nodes, selector, and sequence nodes. A comparison with models based on BTCompiler indicates that the models created by BehaVerify perform better.

Cite

@article{arxiv.2208.05360,
  title  = {BehaVerify: Verifying Temporal Logic Specifications for Behavior Trees},
  author = {Serena S. Serbinowska and Taylor T. Johnson},
  journal= {arXiv preprint arXiv:2208.05360},
  year   = {2024}
}
R2 v1 2026-06-25T01:37:31.946Z