Our researchers in the School of Mathematics have created accessible and sustainable software which has enabled community growth across Africa leading to improved job prospects, new educational opportunities for school children and acclaim and support from the Python Software Foundation.

Mathematical research is not always reproducible due to unreliable, obscured, or outdated computer code. Our approach to open and sustainable software has ensured that accessible software is available across the world, especially in areas where ongoing and prohibitively priced licenses can restrict the use of bespoke software.

Modelling of queueing networks

Early work in queuing theory by researchers in the School of Mathematics explored strategic behaviour in queuing systems and was presented at the inaugural 2015 Namibian Python conference. This research established a sustainable framework for understanding potential deadlock in queueing networks. This framework describes a mathematical approach that uses queueing theory as well as graph theory to be able to identify when a queueing network might arrive at a deadlock. The approach ensures modelling of queueing networks can be made more realistic: in a model, a deadlock situation would essentially block all analysis, whereas in reality it might be recognised and dealt with.

Our team then incorporated this work into the open-source simulation package Ciw which allows simulation models to be tested, reproduced, and modified by users to suit their own needs. Ciw has been used in a variety of research and education projects, including supporting improvements to cancer healthcare for NHS Wales.

Open-source game theory strategies

The second relevant area of our research is in applications of game theory, developed from early work on the effect of selfish behaviour on the efficiency of queueing systems. Dr Vincent Knight and his team further developed software that explored the evolution of cooperative behaviour by providing a framework for research in the Prisoner’s Dilemma. Software named ‘Axelrod’ was created that contains a collection of more than 200 strategies tested, documented and available to researchers throughout the world.

Our researchers’ open-source design of Axelrod means the user base can contribute strategies, which creates a larger and more robust repository. This means that Axelrod can therefore be maintained by the user community. Cardiff researchers have since used Axelrod to collaborate on further game theory analyses, utilising its open and sustainable nature to enable a collaborative approach.

Cardiff research and demonstrations of both Ciw and Axelrod were provided at the first Python Conference in Namibia in 2015. Our research on queueing networks highlighted an accessible method of addressing problems encountered in healthcare and commerce. The presentation of game theory strategies inspired the formation of the Axelrod library of strategies. Both research strands focused on making applied research accessible through being open-source and freely available to be studied and used by others.

Impact of our research

Our research has inspired a new and self-sustaining international community of Python users across Africa. Through our expertise in deploying open-source research and tools to resolve practical problems, our team has facilitated the widespread adoption of open-source analytical techniques across Africa, fostering new employment and educational opportunities. Growth in the African Python community has been demonstrated by:

V Knight, M Harper, N Glynatsi, O Campbell, 2017: Evolution Reinforces Cooperation with the Emergence of Self-Recognition Mechanisms: an empirical study of the Moran process for the Iterated Prisoner's dilemma, PLOS One 1