Genetic Algorithms in Go
summary
A Go implementation evolves byte-array genomes by crossover and mutation with a breeding pool selection mechanism. It reproduces "to be or not to be" by comparing byte arrays and reaches an exact match in about 11 seconds on one run. A more complex run encodes RGBA images (≈26,800 bytes) and converges toward Mona Lisa after thousands—roughly 7,000 generations—producing a recognizable likeness. Code and demos are on GitHub; the algorithm uses fitness as squared-difference over the byte sequence and works but scales slowly with genome size.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:55What are Genetic Algorithms
- 3:05What is Natural Selection
- 9:36Crossover
- 13:40Evolution
- 15:23Image to RGB
- 16:46Fitness
- 18:52Differentiation
- 21:59Results
related talks
31mGenetic Algorithms in Go
48mTight Genes: Intro to Genetic Algorithms
46mTight Genes: Intro to Genetic Algorithms
46mTight Genes: Intro to Genetic Algorithms
57mSolutions That Evolve: Building Self-Improving Systems with Genetic Algorithms
46mBeing Creative with Genetic Algorithms and Typeclasses
06mPainting Mona Lisa with Artificial Intelligence
45mKeynote: Writing Code? Pfft... Evolve it Instead!
