Table of Contents
Fetching ...

Who Is Responsible? Self-Adaptation Under Multiple Concurrent Uncertainties With Unknown Sources in Complex ROS-Based Systems

Andreas Wiedholz, Rafael Paintner, Julian Gleißner, Alwin Hoffmann, Tobias Huber

TL;DR

The paper tackles runtime resilience for complex ROS-based robots facing multiple concurrent uncertainties with unknown sources. It proposes a DSL-driven, rule-based MAPE-K managing system that uses a live ROS dependency graph to perform root-cause analysis and rank multiple adaptation strategies. Key contributions include a DSL for multi-strategy, criticality-aware adaptations, lightweight architectural RCA using the dependency graph, and an open-source implementation integrated into BehaviorTree.CPP with extensive ablation and evaluation showing competitive performance against state-of-the-art sequential-uncertainty approaches. This work advances practical self-adaptation in ROS by enabling concurrent uncertainty resolution with minimal downtime and improved availability.

Abstract

Robotic systems increasingly operate in dynamic, unpredictable environments, where tightly coupled sensors and software modules increase the probability of a single fault cascading across components and admitting multiple plausible strategies to resolve the underlying uncertainty. Most existing self-adaptive approaches that have been applied to robotics assume predefined one-to-one uncertainty-to-adaptation mappings. We present a ROS2-based self-adaptive approach building upon the MAPE-K feedback loop that addresses (1) multiple simultaneous uncertainties with differing criticality, (2) cascading uncertainties across components, and (3) multiple plausible resolving strategies per detected symptom. Central to our approach is an adaptation rule set which lets designers specify uncertainty patterns, assign criticality levels, and enumerate multiple plausible adaptation strategies. This rule set, combined with an automatically extracted live ROS2 dependency graph, enables lightweight root-cause analysis and strategy ranking to prioritize minimal and effective adaptations. Evaluations on an underwater robot scenario and a perception use case show that our approach can identify root causes among concurrent uncertainties, favours inexpensive adaptations, reduces unnecessary adaptations, and achieves performance comparable to existing baselines designed for sequential uncertainties. The code is publicly available.

Who Is Responsible? Self-Adaptation Under Multiple Concurrent Uncertainties With Unknown Sources in Complex ROS-Based Systems

TL;DR

The paper tackles runtime resilience for complex ROS-based robots facing multiple concurrent uncertainties with unknown sources. It proposes a DSL-driven, rule-based MAPE-K managing system that uses a live ROS dependency graph to perform root-cause analysis and rank multiple adaptation strategies. Key contributions include a DSL for multi-strategy, criticality-aware adaptations, lightweight architectural RCA using the dependency graph, and an open-source implementation integrated into BehaviorTree.CPP with extensive ablation and evaluation showing competitive performance against state-of-the-art sequential-uncertainty approaches. This work advances practical self-adaptation in ROS by enabling concurrent uncertainty resolution with minimal downtime and improved availability.

Abstract

Robotic systems increasingly operate in dynamic, unpredictable environments, where tightly coupled sensors and software modules increase the probability of a single fault cascading across components and admitting multiple plausible strategies to resolve the underlying uncertainty. Most existing self-adaptive approaches that have been applied to robotics assume predefined one-to-one uncertainty-to-adaptation mappings. We present a ROS2-based self-adaptive approach building upon the MAPE-K feedback loop that addresses (1) multiple simultaneous uncertainties with differing criticality, (2) cascading uncertainties across components, and (3) multiple plausible resolving strategies per detected symptom. Central to our approach is an adaptation rule set which lets designers specify uncertainty patterns, assign criticality levels, and enumerate multiple plausible adaptation strategies. This rule set, combined with an automatically extracted live ROS2 dependency graph, enables lightweight root-cause analysis and strategy ranking to prioritize minimal and effective adaptations. Evaluations on an underwater robot scenario and a perception use case show that our approach can identify root causes among concurrent uncertainties, favours inexpensive adaptations, reduces unnecessary adaptations, and achieves performance comparable to existing baselines designed for sequential uncertainties. The code is publicly available.
Paper Structure (23 sections, 1 equation, 5 figures, 3 tables, 1 algorithm)

This paper contains 23 sections, 1 equation, 5 figures, 3 tables, 1 algorithm.

Figures (5)

  • Figure 1: Relationship between rules, strategies, adaptations and ROS nodes in the managed system.
  • Figure 2: A generic rule in the syntax of our dsl
  • Figure 3: A specific rule from the perception evaluation environment expressed in the syntax of our dsl. This rule detects when the image segmentation quality drops (entropy exceeds 0.06). To solve this uncertainty, it either 1) recalibrates the sensor-fusion ros-Node, 2) activates the image enhancement ros-Node, or 3) deactivates image enhancement. Strategies 2) and 3) also include the corresponding communication change for the sensor-fusion node.
  • Figure 4: Excerpt of the final bt with our approach integrated into the respective decorator and action nodes. The full bt only has more Execution Subtrees.
  • Figure 5: ros system overview of perception use case with exemplary detected concurrent uncertainties used in our evaluation.