16 of 17 people found the following review helpful:
5.0 out of 5 stars
Play God, Experience Evolution, November 4, 2001
This review is from: Illustrating Evolutionary Computation with Mathematica (The Morgan Kaufmann Series in Artificial Intelligence) (Hardcover)
Like the previous reader, I must applaud this book. While I know Mathematica well, I am no mathematician and I have no patience for books that do not explain the foundations of their programs or functions.
The author here, Jacob, does an excellent job of introducing the reader gradually to the different concepts of simulating evolution. As you can download the Mathematica notebooks and run them on your own computer, this quickly becomes a fun and interactive book.
The book starts with simple selection processes for reproduction. Select shapes, colors or features and see a next generation evolve! This can be a fun game. See breeding and mutation be used to search for an optimum of a three-dimensional function, where the reader knows the global optimum, while different "populations" try to find it by evolutionary methods-mutating or breeding to a different spot, which they evaluate and according to its height be successful in the passing of their genes or not. Other fun chapters include evolutionary production of mobiles and flowers. The culmination is in the evolution of algorithms. This evolves small programs for searching for food in a maze. The successful programs "breed," "mutate," and reproduce, while the unsuccessful ones starve and die. The result is a complex path toward better algorithms for searching for food.
Part of the value of this book for me is that it really shows the limits of evolutionary analysis. You can simulate the successes--the butterflies that do manage to change colors to avoid falling easy prey when the environment changes; the evolutionary mechanisms that find the global optimum of a function-but there is no concrete way to determine or describe their efficiency ex ante. This is a major failure of evolutionary analysis generally, rather than a drawback of the book. If anything, the book deserves credit for making this failure understandable, although Jacob does not spend time exploring or solving the problem of determining evolutionary fitness.
[To put it in an example, suppose there are two evolutionary mechanisms. An organism can evolve by mutation or by reproduction. Mutation is the random change of some individuals in the population, and the change makes them either more or less successful in their environment. Reproduction means parents producing an offspring by mixing their features, and the different offspring will have different degrees of success in their environment. We can simulate their operation in a hypothetical environment, by for example, saying that the background foliage changes color and organisms have different probabilities of being eaten by predators depending on their color. We run the simulation and see which evolutionary mechanism adapts to the new environment faster and better. Nevertheless, we cannot conclude that the evolutionary mechanism that won this test will win every test. Needless to say, when designing evolutionary systems this conclusion is crucially necessary. If we are designing a computer search program, should we have it "mutate" or "reproduce"? Since we do not know the challenges it will face (the changes in the environment that it must overcome) we cannot evaluate its success ex ante.]
With the caveat of not exploring measurements of the success (fitness) of different evolutionary mechanisms, this is a spectacular book. It is worth comparing it with the books of the various biologists, who simply offer examples of evolutionary changes from the past or hypotheses of evolutionary explanations for various phenomena. Those are speculations of amateurs compared to the experimentation and verification that Jacob's approach offers. That the field is not ready for rigorous conclusions is unfortunate, but something that is no fault of this author.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
14 of 17 people found the following review helpful:
5.0 out of 5 stars
Excellent survey of evolutionary computation techniques, August 2, 2001
By A Customer
This review is from: Illustrating Evolutionary Computation with Mathematica (The Morgan Kaufmann Series in Artificial Intelligence) (Hardcover)
This book provides a thorough survey of evolutionary computation techniques, including genetic algorithms, genetic programming, evolutionary programming, and evolution strategies. The author uses mathematica to illustrate the examples. If you know mathematica, you'll find this unique angle to be invaluable, but even if you don't know mathematica, if you're familiar with any programming languages, or matlab, maple, etc., you should be able to make the connections. The figures in this book have to be the most illustrative examples offered in any evolutionary computation text to date. The text is easy to read and very informative.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
7 of 8 people found the following review helpful:
5.0 out of 5 stars
Incredible literary intro to an awesome field, September 26, 2002
This review is from: Illustrating Evolutionary Computation with Mathematica (The Morgan Kaufmann Series in Artificial Intelligence) (Hardcover)
As a Mechanical Engineer with just a side interest in AI, I find most books in this field need heavy attention after the first few pages. Not so with this one. Its a great piece of work. I was kind of skeptical at first since this is billed as a translation from German, but it reads really well... and once you get the notebooks in Mathematica...its almost imposible to get anything else done, youll be hooked. Looking forward to more titles in this field from Jacob.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No