Skip to main content

Metaheuristics: From Design to Implementation

Metaheuristics: From Design to Implementation

El-Ghazali Talbi

ISBN: 978-0-470-49690-9

May 2009

500 pages



A unified view of metaheuristics

This book provides a complete background on metaheuristics and shows readers how to design and implement efficient algorithms to solve complex optimization problems across a diverse range of applications, from networking and bioinformatics to engineering design, routing, and scheduling. It presents the main design questions for all families of metaheuristics and clearly illustrates how to implement the algorithms under a software framework to reuse both the design and code.

Throughout the book, the key search components of metaheuristics are considered as a toolbox for:

  • Designing efficient metaheuristics (e.g. local search, tabu search, simulated annealing, evolutionary algorithms, particle swarm optimization, scatter search, ant colonies, bee colonies, artificial immune systems) for optimization problems
  • Designing efficient metaheuristics for multi-objective optimization problems

  • Designing hybrid, parallel, and distributed metaheuristics

  • Implementing metaheuristics on sequential and parallel machines

Using many case studies and treating design and implementation independently, this book gives readers the skills necessary to solve large-scale optimization problems quickly and efficiently. It is a valuable reference for practicing engineers and researchers from diverse areas dealing with optimization or machine learning; and graduate students in computer science, operations research, control, engineering, business and management, and applied mathematics.




1 Common Concepts for Metaheuristics.

1.1 Optimization Models.

1.2 Other Models for Optimization.

1.3 Optimization Methods.

1.4 Main Common Concepts for Metaheuristics.

1.5 Constraint Handling.

1.6 Parameter Tuning.

1.7 Performance Analysis of Metaheuristics.

1.8 Software Frameworks for Metaheuristics.

1.9 Conclusions.

1.10 Exercises.

2 Single-Solution Based Metaheuristics.

2.1 Common Concepts for Single-Solution Based Metaheuristics.

2.2 Fitness Landscape Analysis.

2.3 Local Search.

2.4 Simulated Annealing.

2.5 Tabu Search.

2.6 Iterated Local Search.

2.7 Variable Neighborhood Search.

2.8 Guided Local Search.

2.9 Other Single-Solution Based Metaheuristics.

2.10 S-Metaheuristic Implementation Under ParadisEO.

2.11 Conclusions.

2.12 Exercises.

3 Population-Based Metaheuristics.

3.1 Common Concepts for Population-Based Metaheuristics.

3.2 Evolutionary Algorithms.

3.3 Common Concepts for Evolutionary Algorithms.

3.4 Other Evolutionary Algorithms.

3.5 Scatter Search.

3.6 Swarm Intelligence.

3.7 Other Population-Based Methods.

3.8 P-metaheuristics Implementation Under ParadisEO.

3.9 Conclusions.

3.10 Exercises.

4 Metaheuristics for Multiobjective Optimization.

4.1 Multiobjective Optimization Concepts.

4.2 Multiobjective Optimization Problems.

4.3 Main Design Issues of Multiobjective Metaheuristics.

4.4 Fitness Assignment Strategies.

4.5 Diversity Preservation.

4.6 Elitism.

4.7 Performance Evaluation and Pareto Front Structure.

4.8 Multiobjective Metaheuristics Under ParadisEO.

4.9 Conclusions and Perspectives.

4.10 Exercises.

5 Hybrid Metaheuristics.

5.1 Hybrid Metaheuristics.

5.2 Combining Metaheuristics with Mathematical Programming.

5.3 Combining Metaheuristics with Constraint Programming.

5.4 Hybrid Metaheuristics with Machine Learning and Data Mining.

5.5 Hybrid Metaheuristics for Multiobjective Optimization.

5.6 Hybrid Metaheuristics Under ParadisEO.

5.7 Conclusions and Perspectives.

5.8 Exercises.

6 Parallel Metaheuristics.

6.1 Parallel Design of Metaheuristics.

6.2 Parallel Implementation of Metaheuristics.

6.3 Parallel Metaheuristics for Multiobjective Optimization.

6.4 Parallel Metaheuristics Under ParadisEO.

6.5 Conclusions and Perspectives.

6.6 Exercises.

Appendix: UML and C++.

A.1 A Brief Overview of UML Notations.

A.2 A Brief Overview of the C++ Template Concept.



“In conclusion, I found reading Metaheuristics: From Design to Implementation to be pleasant and enjoyable. I particularly recommend it as a reference for researchers and students of computer science or operations research who want a global outlook of metaheuristics methods. It would also be extremely useful for introducing graduate and PhD students who are new to the field of heuristics and metaheuristics to the amazing world of the designing of these procedures.”  (Informs, 1 July 2012)

"It will be an indispensable text for advanced undergraduate and graduate students in computer science, operations research, applied mathematics, control, business and management and engineering." (Zentralblatt MATH, 2010)