Please be aware that I have already filled my supervision slot for 2013.

Sorry about that. There are many more supervisors who still have spaces.



Please be aware that I have already filled my supervision slot for 2013.

Sorry about that. There are many more supervisors who still have spaces.



Please be aware that I have already filled my supervision slot for 2013.

Sorry about that. There are many more supervisors who still have spaces.



Please be aware that I have already filled my supervision slot for 2013.

Sorry about that. There are many more supervisors who still have spaces.



Please be aware that I have already filled my supervision slot for 2013.

Sorry about that. There are many more supervisors who still have spaces.



Current MSc Project Idea:

I have been in contact with a company in Nottingham who are looking for a student to work with them in building them a database and web interface for their customers to see their products. I think that it would work something like this:

The student needs to talk to the company to understand their precise requirements and what will be done. Student will have to have ongoing discussions about direction. Student should take some time to understand their requirements and how best to help on this. I think that the project stages will then be as follows, but may be modified according to the outcome of the discussions:

1) Student will be loading data from an existing spreadsheet which specifies details of your products and the comparable part numbers for competitors, into a maintainable stand-along (initially) database.

2) Forms should be developed to allow easy querying of the database. i.e. see the information in a meaningful way.

3) Forms should be developed to allow easy maintenance of the database. i.e. update the database easily.

4) It may be useful to have an export to spreadsheet facility and an import from spreadsheet facility, to allow you to modify a spreadsheet version instead for ease of maintenance.

5) Stage 2 would involve the implementation of a secure web-based interface for customers to be able to use this.

6) Stage 3, which is probably beyond the scope of the timescale, would be to implement an app for a smart phone. I note that a simple intermediate step may be to have a simple web interface to allow users with smartphones and internet access to easily use the web interface (i.e. via their web browser app) to do this in the meantime, with a minimum of data transfer (i.e. cost) and best ease of use.

Older MSc Project Ideas:

These are the older project ideas which I used. If the above one works out, I think that it will have more benefits for the student in getting some experience working with a real company.

Please note that these projects are all programming related. If you are looking for a project which avoids programming, for instance in management, then they may not be great for you.

Board and Cardgames

I am interested in many types of board and card games. There are many things which could be done in this area and here are some ideas:

Artificial Intelligence

I would be interested in somebody looking into AI players for traditional board games as well as some more modern games. There is a huge body of research into automated players for many traditional games, but there are any modern boardgames which it could be interestingly applied to. This may, of course, possibly involve simplifying the rules a lot, or maybe not, depending on the student and the game of choice.

Online engines for playing boardgames

For those who may be more interested in networking and graphics than in the AI, I would also be interested in somebody looking at creating a program to play boardgames over the internet. Again there are interesting solutions for many games already but they seem to need a lot of setting up and are designed for competitive people who don't trust each other. This would be an option (i.e. enforcing rules) but it would also be interesting to look at a generic framework which would just implement the board, pieces, cards etc, hiding relevant information from other players but letting them implement the rules themselves.

Similarly for collectable card games

There are many collectable card games around nowadays and it has become a reasonable business for some companies. There are some engines already in existence for playing these across the internet but they all seem to have flaws of one type of another. It would be interesting to see whether these could be improved upon. In many ways these games are similar to boardgames, except that the rules constantly change as new cards are played. Whether the rules need to be enforced (or the players trusted to do this) and to what level is up to the student.

Useful links

You can find more information on a huge number of boardgames of all types here

Optimisation Algorithms

If you have a reasonable level of both mathematical and programming ability then you may be interested in a project working on an optimisation problem. These usually mean considering a real world problem, building a model of it and producing an algorithm to find good, or even optimal, solutions for it. Since this is precisely in my chosen research area I am happy to supervise any projects in this area.

Obviously, there is an overlap between this and some of the game AI projects, but some other examples are:
Routing of vehicles - what path should vehicles take, in what order should places/people be visited
Airport scheduling - I have ongoing research in various airport-related problems
Factory production scheduling - how should machines be allocated to task in order to meet some criteria
Timetabling problems - when / in what order should things be done
Rostering problems - how should shifts be allocated to people in order to meet as many requests and requirements as possible