Rock-paper-scissors × reinforcement learning (opens an external site)
Play against an agent that learns your habits, and watch the statistics update in real time.
Visiting the lab, joining as an undergraduate, or applying to graduate school.
Computers and software eventually fail. The question is not whether they will, but how to design systems so that they remain dependable despite failure.
We approach this mathematically rather than by intuition. We may not know when a particular failure will occur, but we can model it probabilistically. How long should testing continue before release? When should a machine be inspected to minimise total cost? These questions have quantitative answers, and deriving them is what this lab does.
Our tools are probability, statistics, and optimisation. Our targets range from software to cloud systems, communication networks, and power grids. Recent work applies machine learning and large language models to automated test generation.
Getting a feel for it is easier than reading about it. These run in your browser.
Most of our master’s graduates work in software development, quality assurance, or data analysis in the IT, manufacturing, and finance sectors. Some continue to doctoral study and academic careers.
Lab visits are welcome at any time, as are questions about our research. See the contact page for how to reach us.
Prospective graduate students from outside the university are also welcome to get in touch.
Play against an agent that learns your habits, and watch the statistics update in real time.
Watch a reinforcement-learning agent learn to keep a pole upright through trial and error.
Where should sensors go to cover a region reliably? Binary decision diagrams give an exact answer, recomputed in the browser as you move sensors.