Place a defence, then press play to send a swarm. It plans its own routes and does not know where you put anything until it is shot at. Every map is a pure function of the seed in the corner, which is the property the whole research programme is built on. Open it full screen.
One drone, one moment
You are a small drone, three minutes into a twenty minute battery, flying low over ground you have never seen.
There are eleven others with you. You cannot see most of them. Your camera looks forward through about sixty degrees and nothing else: not behind, not through the hill on your left, not over the ridge ahead.
Then the one off your right wing stops transmitting.
That is it. That is the entire event. No explosion in your video, no warning, no direction. One second there is a radio link and the next there is not.
What should you do differently?
Hold that question, because everything below is about it.
What you have to answer it with
Not much, and the constraints are physical rather than a matter of engineering effort.
Your compute draws a handful of watts, because every watt is flight time you spent thinking instead of moving. That is enough for a small vision model and a route planner. It is not a datacentre and it never will be, since the power budget is the airframe.
Your radio is weak, shared with the eleven others, and the first thing any opponent attacks. Assume it works sometimes.
And you have one decision, made over and over: which way to go next. Everything else is downstream of that.
The idea that will not go away
Here is the tempting move, and it is the premise of an enormous amount of work, ours included.
That drone that went quiet is information. Something killed it, at a place, at a time. If the swarm can turn that into “this kind of ground is dangerous” instead of “we are down one”, then every survivor is better than it was a minute ago, and a fleet gets more capable as it takes losses rather than less.
Strip the jargon off and that is all a world model is: a guess about what is out there that you did not directly see. Assembled from terrain, from what happened to your neighbours, from whatever the radio managed to carry.
It is such a good idea that it is easy to skip the next question.
Does it actually work?
Not “does the model predict well”. Does the swarm get through more often because it holds the model.
Those are different questions and they come apart, which is most of what we found.
You cannot answer it on operations. You get one draw of the day: one weather, one set of positions, one set of decisions made by people carrying more context than any log records. If the swarm comes home and the new routing looked better, better than what? Against which day? With which crews? Everything you learn is real and almost none of it is controlled.
So we built the world instead.
The thing at the top of this page is a real simulator, not a diagram of one. It is the same C++ that produced every number below, compiled to run in your browser. Give it a seed and it hands you the identical terrain, the identical defences, the identical dice, every time, on any machine.
That determinism is the entire instrument. It lets us fly several swarms through byte-identical worlds and change exactly one thing between them: what the routing model knows.
The experiment we could not run any other way
Five fleets, same terrain, same defenders, same random draws. They differ only in what their planner is told about the threats.
| fleet | what its planner holds |
|---|---|
| omniscient | the true threat map |
| discovered | only what it has seen or been shot at by |
| model | a learned predictor's estimate |
| scrambled | the true map, contents shuffled |
| reactive | no route plan at all |
scrambled is the one that matters, and it is worth being slow about.
Take the true map. Keep every number in it. Move them all to the wrong places. The fleet now holds a map with exactly as much information in it as the real one, and none of that information is about the world it is flying through.
Why bother? Because a route planner given any danger field will produce routes that look thoughtful. It will curve around things. It will pick lanes. If you only compare it against a fleet that does not plan at all, you will conclude the model helped, when what helped was having a planner.
The shuffled fleet separates those two. Anything the informed fleet does that the shuffled one cannot is the map being true. Anything they both do is just the planner.
Almost nobody runs this control, and it is cheap: permute your features, keep the marginals.
What twenty experiments said
We pre-registered each one: the prediction and what would falsify it, written down before the run. Then we ran it.
For a long time the answer was no effect at all.
The four fleets that plan landed within 1.6% of one another. The fleet holding the true map. The fleet holding a learned model. The fleet holding only what it had seen with its own camera. And the fleet holding deliberate nonsense.
Go back to the drone whose neighbour went quiet. On these numbers, it does not matter what it concludes from that. It can work out exactly what killed its neighbour, or it can conclude something completely wrong, and it gets home at the same rate either way.
That is not what anyone expects, and we did not believe it for a long time either.
Then something worse than nothing.
We trained a model to predict danger from terrain. It worked. It genuinely learned that certain ground is dangerous, scoring 0.628 AUC on a threat nobody had told it about. By any normal standard that is a respectable model and you would ship it.
The fleet carrying it finished 4.28 objectives below the fleet that could not represent that threat at all.
A model can be right about the world and still make the decision worse. Any acceptance test that stops at a calibration curve would have passed that one, and ours would have been the model that got fielded.
Then the result that changed our minds about what we were even studying. We built a map that concentrates threats into knots, so some routes are genuinely far safer. This is where a good map should be worth the most. The fleets holding the exact map finished at or below the fleet that does not plan, having flown 9% further and climbed 25% more to get there.
Better information, worse outcome, on the map built specifically to make information valuable.
The reason is not mysterious once you see it, and it is worth seeing because it is not really about drones. A planner that dodges everything its map calls dangerous is buying safety with distance, and distance costs battery and time. Give it a sharper map and it buys more of that protection whether or not the protection was worth having. On a mission where losing an airframe is survivable, the detour costs more than the risk it avoided.
That is a general failure mode, not a quirk of ours: a system that declines more, holds back more, turns home more often, and reports it as an improvement because nobody wrote down what the caution cost.
The condition under which knowing finally paid
The literature that predicts this is not the navigation literature, it is the adversarial one. In network interdiction the evader’s optimal strategy is a distribution over paths, not a best path. Ambush games give the closed form: against one ambush on a graph with k distinct routes, spread uniformly. Deployed Stackelberg security systems rest on the same fact from the defender’s side.
Which says something sharp: against an opponent who adapts to what you do, unpredictability is what pays, and knowledge earns its keep by telling you which alternatives are worth spreading across.
So we built the three things that argument needs and our world did not have.
A defender that places against the route distribution. It rolls out the attacker’s own planner, builds a traffic density, and spends against that. It best-responds to your strategy, not to one flight it happened to watch.
A defence that can be saturated. The old one had infinite simultaneous engagement, zero reaction time and unlimited ammunition, so one mount deleted a whole wave in a tick and arrival timing could not matter. The replacement is a Pantsir-class battery: four engagement channels, a 4 to 6 second reaction time, roughly 34 seconds of continuous fire, a fast traverse. Those numbers come from the open literature, converted to our tick rate with the conversion written next to the constant, so they are wrong in ways somebody can look up rather than wrong in ways only we can see.
A swarm that stops flying its single best route. Instead of always taking the lane its map calls safest, it picks from a spread of good ones. This is the part that sounds like giving something up, and it is the part that turned out to matter.
With all three present, this happened.
At the swarm’s single best route, a perfect map performed worse than a shuffled one. Turn mixing on and it crosses over and stays ahead. The mechanism is visible in the arms rather than inferred: the informed fleet stays flat and the uninformed fleet degrades. Mixing does not unlock the value of good information. It exposes the cost of bad information.
Try, fail, learn: we tested our own answer and it came back smaller
This is the part that only works if you built the thousand-reruns machine first.
A positive result is the beginning of the work, not the end of it. Somebody has to go looking for the thing that would make it smaller, and in a programme where nobody can repeat the experiment, nobody ever does, because there is nothing to repeat it against.
The candidate route menu the planner chose from had been fixed at 21 options since the first day and had never been varied. Not once, in any of the twenty experiments above. So we varied it.
| route menu | seed 1 | seed 900 |
|---|---|---|
| 21 (as first measured) | +2.01 | +1.88 |
| 65 | +1.03 | +0.99 |
| 147 | +0.64 | +1.74 |
Half the effect was the menu, and that halving reproduced at two independent seeds to within 0.04 objectives. Then we ran it properly: 240 worlds, a seed never used before, at the wider menu. +1.32 [+0.60, +2.04], interval clear of zero.
So the settled reading is: knowing where the threats are is worth about 1.4%, against a defender that adapts to you, and only if your swarm is unpredictable.
The first number we measured was an upper bound set by a parameter nobody had questioned. Finding that out is not an embarrassment, it is the whole reason to build the machine. A programme that never revises its own numbers is not measuring anything. It is describing what it already believed, at greater length.
The general lesson is portable and slightly uncomfortable: anything that is identical in every run is not a constant, it is an assumption you have not tested. We had a control fed nonsense, predictions written before each run, and a rule that threw out any run where the baseline was too easy or too hard. All of that machinery works. None of it can catch a number that both sides of the comparison share.
What this means next
Evaluate world models against an adversary, not against a scenario. Twenty measurements say that in a world which does not adapt to you, a planner holding a perfect map and one holding a plausible wrong map are close to indistinguishable, and occasionally ordered the wrong way round. Every static benchmark will therefore report your perception work as valuable when it is not. The adversary is what separates them, and it separates them through the tails of the route distribution rather than its mode, so you will not see it at all if your planner takes the single best route.
Do not buy accuracy when you need unpredictability. If a programme has to choose between spending on better sensing and spending on making its routing genuinely hard to predict, our numbers say the second one is worth more, and that the first one can be actively harmful when it makes a fleet concentrate.
Score the decisions, not the predictions. Ours was a respectable predictor and a harmful one to carry, and the gap between those two is invisible to every metric that only looks at the model.
Ask what the caution costs. Better information bought more expensive avoidance, and if we had only measured losses we would have called it an improvement. Route completion and energy have to be primary endpoints or nobody sees the bill.
So: the drone off your right wing has gone quiet
What should you do differently?
On our numbers: very little about what you conclude, and a great deal about how readable you are.
Working out what killed it is worth about 1.4%, and only against an opponent adapting to you. Being hard to predict is worth several times that, and it is nearly free: no sensor, no compute, no bandwidth. It is a change to how the planner chooses, not to what it knows.
That is an uncomfortable answer for a field that mostly funds perception, and it is the one the instrument kept giving us.
What we would want from someone who has done this for real
Everything above is a simulator, and every number is a statement about that simulator. We are not offering tactical advice and are not in a position to.
Here is what is anchored and what is invented, so the question is answerable rather than rhetorical. Anchored: the defence parameters, from published figures. Invented: the kill model is a per-tick probability, not ballistics; terrain is procedurally generated. Absent entirely: electronic warfare beyond a jammer that cuts the mesh, GPS denial, spoofing, comms degradation as anything richer than a link that works or does not, operator workload, logistics, and any model of how a real crew acquires, decides and reacquires.
The negative results are the robust part, because a simplified world is an easier world for a model to help in and the model still did not help. The one positive result is the fragile part, because it needs a defence that best-responds to a route distribution.
Does any real defence do that? That is the question we cannot answer and you can, and it is the one that decides whether the 1.4% is a floor or a fantasy.
The simulator is here. Press the seed button for a new world, put a defence somewhere you think a swarm would have to cross, and watch where it actually goes.