Show Book List

Reviews from Amazon
Amazon.com (0262200600) 5 reviews
Amazon.ca (0262200600) 4 reviews
A selection of these reviews is given below

 

Tommaso Toffoli and Norman Margolus

Cellular automata machines

Cellular Automata (CA's) such as the Game of Life are well known, but if you want to look further into the subject then you should take a look at Cellular automata machines : a new environment for modeling by Tommaso Toffoli and Norman Margolus. The first part of the book gives a short overview of the field. The book then gets on to the different types of CA's and how they can be implemented, including a look at how to include randomness in your modelling. The third part of the book deals with different physical systems which can be modelled with CA's. These include diffusion, fluid dynamics and ballistic computers as well as collective phenomena such as Ising systems and spin glasses.

The book is based on a dedicated machine for running CA's called the CAM, running a version of FORTH. Nowadays Moore's law means that almost everyone would use a PC for such modelling. I didn't feel that this difference was a problem, rather the details of their machine gave a better idea of what was happening in the CA's and would be valuable for anyone who wants to program CA's themselves. The authors' consideration of reversible CA's and how they can show the consequences of reversibilty of microphysics is also very useful. This is a short book, but covers plenty of topics, and I'd recommend it to anyone considering using CA's to model physical systems.

Amazon.com info
Hardcover 200 pages  
ISBN: 0262200600
Salesrank: 897619
Weight:1.62 lbs
Published: 1987 The MIT Press
Amazon price $54.88
Marketplace:New from $49.95:Used from $18.35
Buy from Amazon.com
Amazon.co.uk info
Hardcover 200 pages  
ISBN: 0262200600
Salesrank: 1058365
Weight:1.62 lbs
Published: 1987 MIT Press
Amazon price £45.95
Marketplace:New from £35.82:Used from £16.52
Buy from Amazon.co.uk
Amazon.ca info
Hardcover 200 pages  
ISBN: 0262200600
Salesrank:
Weight:1.62 lbs
Published: 1987 The MIT Press
Amazon price CDN$ 44.24
Marketplace:New from CDN$ 44.24:Used from CDN$ 27.37
Buy from Amazon.ca

Book Description
Recently, cellular automata machines with the size, speed, and flexibility for general experimentation at a moderate cost have become available to the scientific community. These machines provide a laboratory in which the ideas presented in this book can be tested and applied to the synthesis of a great variety of systems. Computer scientists and researchers interested in modeling and simulation as well as other scientists who do mathematical modeling will find this introduction to cellular automata and cellular automata machines (CAM) both useful and timely.

Cellular automata are the computer scientist's counterpart to the physicist's concept of 'field' They provide natural models for many investigations in physics, combinatorial mathematics, and computer science that deal with systems extended in space and evolving in time according to local laws. A cellular automata machine is a computer optimized for the simulation of cellular automata. Its dedicated architecture allows it to run thousands of times faster than a general-purpose computer of comparable cost programmed to do the same task. In practical terms this permits intensive interactive experimentation and opens up new fields of research in distributed dynamics, including practical applications involving parallel computation and image processing.

Contents: Introduction. Cellular Automata. The CAM Environment. A Live Demo. The Rules of the Game. Our First rules. Second-order Dynamics. The Laboratory. Neighbors and Neighborhood. Running. Particle Motion. The Margolus Neighborhood. Noisy Neighbors. Display and Analysis. Physical Modeling. Reversibility. Computing Machinery. Hydrodynamics. Statistical Mechanics. Other Applications. Imaging Processing. Rotations. Pattern Recognition. Multiple CAMS. Perspectives and Conclusions.

Tommaso Toffoli and Norman Margolus are researchers at the Laboratory for Computer Science at MIT. Cellular Automata Machines is included in the Scientific Computation Series, edited by Dennis Cannon.
 
The best I've found on the subject - with a few caveats *****
Of all of the books that delve into the details of cellular automata, the algorithms, and the kinds of problems you can solve with them, this is probably the best I've found. However, there are two major problems you will have to work around. First, there is the specialized and long defunct CAM computing environment. You simply have to not read the portions of the book that talk about it to get around this, and I found this a minor problem. A more major problem is that this old 1987 book is using Forth as a programming language for the algorithms. Outside of the boot proms on Sun computers and vintage early 80's home-brew computing magazines, I haven't seen this language used. However, C had not yet come to the forefront in 1987, so it's a forgivable, if annoying problem to have to learn enough about the language to truly "get" what the algorithms are doing. All in all, reading this book is like attending a fascinating and close sporting event with two guys - CAM and Forth - continually walking in front of you carrying a long pane of glass between them. The payoff is worthwhile, you just have to put up with something that the authors thought was a plus when they wrote the book that has now become an annoyance.

If you're brand new to cellular automata, I recommend "A New Kind of Science" by Wolfram. Although that book seems to have disappointed many of its readers, I think it does a good job of discussing cellular automata at a high level and discussing the kinds of problems that can be solved using it. Then come back to this book for details and algorithms.
 
How to reuse some older ideas ***
Acquired this book many years ago (early 199x). It was inspiring to read about efforts to produce dedicated hardware for cellular automata. Recently Stephen Wolfram's a new kind of science made me read this older book again. Then it was interesting to write a cellular automata program in C++ and afterwards in a mixed Python/C version. The rules to use were taken from this particular book. The general hardware nowadays has enough power to even program in a higher level language and still show adequate performance. In short: the book is inspiring and the presented rules can be used to investigate cellular automata.
 
Avoid *
I came to this book after having seen it referenced in a number of more general books with chapters on cellular automata. The book describes numerous experiments in varying levels of detail that are suitable for running on cellular automata. The example experiments are both abstract (`Life' or `Parity' rules) and concrete (simulation of physical systems). Little attention is paid to simulating either social or biological processes. There is a lot here but the level of detail is poor. Many explanations of the simulations assume considerable knowledge of the physical systems being simulated or the weaknesses of other approaches that may used. The greatest weakness of this book is that it relies on a specific hardware implementation of a CA machine. All examples require this machine (a PC card) to be installed in your PC in order to run. This card appears to no longer be available (no supplier details are given in the book). The use of Forth (a language using reverse polish notation) to describe rules and the reliance on specific hardware makes the rules discussed difficult to implement on a software CA. The rules presented in the second half of the book are so tied to the hardware implementation of the unavailable PC card as to be impossible to translate directly into English-like rules. This is a definite dud.
 
buy for the ideas, not the implementation *****
This is a terrific book that takes a step-by-step approach to cellular automata, especially for modelling. Within the first two chapters I had already found several interesting ideas for improving my own general-purpose automata program.

The part of the book that is most dated is the discussion of a specific hardware card and software designed for IBM PCs and ATs, and a specific dialect of Forth that can be used to program automata that will run on this card. Obviously this is no longer the mainstream approach to programming automata - even massively parallel systems programming has moved away from Forth. For me, I think of it as pseudo-code instead of a program example, and the book is still very very useful.

So on the whole, I would say this is a valuable addition to the bookshelf of any automata enthusiast.

 
Oh my god, what a book! *****
This book is absolutely stunning. It's a little dated, but the classes of problems that Toffoli and Margolus attack with dirt-simple machines is completely astonishing. I guarantee that you will not be able to put it down -- which is odd to say about a computer book. Read it!

Tachyos.org  |  Chronon Critical Points  |  Recent Science Book Reviews