🪲

DriftForge

Selection has a direction. Drift is pure luck — and in a small population, luck wins. Watch evolution move a gene, generation by generation.

🔮 Open the evolution console →

The four forces that move a gene

Evolution is just the change in how common an allele is, generation by generation — and only a few forces can change it. Selection is directional: fitter genotypes leave more copies, so a helpful allele climbs predictably. Drift is the opposite — random sampling of which individuals happen to breed, with no direction at all, and it swings harder the smaller the population. Migration mixes populations toward a common frequency, and mutation supplies the raw variation. DriftForge lets you run each one on synthetic beetles — small enough to check by hand, real enough to lose an allele in a crash.

  1. No force. Hardy–Weinberg: a frequency at rest stays put. That’s the baseline.
  2. Selection. Fitter genotypes win — the frequency climbs the SAME way every run.
  3. Drift. Pure luck moves it. Predict the SPREAD, not a value — small populations wander most.
  4. Bottleneck & migration. A crash can lose an allele by chance; arrivals pull it toward their source.

Everything runs on your device with exact arithmetic and a seeded random draw — no library, no network.

The forces

  • Selection — directional and deterministic: fitter genotypes leave more copies, so a beneficial allele rises predictably (and a harmful one falls).
  • Drift — random change from finite sampling; no direction, and larger swings the smaller the population. With drift you predict the spread, not the value.
  • The bottleneck — a population crash turns drift up to maximum, so an allele can fix or vanish by pure luck, regardless of fitness.
  • Migration — gene flow that pulls a population toward the frequency of its arrivals, keeping far-apart groups genetically similar.

A text-forward console (ages 15–18) — no cast art here by design.