This is an online book for Evolutionary Computation (EC), currently written/edited by Qiqi Duan @HIT (Harbin, China), Qi Zhao @SUSTech (Shenzhen, China), Yijun Yang @Tencent AI Lab (Shenzhen, China), and Yuhui Shi @SUSTech (Shenzhen, China). We started to write this entirely open-access book from July, 2023 and is planning to finish it's First Edition in December, 2027. Owing to its entirely open nature, any suggestions, improvements, corrections, and even criticisms to it are highly welcomed and encouraged via e.g., Issues or Pull requests.
- Preface
- Terminology
- Online Resources
- Introduction to Evolutionary Computation (EC)
- Biological Evolution via Natural Selection
- Population-based Diversity (versus Convergence)
- Randomness-based Adaptation (and Self-Adaptation)
- Fitness-based Selection (Survival-of-the-Fittest versus Extinction)
- Optimization versus Approximation
- A Unified Black-Box Optimization Framework from a Statistical Perspective
- No Free Lunch Theorems for Optimization
- Exploration-Exploitation Trade-Offs
- Generality versus Particularity
- Some Useful and Interesting Applications
- Open-Source Softwares
- Aeronautics&Astronautics
- Astronomy&Astrophysics
- Physical Science
- Chemical Science
- Environmental and Energy Science
- Computer Graphics
- Limitations and Possible Risks of Evolutionary Computation
- Biological Evolution via Natural Selection
- History of Evolutionary Computation (EC)
- Early EC Pioneers from 1940s to 1960s
- Evolutionary Programming (EP)
- Genetic Algorithms (GA)
- Evolution Strategies (ES)
- A Unified Community for Evolutionary Algorithms (EAs) from 1970s to 1990s
- Theoretical Advances and Practical Considerations from 2000s to 2020s
- Early EC Pioneers from 1940s to 1960s
- Genetic Algorithms (GA)
- A Computational Model of Adaptation
- A Popular Algorithm for Discrete Optimization
- A General-Purpose Searcher for Unstructured Problems
- Some Representative Applications of GA
- Evolution Strategies (ES)
- Genetic Programming (GP)
- NeuroEvolution
- Multi-Objective Evolutionary Optimization
- Parallel/Distributed Evolutionary Computation
- Evolutionary Robotics (ER) and Quality-Diversity (QD)
- Evolutionary Reinforcement Learning (ERL)
- Evolutionary Meta-Learning (EML)
- Learning and Evolution
- Search-Based Software Engineering
- Swarm Intelligence