[About][Docs & Demos][Releases][Installation][PyTrees-Ros Ecosystem]
PyTrees is a python implementation of behaviour trees designed to facilitate the rapid development of medium sized decision making engines for use in fields like robotics. Brief feature list:
- Sequence, Selector, Parallel and Chooser composites
- Blackboards for data sharing
- Python generators for smarter ticking over the tree graph
- Python decorators for enabling meta behaviours
- Render trees to dot graphs or visualise with ascii graphs on stdout
0.5.x
/0.6.x
- first open source releases1.0.x
- first stable release1.1.x
- improvements1.2.x
- improvements2.0.x
- blackboards v2, with namespaces, access permissions and key tracking
Devel | 2.0.x | 1.2.x | 0.6.x | 0.5.x | |
---|---|---|---|---|---|
Sources | |||||
Compatibility | |||||
Continuous Integration | |||||
Documentation |
From ppa on Ubuntu/Bionic:
$ sudo apt install python3-py-trees
From pypi:
$ pip install py_trees
In a Python Virtual Environment:
$ git clone https://github.com/splintered-reality/py_trees
$ cd py_trees
$ source ./virtualenv.bash
Build your own python3 deb:
$ git clone https://github.com/splintered-reality/py_trees
$ cd py_trees
$ source ./virtualenv.bash
$ make deb
From the ROS2 ecosystem:
$ sudo apt install ros-<rosdistro>-py-trees
See the py_trees_ros
README for the latest information on pytrees packages in the ROS ecosystem and their status.