Biological Computation

Biological Computation

Established: October 1, 2007

Our group is developing theory, methods and software for understanding and programming information processing in biological systems. Our research currently focuses on three main areas: Molecular Programming, Synthetic Biology and Stem Cell Biology. Current projects include designing molecular circuits made of DNA, and programming synthetic biological devices to perform complex functions over time and space. We also aim to understand the computation performed by cells during development, and how the adaptive immune system detects viruses and cancers. We are tackling these questions through the development of computational models and domain-specific computational tools, in close collaboration with leading scientific research groups. The tools we develop are being integrated into a common software environment, which supports simulation and analysis across multiple scales and domains. This environment will serve as the foundation for a biological computation platform.








Ten simple rules for effective computational research
James Osborne, Miguel Bernabeu, Maria Bruna, Ben Calderhead, Jonathan Cooper, Neil Dalchau, Sara-Jane Dunn, Alexander Fletcher, Derek Groen, Bernhard Knapp, Gary Mirams, Joe Pitt-Francis, Biswa Sengupta, David Wright, Christian Yates, David Gavaghan, Stephen Emmott, Charlotte Deane, in PLoS Computational Biology, PLoS Computational Biology (Public Library of Science Computational Biology),, March 1, 2014, View abstract, Download PDF












Dr Andrew Phillips Link description

Programming DNA


September 19, 2016


Professor Georg Seelig, Neil Dalchau, Andrew Phillips,


Decision-Making in Stem Cells

Established: January 18, 2016

Development proceeds via a sequence of decisions that cells have to make about whether to divide, to differentiate, or to migrate. Differentiation is the process by which a cell changes from one type to another, which enables the expansion of the different lineages and growth of the different structures of the adult. Embryonic stem (ES) cells are uniquely naïve in this regard: these cells retain the ability to differentiate to any cell type of the adult body, as well as…

Open Solving Library for ODEs

Established: July 15, 2014

OSLO is a .NET and Silverlight class library for the numerical solution of ordinary differential equations (ODEs). The library enables numerical integration to be performed in C#, F# and Silverlight applications. OSLO implements Runge-Kutta and back differentiation formulae (BDF) for non-stiff and stiff initial value problems. We wrote this library, in collaboration with Moscow State University, to provide open source access to established equation solving libraries in the .NET environment. Our future…

Reasoning Engine for Interaction Networks (RE:IN)

Established: January 1, 2012

This webpage is dedicated to the tool RE:IN, providing information on the latest version available, together with a tutorial, FAQ, and example files. About RE:IN The Reasoning Engine for Interaction Networks (RE:IN) is a tool that runs online in your web browser, which is designed for the synthesis and analysis of biological programs. Specifically, it encapsulates a methodology that uses automated reasoning to transform a set of critical components, possible interactions and regulation functions into a…

Modelling Immune System Processes

Established: June 1, 2009

Immunodominance lies at the heart of the immune system's ability to distinguish self from non-self. Understanding and possibly controlling the mechanisms that govern immunodominance will have profound consequences for the fight against several classes of diseases, including viral infections and cancer. We have been attempting to understand the computation performed by the immune system that gives rise to immunodominance, using techniques from computer science, applied mathematics and Bayesian statistics.    

Genetic Engineering of Living Cells

Established: February 7, 2009

Synthetic biology aims at producing novel biological systems to carry out some desired and well-defined functions. An ultimate dream is to design these systems at a high level of abstraction using engineering-based tools and programming languages, press a button, and have the design translated to DNA sequences that can be synthesised and put to work in living cells. We introduce such a programming language, which allows logical interactions between potentially undetermined proteins and genes to…

Programming DNA Circuits

Established: February 7, 2009

Molecular devices made of nucleic acids show great potential for applications ranging from bio-sensing to intelligent nanomedicine. They allow computation to be performed at the molecular scale, while also interfacing directly with the molecular components of living systems. They form structures that are stable inside cells, and their interactions can be precisely controlled by modifying their nucleotide sequences. However, designing correct and robust nucleic acid devices is a major challenge, due to high system complexity…

Stochastic Pi Machine

Established: November 21, 2008

The Stochastic Pi Machine (SPiM) is a programming language for designing and simulating computer models of biological processes. The language is based on a mathematical formalism known as the pi-calculus, and the simulation algorithm is based on standard kinetic theory of physical chemistry. The language features a simple graphical notation for modelling a range of biological systems, and can be used to model large systems incrementally, by directly composing simpler models of subsystems


Established: January 1, 2007

An SMT-based Framework for Analyzing Biological Computation The basic principles governing the development and function of living organisms remain only partially understood, despite significant progress in molecular and cellular biology and tremendous breakthroughs in experimental methods. The development of system-level, mechanistic, computational models has the potential to become a foundation for improving our understanding of natural biological systems, and for designing engineered biological systems with wide-ranging applications in nanomedicine, nanomaterials and computing. We…

MSR Blog

PhD Summer School brings top students to Cambridge

By Scarlet Schwiderski-Grosche, Senior Research Program Manager Pivoting from the Old World charm of High Tea to contemplating a dystopian AI-dominated future was among the many experiences facing more than 80 doctoral students at the PhD Summer School, held July 4–8 in Cambridge, England. Each year the Microsoft Research Cambridge Lab brings together tech luminaries and researchers with PhD students from research institutions across the EMEA (Europe, Middle East, Africa) region to learn not only about…

August 2016

Microsoft Research Blog

Here’s why Microsoft cares about basic research — and you should, too

Posted by Jeannette M. Wing The Internet, global positioning systems, the laser, multi-touch displays and search engines. What do these have in common? These technologies, which we take for granted today, came out of basic scientific research. Basic research creates knowledge. It advances our fundamental understanding of the world. Basic scientific research made today’s technology possible, and it will lead to tomorrow’s technological breakthroughs. That’s why we believe it is important for our company…

October 2015

Microsoft Research Blog

U.K. Researcher Garners TR35 Accolade

By Douglas Gantenbein, Senior Writer, Microsoft News Center Pioneering research into programming biology has earned a Microsoft Research scientist a prestigious TR35 award, presented by Technology Review. Andrew Phillips, a 34-year-old scientist who leads the Biological Computation group at Microsoft Research Cambridge, received the award, given each year by Technology Review to recognize the world’s top innovators under the age of 35. The awards span energy, medicine, computing, communications, nanotechnology, and other fields. Phillips was…

August 2011

Microsoft Research Blog

PhD Scholars and Post-Docs

Kathryn Atwell, University of Oxford

  • Mattia Cinelli, University College London
  • Frits Dannenberg, University of Oxford
  • Anton Kan, University of Cambridge
  • Om Patange, University of Cambridge
  • Laura Parshotam, University College London
Former PhD scholars
  • Alistair Bailey, University of Southampton
  • Wei Pan, Imperial College London
  • Tim Rudge, University of Cambridge
Former postdocs