Cellular automata, as with other multi-agent system models, usually treat time as discrete and state updates as occurring synchronously. The state of every cell in the model is updated together, before any of the new states influence other cells. In contrast, an asynchronous cellular automaton is able to update individual cells independently, in such a way that the new state of a cell affects the calculation of states in neiouring cells.
Implementations of synchronous updating can be ysed in two phases. The first, interaction, calculates the new state of each cell based on the neiourhood and the update rule. State values are held in a temporary store. The second phase updates state values by copying the new states to the cells.
In contrast, asynchronous updating does not necessarily separate these two phases: in the st case (fully asynchronous updating), changes in state are implemented immediately.
The synchronous approach assumes the presence of a global clock to ensure all cells are updated together. While convenient for preparing computer systems, this might be an unrealistic assumption if the model is intended to represent, for example, a living system where there is no evidence of the presence of such a device.
A general method repeatedly discovered independently (by K。 Nakamura in the 1970s, by T。 Toffoli in the 1980s, and by C。 L。 Nehaniv in 1998) allows one to emulate exactly the behaviour of a synchronous cellular automaton via an asynchronous one constructed as a modification of the synchronous cellular automaton (Nehaniv 2002)。 Correctness of this method however has only more recently been rigorously proved (Nehaniv, 2004)。 As a consequence, it follows immediately from results on synchronous cellular automata that asynchronous cellular automata are capable of emulating, e。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-51784-1.html
升級當天用了20來分鐘