Vida Artificial

Investigación

Artículos

Autor

Otros

Estudio de bichos digitales captura la atención de Microsoft
Fuente: CNN (17 de Agosto de 1999)

Científicos han creado bichos digitales en un acuario electrónico que pueden ir donde ningún código ha ido antes -- El planeta de software robusto.

Los bichos son realmente pequeñas piezas de código de computador, dándole instrucciones para reproducir o conseguir su equivalente de comida o energía moviéndose a través de 'puertas lógicas' y haciendo tareas matemáticas.

En una prueba usando el principio de la selección natural de Darwin, bichos que tuvieron éxito son recompensados con mas tiempo de procesamiento de computador, dice Charles Ofria de la asociación de investigación de la Universidad del Estado de Michigan, quien ayudó a desarrollar el software llamado Avida.

Los resultados inesperados del estudio fue que los 'bichos' desarrollados llegaron a ser extremadamente estables, como muestra una animación liberada el martes. Las imágenes muestran varios tonos de colores codificados, los cuales algunos de los investigadores llaman 'vida', reproduciéndose, compitiendo, muriendo o prosperando.

Ofria dijo: "Típicamente, esto realmente me sorprende por las cosas pasan", "Cualquier cosa pequeña que ellos puedan tomar como ventaja, la toman. La vida se desarrolla en caminos inesperados".

El mentor de Ofria, de Microsoft, Chris Adami en Caltech y su colega Richard Lenski de la Universidad del Estado de Michigan llegaron con U$50.000 para encauzar el proyecto en dirección al estudio de la estabilidad y robustez de lenguajes de programación.

"Usted puede ver porque Microsoft esta interesado en lenguajes robustos, porque ellos no lo están", dijo Adami.

El DNA es altamente robusto -- extensivas mutaciones generalmente fallan y causan que un organismo se "estrelle". Ahora el software Avida tiene su propio generador de vida, o código computacional, que es altamente impenetrable a mutaciones.

La investigación fue publicada recientemente en Nature.

Microsoft impresionado con la investigación

Microsoft supo del trabajo de Adami hace unos años y estaban impresionados. Dennis Adler, estaba intrigado por los resultados iniciales.

"¿Por que usted aleatoriamente cambia instrucciones y estas cosas tienden a sobrevivir?" dijo Adler. "Si usted fuera e hiciera esto en Excel, los resultados no serían buenos.".

Posibles aplicaciones servirían para endurecer sistemas operativos, lenguajes de programación, aplicaciones y máquinas virtuales. No obstante, ninguno todavía conoce como aplicar el trabajo de Adami y Ofria.

Avida corre como una máquina virtual, con organismos prosperando en números, no químicos. Programas que pueden leer y manipular números, son ingeniados para prosperar.

Adami dijo: un típico programa corre de 5000 a 20000 generaciones -- toma solo dos u ocho horas. En un laboratorio, este experimento podría tomar días y podría no generar resultados acertados o confiables.

Como cualquier carrera, los programas llegan a extenderse y extender sus mutaciones. Pero el finito espacio fuerza a la competición por tiempo de CPU, permitiendo la comparación con experimentos de laboratorio basado en bacterias

Animación muestra competencia digital

Ofria produjo la animación asignando colores a pequeños programas en Avida para ilustrar la competencia por tiempo de procesamiento.

La animación comienza con un simple organismo en el centro de un acuario virtual, el cual cubre cubre y llena rápidamente. Al pasar el tiempo, nuevos organismos nacen como mutaciones del código original. El código con ventaja computacional se disemina y colisiona con los otros.

"Cada vez que usted ve un color que esta cambiando rápidamente, indica que hay un nuevo genotipo que viene alrededor", dijo Ofria.

Escribir programas robustos de computador es casi que imposible, él dijo, pero Avida ha hecho que el proceso de crecimiento sea fácil. "Nosotros nunca les dijimos a ellos como hacer estas tareas", "Todo viene por rasguños".

Proceso automatizado en paralelo

El acuario digital puede ser parecido a una población o cultura de programas que viven juntos y resuelven problemas computacionales en paralelo, en otras palabras un procesador masivo paralelo, dijo Adami.

Pero la escala es excepcionalmente masiva comparada con la arquitectura contemporánea, con la posibilidad para muchos millones de programas corriendo al tiempo.

Arquitectura estándar requiere una programación para enseñarle al procesador el orden de las tareas. Avida a si misma programa el proceso en paralelo, dijo Adami. El trabajar con este software, puede ayudar a los desarrolladores para que aprendan como escribir cualquier programa.

Alienígenas, moscas de la fruta y hongos

El artículo compara el acuario digital con los resultados de las mutaciones de la E. Coli, bacteria que vive en el colon y son usadas ampliamente para experimentos genéticos. El acuario digital provee mas resultados acertados que el laboratorio y pueden responder ciertas preguntas biológicas que están fuera de su alcance por practicidad o ética.

Adami dijo que el software puede ser puesto a sus limites para estudiar como la red de bichos "se cura a si misma", para algunos que están preocupados por raros tipos de moscas de la fruta y hongos que están al borde de la extinción.

Lenski en la Universidad del Estado de Michigan ve la aproximación como una herramienta que complementa, no reemplaza, los tradicionales estudios de competición entre bacterias en laboratorio.

La investigación apunta también a las reglas que regirían a la vida extraterrestre, dijo Adami.

"Nosotros tenemos aquí es una forma de vida alienígena porque esta no tiene nada que ver con vida bioquímica", dijo Adami.

Acorde con Adami, la vida mas allá de nuestro sistema solar podría no basarse en DNA, la cual es un conjunto de instrucciones codificadas para la vida terrestre. En vez de eso, la vida puede ser basada en el lenguaje universal de las matemáticas.

"La idea es que usted no necesita ciertos químicos para hacer vida. Usted necesita ciertos procesos", el dijo. "Y esos procesos viven en el disco duro".


Sturdy digital bugs capture Microsoft's attention

avida lattice
A graphical representation of an Avida lattice during mutation

August 17, 1999
Web posted at: 4:08 p.m. EDT (2008 GMT)


In this story:

Microsoft impressed with research

Animation shows digital competition

Automated parallel processing

Aliens, fruit flies and fungi


By Robin Lloyd
CNN Interactive Senior Writer

(CNN) -- Scientists have created digital bugs in an electronic petri dish that can go where no code has gone before -- the planet of robust software.

The bugs are really small pieces of computer code, given instructions to reproduce or get their equivalent of food or energy by moving through 'logic gates' and performing mathematical tasks.

In a test of Darwin's principle of natural selection, those that succeed are rewarded with more computer processing time, says Michigan State University research associate Charles Ofria, who helped develop the software called Avida.

The unexpected result of the study was that the 'bugs' evolved to become extremely stable, as shown in an animation released Tuesday. The images show various color-coded strains, which some of the researchers call 'life,' reproducing, competing, dying off or thriving.

"Typically, it really surprises me how things go," Ofria says. "Any little thing they can take advantage of, they do. Life evolves in such unexpected ways, it happens."

Microsoft provided Ofria's mentor, Chris Adami at Caltech and his colleague Richard Lenski of Michigan State University with $50,000 in seed money to steer the project toward the study the evolvability and robustness of computer languages.

"You can see why Microsoft is interested in robust languages because theirs is not," Adami said.

In contrast with the mad keystrokes of bewildered users and driven coders, DNA is highly robust -- extensive mutations generally fail to cause an organism to 'crash.' Now the Avida software has self-generated life, or a computer code, that is highly impervious to mutations.

The research was published in latest issue of Nature.

Microsoft impressed with research

Microsoft learned of Adami's work a few years back and was impressed. Dennis Adler, now on leave from his university relations job with Microsoft was intrigued by the initial results.

"Why can you randomly change instructions and these things tend to survive?" Adler said. "If you went in and did that with Excel, the results wouldn't be good."

Possible applications might include tougher operating systems, programming languages, applications and virtual machines. Still, no one yet knows how to get there from Adami and Ofria's work.

Avida runs as a virtual machine, with organisms thriving on numbers not chemicals. Programs that can read and manipulate numbers via 80 calculations made available to them are engineered to thrive.

A typical program runs for 5,000 to 20,000 generations -- taking only two to eight hours. In a lab, that experiment could take days and might not generate accurate or reliable results, Adami said.

As time goes on in any particular run, programs become longer and longer giving rise to mutations. But finite space forces competition for CPU time, allowing the comparison with laboratory experiments on actual bacteria.

Animation shows digital competition

Ofria produced the animation by assigning colors to small programs in Avida to illustrate the competition for processing time, says Ofria.

The animation starts off with a single organism at the center of the virtual petri dish, which quickly covers and fills it. As time goes on, new organisms erupt as mutations of the original code. The code with the computational advantage spreads and collides with the others.

"Each time you see color that is sweeping out quickly, that indicates there is a new genotype that came around," Ofria said.

Writing robust computer programs is nearly impossible, he said, but Avida has made the process of growing them easy. "We never tell them how to do these tasks," he said. "It all comes from scratch."

Automated parallel processing

The digital petri dish can be likened to a population or culture of programs that lives together and solves computational problems in parallel, in other words a massively parallel processor, Adami said.

But the scale is exceptionally massive compared to contemporary architecture, with the possiblity for as many as a million programs operating at once.

Standard architecture requires a schedule telling the processor the order of tasks. Avida is a self-scheduling parallel process, Adami said. So further work with the software could help developers learn how to write such a program, he said.

Aliens, fruit flies and fungi

The article compares the digital petri dish with the results of mutations to E. Coli, bacteria that live in the colon and are used widely for genetic experiments. The digital dish provided far more accurate results than the laboratory and can answer certain biology questions that are out of reach either practically or ethically.

Adami says the software can be pushed to its limits to study how the network of bugs "heals itself," something that offends those worried about pushing even rare types of fruit flies or fungi to the point of extinction.

Lenski at the Michigan State University sees the approach as a tool that can complement, not replace, traditional studies of bacterial competition in the laboratory.

The research also points to clues for the ground rules of extraterrestrial life, Adami said.

"What we have here is some alien life because it has nothing to do with biochemical life," Adami says.

According to Adami, life beyond our solar system may not be based on DNA, which can be thought of as a set of coding instructions for terrestrial life. Instead, that life could be based on the universal language of mathematics.

"The idea is you don't need certain chemicals to make life. You just need certain processes," he said. "And these processes live on the hard drive."

RELATED SITES:

Microsoft
California Institute of Technology
The Avida Artificial Life Group
Michigan State University

Hosted by www.Geocities.ws

1