Está en la página 1de 13

Computacin Celular

Mauricio Bacelis de la Torre


13 de diciembre de 2013
1. Introduccin
La Computacin Celular abarca varios modelos de cmputo entre los cuales
puedo mencionar a los autmatas celulares, redes neuronales celulares, compu-
tacin ADN, estructuras autorreproductoras, etc. La Computacin Celular uti-
liza unidades de proceso simple las cuales se les denomina clulas. Cada clula
slo se comunica con un reducido nmero de clulas ms o menos cercanas a
ellas, y estas lneas de conexin a su vez son portadoras de una pequea can-
tidad de informacin. Para este tema de estudio me enfoco al estudio de los
autmatas celulares los cuales describo a continuacin.
Los autmatas celulares fueron concebidos a nales de los aos 40 por Stanis-
law Ulam y Jonh von Neumann. La construccin original consta de un arreglo ce-
lular (autmata celular) auto-reproductivo requera que cada clula de un espa-
cio celular representado por una cuadrcula bi-dimensional soportara un conjun-
to de 29 estados. Adems, el valor del estado en que se encuentra cada clula del
arreglo localizada en una posicin (i, j) (donde i es la columna y j el rengl on)
en un tiempo t estar determinado por los valores de los estados en que se en-
cuentran las clulas localizadas en las posiciones (i 1, j), (i + 1, j), (i, j +
1) e (i, j 1) y el valor del estado en que se encuentra la clula central loca-
lizada en la posicin (i, j) en el tiempo t 1; cada clula del arreglo en algn
momento ser una clula central, la cual junto con las clulas ubicadas arriba,
abajo, a la izquierda y a la derecha (ortogonalmente) de la misma forman lo que
se conoce como vecindad von Neumann (Figura 1). Las interacciones locales de
las vecindades en un tiempo determinan el estado global del arreglo (el cual es
actualizado sincrnicamente) en el tiempo t + 1.
Este grado de complejidad fue necesario debido a que von Neumann buscaba
disear su autmata como un sistema de computacin universal o mquina de
Turing.
1
Figura 1: Vecindad de Von Neumann
En los siguientes apartados describir a detalle las clasicaciones, la de-
nicin formal as como tambin la equivalencia con la Mquina de Turing, los
problemas que puede resolver as como tambin los que no puede resolver.
2. Modelos de autmatas celulares
Existen muchos trabajos de los cuales estn el modelo original de von Neu-
mann el cual fue creado para hacer computacin universal al modelar una m-
quina de Turing.
El modelo de Alvi Ray Smith III que se desarrollo a principios de la dcada
de 1970 quien se basa en las funciones parciales recursivas y de esa manera crea
su modelo.
El modelo life de Conway tambin en 1970, pero demostrado por Buckingham
hacia 1978, este es el modelo que es ms sorprendente, porque no era el propsito
original que tuviera capacidad de simular una mquina de Turing, ni simular
la actividad de las compuertas lgicas fundamentales, sin embargo, mediante
la interaccin de las clulas a travs del tiempo, se ha podido demostrar que
es posible dar una conguracin inicial del modelo life que hace computacin
universal.
Los tres trabajos antes mencionados no son los nicos que relacionan aut-
matas celulares con computacin universal.
De los trabajos ms importantes sobre computabilidad y universalidad con
autmatas celulares estn los estudios de Stephen Wolfram; Stephen Wolfram en
la dcada de 1990 hizo un profundo estudio de las evoluciones de los autmatas
2
celulares, principalmente en el caso unidimensional, y propuso las cuatro clases
de evoluciones que un autmata podra mostrar.
Wolfram propuso que los autmatas celulares que muestran evoluciones com-
plejas, podran ser capaces de hacer computacin universal.
Esta sugerencia fue presentada en su libro A New Kind of Science; la de-
mostracin fue hecha por Matthew Cook en 1994, utilizando un signicativo e
ingenioso sistema gliders y de choques de gliders. Los gliders son patrones de-
nidos en el espacio celular que aparentemente se desplazan por el espacio al
transcurrir cierto intervalo de tiempo.
Wolfram deni una terminologa bsica por medio de la cual los autmatas
celulares en una dimensin pueden ser clasicados de acuerdo a su dinmica de
evolucin.
Para este trabajo me enfocare en los autmatas celulares en una dimensin
para los cuales existen diferentes tipos de notacin que describen la estructu-
ra por lo que se hace uso de la llamada notacin Wolfram que se describe a
continuacin.
3. Estructura
Un autmata celular uni-dimensional consta de un arreglo lineal nito de
celdas o clulas (ver gura 2). Cada clula del arreglo puede tomar como valor
un elemento de un conjunto nito de estados, el cual es denotado por la letra K.
Los elementos del conjunto K pueden ser de diferentes tipos (nmeros, letras,
smbolos, etc.) puesto que la naturaleza de los estados no es relevante.
Figura 2: Arreglo de 10 clulas.
El nmero de estados para un autmata celular lineal puede ser variable,
por esta razn en la notacin Wolfram el nmero de estados se representa por
medio de la variable k, es decir, la cardinalidad del conjuntoK es igual a k, lo
cual se escribe como #(K) = k.
Otro elemento importante en la notacin Wolfram es el que l denomina
como radio de vecindad y que denota por medio de la variable r. El radio de
vecindad indica el rango de interaccin a nivel local que van a tener las clulas
entre s. Si r es igual a uno, entonces cada clula del arreglo ver afectado su
estado durante la evolucin del autmata a partir de los estados de sus clulas
vecinas ms prximas tanto del lado izquierdo como del lado derecho. Esto forma
lo que se conoce como vecindad, donde el tamao total de una vecindad es igual
3
a 2r + 1 incluyendo a la clula central. Para el caso en el que r es igual a uno,
el tamao total de la vecindad va a ser igual a tres (ver gura 3).
Figura 3: Vecindad de tamao tres.
Un punto importante a mencionar es que al ser nito el arreglo la primera y la
ltima clula no tendrn vecinos del lado izquierdo y derecho respectivamente.
Una manera de solucionar esto es tomar el arreglo como un anillo, es decir,
cerrando el arreglo en forma circular para conservar la uniformidad en todas
las vecindades (ver gura 4), adems, al tomar el arreglo como un anillo se
establecen los lmites a la frontera o condiciones de lmites peridicos.
Figura 4: Estructura de un autmata celular lineal estableciendo condiciones de
lmites peridicos.
3.1. Denicin Formal
Despus de ver la estructura que tiene un autmata celular lineal enseguida
describo la denicin formal para un autmata celular.
Un autmata celular es una estructura de la forma (d, r, Q, #,V, f) siendo:
d: la dimensin del autmata d > 0.
La dimensin indica la organizacin espacial de la clulas.
La posicin de cada clula se expresa mediante un vector de Z
d
.
Para d = 1: autmata unidimensional Posicin de la clulas: Z.
Para d = 2: autmata bidimensional Posicin de las clulas:ZxZ.
r: es el ndice de localidad que marca el tamao de la vecindad.
4
Indica el nmero de vecinas para cada clula.
Q: es el conjunto de estados. El estado en el que se encuentra cada clula.
Por ejemplo Q = 0, 1.
#: es un estado de Q, llamado estado quiescente.
Indica la ausencia de actividad.
V: es un vector de vecindad que contiene r elementos distintos de Z
d
.
V (Z
d
)
r
.
Indica las clulas vecinas. V = (z1, . . . , zr).
Ejemplo: si d=2, V=((0,1),(0,-1)) y la clula es y=(1,1), su vecindad
es: y+(0,1)=(1,2) y+(0,-1)=(1,0)
f: Funcin de transicin o regla del autmata
f :Q
r+1
+ 1 Q
f(q
ir
(t 1), q
ir+1
(t 1), ..., q
i+r
(t 1)) = q
i
(t)
siendo q
i
(t) el estado de la clula i en el tiempo t.
Para cada clula, f no se dice el estado que tendr en la siguiente unidad de
tiempo, en funcin de su estado actual y del estado de sus celdas vecinas.
3.2. Conguracin de autmata
Se dene la conguracin de un autmata celular C o palabra de C a cual-
quier funcin : Z
d
Q.
Se dene la conguracin siguiente de como la palabra que resulta de
aplicar la regla del autmata a sus clulas, es decir f().
f(0) :es el conjunto de todas las posibles conguraciones
f(1) :Resultado de aplicar la regla del autmata a palabras f(0).
...
f(t)
4. Funcin de transiciones locales
Lo que falta por denir es el estado al cual va a evolucionar cada clula del
arreglo en el tiempo t +1 a partir de los estados de los vecinos y del suyo propio
en el tiempo t. Esto va a constituir la funcin de transiciones locales, o dicho de
manera ms general, la regla de evolucin del autmata.
Por cuestiones prcticas, comnmente una regla de evolucin se expresa en
trminos de su valor decimal, por ejemplo, regla 54 para un autmata celular
lineal. Al denir una regla de evolucin lo que se hace es especicar los estados
5
a los que evolucionan las clulas que conforman el arreglo en base a todas las
vecindades posibles.
Sea C un autmata unidimensional, con Q = 0, 1 y r = 2. K = m odulo(Q).
Una regla de este autmata posee tres argumentos binarios:
f(q
i1
(t 1), q
i
(t 1, q
i+1
(t 1)) = q
i
(t)
Teniendo en cuenta que:
Hay 2
3
posibles valores para sus argumentos (k
r+1
)
Para cada uno de ellos tenemos dos (k) salidas.
Existe 2
2
3
= 2
8
reglas diferentes.
k
k
(r+1)
reglas diferentes para un caso general.
111 110 101 100 011 010 001 000
Regla 0 1 0 0 0 0 0 0
Regla 0 1 0 1 0 1 1 0
Cuadro 1: Numeracin de Reglas.
Dado un autmata celular, el conjunto de todas las posibles reglas a tener en
cuenta es numerable. Cada regla se puede especicar por su secuencia binaria
(en base k) y por tanto por su nmero decimal equivalente.
Ejemplo:
111 110 101 100 011 010 001 000
Regla 1 0 0 0 0 0 0 0 1
1
10
= 00000001
2
Regla 90 0 1 0 1 1 0 1 0
90
10
= 01011010
2
Regla 54 0 0 1 1 0 1 1 0
54
10
= 00000001
2
Cuadro 2: Ejemplo de Numeracin de Reglas.
En el caso de la regla 54 la suma sera: 2
1
+2
2
+2
4
+2
5
= 2+4+16+32 = 54.
Como se puede observar, a partir del contenido de la tabla 3.1 se puede denir
la funcin de transiciones locales f : A B la cual se observa en la gura 5.
6
Figura 6: Diagrama de evoluciones de un autmata celular lineal (2,1) aplicando
la regla 54.
Figura 5: Funcin de transiciones locales de la regla 54.
En la gura 3.11 se ilustra el comportamiento a nivel macroscpico de un
autmata celular lineal (2,1) aplicando la regla 54 por medio del diagrama de
evoluciones.
Ejemplo de autmata unidimensional.
C = (1, 2, {0, 1}, 0, v, f) siendo V = {1, 1} y la regla
7
Autmata1:
f(q
i1
(t 1), q
i
(t 1), q
i+1
(t 1)) = (q
i1
(t 1) +q
i+1
(t 1))mod2.
.
Autmata2:
f(q
i1
(t1), q
i
(t1), q
i+1
(t1)) = (q
i1
(t1)+q
i
(t1)+q
i+1
(t
1))mod2.
.
La evolucin de los autmatas unidimensionales es:
Autmata1:
0 1 0 t = 0
0 1 0 1 0 t = 1
0 1 0 0 0 1 0 t = 2
0 1 0 1 0 1 0 1 0 t = 3
1 0 0 0 0 0 0 0 1 t = 4
Autmata 2:
0 1 0 t = 0
0 1 1 1 0 t = 1
0 1 0 1 0 1 0 t = 2
0 1 1 0 1 0 1 1 0 t = 3
1 0 0 0 1 0 0 0 1 t = 4
Cuadro 3:
5. Clasicacin de Wolfram
Wolfram, a travs de su terminologa y observando la dinmica de evolucin
deni cuatro clases de autmatas celulares lineales y son las siguientes:
Clase I. Evolucin a un estado uniforme. Despus de transcurrido un cierto
nmero de generaciones, todas las clulas del autmata convergen a un
solo estado. En la gura 7 se observa el diagrama de evoluciones de un
autmata celular lineal clase I. Este autmata celular es de orden (3,1) y
su regla de evolucin es la 6J3J3B3B6.
8
Figura 7: Diagrama de evoluciones de un autmata celular lineal (3,1) aplicando
la regla 6J3J3B3B6.
Clase II. Evolucin a estados cclicos aislados. Durante la evolucin del
autmata, existen ciertos patrones de comportamiento que se repiten de
manera sistemtica a travs del tiempo. Estos patrones se pueden distin-
guir claramente sobre un fondo representado por un solo estado el cual
es opuesto al de las clulas que representan el patrn de comportamiento
cclico (ver gura 8).
9
Figura 8: Diagrama de evoluciones de un autmata celular lineal (3,1) aplicando
la regla B6B2B3M39.
Clase III. Evolucin a estados cclicos amplios. Al igual que en un aut-
mata celular clase II, en un autmata celular clase III existen patrones
de comportamiento repetitivos, aunque no tan fcilmente identicables a
simple vista debido a que el comportamiento de ste puede ser sumamente
catico, lo que hace ms complicado el anlisis de este tipo de autmata
(ver gura 9).
10
Figura 9: Diagrama de evoluciones de un autmata celular lineal (3,1) aplicando
la regla 2OLCCMC2I.
Clase IV. Evolucin a estados complejos aislados. Esta clase de autmata
es una combinacin de las clases I, II y III. Al igual que en los autmatas
clase II, existen comportamientos cclicos aislados, lo que hace distinguible
un fondo uniforme el cual permite identicar dichos comportamientos los
cuales son similares a los que se presentan en un autmata clase III (ver
gura 10).
11
Figura 10: Diagrama de evoluciones de un autmata celular lineal (3,1) aplicando
la regla 92727L7L9.
6. Equivalencia con la mquina de Turing
Si un sistema es capaz de hacer computacin universal, entonces con las con-
diciones iniciales apropiadas, su evolucin puede llevar a cabo cualquier proceso
computacional nito.
Varios autmatas celulares especcos son conocidos por ser capaces de hacer
computacin universal. El vecino ms cercano de autmata celular bidimensional
conocido como el juego de la vida se ha demostrado la computacin universal
de manera que puedan implementar cualquier algoritmo. Algunos autmatas
celulares unidimensionales con 18 estados han demostrado ser equivalente a la
ms simple mquina universal de Turing conocida, y por lo tanto son capaces
de realizar computacin universal.
Se especula que los autmatas celulares identicados por motivos estadsticos
como clase 4 son, de hecho, de forma genrica capaz de hacer computacin
universal. Pero queda por demostrar la universalidad computacional de cualquier
regla tal particular. Se pueden utilizar varios mtodos para tal demostracin.
Uno de ellos sera una demostracin directa de que esta regla del autmata
celular puede simular cualquier otra regla de autmata celular con una apropiada
codicacin de los estados iniciales. El bloqueo de las transformaciones puede
proporcionar las codicaciones necesarias: por lo que uno debe encontrar si
una regla de autmata celular esta conectado a todos los otros en las redes de
simulacin construidas a partir de las transformaciones de bloqueo.
12
7. Indecidibilidad en los autmatas celulares
Los autmatas celulares presentan problemas indecidibles al igual que el
problema de parada de la mquina de Turing, de los cuales menciono dos a
continuacin:
Se puede considerar la pregunta de si los patrones generados a partir de
semillas iniciales particulares nitas nunca mueren en la evolucin del
autmata celular. Se podra simular la evolucin explcitamente para ave-
riguar si un patrn muere despus de decir mil pasos de tiempo, pero
para determinar su destino nal, en general, requiere de un clculo de la
longitud ilimitada. Por tanto, la pregunta es formalmente indecidible.
El conjunto de conguraciones nitas que evolucionan a la conguracin
nula despus de un determinado tiempo nito se puede especicar median-
te un lenguaje formal regular. Pero all no est tal especicacin nita para
el conjunto de conguraciones nitas que se desarrollan despus de cual-
quier tiempo a la conguracin nula. Incluso la fraccin de conguraciones
en este conjunto es, en general, un nmero no computable.
Referencias
[1] The Emergence of Cellular Computing, Moshe Sipper Swiss Federal Institute
of Technology, Lausanne.
[2] Mquina celular de computacin basada en mosaicos regla 110, Abdiel Emi-
lio Cceres Gonzlez, CINVESTAV-IPN.
[3] Modelacin de ujo de trnsito de autos utilizando autmatas celulares,
Ren Rodrguez Zamora, CINVESTAV-IPN.
[4] http://www.stephenwolfram.com/publications/cellular-automata-
complexity/pdfs/problems-theory-cellular-automata.pdf
13

También podría gustarte