Lunar Lander

Rocket landers evolve to fight gravity with limited fuel and touch down softly on the landing pad.

Generation0
Best Fitness0
Alive0
Landed0

About This Simulation

Each lander is controlled by a NEAT-evolved neural network that decides when to fire its main engine and how to rotate. The terrain and landing pad are regenerated every generation, so networks can't memorize a single solution. They have to learn a general landing strategy: kill horizontal speed, stay upright, and brake just before touchdown. The champion of each generation is saved, and pressing Watch Best pauses evolution to watch it attempt landings on fresh terrain, one ship at a time.

Technical Details

Neural Network Inputs: Horizontal offset to the pad, altitude above the pad, horizontal and vertical velocity, angle, angular velocity, and remaining fuel
Neural Network Outputs: Main engine on/off and rotation torque
Fitness Function: Distance to the pad, terminal speed, and tilt are penalized; a soft landing earns a large bonus plus any unused fuel
Landing Conditions: Touch down on the pad with low speed and a near-vertical orientation, anything else is a crash