Artificial life
From Wikipedia, the free encyclopedia
Artificial life, also known as alife or a-life, is the study of life, or more specifically the evolution of life, through the use of artificial models or artifacts. Most commonly the term specifically refers to simulating life processes in a computer simulation, however wet alife, the study of artificially created proteins and other life related molecules, can be considered alife, too.
Contents |
[edit] Overview
Artificial life studies the evolution of agents, or populations of individual life forms, in computer simulated artificial environments. The goal is to study phenomena found in real life evolution in a controlled manner, hopefully to eliminate some of the inherent limitations of evolutionary studies using live bacteria or mice. The simulated nature of the organisms and environments also allows for unorthodox and previously impossible experiments (such as a comparison of lamarckian evolution and natural selection).
Also sometimes included in the umbrella term "artificial life" are other agent based emergent properties, such as the development of economies or societies. The common thread between all "artificial life" is the concept of an iterative population approach: generations of agents which can mutate and become fitter over time.
[edit] Philosophy
At present the definition of life commonly accepted does not allow for any alife simulations to be considered "alive". However, different opinions about artificial life's potential have arisen:
- The strong alife (Strong AI) position states that "life is a process which can be abstracted away from any particular medium". (John von Neumann). Notably, Tom Ray declared that his program Tierra is not simulating life in a computer, but synthesizing it.
- The weak alife position denies the possibility of generating a "living process" outside of a chemical solution. Its researchers try instead to mimic life processes to understand the underlying mechanics of phenomena. That is: "we don't know what in nature generates this phenomenon, but it could be something as simple as..."
[edit] Techniques
- Cellular automata are often used, especially in the history of artificial life, due to the ease of scalability and parallelization. Alife and cellular autonoma share a closely tied history.
- Neural networks are sometimes used to model the brain of agents. Although traditionally more of an artificial intelligence technique, neural nets can be important for simulating population dynamics of higher organisms, such as mammals.
[edit] Related Subjects
[edit] Artificial Intelligence
AI research has always been the favorite older sibling to alife.
[edit] Artificial Chemistry
Artificial chemistry started as a method within the alife community to abstract the processes of chemical reactions.
[edit] Evolutionary Algorithms for Optimization Problems
Very related to weak alife, yet sometimes not considered as 'real artificial life', many optimization algorithms have been crafted which borrow from or closely mirror alife techniques. The primary difference lies in explicitly defining the fitness of an agent by its ability to solve a problem, instead of its ability to find food, reproduce, or avoid death.
- Ant colony optimization
- Evolutionary algorithm
- Genetic algorithm
- Genetic programming
- Swarm intelligence
[edit] History
Main article: history of artificial life
[edit] Criticism
ALife has had a controversial history; John Maynard Smith criticized certain artificial life work in 1995 as "fact-free science". However, the recent publication of artificial life articles in widely read journals such as Science and Nature is evidence that artificial life techniques are becoming more accepted in the mainstream, at least as a method of studying evolution.
Generally the lack of biologists and over abundance of computer scientists in the field has hurt the field's credibility within mainstream biology.
[edit] Notable Simulators
This is a list of Artificial life/Digital organism simulators, organized by the method of creature definition.
[edit] Program-based
These contain organisms with a complex DNA language, usually Turing complete. This language is more often in the form of a computer program than actual biological DNA. Assembly derivatives are the most common languages used. Use of cellular automata is common but not required.
- Avida
- Breve
- Darwin@Home [1]
- Darwinbots
- Evolve4.0 [2]
- Framsticks [3]
- Grey Thumb Society Simulators
- Physis (software) [6]
- Tierra
[edit] Module Based
Individual modules are added to a creature. These modules modify the creature's behaviors and characteristics either directly, by hard coding into the simulation (leg type A increases speed and metabolism), or indirectly, through the emergent interactions between a creature's modules (leg type A moves up and down with a frequency of X, which interacts with other legs to create motion). Generally these are simulators which emphasize user creation and accessibility over mutation and evolution.
[edit] Parameter Based
Organisms are generally constructed with pre defined and fixed behaviors that are controlled by various parameters that mutate. That is, each organism contains a collection of numbers or other finite parameters. Each parameter controls one or several aspects of an organism in a well defined way.
- Jeffrey Ventrella programs
- Evolites [9]
- Mitozoos [10]
- "Cell Based" - Parameters control the expression of "genes" or "proteins" which can themselves interact in complex ways. The resulting organism's properties are largely emergent, but are still encoded in the genome with a finite number of parameters.
- Cell-O-Sim [11]
- Kyresoo Plants
[edit] Neural Net Based
These simulations have creatures that learn and grow using neural nets or a close derivative. Emphasis is usually more on learning than natural selection.