SOTA for Multi Robot Cooperation in RMF

Hello,

I wanted to ask whether RMF currently supports multi-robot cooperation with mobile robots. Not just multi-fleet scheduling, but actual inter-robot task dependency. Maybe a concrete example will clarify what I intend:

Mobile Robot A (with a robotic arm) picks up a bottle and brings it to a rendezvous point. Mobile Robot B then takes the bottle and delivers it to the final destination.

This is a simple handoff scenario involving two robots and a shared task. I came across this post from 2 years ago, where someone raised a similar question. At the time, the answer was:

I’m reaching out to check if there has been any progress since then—whether in implementation, architectural planning, or community experiments. If there’s any internal work, proposals, or unofficial approaches floating around, I’d really appreciate hearing about them.

Otherwise, I’m planning to open a new topic specifically focused on how such a feature could be supported in RMF (logically, architecturally, and technically), and eventually start developing alongside my team.

Thanks in advance.

There has been some indirect progress towards this. The most relevant work item is the development of bevy_impulse, a toolkit for defining and executing workflows that are particularly well suited for managing multi-agent behavior. We plan for this to be the foundation of defining tasks that involve interactions between multiple agents, and hand-offs between two mobile robots would be a good example of that kind of task.

We’re currently working on a visual editor+debugger for bevy_impulse that uses ReactFlow, but even without the visual tool, bevy_impulse can already be used to build workflows at runtime (defined via a JSON “diagram”) and execute them.