next up previous
Next: Size of Program Up:

Why Ants are Previous: Introduction

The Artificial Ant Problem


The artificial ant problem [Koza1992, pages 147--155,] is a well studied problem often used as a GP benchmark. Briefly the problem is to devise a program which can successfully navigate an artificial ant along a twisting trail on a toroidal grid. The program can use three operations, Move, Right and Left, to move the ant forward one square, turn to the right or turn to the left. Each of these operations takes one time unit. The sensing function IfFoodAhead looks into the square the ant is currently facing and then executes one of its two arguments depending upon whether that square contains food or is empty. Two other functions, Prog2 and Prog3, are provided. These take two and three arguments respectively which are executed in sequence.

The artificial ant must follow the ``Santa Fe trail'', which consists of 144 squares with 21 turns. There are 89 food units distributed non-uniformly along it. Each time the ant enters a square containing food the ant eats it. The amount of food eaten is used as the fitness measure of the control program.

The fitness function, function and terminal sets etc.\ we use are identical to [Langdon and Poli1997a] cf. Table 1.

Table 1:  Ant Problem

William B Langdon
Tue Feb 3 19:53:29 GMT 1998