Projects

The main past, present, and side projects I have worked on and can publicly talk about.

Active Projects

Mobile Autonomy. A range of projects around machine learning, computer vision, and related topics within the context of self driving vehicles and mobile autonomy.
Airborne Animal Tracking. This is a project with International Animal Rescue and Bristol Robotics Lab. As part of an animal welfare and ecological research project, orangutans in Borneo are implanted with VHF beacons so they can be followed through the jungle. Unfortunately the tracking signal has a limited range and manually navigating the jungle to pick up signals is extremely cumbersome. Better coverage can be obtained by flying above the canopy with a UAV mounted receiver and homing system.

Past Projects

graph Image Processing. An project for the University of Cambridge where the problem was to automatically detect and extract printers ornaments from millions of scanned 16th, 17th, and 18th century books.
Airborne GPR. In many parts of the world unexploded ordnance and landmines still pose a significant danger to the local population. A huge variety of systems and sensors have been developed to tackle the project of landmine detection yet the clearing rate is still fairly low and the risks remain very real. This project is about building an integrated UAV based Ground Penetrating Radar system for use in landmine detection as well as utilities, law enforcement, etc.
GPR-ML. Given a stream of GPR data in the context of demining there is still the significant challenge of identifying landmines amongst the subsurface clutter. This project is tackling the challenge through the use of real and simulated data and exploiting recent advances in (deep) machine learning.
graph Anomaly Detection. A project with a large engineering company where the objective is to find anomalies and recurring patterns in event streams and explore their predictive power.
Swarming Systems. A project in collaboration with Bristol Robotics Lab whose aim is to demonstrate a true swarming capability (i.e., not multi-robot) for applications that involve maximizing area coverage. The core system is built around ROS with hardware from Erlebotics.
Accurate Positioning. In any UAV application good positioning or localization is key in order for the sensor data to be processed sensibly. There are many ways of estimating position. This project is specifically about the integration of a commercial grade RTK GPS receiver and exploring monocular visual SLAM (SVO & LSD in particular).
Airborne EMI sensor. The two main sensor modalities used to detect landmines are GPR and EMI (i.e., metal detector). This project explores the feasibility of having a UAV mounted active or passive EMI sensor. While dubious initially it turns out a useful demonstrator system can be built.
While a scientist at BAE Systems Research I worked on a wide range of projects. Unfortunately, due to the nature of the work there is little I can share publicly.

Projects were typically related to my specific areas of interest. This includes data fusion, big data analysis and visualization, machine learning (with deep learning in particular), Integrated Vehicle Health Management (IVHM) systems, computational engineering, and autonomous systems.

Orchid. A collaboration between the University of Southampton, University of Oxford, University of Nottingham, The Australian Center for Field Robotics, BAE Systems, Secure Meters UK, and Rescue Global.

Rather than issuing instructions to passive machines, humans and software agents will continually and flexibly establish a range of collaborative relationships with one another, forming human-agent collectives (HACs) to meet their individual and collective goals.

humbayes Human Mobility Analysis: It is well known that humans generally follow very regular and predicable mobility patterns, both spatially and temporally. Lots of work has looked at exploiting and predicting those patterns but much less so on looking specifically at departures from those regular patterns. What can we learn from those departures from routine? How predictable are they?

This work was a collaboration with the Agents, Interaction, and Complexity group at University of Southampton. The approach was based around a Bayesian framework to analyse an individual’s mobility patterns and identify departures from routine. It is able to detect both spatial and temporal departures from routine based on heterogeneous sensor data (GPS, Cell Tower, social media, ..) and outperforms existing state-of-the-art predictors.

Applications include mobile digital assistants (e.g., Google Now), mobile advertising (e.g., LivingSocial), and crowdsourcing physical tasks (e.g., TaskRabbit).

GALLOP: Genetic Algorithms for Linguistic Learner Optimization is a python package for feature selection and hyperparameter optimization for Natural Language Processing (NLP) models.

Gallop provides a custom genetic algorithm (based on DEAP) that can be used to optimize the hyperparameters of models such as Timbl, SVMLight and CRF++. Gallop also supports evolutionary selection of features or feature groups and can be run on a standalone machine or Torque compatible cluster.

Pycel. This grew out of the frustration of dealing with Excel spreadsheets as part of the UAV (drone) design workflow. They were platform dependent, hard to automate and parallellise. The result was a compiler that could take an excel spreadsheet we used for aircraft sizing and compile it into stand alone python code for running on our cluster.
DECODE: Decision Environment for Complex Design Evaluation. An ESPRC funded research project where we are developing an agile UAV design environment and manufacturing process. Close ties with the Microsoft Institute for High Performance Computing, Rolls-Royce, Airbus, and the BBC.

Multiple aircraft have been built and flown successfully and our work has been covered extensively by the media. Eventually evolved into the 2Seas 3i EU project.

The SULSA project was about designing, building, and flying the worlds first fully 3D printed aircraft.  It was printed in just 4 separate pieces using selective laser sintering and assembled without any screws or traditional fastners. Its elliptical wings were modeled after the iconic Spitfire and the whole geometry generated programmatically.
MDOW was a project in collaboration with Airbus that took a non-conventional view to solving the Multidisciplinary Design Optimization problem in aircraft design. The fundamental being to use an expert system to coordinate the activities of the domain level optimizers instead of a numeric optimizer. This allowed for more traceability and a human-in-the-loop.
The SUMO Toolbox is a Matlab toolbox that automatically builds accurate surrogate models of a given data source within the accuracy and time constraints set by the user. The toolbox minimizes the number of data points (which it selects automatically) since they are usually expensive.

Applied to a very wide range of disciplines and projects, including metallurgy (with Arcelor Mittal), automotive (with BMW), and semiconductors (with Freescale). Currently in use in many companies and universities.

The Operational MOdel Order REduction for Nanoscale IC Electronics (O-MOORE-NICE) project was a Transfer of Knowledge collaboration between the Technical University of Chemnitz, University of Antwerp, Technical University of Eindhoven and NXP Semiconductors. It involved developing accurate metamodels for integrated circuits. Topics studied included parameterization, parameter screening, nonlinearity, and combination of approaches from optimization and statistics.
H2O was a research project at Emory University, Atlanta and part of the larger HARNESS project with The University of Tennessee and Oak Ridge National Laboratory. HARNESS (Heterogeneous Adaptive Reconfigurable Networked SyStem) was an experimental Metacomputing System aiming at providing a highly dynamic, fault-tolerant computing environment for high performance computing applications.

Side Projects

Litter Robot. Annoyed by the litter lying around public parks I have been brooding on the idea of an autonomous litter robot for a long time. Now slowly working on putting the system together. A wonderfully challenging path through control, SLAM, computer vision, and more.
Marine Litter Awareness. Supporting The Plastic Drive in raising awareness around marine litter. Joined by Plymouth Marine Laboratory and, from Imperial College, the Ocean circulation lab. HPC lab, and Dyson lab.
Flying object detector. A small side project to leverage recent work in deep learning to build a real time, flying object detector.
Missing Maps. The mission is to map the most vulnerable places in the developing world, in order that international and local NGOs and individuals can use the maps and data to facilitate first response. In particular look how drone technology can be democratised to facilitate this.
bigo I organise the London Big-O Algorithms and Datastructures Meetup. A monthly meetup group that focuses on the core algorithms and datastructres that underlie all of computer science. No hand waving and no marketing speak allowed. Contributions from all fields are welcome, from geology and fluid dynamics to high frequency trading and compilers.
dll I co-organise the London Machine Learning Meetup. With over 1600 members it brings together the London Machine Learning community and is one of London’s most popular tech meetups.
FortuneCookieComputer UK Society of Research Software Engineers. Software is a fundamental part of research, and research software engineers are fundamental to good software. Despite this, the role is not well understood in the research community and the missing reward structure in academia often drives them away. As a result, together with the Software Sustainability Institute a group of us founded the UK Society of Research Software Engineers. The aim is to promote the role of software and its developers in a research environment, promote best practices and tools, and fight for a better reward structure and career path.
stemamb STEM Ambassador. For many years I have been working with schools and charities to talk about the research I have been involved in and to get students interested in STEM subjects and careers. This has consisted of lectures, lessons, interview training, workshops, as well as longer term projects such as helping students build underwater robots.
The Taarifa Platform is an open source solution for the crowd sourced reporting and triaging of infrastructure related issues. It allows people to submit reports which can be triaged by local councils, improving public services. Taarifa was a winner at the 2011 RHoK Water Hackathon, winner at the 2012 Sanitation Hackathon, selected for presentation at Google Zeitgeist Europe 2013, and finalist at the 2014 World Mobile Congress in Barcelona. Deployed in Uganda, Ghana, and Tanzania.
rhok Random Hacks of Kindness is all about bringing together subject matter experts from charities and NGOs with developers and technologists. The aim being to use technology to help tackle problems related to social issues, health, education, sanitation, and international development. I have run a number of RHoK events and continue to be active in the wider Tech4Good / ICT4D space. I have a particular interest in the potential of unmanned systems in this area.
Bieberscore. A small side project to learn clojure. Given an artist the code will use the Last.fm API to retrieve the top songs, scrape the lyrics and analyse them to tell you how “complex” or “informative” they are.
courseralogo Coursera-dl. A small library to archive Coursera videos locally and watch them offline.
SouthREACH is a networking group I founded with a simple mission: To bring together researchers, engineers, computer scientists, and enthusiasts from in and around the University of Southampton who want to apply their expertise to help solve problems in international development and ICT4D in a sustainable way. Later merged with the Global South Forum
Domo was an old university project started in order to learn C++/Qt and has long served its purpose. Domo is a music organizer which indexes digital audio sources and manages metadata in a relational database. Musicbrainz support is also available for the looking up of Audio CDs or for identifying tracks based on their TRM fingerprint.
A collection of side projects and code snippets with various degrees of polish can be found in my github repository.