Projects proposals

Followings are some of the titles for final year projects. Please let me know if you are interested in any of the titles. Most of the projects will involve some research, but as they are in my area of interest, I will be able to help. There will not be any restrictions on the programming language used and for most of the projects you may use, VB, VC++, java, perl, etc. If you could not find a topic of your interest among these, but you have specific interests to a specific topic and you would like to discuss them with me, send me an email and we will arrange a time to discuss your interests. You could contact me via email sahmadi (at) .

A web interface for recording progress and discussions between research students and supervisors
During meetings between supervisors and their students, usually a progress report on their tasks, plans and problems is recorded. This is done manually on paper forms. It will be a good idea to create a database for recording tasks with their deadlines and reports of progress and a web interface for accessing and updating the data. This application will be used by myself for managing my supervisions (PhD, MPhil and final year projects), but may have applications for research office of DMU at later stages. You will need a good knowledge of a database management system (MySQL, Oracle or Access), a good knowledge of HTML and some scripting language (PHP, Perl or VB).


An academic web based personal organiser
This web based personal organiser will have extra facilities such as reminders for exams, paper deadlines, etc. in addition to standard features such as address book, calendar and tasks. User will be notified about deadlines by email or by a short message to a mobile. Adding data to the software will be through a Blogger-like interface.


A general parser for generating standard formats from complex data files
Parsing data files with mixed  format is time consuming. The aim of this project is to design an interactive tool similar to Excel's "Text to Columns..." facility, but with more flexibility and portability. The first stage of this  project is to investigate useful characteristics of such system.


A disk organiser with support for logical search, regular expressions and approximate  search
This software will catalogue removable and non-removable disks and will allow advanced searches based on  filenames combined with logical operators, regular expressions and will find close matches if no exact match was found.


Investigation of the examination timetabling problem in DMU
This project will require the collection of data from the administration departments in DMU and producing the data files for examination timetabling problem. The most important part of the project is finding the constraints of the problem in DMU and to represent a solution (derived by heuristics) in an specific format suitable for STARK visualiser. This will produce a nice visualisation for the solution of the problem.
Visualisation of a neighbourhood search strategy
This project involves investigation of an appropriate visual model for a neighbourhood search algorithm and its implementation. Selection of the programming language, neighbourhood search method and the example will be based on student background and interests. The result of this project could be used as a teaching tool to demonstrate the dynamic of the search to other students in AI courses. 
Design and implementation of an excel plugin for visualising a local search algorithm

This is an alternative approach to the previous project, where MS excel and its macro language are used to show the calculations of a neighbourhood search algorithm. Software will be designed as a plugin for Excel and it  will accept description of an initial solution (array), specification of moves, selection and acceptance criteria and objective function and will produce all the detail of the process by the local search algorithm, which could be visualised through excel.

Some proposals for MSc projects

Use of clustering and Clique techniques to create visualisation for examination timetabling

The aim is to design a visualisation for examination timetabling based on clusters and cliques found in the data. User may use this interface for manual scheduling. This project needs good skills of programming and good Mathematical background.
Use of Neural network to find patterns of user behaviour
In this project a self-organising map neural net will be used to discover patterns in the data. The data is already gathered from user interactions with the interface of a scheduling software and neural network will try to match the sequences of actions of the user with sequences of parameters of the context. Project will involve reading and understanding self organising map neural networks, data processing and programming  in any programming language. 


Use of Genetic programming to find patterns of actions from data

In this project genetic programming (GP) approach  will be used to discover patterns of actions of user in the data. The data is already gathered from user interactions with the interface of a scheduling software and GP  will try to match the sequences of actions of the user with  the context of the problem. Project will involve reading and understanding Genetic programming, data processing and programming in any programming language. 

School timetabling for British Schools

In this project first the general school timetabling problem for British educational system will be investigated and a model for this problem will be built. Then a local search algorithm with be used to create a timetable for an existing school.

Writing scheduling add-on for outlook

This project will involve studying existing methods for writing add-ons for MS outlook and will produce a scheduling add-on to schedule the tasks specified by a user. The scheduling algorithm will be extendable, but will start with a simple heuristic for scheduling.