awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
BehaviorTree avatar

BehaviorTree/BehaviorTree.CPP

0
View on GitHub↗
4,070 stars·841 forks·C++·MIT·5 vuesbehaviortree.dev↗

BehaviorTree.CPP

BehaviorTree.CPP est une bibliothèque C++ pour concevoir une logique de changement de tâche et des comportements réactifs en utilisant une structure arborescente hiérarchique. Elle fournit un cadre pour créer des systèmes de logique réactive qui gèrent des comportements complexes via un moteur d'exécution et un magasin de données centralisé pour partager l'état entre les nœuds.

La bibliothèque découple la logique comportementale de haut niveau du code source en utilisant un analyseur XML pour définir la morphologie de l'arbre. Elle étend en outre ses fonctionnalités grâce à un visualiseur dédié pour surveiller les états d'exécution en temps réel et un pont spécialisé pour intégrer les actions et services ROS2 dans l'arbre de comportement pour le contrôle robotique.

Le système prend en charge la gestion des tâches asynchrones et la conception de comportements réactifs, permettant l'orchestration d'opérations de longue durée et la capacité d'interrompre les tâches en fonction des conditions environnementales. Il utilise un tableau noir (blackboard) pour l'échange de données, un mappage de variables basé sur les ports pour la modularité, et prend en charge les extensions au moment de l'exécution via des plugins.

Features

  • Behavior Trees - Provides a C++ framework for implementing hierarchical behavior trees to manage complex task logic in autonomous agents.
  • Reactive Behavior Design - Enables the creation of system logic that monitors environment conditions to interrupt current tasks and switch behaviors in real time.
  • Robotic Task Orchestration - Manages complex robot behaviors and task-switching by organizing actions into a hierarchical tree structure.
  • XML Workflow Definitions - Uses XML files to declaratively define the behavior tree logic and structure, decoupling it from C++ code.
  • ROS2 Ecosystem Integrations - Provides a software bridge to connect behavior tree deliberation logic with ROS2 actions and services.
  • Asynchronous Task Management - Handles long-running non-blocking operations that return a running status to keep the main execution loop responsive.
  • Blackboard Patterns - Provides a centralized blackboard for coordinating state and data exchange between disparate behavior tree nodes.
  • Tick-Based Execution Models - Processes the behavior tree by periodically triggering root updates that propagate status signals through the node hierarchy.
  • Debugging and Monitoring - Provides tools for inspecting real-time node transitions and blackboard state to debug complex behaviors.
  • Behavior Tree Parsers - Implements a system for parsing XML files to decouple behavioral logic design from the compiled C++ source.
  • Composite-Decorator Nodes - Utilizes composite-decorator nodes to modify the execution and return status of child behavioral nodes.
  • Task Status Polling - Implements a mechanism to check the completion status of long-running asynchronous tasks during tree ticks.
  • Functional Logic Modularization - Organizes behavioral logic into decoupled units via XML definitions to separate design from implementation.
  • Port-Based Variable Mappings - Maps internal node inputs and outputs to blackboard entries to ensure tasks remain modular and reusable.
  • Runtime Library Extensions - Allows the loading of custom task implementations at runtime via dynamic shared libraries.
  • Hierarchical Nesting - Supports hierarchical nesting of sub-graphs to create reusable and modular behavioral components.
  • Behavior Tree Visualizers - Ships a visual tool for monitoring real-time execution paths and state transitions within behavior trees.
  • Game AI - Modern C++ library for behavior tree implementation.
  • Behavior and Decision - C++ library for implementing behavior trees.
  • Logique comportementale - Bibliothèque C++ pour implémenter la logique d'arbres de comportement (behavior trees).
  • ROS Libraries and Tools - Library for implementing behavior trees in C++.

Historique des stars

Graphique de l'historique des stars pour behaviortree/behaviortree.cppGraphique de l'historique des stars pour behaviortree/behaviortree.cpp

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à BehaviorTree.CPP

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec BehaviorTree.CPP.
  • bitbrain/beehaveAvatar de bitbrain

    bitbrain/beehave

    2,933Voir sur GitHub↗

    Beehave is a behavior tree AI framework and plugin for the Godot engine. It serves as an agent logic orchestrator for designing adaptive non-player character behaviors using hierarchical behavior trees. The system features a visual debugger that provides runtime visualization of the execution flow and internal state of active trees. This allows for AI execution analysis and the identification of logic errors through a state-based runtime interface. The framework utilizes a composite-decorator pattern and a tick-based polling cycle to execute tree-based logic. It integrates directly with the

    GDScriptaibehavior-treegame-development
    Voir sur GitHub↗2,933
  • ashblue/fluid-behavior-treeAvatar de ashblue

    ashblue/fluid-behavior-tree

    1,166Voir sur GitHub↗

    Fluid Behavior Tree is a code-driven framework for Unity designed to manage autonomous character behaviors through hierarchical decision-making structures. It functions as a game AI logic engine that processes complex entity behaviors by traversing directed graphs of nodes that return success, failure, or running status signals during each frame update. The library distinguishes itself through a fluent builder pattern that allows developers to define nested tree structures, sequences, and parallel execution flows entirely through chainable code methods. This approach emphasizes modularity, en

    C#aibehavior-treebuilder-pattern
    Voir sur GitHub↗1,166
  • reelrbtx/smaccAvatar de reelrbtx

    reelrbtx/SMACC

    326Voir sur GitHub↗

    An Event-Driven, Asynchronous, Behavioral State Machine Library for ROS (Robotic Operating System) applications written in C++

    C++
    Voir sur GitHub↗326
  • o3de/o3deAvatar de o3de

    o3de/o3de

    8,954Voir sur GitHub↗

    This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic environments. It functions as a robotics simulation platform with native integration for ROS 2 to model robot controllers and sensors. The engine features a multi-threaded Forward+ physically based renderer that supports hardware-accelerated ray tracing and global illumination. The system is built on a modular extension architecture using Gems to add or replace features without modifying core binaries. It includes a native SDK for AWS cloud integration, enabling IAM authenticati

    C++3d-graphics3d-graphics-engineanimation
    Voir sur GitHub↗8,954
Voir les 30 alternatives à BehaviorTree.CPP→

Questions fréquentes

Que fait behaviortree/behaviortree.cpp ?

BehaviorTree.CPP est une bibliothèque C++ pour concevoir une logique de changement de tâche et des comportements réactifs en utilisant une structure arborescente hiérarchique. Elle fournit un cadre pour créer des systèmes de logique réactive qui gèrent des comportements complexes via un moteur d'exécution et un magasin de données centralisé pour partager l'état entre les nœuds.

Quelles sont les fonctionnalités principales de behaviortree/behaviortree.cpp ?

Les fonctionnalités principales de behaviortree/behaviortree.cpp sont : Behavior Trees, Reactive Behavior Design, Robotic Task Orchestration, XML Workflow Definitions, ROS2 Ecosystem Integrations, Asynchronous Task Management, Blackboard Patterns, Tick-Based Execution Models.

Quelles sont les alternatives open-source à behaviortree/behaviortree.cpp ?

Les alternatives open-source à behaviortree/behaviortree.cpp incluent : bitbrain/beehave — Beehave is a behavior tree AI framework and plugin for the Godot engine. It serves as an agent logic orchestrator for… ashblue/fluid-behavior-tree — Fluid Behavior Tree is a code-driven framework for Unity designed to manage autonomous character behaviors through… reelrbtx/smacc — An Event-Driven, Asynchronous, Behavioral State Machine Library for ROS (Robotic Operating System) applications… o3de/o3de — This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic… dlr-rm/rafcon — RAFCON (RMC advanced flow control) uses hierarchical state machines, featuring concurrent state execution, to… intel/ad-rss-lib — Library implementing the Responsibility Sensitive Safety model (RSS) for Autonomous Vehicles.