Skip to search boxSkip to navigationSkip to main content

Behavior trees in action: A study of robotics applications

  • Razan Ghzouli
    ,
  • Thorsten Berger
    ,
  • Einar Broch Johnsen
    ,
  • Swaib Dragule
    ,
Research Output:
Conference Article in Proceeding or Book/Report chapter
Book chapter
Peer-review

Open access

Publication Information

Output type

Research Output:
Conference Article in Proceeding or Book/Report chapter
Book chapter
Peer-review

Original language

English

Pages from-to (Number of pages)

Pages 196–209

Publication milestones

  • Published - 2020

Publication status

Published - 2020

Publisher

Association for Computing Machinery, United States

Book series

  • Book series name: Proceedings of ACM SIGPLAN International Conference on Software Language Engineering

ISBN (Electronic)

978-1-4503-8176-5

Publication IDs

  • Scopus: 85097712378

Host publication title

Proceedings of the 13th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2020, Virtual Event, USA, November 16-17, 2020

Abstract

Autonomous robots combine a variety of skills to form increasingly complex behaviors called missions. While the skills are often programmed at a relatively low level of abstraction, their coordination is architecturally separated and often expressed in higher-level languages or frameworks. Recently, the language of Behavior Trees gained attention among roboticists for this reason. Originally designed for computer games to model autonomous actors, Behavior Trees offer an extensible tree-based representation of missions. However, even though, several implementations of the language are in use, little is known about its usage and scope in the real world. How do behavior trees relate to traditional languages for describing behavior? How are behavior tree concepts used in applications? What are the benefits of using them?
We present a study of the key language concepts in Behavior Trees and their use in real-world robotic applications. We identify behavior tree languages and compare their semantics to the most well-known behavior modeling languages: state and activity diagrams. We mine open source repositories for robotics applications that use the language and analyze this usage. We find that Behavior Trees are a pragmatic language, not fully specified, allowing projects to extend it even for just one model. Behavior trees clearly resemble the models-at-runtime paradigm. We contribute a dataset of real-world behavior models, hoping to inspire the community to use and further develop this language, associated tools, and analysis techniques.

Publication metrics

PlumX, opens in new tab

Citations
80
Captures
77
Mentions
1

Access to documents

Related Event

Title

ACM SIGPLAN International Conference on Software Language Engineering

Event type

Conference

Degree of recognition

International event

Date

16/11/2020 - 17/11/2020