| ||||||||||||||
| ||||||||||||||
|
||||||||||||||
|
Artificial Life, or ALife, is the attempt to get computers to accurately model the ways and practises of nature. As you can tell from this definition, not only is ALife a large domain, it overlaps very much with Artificial Intelligence. So much so, in fact, that ALife deals with various aspects of AI (such as genetic algorithms), and AI deals with various aspects of Alife (such as flocking).
Introduction to ALifeAlife and AI coexist together very well. ALife looks at algorithms that can mimic nature and it ways -- cellular automata, simulation of group behaviour (ants, for example) -- whereas AI tends to look at mimicking (creating?) human intelligence.
Cellular AutomataA prime area of ALife is that of Cellular Automata (CA). The best definition of CA I've found so far is as follows:"...A regular spatial lattice of "cells", each of which can have any one of a finite number of states. The state of all cells in the lattice are updated simultaneously and the state of the entire lattice advances in discrete time steps. The state of each cell in the lattice is updated according to a local rule which may depend on the state of the cell and its neighbors at the previous time step..." From FOLDOC.There are two very good examples of CAs. Wolfram's 1D CA, and Conway's Life, a 2D CA.
Wolfram's 1D-CA
Wolfram was a genius for his age, and he showed how incredible complexity could come out of a simple rules and simple structures. Wolfram created a program where each of the cells were either on or off (dead or alive). It started off with an initial configuration (either one cell, or a random stream of them), then the cells beneath the initial line are determined by the previous line. There are eight possible combinations for Line A that will determine Line B - 000, 001, 010, 011, 100, 101, 110, 111. The results are dependent on the rule set (there are 256 possiblities).Recently (23/8/99), I created a Windows 95 program that allows you to create your own 1D CAs. The program can generate some very interesting results, and can generate results both from a point and a line. This program replaced the old Wolfram Pascal program I'd created.
Conway's LifeA good example of ALife is the classic program, Conway's life. The Life system will eventually stabilize, either by dying out completely, or by an equilibrium point being established.
For an interactive Java simulation of life, check out Multilife.
BehaviourAnother area Alife covers it that of animal behaviours. Finding mathematical formulas behind behaviour. The most famous study of behaviour was Craig Reynolds' Boids - a program that simulated flocking to an incredibly realistic extent. Again, the program used 3 very simple rules, yet yielded incredibly realistic behaviour. The rules were:
The PhilosophiesJust where does ALife begin and Artificial Intelligence end? Will Artificial Intelligence come naturally if Artificial Life is successfully created? Does Artificial Intelligence constitute Artificial Life? These are three questions that have been with ALife and AI since they were first conceived.Will Artificial Intelligence come naturally if ALife is created? Perhaps, perhaps not. Successfull is so subjective, and the question of intelligence has been a philosophical question that has plagued AI since its foundations. The question of whether AI is ALife is interesting. Imagine an artificially intelligent program the doesn't simulate any of the natural processes of life, yet shows the ability to cognitively understand human speech, make completely autonomous decisions, possibilty even simulate emotions - would that constitute life? Some would say yes, some no. These areas in Alife are where ALife/AI meet morals, ethics and politics.
Last Updated: 24/02/2000 Article content copyright © James Matthews, 2000.
|
|
|||||||||||||
All content copyright © 1998-2007, Generation5 unless otherwise noted.
- Privacy Policy - Legal - Terms of Use -