Una Introducción a los Autómatas Celulares

Luis Fernando González Vargas
Docente Área de Computación

Resumen

En este artículo se introducen los Autómatas Celulares como una de las herramientas de la inteligencia artificial, utilizada para la representación directa y discreta de comportamientos complejos de algunos sistemas físicos, mecánicos, biológicos y químicos.  Se define la estructura básica de un Autómata Celular, se introducen sus conceptos asociados y se plantean las mínimas consideraciones que deben tenerse en cuenta para solucionar problemas por medio de esta técnica.  Finalmente, se enuncian algunos ejemplos representativos y se presenta la descripción detallada y una ejecución, en Applets de Java, de dos de los Autómatas clásicos:  el "Juego de la Vida" y "Mayoría Alineada".
 

Abstract

In this article the basic concepts are introduced associate to the Cellular Automata, like tool of the used artificial intelligence for the construction of discreet models of some physical, biological and chemical systems. The basic structure of a Cellular Automata is defined and the basic considerations to solve problems by means of this technique. Finally, some classic examples are enunciated and the detailed description appears and an execution, in Java Applets, for two Automata: the "Life" and "Aligned Majority"Not english version avaliable.


1. Introducción

El modelamiento de la mayoría de sistemas físicos, eléctricos y mecánicos, está basada en métodos y expresiones matemáticas, las cuales representan teóricamente el comportamiento de dichos sistemas.  Generalmente, para modelar sistemas de naturaleza contínua, son utilizadas las ecuaciones diferenciales, las integrales funcionales y las variables de estado, entre otras.  Algunos procedimientos de discretización y digitalización de sistemas, permiten realizar análisis numéricos sobre modelos aproximados.

Una técnica matemática compleja utilizada para modelar algunos sistemas físicos y mecánicos es el Método de los Elementos Finitos (FEM), cuya finalidad es discretizar espacios de naturaleza contínua, sobre los cuales es posible realizar análisis numéricos para comprender, por medio de un modelo discreto, el comportamiento de sistemas analógicos.  No obstante, la complejidad de aplicar FEM sobre algunos sistemas es tal, que resulta difícil lograr modelos que describan con precisión sus comportamientos.  FEM es de amplia utilización en análisis de sistemas y espacios físico-mecánicos donde el objetivo sea comprender la resistencia de materiales, la dinámica de partículas y en general el comportamiento y la interacción de los elementos base del sistema en el espacio; pero quedan aún muchos sistemas complejos y de diversa naturaleza en los cuales no es convencional aplicar esta técnica, por ejemplo, sistemas químicos, biológicos, evolutivos, genéticos, eléctricos, computacionales e inclusive otros físicos y mecánicos.  Para el modelamiento de este tipo de sistemas quedan aún tres opciones:  Lograr un modelo de naturaleza contínua (en aquellos sistemas analógicos), en el cual se requiere expresiones de funciones contínuas; utilizar métodos aproximativos de discretización (sin embargo, se tienen problemas de digitalización del modelo) o modelar con un Autómata Celular.

Los Autómatas Celulares son estructuras ideales para construir modelos digitales aproximativos de algunos sistemas complejos de naturaleza contínua, sin pasar por modelos analógicos.  Es posible, por ejemplo, lograr sencillos modelos digitales que representen con suma fidelidad algunas leyes de la física.
 

2. Estructura de un Autómata Celular

Un Autómata Celular es una herramienta computacional que hace parte de la Inteligencia Artificial basada en modelos biológicos, el cual está básicamente compuesto por una estructura estática de datos y un conjunto finito de reglas que son aplicadas a cada nodo o elemento de la estructura.  El interés que ha despertado esta técnica radica en la sencillez y en la simplicidad que caracteriza la construcción de los modelos; además, en la particularidad de los patrones de comportamiento presentados por el Autómata en tiempo de ejecución.

Basados en el planteamiento que presenta Muñoz6 acerca de la estructura de un Autómata Celular, se definen como sus componentes básicos:

Según Toffoli y Margolus7, se define un Autómata Celular sólo si se tiene que todas las celdas:

2.1  Consideraciones adicionales

Un Autómata Celular puede ser construido definiendo alguna especificación para cada uno de sus componentes, es decir, de alguna forma se definirá su teselación, los posibles estados, las vecindades y la regla de evolución; no obstante, se tienen unas consideraciones y posibilidades con estos componentes, las que permitirán cierta flexibilidad en el momento de construir el autómata.

3. Algunos ejemplos y aplicaciones

Tal vez, lo más llamativo e interesante de los Autómatas Celulares es el comportamiento presentado por el modelo en tiempo de ejecución y la similitud de éste con la complejidad de la naturaleza contínua.  "Life" o "El Juego de la Vida", por ejemplo, simula la existencia de diferentes "formas de vida" sobre un espacio bidimensional, las cuales presentan singular comportamiento a través del tiempo; "Evolución" es un autómata que simula cómo un conjunto de microbios sobreviven comiendo bacterias; y "Mayoría Alineada" muestra cómo es el comportamiento de la tensión superficial entre líquidos no permeables.  A continuación, algunos ejemplos de Autómatas Celulares (tomados de Muñoz6). El modelar un sistema del mundo real por medio de un Autómata Celular, requiere que se conozca al menos su comportamiento global.  Si conocido este comportamiento se quiere deducir un conjunto de reglas de evolución local que lo genere, entonces se desea desarrollar el autómata por el Problema Inverso.  De lo contrario, si se desea primero experimentar y ajustar una Regla de Evulución pseudo-aleatoria hasta lograr un comportamiento similar al del sistema real, entonces se desea desarrollar el autómata por el Problema Directo.  No obstante, se puede lograr algo intermedio, a partir de comportamientos locales del sistema real construir una regla de evolución local y ponerla a prueba para determinar si se logra un autómata que modele el comportamiento del sistema global, a esto se el denomina el Problema Intermedio.

Dependiendo de la naturaleza compleja de un sistema y de la posibilidad de identificar estados locales y reglas generales de evolución, se podrían simular comportamientos por medio de Autómatas Celulares; por ejemplo, los mundos y sistemas enunciados a continuación son susceptibles a un modelamiento por esta técnica:  Simulación de tráfico automotor, virus, glóbulos, epidemias, bacterias, contaminación, ecosistemas, evolución galáctica, flujo de electrones, acción & reacción, medios granulares y gases de Fermi entre otros.


4. Dos autómatas implementados

 
"El Juego de la Vida"

 
Teselación: Cuadrícula homogénea.
Estados: Cuatro estados:
  • Vivo (negro)
  • Muerto (blanco)
  • "Recién" Vivo (gris oscuro)
  • "Recién" Muerto (gris claro)
  • Estado Inicial: Configuración aleatoria.
    Vecindad: Cuadrícula de 3x3 centrado en una celda.  Incluye la celda del centro.
    Regla de Evolución:
  • Una celda viva permanece viva sólo si en la vecindad hay 2 ó 3 celdas vivas, de lo contrario se muere.
  • Una celda muerta cambia a viva sólo si en la vecindad hay exactamente 3 celdas vivas, de lo contrario sigue muerta.
  •  

    "Life"
    John Hourton Conway

    Modelo celular de Berchelamp, Conway y Guy1;
    Gardner4.
    "Mayoría Alineada"

     
    Teselación: Cuadrícula homogénea.
    Estados: Cuatro estados:
  • Vivo (negro)
  • Muerto (blanco)
  • "Recién" Vivo (gris oscuro)
  • "Recién" Muerto (gris claro)
  • Estado Inicial: Configuración aleatoria.
    Vecindad: Cuadrícula de 3x3 centrado en una celda.  Incluye la celda del centro.
    Regla de
    Evolución:
  • Si en una vecindad la mayoría de celdas están vivas, entonces la celda del centro deberá estar viva; excepto para exactamente 5 celdas vivas, si es así, entonces deberá estar muerta.
  • Si en una vecindad la mayoría de celdas están muertas, entonces la celda del centro deberá estar muerta; excepto para 4 celdas muertas, si es así, entonces deberá estar viva.
  •  
    "Mayoría Alineada"

    Modelo celular de Dedwdney2.


    5. Conclusiones

    Es típico de un Autómata Celular generar comportamientos complejos a partir de reglas muy sencillas.  En conclusión, un Autómata Celular está compuesto por: Son útiles en la construcción de modelos donde los elementos base o componentes (actores) son de similar naturaleza y comportamiento; donde éstos se rigen por reglas parecidas y donde, en el mismo sistema real, se identifican componentes diferenciables, independientes, aislables y/o discretos.

    Como propuesta de proyecto, se plantea desarrollar un programa computacional que permita la creación, edición y ejecución de Autómatas Celulares.  Este programa, como entorno integrado de desarrollo, deberá permitir:  definir la dimensión de la teselación, la vecindad, los estados, la regla de evolución y el estado inicial, entre otros.  Se podrá visualizar paso a paso la evolución del autómata como también la configuración luego de haber ejecutado n pasos de evolución.  Además, como cualquier programa, deberá permitir la manipulación de los autómatas en archivos, la edición de los mismos, el manejo de gráficas y los correspondientes menús de ayuda y documentación.

    6. Palabras Clave

    Autómata(s) Celular(es), Celda(s), Discretizar, Ecuación(es) Diferencial(es), Elementos Finitos (FEM), Estado Local, Estado Global, Estados, Estructura(s) Estática(s) de Dato(s), Integral(es) Funcional(es), Inteligencia Artificial (IA), Modelo(s), Modelos Biológicos, Problema Directo, Problema Intermedio, Problema Inverso, Regla de Evolución, Regla(s) Local(es), Reloj Virtual de Cómputo, Sistema(s), Sistema(s) Análogo(s), Sistema(s) Complejo(s), Sistema(s) Discreto(s), Teselación, Variables de Estado, Vecindad.
     

    7. Referencias en Línea


    8. Referencias Bibliográficas

     
    [1] BERCHELAMP, Elwyn; CONWAY, John y GUY, Richard. Winning Ways.  Academic Press, 1982.
    [2] DEWDNEY, A. K.  Artículo:  JUEGOS DE ORDENADOR, en:  Investigación y Ciencia.  No. 145, 1988.
    [3] DEWDNEY, A. K.  Artículo:  JUEGOS DE ORDENADOR, en:  Investigación y Ciencia.  No. 154, 1989.
    [4] GARDNER, Martin.  Wheels:  Life and other Mathematical Amazements.  W. H. Freeman and Company, 1983.
    [5] HARDY, J.; DE PAZZIS, O. y POMEAU, Y.  Molecular Dynamics of a Classical Lattice Gas:  Transport Properties and Time Correlation Functions.  Physical Review, No. 5, 1976.
    [6] MUÑOZ CASTAÑO, José Daniel.  Artículo: AUTÓMATAS CELULARES Y FÍSICA DIGITAL, en:  Memorias del Primer Congreso Colombiano de NeuroComputación.  Santafé de Bogotá, D. C.:  Academia Colombiana de Ciencias Exactas, Físicas y Naturales, 1996.  28 p.  ISBN 958-9205-17-8.
    [7] TOFFOLI, Tommaso y MARGOLUS, Norman.  Cellular Automata Machines:  A New Environment for Modeling.  The MIT Press, Cambridge MA, 1987.

    Editado el 15 de Marzo de 1999.
    Primera Versión.