IMC

From Computer Laboratory Group Design Projects
Revision as of 10:22, 29 September 2021 by afb21 (talk | contribs)
Jump to navigationJump to search

Contact: Dorine van der Schalk <dorine.vanderschalk@imc.com> IMC Careers Europe <CareersEurope@imc.com>


2022 projects

Plan to propose three, for selection of two

Admin contact for 2022 will be Sanne Cuperus <Sanne.Cuperus@imc.com>

2021 projects

Confirmed:


Original suggestions from Ben Catterall <ben.catterall@imc.com>:

Drone assisted filming Drones have become an essential tool for many filmmakers, but they require manual control usually from additional staff as the subject cannot operate the drone themselves. This constraint also limits the number of perspectives that can be captured in a scene to the number of pilots available. There is great value in reducing the required number of staff as well as capturing multiple views on a single scene without hassle. A swarm of drones that are aware of their surroundings, including each other, and basic cinematography setups could achieve such results. Develop a solution for capturing video recordings of moving subjects such as a cyclist or rower from multiple drones. The drones should be aware of their surroundings, make sure to avoid filming each other and to deliver tasteful and usable footage. A minimum viable product would consist of a drone filming and following an object, perhaps using a Bluetooth tracker. Support for more drones, each providing footage with a specific perspective, could then be added as an extension. You will be provided with a drone.


Smart Fridge Food waste is a major part of the impact of agriculture on climate change, amounting to between one-third and one-half of all food produced. This problem can be tackled at home, by reducing the amount of out-of-date food that is thrown away. Your task is to design a device that helps users manage the food in their fridge. It should notify users when food is about to go out of date, assist them with finding tasteful recipes for using their food, and consequently help them reduce their food waste. You will be provided with a tablet.


Remote reading The ability to read is the foundation of a person's education, transforming children into life-long independent learners. Especially in the early stages of learning, human-to-human interaction is critical to the teaching process.

The focus of this project is to design an interactive remote reading app. It should enable children to connect with their teachers and/or family members by allowing them to read a story together. This project will likely involve designing an interactive reading interface, as well as building the back-end video/audio streaming service. Possible extensions can include support for multiple languages with live translation to better connect non-native speakers and/or facilitate language learning. You will be provided with a tablet.

2020 projects

Confirmed:

Three possibles in discussion:

Develop a voice assistant for trading

Not all the trading happens on exchange, sometimes counterparties trade directly, with human-to-human communication. For such trading humans use their most natural interface - voice. What is our purpose? We want to automate one side of the process using modern technologies (voice recognition, natural language processing and voice production). What will be my task? Create a service which holds market data and shares the data on demand in a human-like manner.

Green eyes: Develop environmentally aware goggles

We live in a consumer society, often buying more things than we really need. Everything we buy has some environmental cost. For example, it takes 2700 liters 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. What is our purpose? It would be great if we were all a bit more aware of the impact we can have on the environment by buying less things or buying things that are more environmentally friendly. What will be my task? Develop a HoloLens application that given a picture of an item calculates the impact of that item on the environment.

The Ocean Cleanup

Over 5 trillion pieces of plastic currently litter the ocean. The largest collection is in the Great Pacific Garbage Patch. Unfortunately, such statistics are rather intangible. What is our purpose? We want to bring home to people how devastating the impact on our actually oceans is by letting them experience it themselves. What will be my task? Design a virtual reality experience of the collection process allowing users to interact with the rubbish collected by System 001.

2019 projects

Two projects confirmed:

(previous discussion)

If the program allows for it, we would like to be the client for two groups again this year as we would like to give this an extra dimension by soft-linking the two projects together:

  • Group 1 would design a project where the output is a driving mindstorms car (we are contemplating a project driving a car with VR experience - storyline remote driving a car).
  • Group 2 would design a project where the input is a driving mindstorms car (we are contemplating a project with a drone following a car with wifi/bluetooth/visual beacon - storyline safety monitoring of high value transport).

The success of the groups does not depend on each other (we have multiple mindstorms sets). Both projects can be developed, presented and demonstrated independently but a combined demonstration (probably not during the public demonstrations sessions) would be awesome!

2018 projects

Wearable house control

Autonomous highway system

Earlier discussion for 2018

• Automated Highway System

Highway congestion is a never ending problem. One way to increase the throughput of the highway is to group vehicles into platoons to shorten the distance between two consecutive cars. Further advantages of vehicle platooning are decreased fuel consumption and emissions and increased safety and comfort. Design an automated platooning system in which multiple vehicles autonomously follow the leader. Safety is of paramount importance, each vehicle should do its best to avoid collisions.

Tools: 3 - 4 sets of Lego Windstorms Responsible: Jan Kis jan.kis@imc.com

Feedback: It looks like fun, and autonomous vehicles are a timely area of interest. It’s nice for both students and the demo day audience to have something concrete to see, so I’m certainly happy to base something on Mindstorms. However, we had a swarm robot project last year, in which relatively trivial issues (mechanical reliability, sensor accuracy, battery charge cycles) dominated the computing questions. I wonder if we might consider a hybrid system design, in which the students simulate larger platoons in software, and build a mechanical testbed (still using Lego) to evaluate or calibrate the inter-vehicle dynamics?

• Autorad

A recent article in New Yorker magazine has explored the triumphs of algorithms in the diagnostic arena. Teleradiology is generally regarded as being the forerunner in employing technology to automate and streamline workflows to better quality of care, more accurate diagnosis and better treatment outcomes. Design a service that would receive DICOM studies and identify Subdural hematomas in CT scans and return its findings. This service would serve as a diagnostic assistant to a radiologist and provide a second level of confidence on the findings. All relevant DICOM data should be extracted and used to create studies and associated reports. Bonus: Ascertain the technical accuracy of the scan (position, dosage etc)

Tools: An extensive medical image source is required for this project. Responsible: Arindam Paul arindam.paul@imc.com

Feedback: If I understand correctly, the core of this appears to be a relatively straightforward computer vision application, which would require training with a substantial dataset of segmented and labelled images. Did you have access to a suitable dataset, or would we need to find a source?

• GreenPi

Large-scale agriculture has the unenviable task of feeding the world’s ever-expanding population which is gradually headed towards unimaginable numbers. Food as we know it today will become a scarcer and far more expensive commodity. Sustainable home gardens can make a difference like all small measures do but not all of us have the privilege of the space required. With solar panels, raspberry pi’s, fans and other sensors create a small greehouse that could be packaged and sold for an affordable amount. The kit should be easy to setup and mostly automated in its operation besides the initial setup effort. There should be an accompanying app/web page to guide the user through setting up the greenhouse and monitoring all its operations and health of the plants inside. Given the time challenges of this project I propose growing radishes, green beans and peas

Tools: All required sensors, solar panels and raspberry pi kits will be supplied Responsible: Arindam Paul arindam.paul@imc.com

Feedback: Are you a keen gardener? As you note, timescale is a problem - what kinds of plants grow indoors in February? I suspect that the control regime for successful plant growing is fairly simple - the more light the better, and water delivery to maintain optimum water content. Could we perhaps use one or two larger plants, and do more intrusive condition monitoring (tissue conductivity, internal water content, mechanical properties of the plant fibres)?

• Smart House

Over the last years smart IOT hardware has become main stream and affordable to consumers. Commonly seen smart electronics in average households may consist of smart lights, smart solar panels, smart curtains or smart thermostats. Together with a smart hub a consumer can control all smart devices. However, the smart devices only perform their own tasks and are unaware of other devices. A smart house should combine multiple smart devices. Create a service that controls all smart devices together. For example, download sun rise and sun set times and automatically switch on lights and close curtains. There should also be a UI that can be loaded on a web browser or as app for mainstream OS'es.

Tools: IOT hardware / smartwatch Responsible: William Bakker william.bakker@imc.com

Feedback: This is a rapidly growing area, with products such as IoTool and IFTTT delivering this kind of generic functionality. We might want to think of a slightly more specific use case, or interaction approach, selected for convenient demonstration to the audience we will get at our public event in March. From experience, this means avoiding room thermostat functionality (because it’s hard to vary the temperature of our room) and other functionality with time constants greater than a few minutes (so not relying on sunset time etc). I noticed with interest your idea to integrate smartwatch functionality - I wonder whether we might shift this toward some kind of body-based (single user) or collaborative (multi-device) policy specification language. Did you have a particular smartwatch model in mind?

• Geographical Pattern Recognition

Within the next few years, 5G will be the successor of 4G. This introduces the need for new placement of transmission towers. The United Kingdom has been fully covered by high quality satellite images. This opens the opportunity to optimize this placement problem. Analyze the geographical properties from the satellite images where to find suitable locations. Then, cross reference with average property prices to determine the optimal location. The user interface should show a graphical overlay of signal coverage and cost.

Tools: (license for) high quality satellite data. Responsible: William Bakker william.bakker@imc.com

Feedback: I’ve had an intern this summer using UK government open data from Ordnance Survey, which might be more appropriate than satellite imagery. However, they have struggled with licensing terms. Data is available for free, but via interfaces built to resist large-scale scraping. I like the idea of optimising by property price - perhaps you were thinking of cost of acquiring land for tower placement (though my experience is that planning permission, rather than land acquisition, is the main constraint). Perhaps even more interesting would be to optimise coverage according to the income of the people who live there, and charge higher rates for the service? A geographical auction optimisation algorithm seems pretty interesting.

• Proof-of-work for crypto currencies

A proof of work is a piece of data which is difficult (costly, time-consuming) to produce but easy for others to verify, and is used to define the requirement for the generation of a new set of transactions ("block") to be added to a distributed transaction database ("block chain"). In the case of Bitcoin this is a hash algorithm (“hashcash”) which requires a minimum level of computing power to solve. This is referred to as the process of ‘mining’ which ultimately controls the rate of deflation/inflation of the crypto currency. The Bitcoin mining concept is not completely without risk, eg what happens if the cost of mining would increase significantly due to fossil power shortage, or mining has become extremely easy with the use of quantum computers? As proof of work can be anything, we’d like the students to come up with a new, original and difficult to solve problem which can be used to add new blocks to the block chain. It should require effort to do, protected from exploitation and sustainable over time.

• Block chain for OTC trading

Another idea we discussed was to use the Etheruem platform, and set up a private net, which can be used for OTC (Over The Counter) trading. OTC, or off-exchange, trading is directly between two parties and often non-electronic. Therefore likely to result in discrepancies between buyer and seller of what was really agreed as part of the trade. A platform based on an immutable block chain mechanism completely reduces this risk including the need to reconcile after the fact between buyer, seller and the clearing bank.

Design your own crypto currency Alternatively we could ask students to define a new crypto currency from scratch, although that might be a lot.

Responsible: Renier Eijkelestam – renier.Eijkelestam@imc.com

Feedback: Your proposals to work with block chain technologies seem a good idea to me, and likely to inspire students. We did include a block-chain based design brief two years ago, with your colleague Jan Kis (copied here) as the client, but perhaps a little ahead of the curve at that time, and students struggled to come up with an innovative concept. You might be interested to compare the design brief that we used then: https://wiki.cam.ac.uk/cl-design-projects/Digital_Currency_for_Public_Good

I still like the idea that proof-of-work can be something that delivers public good, as opposed to the Bitcoin proof-of-work, which seems designed expressly to waste natural resources on as large a scale as possible. Do you think that we might be able to come up with a concept along these lines? If you see Jan, you might ask his opinion. I agree with your specification of requirements as the need for a "new, original and difficult to solve problem”. It’s a great research challenge, but experience is that these undergraduate teams need a little more guidance (or constraint) toward a particular direction.

2017 proposals

Confirmed:

Hololens Escape Room

More ideas:

Neural Guide


24000 words per second

Ben Catterall : ben.catterall@imc.com

Many fields in machine learning, from image recognition to machine translation have recently received a tremendous boost using deep learning. Deep architectures have sparked a renewed interest in artificial intelligence, and resulted in a lot of cool applications. It has also arrived together with a new wave of peer-reviewed research, where people share and publish all of their code online. Most big companies race to provide their pre-trained models online for free. In this project we will focus on automatic video captioning, and the aim is to build a prototype system for a real-time captioning system, using already published research. The resulting product could be used by visually impaired people, or to create automatic tags on instagram.

Feedback:

Quite a lot of our students enjoy playing around with pre-trained deep neural nets, so this is certainly feasible. However, it seems at present like a one-person project, and would have to be expanded to suit work from a team. We already have some projects planned for this year that involve training a deep net, but this involves some ingenuity in identifying suitably labelled training data, as well as getting hold of a machine suitable for running the GPU-intensive deep learning frameworks that are currently popular.

Do you want to provide a reference to the specific piece of published research that you thought might be applied, and we can see where we might go from there?

Response:

The image captioning is from Andrej Karpathy:

http://cs.stanford.edu/people/karpathy/deepimagesent/

I think in order to create an interesting application from this research, we can extend the problem to include audio captions through a mobile application. The students will have to:

- Write a server application that accepts images, and produces captions - Convert captions into audio files - Write a mobile application which shoots images and uploads to server - Replays the audio that comes back from the server

I believe this is already not a one person project.

If you want we can further extend the project to include training of custom captions as well. This can be used to train an 'audio guide' for a particular location for example. We can even think about creating a meta-trainer which receives images and captions for a particular building(museum, or even the computer lab), and automatically forms an audio guide. But personally, I think we are entering a dangerous area, where the project becomes prone to failure.

More:

My understanding is that it’s relatively straightforward to run the Karpathy libraries on novel images using one of their trained models. I agree that it would be much more of a challenge to collect a sufficiently large dataset (and computational resources) to train your own model.

As you say, there is far more chance of failure if doing something other than image labelling, which is already a research topic rather than a design project. Nevertheless, we are taking a chance on this with the project brief I sent you - and I’m hoping that looking at text rather than image encoding will make that one feasible. I got one of our machine learning profs to check it out for sanity.

I would have thought that converting the captions into audio is also an API-calling job, rather than involving any substantial software engineering. I’ve used Festival for this: http://www.cstr.ed.ac.uk/projects/festival/

I think the issue with both deep learning image recognition techniques and speech synthesis is that in both cases, there are fairly good libraries and APIs that allow you to create acceptable results with a few lines of Python, while any improvement over the off-the-shelf libraries is way beyond the capability of undergrads.

Neural Networks in FPGA

Taylan.Toygarlar@imc.com

We are entering a new era in computing, where the services provided are becoming more and more dependent on machine learning and artificial intelligence, with deep learning at the forefront of this new gold-rush. The introduction of deep learning architectures were only possible due to the use of GPUs, and they have done a great job training more and more complex models. However, FPGAs offer huge benefits over GPUs in terms of power savings, which is crucial when web-scale applications are considered. There are many exciting developments in this field, but unfortunately, contrary to GPUs, there are close to no public tooling available for FPGAs. We would like to develop a code generator, which takes as input a commonly used neural-network definition file, and spits out fpga code. This project could potentially help fuel the next generation systems for which all of us interact with daily.

Feedback:

I've discussed with a couple of the staff who teach our hardware course, and they confirm that the dev boards the students use do have FPGA that might be used here.

I wasn't suggesting online learning - rather that they might see how fast they can train a simple image classifier.

Our research team have recently implemented something along these lines. Here are some relevant papers:

Neural nets in custom hardware: http://www.cl.cam.ac.uk/~atm26/papers/fccm2012-bluehive.pdf

Custom hardware v vector processing http://www.cl.cam.ac.uk/~atm26/pubs/FPL2013-BlueVec.pdf

Video and background http://www.cl.cam.ac.uk/research/comparch/research/bimpa.html

An undergrad group could perhaps work with their code, rather than build something from scratch?


Shelved for 2017: Tamagotchi Brief

Jan Kis : jan.kis@imc.com

(‘Creative’) Pokemon Go took the world by storm. Now it’s your turn! Remember those cute, egg-shaped devices with the dancing critters you all played with when you were younger? Well, this task will involve the exciting opportunity of creating an interactive online Tamagotchi world! Your aim is to entice users to explore the fascinating concept of optimal parameter selection, critical to many real world problems such as Machine Learning and automated trading, through their Tamagotchi’s. Develop a mobile application allowing users to view their Tamagotchi and exchange limited resources with each other by agreeing a fair value for their exchange. Once acquired, users should be able to modify the appearance of their Tamagotchi using these resources. Users will thus need to carefully optimize their basket of resources to build their ultimate Tamagotchi. They want to recreate that incredible wig they saw at last night’s bop but only have two bundles of cloth? Well, they trade six spindles of thread for two bundles of cloth, apply some suspect sowing skills and ta dah!

(Formal) Optimal selection of parameters is an important aspect of many exciting real world problems from Machine Learning to automated trading in world markets. This project aims to get users to explore this concept. The task is to build an interactive online mobile application to enable users to view and build their ultimate Tamagotchi. Users will need to exchange limited resources with each other by coming to an agreement about a fair value. These resources can then be used to alter the appearance of their Tamagotchi. Consequently, users will need to carefully select their optimal basket of resources.

Feedback:

Thanks for your “Tamagotchi” suggestion for the Cambridge design project course. Sorry that I’ve left yours to last – I have been discussing other projects with your colleagues that were either more obvious or more problematic.

My initial reaction was that current undergraduates might be unlikely to remember Tamagotchi, so an alternative creature focus might have been necessary. Pokemon would be the obvious choice.

We do already have a design brief for next year that shares some similarities with your proposal, so if we did do something in this area, I’d like to reduce surface resemblance: https://wiki.cam.ac.uk/cl-design-projects/Learn_to_be_an_Alien

I noted the market-making aspect of your more formal version. I found this reminiscent of other market-making projects we have done in the past, such as these two:

https://wiki.cam.ac.uk/cl-design-projects/Scrobble_Exchange:_A_massively_multiplayer_game

https://wiki.cam.ac.uk/cl-design-projects/AI_racing_market

We don’t yet have a “market” proposal for this year, so could perhaps think of a Pokemon Go variant that included this aspect?

2016 projects

earlier ideas

Maksym Korotkiy Maksym Korotkiy <Maksym.Korotkiy@imc.nl>

Prototype a 2D visualization for an execution of a genetic algorithm (GA) applied to a multi-dimensional search problem. The visualization should provide insights into all stages of GA (selection, crossover, mutation) as well as into evolution of candidate solutions. We can assume that number of dimensions is between 10 and 50, number of candidate solutions (population size) is 500 and number of generations is around 100. The visualization should make it easy to understand internal workings of GA and to show an impact of different selection and crossover strategies or mutation rates. Students can use any general GA implementation and can apply it to any multi-dimensional search problem.

Taylan Toygarlar <Taylan.Toygarlar@imc.nl>

Radmilo Racic <radmilo.racic@imc.nl>

Visualization techniques for large set of financial markets data This project develops techniques for visualizing multiple data sets of financial data, including ticker states of global futures and significant stocks, bonds and currencies. The end goal is not only to unearth hidden relationships and correlations between global markets but also to convey trader sentiment and pin point market moving trades. As global market landscape is quite complex and correlated, we will be using Oculus Rift as the principal display tool. Students will be provided with data from Eurostoxx, DAX, CAC, KOSPI, Nikkei, ES, EUR/USD, T-Note, GBL, etc.

2015 project:

2014 (as IMC (Netherlands))