G-Research

From Computer Laboratory Group Design Projects
Jump to navigationJump to search

2019

Lucy.Mair@gresearch.co.uk

Define a simple scripting language and API suitable for creating algorithms. Can enter scripts directly into an interactive game then see its performance in an actual real-time car race created with the Unity graphics engine and physics model Store & rank best algorithms in a leader board, with new players able to build onto existing well performing algorithms Think how the algorithm market would extend to other problem domains.

feedback

We had a very similar project with the same title for which your colleague Dominic Nancekievill acted as client in 2015 AI racing market. I think this is a good topic, and happy to repeat it. The proposal that came to me has a few differences from the one we agreed with Dominic. Are these things that you were specifically wanting to change, or just trying to be more concise? A bit more motivating background may be helpful, but we can certainly modify the previous description

I think the reason that we specified Unity originally is that it might have seemed intimidating to implement a full physics engine and we hoped that giving students explicit permission to use a standard platform would help them to concentrate on novel areas. But since you are well aware of the background, I’m sure that you could review the team’s proposal, and give them a gentle hint if they seem to be going in an unproductive direction.

The other change in the past 4 years is that autonomous vehicles are now an everyday topic of discussion, so there is no need to explain the concept by reference to a particular research project like the Google one. So perhaps we could modify it a little further like this:

earlier

Contact was Dominic.Nancekievill@gresearch.co.uk

2016

Put your phone to work

Original suggestion:

There are around 40 million smartphones in the UK alone. That's a huge computing resource which lies unused much of the time as even today's teenagers rarely check Facebook while they sleep. Design a distributed compute framework with a central server which can split up large compute tasks into small jobs and distribute them to mobile clients. Your solution should be cross platform so using JavaScript and either running in-browser or via Ionic may be a good choice. Once you have a basic setup running with a server, client and demo distributed application there are lots of extensions to consider: How can you secure the platform so that it can't easily be stolen for use as a giant ready-made botnet? Can you come up with a business model where clients can pay for compute time and mobile phone owners are incentivised to provide it? Malicious phone owners might try to provide bad data either to deliberately attack a paying client or to increase their processing speed and therefore get paid more - can you stop them?

2015 project

AI racing market

Project suggestion:

Today's high tech financial markets provide a competitive environment in which having access to the smartest software can make the difference between success and failure.

We would like you to create a similarly competitive environment where programs can be designed and then pitted against each other, only with rather better graphics. The software in this case will be driving cars in a racing simulation rather than placing orders on an exchange.

Using Unity as a starting point to provide a graphics engine and physics model, your completed project should allow a competitor to sit down at an easy-to-understand interface and write a simple controller for a racing car, then at the touch of a button see that how that controller fares in a race against those of other competitors (and at least one which you've created yourselves).

The API should be simple enough that I can knock something up in a few minutes on the demonstration day which will at least make it around the track, even if just by sticking to 10 mph and aiming for the middle of the road. At the same time there should be enough detail in the AI's view of the world to make it possible to write a truly smart driver which takes the racing line, responds to other cars and understands as much of driving as your physics model allows.

We're always looking for ways to identify smart graduates at recruitment fairs, so if your solution works well we may ask to take it to universities around the country as a way of identifying high calibre students.


Modified:

AI racing market



Projects from previous years: