introduction to the special issue on cellular automata

10
ParallelComputing 23 (1997) 1567-1576 PARALLEL COMPUTING Introduction to the special issue on cellular automata M. Kutrib a, R. Vollmar b, Th. Worsch b,* a Institutfiir Informatik, Universitiit GieJ3en. GieJen, Germany b FakultiitjZr Informatik, Universitiit Karlsruhe, Am Fasanengarten 5, 76128 Karlsruhe, Germany Received 15 April 1997;revised 15 May 1997 Abstract In this introduction we review the basics of cellular automata and give a short survey of some areas of research concerning cellular automata. This is done to tit the papers of the present special issue into a general frame. 0 1997 Elsevier Science B.V. Keywords: Cellular automata 1. Basics of cellular automata Cellular automata (CA) have been introduced by John von Neumann following a suggestion of Stanislaw Ulam. Von Neumann was looking for a theoretical framework which would allow the construction of a self-replicating device capable to do something ‘meaningful’. The CA model allowed von Neumann to devise a structure which is computation universal as well as construction universal; i.e., it can be programmed to compute any computable function and/or to construct any other ‘machine’. Von Neumann never published a paper on CA himself, but after his death his notes were edited, completed and made available by Arthur Burks [&I. The fundamental idea was to consider a two-dimensional arrangement of determinis- tic identical finite-state machines, called cells, which work synchronously according to the same transition rule, depending only on the local information provided by the states of a constant number of neighboring cells. In order to have a common basis of notations we now turn to a formal description of CA. l Corresponding author. E-mail: [email protected]. 0167~8191/97/.$17.00 0 1997Elsevier Science B.V. All rights reserved. PII SO167-8191(97)00073-2

Upload: m-kutrib

Post on 02-Jul-2016

217 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Introduction to the special issue on cellular automata

Parallel Computing 23 (1997) 1567-1576

PARALLEL COMPUTING

Introduction to the special issue on cellular automata

M. Kutrib a, R. Vollmar b, Th. Worsch b,*

a Institutfiir Informatik, Universitiit GieJ3en. GieJen, Germany

b FakultiitjZr Informatik, Universitiit Karlsruhe, Am Fasanengarten 5, 76128 Karlsruhe, Germany

Received 15 April 1997; revised 15 May 1997

Abstract

In this introduction we review the basics of cellular automata and give a short survey of some areas of research concerning cellular automata. This is done to tit the papers of the present special issue into a general frame. 0 1997 Elsevier Science B.V.

Keywords: Cellular automata

1. Basics of cellular automata

Cellular automata (CA) have been introduced by John von Neumann following a suggestion of Stanislaw Ulam. Von Neumann was looking for a theoretical framework which would allow the construction of a self-replicating device capable to do something ‘meaningful’. The CA model allowed von Neumann to devise a structure which is computation universal as well as construction universal; i.e., it can be programmed to compute any computable function and/or to construct any other ‘machine’. Von Neumann never published a paper on CA himself, but after his death his notes were edited, completed and made available by Arthur Burks [&I.

The fundamental idea was to consider a two-dimensional arrangement of determinis- tic identical finite-state machines, called cells, which work synchronously according to the same transition rule, depending only on the local information provided by the states of a constant number of neighboring cells. In order to have a common basis of notations we now turn to a formal description of CA.

l Corresponding author. E-mail: [email protected].

0167~8191/97/.$17.00 0 1997 Elsevier Science B.V. All rights reserved. PII SO167-8191(97)00073-2

Page 2: Introduction to the special issue on cellular automata

I.568 M. Kutrib et al./Parallel Computing 23 (1997) 1567-1576

1.1. A formal definition of CA

The cells can be imagined as positioned at the integer points of the d-dimensional Euclidean lattice R = Zd. We will denote the finite set of possible states of each of the cells by Q.

When a finite automaton makes one step, its new state is determined by its current state and an input supplied to the automaton. In the case of CA, an input of each cell consists of the states of some local neighboring cells. One may see that as having some interconnections between the cells, which are homogeneous in the following sense. Given a finite set NC Zd, called the neighborhood of the CA, the elements n E N are to be interpreted as the ‘relative coordinates’ of neighboring cells, i.e., a cell at position p E R gets as input the states of the cells at positions p + n. For the sake of simplicity we assume always that (0,. . . ,O> belongs to N.

A mapping 1: N --) Q is called a local configuration. It contains exactly the information needed by a cell to make one step. Let us write Yx for the set of all mappings f: X + Y (for example 1 E QN). The mode of operation of a cell is completely determined by its local rule S : QN + Q. That is, for each possible local configuration 1 ‘observed’ by a cell, a new state a(1) is prescribed. Again, there is an aspect of homogeneity: all cells of a CA use the same local rule.

The ‘global state’ of a CA at a certain point of time is called a (global) configura- tion. It is completely determined by the states of all cells, and can be formalized as a mapping c : R + Q, i.e., c E QR. The local configuration ‘observed’ by a cell at position p E R in a global configuration c is denoted by I,,,. It is given by I,,,(n) = c(p + n) for all n E N.

CA are working in discrete time. From a global configuration c one step of the CA leads to a new global configuration c’ in which all cells have entered a new state according to the local rule synchronously, i.e., for all p E R one has c’(p) = S(l,,,). Setting A(c) = c’ defines the global transition function A: QR + QR. As in the case of 8 one sometimes speaks of the global rule which is a more reasonable term especially in the case of generalized models where neither 6 nor A are functions any longer.

1.2. Further remarks

There are three topics related to the above definition which deserve further com- ments.

First, depending on what one is interested in, it is sometimes necessary to give some further definitions. Probably the best known examples are CA as devices for computa- tions, where one uses CA to solve problems of the type ‘finite input-finite output’ as in formal language recognition or in the computation of functions f : Nk + N”. In these cases one restricts attention to global configurations with finite support. The support of a configuration is the set of cells which are not in the so-called quiescent state s E Q, which plays a role similar to that of the blank tape symbol for Turing machines. It is distinguished by the fact the local rule has to assure that a quiescent cell remains quiescent if all of its neighbors are quiescent. Thus, the global rule preserves the

Page 3: Introduction to the special issue on cellular automata

M. Kutrib et al. / Parallel Computing 23 (1997) 1.567-1576 1569

property (of global configurations) of having a finite support. Inputs and outputs are encoded by states of adjacent cells.

Second, there is the ‘Local Versus Global’ problem, one of the main subjects of cellular automata. The local rule 6 completely determines the global rule A, and also vice versa (assuming that the global rule is definable by a local rule and one knows N). For local rules there are properties, let us call them local properties, which are satisfied by some local rules and violated by other. Analogously there are various global properties for global rules. Since local and global rules are completely different kinds of objects, ’ local and global properties are completely different, too. Hence it is reason- able to search for results relating certain local and global properties. For example, a typical local property is that all states occur equally often as the value S(1) for some 1; a global property is that A is bijective. *

There are two types of important subproblems in this setting. If the local property is given and one is looking for the consequences for the corresponding global rules, one speaks of a forward problem. In an extreme case the local property is to be one specific local rule, and the task might be to find out which types of behavior can be observed for infinite ‘evolutions’ c, A(c), A*(c), A’(c), . . . (also called space-time diagrams). In the case of backward problems (also called inverse problems) a global property is given and one has to find out something about the properties of possibly existing local rules giving rise to the given global property. A typical example is the design of CA, i.e., local rules to perform a given computational task. In this case the latter is usually specified as a global property, e.g., “for initial global configurations looking like. . . after . . . steps global configurations have to be reached looking like. . . ”

Third, in different papers one can find a variety of definitions of CA. Even the articles in this special issue use several different notations. There are at least two reasons for this. Sometimes it is more convenient to use a specific notation for a specific subclass of CA (without changing the basic concepts). As an example consider one-di- mensional CA (R = Z> with neighborhood N = { - l,O,l}. One usually simply writes ‘6(q,,q,,q,) = q4’ instead of ‘S(I) = q4 for the local configuration satisfying I( - 1) = q,, l(O)=q, and 1(1)=q,‘. Another (cogent) reason to use a different formalism is when one considers modified or generalized variants of CA. (A few examples can be found in the next section.)

2. Some research areas

In this section we will introduce very briefly some areas of research which have played a more or less important role in CA research. We start with a chronological description but deviate from this principle as the field becomes more and more diversified. The order in which the topics are presented does not correspond to their

’ E.g., they have different domains and ranges.

* This should not be understood as a claim that there is an obvious relation between these particular properties.

Page 4: Introduction to the special issue on cellular automata

1570 M. Kutrib et al./Parallal Computing 23 (1997) 1567-1576

degree of importance. 3 Furthermore, these topics certainly do not cover the whole spectrum of today’s research, even though we hope to have included those which are currently considered to be important. We will refer to the papers of this special issue in italics. There are papers which are concerned with problems belonging to the intersec- tion of several topics making the assignment of a paper to one research topics somewhat arbitrary.

2. I. Self-reproduction

As has been described in the previous section, the starting point of CA research was the problem of self-reproduction the first solution of which dates back to the late forties. The additional requirement, namely that the self-reproducing device should be computa- tionally universal makes the problem more difficult. This definitely became clear during the 197Os, when several papers were published describing variations of the following basic observation. If one chooses the integers modulo some prime number p as the set of states and addition modulo p of all states in the neighborhood as the local rule, then any finite pattern of non-zeroes embedded in a ‘sea’ of zeroes in the initial configuration is reproduced after pk steps for sufficiently large k [4,7]. In later years more self-repro- ducing CA have been found which attracted some attention because their behavior vaguely reminds that of some biological phenomena.

The case of CA with Q = B, also marks the beginning of the following area of research.

2.2. CA of special types

Often it is difficult to prove general theorems which hold for arbitrary CA. One possibility to make the first steps easier and to obtain deeper results is to restrict ones attention to more specialized cases ([20], Ch. 3).

A typical example is the assumption that the set of states has some algebraic structure (as in the previous section) and that the local rule is to be compatible with the structure in some sense (e.g., it is linear). For example, if the set of states is an Abelian group important questions for the global dynamics (e.g., is it one-one or sujective) can be answered. The case that Q is a finite ring and the local rule is a linear mapping is considered by Allouche et al. [2].

2.3. CA algorithms

The second cornerstone after von Neumann’s introduction of CA was in the (late 1950s and) early 1960s. Myhill had posed the so-called Firing Squad Synchronization Problem (FSSP), which firstly appeared in the published literature a few years later [31]. Starting with a one-dimensional finite fixed lattice where all cells are initially quiescent except the left-most one (the so-called ‘general’), the FSSP is to specify a state set Q

3 In fact, the order is somewhat unusual as will become obvious soon.

Page 5: Introduction to the special issue on cellular automata

M. Kutrib et al. / Parallel Computing 23 Cl 997) 1567-1576 1571

and a local rule 8 independently of the size of the lattice such that all cells enter a special ‘firing’ state f at exactly the same time step and no cell enters state f before. Similarly, as the problem of self-reproduction the FSSP is a backward problem, the first solutions of which may be found in [22,30]. Since in some sense this problem and its solutions capture the essence of the ‘local versus global’ theme it is investigated until today [29].

The interest in algorithms for problems which are specific for CA (and cannot be posed for Turing machines for example), like the Queen Bee Problem and the Early Bird Problem, continued throughout the 1970s [27,34,38]. During the same time CA algo- rithms for more ‘practical’ problems were developed. One example are (especially two-dimensional) CA with finite support, where the patterns formed by the states of the support are considered as pictures or images [42,43]. There are several well-known operators, e.g., for edge detection, which can be realized by CA [32]. This even lead to ‘special purpose’ hardware for image processing based on CA 1141.

Another large area of the CA research shows up in the literature under the name of systolic algorithms or systolic systems. In these cases one is not necessarily interested in solutions for completely homogeneous models. But many algorithms at least can be adapted to CA rather easily. The aspect of homogeneity has become more important with the advent of VLSI-technology which nowadays allows CA to be realized in silicon.

For the design of more complicated CA algorithms it is of course helpful if a compositional approach can be used. One would like to be able to combine ‘modules’ (subroutines) solving partial problems to obtain a desired algorithm. Since CA are myopic the composition of algorithms (which are implemented from a more global point of view) requires special methods for starting and stopping the computation. It is at this point where solutions for synchronization problems become important again. Connected to this topic are also considerations of how inputs are supplied to and outputs are fetched from a cellular automaton system.

Around 1970 the CA community got new momentum by the research of several groups. Besides the topics already mentioned, three further ones can be identified which are denoted ‘Normal forms’, ‘Global rules’ and ‘Computability and computational complexity’. Furthermore, people began to extend their investigations to ‘Modifications and generalizations of CA’.

2.4. Normal forms

The definition of CA allows a great variety in some parameters (the number of states, the neighborhood, the local rule, etc.). It was therefore important to show the existence of various normal forms [3,9,12,36,52]. For example, for two-dimensional CA it is no loss of generality to bound the number of states by two, or the number of neighbors by four - but not both simultaneously. For each CA there is also another one which ‘simulates’ it step by step and has a symmetric or totalistic local rule [1,21,41]. A local rule is symmetric if for every permutation rr of N and for all 1 E QN it holds a(10 TTT) = S(l). A local rule is totalistic if there is an injection L : Q + N and a function t : N -+ Q such that for all 1 E QN it holds that S(1) = t(C, E N~(l(n))).

Page 6: Introduction to the special issue on cellular automata

1572 M. Kutrib et al. /Parallel Computing 23 (1997) 1567-1576

2.5. Global rules

One of the first problems considered for global rules of CA was that of Gardens of Eden. A Garden of Eden for a CA is a configuration which cannot be obtained as the result of a CA step, i.e., a CA has a Garden of Eden if and only if its global rule is not surjective. One of the basic decision problems for CA is to decide for a given local rule, whether its global rule has a Garden of Eden. It has been shown to be undecidable for two- and higher-dimensional CA [15,26] while it is decidable for one-dimensional CA [5]. Analogously, one may think about injectivity and bijectivity. The latter case is especially interesting because it has been shown that the inverse A-’ of a bijective global rule is again the global rule of a CA [33].

The set QR of global configurations can be made a metric space. This makes it possible to investigate CA using methods, e.g., from topology [23]. For example, the global map of any CA is always continuous. Furthermore, topological concepts are useful when CA are considered as dynamical systems working in discrete time. For example one may ask whether a given CA exhibits chaotic behavior for various definitions of (topological) chaos used in dynamical systems theory. In their paper Cattaneo et al. [lo] consider the consequences of transformations of local rules for the corresponding global rules, among others considering the latter as dynamical systems.

2.6. The structure of the CA rule space

During the 1980s a new field of broad interest has been developed which started by looking at the development of computations from a phenomenological point of view. Of course, the ‘development of computations’ is a global notion, relating this topic closely to the previous one. The idea is to find a taxonomy according to which certain types of CA may be distinguished. In other words, one became interested in investigations of the space of CA rules [17,50]. Meanwhile the initially only intuitive observations have been turned into hard results, e.g., of the following type: Given a fixed lattice, a fixed set of states and a fixed neighborhood, determine which (global) behaviors of CA can be obtained by choosing different local rules [45]. Grouping the rules according to properties of the global behavior leads to various classifications of CA. Following another approach Sutner [40] investigates properties of finite segments of one-dimen- sional CA configurations. In the paper by Markus et al. [28] a new measure for the discrimination between different types of rules is introduced.

2.7. Computability and computational complexity

As already mentioned in the first section a broad area of research is concerned with CA as a model for computability. Which problems can be solved at all and how much time/space do CA require for the solution of solvable problems? We will shortly discuss these aspects, both of which have profited from results about the relation of CA to other models like Turing machines.

It has been observed very early that CA are as powerful as Turing machines. Von Neumann’s CA could be ‘programmed’ to compute any computable function. Later a

Page 7: Introduction to the special issue on cellular automata

M. Kutrib et al./Parallel Computing 23 (19971 1567-1576 1573

very simple CA (IQ] = 2, INI = 9) with this property has been found [6]. Also direct simulations between CA and TM have been described [37].

Roughly at the same time intensive work has been started to study recognition of formal languages by CA [13,16,25,35,39]. Later, the capabilities of CA to compute functions have been investigated. Typical problems are to characterize the family of formal languages recognizable by CA of a certain type, or a certain computation mode or within given time-space resource bounds as in the paper by Buchholz and Kutrib [8]. Related to this are results which allow to speed up the computations or even to reduce the number of states, the neighborhood or the dimension. A new speedup construction which is quite efficient concerning the number of states is described by Heen [24].

2.8. Modifications and generalizations of CA

The basic definition of CA gives a lot of space for modifications and generalizations. The first generalizations considered were tessellation automutu [52] which allow to choose among several local rules in each step and asynchronous CA where in each step only an arbitrarily chosen subset of cells update their states. The latter can be considered as a special case of non-deterministic CA for which the local rule is not required to be a function but may be a relation with the characteristic function of the form 6 : QN X Q + {O,l}. Further modifications of the local rule result in probabilistic CA where the different possibilities for the new state are weighted with nonnegative numbers, namely S : QN X Q + [O.. . 11, subject to the condition that Vl E QN: C,, ,6(l,q) = 1. If the local rule is a fuzzy mapping one gets fuzzy CA which are the starting point of the paper by Flocchini et al. [ll?]. It may even be chosen as a complex-valued function 6 : QN X Q -+ C satisfying certain conditions, leading to quantum CA [46].

Other authors have considered CA where the underlying lattice is modified, e.g., tori, hexagonal connected lattices, trees and trellises. In this respect, Cayley graphs have become an important basis for CA. For example, sometimes finite lattices are consid- ered.

One can also replace the (finite-state) cells by pushdown-store machines to allow a non-constant amount of local memory per cell. In parallel Turing machines [48] the use of multi-head finite automata leads (in some cases) to generalized CA with more powerful non-local communication structures. This model is considered by Worsch [51].

If the cells are physically divided with large distances between some of them, then it seems to be appropriate to consider networks with non-uniform delay, where the time needed to transmit data from one cell to an adjacent one is not homogeneous, but depends on the involved cells. Such networks can also be seen as defective CA where between two cells there are some defective ones which are only able to transmit information but not to process it.

2.9. Modeling real phenomena with CA

Several researchers used CA to model real phenomena and derived results from such modeling. Some scientist even regard a paper from 1946 (!I as the first one in this area

Page 8: Introduction to the special issue on cellular automata

1574 M. Kutrib et al./ Parallel Computing 23 (1997) 1567-1576

[49]. CA modeling is used in several disciplines like physics, chemistry, biology, geology, traffic flow or even sociology.

While in some cases one has to be content with CA models which show qualitatively correct behavior, in other cases it is even possible to obtain quantitatively correct models which can be used for a prediction of the outcome of experiments. For example, this is possible in physics for modeling certain types of fluid flow using so-called lattice gas models [ 11,191. How reaction diffusion systems can be modeled by CA with relatively few states is described by Weimur [47]. As the lattice gas models these are in fact probabilistic CA which are used a lot (though not exclusively) for modeling nature.

3. Concluding remarks

We conclude with a few remarks on the relation of cellular automata to parallel computing.

Besides conferences which are especially dedicated to cellular automata (e.g. Par- cella, ACRI) papers can be found in proceedings of conferences on theoretical founda- tions (e.g. FOCS, MFCS, STACS) as well as in those of conferences on parallel computing (e.g. PaCT, HPCN, EuroPar). A similar statement can be made concerning publications in journals (e.g. Complex Systems, Parallel Computing, Theoretical Com- puter Science), the present special issue being an example.

The relations between parallel computing and cellular automata are manifold. It was already noticed in the early days that (powerful) computers can be used to support the research on CA. In Burks’ words ([44], p. 3):

The procedure which he [von Neumann] pioneered and promoted is to employ computers to solve crucial cases numerically and to use the results as a heuristic guide to theorizing.

This was originally meant for fluid dynamics, but it is of course also true for CA, see for example ([ 121, Ch. 7). In recent years, a lot of investigations of the long time behavior of CA has been done. In this connection the computation of ‘space-time diagrams’ c, A(c), A*(c), . . . has become an important tool. The available computed data are very helpful to gain insights and to recognize structural patterns and can serve as a guide to theorizing. When CA are used for modeling real phenomena the influence of computa- tions is stronger. If one is interested in quantitative results the simulations of CA become very computationally intensive. It is then more or less a must to use high performance computers. These may be parallel computers or specialized hardware which is optimized for the simulation of CA.

On the other hand, there exist fast parallel algorithms well-suited for implementation in CA for a broad variety of problems. These algorithms concern aspects of image processing, numerical calculations etc. as well as problems with parallel computers itself. Once the algorithms are designed for CA, which in some sense serve as a device-independent platform (for a class of architectures), they can easily be adapted to

Page 9: Introduction to the special issue on cellular automata

M. Kutrib et al. /Parallel Computing 23 (1997) 1567-1576 1575

real massively parallel hardware. In other words, cellular automata are a model for

parallel processing.

References

[l] J. Albett, K. Culik II, A simple universal cellular automaton and its oneway and totalistic version, Complex Systems 1 (1987) I-16.

(21 J.-P. Allouche. F. v. Haeseler, E. Lange, A, Petersen, G. Skordev, Linear cellular automata and automatic sequences, Parallel Computing (1997), this issue.

[3] S. Amoroso, A parallel-acting iterative automaton, in: 8th IEEE Symposium on Foundations of Computer Science (FOCS ‘67), 1967, pp. 83-94.

[4] S. Amoroso, G. Cooper, Tesselation structures for reproduction of arbitrary patterns, Journal of Computer and System Sciences 5 (1971) 455-464.

[5] S. Amoroso, Y.N. Patt, Decision procedures for sujectivity and infectivity of parallel maps for tesselation structures, Journal of Computer and System Sciences 6 (1972) 448-464.

[6] E.R. Banks, Universality in cellular automata, in: Proc. 1 Ith IEEE Symposium on Foundations of Computer Science (FOCS), 1970, pp. 194-215.

[7] A.G. Barto, A note on pattern reproduction in tessellation structures, Journal of Computer and System Sciences 16 (1978) 445-455.

[8] T. Buchholz, M. Kutrib, Some relations between massively parallel arrays, Parallel Computing (1997). this issue.

[9] A.W. Burks, Essays on Cellular Automata, University of Illinois Press, Urbana, 1970. [IO] G. Cattaneo, E. Formenti, L. Margxa, G. Mauri, Transformations of the one-dimensional cellular

automata rule space, Parallel Computing (1997), this issue. [I I] B. Chopard, M. Droz, Cellular Automata Modeling of Physical Systems, Cambridge University Press,

1997, to appear. [12] E.F. Codd, Cellular Automata, Academic Press, New York, 1968. [13] S.N. Cole, Real-time computation by n-dimensional iterative arrays of finite state machines, IEEE

Transactions on Computers 18 (4) (1969) 349-365. [14] M.J.B. Duff, CLIP-4, in: K.S. Fu (Ed.), Special Computer Architectures for Pattern Processing, CRC

Press, 1980. [ 151 B. Durand, The subjectivity problem for 2D cellular automata, Journal of Computer and System Sciences

49 (1994) 718-725. [16] C.R. Dyer, One-way bounded cellular automata, information and Control 44 (1980) 261-281. [17] J.D. Farmer, T. Toffoli, S. Wolfram &is.), Cellular Automata: Proceedings of an Interdisciplinary

Workshop at Los Alamos, Ned, Medico, March 7- 11, 1983, North-Holland, Amsterdam, 1984. [18] P. Flocchini, F. Geurts, N. Santoro, CA-like error propagation in fuzzy CA, Parallel Computing (1997).

this issue. [19] U. Frisch, B. Hasslacher, Y. Pomeau, Lattice-gas automata for the Navier-Stokes equation, Physical

Review Letters 56 (1986) 1505-1508. [20] M. Garzon, Models of Massive Parallelism, Springer-Verlag, Berlin, 1995. [21] D. Gordon, On the computational power of totalistic cellular automata, Mathematical Systems Theory 20

(1987) 43-52. [22] E. Goto, A minimum time solution of the Firing Squad Problem, Course notes for Applied Mathematics

298, 1962. [23] G.A. Hedlund, Endomorphisms and automorphisms of the shift dynamical system, Mathematical Systems

Theory 3 (1969) 320-375. 1241 0. Heen, Efficient constant speed-up for one dimensional cellular automata calculators, Parallel Comput-

ing (1997). this issue. [25] O.H. Ibarra, M.A. Palis, Two-dimensional iterative arrays: Characterizations and applications, Theoretical

Computer Science 57 (1988) 47-86.

Page 10: Introduction to the special issue on cellular automata

I.576 M. Kutrib et al. /Parallel Computing 23 (1997) 1567-1576

[26] J. Kari, Reversibility of 2D cellular automata is undecidable, Physica D 45 (1990) 375-385. [27] T. Legendi, E. Katona, A 5 state solution of the early bird problem in a one dimensional cellular space,

Acta Cybemetica 5 (2) ( 198 1) 173- 179. [28] M. Markus, T. Hahn, 1. Kusch, A novel quantification of cellular automata, Parallel Computing (1997).

this issue. [29] J. Mazoyer, On optimal solutions to the fling squad synchronization problem, Theoretical Computer

Science 168 (2) (1996) 367-404. [30] M. Minsky, Finite and Infinite Machines, Prentice-Hall, Englewood Cliffs, NJ, 1967. [31] E.F. Moore, The firing squad synchronization problem, in: E.F. Moore (Ed.), Sequential Machines -

Selected Papers, Addison-Wesley, 1964, pp. 213-214. 1321 K. Preston, Jr., J.B. Duff, Modem Cellular Automata, Plenum Press, New York, 1984. [33] D. Richardson, Tessellations with local transformations, Journal of Computer and System Sciences 6

(1972) 373-388. [34] P. Rosenstiehl., J.R. Fiksel, A. Holliger, Intelligent graphs: Networks of finite automata capable of

solving graph problems, in: R.C. Read (Ed.), Graph Theory and Computing, Academic Press, New York, 1972, pp. 219-265.

[35] A.R. Smith III, Cellular automata and formal languages, in: I Ith Annual IEEE Symposium on Switching and Automata Theory, 1970, pp. 216-224.

]36] A.R. Smith 111, Cellular automata complexity trade-offs, Information and Control 18 (1971) 466-482. [37] A.R. Smith 111, Simple computation-universal cellular spaces, Journal of the ACM 18 (1971) 339-353. [38] A.R. Smith III, Two-dimensional formal languages and pattern recognition by cellular automata, in: IEEE

Conference Record of 12th Annual Symposium on Switching and Automata Theory, IEEE, 1971, pp. 144-152.

1391 A.R. Smith III, Real-time language recognition by one-dimensional cellular automata, Journal of Computer and System Sciences 6 (1972) 233-253.

[40] K. Sutner, Linear cellular automata and Fischer automata, Parallel Computing ( 1997), this issue. [41] H. Szwerinski, Symmetrical one-dimensional cellular spaces, Information and Control 67 (1985) 163- 172. [42] R. Vollmar, Cellular spaces and parallel algorithms, in: M. Feilmeier (Ed.), Parallel Computers - Parallel

Mathematics, IMACS, North-Holland, 1977, pp. 49-58. [43] R. Vollmar, Algorithmen in Zellularautomaten, Teubner, Stuttgart, 1979. [44] J. von Neumann, Theory of Self-Reproducing Automata, University of Illinois Press, 1966 [Edited and

completed by Arthur W. Burks]. [45] B.H. Voorhees, Computational Analysis of One-Dimensional Cellular Automata, World Scientific, 1996. [46] J. Watrous, On one-dimensional quantum cellular automata, in: Proceedings 36th Annual Symposium on

Foundations of Computer Science, IEEE Computer Society Press, 1995, pp. 528-537. [47] J.R. Weimar, Cellular automata for reaction-diffusion systems, Parallel Computing (1997), this issue. [48] J. Wiedermann, Weak parallel machines: A new class of physically feasible parallel machine models, in:

I.M. Havel, V. Koubek (Eds.), MFCS ‘92, 17th International Symposium Mathematical Foundations of Computer Science, Springer-Verlag, 1992, pp. 95- 111.

[49] N. Wiener, A. Rosenblueth, The mathematical formulation of the problem of conduction of impulses in a network of connected excitable elements, specifically in cardiac muscle, Archives de1 Instituto de Cardiologia de Mexico XVI, 1946, pp. 205-265.

[50] S. Wolfram, Computation theory of cellular automata, Communications on Mathematical Physics 96 (1984) 15-57.

[51] Th. Worsch, On parallel Turing machines with multi-head control units, Parallel Computing (1997), this issue.

[52] H. Yamada, S. Amoroso, Tesselation automata, Information and Control 14 (1969) 299-317.