Autonomous collision avoidance for satellites

An AI that teaches satellites to dodge space junk.

One collision at 10 km/s makes thousands more pieces of junk. Our AI pilot learns when to burn, which way, and how to get home.

Initializing simulation…
1

Debris detected

A fuzzy prediction, 15–60 min out.

2

AI decides to burn

Early is cheap. Late is certain. It learned the balance.

3

Pass safely, return home

Outside the 200 m bubble, back to its orbit.

Live mission

Pick a pilot. Keep the amber dot out of the red bubble.

Choose a pilot

Switch pilots to replay the same scenario.

01Orbital overview

Our satellite, 550 km / 53°Tracked objects (simulated shells)Active conjunction
LEO / 550 km / 53°

Drag to explore · 6,000 simulated debris objects

Orbit deviation

Drift from the assigned slot · metres

Encounter assessment

Monitoring your orbit

Tracking the next close approach.

Next closest approach—
Fuel remaining4.00 m/s

Close-approach geometry

–
200 m keep-out zonePredicted pass + uncertaintyPass without avoidance

Goal: keep the amber dot out of the red bubble.

Encounter timeline

Approaches and burns over 4 h
Mission clock
T+00:00
Fuel spent · Δv
0.000 m/s
Orbit deviation
0 m
Collision probability
–
Safely passed
0
Unsafe passes
0
—Best overall score vs. the operator rule
—fewer unsafe passes than doing nothing
—from its orbit, vs. — for the rule

Mission scorecard: this scenario

PilotUnsafe passesFuel used (Δv)Avg. orbit deviationVerdict
Fly a scenario to the end to see its result.
Show the full benchmark table

Policy performance

running in a Web Worker…
PolicyKeep-out violationsMean Δv per episodeMean slot errorEpisode return

Simulated encounters. The operator rule still has fewer violations; closing that gap is next.

Train it yourself

Evolve a pilot from random weights, live in your browser.

Research lab Train your own policy and explore the physics

Train your own controller

idle

Evolution Strategies across parallel Web Workers. Dashed lines = baselines.

Under the hood

Environment

ẍ = 3n²x + 2nẏ + aₓ      (radial)
ÿ = −2nẋ + a_y           (along-track)
z̈ = −n²z + a_z           (cross-track)
n = √(μ/r³) = 1.10e-3 rad/s   r = 6,928 km

Closed-form CW propagation; each encounter scored in its B-plane.

Observation and reward

  • 28-dim observation incl. ∂|miss|/∂Δv
  • Pc from the Rice distribution
  • Penalties: violation, proximity, Δv, slot drift

The trade-off the agent learns

Early burns are cheap but uncertain; late burns are certain but costly.

28→32→32→3 MLP · 2,083 parameters