Un subconjunto de aut omata celular con...

7
Un subconjunto de aut´omata celular con comportamiento complejo en dos dimensiones GenaroJu´arezMart´ ınez * , Adriana Menchaca M´ endez y Miriam Mecate Zambrano Diciembre, 2005 Resumen Modelos matem´ aticos con la capacidad de soportar comportamiento complejo han sido formulados y an´ alizados a trav´ es de la historia de las matem´ aticas. Nosotros estudiamos un modelo discreto en dos di- mensiones conocido como aut´ omata celular. Dentro de estos sistemas din´ amicos existen funciones que pueden soportar comportamiento complejo, como el famoso “Juego de la Vida.” En este art´ ıculo presentamos un nuevo subconjunto de reglas que so- portan part´ ıculas y que llamamos Life 2c22. Adem´ as calculamos sus mutaciones con la capacidad de soportar comportamientos del tipo reacci´ on-difusi´ on a trav´ es de choques entre part´ ıculas. Palabras clave: aut´ omata celular, gliders, Life 2c22 1 Introducci´ on Aut´ omata celular es un modelo matem´ atico desar- rollado por John von Neumann en los a˜ nos 40 [12]. Desde los or´ ıgenes de aut´ omata celular un prob- lema fundamental es encontrar funciones que so- porten comportamiento complejo, es decir, que con- * Departamento de Programaci´on y Desarrollo de Sistemas, Escuela Superior de C´omputo, Instituto Polit´ ecnico Nacional, exico DF. http://uncomp.uwe.ac.uk/genaro/ Escuela Superior de C´omputo, Instituto Polit´ ecnico Na- cional, M´ exico DF. [email protected] Escuela Superior de C´omputo, Instituto Polit´ ecnico Na- cional, M´ exico DF. [email protected] tengan elementos de un conjunto dado y al momento de transformarlos, ´ ellos generan nueva informaci´ on no predecible en conjuntos con un igual o mayor umero de elementos. Consecuentemente, la comple- jidad espacial puede crecer dr´ asticamente, ´ esta car- acter´ ıstica nos permite pensar en la simulaci´ on de complicados procesos biol´ ogicos, qu´ ımicos, f´ ısicos o computacionales. En problemas como: crecimiento de epidemias, reacciones del tipo difusi´ on, solitones o computaci´ on universal [1, 4, 11, 13] (por mencionar algunos). El aut´ omata celular m´ as famoso es el conocido “Juego de la Vida” propuesto orginalmente por el matem´ atico John Horton Conway a finales de los 60’s y divulgado por Martin Gardner en su columna del Scientific American [6], despertando el inter´ es de var- ios investigadores. El resultado m´ as trascendente fu´ e la implementaci´ on de compuertas l´ ogicas para con- struir una m´ aquina de registros (equivalente Turing), a trav´ es de una construcci´ on de computaci´ on no con- vencional [1] y por lo tanto demostrar que el Juego de la Vida es computacionalmente universal [9]. El aut´ omata celular de Conway consta de un con- junto binario de estados, una funci´ on de transici´ on que evalua una c´ elula central con respecto a la suma de sus ocho vecinos ortogonales y diagonales en un espacio Euclidiano. De esta manera, todo el espacio es actualizado simult´ aneamente en cada iteraci´ on. En la parte superior de la figura 1 mostramos un estado inicial aleatorio en un espacio de 200 × 200 con una densidad de 0.5 que representa el espacio de evoluciones. En la parte inferior se muestra su 1

Transcript of Un subconjunto de aut omata celular con...

Un subconjunto de automata celular con comportamiento complejo

en dos dimensiones

Genaro Juarez Martınez∗, Adriana Menchaca Mendez†

y Miriam Mecate Zambrano‡

Diciembre, 2005

Resumen

Modelos matematicos con la capacidad de soportarcomportamiento complejo han sido formulados yanalizados a traves de la historia de las matematicas.Nosotros estudiamos un modelo discreto en dos di-mensiones conocido como automata celular. Dentrode estos sistemas dinamicos existen funciones quepueden soportar comportamiento complejo, comoel famoso “Juego de la Vida.” En este artıculopresentamos un nuevo subconjunto de reglas que so-portan partıculas y que llamamos Life 2c22. Ademascalculamos sus mutaciones con la capacidad desoportar comportamientos del tipo reaccion-difusiona traves de choques entre partıculas.

Palabras clave: automata celular, gliders, Life2c22

1 Introduccion

Automata celular es un modelo matematico desar-rollado por John von Neumann en los anos 40 [12].Desde los orıgenes de automata celular un prob-lema fundamental es encontrar funciones que so-porten comportamiento complejo, es decir, que con-

∗Departamento de Programacion y Desarrollo de Sistemas,Escuela Superior de Computo, Instituto Politecnico Nacional,Mexico DF. http://uncomp.uwe.ac.uk/genaro/†Escuela Superior de Computo, Instituto Politecnico Na-

cional, Mexico DF. [email protected]‡Escuela Superior de Computo, Instituto Politecnico Na-

cional, Mexico DF. [email protected]

tengan elementos de un conjunto dado y al momentode transformarlos, ellos generan nueva informacionno predecible en conjuntos con un igual o mayornumero de elementos. Consecuentemente, la comple-jidad espacial puede crecer drasticamente, esta car-acterıstica nos permite pensar en la simulacion decomplicados procesos biologicos, quımicos, fısicos ocomputacionales. En problemas como: crecimientode epidemias, reacciones del tipo difusion, solitones ocomputacion universal [1, 4, 11, 13] (por mencionaralgunos).

El automata celular mas famoso es el conocido“Juego de la Vida” propuesto orginalmente por elmatematico John Horton Conway a finales de los 60’sy divulgado por Martin Gardner en su columna delScientific American [6], despertando el interes de var-ios investigadores. El resultado mas trascendente fuela implementacion de compuertas logicas para con-struir una maquina de registros (equivalente Turing),a traves de una construccion de computacion no con-vencional [1] y por lo tanto demostrar que el Juegode la Vida es computacionalmente universal [9].

El automata celular de Conway consta de un con-junto binario de estados, una funcion de transicionque evalua una celula central con respecto a la sumade sus ocho vecinos ortogonales y diagonales en unespacio Euclidiano. De esta manera, todo el espacioes actualizado simultaneamente en cada iteracion.

En la parte superior de la figura 1 mostramos unestado inicial aleatorio en un espacio de 200 × 200con una densidad de 0.5 que representa el espaciode evoluciones. En la parte inferior se muestra su

1

evolucion en 500 generaciones aplicando el Juego dela Vida. Debemos notar que los comportamientosgenerados son identificados por orbitas periodicas es-tables u ocilatorias, caoticas y complejas, donde lasdos ultimas son sensibles a condiciones iniciales o enel proceso de evaluacion. En la figura 2 ilustramosvarios patrones1 importantes e interesantes descu-biertos en el Juego de la Vida. Varios de ellos sonutilizados para simular complicados procesos en unarepresentacion no convencional.

Particularmente, en el caso binario para funcionessemi-totalısticas existen pocas reglas que intentantener la misma capacidad, entre ellas podemos men-cionar: HighLife y Life 1133.2 Nuestra contribucionen el area, es con un subconjunto de funciones quellamamos “Life 2c22” (donde c toma valores entre2 y 8) con la capacidad de soportar gliders (estruc-turas periodicas desplazandose en el espacio de evolu-ciones) conocidas tambien como partıculas o locali-dades moviles auto-localizadas, y por lo tanto tenerla capacidad de producir comportamientos comple-jos. El parametro c permite analizar las diferentesmutaciones de nuestro subconjunto [14].

2 Subconjunto de reglas sopor-tando partıculas

Un automata celular es un sistema dinamico discretoevolucionando en el tiempo en n-dimension. For-malmente, decimos que un automata celular es un4-tupla:

< K,ϕ,V, c0 > (1)

donde K es un conjunto finito de estados, ϕ la funcionde transicion ϕ : KV → K, c0 la configuracion inicialdel sistema y V la vecindad isotropica (los vecinosortogonales y diagonales con respecto a una celulacentral xi,j ∀ i, j ∈ {−1, 0, 1}). La funcion local ϕdetermina una funcion global: Φ : KZ×Z → KZ×Z,

1Utilizamos la terminologıa definida en elJuego de la Vida que puede ser consultado desdehttp://www.pentadecathlon.com/LifeInfo/LifeInfo.html

2Tu puedes consultar las referencias completas de estosy otros automatas con comportamiento complejo desdehttp://uncomp.uwe.ac.uk/genaro/otherRules.html

Figura 1: Evolucion aleatoria en el Juego de la Vida.

que representa todas las funciones continuas de KZ×Z

a si mismo, por lo tanto, c0 ∈ KZ×Z.

Sea K = {0, 1} el conjunto de estados, V esla vecindad isotropica que representa el numero decelulas en la funcion, por lo tanto V = 8 y x0 lacelula central en estudio, donde x0 = xi,j y las celulasx1, . . . ,xV = xi−1,j−1, . . . , xi+1,j+1 son sus vecinos,para toda xi ∈ K.

2

Figura 2: Diferentes estructuras en el Juego de la Vida tal como: gliders, blinkers, flip-flops, Jardın delEden, eaters, still lifes y varios ciclos life son ilustrados.

ϕ =

8>>>>>>>><>>>>>>>>:1 si

8>>>><>>>>:x0 = 0 y Bmin ≤

VPi=1

xi ≤ Bmax

x0 = 1 y Smin ≤VP

i=1xi ≤ Smax

0 en otro caso(2)

En la Ecuacion 2 la funcion ϕ define la transfor-macion local. Las variables Bmin y Smin indican elnumero mınimo de celulas ocupadas por el estado 1en V y las variables Bmax y Smax el numero maximo

de celulas ocupadas por el estado 1 en V, ambos en untiempo t. Si x0 = 0 en el tiempo t, entonces x0 = 1en el tiempo t + 1 si Bmin ≤

∑Vi=1 xi ≤ Bmax. Si

x0 = 1 en el tiempo t, entonces x0 = 1 en el tiempot + 1 si Smin ≤

∑Vi=1 xi ≤ Smax, y 0 en cualquier

otro caso.Finalmente, una regla de evolucion semi-

totalıstica en dos dimensiones se representa como:R(Smin, Smax, Bmin, Bmax),3 donde 1 ≤ B ≤ S ≤ 8.

3B significa nacimiento y S sobrevivencia de una celula xi,j

(otra representacion comunmente utilizada es S/B, por ejemploel Juego de la Vida se representa como S23/B3 o R(2333)). Lareferencia de celulas vivas (estado 1) y celulas muertas (estado

3

Figura 3: Comportamientos en Life 2c22 desde condi-ciones iniciales aleatorias con una densidad inicial conc0 = 0.01 hasta 10 generaciones, para Life 2222 y2822 respectivamente.

De esta manera, Life 2c22 representa el sub-conjunto de reglas de evolucion semi-totalısticas{R(2222), . . . , R(2822)} (todas sus mutaciones posi-bles). En la figura 3 ilustramos la distribucion deestados cuando asignamos una densidad inicial conc0 = 0.01 y aplicamos Life 2222 y Life 2822 hasta10 generaciones respectivamente. En este momentopodemos identificar el tipo de estructuras que surgen.Una busqueda sistematica nos permite enumerar to-

0) se origina a partir del automata de Conway [6] y de maneraindirecta era referenciado como los origenes de vida artificialen los primeros resultados obtenidos por von Neumann [12].

das las estructuras de Life 2c22 [3]. En la figura 4ilustramos una estructura con desplazamiento y otraestacionaria oscilando.

t=1t=0

t=2t=1t=0

(a)

(b)

Figura 4: Dos tipos de partıculas en Life 2c22: (a)glider de perıodo uno y (b) flip-flop de perıodo dos.

2.1 Reacciones producidas porchoques entre partıculas en Life2c22

Una vez determinada la existencia de gliders, blink-ers y puffer trains en Life 2c22, entonces podemos re-alizar choques entre ellos, para encontrar objetos in-teresantes que nos permitan implementar algun pro-ceso en particular, tal como, la formacion de pa-trones, simulacion de racciones quımicas, vida ar-tificial o la implementacion de operaciones logicas[2, 4, 5, 7, 8, 10, 11, 13].

En la figura 5 presentamos cual es el resultadocuando dos gliders a 180 grados chocan viajando so-bre el eje horizontal en una distancia par. La mor-fologıa es producida por una reaccion-difusion, dondepodemos tener difusiones simetricas dentro del espa-cio de evoluciones, pero esto es originado porque losgliders se encontraban en la misma fase. Cuandolas fases cambian y variamos las distancias o gru-pos de ellos se producen comportamientos totalmenteasimetricos.4

4Todos los choques binarios entre gliders a 90 y180 grados y otras reacciones son disponibles desdehttp://uncomp.uwe.ac.uk/genaro/diffusionLife/life 2c22.html

4

R(2222) R(2322)

R(2522)

R(2622) R(2722)

R(2422)

Figura 5: Choques entre dos gliders a 180 grados y distancia par hasta 60 generaciones son presentadosen la primera columna (Life 2822 no es calculado porque produce los mismos resultados que Life 2722 [3]).Choques entre un blinker contra un glider a 180 grados con distancia impar son presentados en la segundacolumna.

5

Varios resultados importantes son obtenidos enel estudio sistematico de choques entre partıculas,primero la generacion de una amplia familia de com-portamientos del tipo reaccion-difusion y otra esla generacion de las mismas partıculas a traves dechoques (debe ser cerrado con respecto al conjuntode sus propias estructuras) [3].

3 Discusion

Debemos senalar que aunque Life 2c22 no tiene unaamplia variedad de estructuras como el Juego de laVida, es interesante que sus estructuras existen enun amplio rango de reglas. Ademas de que el choqueentre sus partıculas nos permite encontrar los mismoselementos o la construccion de una amplia familiade patrones del tipo reaccion-difusion, como se tienereportado en [3].

Varios problemas continuan abiertos, como es, de-terminar el conjunto completo de partıculas, de-mostrar que todas las partıculas pueden ser con-struidas desde las demas (propiedad de cerradura)e implementar un proceso sincronizando varias reac-ciones de manera serial o simultaneamente. Una in-vestigacion en proceso es determinar sus propiedadesprobabilısticas con la teorıa del campo promedio ydeterminar todas las estructuras de perıodo uno conlos diagramas de de Bruijn.

Ademas, Life 2c22 a su vez es un subconjunto deuna regla mas general y compleja. Por lo tanto, susdatos pueden ser direccionados a un automata celu-lar de mayor complejidad.5 Finalmente, todos estossubconjuntos forman parte de la clase G estable-cida en dos dimensiones [3] para reglas de evolucioncon capacidad de soportar comportamiento complejo.

Agradecimientos

En especial a Harold V. McIntosh y al Departamentode Aplicacion de Microcomputadoras de la UAP.

5http://uncomp.uwe.ac.uk/genaro/diffusionLife.html

Referencias

[1] Andrew Adamatzky, Computing in NonlinearMedia and Automata Collectives, Institute ofPhysics Publishing, Bristol and Philadelphia,2001. (ISBN 0-7503-0751-X)

[2] Andrew Adamatzky (Ed.), Collision-BasedComputing, Springer, 2002. (ISBN 1-85233-540-8)

[3] Andrew Adamatzky, Genaro J. Martınez andJuan C. Seck Tuoh Mora, “Phenomenologyof reaction-diffusion binary-state cellular au-tomata,” International Journal of Bifurcationand Chaos 16(10) 1–21, 2006.

[4] Yaneer Bar-Yam, Dynamics of Complex Sys-tems, Perseus Books, 1997. (ISBN 0-201-55748-7)

[5] Matthew Cook, “Still Life Theory,” in New Con-structions in Cellular Automata p. 93, (Santa FeInstitute Studies on the Sciences of Complexity)Oxford University Press, 2003. (ISBN 0-1951-3717-5)

[6] Martin Gardner, “Mathematical Games - Thefantastic combinations of John H. Conway’s newsolitaire game Life,” Scientific American 223120–123, 1970.

[7] Genaro J. Martınez, Andrew Adamatzky andHarold V. McIntosh, “Phenomenology of glidercollisions in cellular automaton Rule 54 and as-sociated logical gates,” Chaos, Fractals and Soli-tons 28 100–111, 2006.

[8] Genaro J. Martınez, Harold V. McIntosh andJuan C. Seck Tuoh Mora, “Gliders in Rule 110,”International Journal of Unconventional Com-puting 2(1) 1–49, 2006.

[9] Marvin Minsky, Computation: Finite and Infi-nite Machines, Prentice Hall, 1967.

[10] Norman H. Packard and Stephen Wolfram,“Two-Dimensional Cellular Automata,” Journalof Statistical Physics 38 901–946, 1985.

6

[11] Tommaso Toffoli and Norman Margolus, Cellu-lar Automata Machines, The MIT Press, Cam-bridge, Massachusetts, 1987.

[12] John von Neumann, Theory of Self-reproducingAutomata (edited and completed by A. W.Burks), University of Illinois Press, Urbana andLondon 1966.

[13] Stephen Wolfram, A New Kind of Science, Wol-fram Media, Inc., Champaign, Illinois, 2002.(ISBN 1-57955-008-8)

[14] Andrew Wuensche, “Classifying Cellular Au-tomata Automatically,” Complexity 4(3) 47–66,1999.

7