LSCITS home University of Bristol Department of Computer Science John Cartlidge - home

  Dr John Cartlidge


Dr John Cartlidge

Update: Please note that I left the University of Bristol in 2014. This page remains as an archive.
For more recent information, follow this link to my personal website.


I have a first class BSc in Artificial Intelligence & Mathematics (University of Leeds, 2000) and a PhD in Evolutionary Computation (University of Leeds, 2004, supervised by Seth Bullock). Between 2004-08, I spent four years in industry working on a variety of commercial research projects. As an employee of HP Labs and the London Stock Exchange, I worked with Dave Cliff on multi-agent simulation models of the stock market (2004-05). For Ripple, an Irish start-up offering eBay analytics and services, I developed software to optimize pricing strategies of sellers by modelling market supply and demand (2006). In partnership with Steve Phelps, I co-founded, a private software company specialising in financial services (2007-2012). Contracts include the design of a proprietary dark-liquidity exchange for a London finance firm. In 2008 I returned to academia as a Research Associate in Evolutionary Computation and Finance at the University of Central Lancashire (2008-10). In October 2010 I became a Research Associate at the University of Bristol, working with Prof Dave Cliff on the development of simulation models of next-generation large-scale data centres for delivery and pricing of cloud services. I am funded by EPSRC grant EP/H042644/1, part of Phase II of LSCITS, the UK's national research and training initiative in the science and engineering of Large-Scale Complex IT Systems. In 2012, I founded Electric Lamb Ltd., a consulting and software development company specialising in intelligent algorithmic solutions.


Over the last 10 years I have been engaged in multiple avenues of research in both academia and industry. In general, my research interests fall into three broad categories: Cloud Computing; Automated Trading, Auctions and Financial Systems; and Evolutionary Computing. I describe each in more detail, below.

Keywords: Adaptation, Agents, Auctions, Automated Trading, Cloud Computing, Coevolution, Complex Systems, Evolutionary Computing, Genetic Algorithms, Markets, Modelling, Optimisation, Simulation.

Publications: Full abstracts and downloads available here.

Cloud Computing:

The notion of “cloud computing”, where computing infrastructure, platforms, and software application services are offered at low cost from remote very-large-scale data centres accessed over the internet, is one that has recently received large amounts of attention in the IT industry. There have been predictions that this ‘utility computing’ will predominate in future with organisations discarding their internal servers in favour of applications accessible “in the cloud”. To service users, clouds clearly offer advantages in scalability, may reduce the costs of application management, and may reduce overall hardware costs. To service providers, they offer the opportunity to leverage existing data-centre infrastructure and to take advantage of the economies of scale available exclusively to purchasers of extremely large volumes of hardware and network capacity.

However, designing, testing and pricing the cloud is problematic. While many engineering domains have robust industry-standard simulation tools for system design and optimisation—e.g., SPICE for integrated circuit design—a well established realistic simulation framework of cloud computing facilities is lacking. Hence, massively parallel, tightly-coupled, complex data centres are put to service having undergone insufficient pre-testing, while services are sold using simple pricing models that are likely to be inefficient.

At the University of Bristol, we are attempting to build realistic simulation models of cloud computing infrastructure and services to help solve these problems. An open-source software release of CReST: the Cloud Research Simulation Toolkit, a java-based cloud computing simulation framework, is now available for download.

Automated Trading, Auctions, and Financial Systems:

For many of the world's major financial markets, the proportion of market activity that is due to the actions of “automated trading” software agents is rising: in Europe and the USA, major exchanges are reporting that 30%—75% of all transactions currently involve automated traders. However, there have been very few controlled laboratory experiments studying the interactions between human and software-agent traders. At the University of Bristol we are attempting to fill the knowledge-gap between Agent-based Computational Economics (agent vs agent traders) and Experimental Economics (human vs human traders) by performing a series of human-agent experiments. Results continue to give interesting and often counter-intuitive insights into the efficiency of heterogeneous human-agent financial markets. To enable and encourage further research in this area, during the summer of 2011 I led a team of undergraduate interns in building Exchange Portal (ExPo), a web-based financial trading platform for conducting agent-human trading experiments, soon to be released open-source.

The burgeoning predominance of “algorithmic” trading is altering the dynamics of the global financial markets. It is now generally agreed that the “flash crash” of May 6th 2010—where more than $1 trillion was temporarily wiped off the value of US equity markets before recovering only 20 minutes later—was execerbated by the activity of high frequency trading algorithms. On April 22nd 2010, I gave a short presentation at TradeTech—Europe's premier industry-only financial trading technology conference—warning of the risks that algorithmic trading strategies can have on global market dynamics. Two weeks later the flash crash happened!

Economic theory suggests sellers can increase revenue through dynamic pricing; selling identical goods or services at different prices. However, such discrimination requires knowledge of the maximum price that each consumer is willing to pay; information that is often unavailable. Fortunately, electronic markets offer a solution; generating vast quantities of transaction data that, if used intelligently, enable consumer behaviour to be modelled and predicted.

  • J. Cartlidge & S. Phelps, (2010), “Estimating consumer demand from high-frequency data,” in Proc. Ann. Int. Academic Conf. Business Intelligence and Data Warehousing (BIDW-2010), K. Kumar, Ed. Singapore: Global Science and Technology Forum (GSTF), Jul. 2010, pp. 132–138

Much of the research undertaken during my time in industry is protected by non-disclosure agreements. In general my work centred around modelling behaviour and dynamics in electronic auction trading systems, including financial exchanges, alternative trading venues such as dark liquidity pools, and online electronic auctions such as eBay.

Evolutionary Computation:

Evolutionary computing, including genetic algorithms (GAs), offers a population-based method of automated optimisation and design that has been successfully applied in countless application areas. Coevolutionary computing is a sub-set of evolutionary computing where multiple populations evolve via a process analogous to competitive self-play. While standard evolutionary algorithms employ a static, absolute fitness metric, coevolutionary algorithms assess individuals by their performance relative to populations of opponents that are themselves evolving. Although this arrangement offers the possibility of avoiding long-standing difficulties such as premature convergence, it suffers from its own unique problems of cycling, over-focusing and disengagement.

I have been engaged in research in coevolutionary systems since 2000. My primary contributions to the field include the “Reduced Virulence” (RV) technique, developed in 2002 to counteract the problem of disengagement, and its extension Autonomous Virulence Adaptation (AVA). Details of AVA were first published in IEEE Trans. on Evolutionary Computation (2011), the world's premier journal specialising in Evolutionary Computing.

For an interactive demonstration of RV and AVA, refer to EStA, the Evolutionary Steering App. For related reading, see:


©John Cartlidge.  Page last modified on: