

Artificial Life: A Programmer's Perspective


I was trying to figure out the areas of specialization in AI, when I first came across Conway’s Game of Life. I didn’t really like it at first glance. For the beginner, it would look more or less like a conventional board game with a missing objective. In fact there’s no playability in it. It has less to do with interactivity but more with visualization and logically conclusive reasoning. However, the potentials were slowly revealed to me. I first saw "life" in it when I saw the "glider" moving to and fro in the Life grid. It was then when it dawned to me that I was looking at artificial life. What fascinates me most is the transparency it offers to look into abstractions of biological processes from a programmer’s perspective. This essay is my first attempt to approach aLife with this vision.


All forms of life are governed by rules. Human behavior, for example, is mostly group behavior. On a cellular level, various organic processes determine the level of interaction between the cells, as well as the interaction with the external environment. This purview can be extended to mutual or reciprocal actions taking place between humans together and with the environment. The processes or actions mentioned here are actually rules that define how a new phenomenon follows from previously existing ones. We will soon see that the Game of Life is also one such paradigm of rule based evolution.

Let’s start with what a cellular automaton is. Consider a regular grid of cells, with each cell being able to take up some particular state. These states may be simple boolean states like "on" and "off", or more complex physical, chemical or biological states.

Dead or Alive

Next, let’s fix up a set of rules to decide how the state of a cell will change depending on the states of the neighboring ones. What we get then is called a cellular automaton.

"Cellular automaton is a system of cells in a regular grid where the next state of each cell is completely decided by its current sate and that of the neighboring cells."

John Conway invented the Game of Life in 1970. Game of Life, also known as Life, is a two dimensional cellular automata with boolean states (alive or dead) for each cell. The set of rules followed by this automaton are as follows.

It has to be kept in mind that the next state of a cell depends on the current state of its neighbors and not the changed state. Hence all computations are to be done before any cell is changed.

Emergent Objects

Rules of Life are very simple. Yet, they have the power to drive the formation of complex behavioral systems. A single cell is not capable of doing much until it splits, as in cell division, and starts interacting with the other cells. The cells are confined to rules, and so no general construct can be derived from them individually. However, when they interact with each other, they have the ability to produce perceptual models of life processes with properties as diverse as evolution, duplication, and extinction. This is often termed as an emergent property.

"An emergent property is a property that evolves out of simple rules."

A given initial pattern in the Life grid will develop over time - in discreet steps; called generations – to form various patterns and configurations. These patterns may both be cyclic or acyclic. Some of them evolve too fast to form new ones; some attain still states, while some die out. It may happen that an emergent property takes more than a single generation to evolve. Whatever may the length of this time interval be, it is important to realize that it is the overall effect that finally makes sense to us. The starting and the intermediate configurations form the units of the emergent object.

Let’s take a simple example of the glider.

A glider at different stages of its cycle.

In fact, each of the special arrangements is just a building block of the glider. If the rules of Life are applied to any of these patterns, then over a period of four generations, a property emerges out of it. We will see that the pattern has transformed back to its original state but with a diagonal translation. This dynamic nature of the pattern over time makes it analogous to a glider. The moving phenomenon is a basic attribute of most life forms, both in the real and digital domain. Movement is very important for communication, be it that of impulses traveling through axons and dendrites, or electrical pulses by means of oscillating electrons. A glider gives us an abstraction for such a medium. Streams of gliders can be effectively used to transfer information from one part to some other part of a block. Such fundamental objects form the basis for artificial life.

All this must have given you a faint idea about what artificial life is. In the next section we will try to have a more formal look at it

Remember you can visit the Message Store to discuss this essay. Comments are always welcome!. There are already replies in the thread, why not join in?