70 of 72 people found the following review helpful:
5.0 out of 5 stars
Outstanding and Unique Contribution, January 25, 2001
This book provides a very accessible and contemporary treatment of optimization. Of particular interest is the problem solving orientation of the book as opposed to a tool-based approach to optimization and heuristics. The writing style of the book makes the book very interesting and readable - a rare thing to say about technical books! I used this book in a Master's class on Heuristics (Systems Engineering, University of Virginia) and received the most positive textbook reviews I have seen in my fifteen years of teaching. The book is an excellent choice for a course on heuristics, mathematical modeling, optimization, etc., and could be used in an advanced undergraduate class or a graduate class. In addition, the book is ideal for practitioners who may not have had exposure to modern heuristics in their education or practice, or those who want to get updated on the latest developments in the field.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
38 of 38 people found the following review helpful:
5.0 out of 5 stars
extremely well written, September 9, 2004
I read this book while taking an advanced class in heuristics. I found the book to be extremely well written and very compelling to read. Although dealing with advanced topics, the authors' friendly and clear writing style makes it accessible to anyone with a CS background.
The first half of the book is on search heuristics, covering methods such as traditional searches (exhaustive search, greedy algorithms, divide and conquer, dynamic programming, A*, etc), methods to escape local optima (simulated annealing, tabu search), and, perhaps most interesting of all, evolutionary algorithms. I later found out that these topics are typically taught in undergraduate artificial intelligence courses, an elective I never took. The second half of the book covers even more advanced areas, such as contraint-handling, neural networks, and fuzzy systems.
The authors use three recurring example applications to demonstrate each search technique: the boolean satisfiability problem (SAT), travelling salesman (TSP), and a nonlinear programming problem (NLP). I really liked the consistent use of these three examples, as they give a sense of continuity throughout the book that helps the reader compare search techniques clearly. I had of course studied the TSP problem in my undergraduate algorithms class but never in the context of such interesting approximation algorithms. In my heuristics class we had assignments to implement the TSP search problem using the Lin-Kernighan method, dynamic programming, and an evolutionary algorithm.
The written English in this book is simply outstanding and crystal-clear, which was something of a shock since I was unable to even pronounce the first author's name. The writing is in a very friendly tone with elements of humour dispersed throughout. Interestingly, in the summary chapter, there is an anecdote on the 1980s TV show Magnum PI (I even remember the mentioned scene myself), further revealing the friendly, plain-English tone of the book. Perhaps the best part of the book is that the numerical mathematical discourse is kept at a minimum (used largely for the NLP problems), so people who haven't taken calculus in ages (like me) can easily enjoy the book.
As an added bonus(!), between each chapter is a brain-teaser problem like those found in those legendary Microsoft interview questions.
My only complaint is that there is no simple analysis of the running time complexity of each algorithm, which even in its simplest form would have been a great thing to read about.
In summary, this book is an excellent read if you enjoy the topics covered. Highly recommended.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
27 of 27 people found the following review helpful:
5.0 out of 5 stars
A comprehensive overview of problem solving techniques, January 25, 2000
This book provides one of the most comprehensive views of modern techniques in problem solving. The authors use a number of classic problems to illustrate conventional heuristics as well as giving you a solid and working knowledge of more modern evolutionary techniques. The appendicies provide a good introduction to background information on probability theory and statistics used throughout the book, as well as projects for further exploration. Scattered throughout the text are complete and up-to-date references that can be used by the reader to delve deeper into certain topic areas. This book is written to be read and understood by both students and experienced researchers in the field.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No