RSLCPP -- Deterministic Simulations Using ROS 2
Simon Sagmeister, Marcel Weinmann, Phillip Pitschi, Markus Lienkamp

TL;DR
This paper introduces RSLCPP, a C++ library that enables deterministic simulations in ROS 2, ensuring reproducible results across different hardware platforms for robotics applications.
Contribution
The paper presents a novel methodology and implementation for deterministic ROS 2 simulations without requiring code modifications, improving reproducibility in robotics testing.
Findings
Achieves identical simulation results across various CPUs and architectures.
Enables reproducible benchmarking and testing in robotics applications.
Open-sourced RSLCPP library available for community use.
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsReal-Time Systems Scheduling · Embedded Systems Design Techniques · Simulation Techniques and Applications
