1 Introduction  
2 Preliminaries  
2.1 Formulation of Metaheuristic Algorithm Design  
2.2 Automated Design of Metaheuristic Algorithms  
2.3 Survey Scope  
3 Design Space  
3.1 Design Space with Computational Primitives  
3.2 Design Space with Algorithmic Operators  
3.3 Usability  
4 Design Strategies  
4.1 Model-Free Strategies  
4.2 Model-Based Strategies  
4.3 Usability  
5 Performance Evaluation Strategies  
5.1 Performance Metrics  
5.2 Performance Evaluation and Comparison  
5.3 Reducing Time Cost of Performance Evaluation  
6 Target Problems  
6.1 Numerical Benchmark Problems  
6.2 Practical Problems  
6.3 Software  
7 Research Trends  
7.1 Design Space  
7.2 Design Strategies  
7.3 Performance Evaluation Strategies  
7.4 Experimental and Theoretical Analysis, Practical Applications  
7.5 Intersection with Related Research Fields  
8 Conclusion