School of Computer Science
Personal Web Page

Possible Student Projects

Student Project Topics: Richard Dearden

I work in a number of areas of AI: robotics, planning, fault diagnosis, and time-series data analysis. I’m also working on a number of research projects that interested students could get involved with. These include:


The project involves developing intelligent robotic assistants that can explore and learn about the world. The work I am doing in the project is on planning and decision-making. Project topics include:

  • Planning observations to find things out: This might include planning dialogue with a human, planning where to look in a scene, or which room to look in to find a particular object.

  • Motivation through oversubscribed planning: people often have many objectives they want to achieve, and have to choose which ones to concentrate on. This project would involve using planning to select the best goals to pursue based on their value and also on the cost to achieve them.

  • Comparing a number of planning algorithms for gathering information.


The project involves learning models of the effects of actions from hand-built robot programs, and then using the models to plan to solve novel tasks. Project topics include:

  • Execution monitoring to find out when plans go wrong.


The project involves doing fault diagnosis on an autonomous underwater vehicle, Autosub 6000. Project topics include:

  • Applying hybrid diagnosis algorithms to data from Autosub 6000.

    Multiple Particle PEPT

The project involves tracking radioactive particles as they move around in a liquid to determine properties of the flow of the liquid. We hope to use the method to understand how impurities move in molten metal. This is a collaboration with physics, metallurgy and materials and chemical engineering. Project topics include:

  • Applying particle filtering algorithms to PEPT data: this project involves applying existing algorithms to data we have collected, looking at how well different algorithms perform, and why.

    Sustained Autonomy for AUVs (planning and execution in poorly known environments)

The project involves planning in uncertain environments with limited resources to collect the best possible data. Project topics include:

  • Robots for environmental monitoring: detecting subtle changes in an artificial environment and collecting data to show the change that occurred.

  • Re-implement and extend some classic algorithms for Mars rover decision-making.

  • Planning for autonomous underwater vehicles.

Other Project Topics

  • Using an Arduino and Raspberry Pi (or similar) processor to build a small mobile robot or other robotics project.

    • Project involves actually building a robot from scratch, using a microcontroller board to control motors and collect data from sensors, and a small processor to do high-level control.

  • Planning space telescope observations.

    • Project involves building a realistic model of space telescope observations, using the model to simulate a telescope collecting data, and building a scheduler to plan the observations.

  • Intelligent opponents for computer games.

  • Fault diagnosis for model trains.

    • Project involves collecting data from a model train set and detecting various faults in the system using an existing diagnosis algorithm.

  • Detecting pulsars in radio telescope data.

    • Project involves using simulated (and possibly real) pulsar data and trying to determine if a pulsar is present and the parameters (frequency, amplitude) of the pulsar.

  • GPS data interpretation tool.

    • Project involves building a tool to read GPX data files from a GPS and calculate various statistics from the contents such as total height gained, distance travelled. The tool could also remove erroneous data points, allow easy editing of the data, etc.

I'm very happy to talk about other possible related project ideas you may have.

Finally, for M.Sc. Computer Science students, and others with a background outside Computer Science, I am very keen to supervise projects that take techniques from Computer Science (particularly AI) and apply them to problems from other areas. For example, in the past I have supervised projects on reducing the amount of data produced by 3D laser scanners with Archaeologists, calibrating space-based gravity wave detectors with Cosmologists, and deciding whether individual neurons are firing in a coordinated way during epileptic fits with Neuroscientists. If you have an idea for such a project, come and talk to me!