Distributed Systems

A diagram of a cloud surrounded by different digital technologies

About us

The Distributed Systems research group explores the theory, design, and optimisation of a wide range of distributed systems, from Internet of Things to cloud and high-performance computing. Our research uses a mixture of formal methods and empirical study, with research projects that span highly novel paradigms to nearer-term studies in collaboration with industry.

Key research themes include:

  • High-level specification of distributed systems, with automated synthesis of implementations. This research explores how we can use high-level paradigms such as sketches or natural-language descriptions to define the expected behaviour of a system and have the corresponding implementation automatically generated.
  • Self-adaptive systems, using autonomous optimisation processes including real-time machine learning. This research explores how systems can observe the world in which they are deployed, analyse their own performance in this world, and seek ways to optimise that performance -- including continuous re-design as deployment conditions evolve.
  • Automated software improvement, using machine learning approaches to continually refine an operational system. This examines how we can synthesise better implementations of parts of a running system, and inject those improved versions into the live system on a continuous basis.
  • Efficient distributed consensus methods and their associated formal proofs. This research explores novel approaches to classical consensus problems, and examines how state-of-the-art methods perform in a wide range of contexts.
  • Theory of distributed computing, including the study of upper and lower-bounds on complexity and emerging areas such as distributed quantum computing.

Members

  • B
  • C
  • F
  • H
  • I
  • J
  • K
  • L
  • M
  • N
  • O
  • Q
  • R
  • S
  • T
  • U
  • V
  • W
  • X
  • Y
  • Z

Loading People