Modelo 1: El Juego de la Vida de John Conway

En los 70’s, John H. Conway, matemático británico, propuso uno de los autómatas celulares más estudiados, LIFE o también conocido como el Juego de la Vida. Este modelo fue popularizado por primera vez por Martin Gardner en su columna de juegos matemáticos de la revista Scientific American. El modelo se desarrolla en una retícula bidimensional donde cada celda puede tomar dos estados posibles {0, 1}. Las reglas del juego son muy simples y consisten en actualizar el estado de cada una de las celdas a partir de la información de las celdas vecinas. Estas reglas de carácter local generan una gran diversidad de comportamientos de manera global, en otras palabras, reglas simples generan comportamiento complejo. En esta actividad estudiaremos algunos de los patrones y dinámicas que genera.


Los automatas celulares son sistemas dinámicos discretos compuestos de manera espacial por un conjunto de celdas homogéneas ordenadas en forma retícula y una parte temporal definida por ciertas reglas de aplicación. LIFE o el Juego de la Vida es un automata celular bidimensional con dos posibles estados: 0 y 1, a menudo se describen como celdas apagadas (cero) y prendidas (uno); el tiempo de evolución es discreto, t=0,1,...,k. La actualización del estado de la celda está regida por los valores de sus ocho celdas adyacentes a través de una vecindad de Moore. Las reglas locales de evolución generan una gran diversidad de comportamientos, surgen estructuras estables, no hay cambio a través del tiempo; periódicas, se repiten cada cierto tiempo, e inestables, cambian y no persisten en el tiempo. Apartir de la definición de la condición inicial (celdas prendidas) se pueden definir dinámicas, que resultan en comportamientos complejos. Se demostró que el juego de la vida es equivalente a una máquina de Turing, lo que implica que el sistema tiene la capacidad para implementar procesos algorítmicos.

Keywords: automata celular, LIFE, el juego de la vida, reglas simples.

Entorno

  1. El entorno se constituye por una reticula homogéna de n x n celdas, donde usualmente n = 100.
  2. Se condieran fronteras periódicas (toro) o cerradas.
  3. La condición inicial puede ser aleatoria o con un patrón determinado.
life reticula
Figura 1: retícula con una condición inicial aleatoria.
Reglas

Las reglas de interacción son las siguientes:
  1. Nace: si la celda está apagada (cero) y tiene exactamente 3 vecinos vivos alrededor, la celda se prende (uno).
    life reticula
  2. Muere: cambia el estado prendido por apagado si sucede cualquiera de estos casos, si la celda tiene un solo vecino muere por aislamiento o si la celda tiene más de tres vecinos muere por sobrepoblación.
  3. life reticula
    life reticula
  4. Vive: la celda se mantiene viva si tiene 2 o 3 vecinos a su alrededor.
  5. life reticula
La aplicación de esta reglas a toda la retícula generan nuevos comportamientos que no se encuentran codificadas en las reglas. A partir de la condición inicial (conjunto de celdas prendidad en el tiempo cero), se pueden definir comportamientos específicos, por ejemplo, estructuras fijas o periódicas. ¿Qué tipo de condiciones inciales generan comportaimientos interesantes?

La interfaz del modelo

La interfaz esta constituida por la ventana del "espacio" o "entorno" donde se muestra la evolución del sistema a través del tiempo (Figura 2).
Consta de dos botones:
  • Botón "setup"
  • Botón "go"
El botón "setup" se utiliza para iniciar o reiniciar el modelo, actualiza el estado inicial del sistema para comenzar la simulación, y el botón "go" ejecuta la simulación. El seleccionador "condiciones_iniciales" tiene preestablecidos varios patrones inciales que generan dinámicas interesantes. Por otro lado, el cambio de las celdas prendidas a través del tiempo se pueden seguir con la gráfica "Vivas".

fig-1
Figura 2: Partes básicas de la interfaz del modelo.
Inicialización del sistema

Con la inicialización del sistema ("setup"), comienza la ejecución del simulador ("go") y se podrá observar cual es el resultado de la aplicación de las 4 reglas de interacción entre las celdas. Cuando la condición inicial se establece en "aleatorias", el deslizador de densidad prende el porcentaje de celdas marcadas por el usuario (Figura 3).
fig-1
Figura 3. El seleccionador tiene 15 condiciones inciales distintas para probar los comportamientos.
Usualmente, como primer acercamiento para estudiar un sistema, se incializa el sistema con condiciones iniciales aleatorias. En el caso del Juego de la Vida se encontraron condiciones iniciales específicas para generar distintos tipos de comportamintos. En una retícula de 100 x 100 celdas, ¿cuantas posibles condiciones iniciales distintas podemos definir?, ¿podríamos explorarlas?

Dinámica del modelo

Se pueden realizar ejecuciones del simulador con diferentes condiciones inciales. Para dar un seguimiento de la dinámica se debe observar la ventana del entorno, ¿cómo evoluciona?, ¿surgen patrones interesantes? Con la gráfica "Vivas" se mide de manera global como cambian el estado de las celdas a través del tiempo. Pruebe el simulador apretando el botón de abajo.

  1. Ejecute el sistema con una condición inicial aleatoria con densidad de 30%. ¿Qué patrones surgen en el sistema? Observas algún tipo de patrón o comportamiento diferente de algo aleatorio.
  2. ¿Que tipo de patrones observas? ¿permanecen en el tiempo? ¿se destruyen?
  3. Ejecuta nuevamente el modelo y busca un patrón que se desplaza en el espacio, como si "caminara", ¿lo encontraste?
  4. Este patrón que camina se llama planeador o glider. Ejecuta la condición inicial "pistola_de_gliders", ¿cada cuanto tiempo se genera un glider?
  5. Escoge la condición inicial "pi_orbital_p168". ¿Qué tipo de dinámica exhibe? ¿aleatoria? ¿periódica? ¿caótica?
  6. ¿Se puede encontrar un algoritmo con el cual podamos predecir el tipo de evolución de un patrón dado?

El Juego de la Vida de John Conway se convirtió en un icono de los modelos y simulaciones computacionales basados en autómatas celulares. A partir de reglas sencillas se genera comportamiento complejo. El modelo tiene propiedades de cómputo universal, es decir, en teoría se puede implemetar cualquier proceso algorítmico instanciando el modelo con una entrada adecuada.

Su popularidad ha llevado a la construcción de sitios web donde se reportan día con día nuevos patrones. En el sitio https://www.conwaylife.com/wiki/Main_Page se puede encontrar uno de los compendios más importantes con más de 1360 patrones reportados.


  • Gardner, M. (1970). Mathematical games. The fantastic combinations of John Conway's new solitaire game "life". Scientific American, Vol. 223, No. 4, pp. 120-123.
  • Poundstone, W. (2013). The Recursive Universe. Cosmic Complexity and the Limits of Scientific Knowledge. Dover Publications, Inc.
  • Durand, B., & Róka, Zs. (1998). The Game of Life: universality revisited. Laboratoire de l'Informatique du Parallélisme, Research Report No. 98-01.