Skip to content

jr-bor/py_trees

 
 

Repository files navigation

Py Trees

This 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

Detailed api reference and demo instructions can be found in the sphinx documentation for the package.

Extensions

See also py_trees_ros (sphinx documentation) for how to use py_trees with ROS.

Installation

From ppa on Ubuntu/Xenial

sudo apt install python-py-trees

From pypi:

pip install py_trees

Or in a sandboxed ROS Kinetic environment (coming soon):

sudo apt install ros-kinetic-py-trees

Development

You can develop in either a virtualenv (python style):

source ./virtualenv.bash

or in a catkin environment alongside other ROS py-trees packages:

Status

Devel Kinetic Indigo
devel-Sources 0.5.x-Sources 0.4.x-Sources
devel-Status kinetic-Status
devel-Docs 0.5.x-Docs

About

Python implementation of behaviour trees.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.8%
  • Other 1.2%