Department of Computer Science
Summer Internship Programme
UCL Logo

Summer Internships

Current Projects

Previous Projects


Internship Requirements

Industy Projects

Summer 2012

Projects for summer 2012 will be advertised here. Please revisit to view any recently added projects.

See Previous Projects to get an idea of past projects.

Understanding Instability in Financial Markets - up to three students required

The Flash Crash of May 6th 2010 was the biggest one-day point decline in the history of the Dow Jones Industrial Average (DJIA). More than 20,000 trades were executed at prices more than 60% away from their values just prior to the crash, with some executing for prices as low as 1 penny or as high as $100,000. Prices then recovered to almost their pre-crash levels in an equally short period of time. This crash demonstrates the extreme instability of the financial markets, yet no clear explanation has yet been provided for the cause of this instability. The Bank of England observed that “The Flash Crash left market participants, regulators and academics agog. … To a first approximation, we remain unsure quite what caused the Flash Crash or whether it could recur”.

One way to understand the financial markets is to consider them as distributed systems and to observe the pathological behaviour of the system from the viewpoint of a systems engineer. But we need to do more than that - we need to be able to describe such behaviour formally. A process calculus would be perfect, but - and it's a big "but" - the financial systems are discontinuous and nonholonomic (i.e. decisions are based not just on the current market context but also on a memory of how the market reached the current context).

There are three parts to this research and there's enough work for up to three very bright students. The work can be split flexibly.

- The first part is a deep survey of all existing techniques to see if any mechanism already exists that could be used to describe the observed behaviour.

- The second part is the creation of a new process calculus that is capable of capturing the observed behaviour. Some work has already been done to develop a new calculus, so this will not be starting from scratch.

- The third part is to build a formal description of the distributed behaviour of the financial markets - this could either be done using an existing method (links to part one above) or using the new method that is being developed (links to part two above) or using an executable specification language such as Miranda.

Students interested in this project should be high-flyers who are looking for a challenge - enthusiastic "achievers" who are interested in distributed systems, formal reasoning and specifications, and possibly Miranda programming. An interest in the financial markets is useful, but not essential.

Start Date: ASAP after the exam period

Duration: 10 weeks

Contact: Chris Clack

Funding: BEAMS or Other funds

Chords in Context

Computer music systems for interactive popular music performance must undertake a number of tasks including tracking their position within the score. This is difficult for popular music because of the skeletal nature of the scores (e.g. a list of chords divided into sections like verse or chorus) and the improvisatory nature of the music generated by humans and machines. Chord recognition is thus a key means of locating a performer's position. Although chord-recognition systems exist, they do not achieve 100% accuracy, partly because they are aimed at recognising all chords rather than just that could occur in a given piece of music (or at a given time in that music). This project aims to improve chord recognition by using a number of probabilistic contexts to reduce the space of possible chords to be recognised. These contexts will be derived from the score and the current location within it (once entrainment is established).

The expected project outcomes will be algorithms for chord tracking that enhance existing solutions to the problem by considering the context of recognition, software to implement these, and conference papers describing the results.

Students interested in this project should have some knowledge of music (a high level of formal music theory is not required but students should be conversant with the notion of chord progressions, relative relationships (e.g. minor/major) etc). Some familiarity (or willingness to become familiar) with basic digital signal processing may also be an advantage.

Start Date: ASAP after the exam period (project must be complete by 12th August although ideally before the Olympic Games because of travel disruption)

Duration: 8-10 weeks

Contact: Nicolas Gold

Funding: BEAMS or CS Dept Bursary

Managing Max/MSP and Pure Data Patches

Max/MSP and Pure Data are graphical data-flow programming languages used for computer and interactive music applications, installation and interactive digital art. Software tool support for managing the libraries of patches created by composers and artists in these languages is good at the level of the individual patch, but poor at the level of patch libraries. Proof of concept algorithms for finding similarities between patch elements have been developed (using clone detection) and shown to work. However, there is a need for more advanced algorithms and tools that can provide better content-based analysis of patch libraries and real-time support for artists. This project will build on existing graphical language clone detection algorithms to develop new algorithms that can account for the specific characteristics of Max/MSP (and potentially Pure Data). These will be incorporated into software tools to support programmers in these languages.

The expected project outcomes will be algorithms for clone detection and management in Max/MSP and Pure Data, software to implement these, and conference papers describing the results.

Students interested in this project do not need any musical knowledge but should be reasonably strong in programming as the project will involve the creation of parsers for analysing language representations.

Start Date: ASAP after the exam period (project must be complete by 12th August although ideally before the Olympic Games because of travel disruption)

Duration: 8-10 weeks

Contact: Nicolas Gold

Funding: BEAMS or CS Dept Bursary

Scores into Systems

Scores for popular music are usually sectionalised (into blocks like "verse", "chorus" etc) and do not fully represent the musical surface to be performed - musicians improvise around chord sequences and the sections can be reordered before or during performance. The nature of this kind of music places unique demands on the design of computer representations of it. Recent research has developed ways of representing popular music scores using UML2 state-machines, offering the opportunity to generate the score management components of an interactive music system automatically. This project will extend the current algorithm to handle complex scores, extend an existing implementation of basic score translation, develop user-level tools to allow the specification and arrangement of scores, and implement their automated translation into state-machines.

The expected project outcomes will be new algorithms for score transformation, software to allow users to code/arrange sectionalised music and translate this to state machines, and conference papers reporting empirical studies carried out using the software.

Students taking this project would benefit from some knowledge of music (a deep theoretical knowledge of music is not required) and some experience with UML (but again, this is not strictly required).

Start Date: ASAP after the exam period (project must be complete by 12th August although ideally before the Olympic Games because of travel disruption)

Duration: 8-10 weeks

Contact: Nicolas Gold

Funding: BEAMS or CS Dept Bursary

Driving Simulator

The idea is to develop a driving simulator using Unity that is capable to interface with existing ITS services/applications developed in the SafeTRIP project. The driving simulator hardware along with an eye-tracker has already been setup in the usability lab. The SafeTRIP OBU will be emulated using a VM - the simulator and other nomadic devices (tablet, phone) will interact with the OBU to access the services/applications.

Once the simulator is implemented, experiments studying the impact of different interactions, UI design, information demands etc will need to be conducted using the simulator. Depending on the capability and interest of the student, there is also scope to adapt the simulator to work in the CAVE.

In order to achieve this goal, excellent programming skills along with familiarity with C#, .NET, 3D graphics and web services would be required. Applicants would ideally be expecting a first or a high 2:1 to be considered.

Start date: ASAP

Duration: 10-12 weeks

Contact: Ashweeni Beeharee

Funding: BEAMS or CS Dept Bursary

White space spectrum availability in Central London

In the year ahead, large portions of the VHF and UHF television bands are about to be freed up for the use of data networks in different gebgraphical locations in the UK. With a software-defined radio you can measure exactly how much energy is present at a particular radio frequency. This study will fuse GPS location data from a smartphone together with signal strength readings from the software defined radio to create a "heatmap" of whitespace spectrum usage in various interesting locations around the city, such as the West End (think wireless microphones for stage performances, which use the same spectrum), UCL, and/or your local neighborhood.

For more information:

Further project information

Contact: Kyle Jamieson

Funding: BEAMS or CS Dept Bursary

University College London - Gower Street - London - WC1E 6BT - Telephone: +44 (0)20 7679 2000 - Copyright © 1999-2005 UCL

Search by Google