3.1. Parallelism: hardware vs. simulation

Massive parallelism is one of the definitory features of cellular automata. However, simulations are often used instead of actual implementations, and for very good reasons: there are no commercially available hardware versions, hardware accelerators, or co-processors for the cellular automata computational model. The full performance of the massive parallel architecture will never be reached by simulation; in fact, the high granularity will make the simulations slow, even for small dimensions.

There are several hardware implementations for cellular automata reported in the scientific literature (for a recent review, see [12]). Most of them are particular implementations for specific applications. The so-called "cellular automata machines," including CAM (Cellular Automata Machine, project started in the 1980s at MIT [13]) and CEPRA (Cellular Processing Architectures, first prototype in the 1990s at the Darmstadt University, in Germany [14]) never reached industry. Both projects combine serial processing and pipeline techniques to emulate the parallelism of the cellular automata architecture.

should be further, more clearly, defined). The same evolution or pattern may appear complex or simple, depending on the perspective of the analysis. In the particular case of linear cellular automata, of one does not know the rule and the initial state, it is difficult to infer them by analyzing the behavior. We recognize here again the problem of synthesis, as this issue is

Cellular Automata and Randomization: A Structural Overview

http://dx.doi.org/10.5772/intechopen.79812

173

This dichotomy complexity—self-organization is the third paradox of cellular automata.

significant for the topic of this chapter. For a detailed overview, see [3].

The last important issue is related to the fact that the actual field of cellular automata research, particularly in application development, has adopted a lot of variations of the ideal model (for which the theory was developed). We will mention the most important ones, those who are

Hybrid or inhomogeneous cellular automata: either the cellular space is inhomogeneous (different structures of neighborhoods and cell properties, topological variations), or local rules vary in the cellular space. Local rules may also be modified after a number of time steps, in order to obtain a specific processing of the global configuration. Block hybrid cellular automata are a particular case of inhomogeneous cellular automata. The cellular structure is here

Automata with structured states' space: the cell's state is considered to be the combination of some significant parameters or state values. As in the case of finite-state machine design, such structuration leads to a global simplification, mainly regarding the dimension of the local

Multilevel cellular automata: a more complex model, built as a hierarchical structure of interconnected cellular automata (the model is not simply a multidimensional structure).

Self-programmable cellular automata: the local rules change in time, depending on the evolu-

Asynchronous automata: the cells' states are updated in a certain order, taking into account the

Cellular automata with supplementary memory layer: the computation of the following states takes into account the "history" of the system, or a number of previous states of each cell. These previous states are loaded in the memory layer. This model is practically a network of

Nondeterministic and probabilistic cellular automata: the next state is established in a nondeterministic manner or according to a certain distribution of probability. Due to its

In composite systems, the basic cellular automata model is considered as a space that interferes with autonomous mobile structures or agents that evolve in the cellular space. This model

versatility, this model can be successfully used in complicated modeling applications.

simplifies some modeling effort for example in the case of particles diffusion.

directly related to the previous one.

divided in homogenous subdomains or blocks.

tion, and may be implemented as multilevel cellular automata.

new values obtained for the neighboring cells already updated.

3.4. Variations of the model

rules space.

elementary processors.

Hence, the first paradox of cellular automata: a model of massive parallelism, reduced to sequential computation.
