MASCOT — teaching an underwater robot where to look
An autonomous underwater vehicle has a few hours of battery and a fjord that is several kilometres across. It cannot measure everywhere. So the question my PhD kept returning to was not how to model the ocean, but a smaller and more awkward one: given what the robot believes right now, where should it go next?
Run the simulator → — the adaptive sampling system from this work, ported to run in your browser.
The problem underneath
The specific task was finding where a river plume meets seawater — the boundary between two water masses. That boundary is not a line on a map; it moves with tide and wind and is only defined statistically, as the place where salinity crosses a threshold.
The obvious approach is a lawnmower survey: fly a regular grid, measure everywhere, build a map. It is what most oceanographic missions do, and it is a reasonable thing to do when you have no idea what you are looking at. But it spends the same amount of battery on water that is obviously river and water that is obviously sea as it does on the boundary between them, which is the only part anyone asked about.
The alternative is to let the robot decide, in flight, using what it has already measured. That is adaptive sampling, and the difficulty is not the mechanism but the criterion — what exactly should it be greedy about?
Why "go where you're least certain" is the wrong answer
Variance is the intuitive criterion and it is subtly wrong for this problem. Variance is highest wherever the robot has not been, so a variance-chasing vehicle spreads out to the corners of the domain and will happily spend a leg resolving a patch of open water that is unambiguously seawater.
The mission is not to know the salinity everywhere. It is to know, for each point, which side of the threshold it falls on. A cell whose estimate sits far above the threshold contributes almost nothing to that uncertainty even when its variance is large — the answer is not in doubt. A cell sitting right on the threshold is a coin flip however confident the estimate.
Bernoulli variance p(1-p) captures exactly that, where p is the probability of being
above the threshold. Integrated over the map, it is a single number for how much you do
not know about the boundary. The planner picks the next waypoint by asking which
candidate would be expected to reduce it most — the expected integrated Bernoulli
variance, EIBV. Crucially, it never sees the measurement it is reasoning about, only how
much that measurement would be expected to settle.
Averaged over thirty simulated fjords at a twenty-sample budget, this misclassifies about 14% of the map against a lawnmower's 20%. Give both sixty samples and the gap narrows to 8% against 10% — with enough battery you can cover the map by brute force and the cleverness stops paying for itself. Adaptive sampling is worth most exactly when you cannot afford to look everywhere, which is the situation every real mission is in.
Getting it into the water
Simulation results are cheap. The part that took longest was making the planner survive contact with a real vehicle: a bounded compute budget on the onboard computer, obstacles and a coastline the path had to respect, a time limit that made a greedy one-step lookahead insufficient, and the ordinary indignities of salt water and boat schedules.
The long-horizon planner that came out of that used RRT* over a cost field combining the information criterion with distance and obstacle penalties, so the vehicle could commit to a route rather than repeatedly re-deciding at every waypoint.
It ran onboard in Trondheim fjord, choosing its own waypoints against a live estimate of the plume rather than following a route decided on shore.
Papers and code
- 3-D Adaptive AUV Sampling for Classification of Water Masses — IEEE Journal of Oceanic Engineering, 2023. The method and the field results. pdf
- Long-Horizon Informative Path Planning with Obstacles and Time Constraints — IFAC-PapersOnLine, CAMS 2022. The planner. pdf
- github.com/YaolinGe/phd — the original Python, and the defence presentation.
What I would do differently
The information criterion was treated as free to evaluate, because in simulation it very nearly is. On the vehicle it was not: EIBV over a candidate set is a sum of bivariate normal CDFs over the whole grid, and that cost is what forced the horizon to stay short.
I now spend my days on anomaly detection with a sixteen-millisecond budget, and the same question has followed me across the change of field — what happens to a value-of-information criterion when it has to be computed inside a hard latency budget, and does the decision survive the approximation? I still do not have a satisfying answer.