Evolutionary Algorithm is an educational Python project that demonstrates evolutionary computation techniques such as genetic algorithms, evolution strategies, and neuroevolution in a clear and accessible way. Rather than being a single monolithic library, this repository provides a series of self-contained examples showing how different population-based search methods solve optimization problems and adapt candidate solutions over generations. Users can explore basic genetic algorithm setups, match phrase examples, pathfinding challenges, and microbial GA variants, as well as evolution strategy approaches like NES. The project also links classical evolutionary approaches with neural networks, illustrating how evolution can be used for model training in reinforcement learning and supervised contexts.
Features
- Multiple evolutionary computation examples
- Genetic algorithm implementations for different problems
- Evolution strategies such as (1+1)-ES and NES
- Integration examples with neural networks
- Visualization of algorithm behaviors
- Clear Python code for learning and experimentation