examples.dlife.robot.player.evolution
Class EvolvedObstacleAvoidance

java.lang.Object
  extended by examples.dlife.robot.player.evolution.EvolvedObstacleAvoidance

public class EvolvedObstacleAvoidance
extends Object

Illustration of how to evolve a neural controller for a robot. This example specifically shows how to evolve a neural network controller for obstacle avoidance behavior with a Hemisson robot. It may be useful to review the dlife.ga, dlife.nn and dlife.robot.player packages before tackling this example.

To run this example:

  1. Complete the Basic dLife Installation.
  2. Complete the Player/Stage Setup.

  3. Execute the following command from the dLifeDist directory:
  4. A Player/Stage simulation window should appear and the following sequence of events will occur:
    1. Each controller in the population will be used in turn to control the Hemisson for 5 seconds.
    2. The fitness of each controller will be evaluated (see HemissonNeuroController).
    3. When each of the controllers of have a turn the next generation of controllers will be created.
    4. Steps 1-3 will be repeated for 5 generations. The minimum, average and maximum fitness of the population will be printed following each generation.

The source code for this class is contained in the file:

Version:
Jun 30, 2010
Author:
Grant Braught, Dickinson College

Constructor Summary
EvolvedObstacleAvoidance()
           
 
Method Summary
static void main(String[] args)
          Run the evolution.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EvolvedObstacleAvoidance

public EvolvedObstacleAvoidance()
Method Detail

main

public static void main(String[] args)
Run the evolution.

Parameters:
args - none