Michael Salsbury
ISBN 0-262-06200-3
£35.95
In the style of New Scientist.
The book covers five main areas. These areas are: Computation, Fractals, Chaos, and Complex Systems and Adaptation. The first section on computation introduces the big topics and big ideas in this area and some mathematics. Godel, von Neumann and Turing are all included to the extent that their ideas are relevant to the discussions at hand. Then follows the description, and examples, from two new and not commonly understood mathematical areas. Fractals deal with the sense that there can be objects with non integer dimensions and the implications of this idea for mathematics. Then another large section on a new mathematical formalism and it's implications. Chaos, with it's ideas of attractors and some of their uses, for example producer-consumer interactions. Next there is a section on Complex Systems. Particularly covering cellular automata and game theory, before moving on to neural networks. Two more new ideas with a mathematical/computational basis, and another that has been around longer, but that was largely abandoned in the late sixties but is now seeing a massive resurgence. Finally there is a section on even newer ideas of Adaptation. Rolling through Genetic Algorithms and Classifier systems, before returning for another look at neural networks.
Flake is not an academic researcher yet he treats these ideas with more than sufficient detail for the general reader. In fact Flake is a programmer who wishes to use all of the ideas that he outlines. In his role within the commercial world it is likely that he has had to use many of these formal theories in pursuit of the more mundane goal of getting things to work. How many of us when we call an electrician to fix something marvel at the workman's appreciation of laws formulated by James Clerk Maxwell? And how many are merely happy that whatever was dysfunctional is now restored to working order? Most of all however, Flake is an enthusiast. He is not pursuing these ideas for academic glory. And he has not written this book to enhance his own brand in a competitive community. He wrote the book to communicate to others his own belief in the beauty of nature and the way in which it can be explained and realised through computational techniques.
One could complain that some of the theories and ideas are not treated in full depth, or that the selection of topics is incomplete. Given the number of different ideas that would need to be covered to fully deal with the topics included, the book would have been a hundred times longer or more if this drawback were to be properly addressed. Some of the topics are ``glossed over'' a little, but every chapter ends with a list of further reading. These are not a list of potentially impenetrable and unobtainable academic papers, but a list of books that the general reader can hope will be in their local library. The book is intended for the general reader as well as the scientist or technician. These latter two can take the names mentioned and do the normal literature search that is their wont. Or they can quickly find the primary sources that Flake mentions and be referred on from there to the specific academic papers that they may require. In this sense the book is a guidebook to the origins of the ideas that it covers. Use the book to select and have a first encounter with the ideas in which you are interested. It will probably also cross reference to itself to show you how this idea fits in with other similar ideas. This may interest you enough to also investigate those ideas.
This does not mean that this is an easy book to read however. The text makes the ideas as palatable as possible. But there is only so much one can do with powerful scientific, computational and mathematical theories. The ideas in the book are necessarily difficult. They seek to explain the cutting edge of that which is complex, and aspects of nature. To describe how we can explain those aspects as concisely and efficiently as possible.
Flake spells out his rationale in the introduction. He also offers three potential ways to read the book. Allowing one to take a linear, drop in or big picture approach to his text. He also explains the reasons why these ideas interested him, and that no matter how well he writes how the appreciation of the ideas may come immediately, or after years of cogitation and experimentation. At the other end of the text the address of the web page that provides the source code of the examples is given. This source code is provided in C or Java. The nature of Java makes the code platform independent allowing anyone with access to any kind of computer to experience and experiment directly with the ideas described in the book. The final description is of the production of the book itself. Wholly written and produced using essentially free software apart from the download time.
This book brings the Garage Band back to science. It provides access to cutting edge ideas, and provides the computational toolkit to experiment with them. It also describes all the software you need to do any of these things for yourself. Flake has written a book that could easily be used as an accessible text book to the ideas behind research into complexity. His largely non academic example shows how you can do these things for yourself if you want to. Do you?
Michael Salsbury is currently a postgraduate student at the University of Sussex.
