Petri Dish GA
Live Readout
Best fitness
0.00
Avg fitness
0.00
Generation
0
Genome bits
8
How it works

Each organism carries an 8-bit genome (shown above as a strip of squares: lit = 1, dark = 0). Bits 0–3 encode leg length, bits 4–7 encode stride length; together they set crawl speed toward the central food source. Every generation, organisms are scored by distance covered, then parents are chosen with fitness-proportionate selection and bred with bit-flip mutation.

P(select genome i) = fitness_i / Σ fitness_j   (fitness-proportionate selection)
P(bit flips) = mutation_rate   (per bit, independent)
  • Mutation rate — probability each genome bit flips when copied to an offspring.
  • Selection strength — how strongly fitness (distance-to-food traveled) biases which parents reproduce; 0 = random, 1 = only the fittest breed.
  • Population size — number of organisms simulated per generation in the dish.
  • Play / Step gen — auto-run generations continuously or advance exactly one at a time.

This mirrors real genetic algorithms used in evolutionary robotics, where locomotion controllers are bred rather than hand-programmed.