What it takes to go from a search and rescue procedure on paper to a swarm of drones that plans, talks and searches without a server, a network, or a pilot per aircraft.
Human-AI collaboration: engaging and controlling swarms of robots and drones, so that one operator can direct many autonomous systems at once.
Several drones have to fulfil one shared mission objective, not several private ones.
A mission objective spoken by an operator has to become something a system can execute.
Formalise and automate tasks that align with how operations are actually run, not how a benchmark says they are.
The project's technology readiness level bounds the scope. Everything here is a validated component, not a certified product.
Every component exists because a rescue operation needed it, and each was taken outdoors at least once.
The order follows the operation: define it, divide it, command it, connect it, then measure it.
How the emergency agency searches today, and what a drone system must respect.
Trajectory tasks and a consensus-based bundle algorithm that needs no coordinator.
Two declarative languages between the operator and the mission.
SwarmTalk: broadcast messaging on €10 hardware, tested in the air.
SAREnv: lost-person probability maps and three metrics.
User studies, wildlife monitoring and where the work goes next.
Before a drone can help with a search, someone has to write down what a search is.
A drone-assisted search today is manual coverage and point-of-interest inspection, run by two or three people under a chain of command.
The quality of a search is highly dependent on the operator. Any system that helps has to reduce that dependence rather than add another screen.
A field study of Danish drone-supported rescue operations with the emergency management agency, DEMA.
Four things change while the drones are in the air, and the plan has to change with them.
Grows, shrinks and moves as witnesses report and terrain is cleared.
Where the person was last seen and where they are likely to go decide the sweep.
Aircraft land to swap batteries and rejoin; the team size is never constant.
The incident commander re-weights areas as the operation unfolds.
A missed patch is a failed search. A system that is fast but leaves gaps is worse than a slow one that does not, so every method in this thesis is judged first on whether it covers everything.
The Danish Emergency Management Agency searches in a fixed order: Overview, Focused, Systematic. We evaluated it in the field.
Get the whole area in view. Where are the roads, the water, the edges?
Inspect the points of interest the overview surfaced.
Sweep what remains with coverage lines, so nothing is left to chance.
OFS ensures consistency over best practice. It does not make the task generation consistent: two operators given the same map still draw different lines and pick different points.
Across four different geographical areas, with 180 simulated missing persons between them.
If the procedure is fixed, the tasks can be generated automatically from the environment.
The search polygon, terrain, roads, water, buildings, and the environmental features that shape where people end up.
Overview becomes a perimeter pass, Focused becomes interest points, Systematic becomes coverage lines over what is left.
Coverage lines and interest points, generated the same way every time, ready for an allocator to divide between drones.
The rest of the thesis assumes tasks exist. This is where they come from, and it is why the allocator in Part two has to handle lines, not just points.
The field study set the requirements: cheap, lightweight, low overhead, an ad hoc infrastructure, and complete. We do not want to miss anything.
The strongest multi-robot coverage methods are near-optimal, centralized, and solved before take-off.
Area coverage with multiple capacity-constrained robots: an exact formulation with strong guarantees, and a planning horizon that ends before the first drone leaves the ground.
Part one said the search changes while flying. A plan that must be complete before take-off cannot follow it.
Assign Na drones to Nt tasks without conflicts, maximising a global goal under a set of constraints.
maximise Σi Σj Fij(xij) the sum of every drone's local objective over the tasks it wins
subject to H each task to at most one drone, plus the operational constraints on the right
Airspace the plan may not enter, however cheap the path through it would be.
Some areas must be searched first; the objective discounts late arrival.
A bundle of tasks has to fit in one battery, or it is not a valid bundle.
The current approach: tasks are points or clusters of points, auctioned one at a time.
One auctioneer collects every bid and announces every winner. Simple, and a single point of failure.
Every agent is its own auctioneer and the fleet has to agree on who won. Harder, and the only kind that survives losing the ground station.
Decentralized algorithms buy robustness in an unstructured environment. The consensus-based bundle algorithm, CBBA, is the one we start from.
No node whose loss ends the mission, in a forest with no coverage.
No reliance on existing infrastructure; the drones are the network.
A drone that lands to swap batteries triggers a re-bid, not a restart.
New tasks join the auction as the operation changes, the way Part one said it would.
Each drone greedily builds a bundle of tasks it can serve cheaply, then the fleet reaches consensus on the winning bids. Decentralized, auction based, and it considers the whole bundle while bidding rather than one task at a time.
Two phases repeat until nobody's bid changes: bundle construction on each drone, consensus between them.
Agent i adds task j to its bundle b and path p whenever the reward S improves. It bids the marginal gain of adding that task where it fits best in the path.
Neighbours exchange winning bids and who holds them. A set of consensus rules resolves every conflict locally, so the fleet agrees on who is winning and what the bid is, over any communication topology that changes while flying.
No task added to a bundle may decrease the cost of the whole bundle. A time-discounted reward satisfies this: adding a point to a path always adds time.
Optimality is not guaranteed. And the original is limited to point tasks, while Part one produced lines.
A task becomes a path between two points, and which end you start from is part of what the allocator decides.
The spatial difference between a line's start and end is what the bid scores, so CBBA's convergence carries over.
Points, lines and areas (as line coverage) are all the same object to the allocator.
Higher complexity, because tasks now depend on each other: the order in the path and the direction of traversal both change the cost.
Against a branch-and-bound MILP that knows everything in advance, the decentralized allocator gives up almost nothing.
Compared with centralized branch-and-bound MILP solutions on the same benchmark problems.
Adding drones is cheap. Adding tasks grows the bundle search, since each line can be flown two ways and slotted anywhere in the path.
Each line task is scored in both directions before it enters a bundle.
Combining domain-specific knowledge with planning algorithms: two declarative languages between the operator and the mission.
High-level planning, automatic task generation and swarm monitoring, on top of a built-in UAV infrastructure of Gazebo, PX4 SITL and ROS.
Describes what a drone is: its capabilities such as flight time and sensors, and the environmental conditions and limitations it operates under.
Describes what the operator wants: tasks and constraints in the operator's own terms. It is the translation layer between a human mission objective and its execution.
An operator states the goal and the rules, not the flight plan. The planner from Part two fills in the rest, and the same operation file runs in simulation and on aircraft.
The languages are decentralized by nature. The implementation was not, yet.
Handled, but governed centrally: one process re-runs the allocation.
Handled, but a single node watches every aircraft's heartbeat.
Handled over MAVLink, through the one node that maintains every connection.
The Operation language is inherently decentralized, but the solution still depends on a single node that maintains the connection using MAVLink. What is missing is a communication protocol without a single point of failure.
Simple broadcast messaging between aircraft, inexpensive, open source, and tested in the air.
The requirements: an ad hoc network with decentralized communication, adaptable message formats, and hardware that is open and easy to get.
The standard drone protocol, and it does not support ad hoc drone-to-drone communication.
Both need a centralized broker or coordinator, the very node we are trying to remove.
A real mesh protocol, but it relies on the Linux kernel, so the hardware gets expensive.
Long range, but proprietary and with data rates too low to carry bids and positions.
Broadcast on the data link layer, on a microcontroller that costs about ten euros, with a message format the application defines.
No central coordinator and no network configuration in advance. A commodity ESP32 broadcasting on 2.4 GHz.
2.4 GHz Wi-Fi radio on an off-the-shelf ESP32.
ESP-NOW: lightweight, connectionless messaging on OSI layer 2. 1490-byte packets, about 372 floats each.
A ROS 2 bridge that serialises messages to binary and back: positions, task assignments, status.
Firmware, example code, the ROS 2 middleware and a 3D-printable enclosure. Quick to prototype with and easy to extend.
The whole module. Cheap enough to put on every drone in a fleet and lose a few.
Successfully exchanged packets between airborne UAVs up to 1.5 km apart.
Two outdoor experiments with real aircraft, one for throughput at working range and one to find the edge.
Three UAVs at 50 to 100 m altitude, exchanging positions continuously.
Two UAVs, packets at 2 Hz, range swept from 0 to 1.5 km.
Range: LoRa > SwarmTalk > Wi-Fi. Less reach than LoRa, far more data; more reach than infrastructure Wi-Fi, with no access point.
Parts two and four together: three simulated UAVs run the decentralized allocator, and every bid travels over real SwarmTalk radios.
The three UAVs reached consensus on the task allocation in under ten seconds.
Throughput of 150 kbps against a theoretical maximum of 500 kbps: the allocator used about 30% of the available bandwidth.
Slide 19 said the planner still hung off one MAVLink node. Here the same planner runs with no ground station in the loop at all: the drones bid, agree and fly on a network they carry themselves.
Commodity hardware at about €10 per aircraft, open-source firmware and middleware, and a planner that already speaks it. Enough to prototype a dynamic swarm in an afternoon.
In search and rescue you want to look at the right places at the right time. Until now there was no shared way to say whether a planner does.
The field publishes heuristics faster than it agrees on how to describe the problem or the performance.
Of which roughly a hundred are within robotic path planning.
Spirals, lawnmowers, greedy frontiers and learned policies, each evaluated on its own map with its own metric, so none of them can be compared.
What a SAR operation optimises is debatable. Finding the lost person is not. A benchmark has to be built around that, and around where lost people actually turn out to be.
An open-source dataset and benchmark tool for informed wilderness search and rescue with UAVs, built with the University of Bristol Flight Lab.
Statistical models of where people are found relative to where they were last seen.
Roads, water, tree cover, buildings and terrain, the features that pull a lost person one way or another.
Scenarios at fixed extents so results are comparable between papers.
The probabilities come from real incident data, and they generate the maps a planner is scored against.
Across four distinct European environments, each with a high-resolution probability map.
Use statistical data to generate data for path-planning algorithms, then score any planner the same way.
Where a person is likely to be is the product of how far they tend to travel and what kind of ground they tend to end up on.
P(area) ∝ Pspatial(x, y) · Pfeature(f(x, y)) a continuous spatial probability function, times a discrete distribution over the feature under each cell, assumed statistically independent
Distance from the last known position, from lost-person statistics.
How often people are found on a road, by water, in dense forest, in a building.
Did the search look at the right places at the right time? Each metric answers a stricter version of it.
How much of the probability mass the path has seen. Rewards complete coverage of likely ground.
The same mass, discounted by when it was seen. Rewards looking in the likely places first.
How quickly sampled lost persons, drawn from the map, are actually found. The one that reads like an operation.
A planner can score well on coverage and badly on time, or find the sampled people by luck. Reporting all three is what makes two papers comparable.
Predefined coverage patterns give every future planner something to beat, on the same maps with the same metrics.
The informed planners, those that read the probability map, separate from the uninformed patterns most on the time-discounted metric. Coverage alone hides the difference. Confirm against the results plot on source slide 41.
Not the baselines' scores, but that any planner published after this can report the same three numbers on the same sixty scenarios.
Six peer-reviewed papers, a handful of side quests, and the questions the thesis leaves open.
One per component, plus the project paper that started it.
Human multi-robot interaction in search and rescue and in farming. Christensen, Grøntved et al., Human-Multi-Robot Systems Workshop, Kyoto 2022.
For multi-drone search and rescue operations. Grøntved, Christensen & Bahodi, DCAI 2025, Springer.
Decentralized multi-UAV trajectory task allocation in search and rescue applications. Grøntved, Lundquist & Christensen, ICAR 2023, IEEE.
Towards autonomous multi-UAV U-space operation planning. Grøntved, Jepsen, Christensen, Jensen, Schultz Lundquist & Campusano, ICUAS 2024, IEEE.
An open-source, low-cost solution based on ESP-NOW. Grøntved, Ladig & Christensen, ICUAS 2025, IEEE.
An open-source dataset and benchmark tool for informed wilderness search and rescue using UAVs. Grøntved, Jarabo-Peñas, Reid, Rolland, Watson, Richards, Bullock & Christensen, Drones 9(9), MDPI 2025.
User studies with rescue operators, and the same swarm tools pointed at animals and volcanoes.
Drone swarms to support search and rescue operations: opportunities and challenges (Cultural Robotics, Springer 2023). Before it falls: supporting drone fleet management through battery visualisations (INTERACT 2025).
Drone swarms for animal monitoring: multi-perspective data collection (IMAV 2024) and field trials on large mammals (PAAMS 2025). Autonomous UAV volcanic plume sampling based on machine vision and path planning (ICUAS 2024).
Every one of them exercised the same toolchain: TrajGenPy for paths, TrajAllocPy for allocation, SwarmTalk in the air. A zebra herd and a volcanic plume are search problems with a different target.
Decentralized cooperative control can be realised in operational UAV systems. The thesis delivers the components of a complete toolchain to do it, each open source.
Decentralized task allocation over lines and areas, within 5% of centralized optima.
On physical platforms, at €10 per aircraft, consensus over the air in under ten seconds.
Task generation from the OFS procedure, path generation, and a benchmark built on lost-person behaviour.
Operations described in the operator's terms, executed by the planner.
Robust methods for autonomous, cooperative multi-UAV search and rescue. A standardised evaluation framework that makes the research reproducible and comparable. And an open-source release of every tool and dataset, so the next validation can happen in the field rather than the lab.
Four directions, in the order the emergency agency would ask for them.
Close collaboration with DEMA is still needed to validate the methods on live operations. Interaction with the humans running them is what decides whether the technology is adopted.
From static to dynamic task models: moving targets, evolving uncertainty, even patrolling. Reactive planning for time-critical search, where the human and the UAV plan together.
Mixed teams of UAVs, ground units and manned aircraft, with communication and allocation protocols that understand different capabilities.
LLM agents for natural, adaptive mission specification and operator control. SAREnv's metrics as a training signal for learned search strategies.
End-to-end field tests with the agency. Every other item on this slide is easier to justify once a real operation has run on the toolchain.
Detail for questions: the volcano, the zebras, the interface work, and the coverage problem after this one.
The swarm tooling pointed at a plume instead of a person: machine vision finds it, path planning flies through it.
Monitor as many surfaces as possible using the fewest resources.
Treat every animal as a Lambertian surface and maximise the radiated "light" of the entire herd of zebras that the cameras collect. Camera placement becomes a guarding problem over moving surfaces.
Viewpoints are tasks, the herd is the search area, and the drones allocate them between themselves the way they allocate coverage lines.
The operator from slide 5 is still there. The interface work is about what they see.
Fleet state, task state and battery state in one view rather than one tablet per aircraft.
The system raises what changed; the operator does not have to poll.
Measured in user studies with operators, not assumed.
Cover a known area, distributing the agents most effectively given a distribution of known priors.
How to represent the environment to a learner, how to model the other agents, and what SAREnv's metrics look like as a reward.