Turing Trains: Rule-based management of a dynamic display of images

Basic Idea

Imagine a computer screen divided into rectangular tiles, each of which displays a different image. A "train" works its way across the screen tile-by-tile, according to some internal instructions of its own, changing some images and leaving others alone, and changing direction as it sees fit. The aim of this project is to explore the development of movies made in this manner, including experimenting with tiles consisting of colours, photographs, or other visual images of interest. The internal logic of the "train" will be based on the well-known computing concept of a Turing machine. At any particular point in time, the machine will be examining a single tile (which may be thought of as the position of the train's engine). The machine will examine the tile, and according to a set of rules internal to the machine, either leave it as it is, or change it for a different image. It will then move in one of three directions (right, left or straight ahead) to another tile. The previous 10 or so tiles that have been visited will be highlighted, so that the movement of the train and its "carriages" will be simulated by the highlighting of recently visited tiles. Some potentially interesting trains may arise from busy beaver Turing machines, which result in some surprisingly complex behaviour.

For more details, see the Introductory Document.