English

RSLCPP -- Deterministic Simulations Using ROS 2

Robotics 2026-01-13 v1

Abstract

Simulation is crucial in real-world robotics, offering safe, scalable, and efficient environments for developing applications, ranging from humanoid robots to autonomous vehicles and drones. While the Robot Operating System (ROS) has been widely adopted as the backbone of these robotic applications in both academia and industry, its asynchronous, multiprocess design complicates reproducibility, especially across varying hardware platforms. Deterministic callback execution cannot be guaranteed when computation times and communication delays vary. This lack of reproducibility complicates scientific benchmarking and continuous integration, where consistent results are essential. To address this, we present a methodology to create deterministic simulations using ROS 2 nodes. Our ROS Simulation Library for C++ (RSLCPP) implements this approach, enabling existing nodes to be combined into a simulation routine that yields reproducible results without requiring any code changes. We demonstrate that our approach yields identical results across various CPUs and architectures when testing both a synthetic benchmark and a real-world robotics system. RSLCPP is open-sourced at https://github.com/TUMFTM/rslcpp.

Keywords

Cite

@article{arxiv.2601.07052,
  title  = {RSLCPP -- Deterministic Simulations Using ROS 2},
  author = {Simon Sagmeister and Marcel Weinmann and Phillip Pitschi and Markus Lienkamp},
  journal= {arXiv preprint arXiv:2601.07052},
  year   = {2026}
}

Comments

Submitted to 'IEEE Robotics and Automation Practice' for possible publication

R2 v1 2026-07-01T08:59:48.721Z