a cellular automaton is a model used in computer science and mathematics. the idea is to model a dynamic system by using a number of cells. each cell has one of several possible states. with each "turn" or iteration the state of the current cell is determined by two things: its current state, and the states of the neighbouring cells.