Christian Blum and Günther R. Raidl: Hybrid metaheuristics—powerful tools for optimization
- 61 Downloads
Combinatorial Optimization constitutes a broad, well-studied field that has been addressed by multiple scientific sub-communities of Computer Science and Applied Mathematics for at least six decades. It has been approached by means of formal algorithms and Mathematical Programming (often branded as Operations Research, yet strongly rooted at Theoretical Computer Science), and simultaneously has been treated by a wide range of dedicated heuristics (frequently under the label of Soft Computing). This book by Blum and Raidl constructs a bridge between these two approaches and aims to share expertise gained from each end. Although not the first book to target this gap, it offers a magnificent opportunity for scholars of either end of Combinatorial Optimization to “go hybrid”. Hybrids are a trendy route which has proven powerful and has recently accomplished a great deal. My review, particularly for readers of Genetic Programming and Evolvable Machines, offers a critical view from the Soft Computing point-of-view of this trend.
The book is well-structured. It starts with an excellent introduction chapter, which lays out briefly the foundations for the hybridizations used throughout the text. It does so by outlining the main formal algorithms (e.g., tree-search, branch-and-bound, dynamic programming), alongside the primary heuristic schemes (e.g., local search, randomized adaptation, evolutionary algorithms). These fundamentals are presented in a concise form, with extensive citations to textbooks and state-of-the-art publications. Thus, after the first chapter a reader who is just beginning with either Operations Research or Soft Computing would probably need to read other sources to fill-in the gaps before re-engaging with the book at Chapter 2. Advanced techniques of Mathematical Programming are also presented and discussed in the final chapter in the context of metaheuristics’ combinations, so in that sense their description may be also regarded as an extension of the introduction chapter.
To illustrate the book’s core message, we mention a specific problem covered by Blum and Raidl, namely the multidimensional knapsack problem (MKP). It is presented as an Integer Linear Program, which may seem innocent to the unsullied reader, and yet, poses a major challenge to the renowned CPLEX. The latter is clearly outperformed by a hybrid, as shown on Chapter 4. The book’s essence is about devising such hybrids.
The book’s recurring idea is: given an NP-hard Combinatorial Optimization problem, typically formulated as a Mixed-Integer Linear Program, that is too large for state-of-the-art solvers to reach its optimum, what are the available hybrid strategies to find the best attainable result? Its solution theme follows two principles: neighborhood search and solution construction.
The backbone of the book is a description of five hybrid strategies that predominantly cover hybridization as practised to date. Each strategy is prescribed in a dedicated chapter, with thorough explanations, relevant literature surveys, and at least one detailed demonstration use-case. This format well-reflects their announced problem-solving approach: unlike many books, it is problem-oriented rather than algorithm-oriented. This approach is further reflected by the writing style. The description of each use-case per strategy is highly technical. It resembles a journal article, even to the level of reproducibility. For instance, fine details of parameters’ tuning, an everlasting issue in heuristics’ research, are included, with the irace package being the primary tool employed to this end.
The five strategies that are covered in the five main chapters are: (1) incomplete solution representations and decoders, (2) problem instance reduction, (3) large neighborhood search, (4) parallel non-independent construction of solutions, and (5) hybridization based on complete solution archives. The chapters themselves are not independent in the sense that multiple cross-references and interesting linkages are made across the strategies and the use-cases. The Generalized Minimum Spanning Tree Problem, for instance, is rigorously addressed in Chapter 2, but revisited in Chapter 4, to describe an improved treatment by the large neighborhood search approach, and again in Chapter 6 to propose an evolutionary modus operandi. The final chapter describes hybrid approaches that are based upon combinations of metaheuristics, particularly those that are rooted in Mathematical Programming: notably, relaxations and decompositions.
Generalized Minimum Spanning Tree Problem
Minimum Common String Partition
Minimum Weight Dominating Set
Royal Road Functions and NK Landscapes
I think that Evolutionary Computation scholars in general, and readers of Genetic Programming and Evolvable Machines in particular, will find the entire book both interesting and useful. Nevertheless for such readers, a comfort zone possibly resides within Chapters 5 and 6, involving Ant Colony Optimization and Evolutionary Algorithms, as well as within the Decoding topic covered in Chapter 2. However the book’s coverage is far from being trivial, in that it offers depth even for the advanced readers from our community. The other chapters have the potential to become mind-opening for such readers, but may require additional reading and learning.
The only disappointment lies outside this excellent text: the source-code used throughout the calculations is not shared online.
In conclusion, from the perspective of a practitioner with real-world experience in combinatorial optimization, the text is comprehensive, and at the same time it offers fresh angles and shares valuable expertise. It is a great starting point for those who wish to learn about hybrid metaheuristics, however it is not a standalone solution for the novice. I highly recommend this book, both to practitioners and theoreticians at the post graduate levels, be they rooted either at the “formal/rigid” or “heuristic/soft” ends of Combinatorial Optimization research or practice.