Pattern · emergence · show the check
The Jam That Isn't There
Here is a perfectly circular road. Every driver is the same — careful, patient, identical. There is no crash, no merge, no slow truck, nothing on the road at all. Add enough cars and a traffic jam appears anyway, out of nowhere, and crawls backward against the flow. Drag the density below a threshold and the very same road refuses to jam. The jam was never on the road. It was in the crowd.
position around ring →time ↓ · dark = stopped
Settling…
Start high and watch a jam congeal, then drag the slider down past the threshold — somewhere near ~32–40 cars/km — and the jam dissolves into smooth flow. Below the threshold, the Nudge button proves the point: one driver eases off, the wobble spreads, then dies. Above it, the same nudge never dies.
For decades this was a roadside mystery: you crawl for ten minutes, then the traffic frees up and there's nothing there — no wreck, no police, no reason. The reason is that you were never going to find a reason on the road. A dense stream of cars is an unstable medium. Above a critical packing, the smooth-flowing state can't hold: any tiny fluctuation — one driver lifting off the accelerator a fraction — forces the car behind to brake a little harder, and the one behind that harder still, because each driver reacts with a small delay and a margin of safety. The disturbance amplifies as it travels back through the line until cars far upstream are stopped dead. The cluster of stopped cars is a real, persistent object — a wave — and like the bump in a Slinky it moves opposite to the things that make it up. Cars roll forward through the jam and out the front; the jam itself slides backward.
It happens with real people, too
In 2008 a team led by Yuki Sugiyama did the cleanest possible experiment. They put cars — driven by ordinary people — on a circular track 230 metres around, and asked them to do one thing: drive steadily at a fixed speed, keeping a safe distance. With few enough cars, the flow stayed smooth forever. But once the track held about 22 cars or more, a jam cluster appeared on its own within a minute or two and propagated backward around the loop — no obstacle, no instruction to stop, nothing but the drivers and the density.1 The model you are operating above reproduces exactly that transition. It is the Intelligent Driver Model2 — a standard, empirically calibrated rule for how one car follows another — and nothing in it knows what a jam is. The jam is what the rule does when you crowd it.
The check — every number here is recomputed, not asserted
The simulator runs the real Intelligent Driver Model. Each car's acceleration is
where s is the bumper-to-bumper gap to the car ahead and Δv is how fast you're closing on it. The parameters are the standard highway set,2 used identically here and in the offline verifier:
| v₀ | desired speed | 30 m/s · 108 km/h |
| T | safe time headway | 1.5 s |
| a | max acceleration | 0.73 m/s² |
| b | comfortable braking | 1.67 m/s² |
| s₀ | standstill gap | 2 m |
| — | vehicle length | 5 m |
- The jam is in the dynamics, not the road. On a 1 km loop, a one-car velocity dip of 0.5 m/s decays below a critical density and grows into a permanent stop-and-go cluster above it. The road is byte-for-byte identical in both runs — only the car count changes. Onset of instability: ≈ 28–32 cars/km; full stop-and-go by ≈ 40 cars/km.
- The jam travels backward at a near-constant speed. The verifier tracks the stopped cluster and fits its drift: ≈ −12.7 km/h, essentially the same from 36 to 60 cars/km. Negative means upstream — against traffic.
- Honest gap. Real highway jam waves are measured travelling backward at about −15 to −20 km/h, famously near-constant across wildly different conditions. This model reproduces the sign, the near-constancy, and the rough magnitude, landing a little slower than the highway figure. The exact number depends on the parameters (mainly the headway T) and on how you measure the cluster; we report what the model gives rather than tuning it to the textbook value. The live "jam wave" readout is measured the same crude way and will wobble — read its sign and order of magnitude, not its last digit.
node research/phantom-traffic-jam/verify.mjs prints the density sweep, the critical car count, and the backward wave speed. Shared model: research/phantom-traffic-jam/idm.mjs.
Why this matters past the curiosity
If the jam needs no cause, then you cannot clear it by clearing the road — there's nothing to clear. What you can do is attack the instability itself. A single car that refuses to brake-and-surge — holding a steady speed and a generous gap, absorbing the wave instead of passing it on — can damp a phantom jam for everyone behind it; experiments with one autonomous vehicle in a ring of human drivers have shown exactly this. The continuum theory that makes the waves precise calls them jamitons:3 self-sustaining travelling waves of the traffic equations, mathematically the same kind of object as a detonation front in a gas — a shock dragging a zone of frantic readjustment behind it. The traffic on your commute is, sometimes, literally detonating in slow motion.