The cellular automata formalism and its relationship to DEVS

Cellular automata (CA) were originally conceived by Ulam and von Neumann in the 1940s to provide a formal framework for investigating the behaviour of complex, spatially distributed systems. Cellular Automata constitute a dynamic, discrete space, discrete time formalism where space is usually discretized in a grid of cells. Cellular automata are still used to study, from first principles, the behaviour of a plethora of systems. The Discrete EVent system Specification (DEVS) was first introduced by Zeigler in 1976 as a rigourous basis for discrete-event modelling. At the discrete-event level of abstraction, state variables are considered to change only at event-times. Furthermore, the number of events occurring in a bounded time-interval must be finite. The semantics of well known discrete-event formalisms such as Event Scheduling, Activity Scanning, and Process Interaction can be expressed in terms of DEVS, making it a common denominator for the representation of discrete-event models. Due to its roots in traditional sequential formalisms, DEVS offers little potential for parallel implementation. Furthermore, conflicts between simultaneous internal state transitions and external events are resolved by ignoring the internal transitions. In 1996, Chow introduced the parallel DEVS (P-DEVS) formalism which alleviates these drawbacks. Since the end of 1993, the European Commission’s ESPRIT Basic Research Working Group 8467 (SiE), has identified key areas for future research in modelling and simulation. The most urgent need is to support multi-formalism modelling to correctly model complex systems with components described in diverse formalisms. To achieve this goal, formalisms need to be related. The Formalism Transformation Graph (FTG) shown in Figure 1 depicts behaviourconserving transformations between formalisms. In this article, both the Cellular Automata and the DEVS and parallel DEVS formalisms are introduced. Then, a mapping between Cellular Automata and parallel DEVS is elaborated. This fills in the CA DEVS edge in the FTG. The mapping describes CA semantics in terms of parallel DEVS semantics. As such, it is a specification for automated transformation of CA models into parallel DEVS models, thus enabling efficient, parallel simulation as well as meaningful coupling with models in other formalisms. 1 The Cellular Automata Formalism Cellular automata (CA) were originally conceived by Ulam and von Neumann in the 1940s to provide a formal framework for investigating the behaviour of complex, spatially distributed systems [11]. Cellular Automata constitute a dynamic, discrete space, discrete time formalism. Space in Cellular Automata is partitioned into discrete volume elements called cells and time progresses in discrete steps. Each cell can be in one of a finite number of states at any given time. The “physics” of this logical universe is deterministic and local. Deterministic means that once a local physics and an initial state of a Cellular Automaton has been chosen, its future evolution is uniquely determined. Local means that the state of a cell at time t 1 is determined only by its own state and the states of neighbouring cells at the previous time t. The operational semantics of a CA as prescribed in a simulation procedure and implemented in a CA solver dictates that values are updated synchronously: all new values are calculated simultaneously. The local physics is typically determined by an explicit mapping from all possible local states of a predefined neighbourhood template (e.g., the cells bordering on a cell, including the cell itself), to the state of that cell after the next time-step. For example, for a 2-state ( 0 1 ), 1-D Cellular Automaton with a neighbourhood template that includes a cell and its immediate neighbours to the left and right, there will be 23 possible neighbourhood states 000 111 . For each of these, we must prescribe whether a transition of the center cell state to a 1 or to a 0 will occur. For an 8-state nearest neighbour 2-D Cellular Automaton, there will be 85 possible neighbourhood states, and a choice of 8 states to map to for each of those. Process Interaction Discrete Event