# Suggestions for individual projects

This is a list of project suggestions for the academic year 2008/2009.
If you are interested in one or more of the projects, or would like to do
something similar, then please come to see me (room B30) or send me an email to arrange an appointment.

Currently, I am particularly interested in projects concerned with Algorithmic
Problem Solving. This includes the design and implementation of new
algorithms (which is often very challenging) and the development of
material to assist in teaching. The first three projects listed below are relevant. Similar projects are also possible.

## The General Torch Problem

I have published an algorithm for solving a generalised
version of a well-known "flashlight"/"bridge"/"torch" problem. It is
an optimisation problem and the solution uses techniques from dynamic
programming. The project would entail implementing my
solution and making it available on the internet. There is scope for
further work (related to shortest-path algorithms) aimed
at improving the efficiency of the algorithm.

## Combinatorial Games

I use combinatorial games in the first-year undergraduate module on
Algorithmic Problem Solving in order to illustrate algorithm-design
principles. A project is to develop software to test the students'
understanding of game theory (the use of so-called "mex"
functions).

## Animations of Programs

The project is to develop animations of examples used in teaching algorithmic problem solving. Many examples are included in my lecture notes : colouring the plane, knight's circuit, etc.

## A Structure Editor for Two-Dimensional (Mathematical) Diagrams

Diagrams are used in category theory (a branch of mathematics with strong connections with functional programming) to summarise formal mathematical calculations. The goal of this project is to construct a structure editor that can be used to create, edit and display such diagrams.

Last modified: Thursday 16th May 2008