The Bactra Review: Occasional and eclectic book reviews by Cosma Shalizi   65

The Computational Beauty of Nature

Computer Explorations of Fractals, Chaos, Complex Systems, and Adaptation

by Gary William Flake

MIT Press, 1998

A Garden of Bright Images

The title suggests a picture book, the publisher and sheer weight a textbook or monograph. Instead, it's a book for amateurs, a guide to computational models of nature for for people who like a bit of math and coding and want to learn more; this book will do a fine job of turning them into obsessives or professionals or both. Such books play an essential role in the ecology of the sciences, since new scientists are largely made by getting hold of people who are too young to know better and warping their minds. Once upon a time this was mainly the job of books of experiments, particularly chemistry experiments; alas, the simple pleasures of youthful inquiry (sulphuric acid, fluorine and ammonia compounds, finger-tips, etc.), are now all too likely to come to the attention, not just of irate neighbors and protective parents, but the DEA and the BATF, and the gadget with tinkerable parts is fast on its way to extinction. Computers might fill the gap, if used the right way, but most books which purport to point out that way consist of shoddy software wedged in between layers of fifth-rate science journalism and profundities which make one wince for their authors. In this review, I want to do three things. First, I want to say a little about the topics Flake covers, and make admiring noises about the coverage. (Since his subjects over-lap with those of many other books reviewed here, I beg Constant Readers' pardons for my repetitions.) Second, as part of becoming a grumpy old man before I hit thirty (it's a five year plan), I want to mutter darkly about his philosophical asides and epilogues; finally, assuming neither you nor I, Dear Reader, have run out of patience, I'll assure you that The Computational Beauty of Nature is eminently worth reading.

``Computational models of nature'' covers a multitude of sins. Most of them are, in this case, topics fashionable in popular science writing, at least within recent memory: fractals (five chapters, including one of the Mandelbrot set alone), chaos (another five chapters), neural networks (two chapters), the Prisoners' Dilemma, and ``birds and bees'' self-organization (nest-building termites, flocking birds). Others, less trendy but in many ways more meaty, come out of Flake's training and research as a computer scientist, like cellular automata, genetic algorithms, classifier systems and the control of chaos. Most impressively, and very confidently, Flake opens the book with the theory of abstract computation, Turing Machines and their equivalents, and Turing's results on uncomputability, of which Gödel's Theorem is an easy corollary. I have for some years now been collecting proofs of that theorem aimed at non-logicians, and Flake's is one of the smoothest I've seen.

Flake's treatment of even the most trendy subjects keeps to this high level: clear, accurate, level-headed and detailed, without being overwhelming. In addition to the excellent job on Turing and Gödel, he also has the first description of the control of chaos I've seen which is neither hand-waving nor forbiddingly technical, and is all the more welcome because, to read most books on this level or below, you'd think controlling chaos was a contradiction in terms. Bright high school students or college freshmen should be able to grasp much of the book, and are probably its ideal audience; a third or fourth year science undergraduate should get all of it. (It probably would make a good text for a survey course.) I didn't learn anything important from this book, but I would've been disturbed if I had, and I did have a lot of fun. Part of that was playing with Flake's very nice programs (free, with source code, from an MIT Press web-site), which, in effect, let readers make their own picture books, if they want. Part of the fun was seeing how all this ``neat nonlinear nonsense'' looks to somebody habituated to discrete programs representing imaginary worlds, rather than stochastic processes to be fit to Real Data (TM).

I admit that I did wince once or twice, peering into this looking glass, particularly the stuff on phase transitions (pp. 328ff). Despite their exorcism from other precincts, the shades of several Nice Tries --- Wolfram's four-fold classification of cellular automata, Langton's lambda parameter for ditto, Bak's self-organized criticality, the edge of chaos, even insect colonies as super-organisms --- continue to haunt Flake's pages. Classifier systems (the subject of ch. 21) might also belong among the Ghosts of Notions Past; but I left them off, probably for the same reason that Flake gave the others the nod: it's not my specialty at all. In his grand comparative tables (pp. 430--1), I would have marked every row after the third with a star, as being ``merely analogous'' to real computability. But I don't think any of this will do much harm, and in any case a reader who gets really interested in one or another of Flake's special topics will be well-prepared to dig into the more dedicated (if not dessicated) literature; the ghosts are harmless.

I do have a more substantial bone to pick with Flake's asides on philosophy. His dismissal of reductionism is both conventional and mis-guided (cf. my review of John Holland's Emergence). When he talks about recursion as a physical, natural process, rather than a mathematical notion, I am irresistibly reminded of Pythagoras proclaiming that All Is Number. He adopts Greg Chaitin's idea that algorithmic incompressibility puts important limits on scientific knowledge, but I am thoroughly unimpressed by this bastard offspring of Ernst Mach and Andrei Kolmogorov. (This last, however, connects to my own line of research, so I'm probably unnaturally picky.)

Peter Medawar used to say that that a scientific hypothesis was an imaginary world, or a part of one, and that the point of experiment was to see how well that world approximated the real one. Now, Flake is a computer scientist, which means, as he tells us at the start of the book, that he ``studies toy problems and fudges his results.'' But in this he is unduly modest (especially in Part I, where he's showing us real math). As imaginary worlds, all his models are perfectly fine, and most of them even have a family resemblance to the Realized World. Fudging would begin only when we said that it was more than a family resemblance, that coast-lines are truly fractal, that immune systems are classifier systems, that social interactions are Prisoners' Dilemma games, that real nervous systems are neural networks. They would fail the test of experiment; some of them have failed the test of experiment. Does this mean that the book is mis-leadingly titled after all, that it's not about the computational beauty of nature at all? Not really; it's just a highly stylized picture of nature, more akin to geometrical flowers of traditional Islamic design than one of Dürer's ready-to-plant dandelions. Much of their charm, and all of their suitability for recreational computing, lies in the fact that they are caricatures, with every line not absolutely essential to recognition erased. Even in this stripped-down condition, some of them actually have practical utility, like genetic algorithms; others have served as starting-points for the construction of more messy and more realistic models, imaginary worlds bearing a closer resemblance to reality; still others are give us information about the ``limits of the possible,'' or at least about what's possible within bounds we find plausible. Such considerations do not sully this book, nor should they. Let's be honest; people practice ``fact-free science'' for the fun of playing with mind-toys, of crafting and exploring microcosms, the early-morning caffeine-fueled rush, the silicon revelation of the imaginary worlds themselves. This is what gets amateurs hooked; give them this book and a machine to play with and they will be. What more could one ask?

Disclaimer: I asked for, and got, a review copy of this book from the MIT Press, and Dr. Flake and I have had a very amiable argument, by e-mail, about some of these matters, but I have no stake in the success of the book.
Errata: p. 18, next to last line, for ``rational,'' read ``irrational''; p. 72, for ``Brown noise,'' read ``white noise''; p. 207, for ``perpendicular to the x-axis,'' read ``parallel to the x-axis''; p. 232, for ``T. H. Hardy,'' read ``T. H. Huxley''; p. 267, ``but I suspect that such periodic cycles are, almost without exception, profoundly long'' --- this is almost universally true of reversible cellular automata; p. 297, ``TFT can be stable'': true, but not in the only sense of stability discussed in that section, since it is not an ESS; p. 310, ``The first neural model was proposed by W. S. McCulloch and W. Pitts in the early 1940s'': actually several were put forward by Nicolas Rashevsky in the 1930s (see his Mathematical Biophysics, vol. II, University of Chicago Press, 1938), and were duly noted by McCulloch and Pitts, not least because they published their papers in Rashevsky's journal; p. 380 and p. 475, Richard E. Nisbet and Paul R. Thagard are missing from the list of authors of Induction.
xx + 495 pp., black and white diagrams, end-of-chapter references, complete bibliography, documentation for programs, glossary (mildly self-contradictory; s.v. continuous, discrete and real), index of subjects and proper names
Cellular Automata / Computers and Computing / Self-Organization, Complexity, etc.
Out of print as a hardback, ISBN 0-262-06200-3 [Buy from Powell's], in print as a paperback, US$40, ISBN 0-262-56127-1 [Buy from Powell's]
1 November/4 December 1998