ConfigBot: Adaptive Resource Allocation for Robot Applications in Dynamic Environments
Rohit Dwivedula, Sadanand Modak, Aditya Akella, Joydeep Biswas, Daehyeok Kim, Christopher J. Rossbach
TL;DR
ConfigBot addresses the challenge of adaptive resource allocation for robot applications in dynamic environments by combining runtime profiling, adaptor-based data throttling, and Bayesian optimization over OS-level (cgroups) and ROS-level (adaptors) knobs. It separates core services from non-core apps, formulates a constrained multi-objective optimization, and maintains a reusable library of context-specific configurations to meet developer-defined performance specifications. The system demonstrates significant improvements over default OS configurations, generalizes across multiple robots and stacks, and adapts to context changes through fast relearning triggered by runtime monitors. The work highlights the practical impact of automatic configuration tuning for robotic deployments, enabling stable, resource-efficient operation in diverse and evolving environments.
Abstract
The growing use of service robots in dynamic environments requires flexible management of on-board compute resources to optimize the performance of diverse tasks such as navigation, localization, and perception. Current robot deployments often rely on static OS configurations and system over-provisioning. However, they are suboptimal because they do not account for variations in resource usage. This results in poor system-wide behavior such as robot instability or inefficient resource use. This paper presents ConifgBot, a novel system designed to adaptively reconfigure robot applications to meet a predefined performance specification by leveraging \emph{runtime profiling} and \emph{automated configuration tuning}. Through experiments on multiple real robots, each running a different stack with diverse performance requirements, which could be \emph{context}-dependent, we illustrate ConifgBot's efficacy in maintaining system stability and optimizing resource allocation. Our findings highlight the promise of automatic system configuration tuning for robot deployments, including adaptation to dynamic changes.
