splintered-reality/py_trees

Python implementation of behaviour trees.

何を解決するか

PyTrees は、ロボット工学などにおいて複雑な行動を整理可能なツリー構造で管理できるようにすることで、中規模の意思決定エンジンの構築を簡素化します。

動作方法

行動ツリーを実装しており、さまざまなコンポーネントを使って論理を構築できます。

  • コアコンポーネント: Behaviours、Decorators、Sequences、Selectors、Parallels を使って論理フローを定義します。
  • データ管理: ツリー内の異なる部分間でデータを共有するために Blackboards を使用します。
  • 宣言的定義: XML パーサーと ports API をサポートしており、コードではなく設定ファイルで行動を定義できます。
  • 可視化: ターミナル上で ASCII/Unicode でツリーをレンダリングしたり、dot グラフにシリアライズして視覚的な分析が可能です。

対象ユーザー

ロボットや構造的で階層的な制御論理を必要とする他のシステムの意思決定層を開発する開発者向けに設計されています。

特徴

  • 標準で用意された行動、デコレータ、イディオムの包括的なライブラリ。
  • 入出力ポートの型指定をサポート。
  • XML を使って行動ツリーを定義可能。
  • コンパニオンライブラリを介して ROS 2 との統合が可能。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト