Robust and maintainable operation using behavior tree semantics
The ITER machine's inherent complexity and the diverse operational phases, such as commissioning and engineering operations, present significant challenges in balancing operability, integration, and automation. The open-source software framework oac-tree* was designed to create, maintain, and execute operational procedures in a robust and repeatable manner. Its semantics are based on a behavior tree model, which inherently supports reactive behavior, making it well-suited for goal-oriented tasks. To accommodate diverse use cases — from small-scale tests to fully integrated operations — the framework's architecture was built with composability and extensibility in mind. System-specific interfaces and user interactions are fully decoupled from the core library, ensuring flexibility and adaptability. The oac-tree library is deployed in production at ITER, offering a command-line interface for executing procedures as system daemons or for interactive use. Its maintainability is ensured by a minimal, low-complexity codebase with well-encapsulated third-party dependencies. The oac-tree ecosystem also includes a Qt-based graphical user interface and a server enabling multiple clients to interact with running procedures. A plugin mechanism supports framework extensions, with existing plugins available for EPICS-based control systems, mathematical expression evaluation, common control system logic, and ITER-specific network protocols.
Publication Details
- Journal
- JACOW
- Published
- 2025-12-05
- DOI
- https://doi.org/10.18429/jacow-icalepcs2025-weag004
- Primary Topic
- Software Engineering and Design Patterns
- Type
- article
- Field-Weighted Citation Impact
- 0.00