-
-
Notifications
You must be signed in to change notification settings - Fork 13
Behavior Tree
Behavior Trees are increasingly used in place of finite state machines (FSM's) and other AI control architectures due to improved properties of modularity, flexibility, reusability, and efficiency of implementation. They enable design/development scalability and efficiency and are a unique combination of state space representation and reasoning (action-selection decision-scheme, where the user can customize the logic for traversal and lifecycle management).
-
Behavior Tree Starter Kit (BTSK) and corresponding provided source code and in particular this file.
-
Elixir Behavior Tree and the corresponding elixirconf talk
march down a prioritized list of the children. The first one that can run, does, but higher-priority siblings can always interrupt the winner on subsequent ticks.
run each of the children in order, skipping those that are not currently relevant (and never revisiting it). When we reach the end of the list, the parent behavior is finished.
same as above, but when we reach the end of the list, we start again.
a random choice is made from among the relevant children. (Markovian Framework?)
pick in a random or prioritized way but never repeat the same choice.