Estás en la versión en español Click for an english version

La hormiga de Langton: Vida y obra

Click to go   ¿Qué es?
Click to go   ¿Qué hace?
Click to go   ¿Qué se sabe de ella?
Click to go   ¿De dónde salió?
Click to go   ¿Qué generalizaciones se pueden hacer?


¿Qué es?

La hormiga de Langton es un sistema dinámico discreto, determinista, muy simple. Este sistema puede ser visto como un autómata celular, como una máquina de Turing bidimensional, o como un sistema de agente(s). Cuando decimos que es discreto nos referimos a que es un mundo discreto, que se va modificando en tiempo discreto (es decir: "si se tiene tal estado de las cosas en el tiempo 0, entonces el estado de las cosas en el tiempo 1 será..."). El "mundo" es por lo general una malla cuadriculada bidimensional, que en principio podemos suponer infinita. Por razones prácticas, por lo general se hacen las simulaciones utilizando toros finitos, donde el borde superior de la malla se identifica con el inferior, y el izquierdo con el derecho. Cada posición de la malla (i.e., los puntos en que se juntan las líneas, también llamados "celdas" o "nodos") tiene un estado, que puede ser o blanco o negro (también se puede usar 0/1, verdadero/falso, o, directamente, izquierda/derecha). La hormiga es una cosa pequeña que camina por la malla, moviéndose de acuerdo a los estados que va encontrando, y cambiando esos estados al pasar por sobre ellos.

¿Qué hace?

La regla La hormiga siempre está pasando de una celda a otra. En cada instante de tiempo, entra a la celda en la que tenía la cabeza, dobla a la derecha o a la izquierda de acuerdo al estado de la celda (a la izquierda si encuentra blanco -o 0-, y a la derecha si no) y el estado de la celda es modificado, cambiando de blanco a negro o de negro a blanco. ¡Y eso es todo! No hay azar, no hay cálculos complicados, no hay visión a larga distancia.

Otros grafos: Una forma de ver la malla es como un conjunto de cuadrados, con líneas ("aristas") conectándolos, si es que son vecinos. Podemos extender la idea a otras mallas regulares: si se toma el dibujo de un panal, se ponen celdas en las uniones de las líneas, se considera vecinas a las celdas unidas por líneas, y voilà, se obtiene la malla hexagonal. La malla triangular se define de manera similar (véase el dibujo más abajo). Podemos definir la regla en una forma general para grafos arbitrarios, si tenemos un dibujo de ellos: la hormiga entra a un nodo (celda), y dobla a la izquierda o a la derecha, dependiendo del estado en que lo encuentre. En un grafo general, "doblar a la izquierda" significa tomar la siguiente arista, girando en torno al nodo en el sentido del reloj, a partir de la arista por la que la hormiga llegó.

malla hexagonal malla triangular un grafo

Dicho sea de paso: una extensión obvia del sistema es la inclusión de varias hormigas; la manera más sencilla de hacerlo es permitir a las hormigas correr simultáneamente por la malla, ignorándose unas a otras (incluso si pasan por los mismos sitios). Nosotros no hemos estudiado sistemas con hormigas múltiples: ¡la dinámica generada por una sola ya es lo bastante complicada! Un applet con hormigas múltiples se puede hallar aquí.

¿Qué se sabe de ella?

En la malla cuadriculada

t=96 t=384
Primero que nada, hablemos de lo que ocurre cuando echamos a correr la hormiga, partiendo con una malla vacía (en que todas las celdas tienen estado 0, blanco); aconsejamos verlo en el applet. En primera instancia, durante unos 500 pasos, la hormiga dibuja patrones simétricos, con simetría rotacional de orden 2 y 4. Después de la iteración 500, la simetría se rompe, y la hormiga parece volverse loca. Su andar parece aleatorio durante unos diez mil pasos. Entonces, de pronto, la hormiga pareciera tomar una decisión sobre dónde quiere ir: empieza a hacer una escalera, o "carretera" ("highway"), una estructura periódica.
t=1440 t=9540
Es un movimiento periódico, pero con un desplazamiento: después de 104 pasos, la posición de la hormiga vuelve a ser la misma que antes, pero en el peldaño siguiente de la escalera que está construyendo. La hormiga seguirá construyendo la escalera para siempre, si le damos un espacio infinito para hacerlo, y si no ponemos obstáculos en su camino. Una observación empírica muy interesante es la siguiente: si ponemos, al comenzar, cualquier cantidad finita de estados negros en la malla, entonces la trayectoria de la hormiga será, por supuesto, diferente en cada caso,
t=10640 t=12922
pero siempre acabará por ponerse a construir la escalera, en alguna dirección (se puede experimentar en el applet). Pero esto no está demostrado, ¡es sólo una observación! Este es el más bello de los problemas abiertos relativos a la hormiga: encontrar una demostración, o encontrar un contraejemplo. Por otro lado, hay un hecho más general que sí ha sido demostrado: la trayectoria de la hormiga es siempre no acotada. Los primeros en mostrarlo fueron Bunimovich y Troubetzkoy en 1992; el segundo de ellos generalizo más tarde el resultado, mostrando que el conjunto de celdas que la hormiga visita infinitas veces (para cualquier configuración inicial dada) no tiene esquinas [aquí una esquina del conjunto se define como una celda, dos de cuyos vecinos no están en el conjunto, y no se encuentran uno frente al otro (con la celda de por medio)].

En la malla hexagonal

t = 72 t = 408 t = 810 t = 2600 t = 15600
periodica Cuando se consideran otras mallas regulares, el resultado sigue siendo interesante, pero es dramáticamente distinto. En la malla hexagonal, cuando la hormiga empieza de una configuración con todo en blanco, va dibujando patrones de tamaño creciente, con simetría bilateral, volviendo siempre al origen (ver los dibujos arriba). Más aún, en este caso es posible encontrar configuraciones para las cuales la trayectoria de la hormiga es periódica (y por lo tanto acotada). Una de ellas, con período 92, se muestra a la derecha, y está disponible en el applet.

En la malla triangular

La dinámica es muy simple en la malla triangular. Para cualquier configuración inicial, la hormiga pronto (al cabo de 3 ó 4 pasos) escoge una dirección, y luego la sigue, con su movimiento limitado a dos corridas de celdas, sean cuales sean los estados que encuentre. Aquí se muestran dos ejemplos; las celdas visitadas se destacan con un borde negro.
Mucho de lo que se ha hecho respecto a la hormiga ha sido "experimental", y aún escasean los resultados exactos; la mayor parte de los que existen se pueden encontrar en las referencias (véase la
Bibliografía).

¿De dónde salió?

La hormiga fue bautizada de acuerdo a su primer descubridor, Chris Langton, quien estaba buscando modelos simples con comportamientos complejos, y la presentó (junto a otros sistemas) en un artículo en Physica D en 1986. Estaba interesado en las propiedades fundamentales de los sistemas biológicos, y es considerado uno de los padres (o el padre) del reciente y popular campo de la vida artificial. Pero la hormiga no fue descubierta solamente en esa ocasión. En 1988 Greg Turk, un estudiante de postgrado en computación, consideró varios ejemplos de máquinas de Turing bidimensionales, permitiendo a las máquinas caminar sobre su cinta (bidimensional) en lugar de hacer que la cinta se moviera bajo ellas. Una de las "tur-mitas" así creadas fue exactamente la hormiga de Langton, y es mostrada (con la escalera incluida) en el artículo en Scientific American en el que A.K. Dewdney presentó los hallazgos de Turk.

La tercera vez, la hormiga apareció en el reino de la física. Existen varios modelos para la simulación microscópica de la dinámica de los fluidos. En los gases en redes de Lorenz ("Lorenz Lattice Gases"), una partícula se mueve entre desviadores fijos, que modifican su trayectoria y eventualmente pueden ser modificados a su vez por las colisiones. Uno de estos modelos, el de Ruijgrok-Cohen, corresponde a la hormiga. De hehco, mucho de lo que se ha investigado sobre la hormiga ha corrido por cuenta de Cohen y sus colaboradores. (Nótese que este es E.G. Cohen, que no debe ser confundido con el Jack Cohen que mencionamos en la página de enlaces.)

¿Qué generalizaciones se pueden hacer?

Evidentemente, la cantidad de generalizaciones posibles es infinita; aquí sólo mencionaremos aquellas que han sido examinadas en alguna publicación.

Como ya vimos más arriba, la primera generalización posible es considerar mallas distintas de la cuadriculada. Esta es una extensión razonable, pues no existe ningún motivo especial para suponer que una cuadrícula es la mejor aproximación para las interacciones bidimensionales; más aún, como se vio antes, la dinámica del sistema depende fuertemente de la topología del grafo subyacente. Una extensión adicional en esta dirección es incluir grafos bi-regulares cualquiera, o grafos planares generales (lo que se ha hecho en nuestro grupo), o considerar dimensiones superiores, como ha hecho L. Bunimovich.

Por otro lado, también puede reducirse la dimensión de la malla: es posible definir la hormiga sobre una línea. Como la dinámica resultante es bastante trivial, se han considerado varias definiciones alternativas para la regla (algunas por parte de A. Gajardo en nuestro grupo, algunas por L. Bunimovich).

También se han explorado definiciones alternativas de la regla para la malla cuadriculada. Una generalización, que incluye varias reglas, fue considerada por Jim Propp, y define la regla a través de una cadena de estados ("rule-string"): en lugar de pasar de 0 a 1 y de vuelta, la celda escoge sus estados sucesivos siguiendo una cadena, como, por ejemplo, 001011. Algunas de las hormigas resultantes construyen escaleras; otras tienen dibujos simétricos crecientes como los de la malla hexagonal, otras parecen ser "caóticas"... etc.

Algunas personas han utilizado múltiples hormigas, a veces con interacción no trivial entre sí. Otras posibilidades son la inclusión de más memoria, de más información, etc.


Última actualización: 03-31-2002.
Contacto:
agajardo@dim.uchile.cl