I'm a Senior Research Assistant, part of the CHORDS research group within Computing Science and Mathematics at Stirling, and also a Visiting Fellow in Civil and Building Engineering at Loughborough University. I'm interested in value-added optimisation: techniques which yield optimal or near-optimal solutions but also reveal underlying information about the problem to better support decision making. My main focus is in metaheuristics, including evolutionary algorithms and estimation of distribution algorithms; related issues such as fitness modelling (and mining such models), handling constraints and multiple objectives, and decision support; and application areas including scheduling and simulation-based optimsation in civil engineering and transport.
I have some teaching and supervision responsbilities which can be found here, and if you'd like to have a chat about anything (though ideally related to one of the things mentioned in these pages) you can view my availability here.
I am currently working on the project FAIME: A Feature based Framework to Automatically Integrate and Improve Metaheuristics via Examples. This is all about recognising features of problems and algorithms so we can match up algorithms to problems that they can easily solve. Ultimately the aim is to automatically design new algorithms for problems, based on the problems' features.
Next year I will also be leading a small project funded by the Royal Society of Edinburgh (Scottish Crucible) called "Crowd-sourcing the aural identities of places by evolutionary optimisation". This is joint with Suk-Jun Kim at University of Aberdeen, and Stella Chan and Szu-Han Wan at Edinburgh University, and will be looking at developing a distributed platform to use evolutionary algorithms to explore the sounds and collective memories associated with geographic locations. There will be a summer internship on this project hosted at Stirling, if you're a student here and are interested then please get in touch.
I have also recently worked on the project DAASE (Dynamic Adaptive Automated Software Engineering), and am still working with some colleagues under the DAASE banner. The project is looking at automated approaches to tackling software engineering problems. My focus is currently on using search-based methods to improve existing code (e.g. making a simulator more accurate, or making code that causes the computer running it to consume less power), and on making the search algorithms solve problems in a more intelligent way. When I first came to Stirling I worked on the project SANDPIT: Integrating and Automating Airport Operations, in which I focussed on real-world aircraft ground movement (allocating taxi routes to aircraft), specifically approaches to handling uncertainty and sourcing free real-world data sets for the problem.
If you've come here looking for the GM Tools for manipulating airport ground movement data, then please visit the GM Tools project page at GitHub. Benchmark datasets can be found in the collection at ASAP Nottingham.
Here is a video produced by Microsoft to highlight the research, and particularly the role that the Azure cloud platform played (I was grateful to receive a year-long grant for free use of Azure from them). A case study is also now available.
I have always been fascinated by computing and in particular artificial intelligence techniques. I particularly enjoy the interplay between the theoretical side of understanding what makes different algorithms tick and the huge range of interesting application areas that have meaningful real-world value (or are just fun!). My work has settled around approaches to dealing with real-world optimisation problems; handling uncertainty, solving problems with hard constraints and multiple objectives, dealing with long simulation run-times and analysis of optimisation results to better help with decision making.
I completed a Computer Science BSc(hons) in 2005 at Robert Gordon University in Aberdeen, Scotland. During the last year of that degree I was funded by the Carnegie Trust to conduct a short-term research project in applying genetic algorithms to cancer chemotherapy scheduling. My interest in this area grew, leading to an honours project in timetabling with memetic algorithms. I then progressed to work for a PhD, entitled Multivariate Markov Networks for Fitness Modelling in an Estimation of Distribution Algorithm. This covered a range of applications for evolutionary algorithms, and focussed on the construction of fitness models to support the evolutionary process. I continued to research alongside a job as a software engineer in industry during 2008-2010, where I was working in the sector of oil, gas and renewable energy. I returned to full-time as a research associate in the building energy group at Loughborough University, and subsequently came to the CHORDS research group here at Stirling in 2013.
I grew up in rural Aberdeenshire, spent a while in the big city (well, Aberdeen), moved to Loughborough for a bit then on to Stirling. I'm a Christian, husband to Jay and father of three great wee girls, and embrace my inner geek as much as possible. I like to build things, fix things and figure out how stuff works, I like "proper" Sci Fi like Asimov and Arthur C Clarke and Prefer Picard. I sometimes make sounds on a guitar, but am a good deal better at mixing the music of others. I helped establish the toast appreciation society at RGU, and after setting up the debating society there found I quite liked that too. I don't like mushrooms. I sometimes blog about family life here and about technical matters here.
My Erdos-Bacon number is currently a rather disappointing 10 (5+5). This is computed as follows: coauthors Alexander E. I. Brownlee > Siddhartha K. Shakya > Roberto Santana > Tamas D. Gedeon > Istvan Joo > Paul Erdos; appearances (thanks to the MS video above) Alexander Brownlee > Jason Atkin > Marcus du Sautoy > Marcus Brigstocke > Ricky Gervais > Kevin Bacon. It might be a bit better thanks to a brief TV appearance when I was a teenager, but I can't find it anywhere! If anyone has a photographic memory of Grampian TV's output, I'd like to hear from them.
-----BEGIN GEEK CODE BLOCK----- Version: 3.12 GCS/GM/GS d s:s- a C++++$ UL+++ P++ L++>++++ E---- W++ N+ o+ K- w O- M-- V+ PS+ PE- Y+ PGP+ t++@ 5- X R- tv+ b+ DI++ D+ G e++++ h---- r+++ y++++ ------END GEEK CODE BLOCK------