Prof Graham Kirby
Professor
Biography
I've worked in Computer Science at St Andrews since 1991, initially as a research assistant, and then lecturing since 1999. Within the School I've been Adviser of Studies, Admissions Officer and Director of Teaching. At Faculty level I held the roles of Pro Dean Advising and then Associate Dean Students from 2016-22, and jointly the role of Acting Dean of Science for six months in 2019.
Teaching
In 2024-25 I'm teaching on CS1002 and CS5035.
For current students: here are some project proposals for Masters projects in summer 2025.
Here are some Honours projects that I’ve supervised previously:
- user-friendly file backup (Pengan Tang, 2024)
- costs simulation for electric vehicle migration (Mehzar Rizvi, 2024)
- managing coursework extension requests (Joe Mitchell, 2024)
- literate programming in Java (Amy Boyce, 2024)
- steganographic messaging (Calum Naughton, 2024)
- code defactoring tool (Anna Peddie, 2023)
- marine VHF radio simulator (James Topley, 2023)
- terrain-sensitive routing (Will Evans, 2023)
- forward planning tool for advising (Sahl Blakey, 2023)
- Napier88 to Java compiler (Jodie Love, 2018)
- S-algol to Javascript compiler (William Trend, 2016)
- exam typesetting tool (Jamie Maclean, 2016)
- adaptable curriculum analysis (Ryan Hamilton, 2016)
- lightweight threads and asynchronous I/O (Hamish Morrison, 2015)
- uncertainty in linked data (Tom Dalton, 2015)
- FUSE diagnostic tool (Matthew Dooler, 2014)
- understanding thread interactions (Ivan King, 2014)
- race performance analyser (Chukwudi Anyiam-Osigwe, 2013)
- arbitrary-precision Mandelbrot viewer (Paul Cox, 2012)
- policy-driven distributed file synchronisation (Lewis Headden, 2012)
- XML schema generation from examples (Robert Tomsick, 2010)
- apache configuration editor (Owen Rudge, 2009)
- online course planning tool (Ashley Sole, 2008)
And Masters dissertations:
- machine learning for historical record linkage (Phetrus Rodrigues & Wanzhen Zhu, 2024)
- renewables calculator (Tian Jia & Biyang Li, 2024)
- a programming game in Python (Chunyuan Peng, 2023)
- steganographic messaging (Punit Jain, 2023)
- visualisation of uncertain genealogical structures, jointly supervised with Miguel Nacenta (James Williamson, 2017)
- an email client supporting causality analysis and disclosure control (Raghubir Singh, 2016)
- athletics performance analytics tool (Yiming Ren, 2016)
- a database using plain text files (Iswariya Raghu, 2016)
- module delivery system (Sunaiyana Thakuria, 2014)
- second-hand business-to-business e-market solutions (Antoine Casanova, 2013)
- a web-only content management system (Georgios Chrysafidis, 2013)
Research areas
I'm involved in the ESRC-funded Digitising Scotland project, which aims to construct a linked genealogy of Scottish historical records, with Chris Dibben, Lee Williamson and Zhiqiang Feng at Edinburgh, and Alan Dearle and Özgür Akgün in Computer Science at St Andrews. This work also includes Eilidh Garrett and Alice Reid at Cambridge, and Peter Christen at ANU.
I previously led a work package on linkage methodology within the ESRC-funded Administrative Data Research Centre - Scotland, with Alan Dearle, Özgür Akgün, Peter Christen and Alasdair Gray.
I'm also interested in distributed systems and programming languages in general.
Previous PhD Students
- Tom Dalton (2022): handling uncertainty in data linkage, with a focus on using synthetic population-scale data for evaluating population linkage approaches. Reported in his thesis Evaluating Data Linkage Algorithms with Perfect Synthetic Ground Truth.
- Simone Conte (2018): investigated user models for managing distributed data, reported in his thesis: The Sea of Stuff: a Model to Manage Shared Mutable Data in a Distributed Environment.
- Masih Hajiarab Derkani (2014): did his PhD work on Adaptive Dissemination of Network State Knowledge in Structured Peer-to-Peer Networks. He has published his Trombone software, which is an adaptive P2P overlay, and Shabdiz, which is a very light-weight Java tool that monitors a set of machines and ensures that some given application remains running on them.
- Markus Tauber (2010): applied autonomic management to distributed storage systems. He looked at autonomic control of maintenance scheduling in Chord, and of replica retrieval concurrency in a simple distributed block storage system. The work is reported in papers at DANMS 2011 and Self-Adaptive Networking 2010 and in his thesis: Autonomic Management in a Distributed Storage System.
- Aled Sage (2003): addressed the problem of how to configure a software system with a large number of tuning parameters. He developed a tool to automatically run performance tests using various parameter values, so that the best combination of parameter values could be selected. Clearly exhaustive search is impractical due to the combinatorial explosion in the number of possible combinations; this problem is exacerbated by the fact that in a non-trivial system it may take a relatively long time to conduct each test – in the case study of an industrial mail server, each test took 30 minutes. He used Taguchi’s Design of Experiments approach to select a very small sub-set of combinations from which reasonable conclusions could still be drawn. The work is reported in a paper at CDSA 2001 and in his thesis: Observation-Driven Configuration of Complex Software Systems.
Second Supervisor
- Oleksandr Murashko (2018). Thesis: Using Machine Learning to Select and Optimise Multiple Objectives in Media Compression
- Graeme Stevenson (2015). Thesis: An Approach to Situation Recognition Based on Learned Semantic Models
- James Smith (2013). Thesis: Investigating Performance and Energy Efficiency on a Private Cloud
- Ali Khajeh-Hosseini (2012). Thesis: Supporting System Deployment Decisions in Public Clouds
- Angus Macdonald (2012). Thesis: The Architecture of an Autonomic, Resource-Aware, Workstation-Based Distributed Database System
- Rob MacInnis (2010). Thesis: A Scalable Architecture for the Demand-Driven Deployment of Location-Neutral Software Services
- Scott Walker (2006). Thesis: A Flexible Policy-Aware Middleware System
- Evangelos Zirintsis (2001). Thesis: Towards Simplification of the Software Development Process: The Hyper-Code Abstraction
Previous Projects
- H2O: autonomic resource-harvesting database
- ASA: secure location-independent autonomic storage architectures
- RAFDA: reflective architecture for distributed applications
- DIAS: evolving sensornet design through co-design
- ACT: automatic configuration testing
- Archware: architecting evolvable software
- GLOSS: global smart spaces
- XBase: generic storage architecture
- orthogonal persistence, hyper-programming and linguistic reflection
Selected publications
-
Open access
An approach to population linkage using graph databases
Dearle, A., Kirby, G. N. C. & Akgun, O., 5 Jul 2023, p. 291-302. 12 p.Research output: Contribution to conference › Paper › peer-review
-
Open access
An examination of gender imbalance in Scottish adolescents’ vocational interests
Lasselle, L., Schelfhout, S., Fonteyne, L., Kirby, G., Smith, I. & Duyck, W., 24 Sept 2021, In: PLoS ONE. 16, 9, 18 p., e0257723.Research output: Contribution to journal › Article › peer-review
-
Open access
Internationalisation in learning and teaching: Thematic Peer Group report
Taalas, P., Grönlund, A., Pagèze, J., Coly-Layani, L., Fitzpatrick, M., Minescu, A., Rossi, M., Pérez-Llantada, C., Villarroya-Gaudó, M., Herranz, A., Gunnlaugson, G., Svalfors, U., Cullhed, M., Håkansson, L., Skaletska, Z., Chovnyuk, L., Osypchuk, A., Peddie, C., Kirby, G. & Bretherton, A. & 1 others, , 16 Mar 2020, European University Association, 11 p. (Learning and Teaching Papers; no. 9).Research output: Working paper
-
Open access
Linking Scottish vital event records using family groups
Akgün, Ö., Dearle, A., Kirby, G. N. C., Garrett, E., Dalton, T. S., Christen, P., Dibben, C. J. L. & Williamson, L. E. P., 2 Apr 2020, In: Historical Methods: a Journal of Quantitative and Interdisciplinary History. 53, 2, p. 130-146 17 p.Research output: Contribution to journal › Article › peer-review
-
An Examination of Gender Imbalance in Vocational Interests among Young People Living in Scottish Rural Communities
Lasselle, L. S. Z. & Kirby, G. N. C., Sept 2019.Research output: Contribution to conference › Paper › peer-review
-
Open access
Understanding the linking possibilities in Scottish Records and an algorithmic approach to full linkage
Dearle, A., Kirby, G. N. C., Lee, W. & Dibben, C., 20 Jun 2018. 1 p.Research output: Contribution to conference › Paper › peer-review
-
Open access
Using metric space indexing for complete and efficient record linkage
Akgün, Ö., Dearle, A., Kirby, G. N. C. & Christen, P., 2018, Advances in Knowledge Discovery and Data Mining: 22nd Pacific-Asia Conference, PAKDD 2018, Melbourne, VIC, Australia, June 3-6, 2018, Proceedings, Part III. Phung, D., Tseng, V. S., Webb, G., Ho, B., Ganji, M. & Rashidi, L. (eds.). Cham: Springer, p. 89-101 13 p. (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); vol. 10939 LNCS).Research output: Chapter in Book/Report/Conference proceeding › Conference contribution
-
Open access
Validating Synthetic Longitudinal Populations for evaluation of Population Data Linkage
Dalton, T. S., Kirby, G. N. C., Dearle, A., Akgun, O. & MacKenzie, M. L., 11 Jun 2018. 1 p.Research output: Contribution to conference › Paper › peer-review
-
An identifier scheme for the Digitising Scotland project
Akgun, O., Al-Sidiqi, A., Christen, P., Dalton, T. S., Dearle, A., Dibben, C. J. L., Garrett, E., Gray, A., Kirby, G. N. C. & Reid, A., 2 Apr 2017.Research output: Contribution to conference › Abstract › peer-review
-
Evaluating population data linkage: assessing stability, scalability, resilience and robustness across many data sets for comprehensive linkage evaluation
Dalton, T. S., Akgun, O., Al-Sediqi, A., Christen, P., Dearle, A., Garrett, E., Gray, A., Kirby, G. N. C. & Reid, A., 2 Apr 2017.Research output: Contribution to conference › Abstract › peer-review