Skip to main content

Verification of Behavior Trees using Linear Constrained Horn Clauses

  • Conference paper
  • First Online:
Formal Methods for Industrial Critical Systems (FMICS 2022)

Abstract

In the field of industrial production the usage of Behavior Trees sparks interest due to their modularity and flexibility. Considering Behavior Trees are used in a safety-critical domain, there is increased interest for methods to verify a Behavior Tree’s safety. Current approaches for Behavior Trees are only semi-automatic since they require manually added low-level details about the action’s behavior.

In this paper, we describe an automatic verification method for safety properties on Behavior Trees using Linear Constrained Horn Clauses (LCHCs). Our approach encodes all components of the verification task as CHCs, that is, the structure and semantics of the Behavior Tree, the implemented actions in the leaf nodes and the safety property itself. These clauses are then solved by a state-of-the-art SMT solver, leading to an efficient algorithm for Behavior Tree verification, which we evaluate by comparing our method against a general purpose verification framework.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://github.com/embedded-software-laboratory/ArcadeBT.

References

  1. Biggar, O., Zamani, M.: A framework for formal verification of behavior trees with linear temporal logic. IEEE Robot. Autom. Lett. 5(2), 2341–2348 (2020). https://doi.org/10.1109/LRA.2020.2970634

    Article  Google Scholar 

  2. Colvin, R., Hayes, I.: A semantics for behavior trees using CSP with specification commands. Sci. Comput. Program. 76, 891–914 (2011). https://doi.org/10.1016/j.scico.2010.11.007

    Article  MATH  Google Scholar 

  3. Klöckner, A.: Interfacing behavior trees with the world using description logic. In: AIAA Guidance, Navigation, and Control Conference (2013). https://doi.org/10.2514/6.2013-4636

  4. Colledanchise, M., Murray, R.M., Ögren, P.: Synthesis of correct-by-construction behavior trees. In: 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 6039–6046 (2017). https://doi.org/10.1109/IROS.2017.8206502

  5. Klöckner, A.: Behavior Trees for UAV Mission Management (2013)

    Google Scholar 

  6. Ogren, P.: Increasing Modularity of UAV Control Systems using Computer Game Behavior Trees (2012). https://doi.org/10.2514/6.2012-4458

  7. Beyer, D.: Software verification and verifiable witnesses. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 401–416. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46681-0_31

    Chapter  Google Scholar 

  8. Bjørner, N., Gurfinkel, A., McMillan, K., Rybalchenko, A.: Horn clause solvers for program verification. In: Beklemishev, L.D., Blass, A., Dershowitz, N., Finkbeiner, B., Schulte, W. (eds.) Fields of Logic and Computation II. LNCS, vol. 9300, pp. 24–51. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23534-9_2

    Chapter  Google Scholar 

  9. Komuravelli, A., Bjorner, N., Gurfinkel, A., Mcmillan, K.: Compositional verification of procedural programs using horn clauses over integers and arrays, pp. 89–96 (2015). https://doi.org/10.1109/FMCAD.2015.7542257

  10. Colledanchise, M., Ögren, P.: Behavior Trees in Robotics and AI: An Introduction. arXiv abs/1709.00084 (2017)

    Google Scholar 

  11. Colledanchise, M., Parasuraman, R., Ogren, P.: Learning of behavior trees for autonomous agents. IEEE Trans. Comput. Intell. AI Games 11, 183–189 (2018). https://doi.org/10.1109/TG.2018.2816806

    Article  Google Scholar 

  12. Coronado, E., Mastrogiovanni, F., Venture, G.: Development of Intelligent Behaviors for Social Robots via User-Friendly and Modular Programming Tools, pp. 62–68 (2018). https://doi.org/10.1109/ARSO.2018.8625839

  13. Colledanchise, M., Natale, L.: Improving the Parallel Execution of Behavior Trees, pp. 7103–7110 (2018). https://doi.org/10.1109/IROS.2018.8593504

  14. Isla, D.: Handling complexity in the halo 2 AI. In: Game Developers Conference (2005)

    Google Scholar 

  15. Gurfinkel, A., Kahsai, T., Komuravelli, A., Navas, J.A.: The SeaHorn verification framework. In: Kroening, D., Păsăreanu, C.S. (eds.) CAV 2015. LNCS, vol. 9206, pp. 343–361. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21690-4_20

    Chapter  Google Scholar 

  16. de Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78800-3_24

    Chapter  Google Scholar 

  17. Komuravelli, A., Gurfinkel, A., Chaki, S.: SMT-based model checking for recursive programs. In: CAV (2014)

    Google Scholar 

  18. Paulson, L.C.: The foundation of a generic theorem prover. J. Autom. Reason. 5, 363–397 (1989)

    Article  MathSciNet  Google Scholar 

  19. Biallas, S., Frey, G., Kowalewski, S., Schlich, B., Soliman, D.: Formale Verifikation von Sicherheits-Funktionsbausteinen der PLCopen auf Modell- und Code-Ebene. Tagungsband Entwicklung und Betrieb komplexer Automatisierungssysteme. EKA (2010)

    Google Scholar 

  20. Bohlender, D., Kowalewski, S.: Compositional verification of PLC software using horn clauses and mode abstraction. IFAC-PapersOnLine 51, 428–433 (2018)

    Article  Google Scholar 

  21. Colledanchise, M., Cicala, G., Domenichelli, D.E., Natale, L., Tacchella, A.: Formalizing the execution context of behavior trees for runtime verification of deliberative policies. In: IROS (2021)

    Google Scholar 

Download references

Acknowledgements

Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany’s Excellence Strategy – EXC-2023 Internet of Production – 390621612.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thomas Henn .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Henn, T., Völker, M., Kowalewski, S., Trinh, M., Petrovic, O., Brecher, C. (2022). Verification of Behavior Trees using Linear Constrained Horn Clauses. In: Groote, J.F., Huisman, M. (eds) Formal Methods for Industrial Critical Systems. FMICS 2022. Lecture Notes in Computer Science, vol 13487. Springer, Cham. https://doi.org/10.1007/978-3-031-15008-1_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-15008-1_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-15007-4

  • Online ISBN: 978-3-031-15008-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics