You are on page 1of 20

INTRODUCCIN A LA VIDA ARTIFICIAL Y AUTMATAS CELULARES

Departamento de Aplicacin de Microcomputadoras Instituto de Ciencias, Universidad Autnoma de Puebla Lpez Salinas Ana Miriam Matemticas Aplicadas y Computacin Facultad de Estudios Superiores Acatln, UNAM 26 de agosto de 2011

Resumen

En objetivo de ste reporte es dar una breve explicacin del concepto de Vida Articial y la importancia que tienen los Autmatas Celulares(AC) en el desarrollo y las investigaciones realizadas en sta disciplina. Principalmente describe y cita algunos algortmos que estudian e intentan describir y ejemplicar el comportamiento de seres vivos a travs de programas de cmputo.

ndice
1. Introduccin 2. Vida Articial 2.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . 3. Autmatas Celulares 3.1. Juego de la vida (Conways Life) . . . . . . . . . . . 3.2. Hormiga de Langton . . . . . . . . . . . . . . . . . . 4. Sistemas de Lindenmayer 5. Boids de Craig Reynolds 6. Conclusiones 3 3 5 7 9 12 14 16 18

1.

Introduccin
La Vida Articial es la ciencia que trata de situar la vida "tal como es" dentro del contexto de la vida "tal como podria ser" Christopher Langton

El trmino Vida Articial (Articial Life) describe el intento del hombre al tratar de conseguir modelar y explicar la vida mediante la creacin de sistemas articiales que exhiben la conducta de los seres vivos naturales, deniendo su comportamiento en funcin de un grupo de reglas obtenidas mediante modelos de simulacin y uso de herramientas de Ingeniera Computacional. ste artculo pretende dar una introduccin general hacia el estudio de Vida Articial, citando algunos principios histricos que dieron lugar a sta discplina, as como, su enfoque hacia los Autmatas Celulares (AC), principalmente al algortmo del Juego de la Vida de Conway (Conways Life) Investigadores de Vida Articial consideran a los Autmatas Celulares como un ejemplo de bsqueda de inteligencia y desarrollo de Vida Articial, ste hecho no quiere decir que los AC sean inteligentes, ya que no parecen serlo, ms en cambio poseen aspectos principales de la vida, y tienden a imitar procesos y comportamientos de los seres vivos. Los procesos celulares tambin tienen un gran vnculo con la VA, teniendo como objetivo el fenmeno de auto-reproduccin, donde los trabajos con Autmatas Celulares son un ejemplo del intento de alcanzar la simulacin de ste fenmeno.

2.

Vida Articial

La biologa es el estudio cientco de la vida en la Tierra, basado en la qumica del carbono y sta es la nica clase de vida que ha estado disponible para el estudio. Pero el hombre decidi aplicar sus conocimientos de la biologa al mundo de la tecnoga y la computacin, para dar lugar a lo que ahora se le conoce como Vida Articial (Artial Life). [Christopher Langton] la Vida Articial es la disciplina que tiene por nalidad el estudio de los sistemas contruidos por el hom3

bre, ya sea en el interior de un ordenador u otro medio articial y que exhiben comportamientos caractersticos de los seres vivientes. [Christopher Langton]La vida articial es simplemente el acercamiento a la biologa sinttica: en lugar de tomar los seres vivos adems, la Vida Articial trata de poner las cosas juntas. . . . As, por ejemplo, La Vida Articial consiste en los intentos de (1) sintetizar el proceso de evolucin (2) en las computadoras, y (3) estarn interesados en lo que surge del proceso, aunque los resultados no tienen anlogos en el mundo natural. [Bedau 1996]Es el intento de comprender lo esencial de la naturaleza y de la vida mediante el uso de modelos computacionales. La Vida Articial intenta desarrollar teoras sobre la vida y los seres vivos teniendo como objetivo emular caractersticas de stos seres mediante sistemas articiales que estudien problemas de biologa terica, as como usar los resultados de la Vida Articial para nes tecnolgicos mediante la ingeniera. En otras palabras el objetivo de la VA no es slo generar modelos bilogicos, sino tambin investigar en general los principios de la vida.

Fig - 1 Objetivos de la Vida Articial

2.1.

Antecedentes

Durante aos el hombre ha concebido la vida como obra de los dioses y ha calicado cierto los mitos humanos que relatan la existencia de seres dadores de vida, sin embargo, con el desarrollo de experimentos de laboratorio con el n de comprender el origen de la vida, asi como, el descubrimiento de la evolucin desde punto de vista biolgico, esos mitos han quedado lejos del concepto de vida. Dentro de la Ingeniera, el uso de clulas embrionarias, evolucin, gentica y la aplicacin de principios biolgicos a sistemas computacionales se genera una nueva disciplina: Vida Articial. Desde siempre el hombre ha soado con crear seres articiales que presenten caractersticas escenciales de los seres vivos. A mediados de los 80s un grupo de investigadores especializados en distintas disciplinas, encabezado por Christopher Langton proponen por primera vez el trmino Vida Articial (Articial Life), durante el primer congreso sobre VA, International Conference on the Synthesis and Simulation o Living Systems ("Primera Conferencia Internacional de la Sntesis y Simulacin de Sistemas Vivientes") organizado en el Laboratorio Nacional Los lamos, Nuevo Mxico, 1987 taller dedicado a la invetigacin cientca multidisciplinaria en el medio natural, social y computacional. El propsito de ste taller fue reunir cientcos de la computacin, bilogos, fsicos, antroplogos, etc., que se encontraban en la necesidad de comprender los sistemas complejos que la vida humana y gran parte del mundo presentan, desarrollando modelos matemticos que trataban de explicar el origen de la vida, autmatas que se auto-reproducen, programas de ordenador mediante los mecanismos de la evolucin darwiniana, simulaciones de comportamientos de aves y grupo de peces, modelos de crecimiento y desarrollo de plantas articiales y mucho ms. Durante se tiempo de investigacin, los participantes llegaron a la conclusin que los modelos lineales simplemente no podan describir muchos de los fenmenos naturales, y pequeos cambios en los parmetros del modelo afectaba en gran medida su comportamiento. Tambin encontraron fenmenos como el clima, el crecimiento de plantas, el desarrollo de organismos multicelulares, la inteligencia, la evolucin, etc., que no tenan forma de modelado, es decir, no existe algn modelo lineal que los satisfaga, por lo consiguiente decidieron hacer uso de modelos no lineales. Los sistemas lineales son aquellos para los
5

que el comportamiento del conjunto es la suma del comportamiento de sus partes, es decir, cumplen con el principio de superposicin, mientras que en los sistemas no lineales el comportamiento de la totalidad es ms que la suma de sus partes. Los origenes de sta ciencia tienen bases en las ideas de Alan Turing durante los aos 40 con la creacin de una mquina ideal que consiste de una cinta innita dividida en cuadros sobre la que se realizan las operaciones de manipulacin de smbolos, la mquina dispone de una cabeza lectora pocisionada en cualquier celda de la cinta, donde lee el contenido de dicha celda e interpreta ciertas instrucciones que denen el siguiente comportamiento de la cabeza; y es considerada como un autmata capaz de leer lenguajes formales. Pero el estudio de la Vida Articial aument a principios de los 50s cuando el matemtico e informtico John Von Neumann public su libro "Theory of Self-reproducing Automata". como marco para el estudio del proceso de reproduccin, donde implement la Teora de Autmatas Celulares y su principal intencin era desarrollar una mquina capaz de construir otras mquinas a partir de s misma y soportar un comportamiento complejo denido bajo ciertas reglas. Inici sus estudios desarrollando autmatas auto-reproductivos basndose en ecuaciones diferenciales parciales (EDP), pero rechaz la idea de usar las EDP, ya que no encontraba reglas bsicas para poder desarrollar stos autmatas, as que socorri al uso de componentes celulares para poder darle solucin al problema. En los aos 70 el matemtico John Horton Conway invent el juego ms famoso de autmatas celulares, El Juego de la Vida (The Game of Life), que se deni como una equivalencia a una maquina de turing. Los estudios continuaron en 1984 cuando stephen Wolfram, un cientco en computacin mostr interes en los Autmatas Celulares(AC) y se dedic a estudiar, observar y clasicar en cuatro clases los tipos de complejidad de comportamiento que presentaban los autmatas celulares unidimensionales, a travs del tiempo. Entre los aos 1992 y 2002, Wolfram hace un intenso estudio de ACs y su aplicacin a la vida real, donde menciona como idea principal la posibilidad de modelar y comprender cualquier fenmeno natural.

3.

Autmatas Celulares

A partir de casi medio siglo atrs, mucho antes de que existiera la Vida Articial, el pionero de la informtica John Von Neumann investig la cuestin del origen de la vida y trat de disear una mquina capaz de reproducirse. La idea en el diseo de auto-reproduccin llev a Von Neumann a inventar un sistema denominado: Autmatas Celulares, capaces de contruir cualquier autmata apartir de un conjunto apropiado de instrucciones codicadas. Los Autmata Celulares se consideran sistemas dinmicos extendidos, que consisten de un nmero considerable de componentes simples idnticos con conectividad local, y son denidos como un sistemas que evoluciona en tiempo y espacio discretos, compuesto de una coleccin de celdas discretas y deterministas, ordenadas en la, en forma de matriz o en tres dimensiones, que actualizan sus estados a lo largo del tiempo en base a los estados que tenan las celdas vecinas en el momento inmediato anterior, en otras palabras, el estado siguiente de una celda es determinado por el estado actual de ella y de sus celdas vecinas, donde cada celda se comporta como un autmata de estado nito. Un autmata nito es un modelo de sistema con entradas y salidas discretas, consiste en un conjunto nito de estados y un conjunto de transiciones entre esos estados. La entrada y el estado actuales del autmata determinan su conducta en el instante siguiente. Un Autmata celular consiste de dos componentes: el primero es un espacio celular, una red de n celdas de estado nito, cada una con un patrn idntico de conexiones locales con otras celdas, junto con condiciones de lmite, si se trata de una red nita. El segundo componente consiste en reglas de trancisin que actualizan, o bien denen los estados de cada celda, donde stos estados junto con el de las celdas conectadas a ellas dan lugar a lo que es una vecindad. Existen diversas deniciones de vecindad de una celda, la Vecindad de Von Neumann en una matriz unidimensional incluye slo a las celdas vertical y horizontalmente vecinas y no a las diagonales, es decir, cada celda cuenta con 4 vecinos, mientras que la Vecindad de Moore involucra a todas las celdas de alrededor, ya sean las inmediatas conexas o las que ocupan zonas de vecindad de tamao arbitriario, cuentan con 8 vecinos. Las guras 2 - a) y b) nos muestran stos tipos de vecindades
7

Fig. 2 - a)Vecindades de Von Neumann

b) Vecindades de Moore

Fig. 3 - Ejemplo de autmata celular

Fig. 4 - Evolucin de un autmata celular (Regla 22 de Wolfram)

En la formacin de Vida Articial los autmatas celulares son un concepto fundamental y son usados como modelos de simulacin de sistemas qumicos no lineales, fsicos, biolgicos y la evolucin de las galaxias espirales(Gerola y Seiden, 1978; Schewe, 1981). 3.1. Juego de la vida (Conways Life)

John Horton Conway naci en 1937, comenz su carrera de Matemticas en la Universidad de Cambrige. A nales de 1960 Conway, motivado por el trabajo de Von Neumann, siguiendo la idea de construir una mquina capaz de construir copias de s misma y haciendo uso del concepto de vecindad de un autmata denido por Moore, dise y di a conocer el autmata celular ms famoso: El juego de la Vida (The Game of the Life), tambin llamado El Juego de Conway (Conways Life), un juego de sentido solitario, es decir, para un solo jugador. ste juego es un autmata bidimensional donde cada clula puede estar en uno de los dos estados 0 o 1, (muerto o vivo). A partir de un estado inicial el autmata va a evolucionar en base a unas funciones de trancisin, adems una clula estar en un estado concreto determinado unicamente por el estado anterior de las celulas vecinas, as como el de la propia clula. Conway deni el siguiente conjunto de reglas: SOLEDAD, si una clula viva esta sola o tiene un solo vecino muere. SOBREPOBLACIN, si una clula viva tiene ms de tres vecinos muere ESTABILIDAD, de lo contrario la clula se queda igual.

Fig. 5 - Ejemplos del juego de la vida

En 1970 el Martin Gardner describi y public el trabajo de Conway en la revista Scientic American, artculo que inspir a mucha gente en todas partes del mundo a experimentar con el Juego de la Vida. El uso consecutivo de stos autmatas encontr muchas conguraciones interesantes en ellos y se denieron patrones como consecuencia de la complejidad de su comportamiento. Los patrones bsicos segun nivel de complejidad son: Patrones estticos (Still-lifes), corresponde a las clulas que son estticas, es decir, no producen nacimientos o muerte. Ejemplos:

Fig. 6 - a) Patrn bloque (Block)

b) Patrn barco (Boat)

10

c) Patrn tina (Tub)

d) Patrn serpiente (Snake)

e) Patrn Integral(Integral)

Patrones repetitivos (Oscillators), son los patrones que se repiten despues de una secuencia ja de estados y vuelven a su estado original, es decir, tienen un comportamiento peridico. Ejemplo:

f ) Patrn parpadeador (Blinker)

Patrones que se ladean(Spaceships), se dice a los patrones que se repiten despus de una secuencia ja de estados, retornando a su estado original y desplazandose por toda la rejilla a una velocidad constante. Ejemplo:

11

g) Patrn Glier, comportamiento de un glider en el los tiempos, t=0, t=1, t=2, t=3 y t=4

Patrones reproductores. Patrones que aumentan constantemente su tamao de poblacin (clulas vivas). Patrones inestales, Patrones que evolucionan a travs de una secuencia de estados y nunca vuelven a su estado original. Existen tambin patrones que tardan mucho tiempo en estabilizarse y son llamados "Methuselahs. 3.2. Hormiga de Langton

Las ideas de imitar caractersticas de seres vivos con ayuda de informtica e ingeniera haciendo uso de sistemas dinmicos, y la bsqueda de modelos simples con comportamientos complejos, llevaron a varios investigadores a disear algoritmos que simulen stas actitudes. En 1986 Christopher Langton cre un algoritmo sencillo, un tipo especial de autmatas celulares llamado Hormiga de Langton (Langtons Ant). Funciona en una maya cuadriculada bidimensional con celdas generalmente blancas o negras, donde la hormiga es la cabeza lectora e interpretadora que se desplaza de acuerdo a los estados que va encontrando hacia cualquiera de los puntos cardinales sobre sta red, siguiendo un conjunto de reglas diseadas especialmente para guiar su comportamiento. REGLAS: La hormiga da un paso adelante. Si la hormiga encuentra un cuadro blanco, lo pinta de negro, da un giro de 90o hacia la derecha y avanza una unidad. Si la hormiga encuentra un cuadro negro, lo pinta de blanco, gir 90o hacia la izquierda y avanza una unidad.
12

Fig. 7 - Comportamiento de la hormiga

A pesar de que la Hormiga de Langton se mueve siguiendo reglas relativamente simples, se obtiene un nmero innito de posibles resultados, la mayora de stos caticos. No existe algn mtodo general de anlisis que dena o inera la posicin de la hormiga despus de un determinado nmero de movimientos, ya que sta presenta un grado considerable de autonoma. Es importante mencionar que La Hormiga de Langton representa una tapa esencial en la evolucin de los sistemas complejos tales como la vida: una etapa en la que el comportamiento catico es el estudio principal.

Fig. 8 - Ejemplo de evolucin del algoritmo hormiga

13

4.

Sistemas de Lindenmayer

En 1968 el bilogo Aristid Lindermayer invent un formalismo matmatico para proporcionar una descripcin formal del desarrollo de organismos multicelulares simples como algas, en trminos generales cre sistemas para modelar y simular el crecimiento de plantas. Para hacer sto en manera sistemtica propone un tipo de sistema conocidos como Sistemas de Lindermayer (L-Systems), donde el desarrollo del organismo sigue un cierto patrn y es considerado como una serie de pasos, donde cada uno tarda cierta cantidad de tiempo para completarse dependiendo de la aplicacin. Un sistema de ste tipo consiste de una clula originaria (semilla), y una descripcin para generar nuevas a partir de las anteriores, actuando como mecanismo generativo y la semilla se redene como un axioma. Los Sistemas de Lindermayer (L-Systems) son un tipo de gramtica verstil y consisten en un conjunto de reglas de reescritura de cadenas de smbolos o clulas con un gran vnculo hacia las gramticas formales tratadas por Chomsky. Ejemplo: Axioma: B B F[-B] + B Reglas: F FF A partir Pasos 0 1 2 3 de stas reglas se genera la cadena: Cadena obtenida B F[-B] + B FF[-F[-B] + B] + F[-B] + B FFFF[-FF[-F[-B] + B] + F[-B] + B] + FF[-F[-B] + B] + F[-B] + B

El ejemplo nos muestra como, con solamente tres iteraciones de la regla de sutitucin se produce un resultado complejo, lo que nos hace pensar en la magnitud de complejidad que se puede esperar de un simple principio de recursividad. Los L-System no generan ninguna especie de grcas por s mismos, sino slo las cadenas de smbolos. Aos ms tarde, Alvin Smith (1984) le di a los sistemas una interpretacin computacional basada

14

en comandos de grcos de tortuga, un lenguaje muy simple que habia sido implementado por Seymour Papert, diseado originalmente para que los nios aprendieran a pensar en las categorias geomtricas, un mdulo de dibujo del lenguaje LOGO. Existen varias formas elaboradas de L-System, la ms simple es la llamada D0L, donde D da a entender que se trata de un sistema determinista, y el 0 expresa que la gramtica es independiente del contexto. Los comandos bsicos ms comunes de gracacin de un sistema D0L son: Comando Accin F Dibuja hacia adelante un nmero determinado de posiciones G Sin dibujar, mueve la tortuga hacia atrs un nmero de posiciones + Girar la tortuga hacia la derecha un ngulo determinado. Si se especica un nmero entero antes del signo, la tortuga realiza el giro esa cantidad de veces. Gira hacia la izquierda [ Guarda la posicin y ngulo actual en un pila de estados. ] Eliminar el ltimo estado guardado en la pila y restaurar la ltima posicin y ngulo guardado. | Mover la tortuga hacia adelante cierta longitud, dibujando una lnea desde la posicin anterior hacia la nueva. En algunas aplicaciones, girar 90o o 180o .

15

Fig. 9 - Ejemplos de L-System

El axioma (o semilla) junto con las reglas generan un rbol, tan grande como el nmero de recursiones que se generen. Con un dispositivo que pueda interpretar cada smbolo como una instruccin, las series que se van generando representaran el plan de construccin de una estructura fractal.

Fig. 10 - Ejemplo de L-System fractal

Los matemticos y naturistas han utilizado los L-System para modelar plantas, arboles, arbustos, etc.

5.

Boids de Craig Reynolds

Uno de los algoritmos ms famosos en el campo de la Vida Articial, es el Flocking Boids inventado a mediados de los aos 80s
16

por Craig Reynolds. Es un modelo que simula el comportamiento de un conjunto de animales como aves y peces. El algortmo est compuesto de reglas muy simples y en cada paso de evolucin toma un comportamiento muy complejo y realista. Cada conjunto de organismos pertencen a un barrio, que se caracteriza por estar limitado a cierta distancia. Las clulas fuera del barrio son ignoradas. Las tres reglas denidas por Reynolds para explicar el comportamiento de un conjunto de animales son: Separacin: Se utiliza para evitar que los miembros del conjunto de partculas choquen, conociendo y manteniendo una distancia existente entre ellos.

Fig. 11 - a) Separacin

Alineacin: Es la regla que conserva la direccin de las partculas, es decir, se encarga de que todas las clulas se muevan en la misma direccin.

b) Alineacin

Cohesin: Regla que intenta conservar a los miembros del grupo lo ms cerca posible. Cada clula se acerca a sus vecinos ms prximos.
17

c) Cohesin

El algoritmo permite a los Boids evitar obstculos, es decir, cuando el grupo de organismos est en movimiento debe ser capaz de evitar chocar con objetos que se presente en su camino. Reynolds calica su algoritmo como una especie de sistemas de partculas. Se dice sistema de partculas, a un conjunto de clulas donde cada una de ellas se comporta de manera distinta y adems tienen un ciclo de vida, nacen, crecen y mueren. Se clasican segn su comportamiento en: partculas que no interactan entre s y partculas que s interactan entre si. Actualmente los modelos Boids de Reynolds son utilizados en la biologa, ecologa, economa y otros campos de estudio donde son considerados como ejemplo de un modelo de base individual, una clase de simulacin utilizado para capturar el comportamiento global de un gran nmero de agentes autnomos que interactan entre si.

6.

Conclusiones

A lo largo de ste reporte se presentaron ejemplos de Vida Articial; algunos algoritmos que hacen uso del concepto de Autmatas Celulares, basados en la formacin de patrones en sistemas naturales y articiales mediante reglas muy simples. Los sistemas de Lindermayer son utilizados para explicar el crecimiento de plantas, donde se presentan patrones muy complejos de conducta. La simulacin que exhibe el fenmeno de auto-organizacin en un conjunto de animales, se encuentra en los Boids de Reynolds. El comportamiento de organismos (clulas) que interacan entre s, deniendo su comportamiento en funcin del comportamiento de
18

sus vecinos, formando patrones lo demuestra el Juego de la Vida. La aplicacin de stos algoritmos trata de conseguir un gran numero de soluciones a problemas de evolucin y optimizacin. La Vida Articial es un nuevo campo de investigacin, actualmente estudiado por diversas disciplinas, donde los principales objetivos son: estudiar cuestiones biolgicas para tratar de explicar fenmenos complejos de la naturaleza, desarrollando aplicaciones prcticas que simulen stos comportamientos, y abstraer los principios de conducta inteligente. El uso de tcnicas de computacin, mquinas de auto-reproduccin, principios de biologa, entre otras herramientas han logrado inquietar al hombre a desarrollar algortmos que hacen posible alcanzar las metas de sta nuevo concepto. Actualmente la Vida Articial le ha dado un crecimiento muy notable al campo de la ciencia con la introduccin de nuevas deniciones y mtodos que pretenden dar solucin a diversos problemas existentes. En consecuencia ayuda a comprender mejor los principios de la biologa y su aplicacin en la formulacin de ideas que permitan dar solucin a problemas del mundo actual, tales como la distribucin de recursos, predicciones del mercado, minera de datos, entre otros.

Referencias
[1] [Rafael Lahoz-Beltr, 2004] Bioinfrmatica: simulacin, vida articial e inteligencia articial [2] [Vadillo Muoz] Desarrollo de un Simulador de Vida ArticialPara el estudio de la evolucin de Comportamientos Sociales [3] [PDF] Herramientas para sistemas complejos: autmatas celulares y algoritmos autoorganizativos [4] [PDF] Autmatas y lenguajes [5] [Christopher G. Langton, 2000] Articial Life [6] [Sarah Kember, 2003] Cyberfeminism and articial life [7] [Java Prog. Techniques for Games. Chapter 13. Flocking Boids] http://fivedots.coe.psu.ac.th/~ad/jg/ch13/chap13.pdf [8] [Articial Life] http://www.ais.uni-bonn.de/SS09/skript_ artif_life_pfeifer_unizh.pdf
19

[9] [Articial Life] http://alife.org/membership.html [10] [Complejidad y el Caos: Una exploracin antropolgica] http://d.yimg.com/kq/groups/13334744/747498768/name/ Complejidad+y+Caos+-+Una+Exploracion+Antropologica. pdf [11] [Martin, Gardner, 1970] Mathematical Games: The fantastic combinations of John Conways new solitaire game Life. Scientic American [12] [M. Jesus y C. Ro.]Mquinas y Matemticas-Los autmatas nitos y sistemas nerviosos. [13] [Ciencias de la Computacin]Autmatas nitos [14] [Robert C. Newman]Articial Life and Cellular Automata [15] [Graphical Modeling using L-System] http:// algorithmicbotany.org/papers/abop/abop-ch1.pdf [16] [Craig Reynolds]Boids http://www.red3d.com/cwr/boids/ [17] Los robots y el Algoritmo Gentico - El robot como una forma de vida articial http://www.blackwellpublishing.com/ pdf/bechtel2.pdf

20

You might also like