On Behavior Trees and their Verification

dc.contributor.advisorJohnson, Taylor T
dc.contributor.committeeChairKarsai, Gabor
dc.contributor.committeeChairDubey, Abhiskeh
dc.contributor.committeeChairKoutsoukos, Xenofon D
dc.creatorSerbinowska, Serena Serafina
dc.creator.orcid0000-0002-9259-1586
dc.date.accessioned2025-09-26T11:07:44Z
dc.date.available2025-09-26T11:07:44Z
dc.date.created2025-08
dc.date.issued2025-07-14
dc.date.submittedAugust 2025
dc.description.abstractBehavior trees are high level controllers that have gained popularity in a variety of safety critical domains such as robotics and medicine. Because of this, it is important that we be able to formally verify that behavior trees work as intended. To that end, we created a formal model for behavior trees called stateful behavior trees. A stateful behavior trees includes a behavior tree and the environment that behavior tree operates in. Furthermore, we created a tool named BehaVerify for the verification of stateful behavior trees. BehaVerify takes as input a stateful behavior tree specified using a domain specific language we created. The domain specific language allows for the use of invariant specifications, linear temporal logic specifications, and computation tree logic specifications. As output, BehaVerify produces a model for verification with nuXmv, a Python implementation, or a Haskell implementation. We compare BehaVerify against various competing tools and find that BehaVerify generally outperforms. We have expanded BehaVerify to use contingency runtime monitors. To create a contingency runtime monitor, a linear temporal logic specification is included in the input. Additionally, actions to be taken in the case of a violation are also included; this allows the behavior tree to respond to violations. With the rising power and popularity of neural networks, it is also important to be able to handle behavior trees that use neural networks. To that end, we expanded BehaVerify to handle neuro-symbolic behavior trees. We tested BehaVerify on neuro-symbolic behavior trees navigating a complex grid world environment and on a simplified version of ACASXu, an aircraft collision avoidance system. In the case of ACASXu, we verified a neuro-symbolic behavior tree that made use of 5 neural networks, each of which had 6 layers of 50 neurons each. We included a comparison of various methods to encode the neural networks in nuXmv.
dc.format.mimetypeapplication/pdf
dc.identifier.urihttps://hdl.handle.net/1803/19879
dc.language.isoen
dc.subjectBehavior Trees
dc.subjectVerification
dc.subjectFormal Model
dc.subjectDomain Specific Language
dc.subjectNeuro-Symbolic
dc.subjectNeural Networks
dc.titleOn Behavior Trees and their Verification
dc.typeThesis
dc.type.materialtext
thesis.degree.disciplineComputer Science
thesis.degree.grantorVanderbilt University Graduate School
thesis.degree.levelDoctoral
thesis.degree.namePhD

Files

Original bundle

Now showing 1 - 4 of 4
Loading...
Thumbnail Image
Name:
SERBINOWSKA-DISSERTATION-2025.pdf
Size:
2.05 MB
Format:
Adobe Portable Document Format
Loading...
Thumbnail Image
Name:
Serena-Dissertation.zip
Size:
29.23 MB
Format:
Loading...
Thumbnail Image
Name:
Serena-Dissertation_1.zip
Size:
29.23 MB
Format:
Loading...
Thumbnail Image
Name:
Serena-Dissertation_2.zip
Size:
29.23 MB
Format:

License bundle

Now showing 1 - 2 of 2
Loading...
Thumbnail Image
Name:
LICENSE.txt
Size:
1.93 KB
Format:
Plain Text
Description:
Loading...
Thumbnail Image
Name:
PROQUEST_LICENSE.txt
Size:
5.25 KB
Format:
Plain Text
Description: