Matthew Ellen .co .uk

Portfolio

MSc Thesis Software

Description
Binary Files
Source Files
Screen Shots

Description

For the thesis for my MSc I was investigating the potential of using genetic algorithms and artificial neural networks to evolve individual control structures for robot football players.

I created three main pieces of software for the task, a Neural Network Designer, a Robot Football Simulator, and a programme to run the genetic algorithm.

All the software is written in C/C++ compiled in Linux, and any windowed components use the GTK libraries.

The neural network designer is relatively simple. It allows the user to construct a neural network, enabling them to group similar types of neuron together, and set various parameters for the neuron such as its activation threshold.

The robot football simulator is currently in a cut back state compared to its full capacity. It currently enables the user to visualise the movements of two robot football players starting them both in the centre of the pitch, with the ball in a random position. The simulator could quite easily be recompiled to a state where it can run proper robot football matches, however this was not need for my thesis.

The evolution programme uses much of the same code as the simulator, however it does not have graphic representations of the game, the only output is textual. This was done bacause the graphic output uses significant resources compared with text output, and threrfore is much slower, and evolution takes place over thousands of generations so it is important for the programme to run as fast as possible.

The source and executables are copyright of Matthew Ellen and the University of Plymouth.

|top|

Binary Files

Neural Network Designer (zipfile)
Robot Football Simulator (zipfile)
Evolution software (zipfile)

|top|

Source Files

mylist.h
mylist.cpp
point.h
point.cpp
actFuncs.h
actFuncs.cpp
connection.h
connection.cpp
group.h
group.cpp
instruction.h
instruction.cpp
neuron.h
neuron.cpp
nnet.h
nnet.cpp
main.h (Network Designer)
main.cpp (Network Designer)
connectionRec.h
connectionRec.cpp
groupRec.h
groupRec.cpp
loadnet.h
loadnet.cpp
neuronRec.h
neuronRec.cpp
saveload.h
savenet.h
savenet.cpp
main.h (Simulator)
main.cpp (Simulator)
dumb_brain.h
dumb_brain.cpp
evo.h
evo.cpp
game_control.h
game_control.cpp
main.cpp (Evolver)
lang_brain.h
lang_brain.cpp
netone_brain.h
netone_brain.cpp
pitch.h
pitch.cpp
mirobot.h
mirobot.cpp
dumbTeam.h
dumbTeam.cpp
langTeam.h
langTeam.cpp
netTeam.h
netTeam.cpp

|top|

Screen Shots

Neural Network Designer
Robot Football Simulator

|top|