A list of some of the MSc projects I have been supervising. Please note that this list is incomplete.
If you've done a project with me and want me to list it here or update the description, please contact me.
2010
C. Rimes, Towards Intelligent Data Acquisition for Microscopy Data
1
The aim of this project is to analyse 2D and 3D volumetric data acquired by a CARS and confocal microscope to automatically extract interesting features for more detailed observation.
2008
A. C. McFall, Streaming Terrain Height Maps
2
The aim of this project is to implement a server-client application for streaming large terrain maps over a network and displaying the transferred data at interactive rates. The terrain maps are expected to be huge, i.e. cannot be stored simultaneously in memory at full resolution or transmitted in full quickly over a network. The project involves implementing a client for simple visualisation and navigation of these height maps and a server for streaming the height maps at suitable speed and resolution to the client. The program shall be built step-by-step in order to explore the different methods and pitfalls that may occur in such a system, and will aim to be easily expanded upon in the future.
2005
T. Basmaeil, Two Player Board Game AI
3
This project involves implementing an intelligent opponent for some game of skill such as Chess, but the game chosen would preferably be an unusual one. You may use whichever programming language you prefer (Java would be a suitable choice). You may like to implement generic software components that can be used in more than one game.
T. Hulland, Chess Program
4
A program to play chess against an AI computer player.
A.C. Lilley, Exercise Module for Drupal
5
Drupal (www.drupal.org) is a content management system for websites which can easily be customised and expanded by adding modules. The aim of this project is to develop a drupal module for online exercises such as multiple-choice questions and questions with textual answers for teaching web sites / module support sites. For multiple-choice questions automated feedback on the answers with hints for wrong answers should be provided. For other questions standard answers should be available such that students can compare their solutions with it. Furthermore, a peer feedback system should be realised where other users of the system (students, teachers, tutors, etc.) can correct the answers and provide feedback. The core elements are a component to create exercise, a component to enter answers, and a component to provide feedback. Furthermore, the system could also provide a mechanism for submitting coursework and getting feedback on coursework.
2004
D. Hoey, Teaching Support Web Site
6
The aim of this project is to develop a web site to support lectures based on an existing system utilising xoops (xoops.org) and moodle (moodle.org). The user management and student enrolment part of the site should be reused. The central part is to develop a system to arrange the contents of the lectures and map the contents on a particular instance of a lecture (mapping it to particular times with markers what is currently discussed in class, etc). It should be possible to arrange the content hierarchical and add the actual contents in form of modules (a module to add PDF files, a module to link to other site, a module for online exams, etc. similar to the moodle system). There should be at least one module of this type to demonstrate the system, and other module types are optional. In addition a student interface where each student could arrange and handle the relevant content individually with markers, comments, etc. could be added. This project requires knowledge of PHP (version 4), SQL (mysql) and HTML / web site development.
Y. M. Lu, Bibliography Management System
7
The aim of this project is to develop a web site to manage bibtex bibliographies and project documentations (anything from program documentations to project reports to scientific papers). Bibtex is part of the tex typesetting system providing a bibliography database to store various types of references. The project's aim is to develop a website to maintain the entries of a bibtex database. It should be possible to add and edit entries, search the database and also include bibliography information in web pages (e.g. for a publication list or for details about a particular paper including abstracts, etc.). In addition a document management system should be developed as part of a web site for project management (similar to sourceforge). A module should be added to an existing system which allows to add documentation to the project (using the above bibtex system). Note that project management functionality already exists and only documentation specific options would have to be added in order to interface the project site with the bibtex database (i.e. identify parts of the sources as document sources and parts of the released files as document files and add the bibtex info for them). Optionally this module could be expanbded by many additional features, e.g. automatic creation of pdf files from the tex sources with the release of documentation. The whole project should be implemented in the context of an existing web site based on xoops and sourceforge. You would have to become familiar with this system and have skills in PHP and mysql under Linux.
H. Yuan, Functional Environment for Two-Player Board Games
8
Many two-player games operate on a 2D board (e.g. checkers, chess, othello). The aim of this project is to implement a general 2D board environment which allows to play many types of these games and implement some test games with AI players. The board visualisation (a simple black/white board with coloured pieces is sufficient) and general control mechanism can be implemented in C/C++ using OpenGL. The rules for the game should be represented in a functional programming language (Scheme as provided by the guile library). Similarly the AI players can be implemented in this language. The main program can then load the functional game specification and appropriate AI players to play a particular game. In addition to demonstrate the program some simple games or one more advanced one should be implemented in Scheme. Options for expansion would be to add other languages (e.g. prolog using the GNU Prolog compiler?), functions to compare the performance of various AI players, etc. Note that the main program needs a Scheme interpreter which can easily be added using the GNU guile library. Guile allows to easily interface C with Scheme (not Java as far as I know; therefore the restriction to C/C++). Also note that Scheme is a relatively simple language which can be learned in a few days, but some general familiarity with functional languages (not necessarily scheme, but lisp, haskell, ...) may help.
2003
M. Kay, Detection of Exact Partial Symmetries
9
Symmetries of point sets are rigid motions (isometric transformations) which map a set of points (exactly) onto itself. Partial symmetries in this context are symmetries of subsets of a larger point set. They are useful to determine sub-structures in geometric models, e.g. detect a cube attached to a larger object or a set of cylindrical holes arranged symmetrically on a circle, etc. The aim of the project is to develop algorithms for the detection of partial symmetries of point sets.
Cite as
MSc Projects,http://www.langbein.org/teaching/projects/msc by Frank C Langbein [ 4/October/2010, 14:34].
Copyright © 1995-2012, Frank C Langbein.
Except where otherwise stated, this web site, Ex Tenebris Scientia, by Frank C Langbein is licensed under a Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England & Wales License.