Un autómata celular es un sistema dinámico discreto, que consta de dos elementos; un espacio celular y unas reglas de comportamiento.
Se trata de un dominio n-dimensional (n es en la mayoría de los casos uno o dos), cuyos elementos reciben el nombre de células. Cada una de dichas células tiene un estado determinado (un valor numérico en la práctica). Dicho estado puede estar contenido en un número finito de valores determinados a priori {p1, ..., pn}, (por ejemplo simulando células vivas o muertas {0 , 1} en el caso del juego de la vida) o tomar cualquier valor continuo (como en el caso de multitud de aplicaciones físicas). En este caso hablaremos de AC continuo. Téngase en cuenta, sin embargo, que el modelo es siempre discreto: en la práctica un ordenador sólo puede admitir un número finito de valores posibles distintos para una variable.
Se trata de unos algoritmos sencillos que permiten, conocido el estado del espacio celular en la etapa n-ésima, calcular su configuración en la etapa (n+1)-ésima. La sencillez viene dada por el hecho de que suponemos que sobre una célula no influyen más que ciertas células de sus proximidades, lo que se llama su entorno. Existen diferentes aproximaciones al concepto de entorno. En el caso más usual (dimensión 2):
Lo habitual es considerar una "función de entorno" f que a cada matriz (o el análogo n-dimensional ) le asigna el nuevo valor central o la nueva matriz en el último caso. La condición más frecuente que se impone es la no generación espontánea de actividad, es decir f(q) = j donde q y j denotan números, matrices o la estructura que corresponda.
El proceso consiste en ir recorriendo el espacio celular célula a célula, e ir calculando los nuevos valores de acuerdo con las reglas, para actualizarlo todo en bloque después de ello, a fin de evitar superposiciones.
No es habitual introducir restricciones a las reglas en la propia definición de autómata celular, puesto que se trata de construir un modelo lo más general posible. Algunos autores sin embargo introducen condiciones como la simetría respecto a la celda central (en entornos de Moore). De este tipo de restricciones la única que es aceptada casi universalmente es la de Wolfram: no se genera actividad espontáneamente ; es decir, si un entorno es nulo en una iteración lo es en la siguiente (entornos de Margolos y variantes) o produce que la célula central se mantenga nula (entornos de Moore y von Neumann).
Es posible permitir ligeras variaciones de los conceptos que hemos explicado con anterioridad. Por ejemplo en algunas aplicaciones no se considera un entorno fijo para cada célula, sino que según la paridad de la iteración influyen unas células u otras; también pueden permitirse correcciones globales además de las locales. Enunciaremos dos de las variantes más importantes:
|
|
|
|