ACCS-TR-0701 A Semantics for Behavior Trees

The Behavior Tree notation is used as part of a framework for developing complex computer systems. The framework is designed to simplify the process of constructing a formal specification of a system from its informal functional requirements. To give a meaning to Behavior Trees, this paper describes a lower-level language called Behavior Tree Process Algebra (BTPA) and its operational semantics, and defines a mechanical translation of Behaviour Trees into BTPA. The process algebra provides several methods by which processes may communicate with each other and interact with the environment: CSPlike synchronisation; send/receive message passing; and shared variables. The meaning of a BTPA process is defined with respect to the current state of the system (value of the components) and the active processes.

[1]  Ralph-Johan Back,et al.  Distributed cooperation with action systems , 1988, TOPL.

[2]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[3]  W. Richard Stevens,et al.  Unix network programming , 1990, CCRV.

[4]  R. Geoff Dromey,et al.  From requirements to design: formalizing the key steps , 2003, First International Conference onSoftware Engineering and Formal Methods, 2003.Proceedings..

[5]  Michael J. Butler A CSP approach to action systems , 1992 .

[6]  Amnon Naamad,et al.  The STATEMATE semantics of statecharts , 1996, TSEM.

[7]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[8]  Kirsten Winter,et al.  Formalising Behaviour Trees with CSP , 2004, IFM.

[9]  Peter A. Lindsay,et al.  An environment for building a system out of its requirements , 2004, Proceedings. 19th International Conference on Automated Software Engineering, 2004..

[10]  Peter A. Lindsay,et al.  An Automated Failure Mode and Effect Analysis Based on High-Level Design Specification with Behavior Trees , 2005, IFM.

[11]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[12]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[13]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[14]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[15]  Geoff Dromey Formalizing the Transition from Requirements to Design , 2006 .

[16]  Jim Woodcock,et al.  The Semantics of Circus , 2002, ZB.

[17]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[18]  James Lyle Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[19]  Bill Segall,et al.  Content Based Routing with Elvin4 , 2000 .

[20]  Rik Eshuis,et al.  Reactive Petri Nets for Workflow Modeling , 2003, ICATPN.