Assignment 1

Due on 13/8/15

Christopher Langton's Ant cellular automata
  The aim of the assignment is to give one an appreciation of how complexity can emerge from interactions between a large number of rules, each following a simple set of rules.

For this we look at a cellular automata (CA) developed by Christopher Langton called Ant (proposed in a paper called ``Studying artificial life with cellular automata", Physica D 22, 120-149). The system is defined on a square lattice, whose cells can be either in state 0 (white) or state 1(black). Let us say you arbitrarily define one of the cells as containing an ``ant'' whose position at each time step evolves according to the following rules:
1. At each time step the ant looks at the state of the cell it is in.
2. If it is in state 0, it changes the state of the cell to 1, turns 90 degrees to its right and moves forward to the next cell.
3. If it is in state 1, it changes the state of the cell to 0, turns 90 degrees to its left and moves forward to the next cell.

A. Write a program to implement this cellular atomata and show that repeated application of the rules, starting with an ant in the centre of a lattice with all cells in state 0 would eventually result in a ``highway'' that diagonally extends beyond the simulation lattice

Exploring variations of the Ant CA

Due on 18/8/15

B. What would happen if you implement periodic boundary conditions (i.e., if the ant was moving on a torus instead of a plane extended infinitely) ? Would the length and breadth of the simulation domain make a difference to the patterns that you see if it is torus ?

C. What would happen if you added more ants ? How would the patterns change (if they at all do) as you increase the number of ants from 2 to 5 to 20 to 100 (assuming you have a large enough domain to accommodate the ants). You can start with initial condition such that each ant is placed at a random position on the lattice. Try with both open and periodic boundary conditions.

You are free to research the web to find out more about the properties of this cellular automata (but not allowed to copy)...