Assorted University Projects

The following are a selection of assessed projects completed during my BEng in Engineering Design and MSc in Machine Learning:

2019: Predicting the Premier League with Twitter

This project aims to understand the accuracy and biases of predictions about English Premier League football matches made on the Twitter social media platform. A detailed, multi-view comparison of predictions to both pre-match odds and true results reveals a multitude of observable trends and patterns, which may contribute to better understanding of the prediction and betting markets around the sport. Individual Twitter predictions yield an average accuracy of $53\%$ for all match results in the 2018-19 Premier League season. Moreover, it is shown that it is possible to aggregate Twitter predictions into a model that performs marginally better than The Guardianโ€™s pre-match odds for predicting true results. This indicates the strength of the wisdom of the crowd effect.

2019: Curiosity-driven obstacle discovery for a mobile robot via occupancy grid mapping with likelihood fields

We tackle the challenge of rapid and accurate obstacle mapping using readings from the IR sensor of a Romi mobile robot. Our solution extends the occupancy grid mapping algorithm via the addition of likelihood fields, which encode spatial correlations. We also implement a motion-planning algorithm that promotes wide exploration and the orbiting of obstacles, based on the targeted minimisation of epistemic uncertainty โ€“ this we call curiosity. We quantify the quality of an inferred map using the Pearson correlation coefficient between it and ground-truth data and compute three derivative metrics summarising both asymptotic accuracy and mapping rate. Our final implementation outperforms simple baseline code by $74\%$, $26\%$ and $38\%$ respectively on these metrics, as well as producing maps that are qualitatively closer in appearance to the ground-truth, and contain a far richer indication of uncertainty owing to their probabilistic representation.

2017-18: Computer vision for vertical farms

An individual research and design project, culminating in the development of a Python-based computer vision and machine learning system, capable of quantifying and predicting growth progression for microgreens in a vertical farm. I employ techniques including edge detection and colour analysis for low-level image processing, a Gaussian process for time series regression, and a Kalman filter for aggregation of noisy predictions over time.

2016: Robots for relief

A group project to develop a detailed design and functional prototype for a remotely operated mobile robotic device for use in disaster relief operations, capable of deploying an aid package to a survivor and also of placing an adhesive-coated electronic sensor onto a wall at a specified height. I take personal responsibility for all electronics and coding work, producing a bespoke control system using MATLAB and Arduino IDE, complete with a Graphical User Interface and simple proof-of-concept self navigation functionality. I also manufacture a large proportion of the prototype device for testing. The outcome and development process are documented in a 50-page report and a 10-minute presentation to the cohort. My teamโ€™s prototype is deemed to perform the best in the sensor deployment testing, achieving the greatest overall height.