Cellular automata machines (CAMs) provide a natural framework for the modeling and simulation of spatially distributed dynamical systems. In it, the physical space is represented by a uniform grid of cells, and time advances in discrete steps. Each of these cells corresponds to a processor capable of holding a small amount of data and performing certain primitive operations on this data. The evolution of the system under simulation depends on the operations these cell processors can perform. The distinguishing feature of CAM is that the cell operations are (1) local in the sense that they depend on the states of a certain, prespecified number of neighboring cells and their own states, and (2) uniform in the sense that all the cells contain the same set of operations and perform these operations in temporal sequence. Thus, by essentially defining the neighborhood of a cell and the sequence of operations to be performed, a wide variety of physical phenomena can be simulated that have hitherto been studied by the classical approach using differential equations.
The book is divided into three parts. Part 1 provides an overview of the ground rules for CAM. A description of a commercially available machine called CAM-b and a programming language called FORTH, which provide a suitable environment for the actual laboratory work in CAM, is also contained in Part 1. Part 2, on resources, illustrates the various techniques that are useful in setting up the simulation. Part 3, on physical modeling, deals with such problems as reversibility, diffusion and equilibrium, and simulations in fluid dynamics. There are two short appendices describing the architecture of the CAM-b hardware and the programming language FORTH.
The book is extremely well written and is quite inviting. This could be used in a senior- or graduate-level course and by researchers interested in modeling, simulation, and parallel computation.