fbpx
Wikipedia

Autómata celular

Un autómata celular (A.C.) es un modelo matemático y computacional para un sistema dinámico que evoluciona en pasos discretos. Es adecuado para modelar sistemas naturales que puedan ser descritos como una colección masiva de objetos simples que interactúen localmente unos con otros.

Son sistemas descubiertos dentro del campo de la física computacional por John von Neumann en la década de 1950. La teoría de los autómatas celulares se inicia con su precursor John von Neumann a finales de la década de 1940 con su libro Theory of Self-reproducing Automata (editado y completado por A. W. Burks).

Aunque John von Neumann puso en práctica los AA.CC., estos fueron concebidos en los años 40 por Konrad Zuse y Stanislaw Ulam. Zuse pensó en los “espacios de cómputo” (computing spaces), como modelos discretos de sistemas físicos. Las contribuciones de Ulam vinieron al final de los 40, poco después de haber inventado con Nicholas Metropolis el Método de Montecarlo.

Descripción

No existe una definición formal y matemática aceptada de autómata celular; sin embargo, se puede describir a un A.C. como una tupla, es decir, un conjunto ordenado de objetos caracterizado por los siguientes componentes:

  • Una rejilla o cuadriculado (lattice) de enteros (conjunto  ) infinitamente extendida, y con dimensión  . Cada celda de la cuadrícula se conoce como célula.
  • Cada célula puede tomar un valor en   a partir de un conjunto finito de estados  .
  • Cada célula, además, se caracteriza por su vecindad, un conjunto finito de células en las cercanías de la misma.
  • De acuerdo con esto, se aplica a todas las células de la cuadrícula una función de transición (   ) que toma como argumentos los valores de la célula en cuestión y los valores de sus vecinos, y regresa el nuevo valor que la célula tendrá en la siguiente etapa de tiempo. Esta función   se aplica, como ya se dijo, de forma homogénea a todas las células, por cada paso discreto de tiempo.

Condiciones de frontera

 
Topología del autómata celular de 2D plegado en 3D para el caso de frontera periódica.

Por definición, un A.C. consiste en una retícula infinita de enteros. Sin embargo, para cuestiones prácticas (como en modelos de sistemas físicos llevados a cabo en ordenadores de memoria finita), se requiere tomar ciertas consideraciones a la hora de implementar un A.C. Por ello, la definición original se modifica para dar cabida a retículas finitas en las que las células del A.C. interactúen. Esto conlleva la consideración extra de lo que debe suceder con aquellas células que se encuentren en los bordes de la retícula. A la implementación de una o varias consideraciones específicas se le conoce como condición de frontera.

Dentro del ámbito de los A.C., se pueden implementar numerosas condiciones de frontera, en función de lo que el problema real requiera para su modelado. Por ejemplo:

  • Frontera abierta. Se considera que fuera de la lattice residen células, todas con un valor fijo. En el caso particular del juego de la vida y de otros A.C. con dos estados en su conjunto  , una frontera se dice fría si las células fuera de la frontera se consideran muertas, y caliente si se consideran vivas.
  • Frontera periódica. Se considera a la lattice como si sus extremos se tocaran. En una lattice de dimensión 1, esto puede visualizarse en dos dimensiones como una circunferencia. En dimensión 2, la lattice podría visualizarse en tres dimensiones como un toroide.
  • Frontera reflectora. Se considera que las células fuera de la lattice "reflejan" los valores de aquellas dentro de la lattice. Así, una célula que estuviera junto al borde de la lattice (fuera de ella) tomaría como valor el de la célula que esté junto al borde de la lattice, dentro de ella.
  • Sin frontera. Haciendo uso de implementaciones que hagan crecer dinámicamente el uso de memoria de la lattice implementada, se puede asumir que cada vez que las células deben interactuar con células fuera de la lattice, esta se hace más grande para dar cabida a estas interacciones. Obviamente, existe un límite (impuesto por la memoria disponible) para esta condición. Es muy importante no confundir esta condición de frontera con la definición original de A.C. cuya lattice es inicialmente infinita. En el caso de un A.C. sin frontera, la lattice comienza con un tamaño definido y finito, y conforme se requiera va creciendo en el tiempo, lo cual no lo hace necesariamente un modelo más cercano a la realidad, pues si se inicializara la lattice aleatoriamente, con esta condición sólo se pueden inicializar las células dentro de la lattice inicial finita, mientras que en el caso de la definición original, en teoría todas las células de la lattice infinita deberían ser inicializadas.

Variaciones

Los A.C. pueden variar en alguna de las características antes mencionadas, derivando en autómatas celulares no estándar.

Por ejemplo, un A.C. estándar tiene una cuadrícula donde se asume que las células son cuadros; es decir, que la retícula tiene una geometría cuadrada. Esto no es necesariamente un requisito, y se puede variar el A.C. para presentar una geometría triangular o hexagonal (en A.C. de 2 dimensiones, el cuadrado, el triángulo y el hexágono son las únicas figuras geométricas que llenan el plano).

También puede variarse el conjunto de estados   que cada célula puede tomar, la función de transición   de forma que ya no sea homogénea, utilizar elementos estocásticos (aleatoriedad) en   (lo que se conoce como A.C. probabilístico), variar las vecindades de cada célula, etc.

Historia

La historia de los autómatas celulares puede ser clasificada en tres etapas asociadas a los nombres de los científicos que en cada momento marcaron un punto de inflexión en el desarrollo de la teoría: la era de Von Neumann, la era de John Horton Conway y la era de Stephen Wolfram.

Era de Von Neumann

La primera etapa la inicia von Neumann,[1]​ quien una vez terminada su participación en el desarrollo y terminación de la primera computadora ENIAC tenía en mente desarrollar una máquina con la capacidad de construir a partir de sí misma otras máquinas (auto-reproducción) y soportar comportamiento complejo. Con la ayuda de su amigo Stanislaw Ulam, von Neumann implementa la teoría de los autómatas celulares en un vector de dos dimensiones   (donde   representa el conjunto de los enteros). El vector es llamado el espacio de evoluciones y cada una de las posiciones (llamadas células) en el vector toma un valor del conjunto de estados  . La función de transición que determina el comportamiento del autómata celular utiliza la vecindad de von Neumann, que consiste en un elemento central   (llamada célula central) y sus vecinos que son las células  ,  ,   y   (es decir, la célula en cuestión y sus células vecinas más próximas, arriba, abajo, izquierda y derecha, respectivamente).

Era de John Horton Conway

En 1970, John Horton Conway dio a conocer el autómata celular que probablemente sea el más conocido: el Juego de la vida (Life), publicado por Martin Gardner en su columna Mathematical Games en la revista Scientific American.[2]Life ocupa una cuadrícula (lattice bidimensional) donde se coloca al inicio un patrón de células "vivas" o "muertas". La vecindad para cada célula son ocho: los vecinos formados por la vecindad de Von Neumann y las cuatro células de las dos diagonales (esta vecindad se conoce como vecindad de Moore). De manera repetida, se aplican simultáneamente sobre todas las células de la cuadrícula las siguientes 3 reglas:

  1. Nacimiento: se reemplaza una célula muerta por una viva si dicha célula tiene exactamente 3 vecinos vivos.
  2. Muerte: se reemplaza una célula viva por una muerta si dicha célula no tiene más de 1 vecino vivo (muerte por aislamiento) o si tiene más de 3 vecinos vivos (muerte por sobrepoblación).
  3. Supervivencia: una célula viva permanecerá en ese estado si tiene 2 o 3 vecinos vivos.

Una de las características más importantes de Life es su capacidad de realizar cómputo universal, es decir, que con una distribución inicial apropiada de células vivas y muertas, Life se puede convertir en una computadora de propósito general (máquina de Turing).

Era de Stephen Wolfram

Stephen Wolfram[3]​ha realizado numerosas investigaciones sobre el comportamiento cualitativo de los A.C. Con base en su trabajo sobre AC unidimensionales, con dos o tres estados, sobre configuraciones periódicas que se presentan en el A.C., observó sus evoluciones para configuraciones iniciales aleatorias. Así, dada una regla, el A.C. exhibe diferentes comportamientos para diferentes condiciones iniciales.

De esta manera, Wolfram clasificó el comportamiento cualitativo de los A.C. unidimensionales. De acuerdo con esto, un AC pertenece a una de las siguientes clases:

  • Clase I. La evolución lleva a una configuración estable y homogénea, es decir, todas las células terminan por llegar al mismo valor.
  • Clase II. La evolución lleva a un conjunto de estructuras simples que son estables o periódicas.
  • Clase III. La evolución lleva a un patrón caótico.
  • Clase IV. La evolución lleva a estructuras aisladas que muestran un comportamiento complejo (es decir, ni completamente caótico, ni completamente ordenado, sino en la línea entre uno y otro, este suele ser el tipo de comportamiento más interesante que un sistema dinámico puede presentar).

Aplicaciones

 
El caparazón de Conus textile muestra un patrón caracterizable en términos de autómatas celulares.

Los autómatas celulares pueden ser usados para modelar numerosos sistemas físicos que se caractericen por un gran número de componentes homogéneos y que interactúen localmente entre sí. De hecho, cualquier sistema real al que se le puedan analogar los conceptos de "vecindad", "estados de los componentes" y "función de transición" es candidato para ser modelado por un A.C.

Las características de los autómatas celulares harán que dichos modelos sean discretos en tiempo, espacio o ambos, dependiendo de la variante de la definición de A.C. que se use. Algunos ejemplos de áreas en donde se utilizan los autómatas celulares son:

Ejemplos de autómatas celulares

AC de una dimensión

 
Autómata celular generado con la regla 30.

El AC no trivial más simple consiste en una retícula unidimensional de células que sólo pueden tener dos estados (« 0 » o « 1 »), con un vecindario constituido, para cada célula, por ella misma y por las dos células adyacentes (23=8 configuraciones posibles). Existen 28=256 modos de definir cuál ha de ser el estado de una célula en la generación siguiente para cada una de estas configuraciones, luego existen 256 AC diferentes de este tipo.

Consideremos el AC definido por la tabla siguiente, que nos da la regla de evolución:

Motivo inicial 111 110 101 100 011 010 001 000
Valor siguiente de la célula central 0 0 0 1 1 1 1 0

Juego de la vida

Modelo Nagel-Schreckenberg

Véase también

Referencias

  1. von Neumann, J. (1966)The Theory of Self-reproducing Automata, ed. Univ. of Illinois Press, Urbana, IL
  2. Gardner, M. (1970) Mathematical Games: The fantastic combinations of John Conway's new solitaire game "Life", Scientific American
  3. Wolfram (1986), Theory and Application of Cellular Automata, World Scientific, Singapur

Bibliografía

  • S. Wolfram, A New Kind of Science, 2002
  • B. Cipra, What's happening in the Mathematical Sciences, vols. 3 y 5, American Mathematical Society, EU, 1996, 2002

Enlaces externos

  • (CA researchers, historic links, free software, books and beyond (inglés))
  • Cellular Automata And the Edge of Chaos (inglés)
  • Autómata Celular
  • Autómatas Celulares
  • Autómata de Modelo Electromagnético

Software

  • Discrete Dynamics Lab
  • AC triangulares, pentagonales y hexagonales
  • Generador virtual de AC
  • EvoCell - Licencia GPL
  • Watch 16, 256 and 512 cellular automata grow in your browser
  • Prenzl!! Artistic Cellular Automata - Software libre para desarrollar AC artísticos y otros sistemas dinámicos.
  • Cafun – Freeware Java implementación para simular y visualizar autómatas celulares con configuración basada en XML
  • [1] - autómata celular en castellano, programado en C++ modo texto
  •   Datos: Q189156
  •   Multimedia: Cellular automata

autómata, celular, autómata, celular, modelo, matemático, computacional, para, sistema, dinámico, evoluciona, pasos, discretos, adecuado, para, modelar, sistemas, naturales, puedan, descritos, como, colección, masiva, objetos, simples, interactúen, localmente,. Un automata celular A C es un modelo matematico y computacional para un sistema dinamico que evoluciona en pasos discretos Es adecuado para modelar sistemas naturales que puedan ser descritos como una coleccion masiva de objetos simples que interactuen localmente unos con otros Son sistemas descubiertos dentro del campo de la fisica computacional por John von Neumann en la decada de 1950 La teoria de los automatas celulares se inicia con su precursor John von Neumann a finales de la decada de 1940 con su libro Theory of Self reproducing Automata editado y completado por A W Burks Aunque John von Neumann puso en practica los AA CC estos fueron concebidos en los anos 40 por Konrad Zuse y Stanislaw Ulam Zuse penso en los espacios de computo computing spaces como modelos discretos de sistemas fisicos Las contribuciones de Ulam vinieron al final de los 40 poco despues de haber inventado con Nicholas Metropolis el Metodo de Montecarlo Indice 1 Descripcion 1 1 Condiciones de frontera 1 2 Variaciones 2 Historia 2 1 Era de Von Neumann 2 2 Era de John Horton Conway 2 3 Era de Stephen Wolfram 3 Aplicaciones 4 Ejemplos de automatas celulares 4 1 AC de una dimension 4 2 Juego de la vida 4 3 Modelo Nagel Schreckenberg 5 Vease tambien 6 Referencias 7 Bibliografia 8 Enlaces externos 8 1 SoftwareDescripcion EditarNo existe una definicion formal y matematica aceptada de automata celular sin embargo se puede describir a un A C como una tupla es decir un conjunto ordenado de objetos caracterizado por los siguientes componentes Una rejilla o cuadriculado lattice de enteros conjunto Z displaystyle mathbb Z infinitamente extendida y con dimension d Z displaystyle d in mathbb Z Cada celda de la cuadricula se conoce como celula Cada celula puede tomar un valor en Z displaystyle mathbb Z a partir de un conjunto finito de estados k displaystyle k Cada celula ademas se caracteriza por su vecindad un conjunto finito de celulas en las cercanias de la misma De acuerdo con esto se aplica a todas las celulas de la cuadricula una funcion de transicion f displaystyle f que toma como argumentos los valores de la celula en cuestion y los valores de sus vecinos y regresa el nuevo valor que la celula tendra en la siguiente etapa de tiempo Esta funcion f displaystyle f se aplica como ya se dijo de forma homogenea a todas las celulas por cada paso discreto de tiempo Condiciones de frontera Editar Topologia del automata celular de 2D plegado en 3D para el caso de frontera periodica Por definicion un A C consiste en una reticula infinita de enteros Sin embargo para cuestiones practicas como en modelos de sistemas fisicos llevados a cabo en ordenadores de memoria finita se requiere tomar ciertas consideraciones a la hora de implementar un A C Por ello la definicion original se modifica para dar cabida a reticulas finitas en las que las celulas del A C interactuen Esto conlleva la consideracion extra de lo que debe suceder con aquellas celulas que se encuentren en los bordes de la reticula A la implementacion de una o varias consideraciones especificas se le conoce como condicion de frontera Dentro del ambito de los A C se pueden implementar numerosas condiciones de frontera en funcion de lo que el problema real requiera para su modelado Por ejemplo Frontera abierta Se considera que fuera de la lattice residen celulas todas con un valor fijo En el caso particular del juego de la vida y de otros A C con dos estados en su conjunto k displaystyle k una frontera se dice fria si las celulas fuera de la frontera se consideran muertas y caliente si se consideran vivas Frontera periodica Se considera a la lattice como si sus extremos se tocaran En una lattice de dimension 1 esto puede visualizarse en dos dimensiones como una circunferencia En dimension 2 la lattice podria visualizarse en tres dimensiones como un toroide Frontera reflectora Se considera que las celulas fuera de la lattice reflejan los valores de aquellas dentro de la lattice Asi una celula que estuviera junto al borde de la lattice fuera de ella tomaria como valor el de la celula que este junto al borde de la lattice dentro de ella Sin frontera Haciendo uso de implementaciones que hagan crecer dinamicamente el uso de memoria de la lattice implementada se puede asumir que cada vez que las celulas deben interactuar con celulas fuera de la lattice esta se hace mas grande para dar cabida a estas interacciones Obviamente existe un limite impuesto por la memoria disponible para esta condicion Es muy importante no confundir esta condicion de frontera con la definicion original de A C cuya lattice es inicialmente infinita En el caso de un A C sin frontera la lattice comienza con un tamano definido y finito y conforme se requiera va creciendo en el tiempo lo cual no lo hace necesariamente un modelo mas cercano a la realidad pues si se inicializara la lattice aleatoriamente con esta condicion solo se pueden inicializar las celulas dentro de la lattice inicial finita mientras que en el caso de la definicion original en teoria todas las celulas de la lattice infinita deberian ser inicializadas Variaciones Editar Los A C pueden variar en alguna de las caracteristicas antes mencionadas derivando en automatas celulares no estandar Por ejemplo un A C estandar tiene una cuadricula donde se asume que las celulas son cuadros es decir que la reticula tiene una geometria cuadrada Esto no es necesariamente un requisito y se puede variar el A C para presentar una geometria triangular o hexagonal en A C de 2 dimensiones el cuadrado el triangulo y el hexagono son las unicas figuras geometricas que llenan el plano Tambien puede variarse el conjunto de estados k displaystyle k que cada celula puede tomar la funcion de transicion f displaystyle f de forma que ya no sea homogenea utilizar elementos estocasticos aleatoriedad en f displaystyle f lo que se conoce como A C probabilistico variar las vecindades de cada celula etc Historia EditarLa historia de los automatas celulares puede ser clasificada en tres etapas asociadas a los nombres de los cientificos que en cada momento marcaron un punto de inflexion en el desarrollo de la teoria la era de Von Neumann la era de John Horton Conway y la era de Stephen Wolfram Era de Von Neumann Editar La primera etapa la inicia von Neumann 1 quien una vez terminada su participacion en el desarrollo y terminacion de la primera computadora ENIAC tenia en mente desarrollar una maquina con la capacidad de construir a partir de si misma otras maquinas auto reproduccion y soportar comportamiento complejo Con la ayuda de su amigo Stanislaw Ulam von Neumann implementa la teoria de los automatas celulares en un vector de dos dimensiones Z Z displaystyle mathbb Z times mathbb Z donde Z displaystyle mathbb Z representa el conjunto de los enteros El vector es llamado el espacio de evoluciones y cada una de las posiciones llamadas celulas en el vector toma un valor del conjunto de estados k 29 displaystyle k 29 La funcion de transicion que determina el comportamiento del automata celular utiliza la vecindad de von Neumann que consiste en un elemento central x i j displaystyle x i j llamada celula central y sus vecinos que son las celulas x i j 1 displaystyle x i j 1 x i j 1 displaystyle x i j 1 x i 1 j displaystyle x i 1 j y x i 1 j displaystyle x i 1 j es decir la celula en cuestion y sus celulas vecinas mas proximas arriba abajo izquierda y derecha respectivamente Era de John Horton Conway Editar En 1970 John Horton Conway dio a conocer el automata celular que probablemente sea el mas conocido el Juego de la vida Life publicado por Martin Gardner en su columna Mathematical Games en la revista Scientific American 2 Life ocupa una cuadricula lattice bidimensional donde se coloca al inicio un patron de celulas vivas o muertas La vecindad para cada celula son ocho los vecinos formados por la vecindad de Von Neumann y las cuatro celulas de las dos diagonales esta vecindad se conoce como vecindad de Moore De manera repetida se aplican simultaneamente sobre todas las celulas de la cuadricula las siguientes 3 reglas Nacimiento se reemplaza una celula muerta por una viva si dicha celula tiene exactamente 3 vecinos vivos Muerte se reemplaza una celula viva por una muerta si dicha celula no tiene mas de 1 vecino vivo muerte por aislamiento o si tiene mas de 3 vecinos vivos muerte por sobrepoblacion Supervivencia una celula viva permanecera en ese estado si tiene 2 o 3 vecinos vivos Una de las caracteristicas mas importantes de Life es su capacidad de realizar computo universal es decir que con una distribucion inicial apropiada de celulas vivas y muertas Life se puede convertir en una computadora de proposito general maquina de Turing Era de Stephen Wolfram Editar Stephen Wolfram 3 ha realizado numerosas investigaciones sobre el comportamiento cualitativo de los A C Con base en su trabajo sobre AC unidimensionales con dos o tres estados sobre configuraciones periodicas que se presentan en el A C observo sus evoluciones para configuraciones iniciales aleatorias Asi dada una regla el A C exhibe diferentes comportamientos para diferentes condiciones iniciales De esta manera Wolfram clasifico el comportamiento cualitativo de los A C unidimensionales De acuerdo con esto un AC pertenece a una de las siguientes clases Clase I La evolucion lleva a una configuracion estable y homogenea es decir todas las celulas terminan por llegar al mismo valor Clase II La evolucion lleva a un conjunto de estructuras simples que son estables o periodicas Clase III La evolucion lleva a un patron caotico Clase IV La evolucion lleva a estructuras aisladas que muestran un comportamiento complejo es decir ni completamente caotico ni completamente ordenado sino en la linea entre uno y otro este suele ser el tipo de comportamiento mas interesante que un sistema dinamico puede presentar Aplicaciones Editar El caparazon de Conus textile muestra un patron caracterizable en terminos de automatas celulares Los automatas celulares pueden ser usados para modelar numerosos sistemas fisicos que se caractericen por un gran numero de componentes homogeneos y que interactuen localmente entre si De hecho cualquier sistema real al que se le puedan analogar los conceptos de vecindad estados de los componentes y funcion de transicion es candidato para ser modelado por un A C Las caracteristicas de los automatas celulares haran que dichos modelos sean discretos en tiempo espacio o ambos dependiendo de la variante de la definicion de A C que se use Algunos ejemplos de areas en donde se utilizan los automatas celulares son Modelado del flujo de trafico y de peatones Modelado de fluidos gases o liquidos Modelado de la evolucion de celulas o virus como el VIH Modelado de procesos de percolacion Ejemplos de automatas celulares EditarAC de una dimension Editar Automata celular generado con la regla 30 El AC no trivial mas simple consiste en una reticula unidimensional de celulas que solo pueden tener dos estados 0 o 1 con un vecindario constituido para cada celula por ella misma y por las dos celulas adyacentes 23 8 configuraciones posibles Existen 28 256 modos de definir cual ha de ser el estado de una celula en la generacion siguiente para cada una de estas configuraciones luego existen 256 AC diferentes de este tipo Consideremos el AC definido por la tabla siguiente que nos da la regla de evolucion Motivo inicial 111 110 101 100 011 010 001 000Valor siguiente de la celula central 0 0 0 1 1 1 1 0Juego de la vida Editar Articulo principal Juego de la vida Modelo Nagel Schreckenberg Editar Articulo principal Modelo Nagel SchreckenbergVease tambien EditarAutomata celular cuantico Emergencia filosofia Maquina de Turing Teoria de automatas Ciudad PermutacionReferencias Editar von Neumann J 1966 The Theory of Self reproducing Automata ed Univ of Illinois Press Urbana IL Gardner M 1970 Mathematical Games The fantastic combinations of John Conway s new solitaire game Life Scientific American Wolfram 1986 Theory and Application of Cellular Automata World Scientific SingapurBibliografia EditarS Wolfram A New Kind of Science 2002 B Cipra What s happening in the Mathematical Sciences vols 3 y 5 American Mathematical Society EU 1996 2002Enlaces externos EditarCellular Automata Repository CA researchers historic links free software books and beyond ingles Cellular Automata And the Edge of Chaos ingles Una introduccion a los Automatas Celulares Automata Celular Automatas Celulares Modelacion de flujo de transito de autos utilizando automatas celulares Automata de Modelo ElectromagneticoSoftware Editar Discrete Dynamics Lab Mirek s Cellebration Modern Cellular Automata Loops autoreplicantes en el espacio celular AC triangulares pentagonales y hexagonales Generador virtual de AC EvoCell Licencia GPL Watch 16 256 and 512 cellular automata grow in your browser Prenzl Artistic Cellular Automata Software libre para desarrollar AC artisticos y otros sistemas dinamicos Coleccion de 10 AC Cafun Freeware Java implementacion para simular y visualizar automatas celulares con configuracion basada en XML 1 automata celular en castellano programado en C modo texto Datos Q189156 Multimedia Cellular automata Obtenido de https es wikipedia org w index php title Automata celular amp oldid 131819058, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos