Skip to main page content - your browser does not fully support our CSS, or is text-only.

Opportunities for Vacation Work

Calling 3rd year honours students (doing Computing Science or Mathematics as a major degree component). Have you thought about what you'll do in the summer vacation between 3rd and 4th year? How about trying a taste of the researcher's life at the department?

To do this you need two things:

We can help you sort out both of these.

Typically projects last between 6-12 weeks. You will be employed to carry out research, under the direction of a member of staff. For CS students this is not meant to be part of your final year project, although you may be working on a related topic. Vacation studentships are most suitable for students likely to graduate with a first, or upper second, class honours degree.

Projects Available

Research can mean a lot of different things; to get you started some staff have suggested some suitable projects below. They may have other projects along similar lines. Contact the staff member directly to discuss project ideas further. Other staff may be willing to supervise projects. See their web pages for research interests. You can also suggest your own project and match up your interests with those of a staff member.

Dr Andrea Bracciali

Crowd Dynamics.
This project is about the use of formal methods to model the emergent behaviour of a crowd of independent individuals moving and interacting in a physical environment, an emergency egress say. The goal of this modelling is to develop a virtual environment where different hypotheses about crowd behaviour can be tested, such as how an emergency egress is affected by a hurt evacuee obstructing a passage or by the choice of the width of the doors in the building or by the evacuation strategy adopted. In general, these studies are intended to improve our ability to deal with risky situations (see for instance These models rely on formal languages that are used to describe/ program individuals' behaviour, and on mathematical machinery that defines how the crowd behaviour evolves over time. Such models are supported by software tools that allow crowd behaviour to be simulated and some forms of automated reasoning to be carried out.

An introductory research project could regard various aspects of crowd modelling, both at the practice and theory level. Examples are: the development of a model for a specific case-study and the subsequent testing of hypotheses of interest, the analysis of the expressiveness of a chosen modelling language and the comparison of different languages when modelling a given case-study, the extension of a given language with extra features that appear desirable for modelling purposes.

Requirements for successfully completing this research experience include some formal reasoning and a keen curiosity about experimenting with new problem definitions. Initially, some reading from scientific literature may be needed. If appropriate, the obtained results, or an extension of them, could be submitted for publication. Feel free to contact me for an informal chat about a possible interest in such a project (please note that deadlines for grant applications - if needed - are close).

Dr David Cairns

The focus of my research is on Computational Intelligence and in particular Evolutionary Computation (EC). I am interested in the application of EC methods to biological systems - for example using EC to evolve models of collagen that fit current data. I also have a more general interest in EC methods and would be interested in supervising a project involving further development of either Genetic Algorithms or Particle Swarm Optimisation.

Dr Jozsef Farkas

Mathematical models and simulations of age and size-structured populations.
Structured population dynamical models attracted a vast amount of interest of both applied mathematicians and life scientists in the last 30 years. The project will start with the study of some basic properties of structured population dynamical models. Then, using a computer program (already developed), we will demonstrate and underpin the analytical results available in the literature in case of several concrete examples. Both single species and multispecies models, for example predator-prey systems may be considered.

Wolbachia infection dynamics in arthropod species
Wolbachia is a maternally transmitted reproductive parasite. It interferes with the sexual reproductive mechanisms of its host in an intriguing fashion. Furthermore, recent research suggests that it can be used as a biological control tool to eliminate mosquito born diseases such as Dengue fever, malaria, or West Nile virus. The student will get familiar with the complex biological mechanisms involved (such as cytoplasmic incompatibility) and to see how these can be translated into a mathematical model, for example using a system of age-structured partial differential equations.

Dr Marwan Fayed

Details to follow...

Prof Bruce Graham

Modelling and computer simulation of the nervous system. Projects available in either:

  1. simulating the operation of neurons using the computer simulation package NEURON, or
  2. visualizing neurons using Java3D or VRML

Dr Andrew Hoyle

Details to follow...

Prof Amir Hussain

Details to follow...

Prof Adam Kleczkowski

1. Controlling disease spread on regular and random networks
The last two decades have seen several large-scale epidemics of international importance, including human, animal and plant epidemics, all of which appear to spread through a combination of short- and long-range contacts. Such epidemics are notoriously difficult to control. We have recently developed a model in which a mixture of preventive and proactive control measures is applied to stop disease spread with minimal costs. In the past, we studied models with different network topologies, including small-world and hierarchical networks and off-lattice continuous systems. The work led to scientific publications and we are hoping to extend this tradition to current projects. We will adapt and expand existing simulation models to explore different disease spread and control strategies, including strategies that attempt to control epidemics locally and globally. The results are applicable not only to control of real diseases (such as avian flu, foot-and-mouth or sudden-oak-death), but also to the containment of computer viruses.

2. Disease spread on networks with a dynamical structure
Plant, animal and human diseases often spread on complicated networks involving many levels in a hierarchy of interactions. Among different model topologies, small-world and scale-free networks have been extensively studied both with a view to predicting disease dynamics and designing control strategies. In a small-world model, each individual node contacts not only its nearest-neighbours, but can also spread disease through long-range interactions (corresponding to, for example, air travel). In typical models those long-range interactions are fixed for the duration of the epidemic. However, real networks are much more dynamical: long-range links are constantly formed and destroyed. The project will look at the role of dynamical nature of link creation and annihilation in predicting the critical value for epidemic spread. We will also look at scale-free networks and in particular on the interaction between the rate at which nodes are added in its construction and the rate at which the infection spreads. Will the disease die out before the number of links becomes sufficient for it to spread indefinitely? The results are applicable to models of real diseases (such as avian flu, foot-and-mouth or sudden-oak-death) and to spread of computer viruses.

Dr Mario Kolberg and Prof Evan Magill

1. Feature Interaction in Communications Systems
The software in communication systems is large and complex. Often sections are developed by different teams, in different countries - the result is incompatibility. Research here at Stirling has addressed this in numerous ways, and now we want to offer the tools we have developed to the research community through a web site.

This summer work project is more than simple web site design, it will require an understanding of the research area, and an ability to generate data to populate the databases behind the web site pages. In practice this will require carrying our experiments with the existing tools. Also the tools may require some alterations. Candidates with a preference and an interest in research will be considered.

2. How about having appropriate pictures on the wall - according to your expected visitors - by a push of a button? Or do you prefer the weather forecast burned on your morning toast?
Internet Personal Appliances (IPA) attract an increasing interest and are widely seen as the next major application of the internet. Common household appliances can become IPA by connecting them to the Internet. Common, widely referenced examples of internet appliances include the internet alarm clock which takes into account road conditions or expected arrival times of air planes when setting the alarm time, or the internet enabled fridge which keeps an inventory of groceries and issues orders to suppliers. However, many different examples of IPA can be imagined, e.g. burglar alarm cameras, toasters, electronic picture frames, air-conditioning devices, or video recorders.

All these devices are controlled by software which is offered as services to customers. For instance a burglar alarm service may control the burglar alarm camera and the video recorder. If a movement in the house is detected by the camera, the camera picture is recorded on the VCR. However, from other areas, such as telephony, it is known that the interworking of services can lead to a phenomenon called feature interactions. Services (or features) which work perfectly in isolation do not exhibit the desired behaviour if other services are active at the same time. For instance imagine the burglar service example in combination with a service which records dad's favourite TV show. It is hardly desirable that the recording from the camera is interrupted by the TV show.

While it is usually very straightforward to 'fix' any known example of such interactions, the difficult part is to detect such interactions in the first place. The project will be concerned with finding examples of services for IPAs and interactions between IPAs.

Dr Jingpeng Li

Details to follow...

Dr Savi Maharaj

I am interested in using computing techniques such as agent-based simulation, gamification, virtual reality and virtual worlds to study social and economic phenomena. Specific areas I study include epidemic spread and how this is affected by changes in human behaviour; farmers' responses to environmental incentive schemes; and the use of computer games for public outreach, education, and scientific research. Technologies that I use (or would like to use) include NetLogo (agent-based simulation software), R (statistical and simulation software), Java Swing, Unity 3D (game development platform), Oculus Rift (virtual reality), Open Simulator (virtual worlds), and game development for tablets and smartphones. If you are interested in any of these research areas or technologies, you are very welcome to contact me for an informal chat about developing a project proposal.

Prof Rachel Norman

I study biological systems, particularly the spread of infectious diseases, using mathematics (differential equations typically). There is scope for a project with either a Maths or a CS student (see Prof Shankland's entry, below).

Dr Gabriela Ochoa

Adaptive Search Algorithms and Hyper-heuristics
Successful and robust search heuristics are hybrid and adaptive. HyFlex, is a friendly Java framework proposed to support research in this area. It was successfully used to run an international research competition. When using HyFlex, due to its modular design, you can easily solve complex optimisation problems in routing and scheduling, without knowing much details. The effort is focused on designing clever adaptive algorithms inspired by evolutionary computing and machine learning. This project seeks to implement new variants of adaptive algorithms that can compete with the winners. You'll need to enjoy Java programming and challenges.

Heuristic Search Algorithms for the Eternity II Puzzle
The Eternity II puzzle is an edge-matching puzzle which involves placing 256 square puzzle pieces into a 16 by 16 grid, constrained by the requirement to match adjacent edges. It has been designed to be difficult to solve by brute-force computer search. Good approximations can, however, be found using heuristic search algorithms. This project seeks to reproduce and, if possible, even improve the state-of-the art in computational approaches to this problem using adaptive heuristic search algorithms. Initial instances and source code can be provided. You'll need to enjoy programming and puzzle games.

Evolving Lindenmayer Systems (L-Systems)
L-Systems are a mathematical formalism initially proposed to model biological development. More recently, they have found several applications in computer graphics, such as the generation of fractals and realistic modelling of plants. L-systems have been successfully combined with evolutionary algorithms to generate new and interesting shapes (as shown in this article). This project seeks to explore new L-system representations or fitness functions to generate even more exciting and novel shapes. You'll need to enjoy programming, computer graphics and visualisation.

More information and links can be found at:

Prof Carron Shankland

I'm interested in using computational ideas to explain and explore the behaviour of complex interacting networks of components (such as those often found in biological systems). For example:

  1. We use process algebra to describe biological systems: disease spread, the immune system, metastasis in cancer, communication and collaboration between cells, or bacteria. Not only does this help us think about biology, it also feeds back into development of the methods and their application in the computing arena. Currently we often use PEPA, the Performance Evaluation Process Algebra and Bio-PEPA.
  2. NetLogo is a really nice way to do the same thing, with great visualisation. A good project would be to translate between a formal language such as PEPA and NetLogo.

Prof Leslie Smith

I have an ongoing interest in signals recorded by electrodes from spiking neurons. As part of the work in this area, I built a system (in MATLAB) which generates signals and noise (see Unfortunately this simulation runs from a command line. What I need is a user interface built round it to allow easier specification of the signals and noise.

I have a laboratory set up suitable for recording sounds. In addition, I have an electronic piano. The equipment there should permit simultaneous recording of sounds and their MIDI representation. I have done some initial work looking at using clustering of the onsets of these sounds with a view to classification: what I need is (i) a much fuller set of data to be recorded, (ii) experiments with reducing the dimensionality of this data, whilst looking at how well it can be clustered using existing techniques, in MATLAB. This could be an interesting project for someone interested in music or in data analysis.

Dr Jerry Swan

I'm happy to supervise projects in theoretical computer science; software engineering; algebra and symbolic computation; numerical analysis; intelligent finance; ubiquitous computing; computer vision; natural language processing, generative music and computer games\multimedia. For more details, see my publications at

Kevin Swingler

My projects are mostly concerned with applying data mining techniques to industrial or commercial problems. I usually have two or three projects underway, some with software companies who develop data mining software, some with companies who want to use the technology for marketing or risk assessment, and the occasional 'special' project that doesn't fit anywhere else! I could provide a student with an interesting project with a real company, so they should be able to see their work being put to commercial use. I'd expect the funding to come from the company, too, so we wouldn't need a grant.

Prof Ken Turner

1) The CRESS project ( research/cress.html) allows communications services to be represented graphically and analysed rigorously. Cress has been applied in a number of applications such as conventional telephony (e.g. how you wish calls to be handled), Internet telephony (similar, but using Internet standards) and web services (Business-to-Business communication for applications). More work is needed to adapt it for new kinds of domains such as call policies or home network services. Other extensions could include generating test cases. The project would suit students with an interest in communications, graphical user interfaces, and rigorous methods.

2) The MATCH project ( is a collaboration among four Universities and eleven external partners, led by Stirling. The focus is on technology for delivery of social and health care in the home. Stirling is developing a range of care services using standards developed by the Open Services Gateway Initiative ( The aim would be to build a number of interesting and useful services using a variety of simple sensors (e.g. door, window, movement, temperature). For example, a night wandering service could alert an elderly user that it was night-time and therefore should return to bed. A TV service could record the user's favourite programmes using a computer-operated infrared remote control. A family album service could allow the user to view photographs with a touch screen, with supporting audio commentary and links to key web pages. The project would suit students with an interest in care delivery, home networks, and service-oriented computing.

3) The Adit project ( is working on ways of helping people to making decisions, particularly in areas such as health advice. New work is needed on an improved decision tree viewer and on a graphical way of designing decision trees. The tree viewer is currently implemented in Microsoft J++, and needs to be re-implemented for Sun's JDK. Decision trees are defined by editing textual documents, and need a graphical design tool. Ideally, there would also be a link to existing (open source) decision tree tools.

Funding Opportunities

Note: Information for 2016 for some of these schemes has not yet been released. The 2015 information should give you some guidance about what's required.

Four possible sources of funding are:


Last update: 25th November 2015