Review of theoretical aspects of local search by Wil P. A. J. Michiels, Emile H. L. Aarts, and Jan H. M. Korst (Springer in the EATCS Series Monographs in Theoretical Computer Science, 007)

Theoretical Aspects of Local Search Author of book: Wil P. A. J. Michiels, Emile H. L. Aarts, and Jan H. M. Korst Springer in the EATCS Series Monographs in Theoretical Computer Science, 007 ISBN: 78-3-540-35853-4, hardcover, 235 pages, EUR 54.95 Author of Review: Reviewed by Jakub Mareček “Theoretical aspects of local search? That must be like two pages long!” said a seasoned theoretical computer scientist, when he learned what a book was under review. Many computer scientists do indeed share a scathing contempt for anything heuristic. Perhaps this is because they do not realise that many real-life optimisation problems do boil down to large instances of hard-to-approximate problems, well beyond the reach of any exact method known today. Perhaps they do not realise that performance of exact solvers for hard problems is largely dependent on the quality of in-built heuristics. Certainly, this leads to the irrelevance of a large body of work in Theoretical Computer Science to the operations research industry, and a certain lack of analytical approach in real-life problem-solving, to say the least. Any attempt to change this situation would be most welcome. Local search, readily admitting theoretical analysis, might be a good starting point. Design, analysis, and empirical evaluation of algorithms for hard problems generally involve a number of interesting challenges. No matter whether you are designing integer programming solvers, model checkers, or flight scheduling systems, you have to use heuristics, which present-day Theoretical Computer Science by and large ignores. For instance in precoloured bounded/equitable graph colouring, which underlies many timetabling and scheduling problems, the present-best theoretical result says it is NP-Complete for trees and hence a tree-width decomposition doesn’t help [4], in addition to being hard to approximate in general [15]. Despite the depth of these negative results, their practical utility might be somewhat hard to see for a person working on solvers for the very problem. The divorce of theoretical study of approximability of rather obscure problems and special cases from the development of solvers for messy real-life problems of operations research, is also reflected in the in the usual undergraduate Computer Science curriculum. If any attention is given to heuristics (see [11] for a rare exampl is often confined to the plain old greedy “iterated improvement” and some elementary stochastic local search heuristics, which may seem too trivial even to an undergraduate. The importance of the choice of neighbourhood and objective function is often stressed, but rarely demonstrated. An abstract discussion of the trade-off between the search across many basins of attraction within the search space (diversification) and the convergence to local optima within each basin (intensification) sometimes follows. (See the gripping personal account of [6].) Only few textbooks proceed to mention heuristic pre-processing and decompositions, or the