Cellular automata are self-generating computer graphics movies. The net effect of the individual updates is that you see an ever-evolving sequence of screens. That is, we think of all of the updates being done at once. Locality means that when a cell is updated, its new color value is based solely on the old color values of the cell and of its nearest neighbors.
Homogeneity means that each cell is updated according to the same rules.
Typically the color values of the cell and of its nearest eight neighbors are combined according to some logico-algebraic formula, or are used to locate an entry in a preset lookup table. Cellular automata can act as good models for physical, biological and sociological phenomena. As a simple example of a physical cellular automaton, imagine sitting at the edge of a swimming pool, stirring the water with your feet. CelLab allows you to explore cellular automata on your own personal computer, running under MS-DOS or Windows . Complete source code for all of these rule definitions is included in both Java and Pascal, allowing you to use our rule definitions as the point of departure for your own experiments.