This
section will introduce cellular automata to the reader. Cellular automata can
be a vastly technical subject. The mathematics required to implement many types
of automata are beyond the capabilities of most people. However, understanding
the basics of what cellular automata are, and how they might help us in
creating an artificial lifeform aren’t hard to grasp.
Cellular automata can be implemented using a two dimensional grid of points. The grid is displayed on a computer screen, each point of the grid being either on or off. Each point is examined and its current visual state is changed. The new state is dependant upon it’s current state and the state of its neighbors.
A cell, physically, can have up to 8 neighbors- two to the sides, one up, one down, and four diagonal from itself. Different cellular automata use different configurations of cells as the active neighborhood. Many cellular automatas, for example, use two cells to the side of, the cell above, and the cell below as neighbors. Some cellular automata even use non-local cells as neighbors, cells which are not adjacent to the cell in question. After all of the cells have been examined, the screen is updated to display the new states of all of the cells, and the process repeats. Each repetition is referred to as a generation.
The
Game of Life is a good example of a general purpose cellular automata. The Game
of Life was discovered by the mathematician John Horton Conway and popularized
in the early 1970’s through Martin Gardner’s Mathematical Recreations articles
in Scientific American. In it, eight neighbors for each cell are used. Each
cell can be in one of two states (on or off). If a cell is off and it has
exactly three neighbors that are on, it turns on in the next generation. If the
cell is on, it stays on if it has either two or three neighbors that are on. If
neither of these cases apply, the cell turns (or stays) off in the next
generation.
A
software implementation of this cellular automaton will likely start with a
blank screen, in which you can turn cells (or pixels) on or off to provide the
program with an initial pattern. Running the pattern through the cellular
automaton produces some remarkable results. One of the more commonly seen
patterns is a group of cells called the glider. It’s a pattern that changes
slightly for a few generations, and then goes back to it’s initial
configuration, only the group of cells has moved diagonally by one cell.
The
ability of cellular automaton to contain entities that are able to sustain
themselves is one of the most interesting things about them, and the glider is
a good example of this.
The
state that a cell can be in has a factor. In many cellular automata, a cell can
be in one of two states- off or on. Some expand on the number of states a cell
can have, usually implementing these extra states as colors. For example, one
popular variation of the Game of Life uses color to reflect how long a cell has
been on. The rules stay the same, but if a cell was on before and is due to
stay on in the next generation, the color changes (to a color other than
black). In other systems, each color may have a different set of rules that
dictate what color it changes to next.
The
Game of Life and variations are great examples of cellular automata, however,
in the author’s opinion, such automata are far too simple to contain what we,
for our purposes, would call a lifelike organism. The system also is limited to
two dimensions, and this further limits the likelyhood that any lifelike
behavior might be possible.
Nevertheless,
much valuable work has been done on the Game of Life, and people have found
ways to actually build working computers within the Life system. There is a
well known configuration of cells that spits out a glider every so many
generations. This pattern that outputs a stream of gliders, known as a glider
gun, is used as somewhat of a communications mechanism to propogate signals
from one element of the automata computer to another. People have actually
built digital machines within the cellular automaton that are capable of
performing basic logic and mathematical operations, as well as utilizing a
memory to hold values.
Puffer
trains within the Life universe are similar to gliders in that they move,
eventually returning to their original cell configuration, but they output a
“plume” of debris as they move. Spachips are similar patterns, though they
don’t output debris.
There
are thousands of similar types of rule sets and variations of cellular
automata.. Probably one of the most important, in terms of creating artificial
life, is a variation which stacks hundreds or thousands of the two-dimensional
grids on top of one another, effectively creating a three-dimensional grid.
Suddenly, each cell has not 8, but 26 possible neighbors. Gliders and other
patterns are able to move in three dimensions. Is three dimensional space
required for actual life forms to emerge?
There
are three dimensional versions of the Game of Life and variations.
Unfortunately, little software exists that allows the layman to experience
three dimensional cellular automata. See the bibliography for web pages that
contain simple three dimensional cellular automata
Two
dimensional cellular automata are useful in understanding the subject matter.
They also are immensly valuable in modeling and analyzing systems in many
fields of study. But the author’s opinion is that the creation of artificial
life will require the use of a three dimensional grid. Cellular automata have
been created in four, five, six, and higher dimensions, but the nature of such
systems makes their behaviors hard to interpret, and so probably complicates
the process of determining whether they are lifelike or not.
This
paper is about creating artificial life through the use of cellular automata.
The term artificial life can mean different things to different people. Most
artificial life packages attempt to simulate the physical attributes of the
system through software, and use this as a framework to allow behaviors of pre-made “organisms” to
evolve.
Some
programs attempt to model existing organisms along with the physics as we
understand it. These programs are useful in understanding many aspects of life
and artificial life in general, but are incapable of actually evolving
artificial lifeforms. The “organisms” they use have been predetermined by the
software’s author(s), and only exist as a vehicle for the genotype to express
the phenotype.
In the real world, natural objects that are able to respond to external stimuli in some way are generally considered to be alive. Note that there is a difference between a twig flapping in the wind and a butterfly turning to avoid a bonfire. The twig is simply being blown by the wind, it isn’t responding to any form of stimuli. The butterfly on the other hand is continuously collecting data about its environment. For whatever reason, it “knows” that too much heat isn’t a good thing. It responds by turning to a direction that, according to its senses, has less heat.
The
author’s opinion is that there is no substitute for creating a system, and
allowing whatever is capable of evolving within it to do just that. The
majority of the programs discussed limit the systems ability to modify itself
in some ways in the interest of studying or creating certain aspects of the
system. Useful in it’s own right, but too limited for our purposes.
To
create an artificial lifeform, it might be useful to understand how physical
life might have begun. There are many theories that attempt to explain, or
partially explain, the origin of life.
When
examining this problem it’s important to have a firm definition of what life
is. My own definition, possibly scientifically useless, yet helpful for the
task at hand, is that life would refer to any system that is capable of
evolving, in other words, any system that contains within it some sort of
gene-like functions that allow future versions of itself to be impregnated with
information that contains details about what its predecessors were like in some
way, along with the requirement that, the information be slightly changed when
being passed from one generation to the next. Without this latter
characteristic, evolution cannot exist, and every organism would be an exact
copy of its predecessor, unable to differ in physical attributes.
In
the real world, when a gene is passed from one organism to another through
inseption, The gene isn’t copied exactly, there is too much information and
there are too many chemical processes happening at the same time for everything
to be done perfectly. A perfect copy of a gene might actually be something of a
miracle.
It’s this inaccuracy that allows mutation to occur, and it’s mutation that allows evolution to happen. To continue with the question is to ask another question: Is this answer sidestepping the question? Is the question really, “what is the origin of genetic material”?
Probably,
the answer to that latter question is that it depends on what your goals are.
Ours are to examine the possibility of creating artificial life. Cellular
automata can be seen as creating an artificial physical system, complete with
artificial physics and artificial matter.
When
looked at this way, cellular automata goes far beyond the concept of genes and
neucleotides and even molecules and atoms. In a cellular automaton, something
that might have the same basic functions as a real gene might be composed of
millions or possibly billions of (cellular automaton) cells. In automata, the
grid cell is the smallest element of the system. It’s equivelant in the real
world has not yet been found, and may well not even be quantifiable using
current scientific methods.
Understanding
the mechanics of physical life to this level would help us to model real physics and physical life,
but cellular automaton life may not conform to this model, and we don’t want to
limit the possibilities of artificial life to what is possible in the real
world; there may well be many other possible types of automata-based life.
Intelligence is seen by many as simply one more step of evolution. First came the ability for an organism to store and pass on information to it’s successors in what we now would call genetic sequences.
Then came the ability for an organism to store sensory stimuli in a way that could be recalled at a later time. This benefited organisms because through memory, an organsim had a way to respond to its environment through the looking glass of past experience.
The amount of memory eventually increased, and the way in which the organism experienced the stored information mutated and evolved from the transfer of simple chemical signals into what we now call thought.
Many
programs exist that attempt to model human intelligence. One type of program, a
syllogy system, keeps a database of facts that the program knows about the
world. It can remember that a cat is an animal, an animal can walk, and from
these basic facts can infer on its own that a cat can walk. Not an impressive
example, but it doesn’t take much thought to see how useful a program like this
might be when it can store tens of thousands of basic facts about the world.
Programs
like these can do no more than model intelligence. They are referred to as
artificially intelligent, but they have no intelligence of their own. The
so-called intelligence is actually a function of the myriad of computer code
used to implement the system. Similarly, it can be said that a would-be
lifelike system within a cellular automaton is the same- a function of the code
that implements it, but it is not the same. The code that makes up an automaton
system functionally creates a physical system. The entities, lifelike or not,
that are capable of existing within the system are a function of the physical
system itself, not of the code that makes up the system. There is no code that
dictates what is to become of an entity or how the entity is to react to its
environment. The code exists only as a framework within which the physical
system is to exist.
It
is possible to create a mechanism through which a cellular automaton system can
control other parts of the computer system. It’s not unreasonable to wonder
what might happen if a lifelike system within a such a cellular automaton
gained intelligent capabilites.
It’s
no secret that a skilled hacker can cause damage to computer systems that are
considered very secure. Could an intelligent lifelike system learn to do the
same? Might the system learn to copy itself to other computer systems
throughout the network? It’s important to consider, or at least be aware of
what might be possible. Much of the civilized world depends heavily on computer
systems, systems that we might one day find are being controlled by cellular
automatons. What if the intelligent cellular automaton decides on it’s own
agenda?
Sounds
much like a plot from a science fiction movie or book. For the moment, it very
much is, but it is very possible that such a threatening situation might
actually come about. Think of it this way: Much of what humans do is illogical,
wasteful, and generally ineffective. If such an intelligent lifelike system
came about, it has some very sound logical basis for developing a distaste for
humans, and perhaps would no longer find use in performing the functions that
they were designed to, though they might still be in control of many computer
systems.
This
scenerio is awkward to consider, mainly because the reality of intelligent lifelike
systems within cellular automatas is so far away, it’s hard to know exactly
what might happen.
There
is a variety of what some people refer to as artificial life that already has
become a big problem that most people are affected by. Trojan horses, viruses
and the like are very much here to stay.
Some
viruses do no more than copy themselves whenever they have an opportunity. Some
carry vicious payloads that can wipe the contents of the hard drive. Some can
even cause damage to the BIOS on the motherboard, sometimes rendering the
motherboard useless. Most people with any depth of knowledge of the subject
would not call these types of programs examples of artificial life.
Nonetheless, they do show what is possible.
One insecurity that much of humankind faces in the wake of creating artificial lifeforms is the question, if we are able to create an artificial lifeform that is capable of evolving some form of intelligence, does that mean we, as humans, are just a collection of chemicals and elements, devoid of any special entity such as a soul? If no soul is required for intelligence, is there any longer any basis for a belief in God?
Regardless of any of these considerations, it’s important that we discover what there is to discover. It’s equally important that we take the responsibility of controlling the things that we create with the knowledge gained. Understanding the world around us is our greatest tool in making the world a healthier, safer place.
Bibliography
Origins of physical life
http://www.cyberpunkproject.org/idb/artificial_human_nature.html
Ethics of AI
http://www.justlikethat.com/client/philosophy_user/ai_paper/
Ethics of AI
http://www.ento.vt.edu/~sharov/biosem/biosem.html
Biosemiotics and the communication of organic physical systems
http://www.cs.usu.edu/~degaris/artilectwar.html
Online book by Prof. Dr. Hugo de Garis about artificial life and cellular automata
http://www.people.nnov.ru/fractal/Life/Game.htm
3d version of the Game of Life
http://rfhs8012.fh-regensburg.de/~saj39122/doefe/
3d version of the Game of Life
http://www.oocities.org/robisais/3dca.html
Page devoted to 3d cellular automata pages and applications