Overview

1

Requirements

2

Downloads

3

Artificial Life research tool and supporting documentation Download page

[mailto: ben.blundell@freeuk.com]


Keywords: Virtual Ant Colony Simulator, Artificial Life, Swarm Intelligence, Reactive Behaviour, Stigmergy


1

overview

1.1 What is it?

AntWorld is an Artificial Life (a-life) simulation tool where colonies of small circular ant-like entities, controlled by simple reactive neural networks, are evolved to display desired behaviours in a virtual (computer generated) environment. The program features an in-built environment designer for a-life experiments, plus simulation aids such as a neural-network analysis tool, real-time graphing and functionality to store interesting ants, ant colonies or populations of colonies for re-use in future simulation sessions.

When the simulation of a colony begins, a hoard of orange ants emanate from the nest site and whiz around the designed environment, interacting in interesting ways. Each individual has it's behaviour determined by a unique on-board Multi-Layered Perceptron network. In the current implementation, the virtual ants have a local sense of wall bricks, food units, pheromone particles, each other and the nest site. In turn, they can pickup up or drop food units, drop pheromone of different concentrations, and move to an adjacent pixel. Some individuals follow the pheromone trails laid by others. Others spin wildly, but eventually produce irregular or spiraling trails around their nest mates. Still others explore and avoid walls with amazing competence. In fact, the diversity and complexity of reactive behaviour that results within a colony is quite remarkable, and a spectacle to watch!

The overall idea is to create virtual ant colonies that maximise some fitness criteria specified by the user (for example, the ants in a colony may be required to retrieve the most food, or simply to explore the most). A Genetic Algorithm (GA) that operates at the level of super-organisms (i.e. colonies) is employed to do this. Each colony in a pool (population) gets a go at proving it's worth, and when all have been done, the best are picked and reproduced to form the next generation of colonies. The process continues over maybe 100's of generations until colonies employing optimal strategies are evolved.

<< Figure 2: Simulation snap-shots: a) ant making a square trail around his nest mate b) ant circling a food patch c) a nest mate-circling ant producing a spiraled trail d) two ants crossing a food patch together e) pheromone following behaviour f) ants exiting the nest laying pheromone

(a)

(b)

(c)

(d)

(e)

(f)

1.2 Development History

Version 1.0 of the software was originally developed as part of my Undergraduate Dissertation Project at the University of Sheffield, England, in partial fulfillment of BSc Artificial Intelligence and Computer Science, submitted May 9th 2003, and subsequently awarded a first class. The dissertation entitled "Exploring the emergence of foraging strategies in a simulated group of reactive ant-like agents" aimed to use the AntWorld tool to explore if a group of extremely simple individuals, whose perceptions were directly tied to their actions, could solve a foraging problem. Throughout, the work had a distinctly nouvelle AI flavour.

Inspiration came from simple and elegant solutions to complex problems existing in nature. Ant scouts of the species Leptothorax Albipennis, for example, can reliably estimate the quality of a potential new nest site by using a method similar to the Buffons Needle Algorithm for empirically estimating the mathematical constant pi. Through laying a random pheromone trail on one visit and then, at a later visit, measuring the intersection frequency of it's path with the previously laid trail, an ant scout could obtain a reliable estimate for the nest floor area. No 'higher' cognitive abilities were necessary for this seemingly "intelligent" act. Rather, the success of the method was based purely on the basic spatial relations between the laid pheromone trail and the size of the nest floor.

I wanted to extend ideas like these to see how applicable they were to a more complex problem of a colony foraging for food particles. Relying only on the local information they received, and exploiting the interactions between themselves and between themselves and the environment they inhabited, reactive ant agents had to establish an effective colony dynamic allowing the search and transport of food particles from one side of the environment back to the nest site. None of the agent's had internal state or memory. Instead, it was hoped that (collective) colonial foraging behaviour would emerge through dense interactions between the simple reactive constituents. A Genetic Algorithm was used as a tool to mix up and evolve successful groups over a long time frame. The relative success of the study would hopefully give insight into the minimal amount of neural hardware a worker ant could possess to effectively carry out it's duties.

2

Requirements

2.1 System Specification

  • Windows 98 (or higher)

  • 333 MHz Processor

  • 64Mb RAM

  • Java Software installed and configured (as detailed below)

2.2 Java Software needed

AntWorld v2.0 is written in the Java programming language as a stand-alone application. Unfortunately, Java programs do not run through simple binary executable (.exe) files. They are not pre-compiled and instead require an extra interpreter program to be installed on your machine to help them run. This comes in two forms, either a Java Runtime Environment (JRE) or or a Java Standard Development Kit (SDK).

If you are not familiar with Java, then a JRE interprets the special Java files which contain the code to run the program into a form your local computer can understand and execute. An SDK has the additional feature of being able to create these "class" files, and is used by Java programmers. If you are planning to simply run AntWorld, and want nothing to do with it's inner workings - the source code - then download a JRE. On the other hand, if you wish to program your own fitness functions or fundamentally change the capabilities of the ant agents, then download an SDK higher or equal to version Java 2 SDK 1.4.1_02.

Both the JRE and SDK packages can be freely downloaded at Sun's Java web site. Because the site is very large, the best option is to head towards the 'Downloads' page and/or do a search for 'JRE 1.4.1' or 'Java 2 SDK 1.4.1'. The JRE is typically 13Mb and the SDK is closer to 30Mb.

3

Downloads

To save the files below, right click them and then select "Save Target As..." from the pop-up menu.

antworldv20.zip

AntWorld v2.0 program files, directories and Java documentation compressed into a zip archive (832Kb).

antworldv20_userguide.doc

Quickstart user guide (including installation instructions) for AntWorld v2.0 in Microsoft Word format (98.5Kb).

bsc_undergrad_disser03.zip

Original BSc Undergraduate Dissertation Project for which AntWorld was developed. Zip file containing each chapter in Microsoft Word format (2.72Mb).


Last updated September 2004. visitors since launch on 5th September 2003.