Graham Kendall
Individual Projects (3rd Year Undergraduates)
(Academic Year 2004/05)
Introduction
This page details the third year individual projects that are/have been supervised
by Graham Kendall who is a lecturer in the Department
of Computer Science at The University of Nottingham.
This year, I was assisted by various other people in the supervision of projects,
as I was given a Study Leave period. I have indicated who was the supervisor
on the individial projects.
This page contains details of projects supervised in the academic year 2004/05.
The main project page can be found here.
Downloadable Dissertations
Some of the projects are available for download, so that you can view them.
This facility is for current third year students, being supervised by me,
who can use previous dissertations for their own research and also to look at
previous dissertations to see how to lay them out etc. (it also saves the inevitable
requests I receive asking to see a "good" project from last year, with the risk
that I never see it again!).
As such, these files are password protected and, to get the username/password
you need to EMAIL me. People outside
of the university will not be given access.
In addition, I cannot give access to those students
outside of my tutor group. You should approach your own tutor to get copies
of previous dissertations they have supervised.
Note : I cannot make the files available in formats other than those
already supplied.
3rd Year Projects Supervised in 2004/05
- An empirical comparison of evolutionary algorithms applied
to the tuning of a chess engine by Daniel Pike (PDF
: 891KB)
Abstract : In 2001, Graham Kendall and Glenn Whitwell of The University
of Nottingham proposed an evolutionary approach for the tuning of a chess
evaluation function using population dynamics, and achieved some impressive
results against a commercial chess program. This report documents the implementation
of a program to empirically compare Kendall and Whitwells strategy with
a selection of historic evolutionary algorithms using the optimisation of
the parameters of a chess evaluation function.A review of work in both the
evolutionary algorithms and chess fields is performed. A highperformance rotated-bitboard
chess engine and several evolutionary algorithms are designed and implemented.
Finally, a population of evaluation functions is evolved in a restricted number
of iterations by each strategy, and the results compared and statistically
analysed. The Kendall- Whitwell algorithm is empirically shown to generate
better solutions than a variety of canonical evolutionary strategies and their
variants from the initial population.
This project was supervised by Dr
Rong Qu
- Interporject: Project Management Portal by Philip Erridge
(PDF: 499KB)
Abstract : The aim of this project is to develop a system that allows
groups of people from various sized organisations to have a medium, through
which a project can be performed. The system should provide all the tools
that allow for the members to be location and time independent, yet have the
ability to conduct meetings, share information and communicate without any
difficulty or restriction.
The system is designed to be available on the internet to any group member,
regardless of their location or time zone and only requiring them to have
access to a computer to access the internet. The system is to be implemented
using PHP, MySQL and Macromedia Flash as the languages, and products of choice
in producing a system that will fulfil all the needs of a project group.
The system developed has five main features that allow it to perform in the
role of a group management system. These include an intelligent calendar,
a mail portal, a forum, a file repository and also a task management system.
Together the package was completed and tested within a real organisation environment
to allow its potential to be assessed.
This project was supervised by Dr
Rong Qu
-
Learning to Play Good Poker Using an Evolutionary Algorithm
by Ralph Cooper (PDF:
306KB)
Abstract : Creating a world class computer poker player has been
a core goal of many researchers in the field of AI and game playing for
the past few years. Creating such a player requires a very complex combination
of elements. One of the more important elements is the betting strategy
which determines the core decisions of the player to bet, call or fold at
given points in the game. Another major element of the player is the opponent
model which "learns" how opponents play and uses this information
in an attempt to determine the strength of opposing hands. This work will
focus on the betting strategy and show how a genetic algorithm can be used
to develop a strong strategy allowing the player to compete at a high standard
against human players.
This project was supervised by Dr
Glenn Whitwell
- Evolving a Blackjack Player to Develop an Optimal Playing
Strategy whilst using a Card Counting System by Adam Charles Bond (PDF:
313KB) (Word: 482KB)
Abstract : Blackjack is a game that has had large amounts of work
carried out on it using mathematical probabilities. These techniques have
lead enthusiasts to develop optimal playing strategies for nearly every situation
a player will come across. This has lead to the creation of card counting
systems that can sway the casinos advantage towards the player. The most popular
of which being the High-Low count system, first publicised by Thorp (1966)
and later refined by Wong (1994).
In this dissertation a population of random blackjack players are evolved
using an evolutionary strategy in the hope that the fittest individual of
the population will have the optimal strategy for playing blackjack. The players
each use the High-Low card counting system and are modelled by four neural
networks that decide when the player should take insurance, split a pair,
double down and hit or stand. The neural networks are evolved after each generation
and the best player from the trained population is then compared to the strategy
defined by Wong (1994).
The program was initially simulated for 1000 generations and the results showed
that all four neural networks were learning as hoped. The problem was however,
that the strategy of the best player from the trained population did not match
the strategy defined by Wong (1994). As a result the program was then simulated
for 10,000 generations and as predicted the players were trained to a more
advanced level and had a strategy that was closer to Wong's (1994). The program
was further simulated for 1,000,000 generations in an attempt to reminisce
the same strategy as Wong (1994), however there were still a few values that
differed slightly.
Overall this investigation proved to be a success and showed that a pool of
random Blackjack players using an evolutionary strategy and neural networks
can learn how to card count and overcome the Casino's advantage.
This project was supervised by Dr
Glenn Whitwell
- Evolving a population of neural networks to play Othello
by Matthew Hyde (PDF:
410KB)
Abstract : There has been much interest in creating programs that
are capable of beating humans at certain games. To date, the main research
lines have been in poker, chess and checkers. Recently, Chellapilla and Fogel
have succeeded in creating an expert checkers program that has no human input
into its learning process.
This project focuses on developing a good Othello playing program using a
co-evolutionary genetic process similar to Chellapilla and Fogels method.
The algorithm evolves a population of neural networks by playing games between
them and eliminating the worst players. The neural networks act as evaluation
functions by evaluating the board states at the leaf nodes of the game tree
after a minimax alpha-beta search from the current board position. Importantly,
knowledge of Othello strategy that comes from humans forms no part of the
development process, and at the start of the evolution process the population
knew only the rules of the game.
It is shown that not all Chellapilla and Fogels methods are applicable
to all board games, and the reasons for this are explored. Specifically, it
will be shown how changing the way that the board is looked at by the neural
network and then running the evolution process again, can increase the speed
of learning Othello strategy and the strength of the resulting strategy. This
report contains a review of past work in the field, the program design and
implementation, and a discussion of the results obtained. It is also questioned
whether Chellapilla and Fogels claim of no human input is strictly true
if the structure of network is chosen by a human before the evolutionary process
begins.
This project was supervised by Jason
Atkin
- Multi-Project Scheduling with Resource Constraints by
Mark Andrew Brown (PDF:
1,163KB) (Word: 1,733KB)
Abstract : In this report I propose a real world project scheduling
problem I have witnessed. I propose a heuristic allocation algorithm and a
meta-heuristic Tabu Search to further optimise the heuristic to a wide range
of different project scheduling problems within the scope of my model.
I conduct a literature review on similar work and propose a model. Next I
produce a design of a program to solve the model proposed
I give details of my implementation of such a system and produce a step-by-step
breakdown into how I applied the techniques I researched to my program.
This project was supervised by Jason
Atkin
-
Cricket Tournament Scheduler by Rohaan Akpoor (PDF:
509KB)
Abstract : In this dissertation I aim to investigate sports fixture
scheduling to produce fixture schedules for cricket tournaments with the
goal of satisfying all constraints specified in the dissertation. In cricket
only a limited number of schedules are created by computer, most are created
manually. I will investigate and discuss in detail the work of other researchers
in the realm of sport fixture scheduling. I will devise a new method for
making different cricket schedules. I will show how my software works by
creating a schedule for the Ranji Trophy (2004-2005), which today is done
completely by humans. However my focus is not to create a schedule solely
for the purpose of scheduling the Ranji Trophy; I am going to make software
capable of helping a user, scheduling any cricket tournament i.e. generic
software. In other words my software will be a support system for humans
to create schedules with predefined constraints. Another valuable feature
of my software is that it will also be a database for past schedules created
by it with full details provided.
This project was supervised by Jason
Atkin
EMAIL : gxk@cs.nott.ac.uk
Home page
Last Updated 15th June 2001