bioinformática: autómatas celulares bioinformática: autómatas celulares instituto universitario...

56
Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería Autómatas Celulares Mario Hernández

Upload: moises-castillon

Post on 11-Apr-2015

122 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Autómatas CelularesMario Hernández

Page 2: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Autómata Celular (AC)

• Introducidos por primera vez en 1940 por John Von Neumann por sugerencia de Stanislav Ulam con el objetivo de crear un modelo real del comportamiento de sistemas extensos y complejos

• Se han “concebido” en numerosas ocasiones con diferentes nombres y con frecuencia, diferentes conceptos se han utilizado con el mismo nombre:

– En Matemática se les conoce como una rama de la dinámica topológica

– En Ingeniería eléctrica se les conoce con frecuencia como matrices iterativas

– Para algunos estudiantes pueden ser simplemente un juego de ordenador.

Page 3: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Cada AC está determinado por: 1. Un número de celdas. 2. El radio (r) que abarca la vecindad de cada

célula. 3. El número de estados en que puede

encontrarse cada celda. 4. Una regla de transición local, igual para

todas las celdas, cuya entrada es el estado conjunto de las celdas que forman la vecindad.

Page 4: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Concepto (intuitivamente)

• Sistema dinámico discreto extremadamente simple

• Ejemplo simplificado:

– Sea una retícula espacial discreta y en cada celda tenemos un valor de estado ( por simplificar sólo puede ser 0 ó 1 ) en un ámbito el tiempo también discreto.

– En cada instante de tiempo cada celda analiza el valor de las celdas de un entorno a su alrededor y el suyo propio y según cierta regla local cambia ó no su valor.

– Un AC es por tanto un sistema dinámico discreto.

• Por tanto, sus elementos definitorios son:

– Celda– Retícula– Vecindad– Reglas de Actualización

Page 5: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Los AC pues son redes de autómatas simples dispuestos sobre los nodos de una retícula y conectados localmente. Cada autómata simple produce una salida a partir de varias entradas, modificando en el proceso su estado según una función de transición.

Los AC son herramientas útiles para modelar cualquier sistema natural en el universo:

– Buena alternativa a las ecuaciones diferenciales – Utilizados para modelar sistemas físicos: interacciones entre

partículas, formación de galaxias, cinética de sistemas moleculares y crecimiento de cristales, así como diversos sistemas biológicos a nivel celular, multicelular y poblacional.

Page 6: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Las celdas

Ocupadas por autómatas que actúan como elementos de memoria que almacenan el estado

xi(t) = estado de la celda que ocupa la posición i en el instante t.

N = el número total de celdas.

El conjunto {k} de posibles estados de cada celda debe ser finito, xi(t) {k}

En lo que sigue consideraremos AC binarios, es decir la celda sólo puede estar en el estado ``1'' (activo) o en el estado ``0'' (inactivo).

Page 7: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

La retícula (lattice)

Red de organización espacial de autómatasTipos:• Unidimensional: las celdas se organizan en una

línea, de manera que cada celda tendrá, como máximo dos vecinos directos

• Bidimensional: cada celda tendrá tantos vecinos directos como corresponda a la topología de la discretización

• Multidimensional

Page 8: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

La vecindad (1D)

vi(t)= {xi-1(t), xi(t), xi+1(t),...} Es el conjunto de celdas alrededor de la celda i y la misma celda. El número de vecinos lo representamos por Nv.

En d=1 y tomando los vecinos como el de la izquierda y el de la derecha tendríamos la siguiente vecindad: L-C-R C:celda central, L: vecino de la izquierda, R: vecino de la derecha. En este ejemplo estamos considerando una vecindad de radio r=1. Si extendemos el radio a r=2, tendríamos una vecindad como ésta: LL-L-C-R-RR En d=1 el número de vecinos es: 2r+1 y el número de posibles vecindades es k2r+1.

En un AC las N celdas se encuentra en una retícula de dimensión d. Cuando el retículo es de tamaño finito siempre consideraremos condiciones de contorno periódicas, es decir que la celda en la posición tiene como vecina a la celda de la posición y viceversa.

Page 9: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Alternativo

La vecindad (1D)

t

t+1

Alternativo

Se denomina radio r al número de celdas a cada lado de la actual que influyen en el cálculo de su valor futuro

Page 10: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Diversos tipos en función de la naturaleza de la retícula y la elección de vecinos.

P.e. para rectangular:

La vecindad (2D)

Vecindad von Neumann

Vecindad Moore

Vecindad Moore Extendida

Vecindad Margolus

t

t+1

Alternativo

Page 11: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

La vecindad (2D)

Retícula hexagonal:

Vecindad Triunfante

DominioDominio Codominio

Page 12: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Q*Bert:

t t+1 Alternativo

La vecindad (2D)

Page 13: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Estrella de David

La vecindad (2D)

Dominio Codominio

Page 14: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Triángulo-6

La vecindad (2D)

t

t+1

t+2

Alternativo

Y otros muchos más ...

Page 15: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

3D-X

La vecindad (3D)

Dominio Codominio

Y otros muchos más ...

Page 16: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Tratamiento de Bordes

¿Qué ocurre con los bordes en las actualizaciones?. Hay tres soluciones posibles:

1. Los bordes opuestos de la retícula se pliegan y se unen, de manera que si el AC es d=1, se convierte en un círculo a efectos de tratamiento y si d=2 se convierte en un toro

2. Las celdas de borde son especulares, por lo que se darán propiedades de simetría

3. Las celdas fuera del borde de la retícula están desactivadas

La primera es la más usual

Page 17: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Las reglas

• Definen la mecánica de interacción y la evolución temporal del estado de cada celda

• La regla local de evolución nos permite obtener el valor cuando conocemos el valor de las celdas en la vecindad en el instante anterior.

• La idea fundamental es que LAS REGLAS DE INTERACCIÓN LOCAL PERMITEN ALCANZAR UNA DINÁMICA GLOBAL

Page 18: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Las reglas para AC 1D

Por ejemplo en el caso de un AC binario en d=1 (es decir, unidimensional) con r=1 la vecindad de una celda tiene que ser alguna de las configuraciones siguientes (primera fila) y la regla de generación de salida, la indicada en la segunda linea:

vecindad 111 110 101 100 011 010 001 000bit de salida 0 1 0 1 1 0 1 0

Evolución de un reticulado. Regla 90 (expresión decimal de la regla de evolución) . Las condiciones de contorno son periódicas.

t=0 1 1 0 0 1 1 0 1 0 0 1 1

t=1 0 1 1 1 1 1 0 0 1 1 1 0

Page 19: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Si-1(t-1) Si(t-1) Si+1(t-1) Si-1(t-1) Si(t-1) Si+1(t-1) Si(t)

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 0

1 0 0 1

1 0 1 0

1 1 0 0

1 1 1 1

Regla

• Como hay 256 reglas posibles 28, se pueden generar 256 tramas de celdas (universos) distintos

• En la práctica algunas coinciden

Page 20: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• De estos universos, aproximadamente el 25 % generan universos "interesantes", es decir, con una patrón.

• Los demás, o tienen todas las celdas apagadas (código -1), todas encendidas (código +1) o no varían las filas al pasar las generaciones (código 2).

• Otro tipo es el "fractal" (código 3), ya que resulta un patrón de triángulos, que se subdividen en otros triángulos, que se subdividen en otros triángulos...

• Este tipo es francamente raro, ya que solo se puede originar si hay una célula encendida lo suficientemente lejos de las otras para no interferir.

Page 21: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Ejemplo

Regla de código 90. Evolución en un diagrama espacio-tiempo de la misma regla partiendo de un estado inicial en el que sólo hay una celda en estado 1 y el resto 0.

El estado de las celdas se pueden representar por una línea cambiante o dibujando una línea debajo de otra, quedando así un mosaico de células.

Cada fila de células se conoce como una generación, y todo el entramado de células, universo.

Page 22: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Regla 54, r=1, inicio con una sola celda activa

Ejemplo

Regla 62, r=1, inicio con una situación aleatoria

Page 23: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Ejemplo

Regla 30, r=1, inicio con una sola celda activa

Regla 30, r=1, inicio con una situación aleatoria

Page 24: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Aleatoriedad: La Regla 30 ha sido estudiada para poner de manifiesto como surgen procesos aleatorios a partir de reglas deterministas simples. Si por ejemplo nos fijamos en la celda central y vamos tomando la sucesión de valores tendremos un conjunto de 0 y 1 que supera todos los test de aleatoriedad.

La regla 30 se ha usado para:• Generar números aleatorios• CriptografíaLo único que es necesario escoger en ambos casos es la semilla inicial que hay

que poner a evolucionar.

Criptografía: con la R30 se toma un mensaje     , el mensaje cifrado                     y la descodificación se hace                    .

Ejemplo

Page 25: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Ejemplo

Regla 182, r=1, inicio con una sola celda activa y aleatorio respectivamente (1 blanco, 0 negro)

Page 26: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Ejemplo

Clase 1: r=2, k=2, regla=100100

Clase 1: r=2, k=2, regla=111100

Clase 2: r=2, k=2, regla=111000

Clase 2: r=2, k=2, regla=111010

Clase 3: r=2, k=2, regla=010010

Page 27: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Universo de la regla 105

Ejemplo

Page 28: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Tipos de reglas

• Legales: (Wolfram) son aquellas en que la vecindad nula da siempre un valor nulo y además son simétricas. Dicho de otra manera, del estado total cero no puede emerger ningún desarrollo.

• Totalísticas: aquellas en que la regla de evolución sólo depende de la suma de los estados de los vecinos. La codificación de estas reglas se hace de manera más sencilla. Pe. si la suma de las celdas adyacentes es 4, el nuevo estado de la celda actual es 1, en otro caso es 0.

• Elementales: son las reglas legales con r=1 en d=1. Las condiciones de simetría que impone el concepto de legal hace que la vecindad 110 debe dar lo mismo que la 011 y que la 100 debe dar lo mismo que la 001. Hay sólo 32 reglas elementales.

Page 29: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Propiedades Globales

• Organización: partiendo de un estado inicial en el que se encuentren todas las configuraciones posibles, el AC evoluciona reduciendo el número de configuraciones finales. Hay una disminución del “desorden” y por tanto una disminución de “entropía”.

• Irreversibilidad Local: En un AC diferentes situaciones iniciales pueden dar lugar a la misma situación final. Es decir que “padres distintos” dan lugar al mismo “hijo”. De esta manera conociendo sólo al hijo es imposible saber quien es el padre, no es posible ( en general ) volver hacia atrás en el tiempo y reconstruir la historia completa.

• Jardines del Edén: Situaciones que sólo se dan como configuración inicial.

Page 30: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Tipos de AC. Universalidad de los AC

Según S. Wolfram el comportamiento espacio-tiempo de los ACs se puede clasificar en 4 grupos:

• Clase I: (punto límite) Estado final homogéneo y configuración que se estabiliza en el tiempo.

• Clase II: (ciclo límite) Estado final formado por un conjunto de estructuras periódicas. Se pueden entender como un tipo de filtro, l oque los hace interesante para, pe, proceso de imágenes.

• Clase III: (atractor extraño) Estado final aperiódico caótico. Los patrones creados por este tipo son una especie de curvas fractales autosimilares:

• Clase IV: Comportamiento más complejo) Aparecen estructuras localizadas y complejas que perduran a lo largo del tiempo (Juego de la Vida). Son capaces de computación universal (Máquina de Turing)

E. Inicial Aleatorio32 4

110 54

20 20

Regla

Page 31: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

AC 2D

Page 32: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Page 33: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Ejemplos

Page 34: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Juego de la Vida

Page 35: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

El Juego de la Vida de Conway (Life Game)

Es uno de los ejemplos más simples de lo que se ha denominado “complejidad emergente”, o “sistemas autoorganizados”:

• El estudio de cómo pueden emerger patrones y comportamientos elaborados a partir de reglas muy simples, permitiendo estudiar y simular cómo pueden aparecer.

• Idea concebidas a finales de los años sesenta por John Horton Conway y descritas en Scientific American en Octubre de 1970 como un universo y unas simples reglas que fuesen capaces de computación.

Page 36: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

El Juego de la Vida de Conway (Life Game)

1. Superviviencia: Cada célula viva con dos o tres células vecinas vivas sobrevive a la siguiente generación.

2. Nacimiento: Cada célula muerta con tres células vecinas vivas resucita en la siguiente generación.

3. Muerte: Cada célula viva con ninguna, una, o más de tres células vivas a su alrededor pasa a estar muerta.

Es un autómata celular bidimensional en cuadrícula con dos estados por celda. Cada celda o célula puede estar viva o muerta y en cada generación se aplica un algoritmo que sigue estas tres reglas:

Page 37: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• Las reglas del Juego de la Vida esta´n especialmente concebidas para generar los comportamientos

• El Juego de la Vida balancea las tendencias de nacimiento, crecimiento y muerte haciéndose difícil predecir si un cierto patrón morirá completamente, formará una población estable o crecerá indefinidamente.

• En el Juego de la Vida, como en la naturaleza, se observan muchos fenómenos fascinantes. La naturaleza, sin embargo, es complicada y no estamos seguros de todas las reglas.

• El Juego de la Vida The Game of Life nos permite observar un sistema donde conocemos todas las reglas. De forma análoga a como el estudio de animales simples permite descubrir cosas sobre animales más complejos, la gente puede estudiar el Juego de la Vida para aprender , sobre los patrones y comportamientos de sistemas más complejos.

Page 38: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• El juego presenta configuraciones finales estables, periódicas o no y presenta (según Langton) propiedades:

– Catálisis (acciones de construcción arbitrarias), – De transporte (borrando estructuras y reconstruyéndolas en otro

lugar del espacio celular), – Estructurales (como elementos estáticos, barreras, etc.), – De regulación, – De defensa – E incluso informativas,

• Y que por tanto estos autómatas virtuales tienen capacidades computacionales suficientes para cumplir los papeles funcionales que juegan las macromoléculas en la lógica molecular de la vida.

• En definitiva, que funcionalmente, los autómatas son equiparables a los componentes básicos de la vida en nuestro planeta.

Page 39: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• These simple rules can produce various behavioural states, ranging from stable to chaotic, depending on the initial pattern of cells. The number of living cells may be ever increasing, oscillating between a finite number of values, static, or always decaying. A stable system may involve cells which always remain alive in future generations, or may contain groups of cells which oscillate between two shapes periodically, known as ‘blinkers’, which will continue indefinitely unless distant cells approach and interfere. Chaotic and unstable states quickly die out, just as they do in nature. Complex states can also occur, and these states are not periodic and do not die out. There are several interesting shapes that seemingly produce new shapes, or appear to be alive. An example of one of these complex states is called a “glider”, a period-4 oscillating pattern that moves diagonally across the grid. There are many Life enthusiasts who experiment with Life simply to discover new and interesting shapes, or interactions between shapes.

• Conway's prediction that the system was capable of computation has been confirmed. By using "gliders" to represent bit streams, researchers at MIT have been able to build AND- and OR-gates and even a whole adding unit, which adds the digital values two streams of gliders represent and sends out the result of the addition as a new stream.

• A Turing Machine has also been implemented in Life, which is extendable to a Universal Turing Machine, capable of computing any computable function. The pattern is shown in Appendix B, and requires 11,000 generations just to advance one cycle of computation.

Page 40: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Propagación de Incendios Forestales

Page 41: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Células

Page 42: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

La Sopa Primordial

Page 43: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Autorreproducción

Page 44: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

L-Systems

Page 45: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Aplicaciones en Proceso de Imágenes

Page 46: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Redes de Autómatas Celulares

Page 47: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

"Células" de Peter Donnelly

Es en esencia una curiosidad científica propuesta por primera vez por Peter Donnelly del University College de Swansea, Gales, y Dominic Welsh, de la universidad de Oxford.

El programa fue descrito en detalle por A. K. Dewdney en su artículo "Cinco piezas sencillas" para Scientific American.

En este artículo se bautiza al programa con el nombre de “Votación", ya que según el autor pretende simular una votación política algo particular.

Page 48: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• "Las casillas de una cuadricula rectangular están coloreadas de blanco o negro, aleatoriamente. Se supone que cada color refleja la opinión política de una persona residente en esa casilla. Un color podría representar 'demócrata' y el otro 'republicano'. [...]

• A cada señal de reloj, se selecciona al azar uno de los votantes y su opinión política se somete a cambio: se selecciona al azar uno de sus ocho vecinos y la convicción política del elector se transforma en la de este vecino, independientemente de cuál fuera su opinión anterior. [...]

Page 49: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• Al hacer funcionar este modelo, confesadamente simplista, del proceso político, ocurren cosas llamativas y extrañas. Primero se desarrollan grandes bloques de voto homogéneo. Estos bloques son zonas geográficas donde todo el mundo es de la misma opinión política. Seguidamente tales bloques van migrando en torno al cuadriculado y, durante cierto tiempo luchan, como buscando su predominancia. Finalmente, el sistema bipartidista se viene abajo, por acabar todo el mundo votando de igual manera".

Page 50: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• Además de esta interpretación, hay otra más aproximada, y mucho más sugerente para los interesados en la vida artificial y temas afines.

• Podemos llegar a apreciar comportamientos "cuasi-biológicos" si observamos la evolución de los votantes como un ejemplo de la coexistencia-competitividad de dos especies similares en un mismo medio con abundancia de alimento, como podría ser el caso de dos especies de bacterias en un fluido rico en nutrientes.

Page 51: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• La interpretación es la siguiente: Cada posición de la matriz representa una célula de una especie determinada. En cada ciclo se elige aleatoriamente una de las células de la matriz. Esa célula muere, dejando un espacio libre. Ese espacio es ocupado inmediatamente de la siguiente forma: Se elige a una de las ocho células contiguas a ese espacio vacío para reproducirse, y el lugar dejado por la célula muerta lo ocupa una nueva célula, hija de la escogida, y por lo tanto de su misma especie.

Page 52: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• A partir de este comportamiento tan simple podremos observar como el caos inicial, en el que las células de ambas especies se hallan mezcladas, da paso a una forma de organización en la que las células de una misma especie forman amplios grupos. que se desplazan, se estiran y se contraen mientras tratan de sobrevivir.

• Si se deja el programa funcionando durante un tiempo una de las especies pasa a ser dominante, pudiendo llegar a hacer desaparecer a la otra especie.

Page 53: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• Finalmente, y como curiosidad, podríamos pensar en realizar en cada ciclo la reproducción de las células de un modo algo más inusual...

• ¿Qué ocurriría si al reproducirse una célula para ocupar el espacio vacío dejado por otra célula muerta, tuviera una hija de la otra especie, y no de la suya propia? ¿Seguiría produciéndose la homogeneidad, o el caos inicial se extendería hasta el infinito? A partir del código fuente del programa, y realizando una pequeña modificación se puede resolver esta trascendental duda.

Page 54: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

Hormigas y Plantas

• En el programa "Hormigas y Plantas", cada una de las celdas de la rejilla en 2 dimensiones es un autómata simple con los siguientes estados posibles:

- Vacío - Ocupado por una hormiga - Ocupado por una planta - Ocupado por un obstáculo

• Cada celda cambia de estado en función del estado de las celdas vecinas. Por ejemplo, una celda en estado "planta" pasa a estado "vacío" si hay una hormiga próxima a la planta: la hormiga se come la planta. Otros cambios de estado están supeditados además al resultado de una función pseudoaleatoria uniforme, y se producen, si se cumplen las otras condiciones, según una cierta probabilidad.

• Por ejemplo, una celda en estado "vacío" pasa a estado "hormiga" sólo si hay una hormiga próxima a la planta y además con una cierta probabilidad (solo si la hormiga "decide" tomar esa dirección).

Page 55: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• El estado de cada celda puede estar definido por distintas variables: las hormigas, así como las plantas, poseen una cierta cantidad de energía. Pero además, las hormigas poseen una inercia en cuanto a la dirección del movimiento, que provoca una tendencia a moverse en la misma dirección, y un "tipo", ya que hay hormigas "rojas", "rosas", "naranjas", "amarillas" y "verdes" que corresponden con distintas probabilidades de moverse, regar, pelearse o reproducirse.

Page 56: Bioinformática: Autómatas Celulares Bioinformática: Autómatas Celulares Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

B

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

sB

ioin

form

áti

ca:

Au

tóm

ata

s C

elu

lare

s

Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería

• En este autómata, los cambios de estado están dirigidos únicamente por las "hormigas", de forma que la "ejecución" de una hormiga provoca un cambio de estado en sí misma y en otras posibles celdas de tipo "planta". Este último punto lleva a la posibilidad de contemplar el programa desde otro punto de vista: como un conjunto de autómatas simples móviles cuyo estado se define, entre otros, por su posición en los ejes X e Y. Es decir, en vez de ver una rejilla cuyas celdas cambian de estado, vemos un conjunto de hormigas que se mueven por unos ejes cartesianos. Efectivamente, el autómata no se ha programado como un conjunto de celdas con distintas propiedades, sino como varios conjuntos (o varios autómatas superpuestos): un conjunto de hormigas, otro de plantas y otro de obstáculos, controlando que cualquiera de ellos no exista en la misma posición que otro.