2020 list

From Computer Laboratory Group Design Projects
Revision as of 10:22, 25 September 2020 by afb21 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Complete list of design briefs to be advertised to students for 2020 group design projects.

(text transcluded from individual project descriptions - click on project title to edit original page)


Accessibility Assessor

Contact: Matthew Johnson, Frontier <mjohnson@frontier.co.uk>

Today, with smart phones being such powerful computational devices equipped with cameras the opportunity to capture data from the world around us has greatly increased. This project aims to produce a piece of software which can be used on a smartphone to capture the 3d shape of an interior environment in order to produce a simplified computer model. This model may then be processed, perhaps by another device in order to produce a node graphed plan of the floorspace. This plan could provide useful views of the space in terms of accessibility and aiding planning usage of existing space.

Activity Analysis from Smart Meter Data

Client: José Alcalá, Informetis <jose.alcala@informetis.com>

A rapidly aging population means assisted living is fast becoming a major societal challenge. To support “Carers” assisting “Carees”, local technology company Informetis provides smart sensors installed in the fuse-box that determine if household appliances are ON/OFF. As routines are typically closely related to appliance use, this proxies for inhabitants' wellness. Your task is to create an app for carers to support householders when they struggle to perform daily routines. You may choose focus on detection of activities from the raw data, or the interaction design challenges of choosing what should be communicated to the carer and when.

Automatic Assessment of R Code

Contact: Raoul-Gabriel Urma, CambridgeSpark <raoul@cambridgespark.com>

Cambridge Spark’s EDUKATE.AI platform gives students automated feedback on Python and Java code based on functionality and code quality. Students write code and submit it for processing by a set of tests running in Docker containers, resulting in errors, failures and other data subsequently used to provide feedback to the student about what failed and why, plus metrics of code quality. We wish you to add support for R to the platform, potentially to the extent of providing an SDK to help for exercise developers to write exercises and associated tests more quickly.

Automating Crop Canopy Data Collection for Crop Management

Contact: Michael Gifford, NIAB <Michael.Gifford@niab.com>


Models to optimise potato crop production forecast yield and schedule irrigation use manually collected data on leaf canopy coverage to quantify light interception and evapotranspiration -- time-consuming, expensive and often inaccurate. Such data can be collected by satellite but optical sensing is impeded by cloud cover in Northern Europe. Synthetic Aperture Radar (SAR) imagery from the Copernicus Programme is collected through clouds and during the night but there is no available service for estimating canopy cover from SAR imagery. Your challenge is to develop a machine learning system to estimate canopy cover from SAR imagery and integrate with existing models.

Azure Sphere for Citizen Science

Contact: James Scott, Microsoft Research <jws@microsoft.com>

This project will use the Microsoft Azure Sphere IoT platform to fulfill a citizen science goal. The team is free to select the goal so long as it uses at least one environmental sensor (temperature, pressure, etc) and an output (e.g. LED), and at least 5 devices are deployed for a week or more, with the Azure IoT Central service used to collate data for visualisation. The design of the system should be documented openly (e.g. on github) to enable reuse. Hardware (Azure Sphere development kits and sensors) will be provided.

Collecting Farm-sourced Data on Pest and Disease Pressure

Contact: Michael Gifford, NIAB <Michael.Gifford@niab.com>

Farmers routinely provide data on crop disease and pests but not in real-time, as they are discovered in the field, due to problems of ease-of-use and concerns around how data will be used after being reported. Accurate, timely reporting could significantly reduce crop losses, use of crop protection chemicals, and produce better understanding of how crop diseases and pests develop and spread, geographically and temporally. Your challenge is to develop a mobile reporting app with an intuitive and rapid user interface, based on an understanding of the incentives and barriers farmers face in reporting issues.

Ecosystem Game

Client: Mike Harfoot, UNEP-WCMC <Mike.Harfoot@unep-wcmc.org>

UNEP-WCMC have been pioneering the development of an agent based model of whole ecosystems, the Madingley model. This process based formulation provides an engine that can be used in many ways. One of the key ways we would like to use the model is to engage with the public and/or decision makers. Your challenge is to consider options for improving the way the model can be used, either through a game interface or a visualisation interface for the model engine. The principal aim is to make the model more engaging and exciting.

Electronically Cataloguing Butterflies

Contact: Matthew Hayes, UMZC <mph51@cam.ac.uk>

The University's Museum of Zoology (UMZC) stores over two million specimens, were collected over 200 years by naturalists including Charles Darwin. Their age means most could not be electronically catalogued at the time of their collection so many had their details transcribed by hand into physical log books, inaccessible to most audiences. Your task is to use optical character recognition and machine learning to transcribe the notebook of one individual into an electronic database or spreadsheet. This may involve going behind the scenes and viewing collections usually inaccessible to the public.

Ethical Surgery Assistant

Contact: Vaiva Kalnikaitė, Dovetailed <vaiva@dovetailed.io>

More than 15 million GP appointments are missed annually, costing the NHS hundreds of millions of pounds. Your task is to build a proactive, ethical appointments assistant for a GP surgery that will call or email patients prior to their appointments to confirm date and time, and increase the likelihood the patient will attend. There should be a good conversational flow, with the assistant leading the conversation, and learning over time how to handle conversations more effectively and even become personalised based on patients’ input. Extra features include handling prescription renewal, and appointment booking by phone or email.

Feeding Body and Mind

Contact: David Sharp, Ocado <david.sharp@ocado.com>

As reported in the media, lack of proper nutrition is a particular problem for schoolchildren, as it affects their learning and educational progress. Your task is to produce a system that enables schools to spend financial gifts from donors at an online supermarket on food, crockery, etc. to supply clubs that give children a good meal and teach commercially valuable skills such as programming. The system should gamify both nutritional and educational needs to encourage the children to engage, and might consider multiple factors such as cost of items, and timeliness of delivery. If successful, your project will be released as open-source for Ocado to deploy.

Green Eyes

Contact: Laurens van Dam, IMC <laurens.vandam@imc.com>

We live in a consumer society, often buying more things than we really need. Everything we buy has some environmental impact. For example, it takes 2700 litres of water to make one cotton T-shirt. If your garment is made out of polyester, it will take it 20 – 200 years to decompose. We could all benefit by reducing our environmental impact by buying fewer things or by buying things that are more environmentally friendly. Your task is to develop a HoloLens application that evaluates the impact of an item on the environment given a picture of the item.

Live Lecture Comprehension

Client: Alastair Beresford Computer Lab, <Alastair.Beresford@cl.cam.ac.uk>

Lecturing a large group is a challenging task, not least because there are few feedback cues: how much of the room is understanding? Too fast? Too slow? Your task is to develop a system that provides a feedback loop. Firstly, it should allow students to rate their current comprehension of lecture material through a mobile app, displaying the aggregated results live as a distribution in a corner of the presented screen. Secondly, the app should allow students to submit questions anonymously that, once upvoted to a preset level, flash up on the screen.

Online Ticking Markbook

Client: Graham Titmus <gt19@cam.ac.uk>

We have various systems in use to administer ticks, from paper to custom systems  Students need a single place to view all their pending and awarded ticks, and DoSes need a view of their students’ progress. There also needs to be a simple interface to requesting an extension and getting the relevant approvals (DoS, then department). Your task is to build a web-based system that can be used to bulk upload ticks either manually or from an automated ticker, presenting the right information to the right people, and allowing individual edits from authenticated individuals. 

Planning Tools for Large Scale Location Tracking

Client: Pete Steggles, Ubisense <Pete.Steggles@ubisense.net>

Our sensor system (https://www.ubisensedimension4.com) can be used to locate tools and cars on production lines, storing measurements and derived locations for audit purposes. Every day each factory generates ~2e8 locations from ~1e9 raw measurements. There is an environment-dependent function from tag-to-sensor distance/bearing to sensor measurement probability/error, and an environment-independent function from a set of sensor measurements/errors to the probability of a ‘good’ tag location. Your task is to use the stored data to characterize these functions, compare them across sites, and build a planning tool to optimize future installations.

Probably Helpful Planning

Contact: Luke Church, Africas Voices Foundation <luke@church.name>

It's hard to provide famine relief unless you can predict where it might take place. Your task is to build a front end to a probabilistic programming language (Stan) that allows models to be built to explore the likelihood of need based on factors such as weather and crop cycles, and to compare different intervention scenarios to produce plans. The results should be usable by UN aid workers. There will be an opportunity for members of the team to interact with a student team from Potsdam, also working with Africas Voices.

Remote Animal Recovery Monitoring

Client: Heidi Radke, Vet School <hr264@cam.ac.uk>

Like humans, dogs often suffer from injuries and joint problems but, unlike humans, there is no data resource to monitor postoperative recovery in small animals. Your task is to create a mobile phone app enabling dog carers to monitor progress of their dogs during revovery after orthopaedic surgery, provide information on what to expect, and connect them with their consultant. You will work with a leading veterinary orthopaedic surgeon specialising in treatment of these conditions, with the potential to significantly improve the quality of life for many animals with this new form of remote patient support.

Robot Backgammon Arm

Contact: Francesco Ciriello, MathWorks <fciriell@mathworks.com>

Challenges in game theory the likes of Deep Blue and AlphaGo have inspired generations of AI enthusiasts and researchers. Your objective is to design, build and teach a robotic manipulator arm to play the classic game of Backgammon. Your team will be able to test their knowledge of robotics, computer vision, game theory and neural networks. The team will have access to a LEGO Mindstorms EV3 kit and a Raspberry Pi board & webcams to design and build the system. MathWorks offers several hardware support packages for MATLAB and Simulink to simplify deployment of these kits and boards.

Robotic Warehouse Design Suite

Contact: Oliver Powell, Frontier <opowell@frontier.co.uk>

Online shopping is taking over the world! A current growth area is the use of robots and AI in efficiently running warehouses and retail storage facilities. Your task is to produce a virtual warehouse simulation and demonstrate how AI may be applied on this training suite to control bots in their storage and retrieval of randomised streams of orders for items to allow the suite to find efficient methods of organising and driving a robotic warehouse area. How AI is applied to the system, whether in terms of organisational control, or manipulation, or both is up to the teams to decide.

Supervisor Matching System

Client: Tim Jones, Computer Lab <timothy.jones@cl.cam.ac.uk>


Finding supervisors for courses is difficult. The CL runs a wiki where supervisors can indicate their interest for specific courses, but the information quickly becomes stale. Your task is to produce a web-based system allowing potential supervisors to mark all courses they are able to supervise along with preferences for numbers (and perhaps college), and which then indicates their remaining capacity for the relevant period. It should provide easy data entry and a convenient view for DoSes to see who is supervising what and when. When the core is complete, there are a variety of extensions envisaged.

Support Sustainable Wildlife Trade

Client: Mike Harfoot, UNEP-WCMC <Mike.Harfoot@unep-wcmc.org>

UNEP-WCMC supports many developing countries in assessing the potential levels for sustainable trade in wildlife for particular species. You challenge is to use the data provided by existing APIs to power a tool for countries to follow a methodology for producing these reports for a given species/family. The tool must be easy to use in target developing countries and allow the user to provide additional local knowledge to supplement the global data provided by existing data APIs and finally produce a summary report for future policy use.

Testing a Logical Query Language

Contact: Joshua Send, Grakn Labs <joshua@grakn.ai>; Kasper Piskorski, Grakn Labs <kasper@grakn.ai>

Graql is a declarative query language inspired by logic programming languages for performing real-time deductive reasoning on knowledge graphs in Grakn. Theoretical properties of query languages can be verified formally, but it is also important to be able to test language implementations for conformance. Your task is to build an automated system for testing Graql's implementation and interrogating the results, either against a formal semantics for the language or via a more pragmatic approach. If successful, your code will be contributed back to Grakn's open-source repositories.

Trading Assistant

Contact: Evald Monastyrski, IMC <evald.monastyrski@imc.com>

Not all trading happens on the exchange -- sometimes counterparties trade directly through human-to-human communication. In such cases, humans typically use their most natural interface: voice. Your task is to create a service which holds market data and responds to queries on demand in a human-like manner, by automating one side of the process using modern technologies (voice recognition, natural language processing and voice production).

Travelling Businesswoman Problem

Client: Mike Harfoot, UNEP-WCMC <Mike.Harfoot@unep-wcmc.org>

We all need to reduce our Carbon Footprints and for many businesses, flights are a major component of this. Your task is to prototype an online system to help a small company (~100 staff) reduce its footprint by optimising planned travel on an annual basis. Staff should be able to input potential business trips to other institutions, conferences and meetings as well as contacts or locations that it would be beneficial to visit if the opportunity arose. You should consider simple ways to collect this information and to display advice or suggestions during the planning of a trip.

Workout Help with Android and WearOS

Client: Alex Wilson, Google UK <alexwilson@google.com>

Interval training, where the user performs an exercise for a set time before moving to the next, is increasingly popular but poorly supported by technology. Your task is to produe a proof-of-concept system allowing a user to easily create or download a workout schedule (“press ups for 20s, star jumps for 15s…”) on their phone and push it to a smartwatch app that then leads them through the session using visual output and haptics to indicate transitions. For those working out together we want to synchronise their watches to make a better social experience.