CS300 PROJECT GUIDELINES 2008-09
Computing & Information Technology
Computer Modelling & Simulation
Computer Science & Engineering
Computer Science
Computing & Communications
prepared by H. Tang
These guidelines will be made available in PDF on the Ulearn CS300 site
at the start of the Autumn semester. They are primarily designed to help
you to choose a project. Details on how the project will be assessed are
also included, for information, but these are subject to modification
and will be explained to you in detail at the start of the Autumn
semester.
A Final Year (or Professional) Project is a module that allows you to
undertake a major piece of work that will involve developing and
applying material encountered on the course under the guidance of a
supervisor, who is normally a member of the teaching staff. The Project
lasts for the whole academic year and involves practical work and
writing a report on the work done. A major part of the assessment is
based on the report and the work reported therein, while two
presentations account for smaller parts (see the Deliverable Dates and
Marking Criteria sections).
This module is different from all other modules in that the content is
determined to a large extent by you, the student. The Project gives you
a lot of freedom in choosing what to study, but on the other hand it
requires a lot more independent thought and organisational skills than
the majority of modules. Therefore, the project should not be considered
an easy option as most students find it more demanding than the usual
lecture courses. However, it is also more rewarding and a well-executed
project can give confidence and pride in the results. It is also
something that can be used to demonstrate ability to potential
employers.
The aim of the Project is to demonstrate that you are able to undertake
and complete a substantial piece of work at a professional level. It is
also intended as an opportunity to put into practice various concepts
and techniques studied on a Computing degree programme. The project will
help the student to acquire a deeper insight into certain aspects of
computing, a particular application domain, or both.
If you are undertaking the Project in collaboration with an external
organisation, then you may also wish to arrange for a co-supervisor from
outside the University. All such arrangements must be formally approved
by the Director of Undergraduate Studies in the Department of
Computing.
The Project may focus on any of the themes within the degree programme.
The student is generally expected to create new software or to apply
existing tools and techniques in order to solve a well-defined problem.
In keeping with the overall purpose, it is desirable that the output
from the project should be ``real'' in the sense that it meets a real
need of some external organisation or class of end-users, or that it can
be used to do a real job for someone other than the author. The
development of a product for use by the student alone is not acceptable;
nor is a project whose outcome embodies little or no individual
contribution by the student (such as a literature survey or a
descriptive evaluation of work that was carried out entirely by
others).
It is essential that the Project be carried through to some appropriate
conclusion, i.e. a clearly identifiable achievement, which can be shown
to be of value to its potential ``customers''. For a traditional
software development project, this means that the whole of the initial
life-cycle must be taken into consideration when establishing the
project objectives and workplan:
- Analysis and specification.
- Design, implementation and testing.
- User validation and acceptance.
Your first concern must be to ensure that the project is feasible, so
that its objectives can be achieved within a fixed timescale and that
necessary resources are actually available. Thereafter, you should
ensure that the work carried out at each successive stage has been
completed to a suitable professional standard - that is, with due
attention to both quality and fitness for purpose.
It should be emphasised that a Project is not expected to result in 'new
discoveries' as would be the case for postgraduate degrees. However, you
are expected to use originality in the compilation of your report,
showing insight, technical creativity and imagination. The wholesale
copying of material from books in undigested form is not appropriate.
This year, choosing your project will be done via email negotiation with
potential academic supervisors. There is flexibility to choose your own
project topic and your supervisor. However, we also provide a Projects
List so that you can choose from one of these. The Department will make
all reasonable attempts to satisfy the requests made by students so that
a student has the opportunity to work with an academic who is interested
in the student's chosen project.
You should choose your own project or select one from the list from now
on. The sooner you choose the more likely it is that you will get the project/supervisor of your choise.
This means that you can start to prepare
for your project over the summer if you wish to do so. There will be around 53
students entering level 3 in 2008.
This year, each academic will supervise around 4 students. 4 students is
the cut-off. Supervising more than 4 students will need to be approved
by the project co-ordinator. Otherwise, there could be an imbalance in
the number of students being supervised by individual academics and this
will not allow some supervisors enough time to supervise their project
students adequately.
Dr Tang will be returning this year and will be supervising her full
quota of students. Dr Gruning will also be supervising his full quota of
students this year. Professor Schneider will only be supervising 2 final
year students. Note also that the Dr Mitchell is no longer at the
University. However, 3-D graphics projects are available.
Note that Dr Browne will be away until 7th July. Students interested in
doing a project with Dr Browne should email Lilian Tang (Projects
Co-ordinator). Also, remember that most academics will be taking annual
leave during the vacation.
Students are only allowed to attempt their own project provided that
they can persuade a member of staff to supervise it. The following are
the steps you need to follow:
- Email an academic to ask him/her to be the supervisor, enclosing
an outline of the work that you wish to undertake. In order to
find an academic with a background in your chosen topic area,
please read about the general interests of the academics who
will be supervising projects this year.
- Once you agree with a supervisor, the supervisor MUST email the
CS300 Projects Co-ordinator to record this agreement to
supervise you.
- The student's name will then be posted on the list of allocated
students on the CS300 website by the Projects Co-ordinator.
Until your name is on the list, you are not guaranteed to be
associated with a particular supervisor. Once your name is on
the list, you can make a start on the project.
If a student chooses an industrial project then the guidelines on
Collaborative Projects must be read. (see document for download on the
web-site).
Students are also asked to look at the list of projects offered by
supervisors. These projects are of an appropriate level for a final year
project. The following are the steps you need to follow if you want to
do one of these projects:
- When you identify a project you would like to do, you should
contact the academic directly to secure it. It is allowable for
more than one student to do the same project, because they can
be tailored to be different even though they start out with the
same title.
- Once you agree with a supervisor, the supervisor MUST email the
CS300 Projects Co-ordinator to record this agreement to
supervise you.
- The student's name is then posted up on the list on the CS300
website by the Projects Co-ordinator. Until your name is on the
list, you are not guaranteed to be associated with a particular
supervisor. Once your name is on the list, you can make a start
on the project.
If you haven't chosen a project by the beginning of the semester, 8 September, then we will allocate you to a supervisor. The project that you will undertake will
be chosen in discussion with the allocated supervisor. Failure to take
responsibility for choosing your project is not a good start to the
largest part of assessed work in your final year, and we encourage you
to actively engage in finding a supervisor.
If you have failed your project in 2007-08 or have withdrawn from the project without medical reasons, then as a resitting student you should also engage in the process above. You must choose a new topic and a new supervisor. Normally, the deadlines for the project deliverables will be the same as for the other students.
Students who have been granted extensions due to special circumstances
and are continuing their projects from last year can continue with their
chosen project or choose a new topic subject to the arrangements that
have been agreed with your supervisor, the Projects Co-ordinator and the
Director of Undergraduate Studies. The deadlines for your project will
be set on an individual basis.
If you have your own project in mind then you should look in this list to find an
appropriate supervisor that has an interest in your topic ideas.
- N. Antonopoulos
- Simulation of networks, Impact of Internet-related
software, such mobile agents, on society and business, Web interfaces, Design
and implementation of simple task specific Web robots, Neural networks
simulator, Distributed maths package on the Web.
- T. Browne
- Theoretical analysis and practical application
of intelligent and adaptive systems, including neural networks, fuzzy logic,
genetic algorithms and knowledge extraction/data mining techniques;
Bioinformatics and Medical applications of these technqies, including genomic sequence analysis, protein property prediction,
structure/function relationship prediction for novel chemical compounds and
support vector machines for novel chemotherapy treatments.
- M. Casey
- Theory and application of Neural Networks,
related Artificial Intelligence techniques, combining multiple classifier and
neural systems, simulating psychological abilities
- J. Clark
- Genetic Algorithms, Neural Networks,
Artificial Intelligence, Computer Based Scientific Tools, Fault Diagnosis,
Taxonomy, Classification, Identification, Pattern Recognition, Biological Data Analysis.
- L. Gillam
- Computational terminology, information extraction and Grid computing.
- André Grüning
- Theory, applications, simulation and analysis of artificial neural
networks. Learning algorithms for neural networks (gradient descent,
back-propagation, reinforcement and genetic algorithms, weight
perturbation). Computational power of neural networks. Cognitive
modelling. Language processing, language evolution and language
modelling. Theory of computation.
Traffic flow control, traffic management systems, Railway signalling systems
Open Source software. Handheld programming. Web 2.0. Java, Perl, PHP, JavaScript, C++ ...
- J. Heather
- Security, cryptographic protocols, protocol
verification using process algebra, concurrency, modelling of concurrent
systems.
- A. Ho
- Digital watermarking and authentication of multimedia and binary documents.
Digital steganography, steganalysis and detection of hidden messages in images. Watermarking applications.
- P. Krause
- Software Reliability Assessment, Requirements
Analysis, Software Specification, Software Testing, Pervasive Computing.
- R. Peel
- Parallel processing (typically using Occam
or Java threads), Digital logic synthesis and hardware compilation, Applications
of field programmable gate arrays (FPGAs), Linux internals (device drivers,
etc), Web-based computing (maybe using Java or Perl).
- H. G. Schaathun
- Copyright Protection and DRM, Digital Watermarking and Fingerprinting, Cryptography and Information Security, Coding Theory and its applications to Watermarking.
- S. Schneider
- Formal methods, concurrent systems, security, electronic voting, advanced methods for software development, hardware/software co-design, embedded components, modelling and simulation, modelling of nanotechnology architectures.
- L. Tang
- Perceptual HCI (e.g. Virtual reality HCI),
image processing, Multimedia information systems, natural language processing
environment/platform, children education system, medical information system
- H. Treharne
- Modelling and simulation of concurrent
systems (using CSP||B and JCSP and Java), for example evolutionary behaviour and control systems. Binary watermarking. Eclipse plug-ins. Lego-mindstorm applications for use in schools workshops.
- B. Vrusias
- Artificial Intelligence, Neural Computing, Data
Mining, Information Extraction & Retrieval, Multimedia Systems and Web
Technologies. Applied neural network combination techniques on language and
vision.
In this section, you will find a list of all projects being advertised
this year. The list may be subject to change as new ideas come to mind.
- Implementation of a New Peer-to-Peer Network
- Enhancing Searching Techniques in Peer-to-Peer Networks Using Software Agents
- Providing Authentication and Access Control in Peer-to-Peer Networks
- Interoperability Between Peer-to-Peer Networks
- Marking Spam Using Collaborative Filtering Techniques
- Machine learning for medical diagnosis
- Clustering bioinformatic data using machine learning techniques
- Development of an expert system
- Visualisation of music using machine learning techniques
- Neural Networks and Robotic Behaviour
- Modelling the Superior Colliculus - Multisensory Integration in a Robot
- Playing Games with Neural Networks
- Neural Network Ensembles, Classification and Game Theory
- Time Series Modelling
- Neural Networks for Botanical Identification
- Computer-based Classification of Galaxies
- Computer-based Astrobiology - The Search for Life in the Universe
- Botanical or Astronomical Databases
- Pocket PC Software Development for Field-based Scientific Surveys
- Virtual Worlds / Second Life
- Coursework Feedback
- Intensive Computing
- Text Grids
- Visual Search
- World Languages
- Top Ranking
- Automatic Trading
- Sentiment Analysis
- Duplication Detection
- Railway Traffic Flow Control
- Cognitive Modelling
- Find the most important RSS news
- Learning algorithms for neural networks that are efficient and biologically realistic at the same time
- A unified database of neural networks and their training
- Computational properties of simple recurrent networks
- Computational modelling of natural language
- An event-driven simulator for spiking neurons with pulse coupling and spike-time-dependent learning
- A modular Java strategy game development kit
- A flexible database system for management of Java strategy games
- An automated system for timetabling exams
- Extensions for Moodle
- 3D Su Doku
- Authentication and Restoration of Watermarked Images
- Digital Watermarking of Audio Content
- Digital Watermarking for Binary Images, Graphics and Text Documents
- Steganography Detection and Analysis of Hidden Data in Images
- Video Surveillance Analysis and Authentication
- Smart keys for smart motorists
- Integrating risk assessment into project management
- Use of Bayesian Networks for automated plant identification
- Automated practical reasoning about actions using models of argumentation
- Java toolset for ecological models
- Development of an Ethernet design for implementation using hardware/software codesign techniques
- Research into, and Implementation of, a Software Radio
- Investigation of Asynchronous Logic as a target for hardware compilation
- Re-implement the EA Tank Wars game using JCSP or KRoC (Occam-Pi)
- An improved device for rendering mapping data
- An improved device for capturing mapping data
- Capturing e-Voting form information
- Exam Paper Processing with Public Key Cryptography
- Web Tutorial (Cryptography)
- Image data hiding library
- Animating Boids in Java
- Electronic voting
- Mobile Phone Dodgem
- Strategy games in JCSP
- Handel-C fast cryptography
- Visual Art
- Automatic Image Analysis for Retinal Images
- Evolutionary Behaviour in JCSP
- Binary Watermarking
- Developing an application suitable for schools
- Outreach content management system
- Application on a phone
- Artificial Intelligence for Computer Games
- Text Mining for Topic Identification
- Image Analysis and Retrieval
- Distributed and E-Commerce Applications
- Implementation of a New Peer-to-Peer Network
-
-
- Description
- ROME, a new peer-to-peer network protocol has been in development within the Department. One of the goals is to yield faster searches than in current P2P systems. This project would involve the development of a working prototype of ROME.
- References
-
- James Salter and Nick Antonopoulos, ROME: Optimising DHT-based Peer-to-Peer Networks, In: Fifth International Network Conference (INC 2005), Samos Island, Greece, 5-7 July 2005
- Enhancing Searching Techniques in Peer-to-Peer Networks Using Software Agents
-
-
- Description
- Software agents can provide exciting opportunities for new applications where code becomes mobile and can move between machines. This project would look at utilising these mobility properties to allow for more accurate and efficient searches in peer-to-peer networks. Agents would be able to intelligently explore the network instead of relying on indexes of files held on each node.
- Providing Authentication and Access Control in Peer-to-Peer Networks
-
-
- Description
- To date, most peer-to-peer networks have been used for simple file sharing applications. Before more complicated services can be provided, realistic security must be developed. This project will look into how authentication and access control services can be applied to P2P networks.
- Interoperability Between Peer-to-Peer Networks
-
-
- Description
- Peer-to-Peer networks have been utilised to share vast numbers of resources across the Internet. Unfortunately there is currently no standard P2P network, so users must search using several different applications to find what they require. The aim of this project will be to provide a “bridge” between these disparate P2P networks.
- Marking Spam Using Collaborative Filtering Techniques
-
-
- Description
- Spam has become the junk mail of the 21st century, making up the majority of e-mail received by a large number of Internet users. In this project you would develop a new system that uses collaborative filtering techniques to filter spam. Rather than relying on identifying certain phrases within messages, user actions would be compared in an effort to identify and automatically mark potential spam in their inboxes.
- References
-
- Resnick, P., Iacovou, N., Sushak, M., Bergstrom, P., and Riedl, J. GroupLens: An open architecture for collaborative filtering of netnews, In: Proceedings of the 1994 Computer Supported Collaborative Work Conference.
- Machine learning for medical diagnosis
-
-
- Description
- This project topic is concerned with the development of a supervised leaning neural network using the MATLAB neural networks toolkit. The project will conduct an investigation into using neural networks for the diagnosis of medical conditions and an examination of their usefulness in this setting. It would be advantageous for students interested in this project to register for the CS365 Neural Networks module.
- References
-
- Video presentation at:(http://www.neurosolutions.com/products/ns/nnandnsvideo.html)
- Clustering bioinformatic data using machine learning techniques
-
-
- Description
- This project topic is concerned with the development of an unsupervised leaning neural network using the MATLAB neural networks toolkit. The project will conduct an investigation into using neural networks for data mining/clustering of genetic sequence data. It would be advantageous for students interested in this project to register for the CS365 Neural Networks module.
- References
-
- Video presentation at:http://www.neurosolutions.com/products/ns/nnandnsvideo.html
- Development of an expert system
-
-
- Description
- This project topic is concerned with the development of an expert system for a suitable domain. Past domains have included medical diagnosis, helpdesk assistants and home automation advisors. An expert system will be developed using a suitable shell, such as the JESS expert system toolkit.
- References
-
- http://herzberg.ca.sandia.gov/jess/FAQ.shtml
- Visualisation of music using machine learning techniques
-
-
- Description
- This project involves development of a software system that translates the inherent structure of a song/instrumental (students can choose their own music) into a colourful graphical display, using an unsupervised learning technique
- References
-
- http://davis.wpi.edu/ matt/courses/soms/#Introduction
- Neural Networks and Robotic Behaviour
-
-
- Description
- Whilst neural networks remain an abstract mathematical tool, because of their biological inspiration it is interesting to use neural networks within robots to see if they can learn to behave. The aim of this project is to implement simple neural network models within a suitable robot, say the LEGO Mindstorms kit, and determine the correct conditions under which the robot can learn about its environment. Such robots can also be used to teach computing concepts, including artificial intelligence.
- References
-
- Barnes, D.J. (2002). Teaching Introductory Java through LEGO MINDSTORMS Models. Proceedings of the 33rd SIGCSE Technical Symposium on Computer Science Education, pp. 147-151.
- Brooks, R. (2001). The Relationship Between Matter and Life. Nature, vol. 409(6818), pp. 409-411.
- Brooks, R. (1986). A Robust Layered Control System for a Mobile Robot. IEEE Journal of Robotics and Automation, vol. 2(1), pp. 14-23.
- Modelling the Superior Colliculus - Multisensory Integration in a Robot
-
-
- Description
- Advances in our understanding of different brain functions are reaching the stage that we can build simple models of sensory processing. The superior colliculus in mammalian brains is responsible for reacting to audio, visual or somatosensory stimuli so that our eyes turn and focus on an area of interest or potential threat within our environment. This project would use an existing LEGO Mindstorms framework to implement a model of the superior colliculus to determine if the robot could also react like a mammal.
- References
-
- Stein, B.E., Jiang, W. & Stanford, T.R. (2004). Multisensory Integration in Single Neurons of the Midbrain. In Calvert, G. A., Spence, C. & Stein, B. E. (Ed), The Handbook of Multisensory Processes, pp. 243-264. Cambridge, MA.: A Bradford Book, MIT Press.
- Stein, B.E. & Meredith, M.A. (1993). The Merging of the Senses. Cambridge, MA.: A Bradford Book, MIT Press.
- Playing Games with Neural Networks
-
-
- Description
- Can a neural network learn how to play strategic games, such as chess? Typically a brute force approach is taken to strategic game play, using heuristics to limit the search for moves. Can a neural network learn to play such games or generate good heuristics from past examples of games? The aim of this project is to investigate ways in which neural networks can be used to learn to play games, such as connect 4, draughts or chess.
- References
-
- Levy, D. & Newborn, M. (1991). How Computers Play Chess. New York: Computer Science Press.
Schaeffer, J. & van den Herik, H.J. (2002). Games, Computers, and Artificial Intelligence. Artificial Intelligence, vol. 134(1-2), pp.1-7.
- Neural Network Ensembles, Classification and Game Theory
-
-
- Description
- Classification techniques have reached the stage that they can provide us almost arbitrary generalisation. One way in which this is achieved is through the use of ensemble techniques, which use a redundant combination of classifiers to improve performance. Empirically, it has been observed that the more diverse the individual classifiers are, the better the ensemble performance, but as yet there is little theoretical evidence to support this. Theoretical advances have been made for regression tasks, but this has not yet been transferred to classification. The aim of this project is to explore the application of game theory to different types of ensemble combination to provide further guidance on architecture selection and help theoretical understanding.
- References
-
- Casey, M.C. & Ahmad, K. (2004). In-situ Learning in Multi-net Systems. In Yang, Z.R., Everson, R. & Yin, H. (Ed), Proceedings of the 5th International Conference on Intelligent Data Engineering and Automated Learning (IDEAL 2004), Lecture Notes in Computer Science 3177, pp. 752-757. Heidelberg: Springer-Verlag.
- Brown, G. (2004). Diversity in Neural Network Ensembles. Unpublished doctoral thesis. Birmingham, UK: University of Birmingham.
- Zanibbi, R., Blostein, D. & Cordy, J.R. (2005). Recognition Tasks Are Imitation Games. In Singh, S., Singh, M., Apte, C. & Perner, P. (Ed), Proceedings of the 3rd International Conference on Advances in Pattern Recognition (ICAPR 2005), Lecture Notes in Computer Science 3686, vol. 1, pp. 209-218. Heidelberg: Springer-Verlag.
- Time Series Modelling
-
-
- Description
- Successfully modelling time series offers us the ability to predict future values of, say, share prices. However, the nature of these sort of volatile series makes modelling difficult. Current research has focused on hybrid statistical and neural network approaches, but recent findings show that improved performance can be gained by using a well-configured neural network. The aim of this project is to investigate ways in which time series can be modelled using neural networks in comparison with statistical techniques.
- References
-
- Theodorakea, C. (2004). Evaluation of Forecasting Methods of Financial Time Series. Unpublished masters thesis. UK: University of Surrey.
- Taskaya-Temizel, T., Casey, M.C., & Ahmad, K. (2005). Pre-processing Inputs for Optimally-configured Time-delay Neural Networks. IEE Electronics Letters, vol. 41(4), pp. 198-200.
- Taskaya Temizel, T. & Casey, M.C. (2005). A Comparative Study of Autoregressive Neural Network Hybrids. Neural Networks, vol. 18(5-6), pp. 781-789.
- Taskaya Temizel, T. & Casey, M.C. (2005). Configuration of Neural Networks for the Analysis of Seasonal Time Series. In Singh, S., Singh, M., Apte, C. & Perner, P. (Ed), Proceedings of the 3rd International Conference on Advances in Pattern Recognition (ICAPR 2005), Lecture Notes in Computer Science 3686, vol. 1, pp. 297-304. Heidelberg: Springer-Verlag.
- Neural Networks for Botanical Identification
-
-
- Description
- Artificial neural networks (ANNs), a branch of artificial intelligence
(AI) can be used to perform species identification of plant specimens.
ANNs can learn to discriminate between species, by means of training,
in the same way that humans can - and, like humans, they are able to
deal with variable data, where patterns are difficult to determine.
- References
-
- Clark, J.Y. (2003). ``Artificial neural networks for species identification by taxonomists''. BioSystems, vol. 72, pp. 131-147, Elsevier Press.
- Beale, R., Russell & Jackson, T. (1990). Neural computing : an introduction. Hilger, Bristol, UK.
Prechelt's Neural Network benchmarks http://page.mi.fu-berlin.de/\~{}prechelt/Biblio/1994-21.pdf
- Computer-based Classification of Galaxies
-
-
- Description
- Galaxies (like our galaxy, the Milky Way) are very large collections of stars, and they come in various forms, shapes and sizes. The problem is, should they be grouped according to overall similarity (eg. put all those forming spirals together), or should they be grouped according to their life cycle (eg. a spiral galaxy might once have been elliptical when it was younger). There are various ways of classifying this kind of data, including cluster analysis and neural networks.
- References
-
- Galaxy Classification http://www.astr.ua.edu/keel/galaxies/classify
- Computer-based Astrobiology - The Search for Life in the Universe
-
-
- Description
- Computer-based Astrobiology - The Search for Life in the Universe
How can we look for where we might find life in the Universe, without actually having to go there? If you had a spaceship, which direction would you travel, if you wanted to find life on other worlds? The clue might lie in the available data on nearby stars, compared with the data we have regarding our own Solar System (which we know contains life). Computers can use cluster analysis and neural networks, for instance, to investigate possible correlations and patterns, providing a guide as to where we might look (if we had such a spaceship).
- References
-
- The Search for Life in the Universe
http://nai.arc.nasa.gov/
- Gliese Catalog of Nearby Stars http://heasarc.gsfc.nasa.gov/W3Browse/star-catalog/cns3.html
- Nearby star datasets http://www.projectrho.com/smap06.html
- Woolley Catalog of Stars within 25 Parsecs http://heasarc.gsfc.nasa.gov/W3Browse/all/woolley.html
- Botanical or Astronomical Databases
-
-
- Description
- For those who might like to produce a scientific database, useful and interesting data that could be used can come from astronomical star catalogues, or biological (eg. botanical) data (currently mostly in book or journal form). Such data can then be more easily mined for information.
- References
-
- Gliese Catalog of Nearby Stars http://heasarc.gsfc.nasa.gov/W3Browse/star-catalog/cns3.html
- Galaxy Classification http://www.astr.ua.edu/keel/galaxies/classify.html
- Nearby star datasets http://www.projectrho.com/smap06.html
- Woolley Catalog of Stars within 25 Parsecs http://heasarc.gsfc.nasa.gov/W3Browse/all/woolley.html
- Pocket PC Software Development for Field-based Scientific Surveys
-
-
- Description
- The idea here is to provide computer applications that can run on Mobile Platforms such as Pocket PCs, such as
those that might be useful for scientists (eg. botanists, zoologists, geologists) who are working in the field.
- References
-
- An information hub for Pocket PC development http://www.devbuzz.com/
- Pocket PC development network http://www.pocketpcdn.com/
- Electronic Field Guides and Citizen Science http://www.nescb.org/epublications/winter2004/stevenson.html#electronic_field_guides
- Virtual Worlds / Second Life
-
-
- Description
- This project topic is concerned with the use of Virtual Worlds such as Second Life. The project will investigate using Linden Scripting Language for one or more of (i) building and maintaining a virtual presence; (ii) automatic production of virtual teaching resources; (iii) implementing intelligent virtual objects; (iv) providing a Second Life implementation of topics described below; or a topic of the student's choosing. Outcomes could be demonstrated on “Surrey Island”.
- References
-
- http://www.secondlife.com
- http://www.computing.surrey.ac.uk/2L/
- Heaton, J. (2007) “Scripting Recipes for Second Life”. Heaton Research.
- Rymaszewski, M. [and others] (2008) “Second Life: The Official Guide”. John Wiley & Sons (2nd Edition)
- Weber, A., RuferBach, K. and Platel, R. (2007) “Creating Your World: The Official Guide to Advanced Content Creation for Second Life”. John Wiley & Sons, 2007
- http://www.eduserv.org.uk/upload/foundation/sl/uksnapshot052008/final.pdf
- Coursework Feedback
-
-
- Description
- This project topic is concerned with improving the feedback received by students on a variety of assessed materials. The project will evaluate and extend a prior Undergraduate report to implement a flexible prototype system for improving the coverage, clarity, consistency and speed of useful feedback. The project may link in to research on sentiment analysis and readability, and outcomes may be presented to others across the University.
- References
-
- One previous Undergraduate project report.
- Biggs, J. (1999). “Teaching for Quality Learning at University”. Buckingham: SRHE & Open University Press.
- Bright, K. (2006, December 18). “Effective Feedback”, http://www.ukcle.ac.uk/resources/assessment/effectivefeedback.html
- Haines, C. (2004). “Assessing Students' Written Work: Marking Essays and Reports”. Abingdon: Routledge Falmer.
- Higgins, R., Hartley, P., & Skelton, A. (2000). “What Do Students Really Learn From Tutors' Comments?”. University of Leicester.
- Newbold, N. and Gillam, L. (2008) "Towards Automatic Document Quality Control". Workshop on Natural Language Processing resources, algorithms and tools for authoring aids, LREC 2008.
- Intensive Computing
-
-
- Description
- This project topic is concerned with various high-performance computation technologies. The project may involve using one or more of: i) a High Performance Computing (HPC) cluster and high-speed networking; (ii) the Cell Broadband Engine on a Playstation 3; (iii) the 2000+ processors and terascale data storage of the National Grid Service; (iv) data and compute Clouds. Projects are likely to concern interoperability and migration of data and computation for a selected application – some of the project topics that follow may be suitable for such considerations.
- References
-
- e.g. http://www.cs.surrey.ac.uk/BIMA/Projects/GRID/
- e.g. http://en.wikipedia.org/wiki/Cell_microprocessor
- e.g. http://www.ngs.ac.uk
- e.g. http://www.businessweek.com/technology/content/nov2007/tc20071116_379585.htm
- Tsay, R.S. (2005) Analysis of financial time series. Hoboken, N.J: Wiley-Interscience
- Text Grids
-
-
- Description
- This project topic is concerned with analysis of large collections of text. The project will investigate the distributed and parallel analysis of text documents, potentially simulating the arrival in real-time of new documents, and undertaking live updates of results which may include visual representations, for example of social networks. The project should consider a suitable architecture for analysis of large volumes of texts and assess issues of performance.
- References
-
- Gillam, L . (2004) "Systems of concepts and their extraction from text". Unpublished PhD thesis, University of Surrey.
- Gillam, L., Tariq, M. and Ahmad, K. (2005) Terminology and the Construction of Ontology. Terminology 11(1), pp55-81. John Benjamins Publishing Company. ISSN 0929-9971; E-ISSN 1569-9994.
- Gillam, L. and Cooke, N. (2008) "Intellectual property escaped with the email? Press F1 for help". Journal of Information Assurance and Security.
- Cooke, N., Gillam, L. and Kondoz, A. (2007) "The Best Kept Secrets with Corpus Linguistics" 4th Corpus Linguistics Conference 2007, Birmingham 27-30 July.
- Visual Search
-
-
- Description
- This project topic is concerned with the accurate retrieval of video, video segments, and still images from large collections: new-generation retrieval systems. The project can investigate the adaptation of existing search engine technologies, and the automatic extraction, and semantic association of metadata from images, video and texts. The project would build on, and inform, activities in CS257, building on international standard data collections.
- References
-
- del Bimbo, A. (2001) “Visual Information Retrieval”. Morgan Kaufmann.
- Li, Z-N and Drew, M.S. (2004). “Fundamentals of Multimedia”. Pearson Prentice Hall.
- World Languages
-
-
- Description
- This project topic is concerned with “Multilingualism in Cyberspace”. The project will conduct an investigation into a country code top level domain (ccTLD) or generic top level domain (gTLD) to quantify language coverage and tagging accuracy in these domains according to both assigned metadata and linguistic content. The project should consider a suitable architecture for measuring information in large volumes of web texts, possibly involving the use of Grids.
- References
-
http://portal.unesco.org/ci/en/ev.php-URL_ID=16539&URL_DO=DOTOPIC&URL_SECTION=201.html
- Gordon, Raymond G., Jr. (ed.), 2005. Ethnologue: Languages of the World, Fifteenth edition. Dallas, Tex.: SIL International.
- Chambers, J.K. and Trudgill, P. (1998) Dialectology. Cambridge: Cambridge University Press
- Gillam, L. and Garside, D. "TC37, Terminology and Language". ISO Focus 4(5), 43-44.
- Gillam, L., Garside, D. and Cox, C. "Developments in Language Codes standards". In Rehm, Witt and Lemnitzer (eds.): Datenstrukturen fur linguistische Ressourcen und ihre Anwendungen / Data Structures for Linguistic Resources and Applications. Proc.of GLDV 2007, 11-13 April 2007, Tubingen, Germany: Gunter Narr Verlag.
- One previous Undergraduate project report and one MSc dissertation (in progress)
- Top Ranking
-
-
- Description
- This project topic is concerned with effective search engine marketing. The project will investigate using knowledge of search engine algorithms to ensure the highest possible ranking for a webpage. The project may investigate the development of a system to automatically extract and embed keywords and other metadata from textual content to generate the best ranked page, or to investigate the potential for constructing security exploits.
- References
-
- http://www.webworkshop.net/pagerank.html
- Gillam, L . (2004) “Systems of concepts and their extraction from text”. Unpublished PhD thesis, University of Surrey.
- Gillam, L., Tariq, M. and Ahmad, K. (2005) Terminology and the Construction of Ontology. Application-driven Terminology Engineering. Ibekwe-SanJuan, Fidelia, Anne Condamines and M. Teresa Cabre Castellvi (eds.), 49-73.
- http://www.computing.surrey.ac.uk/SystemQ/
- Two previous Undergraduate project reports and on MSc dissertation (in progress)
- Automatic Trading
-
-
- Description
- This project topic is concerned with the development of an automatic financial instrument (e.g. share, currency) trading system based on recognition of pattern formation in graphs. The project will investigate the effectiveness of trading signals (buy/sell) based on the automatic identification of trends, cycles and turning points.
- References
-
- http://www.candlestickforum.com/; http://www.chartpatterns.com/
- Gillam, L. (Ed.) (2002). Terminology and Knowledge Engineering: making money in the financial services industry. Proceedings of a workshop at the TKE 2002 conference.
- Gillam, L. and Ahmad, L. (2006) “Financial data tombs and nurseries: A grid-based text and ontological analysis”. Proc. of 1st Intl. Workshop on Grid Technology for Financial Modeling and Simulation (Grid in Finance 2006), Proceedings of Science.
- Gillam, L., Ahmad, K. and Dear, G. (2005). Grid-enabling Social Scientists: some infrastructure issues. Proc. of 1st International e-Social Science Conference
- Tsay, R.S. (2005) Analysis of financial time series. Hoboken, N.J: Wiley-Interscience
- Theodorakea, C (2004). Evaluation of forecasting methods of Financial Time Series. Unpublished MSc dissertation, University of Surrey.
- Sentiment Analysis
-
-
- Description
- This topic is focused on automatic analysis of semantic orientation – an emerging topic referred to by some as sentiment analysis or opinion mining and used for customer relationship management, discovering political opinions, reviewing and suggesting products or movies, and decision support in financial analysis. Techniques applicable to this analysis, some of which have been developed and Grid-enabled at Surrey, will be investigated in one or more application areas.
- References
-
- http://patty.isti.cnr.it/ esuli/research/sentiment/Sentiment.html (articles may be available elsewhere)
- http://www.cs.cornell.edu/people/pabo/movie-review-data/
- Ahmad, K., Gillam, L. and Cheng, D. (2005) “Textual and Quantitative Analysis: Towards a new, e-mediated Social Science”. Proc. of 1st Intl. e-Social Science Conference, Manchester, June 2005.
- Duplication Detection
-
-
- Description
- This topic focuses on automatic analysis of multiple news data feeds. RSS provides a means to aggregate content, but how much news content arriving from multiple sources is presenting elements of the same story? How many are almost duplicates? Are the same stories being spun differently by different content providers? Can we discover the most important news topic of the hour? Providing the integration between Surrey’s Grid-based text analysis systems and RSS may help to answer these questions; combining multiple RSS feeds and the Reuters data feed will expand the potential for improved financial analysis. Results from the analysis could also be published as an RSS feed and integrated into other systems.
- References
-
- What is RSS? http://www.xml.com/pub/a/2002/12/18/dive-into-xml.html
- Publications from the FINGRID project: http://www.computing.surrey.ac.uk/grid/fingrid/papers.html
- Railway Traffic Flow Control
-
-
- Description
- How can we manage train traffic efficiently in order to maximise capacity?
Have you been stuck in a train waiting to enter a station for
minutes because all platforms are occupied? Then this project is
for you.
In the project you will be designing and implementing a system
that dispatches trains on a line so that the line capacity
(trains per hours) is maximised. What changes if your
system is to dispatch trains on a line with a junction to
another line? What if two lines join? How much is line
capacity improved when the track is doubled or quadrupled?
The project offers many nice problems for the student to
attack, e.g. taking signal and point interlocking into
account. Can you think of object-oriented programming concepts
that model interlocking? What about including threads to model
the movements of independent trains?
- Cognitive Modelling
-
-
- Description
- What does our brain do when we process contradicting sensory input? Can we model that as a computational system?
Cognitive psychologists often design (computer) experiments to
trick our brain. This helps them to find out what processes
there are in our brains when we for example see or hear
something. Since we cannot simply open somebody's brain, these
experiments must be carefully designed and are often such that
they drive a human's cognitive processes to their limit and try
to infer the kind of process going on from the errors that
humans make in such an experiment. Computational neuroscientists
then take these results from a cognitive experiment and try to
build a computation model that explains the observed
experimental behaviour.
I have two cognitive effects to suggest the student to model:
the Stroop effect (about confusing colour names when reading a
coloured list of colour words) and the McGurk effect (proving
that you hear with your eyes and see with your ears :-), see references below)
but you are also free to suggest a different experiment that
you would like to model
- References
-
- Google "Stroop Effect"
- Google "McGurk Effect"
- McGurk, Harry; and MacDonald, John (both: Univ of
Surrey!): "Hearing lips and seeing voices," Nature 1976, Vol
264(5588), pp. 746–748.
- Find the most important RSS news
-
-
- Description
- There are many RSS feeds in the web that allow you to read
pieces of news. However with an abundance of RSS feeds and
consequently an abundance of news, how can I find the most
important ones?
In this project you will design and implement methods to extract
news from RSS feeds and compare them with each other using
different approach from text analysis. I think that a lot
of the text handling and analysis would be easy to do in PERL.
- Learning algorithms for neural networks that are efficient and biologically realistic at the same time
-
-
- Description
- How can we find training algorithms for artificial neural networks that are
both efficient and biologically realistic?
Artificial neural networks are both biologically inspired models of the
nervous system and trainable computational devices. They can be trained with
gradient-descent learning algorithms such as back-propagation. However
back-propagation is not biologically realistic because it requires an extensive circuitry to
calculate error gradients. So-called weight perturbation methods have been
suggested that can do without extensive circuitry but estimate only an
approximation to the true error gradient by making use of "noise" in a
clever way. "Noise" or random perturbations are also used in genetic
training algorithms that do not follow a gradient, but use trial-and-error in
an evolutionary way.
One aim of this project is to compare the performance of weight perturbation
and genetic algorithms and develop some ideas for their improvement.
- References
-
- André Grüning. Elman backpropagation as reinforcement for simple recurrent networks.
Neural Computation, 19(11), 2007.
- Benjamin A. Rowland, Anthony S. Maida, and Istvan
S. N. Berkeley. Synaptic noise as a means of implementing
weight-perturbation learning.
Connection Science, 18(1):69-79, 2006.
- Genetic algorithms in Wikipedia
and references therein.
- A unified database of neural networks and their training
-
-
- Description
- Can we systematically store all the different artificial network types,
their training algorithms, training data, source code and result files in a
unified database?
Nowadays many different network types with many different learning algorithms
trained on many different data sets are around. When a researcher wants to
reproduce, improve or analyse somebody else's results s/he usually has to
reimplement the first researcher's networks, data sources etc from scratch since
so far it is far from common that researchers make the tools they were using
publicly available.
In this project the student will therefore develop ideas to
implement a database that can accommodate different types of networks, data
sources used in training, the corresponding result files etc. in order to
make them publicly accessible to the research community. The database shall
be based on open source software in order to encourage as many researches a
possible to contribute their networks and be accessible from the WWW.
While the project certainly contains a database aspect, much of the work will
be devoted on inventing suitable storage formats for the networks, the
algorithms and their training data, perhaps in XML.
- References
-
- For an overview of different network types: Artificial
Neural Networks on Wikipedia
- Computational properties of simple recurrent networks
-
-
- Description
- To understand what types of computations artificial neural
networks are capable of when they are trained. What is the
computational power of an artificial neural network? Can it process
complicated formal languages? And is there a relation to the grammar
of natural languages?
It is well established that simple recurrent networks can learn so called
regular languages. These are formal languages without recursive
structure and they require finite memory only. In this project we want to
explore whether and how artificial neural networks can also process more
complicated recursive structures that are both interesting from a
computational and a linguistic viewpoint.
- References
-
- Jeffrey L. Elman, Elizabeth A. Bates, Mark H. Johnson, Annette Karmiloff-Smith,
Domenico Parisi, and Kim Plunkett. Rethinking Innateness: A Connectionist Perspective on
Development. MIT Press, Cambridge, Mass., 1996.
- Mikael Bodén and Alan Blair. Learning the dynamics of embedded clauses.
Applied Intelligence, 19(1/2):51-63, 2003.
- Paul Rodriguez.
Simple recurrent networks learn context-free and context-sensitive
languages by counting.
Neural Computation, 13:2093-2118, 2001.
- André Grüning.
Stack- and queue-like dynamics in recurrent neural networks.
Connection Science, 18(1):23-42, 2006.
- Computational modelling of natural language
-
-
- Description
- Natural languages are a phenomenon that is hard to grasp in computational terms
since so many different ingredients enter it: phonology, morphology, syntax,
semantics, world knowledge, information theory...
In the project, the student will pick an interesting problem from the vast
area of natural language and build a computational model for it. Two examples
of more concrete project ideas could be
modelling the pattern of distributions of full
nouns or proper names (the dog, the cat, Alice, Bob, the tree ...) and
referential expressions (I, she, him, its ...) in a text. Think about the
slightly different meanings of the following sentences: 1. After she had left
the party, Alice went home. 2. After Alice had left the party, she went
home. 3. After she had left the party, she went home. 4. After Alice had
left the party, Alice went home.
modelling the distribution of mass and count nouns across different
languages. A count noun is one that can easily be counted: one tree, two
trees, three trees, many trees. A mass noun is one that cannot be easily
counted without changing the basic meaning of the word: salt, much salt, but
"two salts"? Different languages seems to treat different nouns differently
in this respect.
- References
-
- André Grüning and Andrej A. Kibrik. Modeling referential choice in discourse: A cognitive calculative
approach and a neural network approach.
In AntĂłnio Branco, Tony McEnery, and Ruslan Mitkov,
editors, Anaphora Processing: Linguistic, Cognitive and Computational Modelling. John
Benjamins, Amsterdam, 2004.
- An event-driven simulator for spiking neurons with pulse coupling and spike-time-dependent learning
-
-
- Description
This project is one that will involve a lot of programming in an
object-oriented language such as JAVA or C++. Some limited knowledge about
the structure of natural or artificial neurons and synapses will be helpful,
but could be acquired quickly if necessary.
The interesting thing with the intended simulator is that it is
event-driven, i.e. objects in the programme send messages to each
other (e.g. one neuron to another neuron). Upon arrival of one such message
("event", e.g. a spike) the receiving object updates its state and may
itself send a message (e.g. another spike) to other objects. This is different
from the usual time-step approach in neural network simulation (which calls
for a procedural approach to coding than an object-oriented one) because it
will require the programmer to intelligently design objects and their
interfaces.
With the final simulator the student will be able to simulate synchronous and
time-locked spiking patterns in a brain model. The neuron model
and the type of networks are described in the references below.
- References
-
- Google "Izhikevich"
- A modular Java strategy game development kit
-
-
- Description
- I am looking ultimately to create a web-based system to allow people to submit Java programs to play two-player turn-based strategy games (Connect 4, draughts, noughts and crosses, etc.).
You will need to construct:
(a) a set of classes representing an abstract two-player game;
(b) a set of classes for each particular game;
(c) some documentation so that end users can download your classes and build a module that plays the next move of a game in progress. You will then be able to build the system that takes two such modules and plays them off against each other.
This is a research-orientated project.
- A flexible database system for management of Java strategy games
-
-
- Description
- I am looking ultimately to create a web-based system to allow people to submit Java programs to play two-player turn-based strategy games (Connect 4, draughts, noughts and crosses, etc.).
This project is concerned with building an extensible database system to allow for storage of player modules, logs of games played between the modules, and a leaderboard showing the most successful modules. You will also need to create a web site to allow access to this database, with facilities for creating new types of game, adding new modules, playing a game between two modules, and so on.
This is a research-orientated project.
- An automated system for timetabling exams
-
-
- Description
- Currently, the exam timetabling system is a rather awkward
manual process involving cross-checking of different groups to
resolve clashes. This project will develop a program that takes a
set of exam specifications and class lists and produces an exam
timetable.
- Extensions for Moodle
-
-
- Description
- Moodle (see www.moodle.org) is an open source system for
creating and maintaining teaching courses. Its `quiz' system has
been used successfully for various MSc modules in the department.
This project aims to extend Moodle in various ways. For one, it
will add new question types to make the `quiz' system more
flexible. It will also look at ways to integrate it with the
module registration system at Surrey. Other ideas for extensions
are welcome.
- 3D Su Doku
-
-
- Description
-
Su Doku is a puzzle game that has grown enormously in popularity over the last few months, with at least three UK daily newspapers publishing a puzzle each day. The puzzle involves filling in digits into a partially completed 9x9 grid, with the digits obeying various elementary rules.
The standard two-dimensional puzzle could very easily be extended to three dimensions, either as 9x9x9 or as 8x8x8. This project involves creating a program to generate three-dimensional Su Doku puzzles and allow for solving on-screen. There are two separate elements to the project: (1) creation of the puzzle generation and solving engine; (2) a visual front end to allow a player to navigate sensibly through the puzzle and try to solve it.
- Authentication and Restoration of Watermarked Images
-
-
- Description
-
This project focuses on the development and analysis of self-restoration techniques for authenticated images through digital watermarking. Self-restoration or recovery techniques include incorporating irregular sampling in approximation transform spaces. Tampered regions of images can be first authenticated and then accurately restored. Potential applications include crime scene analysis, traffic enforcement, medical imaging and satellite remote sensing. For this project, the pre-requisites for students are some basic knowledge of MATLAB and/or C/C++ programming and an interest in image processing.
- References
-
- Ho, A.T.S., Zhu, X., Guan, Y.L., "Image Content Authentication Using Pinned Sine Transform," EURASIP Journal on Applied Signal processing (JASP), Special Issue on Multimedia Security and Rights Management, No. 14, Vol 2004, pp2174-2184, October 2004
- Zhu, X., Ho, A.T.S., Marziliano, P., "Semi-fragile Watermarking Authentication and Restoration of Images Using Irregular Sampling,", Revised and Submitted to EURASIP Signal Processing: Image Communication, April 2005
- Digital Watermarking of Audio Content
-
-
- Description
-
This project involves the software development and analysis of digital watermarking techniques for audio data formats such as Speech and Wav files. Digital watermarking is used in the copyrights protection and authentication of multimedia data. The techniques have to be robust against malicious attacks or tampering to remove the watermark. The watermark can be in the form of creator, trademark and product information. Robust audio watermarking requires a good understanding of the human psycho-audio model of one-dimensional data. Research into different techniques will be investigated and implemented using a high-level language. For this project, the pre-requisites for students are some basic knowledge of MATLAB and/or C/C++ programming and an interest in MP3 format and information security.
- References
-
- Garcia, R. (1999). "Digital Watermarking of Audio Signals using a Psycho-acoustic Auditory Model and Spread Spectrum Theory", 107th Convention, Audio Engineering Society, New York, NY , September 24-27, 1999 . Preprint 5073
- Digital Watermarking for Binary Images, Graphics and Text Documents
-
-
- Description
-
This project involves the software development and analysis of image watermarking techniques for binary images and text documents. There is a growing need for authentication of binary content such as legal documents, diagrams and graphical data to verify that the content has not been maliciously tampered with. The students for this project should have some MATLAB and/or C/C++ programming experience and a keen interest in signal and image processing.
- References
-
- Ho, A.T.S., Niladri B, Puhan., Marziliano, P., Makur, A., Guan, Y.L., "Imperceptible Data Embedding in Sharply-Contrasted Binary Images," Eight International Conference on Control, Automation, Robotics and Vision (ICARCV) 2004, Kunming, China, December 6-9, 2004
- Steganography Detection and Analysis of Hidden Data in Images
-
-
- Description
-
This project focuses on the steganographic detection, analysis and classification of hidden content in digital images. These images can be artificial or natural scenes. There are currently more than few dozens of steganography software available openly for data hiding. Steganalysis is becoming a very important area of research and needed to determine whether sensitive messages have been embedded secretly, for example by terrorists for communication. Different statistical approaches will be investigated and compared for their detection and classification of steganography software. For this undergraduate project, the pre-requisites for students are some basic knowledge of MATLAB and/or C/C++ programming and an interest in signal and image processing and information security.
- References
-
- Chandramouli, R., Memon, N.D. "Steganography capacity: A steganalysis perspective," Prof. SPIE Security and Watermarking of Multimedia Contents, 2003.
- Lyu, S., Farid H., "Detecting Hidden Messages Using Higher-Order Statistics and Support Vector Machines," 5th International Workshop on Information Hiding, Noordwijkerhout, The Netherlands, 200
- Video Surveillance Analysis and Authentication
-
-
- Description
-
This project focuses on the software development of image analysis and watermarking authentication techniques for video surveillance applications. Current interest in video surveillance applications arising from recent terrorists events has led to an increasing need of feature extraction and data mining techniques for accurate detection and classification of crime scene content. Once extracted, the video content can be used as court evidence. It is important that the evidence in terms of video frames or images is protected or fingerprinted via digital watermarking in order to prevent any illegal tampering or leaks of this information. For this project, the pre-requisites for students are some basic knowledge of MATLAB and/or C/C++ programming and an interest in image and video processing.
- References
-
- Atrey, P.K., Yan, W.Q., Kankanhalli, M.S., "A Scalable Signature Scheme for Video Authentication," Multimedia Tools and Applications, 2005. (to appear)
- Ho, A.T.S., Zhu, X., Guan, Y.L., "Image Content Authentication Using Pinned Sine Transform," EURASIP Journal on Applied Signal processing (JASP), Special Issue on Multimedia Security and Rights Management, No. 14, Vol 2004, pp2174-2184, October 2004.
- Smart keys for smart motorists
-
-
- Description
- Several car manufacturers now record data on an electronic car key. This provides an opportunity for providing additional internet based services for car owners. This project will continue work started in this direction in 2006/7
- Integrating risk assessment into project management
-
-
- Description
- This project will investigate how quantitative risk assessment can be integrated into the project management tool Microsoft Project.
- Use of Bayesian Networks for automated plant identification
-
-
- Description
- This builds on work we have been doing with the Royal Botanic Gardens, Kew to build an interactive application for helping enthusiasts to identify wild plants.
- Automated practical reasoning about actions using models of argumentation
-
-
- Description
- When using everyday reasoning, one tends to use rules about what is "normally" the case, rather than strict logical rules. As a result the conclusions are often provisional and may be retracted in the light of further evidence. This project will involve the implementation of algorithms developed in the theoretical work of the EU funded "ASPIC" research project.
- Java toolset for ecological models
-
-
- Description
- This builds on foundational work being carried out at the Royal botanic Gardens, Kew, on prediction risk of species extinction from field data.
- Development of an Ethernet design for implementation using
hardware/software codesign techniques
-
-
- Description
- The author is developing an Occam-to-FPGA compiler, that allows
parallel software written in a variant of the Occam programming
language to be run on programmable gate array devices. We now need to
develop some significant applications to demonstrate our compiler.
It will be necessary to write code for
- An Ethernet transmitter
- An Ethernet receiver
To these could be added a simple application [choose something
to hang onto Ethernet - an analogue to digital converter, for instance.]
As an alternative to Ethernet, the logic for a USB bus could be
developed instead.
- Research into, and Implementation of, a Software Radio
-
-
- Description
- It is possible to build a radio receiver using a minimal RF front-end
and further processing stages that are implemented in software.
Following on from a previous project, this
project will research the basic theory, and consider a design that can
be implemented using conventional software or my Occam-to-FPGA
mechanism for running parallel software on programmable gate array
devices. The initial application could well be related to the MSF time
transmitter at Rugby, long wave radio reception (i.e. Radio 4) or to an RFID
reader.
This project would particularly suit a CSE student, but will be quite
difficult.
- Investigation of Asynchronous Logic as a target for hardware compilation
-
-
- Description
- Our Occam-to-FPGA compiler currently generates clocked synchronous
logic. An alternative would be to create asynchronous logic. This
project will investigate the flavours of asynchronous logic that would
be most suitable for execution on programmable gate arrays, hand-code
some circuits to demonstrate a viable choice, implement a new compiler
back-end to automate the coding process, and evaluate the new design
against the existing synchronous logic strategy.
- Re-implement the EA Tank Wars game using JCSP or KRoC (Occam-Pi)
-
-
- Description
- EA Games has produced a C++ Tank Wars simulation environment. It runs
in single-threaded mode, polling the AI modules for each tank in turn.
This project will re-engineer this environment, to allow each of the
simulated tanks to run in parallel. Initially, these would all run on a single
processor, but later a multiprocessor version could be built, too, from the
same general software design.
- An improved device for rendering mapping data
-
-
- Description
- OpenStreetMap is a worldwide open-source mapping project.
Data that describes an area to be drawn as a map is returned from the
database as XML. This project will develop an improved map rendering tool,
building upon an existing scheme that converts the XML data using XSL into
Scalable Vector Graphics (SVG - a W3C XML notation) that can be displayed
in a Web browser, plotted on paper or uploaded to a GPS map display.
The main improvements of this design will be better use of CSS, better
handling of clashing map features, better layout of text, and easier
addition of new map features (i.e. maintainability of the rendering tool).
- An improved device for capturing mapping data
-
-
- Description
- OpenStreetMap is a worldwide open-source mapping project. Geographic
features are recorded by the general public, and their locations are
determined using GPS. It is easy to collect a track of one's journey,
but less convenient to collect the metadata - street names, road numbers,
locations of post boxes, etc., that makes a map useful.
This project will design and implement improved mobile data capture
software, capable of running on a PDA [preferably my PalmOS-based units].
It will concentrate on the usability of the user interface, and on
streamlining the whole workflow of uploading the collected information
to the OpenStreetMap servers.
- Capturing e-Voting form information
-
-
- Description
- This project will attempt to improve upon the techniques that I have used to
extract users' voting intentions from optically-scanned voting forms.
The major tasks that have to be performed are the detection of the various
form features (the barcodes and user data entry boxes) and the correct
interpretation of the single transferrable vote ranking digits.
The main difficulties that will be encountered are: form rotation; form
inversion; voter marks interfering with the form's registration features;
ranking digits written in an unexpected typeface. You may re-design the
form to avoid these issues if you wish. I didn't use neural networks
for the digit recognition or FFT techniques to identify the barcode;
you might care to explore these.
We have lots of test data; the success of the project will be measured
by the accuracy of extracting data from real forms.
- Exam Paper Processing with Public Key Cryptography
-
-
- Description
- Use cryptographic signatures to make a paper-based system to
process exam papers, collecting signatures from checkers,
department heads, and external examiners.
At present, exam papers tour the faculty on paper, picking up
signatures from a large number of people. It is impossible to
see which version has actually been checked. It would be interesting
to see if a paper-less replacement is possible.
Tasks in the project would include
- Devise an organisational security policy for exam paper
preparation
- Identify cryptographic techniques which can be used to
enforce the security policy
- Devise a data structure which can hold digital signatures
and information about document version
- Design a system for paper-less exam preparation
- Implement the design (if time permits)
- References
-
- Relevant material for James Heather's module on
cryptography and security.
- Pfleeger and Pfleeger: Security in Computing
Cf. reading list for CSM27.
- Web Tutorial (Cryptography)
-
-
- Description
- The student will study a common cryptosystem and make a web site
describing it for the general public (incl. potential students
or people with a lay scientificinterest).
The site should include a detailed demo, showing every step
of the algorithm in visual way.
This will involve implementation of the cryptosystem,
probably using server-side executables, and web publishing.
The site should be as platform-independent as possible.
The student can choose any suitable tools available at the department.
The cryptosystem to be presented is RSA.
- References
-
- http://www.php.net/docs.php
(PHP is one possible tool for serverside scripting)
- Literature for the third year module on web technologies.
- Bruce Schneier: Practical Cryptography
- William Stallings: Cryptography and Network Security
- Bruce Schneier: Applied Cryptography
- Any one of the above Cryptography books should do; Please
contact me for further advice.
- Image data hiding library
-
-
- Background
-
Data hiding denotes a wide range of techniques used to hide
a piece of information in a secret file. Applications range
from copyright protection to secret communications.
- Description
-
The goal of this project is to make a library (Java class
or Matlab toolbox) implementing 1-2 of the most common
techniques for hiding data in images, providing an easy-to-use
API for future software applications.
All aspects of software development will be involved, including
agreement of specification, implementation, documentation, and
testing.
Recommended programming language: either Java or Matlab.
- References
-
- Ingemar Cox et al.:
Digital Watermarking and Steganography,
2nd edition. Academic Press 2007.
- Animating Boids in Java
-
-
- Description
- Boids are artificial creatures that move according to a few simple rules, dependent on the presence of other boids in their vicinity, the direction of their movement, and the need to avoid collisions. These simple local rules give rise to complex `flocking' behaviour arising from the interaction of large collections of boids. This project is concerned with computer modelling of boids and exploration of their interactive behaviour. The project will develop a system in Java and OpenGL to animate the motion and interaction of boids and explore their emergent behaviour.
- References
-
- Flocks, Herds, and Schools: A distributed behavioural model, Craig Reynolds, ACM SIGGRAPH 1987 (available from http://www.red3d.com/cwr/boids/ )
- Electronic voting
-
-
- Description
- Current advances in technology are generating interest in the possibility of electronic voting systems, and a number of schemes have been proposed. These schemes aim to combine the desiderata of maintaining secrecy of the vote, ensuring that all votes are counted, that ballots cannot be stuffed, and that the processing of the votes within the system can be audited while preserving anonymity of the voters. The recently proposed `Pret a Voter II' scheme makes use of cryptography to keep voter information secret, and uses a number of `tellers' to process, decrypt, and count up the votes. Tellers can be audited to ensure that they have correctly processed the votes and that cheating (i.e. ballot rigging) has not occurred. The system consists of a number of components, and the project aims to provide a prototype implementation of some elements of the `Pret a Voter II' system.
- References
-
- A Practical, Voter-verifiable Election Scheme, Chaum, D., Ryan, P,Y,A., Schneider, S, A. Technical
Report CS-TR-880, School of Computing Science, University of Newcastle
- Mobile Phone Dodgem
-
-
- Description
- This project is concerned with the programming of a simple game onto a mobile phone. The dodgem game is a two player strategy game where players race to get their pieces to the other side of the board while blocking their opponent. As well as programming the game and a machine player to provide an opponent for the human player, the challenge is to program the 4 * 4 game in a mobile phone. This is a challenge in itself because the set of API's is often non-standard, phone emulators are not always accurate with regards to the phone, debugging can be difficult, and the phone may impose resource constraints. Programming in java is expected, though other languages could be used if preferred.
This project can be run instead with the development of an alternative game or application for a mobile phone. The project requires the student to provide their own programmable mobile phone.
- References
-
- The game of Dodgem: http://www.gpj.connectfree.co.uk/games4.htm
- Strategy games in JCSP
-
-
- Description
- This project will explore how perfect knowledge zero-sum strategy games can be implemented using JCSP and java. Simple games typically have a small search space which can be completely explored, whereas for more complex games such as draughts this cannot be achieved in a reasonable time, and AI techniques for strategy games come into play. Using parallel algorithms to search different parts of the search tree concurrently would enable a higher proportion of the game tree to be explored, leading to better play. This project aims to use JCSP to implement a parallel game playing strategy. The project will investigate and compare variants on the strategy, and different skill levels (based on depth of searches) will be investigated. The project will be based around a moderately complex game such as dodgem or connect-4.
- References
-
- Artificial Intelligence, Rob Callan, Palgrave 2003
- CS266 Modelling and Simulation course notes
- Handel-C fast cryptography
-
-
- Description
- Encryption is now commonplace in computer systems and networks, but the encryption and decryption of data, particularly public-key encryption, is time consuming and can affect system performance when programmed using conventional methods. This project is concerned with applying new technology developed by Celoxica for significant improvement of encryption algorithms, by compiling the algorithms directly to hardware. This project will use the Handel-C language (a dialect of C targeted directly to hardware) and Celoxica's Development Kit, and the Celoxica RC300 high performance board will be available.
- References
-
- Handbook of applied cryptography, Menezes, van Oorschott, Vanstone, CRC Press, 1996
- http://www.agilityds.com/support/download_bsp.aspx
- Visual Art
-
-
- Description
-
Vision is not a mechanical recording of elements but the grasping of significant structural patterns. If this is true for the simple act of perceiving an object, it is all the more likely to hold also for the artistic approach to reality. The exalted kind of seeing that leads to the creation of great art appears as an outgrowth of more common activity of the eyes in everyday life, because it involves giving and finding colour, shape and meaning. This work will involve research into the relationships and elements between art and visual perception, such as balance, shape, form, space, light, colour etc in art paintings and drawings (including children drawings) and developing computational methods that are able to identify such elements and relationships.
A minimum of two projects will be offered under this topic. Through this project, you will gain in-depth knowledge in computer vision, image processing and machine learning. Either Java or Matlab can be used as the development tool (depending on personal preference).
- References
-
- Rudolf Arnheim, Art and Visual Perception; ISBN 0571 081541
- Rafael Gonzalez, Richard Woods, Digital Image Processing (International Edition), 2nd Edition, ISBN 0-13-094650-8, Prentice Hall, 2002
- Nick Efford, Digital Image Processing, A Practical Introduction using Java, Addison Wesley, ISBN 0201596237, May 2000
- Automatic Image Analysis for Retinal Images
-
-
- Description
-
Diabetes is one of the most prevalent diseases in the world. The analysis of retinal images is crucial for understanding the progression of diabetic retinopathy (DR) and will benefit an automatic DR screen programme in the future. The project involves two major processes: clinical sign feature extraction and classification. Research on how to represent, organise and extract key clinically meaningful visual features, and how to classify clinical cases based on those features are required. Experiments on various classification strategies and their combination could be performed. A final working system prototype should be developed.
A minimum of two projects will be offered under this topic. Through this project, you will gain in-depth knowledge in computer vision, image processing and machine learning. Either Java or Matlab can be used as the development tool (depending on personal preference).
- References
-
- G Shapiro, George C. Stockman, Computer Vision, Prentice Hall, ISBN 0-13-030796-3
- Rafael Gonzalez, Richard Woods, Digital Image Processing (International Edition), 2nd Edition, ISBN 0-13-094650-8, Prentice Hall, 2002
- Nick Efford, Digital Image Processing, A Practical Introduction using Java, Addison Wesley, ISBN 0201596237, May 2000
- Evolutionary Behaviour in JCSP
-
-
- Description
- JCSP is a java library that can be used to develop concurrent programs
based on process communication. The project is concerned with modelling
population growth and aims to provide simulations of large groups of
different species and exploring their interactive behaviour. The project
start by investigating a simulation of shark/fish behaviour in the sea
in the first semester. It will then choose a further case study in the
second semester which has more variables factors (see references for an example). Other suggestions for programs in JCSP welcome, especially if they are related to modelling and simulation.
- References
-
- http://www.cs.kent.ac.uk/projects/ofa/jcsp/
- http://www.sustainable-environment.org.uk/Earth/Commons.php
- Binary Watermarking
-
-
- Description
-
Hiding data in documents is becoming important and plays an important role in copyright. Hiding data in images has been a hot topic for a while and now lots of research attention is focused on hiding data in binary text. This problem is very difficult because there is limited opportunity in order to hide the data. This project will explore how a scheme referred to as Inter-word Space Modulation can be used in order to identify spaces between neighboring words and then with small changes to pixel values a watermark can be embedded. The challenge is whether the watermark remains robust following the printing and scanning of the document. This project aims to implement an algorithm in Matlab (or some other suitable programming language) so that we can conduct experiments on the robustness of the technique. The project requires a student that is willing to code difference algorithms and compare them in detail.
- References
-
- D. Zou and Y. Q. Shi, "Formatted Text Document Data Hiding Robust to Printing, Copying and Scanning," IEEE International Symposium on Circuits and Systems (ISCAS05), Kobe, Japan, May 2005.
- Digital Watermarking: Principles & Practice (The Morgan Kaufmann Series in Multimedia and Information Systems)
by Ingemar Cox (available in the library).
- Developing an application suitable for schools
-
-
- Description
- ICT is taught in schools and often the perception of Computing is that it is seen as a geeky subject. Pupils need to be able to see the potential in their chosen subject.
The aim of this project is to build an application resource for teachers, for example a web enabled database or a lego mindstorm application, which is designed in such a way that it can be disassembled during a workshop, the pupils could replace the interface or substitute the database with another backend. The project appears vague, and to some extent it is because part of the initial analysis phase will be to conduct a survey of a local network of school teachers in order to identify an appropriate application to build. It must link into the GCSE or A level curriculum. It will involve a combination of programming skills and will only be appropriate for a person with strong technical skills who has an interest in collaborating with schools and will be able to interact with our contacts.
- References
-
- http://www.aqa.org.uk/qual/gceasa/inf.html
- http://www.aqa.org.uk/qual/pdf/AQA-3522-W-SP-08.PDF
- Outreach content management system
-
-
- Description
- The schools liaison team in the department runs a series of workshops every year. This includes developing an application, hosting a workshop, getting feedback, putting details up on the website. This project aims to build a webbase infrastructure in order to be able to access our materials for download by teachers registered in our network of contacts, to be able to generate pdf posters to send out to schools based on the material and to be able to generate a newsletter. This would require an application which could take information from the workshop and the feedback received and produce a poster based on a set of inbuilt design templates. The project is wide in scope and needs to be more focused. The initial part of the project would involve defining the requirements of the system and interact with the schools liaison team to decide this. The student would have to drive the technologies used and they would have to be able to be hosted on the department's computer system. I am not so concerned about the security side of it at the moment.
- References
-
- http://www.cs4fn.org. We'd like it if the project could have this exciting look and feel for some part of it
- http://csi.gla.ac.uk. We'd like it if the project could have this more organised structure to support the workshop material.
- http://www.cs.surrey.ac.uk/outreach. At the moment the webpage needs updating.
- Application on a phone
-
-
- Description
- This project requires a student with strong programming skills. Programming on a phone is non-trivial because the APIs are non-standard and could mean learning Python or C++. It would be good if the application was portable across different phones. I have two suggestions for a project. One is to take photos on the phone and have an application on the phone that processes the image to extract the person and the merge them with other backgrounds. The other is from a colleage in Glasgow: how about taking a picture of a sudoku puzzle and then seeing the solution on the screen? Other suggestions welcome.
You would have to supply your own programmable phone.
- References
-
- http://www.myphonegames.co.uk
- Artificial Intelligence for Computer Games
-
-
- Description
- This project topic is concerned with the development of a computer game that is based on artificial intelligence principles. The project may conduct an investigation into the techniques and strategies for developing efficient AI engines for gaming applications. Applications of that could be building artificial life, building intelligent game characters, or other such chess, etc.
- References
-
- Matt Buckland, Programming Game AI by Example, Wordware Publishing, ISBN: 1556220782.
- John David Funge, Artificial Intelligence for Computer Games: An Introduction, A K Peters, ISBN: 1568812086.
- http://www.gameai.com/
- http://www.aiwisdom.com/
- http://www.dmoz.org/Computers/Artificial_Intelligence/Games/
- Text Mining for Topic Identification
-
-
- Description
- This project topic is concerned with the development of a system that automatically identifies the main topic/subject of given textual stream. The project may conduct an investigation into the techniques and methods for building such systems. Applications of that could be building web-based search engines, identifying to topic of a new email, etc.
- References
-
- Automatic Topic Identification of Textual Data
(http://www.cse.uta.edu/Research/Publications/Downloads/CSE-2003-25.pdf)
- TopCat: Data Mining for Topic Identification in a Text Corpus (http://csdl.computer.org/dl/trans/tk/2004/08/k0949.pdf)
- http://intelligent-web.org/wsm/
- http://www.sims.berkeley.edu/hearst/text-mining.html
- Image Analysis and Retrieval
-
-
- Description
- This project topic is concerned with the development of a system that retrieves images based on a given query. The system automatically analyses the image collection and stores its main features within a numerical vector. The project may conduct an investigation into the techniques and methods for building such systems. Applications of that could be building web-based image retrieval engines, creating personal photo albums, etc.
- References
-
- http://www-db.stanford.edu/IMAGE/
- http://ausweb.scu.edu.au/aw99/papers/lu/paper.html
- Distributed and E-Commerce Applications
-
-
- Description
- This project topic is concerned with the development of a distributed system or an eCommerce application that complies to current state of the art technology and architectures (e.g. J2EE and .NET). The project may conduct an investigation into the techniques and architectures for building such systems. Applications of that could be building Web Service based systems, information share, data management, etc.
- References
-
- Glen Daniels et al, Building Web Services with Java: Making Sense of XML, Soap, WSDL and UDDI, Que, ISBN: 0672326418.
- Darrel Ince, Developing Distributed and E-Commerce Applications, Addison Wesley, ISBN: 0321154223.
- http://java.sun.com/webservices/index.jsp
- http://msdn.microsoft.com/webservices/
- An introductory lecture is scheduled in week 1 of the Autumn
Semester to discuss with you some of the issues in planning and
executing a project.
- You should make regular appointments with your supervisor on a
weekly or fortnightly basis and turn up to discuss the progress
of your project. It is important to get started on your project
early in the first semester and not to waste time, even though
the deadline for the completed report seems a long way off. You
will also have relatively little coursework from other modules
at this stage, so more time is available for the Project.
- The Christmas holidays can also be a good opportunity to do some
concentrated work on your Project with the Autumn Semester exams
behind you and little other work required. You should not leave
anything major to be done over the Easter break, since if you do
run into problems at that time it may be difficult to contact
your supervisor and discuss it with them. Ideally, you should
already be well into the details of writing your report before
the Easter break.
- Your are expected to undertake approximately 450 hours study,
including the preparation of the report. The translates to about
20 hours per week over a period of approximately 23 weeks which
are available for your Project, once you have excluded the
examination periods. The amount of time required should be taken
seriously, and if you do not work hard enough in the first
semester you can be sure to run into time pressures later.
- It is a good idea to write up work that you do as you go along.
Otherwise, when you get to the end of the project, you may have
forgotten the details of some of your earlier work. It is also a
useful way to organise the work that you have done and can show
up gaps that need to be filled in before your move on.
The Professional Project is worth 45 credits, that is, the equivalent of three
15-credit final-year options.
See Deliverable Dates for the breakdown of the assessment of the Project.
These dates will be confirmed at the start of the term.
- Memorandum of Agreement
- Week 5 Monday 17:00, 6th October, 2008. This should be handed in directly to the undergraduate office but will require the signature of your supervisor beforehand.
See What to submit? section for details of the memorandum content.
- Interim Discussion (10%)
- Week 1/2 Spring Semester, (19-30th January, 2009). This will be a 15-20 minute discussion with you, your supervisor and another academic member of staff to discuss your progress to date. You will need to arrange the specific date with your supervisor.
Refer to the Marking Criteria section for details of the presentation mark scheme.
- Draft Project Report
- Week 8 Spring Semester, Friday 17:00 13th March, 2009. This is an opportunity for you to submit a copy of the current state of your written report so that you can receive feedback from your supervisor. Note this is an essential deliverable but it is not assessed. It will enable you to receive a preliminary assessment of whether you are meeting your project goals.
Refer to the What to submit? section for details.
- Project Report (70%)
- Week 12 Spring Semester, Monday 17:00, 4th May, 2009 . The report should be handed into the undergraduate office.
Refer to the What to submit? section for details of the submission procedure and report content.
See Marking Criteria for details of the report mark scheme.
- Viva (20%)
- Week 13-14 Spring Semester (during exam period, 11-22 May, 2009). This will be a meeting with you, your supervisor and another academic member of staff to discuss the results of your project.
The viva will normally involve you giving a 15-20 minute description of the software that you have created or your research findings and to explaining what you have achieved and what you have learnt from the experience. A demonstration of your software should also be given where appropriate. A significant part of the viva will be answering questions about your work. This will give you the opportunity to show your technical competence - an essential aspect of the assessment criteria.
See Marking Criteria for details of the viva mark scheme.
You will need to arrange the specific date with your supervisor and it will be your responsibility to organise this with your supervisor.
No marking penalty will apply to a project submitted by a student within
the limits of an agreed extension. If a student is not granted an
extension, and hands in the project late, a marking penalty will be
applied (new University penalty scheme to be confirmed).
Extensions for projects will normally only be given for medical reasons. An extension can only be given by your project supervisor, with the agreement of the CS300 Projects Co-ordinator and your tutor. This will be recorded by email.
Please submit all deliverables of your Final Year Project to the Undergraduate Office. Do not hand in deliverables to your supervisor; the Memoranda of Agreement, Draft Reports and Final Reports need to be recorded centrally. At the beginning of the semester you will be allocated a project reference number which you should include on the cover page of all your deliverables.
This is a one page A4 document containing the agreed project title, the names and signatures of the student and supervising tutor, and should be handed in to the Undergraduate Office. This document should record the formal agreement between you and your supervisor(s) as to the overall title, objectives and outcome of your project.
All the resources that may be required must be identified at this stage; it if your responsibility to ensure that these will indeed be available to you. If you intend to work with any outside organisations or individuals, they should be identified in the memorandum and the nature of their involvement made clear. It is strongly recommended that a written undertaking be obtained from any such organisation that they accept the Department's Guidelines for Collaborative Projects (see document for download on the web-site).
Download the Template Memorandum of Agreement document for use as a basis of your memorandum.
You should submit a copy of the current state of your written report and a copy of your planned table of contents. It does NOT have to be professionally bound and will not form part of the formal assessment of the module. There is an expectation that you submit a report because it is important for you to receive feedback on your progress. You should hand the report into the undergraduate office by Week 8 Spring Semester, Friday 17:00 13th March, 2009. You can expect to receive feedback from your supervisor before Easter (end of week 10).
- Before submitting your report (i.e. Week 12 Spring Semester, Monday 17:00, 4th May, 2009 ) you should pick up a CS300 questionnaire from the undergraduate office. You should fill in this questionnaire. The purpose of the questionnaire is to provide detailed feedback for the module.
- Please use a front cover page that can be found on the CS300 web-site. Your project number is the one allocated to you at the beginning of the Autumn semester. If you have forgotten what it is then it can be found next to the list of students/supervisors list on the CS300 web-site.
- The final report should be submitted by Week 12 Spring Semester, Monday 17:00, 4th May, 2009 .
- Submit two professionally bound copies of your report.
- Submit one electronic copy of the report on a CD-Rom. Copies of any software developed should also be recorded on the CD-Rom (see What should the CD-Rom contain? for more details).
- Hand in your filled questionnaire, the reports and the CD-ROM to the Undergraduate Office in person so that your submission can be recorded appropriately.
- The UniS print shops provides an appropriate copying service using a 'soft bound, fast track' (glue binding method) but expect a 24 hour service-time. There will be lots of students trying to print during your submisison week. You should expect to pay around £3 for binding and an extra 50 pence for a cover sheet (per report copy).
- It should cover the objectives, methods and achievements of the project.
It should conclude with a critical appraisal of your own work, and
reflections of what you have learnt in the process.
- See the Marking Criteria for details of the assessment criteria
for the report. In summary, marks will be awarded to reflect the technical
presentation of your work - that is the English structure, grammar, layout
and so on - and achievements and argumentation presented in the report.
- You should include code in your report in order to add
clarity to the discussion in the text, or you need to show how
different versions were produced. It will be different for everyone. For
example, it would be sensible to show how a difficult algorithm
was coded up but maybe not all the GUI code needs to go in it. You are NOT required to print out your code and include it all in an appendix. You MUST include all your code on the CD-Rom.
- You do NOT need to include a copy of your memorandum of agreement as an appendix. You do need to discuss in the report how you met your objectives and critically evaluate your achievements with respect to the aims noted in the memorandum.
The CD should include:
- Source files for programs developed,
- Any Makefiles,
- Instructions for building any programs from the included source code or executable files. If your program was not built on the
departmental computer system then you must say how it was built on
whatever system you used. If you have used your own computer, for example a PC, then you must say how to install the files needed to run your project.
- Results files,
- A machine readable version of your final report,
- Other files specific to your project.
You must make sure that the CD-Rom contains enough information so that your
examiners have the information needed to run any programs which you have produced as part of your project.
Please label your CD with your name, URN and Project Reference number
The report - excluding the annex should normally be between 10,000 and 20,000 words, or 30-50 pages of A4. There is no strict rule, it all depends on the type of project.
The report can be single or double sided.
Prepare the text of the report with a word processor, using a font size
and line spacing which will make it easily readable. For example, 11pt and single spacing is fine, also 11pt and 1.5 spacing is acceptable. Nowadays with word processors there is little need to make the text size 12pt - this is a bit big.
You need to leave a margin of at least 2cm on the left hand edge of the paper, to allow for binding.
There is no strict rule on whether you should use LaTeX or Word. You are encouraged to use a word processing software package that makes the report look professionally prepared.
There is a lot of software currently available that supports your project write up. You will find it helpful to save each section as a separate file, as files can become unmanageably large.
Make sure you learn how to cross-reference material as well as write Greek letter, subscripts and equations.
You should look up the document on 'Guidance on Citations and Referencing' for information on how to reference material used in the Project.
You need to attend to the details in the report.
- Make sure you have broken the material down into chapters, sections.
- Make sure you have a caption below each diagram, graph or figure and table to say what they are.
- Number sections, figures, tables and important equations so that you can cross-reference them.
- Make sure that the material in each section fits together coherently and that the section titles etc are an accurate description of the content.
- Make sure the spelling is correct.
- Make sure that you proof read the report.
- Make sure references are accurate, dates are correct, and so on.
- Give your report to friends and colleagues for comment and constructive criticism.
The marking criteria for each assessed part will be available on Ulearn at the start of the Autumn semester.
In the first instance a student should discuss any concerns about their project to their supervisor. If, after raising a query with their supervisor, the student still has concerns then they should raise it with the CS300 Project Co-ordinator.
CS300 PROJECT GUIDELINES 2008-09
This document was generated using the
LaTeX2HTML translator Version 2K.1beta (1.57)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 0 -link 0 -no_subdir -no_navigation -mkdir -dir /vol/www/computing/courses/cs300/2008-09/tocBook2008 booklet.tex
The translation was initiated by Hongying Tang on 2008-09-01
Hongying Tang
2008-09-01