TL;DR

A browser-based demo simulates a peloton of identically built riders controlled by tiny neural networks whose weights evolve across races. Viewers can inspect individual controllers, force evolution, and reset terrain while the population may develop strategies such as drafting, sprinting or pacing uphill.

What happened

The demo runs races with multiple riders that share the same physical model but use distinct small neural networks to decide power changes each timestep. Networks receive perceptual inputs — current speed, power, battery level, short- and long-range gradients, gap to the rider ahead, and fraction of race completed — and output an adjustment to power scaled by a global multiplier. Weights start random; after each race the five leaders are chosen to seed the next generation through a mix of exact copies and small mutations. The demo visualizes each network’s inputs with red/blue node colouring to indicate positive or negative influence on the output, and allows interaction: select riders to inspect controllers, force early evolution, or reload to randomize terrain and riders. Under the hood the simulation models mass, slope, drag, rolling resistance, drafting effects and simple physiological constraints.

Why it matters

  • Demonstrates how simple neural controllers can adapt behavior through selection and mutation without hand-crafted rules.
  • Combines physical and physiological modeling with neural control, offering a compact example for learning about embodied AI.
  • Visualizing input contributions helps interpret how sensors drive decisions in small networks.
  • Shows emergence of role-like behaviors (drafters, sprinters) from evolutionary pressure rather than explicit programming.

Key facts

  • Interactive controls: click or use up/down arrows to select a rider and view its neural controller.
  • Press 'r' or wait to return to the default view showing the top 5 riders; Space forces evolution before race distance.
  • Network inputs: speed, power, battery level, average gradient over next 100m, average gradient over next 1000m, distance to the rider ahead, and fraction of race completed.
  • Network output sets how the rider’s power changes each timestep, scaled by a Power Multiplier; weights are randomly initialised and mutated between generations.
  • After each race the five leading riders are selected to produce the next generation via copies and small weight mutations.
  • Physics model: rider+bike mass 87 kg, drag area (CwA) 0.32, rolling resistance coefficient Cr 0.004.
  • Drafting can cut air resistance by up to nearly 40% when a rider is closely following another.
  • Physiological model: aerobic threshold power 250 W, W' (anaerobic battery) 15,000 J, and a maximum sprint power of 750 W that falls linearly with battery level.
  • Reloading the page resets the simulation with new riders and randomly generated terrain.
  • Created by Andrew Davison, Imperial College London, 2025; contact via @ajddavison on X for suggestions.

What to watch next

  • Whether the population’s average race speed improves over multiple generations as selection and mutation act.
  • Emergence of specialized behaviors such as dedicated drafters, sprinters, or hill-focused pacing strategies.
  • How input-node colouring (red/blue) shifts during a race, indicating which percepts are driving power decisions.

Quick glossary

  • Neural network: A computational model composed of connected nodes (neurons) that transforms inputs into outputs via weighted connections.
  • Drafting: A reduction in air resistance experienced by a rider when positioned closely behind another, lowering required power to maintain speed.
  • Drag area (CwA): A combined measure of aerodynamic drag coefficient and frontal area that determines air resistance at a given speed.
  • W' (Wprime): A finite anaerobic energy reserve that can be expended above an aerobic threshold and recharged when effort falls below it.
  • Evolutionary selection: A process where higher-performing individuals are chosen to generate the next generation, often with random mutations introducing variation.

Reader FAQ

How are riders controlled?
Each rider is governed by a small neural network that maps sensor-like inputs to a power change output which is applied every timestep.

How does evolution work in the demo?
After each race the top five riders are selected; the next generation is formed from some exact copies and some variants with small weight mutations.

Can I interact with the simulation?
Yes — select riders to inspect controllers, press Space to force evolution early, press 'r' or wait to reset the view, and reload the page to generate new terrain and riders.

Is the creator and date listed?
Yes. The demo was made by Andrew Davison at Imperial College London, 2025; @ajddavison on X is provided for suggestions.

Is the source code or licensing information available?
not confirmed in the source

Click or use up/down arrow keys to select a rider and see their neural controller. Press 'r' or wait to return to default race view which shows the top 5…

Sources

Related posts

By

Leave a Reply

Your email address will not be published. Required fields are marked *