Skip to content

Latest commit

 

History

History
135 lines (103 loc) · 7.5 KB

README.md

File metadata and controls

135 lines (103 loc) · 7.5 KB

Py Trees

[About][Docs & Demos][Releases][Installation][PyTrees-Ros Ecosystem]


About

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

Docs and Demos

devel 2.0.x 1.2.x 0.6.x

Releases

  • 0.5.x/0.6.x - first open source releases
  • 1.0.x - first stable release
  • 1.1.x - improvements
  • 1.2.x - improvements
  • 2.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 devel 2.0.x 1.2.x 0.6.x 0.5.x
Compatibility Python 3.6 Python 3.6 Python 3.6 Python 2.7 Python 2.7
Continuous Integration devel-Status 2.0.x-Status 1.2.x-Status melodic-Status kinetic-Status
Documentation devel-Docs 2.0.x-Docs 1.2.x-Docs 0.6.x-Docs 0.5.x-Docs

Installation

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

PyTrees-ROS Ecosystem

See the py_trees_ros README for the latest information on pytrees packages in the ROS ecosystem and their status.