Evolutionary Computation - A Learning Journey
Welcome! This site is a hands-on, code-first guide to evolutionary computation - the full spectrum from genetic algorithms and evolution strategies to swarm intelligence, neuroevolution, and beyond. Every concept comes with runnable Python, real-world context, and just enough math to know what's actually going on.
Whether you're here to master CMA-ES, evolve neural networks, optimize with ant colonies, or understand why a population of random candidates can solve problems that gradient descent can't - you're in the right place.
How to use this course
- Start with Module 00: Introduction to get the big picture and your lab set up.
- Follow the modules in order - each one builds on the last.
- Run the code. Break the code. Mutate the code. That's where learning happens.
- Check the boxes on exercises as you complete them - your progress is saved in your browser.
Course Modules
A. Foundations
| Module | Topic |
|---|
| 00 | Introduction to Evolutionary Computation |
| 01 | Optimization Foundations |
| 02 | Representation, Operators & Selection |
B. Genetic Algorithms
| Module | Topic |
|---|
| 03 | Genetic Algorithms: Fundamentals |
| 04 | Genetic Algorithms: Advanced Topics |
C. Evolution Strategies
| Module | Topic |
|---|
| 05 | The (1+1)-ES |
| 06 | Population-Based ES |
| 07 | CMA-ES: The Crown Jewel |
| 08 | CMA-ES Advanced & Natural ES |
D. Other EC Paradigms
| Module | Topic |
|---|
| 09 | Genetic Programming |
| 10 | Differential Evolution |
| 11 | Estimation of Distribution Algorithms |
| 12 | Coevolution, Memetic & Cultural Algorithms |
E. Swarm Intelligence
| Module | Topic |
|---|
| 13 | Particle Swarm Optimization |
| 14 | Ant Colony Optimization |
| 15 | Other Swarm & Nature-Inspired Methods |
F. Multi-Objective & Diversity
| Module | Topic |
|---|
| 16 | Multi-Objective Evolutionary Optimization |
| 17 | Many-Objective & Decomposition Methods |
| 18 | Quality-Diversity Algorithms |
G. Neuroevolution & Deep Learning
| Module | Topic |
|---|
| 19 | Neuroevolution: Evolving Network Topology |
| 20 | EC for Neural Network Training |
| 21 | ES for RL & Policy Optimization |
H. Advanced Topics
| Module | Topic |
|---|
| 22 | Constrained & Combinatorial EC |
| 23 | Surrogate-Assisted & Expensive Optimization |
| 24 | Learning Classifier Systems & Hyper-heuristics |
I. Rigor & Capstone
| Module | Topic |
|---|
| 25 | Benchmarking & Experimental Methodology |
| 26 | Theory, Foundations & Capstone |
What you'll need
- Python 3.13+
- A tolerance for watching fitness curves that take 500 generations to do anything interesting
Code examples live in the GitHub repo.