Phantom TrafficAn experiment in collective motion

No crash.
Still a jam.

One driver hesitates.
A wave of brake lights follows.
Meet the traffic jam with no cause in sight.

Take the wheel

A living model of collective motion.
No accident. No obstacle.
Just us, reacting to each other.

Drag or use arrow keys to rotate the road. Press Enter to select the next car, Escape to clear selection, and Space to pause or resume.

Drag to explore the road
600 metres. One circular road.
Every slowdown has a story.
Live simulationThe same rules. An emerging pattern.
Follow the ripple

A small pause.
A long way back.

A traffic jam isn’t always a place. Sometimes, it’s a pattern moving through people.

Illustration of the chain reactionCars move forward

It starts with almost nothing.

Everyone has the same space. Everyone travels at the same speed. Then one car starts just 1.8 km/h slower. That’s the whole disturbance.

One hesitation. No blocked lane.

Your brake light.
Someone else’s signal.

The next driver adjusts. Then the next. When responses are slow enough, a small speed difference grows as it passes from car to car.

Local decisions. Collective consequences.

The cars go forward.
The wave can go back.

Cars enter the slow patch, wait, and accelerate out. Different cars. The same jam. Give the drivers a faster response and watch that disturbance fade.

Change the conditions

Small changes.
Different roads.

This is your control desk. Change the density or the drivers’ response time. See what the same simple rules produce.

Simulation running00:00 simulated

Drag or use arrow keys to rotate. Click a car or press Enter to select the next car. Escape clears selection. Space pauses or resumes the simulation.

Drag to rotate · Select a car to inspect

Liveries are cosmetic. Trail colors show speed. FPV switches playback to 1×.

A slowdown leaves a trail.

Each row is a moment. Each dot is a car. Follow the warm colors to see a wave move along the road.

Last 0 simulated seconds
EarlierNow
0 mPosition around the loop →600 m
Speed spread 0.09 m/sSlow cars 0 / 30Safety interventions 0

The jam is in
the feedback.

Every driver follows a simple rule. Together, they can produce something much less simple.

More room? Speed up. Less room? Slow down.

Each car chooses a target speed from the gap ahead, then takes time to adjust. Near the model’s sensitive density range, a small hesitation can grow as it passes between drivers. Cars enter the slow patch and leave it; the patch can travel backward along the road.

The hesitation is small, and it is disclosed.

At the start, cars are equally spaced at their equilibrium speed. One starts just 0.5 m/s (1.8 km/h) slower. There are no crashes or obstacles. Uncheck “Seed a tiny hesitation” to try the uniform-flow control.

Read the rules and assumptions

A deliberately simple model. Identical 5 m cars follow one another on a single 600 m circular lane, with no overtaking, traffic lights or random braking. Top speed is 15 m/s (54 km/h). This is an educational model, not a calibrated traffic forecast.

Reaction time is an approximation. The slider sets the response time τ: speed changes gradually toward the desired speed. It does not add a literal perception delay or model distracted driving.

gap = distance to leader − 5 m
V(gap) = 15 × [tanh((gap − 15)/6)
                + tanh(2.5)] / [1 + tanh(2.5)]
acceleration = clamp((V(gap) − speed)/τ, −6, 2)
speed_next = clamp(speed + acceleration × dt, 0, 15)
position_next = position + speed_next × dt

All cars update simultaneously every 0.02 s, regardless of playback speed. Acceleration is limited to +2 and −6 m/s². A separate guard limits movement to keep 0.2 m clearance from the leader’s previous position. Guard interventions are counted above. The verified wave example uses none during the 180 s test.

Perfect symmetry needs a disturbance. In exact arithmetic, equal gaps and equilibrium speeds stay uniform even in an unstable regime. Numerical roundoff can eventually break that symmetry; the unperturbed control is checked over 60 s.

Adapted from the optimal-velocity model of Bando et al. (1995). The constants here are chosen for a visible teaching example.

Don’t take the animation’s word for it.

Run controlled experiments with the exact engine that moves these cars. Compare outcomes after 180 simulated seconds, plus a 60-second uniform-flow control.

Six checks. Reproducible results. Runs locally.

A useful check: keep the density fixed and change only the response time.

If the same disturbance fades in one case and grows in the other, the driving rule explains the difference.

Same instinct.
Much faster.

Trade the traffic loop for the starting grid. Eight cars. One fictional circuit. Your seat is waiting.

Enter the cockpit

Dress for the grid.

Open wheels. Low wings. Your colors.

Drag to turn it over.
Same car. A different personality.
All designs are original.

Find your way through the field.

Phantom CircuitF1-inspired arcade playground · 3 laps
Ember
0km/hN

Every second, revisited.

Start a session to record your drive. Up to 10 minutes stay here until reset.

Speed / 0–340 km/h0:00.00 / 0:00.00
Standard gamepad: left stick, triggers, A / Cross, Menu.
How the guide, sectors and challenges work

The guide is advice, never automatic steering or braking. It looks up to 180 metres ahead using this model’s corner-speed limits, compound grip and dry/rain braking force, assuming full brake with no throttle and a 6% approach margin. Road colors compare your speed with the local corner target: mint means room to accelerate, amber means close to the target, orange means above it. Follow the text cue to decide when to brake. The centre line is a speed guide, not an optimized racing line.

Three sectors divide the circuit into equal distances. Crossing times are interpolated within the fixed 0.02-second step. Off-track time counts steps with your centre more than 7 metres from the road centre; boost time counts actual boost delivery. The debrief and sectors are recorded with replays. Challenge time limits are authored game goals, not professional lap benchmarks.

Challenges fix the weather and starting tyres, require manual driving throughout, and run at 1×. Medal requirements are shown before the start; medals and ghost records are separate. Keyboard and touch remain available with a controller. Enable controller, press a button on a standard-mapped pad, and focus the race view. RT/R2 and LT/L2 are analog throttle and brake; A/Cross boosts; Menu/Options pauses. Disconnecting pauses a manual drive. Unfocused or hidden pages ignore controller input.

Watch with autopilot or switch on “I’ll drive”. Use W/S for throttle and brake, A/D to steer, and Shift for boost. Touch controls appear over the road in driving mode. Focus the race view to use keyboard controls.

Start the grid, choose your view, and follow the race.

Win it on
the pit wall.

Soft, medium, or hard? Give every tyre the same driver, then let the circuit answer. Six runs. Dry and rain. Measured from this model.

Choose a stint and run the experiment. Your live session stays as you left it.

Inside the experiment

Each run starts a fresh solo car from rest with the same autopilot and no boost, using the race’s fixed 0.02-second step. Only compound and weather differ. Optional service stops every car once, for six seconds after lap 1, and restores the same compound. Bars include acceleration, braking, tyre wear and service time.

Soft tyres raise the autopilot’s speed target but wear faster; hard tyres lower it and last longer. Rain lowers corner targets and braking force. These are controlled results from this arcade model, not real Formula 1 strategy predictions.

Original liveries. Fictional teams. Real-time decisions.

What this racing model does

An F1-inspired arcade model, not an official F1 product or vehicle-dynamics predictor. Eight original cars follow a smooth closed circuit. Autopilot brakes for curvature, changes lanes to pass, and uses a same-lane spacing guard. Manual driving follows the circuit with lateral steering; excess corner speed pushes you wide and leaving the road adds drag. Rain lowers grip and braking force. Tyres wear, soft tyres have more grip, and boost trades stored energy for acceleration.

Pit stops are simplified: a booked stop pauses your car for six seconds at the next start/finish crossing, then restores tyres and energy. There is no separate pit lane, tyre temperature, aerodynamic simulation, contact damage or race regulation system. A fixed 0.02-second step keeps the rules independent of playback speed. Sound is synthesized locally and stays off until you enable it.

We’re all
in the same loop.