Persistent multi-robot patrolling is a complex real-world problem, requiring repeated observation of an environment while adapting to changes in layout and team composition. We present PRoMiSe, a multi-agent reinforcement learning policy for visibility-based persistent monitoring that commands body-frame velocities, with no patrol graph, task allocation or planner in the control loop. It combines a compact egocentric idleness summary and lidar ranges with attention over a variable number of teammates and recurrent temporal reasoning. A single policy transfers without fine-tuning to unseen simulated maps and teams of up to sixteen robots, and runs unmodified on Unitree Go2 quadrupeds at three physical sites. Matched indoor experiments with one to four robots show cumulative coverage within 0.6 percentage points of simulation. Outdoor deployments with two robots demonstrate coordinated patrolling in previously unseen environments, including an industrial site eight times the average training-map area. These results provide evidence of sim-to-real-to-field transfer for persistent multi-robot monitoring across layouts, scales, and team sizes.
Every robot runs the same weights on its own pose and heading, a sixteen-ray lidar scan, and an eight-sector histogram of how stale the space around it is, in its own body frame. No patrol graph, no task allocation, no assigned region.
Teammates arrive as an unordered set of tokens carrying distance, bearing and relative heading. Cross-attention pools them into a fixed-width embedding, invariant to team size and ordering. That is what lets a policy trained with four robots run with sixteen.
A GRU carries what one observation cannot: where the robot came from and which regions it has already refreshed. Ablating it costs nothing at one robot and costs at every larger team, so the gain is coordination, not capacity.
The critic sees the full team state during training only. Each robot then acts on what it senses and on the tokens its teammates broadcast, so a lost robot or a delayed message degrades the team gradually instead of breaking an assignment.
Every clip below plays at ten times real speed.
Training runs on procedurally generated room layouts with one to four robots. Cells darken as they are observed and pale out as they go stale; the trail behind each robot is its recent path.




Training only ever sees one to four robots. The same checkpoint then runs with eight, twelve and sixteen without retraining, re-tuning or any reassignment: the team simply re-partitions the floor. Going from one to sixteen robots cuts average idleness from 304.3 s to 25.8 s and raises final coverage from 91.6% to 99.7%, so performance keeps improving beyond the training range.



A single set of weights runs on layouts that share no structure with one another: open atria, rings, corridors, spokes, warehouse aisles, a parking lot, and real customer sites. All twelve are held out from training, all are patrolled by the same four-robot checkpoint.












The same checkpoint drives physical Go2 quadrupeds in an office it has never seen. Nothing changes between these runs except how many robots are switched on.




The same checkpoint runs on physical Go2 quadrupeds at two outdoor sites, neither of them seen in training. The industrial test site is eight times the average training map.




@inproceedings{promise2027,
title = {PRoMiSe: Persistent Multi-Robot Monitoring Sim-to-Real-to-Field},
author = {Salvatore, Alessio and de los Rios, Juan and Rytz, David and Stamatopoulou, Maria},
booktitle = {Under review},
year = {2027}
}