Principles of biological computation: from circadian clock to evolution

For the final — third — day of the Santa Fe Institute workshop on “What is Biological Computation?” (11 – 13 September) organized by Albert Kao, Jessica Flack, and David Wolpert, we opened the floor to short impormptu talks from all the participants. The result was 21 presentations organized in 4 sessions. As with my posts on the previous two days of this workshop (Day 1: Elements of biological computation & stochastic thermodynamics of life; Day 2: The science and engineering of biological computation: from process to software to DNA-based neural networks), I want to briefly touch on all the presentations from the closing day in this post and the following. But this time I won’t follow the chronological order, and instead regroup slightly. In this post I’ll cover about half the talks, and save the discussion of collective computation for next week.

If you prefer my completely raw, unedited impressions in a series of chronological tweets, then you can look at the threads for the three days: Wednesday (14 tweets), Thursday (15 tweets), and Friday (31 tweets).

As before, it is important to note that this is the workshop through my eyes. So this retelling is subject to the limits of my understanding, notes, and recollection. This is especially distorting for this final day given the large number of 10 minute talks.

The best place to start is — I think — at the middle. A little bit after lunch, Nima Dehghani outlined eight computational problems faced by the cell: switches, reconfiguration, noise, response, history, tuning, time, & distribution. Many of the talks focused on how cells approach these challenges. In particular, Zhiyue Lu focused on the challenges of switches, tuning, time, and distributions in the circadian clock of synechococcus elongatus. He showed how this cell could implement its clock by switching between two limit cycles in the space of chemical concentrations. But as Lu reminded us: “a limit cycle is not a computer, it needs to be tuned”. To have computation, a system must be able to respond to its’ environment. In this case, by synchronizing properly with the time its trying to keep.

But an important part of the response of Lu’s cell to their environment is that he could optimize how the cell sets its clock for various noise distributions. From the engineering perspective, this is the programmability of the cell or chemical system. Swapnil Bhatia expanded extensively on this in his talk on the importance of tinkering with biology. He shared three experiences with us: (1) how to implement arbitrary binary decision diagrams in DNA via cutting & stitching mechanics; (2) how to built a translator from verilog to DNA and just how difficult biology is to debug; and (3) how to port enzyme production module from some animal to E. Coli (much more difficult than porting from Mac to Windows but still doable). Kobi Benenson pushed this programming of the cell into practical, medical applications. In particular, he shared his efforts to program gene therapies to better target cancer.

Finally, Eric Winfree asked about the design space of possible chemical reaction networks and its limits. And Stefan Bolmholdt suggested that we should look for inspiration in the circuit boards of washing machines and the advice of old Bell Labs telephone repair manuals if we want to find the design principles of gene-regulatory networks. Albert Kao added a further design consideration: since we know that a given natural circuit evolved, how does that help us understand it better?

For Chris Kempes, Kao’s consideration leads us to identify physical constraints on the morphology of organisms. For Artem Kaznatcheev, this meant identifying the computational constraints on evolution itself. This constraint reminds us to not let perfect be the enemy of good, and to move away from optimizing to satisficing. This is especially important if we want to answer Melanie Moses‘ provocative question: how much does it cost to copy an apple? After all, we need to account not just for the seed and the tree, but the birds and the bees, and the whole of evolutionary history.

So to answer Moses’ question, we have to move away from thinking of computation as restricted to a single cell or organism. Instead, we need to arrive at collective computation. This was the focus for most of the other Friday talks. And I will discuss this more next week.

About Artem Kaznatcheev
From the Department of Computer Science at Oxford University and Department of Translational Hematology & Oncology Research at Cleveland Clinic, I marvel at the world through algorithmic lenses. My mind is drawn to evolutionary dynamics, theoretical computer science, mathematical oncology, computational learning theory, and philosophy of science. Previously I was at the Department of Integrated Mathematical Oncology at Moffitt Cancer Center, and the School of Computer Science and Department of Psychology at McGill University. In a past life, I worried about quantum queries at the Institute for Quantum Computing and Department of Combinatorics & Optimization at University of Waterloo and as a visitor to the Centre for Quantum Technologies at National University of Singapore. Meander with me on Google+ and Twitter.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.