← Back to blogVolver al blog

One Operator, Many Robots: commanding UAV–UGV teams with natural languageUn operador, muchos robots: comandar equipos UAV–UGV con lenguaje natural


Accepted at IEEE SSRR 2026Aceptado en IEEE SSRR 2026

Imagine a rescue mission in a large, unstructured area: you need to cover ground fast, find anyone who might be lying there, and get help to them quickly. Now imagine doing all of that with a single person giving voice commands to a whole team of drones and one ground robot — no joysticks, no programming, no control room full of specialists. That is the vision behind our latest work, One Operator, Many Robots: Natural-Language Command of UAV–UGV Teams for Search, Victim Detection, and Rescue, accepted at IEEE SSRR 2026. It builds directly on Swarm-Steward and takes it one crucial step further: connecting what the drones see with what the ground robot does.Imagina una misión de rescate en un área grande y desestructurada: hay que cubrir terreno rápido, encontrar a quien pueda estar allí tirado, y llegar con ayuda cuanto antes. Ahora imagina hacer todo eso con una sola persona dando órdenes por voz a un equipo entero de drones y un robot terrestre — sin joysticks, sin programación, sin una sala de control llena de especialistas. Esa es la visión de nuestro último trabajo, One Operator, Many Robots: Natural-Language Command of UAV–UGV Teams for Search, Victim Detection, and Rescue, aceptado en IEEE SSRR 2026. Se apoya directamente en Swarm-Steward y da un paso crucial más: conectar lo que los drones ven con lo que el robot terrestre hace.

Figure 1 shows the end-to-end workflow demonstrated in the field: (a) natural-language mission control, (b) multi-UAV aerial search and victim localization, and (c) UGV deployment toward the confirmed victim location.La Figura 1 muestra el flujo de trabajo completo demostrado en campo: (a) control de misión por lenguaje natural, (b) búsqueda aérea multi-UAV y localización de víctimas, y (c) despliegue del UGV hacia la ubicación confirmada de la víctima.

aNatural-language mission control.
cUGV deployment toward the confirmed victim location.
bMulti-UAV aerial search and victim localization.
Figure 1Figura 1 — End-to-end SAR workflow demonstrated in the field: (a) natural-language mission control with Swarm-Steward, (b) multi-UAV aerial search and victim localization, and (c) UGV deployment toward the confirmed victim location.Flujo de trabajo SAR completo demostrado en campo: (a) control de misión por lenguaje natural con Swarm-Steward, (b) búsqueda aérea multi-UAV y localización de víctimas, y (c) despliegue del UGV hacia la ubicación confirmada de la víctima.

From aerial search to ground responseDe la búsqueda aérea a la respuesta terrestre

Search-and-rescue operations require rapid area coverage, reliable victim localization, and fast deployment of response assets — but connecting aerial perception with ground-robot action remains difficult for non-expert operators. During autonomous lawnmower-style search, DJI Mini 4 Pro UAVs stream video and telemetry to a perception pipeline that applies a YOLO26l aerial person detector, tracks detections over time, and projects candidate victims to ground coordinates using UAV pose, gimbal state, camera geometry, and terrain elevation.Las operaciones de búsqueda y rescate requieren cobertura rápida del área, localización fiable de víctimas y despliegue veloz de los recursos de respuesta — pero conectar la percepción aérea con la acción del robot terrestre sigue siendo difícil para operadores no expertos. Durante la búsqueda autónoma en barrido, los DJI Mini 4 Pro transmiten vídeo y telemetría a un pipeline de percepción que aplica un detector de personas aéreas YOLO26l, sigue las detecciones en el tiempo y proyecta las víctimas candidatas a coordenadas de suelo usando la pose del UAV, el estado del gimbal, la geometría de cámara y la elevación del terreno.

Figure 2 shows the full victim-detection and cross-UAV association pipeline: detections in sampled frames are geolocated from telemetry and terrain elevation, accumulated into per-UAV tracks, associated across UAVs by the Object Manager, and surfaced to the operator as candidate objects that can be confirmed, rejected, or allowed to expire.La Figura 2 muestra el pipeline completo de detección y asociación cross-UAV: las detecciones en frames muestreados se geolocalizan con telemetría y elevación del terreno, se acumulan en tracks por UAV, se asocian entre UAVs mediante el Object Manager, y se presentan al operador como objetos candidatos que pueden confirmarse, rechazarse o dejar expirar.

Victim-detection and cross-UAV association pipeline from UAV video to confirmed candidates
Figure 2Figura 2 — Victim-detection and cross-UAV association pipeline. Detections in sampled frames are geolocated from telemetry and terrain elevation, then accumulated into per-UAV tracks. Persistent tracks are associated across UAVs by the Object Manager and surfaced to the operator as candidate objects that can be confirmed, rejected, or allowed to expire.Pipeline de detección de víctimas y asociación cross-UAV. Las detecciones en frames muestreados se geolocalizan con telemetría y elevación del terreno, y se acumulan en tracks por UAV. Los tracks persistentes se asocian entre UAVs mediante el Object Manager y se presentan al operador como objetos candidatos que pueden confirmarse, rechazarse o dejar expirar.

Accepted tracks are surfaced on the mission map as dynamic entities that the operator can confirm or reject — and once confirmed, they can be referenced in follow-up natural-language commands, for example to send a UAV to monitor the victim or to dispatch the UGV toward a nearby rescue position. Figure 3 shows the extended architecture: the UI layer supports natural-language commands, previews, and confirmations; the LLM-MAS layer coordinates agents and deterministic managers; the bridge layer performs protocol translation, video decoding, detection, and data batching; and the platform layer contains the UAV and UGV robots.Los tracks aceptados aparecen en el mapa de misión como entidades dinámicas que el operador puede confirmar o rechazar — y una vez confirmados, pueden referenciarse en comandos de lenguaje natural posteriores, por ejemplo para enviar un UAV a vigilar a la víctima o despachar el UGV hacia una posición de rescate cercana. La Figura 3 muestra la arquitectura extendida: la capa de UI soporta comandos de lenguaje natural, previsualizaciones y confirmaciones; la capa LLM-MAS coordina agentes y managers deterministas; la capa bridge hace la traducción de protocolos, decodificación de vídeo, detección y batching de datos; y la capa de plataforma contiene los robots UAV y UGV.

Extended Swarm-Steward architecture: UI, LLM-MAS, bridge and platform layers
Figure 3Figura 3 — Extended Swarm-Steward architecture for aerial search and ground response. The UI layer supports natural-language commands, previews, and confirmations; the LLM-MAS layer coordinates agents and deterministic managers; the bridge layer performs protocol translation, video decoding, detection, and data batching; and the platform layer contains the UAV and UGV robots.Arquitectura extendida de Swarm-Steward para búsqueda aérea y respuesta terrestre. La capa de UI soporta comandos de lenguaje natural, previsualizaciones y confirmaciones; la capa LLM-MAS coordina agentes y managers deterministas; la capa bridge hace traducción de protocolos, decodificación de vídeo, detección y batching de datos; y la capa de plataforma contiene los robots UAV y UGV.

Training the aerial person detectorEntrenando el detector de personas aéreas

Because aerial person detection at these altitudes is different from ground-level detection, we trained a custom YOLO26l model on a merged set of four aerial-person datasets — SARD, HERIDAL, LaDD, and NOMAD — summarized in Table 1.Como la detección de personas aérea a estas altitudes difiere de la detección a nivel de suelo, entrenamos un modelo YOLO26l propio sobre una fusión de cuatro datasets de personas aéreas — SARD, HERIDAL, LaDD y NOMAD — resumidos en la Tabla 1.

DatasetOrig. imgsUsedVal. imgsSelection / preprocessing
SARD1,1831,000200Person-like classes collapsed to person; largest avg bbox area preferred
HERIDAL1,546~985197CSV labels converted to YOLO; largest avg bbox area preferred
LaDD1,2201,000200COCO labels converted to YOLO; largest avg bbox area preferred
NOMAD20,7521,000200Altitude-stratified 10/30/50 m sampling with round-robin actor selection

Four aerial-person datasets merged and relabeled to a common person class (~4,000 training images).

Table 1Tabla 1 — Training data used for the AerialPerson-Mix detector. Four aerial-person datasets merged and relabeled to a common person class (~4,000 training images).Datos de entrenamiento del detector AerialPerson-Mix. Cuatro datasets de personas aéreas fusionados y reetiquetados a una clase person común (~4.000 imágenes de entrenamiento).

Table 2 shows the retrospective model sweep on the balanced validation split. YOLO26l achieved the best mAP50–95 = 0.501 (mAP50 = 0.832) while avoiding the larger checkpoint of YOLO26x. Inference runs on the ground station (RTX 5090), so throughput was never the bottleneck in the field.La Tabla 2 muestra el barrido retrospectivo de modelos sobre la partición de validación balanceada. YOLO26l logró el mejor mAP50–95 = 0,501 (mAP50 = 0,832) evitando el checkpoint mayor del YOLO26x. La inferencia corre en la ground station (RTX 5090), así que el throughput nunca fue el cuello de botella en campo.

ModelmAP50mAP50–95Inference (ms/image)Checkpoint (MiB)
YOLO26n0.7740.4121.915.1
YOLO26s0.8230.4672.0419.4
YOLO26m0.8190.4873.9242.0
YOLO26l (chosen)0.8320.5014.4850.5
YOLO26x0.8140.5008.95112.8

YOLO26l selected: best mAP50–95 (0.501) while retaining stronger recall than YOLO26x and a much smaller checkpoint. Inference time is the image-weighted mean over the source-validation runs on the ground-station laptop (NVIDIA RTX 5090), excluding preprocessing, video transport, and tracking.

Table 2Tabla 2 — YOLO26 model sweep: best-epoch validation mAP, inference time, and checkpoint size. YOLO26l achieved the best mAP50–95 while avoiding the larger checkpoint of the largest model.Barrido de modelos YOLO26: mejor mAP de validación, tiempo de inferencia y tamaño de checkpoint. YOLO26l logró el mejor mAP50–95 evitando el checkpoint más grande del modelo mayor.

The camera-ready version adds two detector analyses: how the combined model compares against single-dataset specialists, and where the detector's precision–recall operating points land for each model size.La versión camera-ready añade dos análisis del detector: cómo se compara el modelo combinado frente a especialistas de un solo dataset, y dónde caen los puntos de operación precisión-recall de cada tamaño de modelo.

YOLO26l mAP50-95 per validation source: combined model vs single-source specialists
Figure 2bFigura 2b — YOLO26l mAP50–95 per validation source and on the pooled set (Mixed), comparing the model fine-tuned on all four datasets against single-source specialists (outlines mark each specialist’s own source). On the pooled 797-image set the combined model reaches mAP50–95 = 0.502 versus 0.071–0.235 for the specialists, and even outscores each specialist on its own source for HERIDAL, LADD, and NOMAD.YOLO26l mAP50–95 por fuente de validación y en el conjunto combinado (Mixed), comparando el modelo fine-tuned con los cuatro datasets frente a especialistas de una sola fuente (los contornos marcan la fuente propia de cada especialista). En el conjunto combinado de 797 imágenes el modelo completo alcanza mAP50–95 = 0,502 frente a 0,071–0,235 de los especialistas, e incluso supera a cada especialista en su propia fuente para HERIDAL, LADD y NOMAD.
Precision-recall curves of the five YOLO26 sizes on the validation images
Figure 2cFigura 2c — Precision–recall curves of the five YOLO26 sizes on the validation images. Markers show maximum-F2, maximum-F1, and P≥0.90 cutoffs; the diamond marks YOLO26l at the 0.60 track gate. A recall-heavy threshold of 0.16 maximizes F2 (P=0.758, R=0.836) — we favor recall because the operator confirms every candidate: a false alarm costs review time, whereas a missed person is never reviewed.Curvas precisión-recall de los cinco tamaños de YOLO26 sobre las imágenes de validación. Los marcadores muestran los cortes de máximo F2, máximo F1 y P≥0,90; el rombo marca YOLO26l en la puerta de tracking de 0,60. Un umbral con recall alto de 0,16 maximiza F2 (P=0,758, R=0,836) — priorizamos el recall porque el operador confirma cada candidato: una falsa alarma cuesta tiempo de revisión, pero una persona omitida nunca se revisa.

Twelve outdoor experimentsDoce experimentos en exteriores

We evaluated the system in 12 outdoor experiments over an approximately 48,000 m² unstructured area, covering four victim placements, one-, two-, and four-UAV teams, different gimbal angles, and search speeds. Figure 4 shows the search area, the planned lawnmower sweeps, and drone-view examples of the four victim placements (a–d), with the full search area and sweep plan below.Evaluamos el sistema en 12 experimentos en exteriores sobre un área desestructurada de unos 48.000 m², cubriendo cuatro colocaciones de víctima, equipos de uno, dos y cuatro UAVs, distintos ángulos de gimbal y velocidades de búsqueda. La Figura 4 muestra el área de búsqueda, los barridos planeados y ejemplos desde el dron de las cuatro colocaciones de víctima (a–d), con el área completa y el plan de barrido debajo.

aLocation A
bLocation B
cLocation C
dLocation D
eSearch area and planned lawnmower sweeps.
Figure 4Figura 4 — Search area, planned lawnmower sweeps, and drone-view examples of the four victim placements used in the real-world experiments. The area spans approximately 199 m × 238 m, corresponding to roughly 48,000 m² (4.8 ha). One UAV flies all sweeps, two UAVs split the area into two groups, and four UAVs each take one sweep region (colored paths S1–4 denote different sweep regions).Área de búsqueda, barridos planeados y ejemplos desde el dron de las cuatro colocaciones de víctima usadas en los experimentos reales. El área abarca aproximadamente 199 m × 238 m, es decir unos 48.000 m² (4,8 ha). Un UAV vuela todos los barridos, dos UAVs dividen el área en dos grupos, y cuatro UAVs toman cada uno una región de barrido (los caminos coloreados S1–4 denotan distintas regiones).

Three placements produced successful detections with best mean localization errors of 1.21 m, 2.29 m, and 1.92 m; the fourth placement (location C) remained unresolved. Table 3 reports the representative outcomes per scenario.Tres colocaciones produjeron detecciones exitosas con errores medios de localización más bajos, de 1,21 m, 2,29 m y 1,92 m; la cuarta colocación (ubicación C) no llegó a resolverse. La Tabla 3 recoge los resultados representativos por escenario.

Scenario (Loc./N)Speed (m/s)GimbalDetectorAlt. (m)Track det.Mean err. (m)Mean conf.
A / 12−90°mini435181.21 ± 0.580.67 ± 0.18
A / 22−90°mini240501.99 ± 0.780.52 ± 0.12
A / 42−90°mini345152.41 ± 0.510.73 ± 0.11
B / 14−45°mini435388.80 ± 1.460.74 ± 0.14
B / 24−45°mini240107.09 ± 1.250.60 ± 0.14
B / 42−90°mini240342.29 ± 0.290.67 ± 0.14
C / 44−90°—————
C / 44−45°—————
D / 14−45°mini135179.33 ± 0.560.66 ± 0.13
D / 24−45°mini240123.13 ± 0.760.65 ± 0.16
D / 44−45°mini34591.92 ± 0.060.47 ± 0.14
D / 14−90°mini180476.37 ± 2.850.66 ± 0.13

Locations A, B, D localized within 10 m; location C (difficult placement) was not localized. A / 1 and B / 1 at 35 m used mini4; D / 1 at 80 m used mini1.

Table 3Tabla 3 — Representative search-experiment localization outcomes. Scenario is reported as Loc./N, where Loc. is the victim placement and N is the number of UAVs. Dashes indicate not-found cases where visual inspection confirmed that the detector did not observe the victim. Locations A, B, D localized within 10 m; location C (difficult placement) was not localized.Resultados representativos de localización de los experimentos de búsqueda. El escenario se indica como Loc./N, donde Loc. es la colocación de la víctima y N el número de UAVs. Los guiones indican casos no encontrados donde la inspección visual confirmó que el detector no observó a la víctima. Las ubicaciones A, B, D se localizaron dentro de 10 m; la ubicación C (colocación difícil) no se localizó.

From detection to rescue responseDe la detección a la respuesta de rescate

Once the operator confirms a candidate, the victim becomes a shared mission target that can be referenced in follow-up natural-language commands — for example, commanding a UAV to orbit the victim for continued monitoring while the UGV is dispatched to a position 5 m north to assist with evacuation without driving directly over the person. Figure 5 shows this post-detection response.Una vez el operador confirma un candidato, la víctima se convierte en un objetivo de misión compartido que puede referenciarse en comandos de lenguaje natural posteriores — por ejemplo, ordenar a un UAV orbitar a la víctima para vigilancia continua mientras el UGV se despacha a una posición 5 m al norte para asistir en la evacuación sin pasar por encima de la persona. La Figura 5 muestra esta respuesta post-detección.

UGV Rover J8 driving toward a confirmed victim location
Figure 5Figura 5 — Post-detection response after operator confirmation. After mini2 detects the candidate person_117 and the operator confirms it, the victim becomes a shared mission target that can be referenced in follow-up natural-language commands. In this example, UAV 1 is commanded to orbit the victim for continued monitoring while mini2 continues searching the area, and the UGV Rover J8 is sent to a position 5 m north of the victim to assist with evacuation without driving directly over the person.Respuesta post-detección tras la confirmación del operador. Cuando mini2 detecta al candidato person_117 y el operador lo confirma, la víctima se convierte en un objetivo de misión compartido referenciable en comandos de lenguaje natural posteriores. En este ejemplo, el UAV 1 recibe la orden de orbitar a la víctima para vigilancia continua mientras mini2 sigue buscando el área, y el UGV Rover J8 se envía a una posición 5 m al norte de la víctima para asistir en la evacuación sin pasar por encima de la persona.

Feedback from a professional firefighterOpinión de un bombero profesional

A professional firefighter from Benalmádena (Málaga) joined the field demonstration and gave direct operational feedback, supporting the relevance of sector-based search, persistent no-go areas, human confirmation, and emergency pause and return commands that bypass the language model for SAR-oriented multi-robot deployment.Un bombero profesional de Benalmádena (Málaga) se unió a la demostración de campo y dio feedback operativo directo, apoyando la relevancia de la búsqueda por sectores, las áreas de no-paso persistentes, la confirmación humana y los comandos de pausa de emergencia y retorno que omiten el modelo de lenguaje para el despliegue multi-robot orientado a SAR.

A. Jarabo-Peñas, J. Bravo-Arrabal, E.G.A. Rolland, A.L. Christensen. Accepted at IEEE SSRR 2026. Supported by the Independent Research Fund Denmark (grant 4264-00105B, NAMUR project). Also on the NAMUR site.A. Jarabo-Peñas, J. Bravo-Arrabal, E.G.A. Rolland, A.L. Christensen. Aceptado en IEEE SSRR 2026. Financiado por el Independent Research Fund Denmark (grant 4264-00105B, proyecto NAMUR). También en la web de NAMUR.

📖 Related: Swarm-Steward (IEEE ICUAS 2026)  ·  Voice-Commanded UGV for SAR Logistics (IEEE SSRR 2025)📖 Relacionados: Swarm-Steward (IEEE ICUAS 2026)  ·  UGV con comandos de voz para logística SAR (IEEE SSRR 2025)