Asynchronous communicating cellular automata: Formalization, robustness and equivalence
Introduction
A distributed system consists of a group of components (processes, peers or nodes) each of which not only works individually, but also cooperates and communicates with other components via exchanging messages. Well-known instances of distributed systems include communicating finite-state automata [2], [3], multi-agent systems [4], [5] and wireless sensor networks [6], [7]. In the context of distributed computing, the delivery of messages from one component to another is assumed to comply with a variety of protocols for synchronous or asynchronous communication [8], [9], [10]. In usual, synchronous communication requires the sender and receiver of a message are controlled by a common clock signal, whereby every pairwise sending and receiving events can take place in lockstep within a specified time interval. Asynchronous communication, on the other hand, admits the sending and receiving events to occur separately at different times, without the need of a global clock to drive both the sender and the receiver. In this case, communication between a pair of components is usually mediated by an external buffer, e.g., a FIFO channel, that is capable of storing messages sent by one component and allows the messages to be read out by another component in a specific order [10].
A fundamental model for distributed systems is the cellular automata (CAs). A CA is a dynamical system consisting of a large number of identical cells (finite-state automata). Each cell takes a state from a finite set of states and is uniformly connected to a neighborhood containing a finite number of cells. Likewise, each cell can update the state using a transition function, which determines the cell’s new state based on the states of all neighboring cells, along with the state of the cell itself. Despite the simple interactions between cells at local scale, complex global behavior can be produced due to the built-in parallelism of massive cells which make CAs a suitable model for parallel computing and simulations of natural complex phenomena [11], [12].
A CA is called a synchronous cellular automaton if all cells update the states simultaneously at every discrete time step, in accordance with a global clock signal. The strict simultaneity and determinism of the model, however, are not applicable in many complex natural scenarios where noises or perturbations are considered [13], [14]. To the contrary of a synchronous model, an asynchronous cellular automaton (ACA) allows cells to do transitions individually in accordance with their own local clocks, whereby each cell may probably change the state at random times independent from any other cell, which shows much more tolerance to the uncertainty due to noise or perturbation than the synchronous model. Ingerson and Buvel [15] formally proposed two updating schemes for ACAs, by changing the deterministic transition function to a random probability function. They questioned the perfect synchrony hypothesis of elementary cellular automata (ECAs) and observed that the updating scheme plays a fundamental role in producing the global behavior of ECAs.
No matter a CA is synchronous or asynchronous, updating of a cell’s state at any time is required to depend on the current states of each neighbor. This specification prescribes that whenever a cell starts to undergo a transition, driven either by a global clock common to all cells or by a local clock dedicated merely to the cell, the cell must communicate with all neighbors in advance of the transition for the sake of exchanging their latest states. Accordingly, physical implementation (e.g. [16], [17]) of CAs should specify either a synchronous or an asynchronous protocol in order to keep communication between cells in step with the transitions of cells. Intuitively, a synchronous CA distributes a global clock signal to all cells simultaneously, enabling synchronous communication driven by the same clock, whereby every state transition of a cell is preceded by the cell communicating with all neighbors in the same time inteval. Likewise, because an ACA usually lacks a global clock to drive all cells’ transitions in parallel, a blocking protocol [3] may become viable, which blocks a cell from changing the state whenever the cell is activated, until the cell receives the current states of all neighboring cells through communication.
Although the blocking protocol may permit a cell to communicate with its neighboring cells asynchronously [3], it forces each cell to conduct the communication and transitions in lockstep due to the specification of CAs. In this paper, we focus on more general and practical protocols for asynchronous communication, especially on those protocols that can separate communication from computation in distributed systems [10]. To this end, we introduce a formal model of CAs, called asynchronous communicating cellular automata (ACCAs), which allow cells to be updated independently at random time, i.e., they are ACAs. In contrast to a conventional ACA, each cell in an ACCA not only takes a state from a set of states, but also carries buffers each uniquely corresponding to a cell in the neighborhood. The explicit inclusion of buffers into cells facilitates the use of an asynchronous protocol in [5] to control the communication and transitions of cells in an ACCA. More specifically, whenever a cell is activated in an ACCA, the cell has a probability to communicate with an arbitrary neighbor and record the neighbor’s state into a corresponding buffer. Meanwhile, it also holds a probability to change the state using a transition function, in which case the function determines the cell’s new state based on the states recorded in buffers inside the cell, rather than the current states of outside cells in the neighborhood. As a result, our ACCAs allow the communication between cells to take place separately from the state transitions of cells, and thus they seem better suited to modeling distributed systems under asynchronous communication than conventional ACAs.
The division of communication and transitions as well as the explicit use of buffers make each cell in an ACCA possible to change the state depending on some past, rather than the present, state of any neighbor. Incorporating past states into the cells’ states was analyzed on ECAs [18], [19], [20], which attach a memory to each cell to keep track of all or a limited amount of previous states of the cell. At each time step, every cell’s state is evaluated by a weighted sum of the previous states, or by the state most frequently appearing in the past. The incorporation of past states into cells can actually enrich the dynamics and improve the computing ability of the ECAs [18], [19], [20]. In comparison, our ACCAs take advantage of the past states of cells in a more natural and much simpler way. Especially, every cell in an ACCA carries a buffer per each neighbor that always stores one and only one state received from the neighbor through communication. This implies that, in general, when a cell changes its state using the states in each buffer, the cell is unaware of whether any buffered state is updated to the latest state of the corresponding neighbor.
Furthermore, in addition to the randomness in the updating order of cells, the unpredictable communication between cells tend to cause the emergence of more complex and distinct dynamics in an ACCA, as compared to a conventional ACA with the same set of cell states and identical transition function. Hence, there may arise a question whether it is possible to utilize the more complex dynamical behavior of ACCAs to perform any intended computation. Computing on cellular automata is a classic research topic [11], [12], [21] on which a number of effective schemes has been achieved [22]. For instance, a useful scheme for computing on ACAs is to simulate synchronous CAs [23], [24], [25], [26]. In this paper, we propose efficient methods to transform every synchronous CA into an equivalent ACCA, thereby proving the equivalence in computational ability between the ACCAs and conventional CAs.
This paper is organized as follows: Section 2 formalizes the ACCAs and analyses the communication delay in ECAs after redefining them in the framework of ACCAs. Section 3 investigates the asynchronous communication induced dynamics of ECAs, especially on their robustness to asynchronous communication. Section 4 shows the universality of ACCAs in computations, via two methods for simulating every synchronous CA by an equivalent ACCA. The paper finishes with conclusions in Section 5.
Section snippets
Cellular automata
Let and be the sets of all integers and positive integers, respectively. Assume . A cellular automaton is a dynamical system defined as , in which represents the d-dimensional array of cell space, is a finite set called the neighborhood index. Q is a finite set of cell states and is a function called the local transition function. In addition, is a special state, called quiescent state, that satisfies .
Let be a CA. Assume
Experiments on robustness of asynchronous communicating elementary cellular automata
To investigate the dynamical behavior, this section conduct numerical experiments on ACECAs by testifying their robustness to both asynchronous communication and transitions of cells (see also [1]). Fatés and Morvan [30] clarified the concept of robustness, with an aim to estimate whether a small change in the way the local transitions are performed can lead to brutal changes of the global behavior. They explored in the first place the robustness of ECAs to various -asynchronism, and then
Computational equivalence between synchronous cellular automata and asynchronous communicating cellular automata
Demonstrated by the ACECAs in Section 3, the ACCAs tend to yield remarkably different and more complex dynamics as compared to conventional CAs, which is not only because of the randomness in state transitions of cells, but also due to the unpredictability in communications between cells. Thus, there may arise a concern regarding the computability of the ACCAs. That is, is it possible to control the complex global behavior of ACCAs to conduct any desired computation? This section proposes
Conclusions
The diversity of protocols for synchronous and asynchronous communication tends to significantly affect the dynamics, performance or efficiency of distributed systems [8], [9], [10]. Conventional cellular automata, on the other hand, require each cell to be updated in accordance with the current states of all cells in the neighborhood, without specifying how information in form of the current state is transmitted between cells. With an aim to take the communication aspect into account, we
CRediT authorship contribution statement
Qin Lei: Software, Methodology, Writing - original draft. Tao Li: Software, Investigation, Formal analysis. Jia Lee: Conceptualization, Writing - review & editing, Supervision. Wen-Li Xu: Data curation, Formal analysis. Ferdinand Peper: Methodology, Supervision.
Declaration of Competing Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Acknowledgements
We are grateful to the reviewers for the careful reading and useful suggestions. This work was supported by National Key R&D Program of China, No. 2018YFD1100300.
References (45)
Universality and complexity in cellular automata
Physica D
(1984)- et al.
A perfect solution to the parity problem with elementary cellular automaton 150 under asynchronous update
Inf. Sci.
(2019) Reversible cellular automata with memory: two-dimensional patterns from a single site seed
Physica D
(2003)- et al.
Invertible behavior in elementary cellular automata with memory
Inf. Sci.
(2012) Two-dimensional cellular automata recognizer
Theoret. Comput. Sci.
(1999)(A-)synchronous (non-)deterministic cell spaces simulating each other
J. Comput. Syst. Sci.
(1978)- et al.
Asynchronous game of life
Physica D
(2004) - et al.
Synchronous and asynchronous updating in cellular automata
BioSystems
(1999) A study on delay-sensitive cellular automata
Physica A
(2019)- et al.
Chaos and ergodicity are decidable for linear cellular automata over (Z/mZ)n
Inf. Sci.
(2020)
Delay-insensitive computation in asynchronous cellular automata
J. Comput. Syst. Sci.
Characterization of random fluctuation-based computation in cellular automata
Inf. Sci.
Communication complexity in number-conserving and monotone cellular automata
Theoret. Comput. Sci.
Communication complexity and intrinsic universality in cellular automata
Theoret. Comput. Sci.
Reversible computing and cellular automata — a survey
Theoret. Comput. Sci.
On communicating finite-state machines
J. ACM
Asynchronous systems of parallel communicating finite automata
Fundamenta Informaticae
Consensus of multiagent systems and synchronization of complex networks: A unified viewpoint
IEEE Trans. Circuits Syst. I-Regular Papers
Average consensus in asymmetric broadcasting wireless sensor networks through gossiping, in
The capacity of wireless networks
IEEE Trans. Inf. Theory
Computational intelligence in wireless sensor networks: a survey
IEEE Press
Cited by (1)
Land use and land cover change simulation enhanced by asynchronous communicating cellular automata
2024, Theoretical Computer Science