Deterministic fleet management for autonomous mobile robots using Rust
summary
Rust powers a fleet manager that orchestrates over 100 autonomous mobile robots by isolating a single-threaded event loop for deterministic state updates while running all network IO on a separate async runtime, enabling exact re-simulation from recorded logs. Procedural derive macros generate compact state representations so checkpoints serialize cheaply (replacing JSON with a compact backend) and replaying logged inputs reproduces deadlocks for debugger-driven diagnosis. The approach runs in production at Arculus and cuts time-to-reproduce complex multi-robot failures from days to minutes.
AI-written summary · about
chapters (12)
- 0:00Deterministic fleet management intro
- 1:26Determinism vs fleet management
- 3:54Why determinism matters
- 5:43Single-threaded event loop in Rust
- 8:53Async IO isolation
- 10:18Deadlock example motivation
- 12:44Deterministic simulation reproduction
- 14:50Efficient state recording
- 17:42Macros for serialization
- 20:34IO module swapping
- 22:01Rust in internal tooling
- 23:47Q&A
related talks
20m"Rust in Motion: Building Reliable and Performant Robotics Systems"
39mReal-Time Rust in Robotics
35mAll aboard the Rust (electric freight) train!
55mScaling out operational research with Rust
14mReliability Engineering for Hybrid Robot-Cloud Systems
41m"Rust for Robotics: Safer, Faster Systems for Autonomous Applications"
20mMastering Rust on Edge and Cloud — AI/IoT Case Studies
29mRust & Rig: Building for Stability in a Rapidly Changing AI Landscape
