Back

Introduction:

     The purpose of our project was to evolve artificial hive intelligence among a group of units which work together to accomplish a common goal. Nature demonstrates this type of intelligence in a colony of ants or a hive of bees. In a hive of bees, there are drones, queens, larvae, and nurses performing certain tasks. Each task is individually simple and by itself ineffectual, but they combine their efforts to complete a shared objective. Thus a hive of bees makes honey although no single bee fully understands the process. An integral part of hive intelligence is task specialization. Task specialization involves dividing the objective into a set of smaller assignments. These jobs are then distributed to individuals who have the greatest ability to perform them. Normally a means of communication must exist for a task specialized group to work together effectively. This results in greater efficiency since every member of the group is performing the job that it is best able to perform. It would take much longer for a group of bees to produce honey if they all performed identical duties. Instead, if the tasks are divided among the bees, they will make honey more quickly.

Hypothesis:

     From examples in nature, we hypothesized that added complexity within hive intelligence would take longer to evolve, but it would result in higher overall efficiency. Essentially, we predicted that task specialization is the most efficient means of accomplishing an objective within a group of individuals. We predicted that the fitness curve would follow an upward trend and then level off over time. We also expected that evolved algorithms would be more successful than human generated algorithms. We needed a good model to test our predictions.

     Accordingly, at the beginning of our project, we asked many questions. How do we implement hive intelligence? Should the individuals in the hive be allowed to communicate with each other, and if so, how? What should the task be and what should we use for the environment? These were some of the questions that we posed, and our answers to them are on the following pages.

Model:

     Our model is the classic video game Pacman. Pacman is a game played on a two dimensional grid consisting of walls and open spaces that is populated by "ghosts" and Pacmen. The Pacmen navigate the maze and eat dots that fill the open spaces while eluding the ghosts, whose goal is to catch the Pacmen. In our project, we developed teams of ghosts who have hive intelligence. The control of our experiment was the Pacmen, who used simple singular intelligence algorithms (the Pacmen do not cooperate with each other) that do not change. In our version of Pacman, every square of the grid is either a wall or an open space. In the initial position, every open space is occupied by a dot. Whenever a Pacman travels over a square, the dot in that square is "eaten" by the Pacman and ceases to exist. The ghosts in the maze move at the same rate as the Pacmen. When a Pacman and a ghost occupy the same square, the Pacman gets "eaten" and is removed from the game.

     Our experiment required minor modifications to the format of the game. In the original video game, there is only one Pacman in existence at a time. In our games there are multiple Pacmen. Also, we allowed the ghosts pursuing them to communicate through the use of pheromones.

     "Pheromones" is a term we borrowed from the insect world. In a hive of bees, a queen bee uses scents known as pheromones to communicate with and assert her dominance over the other bees. Pheromones also are used by ants hunting for food. When an ant finds food, he lays down a trail of pheromones to guide the other ants to the food. In our model, a ghost can lay pheromones that have two characteristics (a strength and a value) that are assigned by the ghost when he drops them. To simulate the decay of the scent, the strength number decreases by one each time step of play. On the other hand, the value number does not change, and starts off as a random digit. Over time, the ghost might evolve a language from the value of the pheromone.

Next