 Hi. So, this is a bit of a made-up subject in the sense that I went into the book shops, trying to find a book about the blurring of the lines between molecular biology and some of the ideas in molecular biology and genetics, and computer science, because all these ideas about information flow and control, and I couldn't find the book, so I did some reading around, and basically, in lieu of writing a book myself, because I'm fundamentally quite lazy, I'm just going to dump it on you people and then feel good about myself. This is the plan. Thank you. So, I'm going to stray a little bit into a couple of medical topics. Not too much, but if there's one thing you have to take away from this talk, hopefully there'll be lots of things, there's quite an interesting subject and I intend to blaze through quite a lot of stuff quite fast. But if there is only one thing, I want it to be this. I do have a background in biology. I am not in any way medically trained. I do not take anything I say about any medical subject seriously. If you find me particularly convincing, and would like to hear more of me shouting in a field, I have been thinking of starting a cult. So, by all means, come and chat later. There will be fancy hats. So, what do I mean by biological computation? As I say, it's a bit of a made up phrase. There is such a thing as computational biology, and I don't mean that. It's kind of a made up term. As I say, I'm thinking about the borders between the interesting bits of molecular biology and genetics and the way that information flows and is controlled and the way that patterns propagate and the blurring of the lines between that and some of the aspects of computer science that I'm familiar with. At this point I should stress the aspects of computer science I'm familiar with are a result of going drinking with computer scientists. So, like a lot of people I suspect, I have these wonderful transcendent moments of clarity and then I sober up. So, some of the stuff about computer science is that it's only a little bit hand-wavy. If there's something I'm obviously getting wrong or something that desperately needs clarification, please do wave and scream and shout and hopefully we'll muddle through it together. So, perhaps the most obvious thing to talk about in sort of blurring between life and computers is Conway's Game of Life, which probably everyone recognises to some degree I'd expect most people in this crowd to do. I'm seeing lots of glassy stairs with a enthusiastic approval. So, for those who aren't familiar, Conway's Game of Life is you have a big two-dimensional grid. Each square looks at the squares around it and asks how many of those squares are white or black. Basically how many of those squares are the same state as me. If there's too many, they are too crowded and they die. If there's too few, the same state of them, then they get lonely and they die. It's all very sad. But also by the similar rules squares can be forced to turn on. And so you have an individual square looking at its neighbours deciding what to do, am I going to turn on, am I going to turn off, based on that very limited data set. And what comes out of this is a staggering amount of complexity. And so this is perhaps one of the most famous forms called a glider. So we start with time zero and you have this rather odd looking backwards L shape or rotated R, it gets called a lot of things. Then a tick of the clock to time one, a few cells turn on and off. A tick of the clock to time two, time three. By time four, we're back to the original pattern, but it's moved. So there's nothing in the design of this universe that says it's possible to have a coherent shape that gets translated through space. It's each cell completely individually either flashing on or off, and yet we have a pattern that propagates. And so this is one of the simpler concepts in artificial life. This was first described several decades ago and people do really, really fascinating and exciting things in Conway's Game of Life if you really enjoy sitting down and looking at codes and equations and so on, which I'm guessing a fair proportion of you probably do. So it's definitely worth reading up on what's been going on in the last few years and some very cool stuff being invented or discovered depending on your outlook. So this kind of brings to the edge of a question of sort of what counts as life. So here we have this very, very simple two-dimensional universe in which a shape can emerge, a stable pattern can emerge, and go zooming off through the universe. There's nothing built into the universe to say, here's how to copy and translate a shape across. But somehow it manages to propagate and survive and lead a happy, if simple life. So a lot of people talk about a lot of different definitions. And there's a whole Mrs. Gren thing we learn in school. But which is fine, it's not ideal. But life is one of those things, a lot like porn, you know it if you see it. So when you get down to the molecular level and get down to studying sort of viruses, sort of obligate parasites and things, the lines start to get quite blurry and it's surprisingly hard to come up with a stable definition of life that picks up everything you think it should pick up and doesn't pick up anything you think it shouldn't. So it's quite hard, for example, to get a definition of life that includes an infertile human and excludes an anthill. Because, you know, they're both made of lots of little organisms, they cooperate, bits of them sacrifice for each other, whether it's cells or individual ants. Similarly, is a city a living organism. It's all a bit dicey and it's these blurry areas around the edges of biology that can get most interesting. So there's quite a glip thing that floats around a lot. People talk about life as being a temporary perturbation in the second or third thermodynamics. Because, you know, we are hot things that generate heat, we stay hot. Ergo, you know, we're not quite obeying the second or third of thermodynamics because we exhibit homeostasis and maybe homeostasis is the way we define life. And that's great, it sounds simple. But then again, so does a fridge. And so it becomes a little bit tricky. So that's kind of a segue. It does tie in a little bit later on. But okay, if we're going to talk about the code of life, we have to talk about DNA. Because this is sort of at the roots of what I think of a biological computation in a couple of different senses. So we're all familiar with looking at DNA sequences like this. So G, A, T, D, A, C, G, and so on and so forth. And if you have a mutation, for example, at A, this particular one is the gene which controls whether or not your P smells after we disbarragus. It's somewhere on chromosome one for those playing along at home. And that's fine. But it's too easy to think about DNA as an abstract string of information. It's just data when it is, but it's really not. So you have something like two metres of DNA coiled up and coiled on itself and coiled and coiled and coiled into the chromosomes as we've seen them and squeezed inside your cells, which is something like 20 micrometres across. And so it's, depending on your sense of scale, your DNA is packaged up into this very, very complex, very, very densely packed architecture inside a very complex environment. And so we don't have to just think about the code. We have to think about the physical environment and its structure as well and what it's interacting with. But of course, if we think about the code, you start off with the DNA code, gets transcribed into RNA, which is kind of a messenger molecule, which gets translated into protein. And classically, protein is the exciting stuff that actually performs a task. So here we have the barrel shaped one is GFP, which glows green if you shine UV light on it. The middle one is hemagglutinin, which does, it's on the outside of flu viruses and it does all sorts of exciting things. It changes shape when the pH changes, it penetrates cells, it's great stuff. And the last one I want to say is riboprotein, which is a transcription factor, which controls the activation of many, many other genes within the cell. So it's part of one of these feedback loops. So the expression of genes is controlled. So if this is our DNA structure, we have, whether you can see the pointer, you can, brilliant. So you have a promoter sequence, to which bind a bunch of different proteins called transcription factors. Some of these are very, very, ooh, what's the word? Some of them are very, very prolific and a transcription factor will bind to many, many different promoters. Some of them are very specific and will only bind to very, very limited set of promoter sequences. And so a given promoter sequence, which is just a string of DNA that sits upstream of the main gene, recruits specific promoters to it. And obviously the availability of these promoters within the cell, control whether or not that gene can then go on to be expressed. So one of the ways that gene regulation is expressed is by controlling the availability of these promoters. And there are also repressive structures. So it's very possible to have a gene expressed, which gets turned into a protein, which floats around in the cell, finds a promoter and prevents anything else from binding to it, and therefore shuts off gene expression. So the expression of genes from your DNA has systems of feedback loops in it. And these feedback loops to have a diagram, yes, can get quite complex. This is a relatively simple one. It's from Arabidopsis, which is a little plant that's used extensively in plant biology, the model organism. And you sort of start to build up these networks of genes which are interrelated in function and in regulating each other. And it can get a little bit nightmarish, but hopefully we plug it into a computer, a result pops out, and we try not to question it too much. There is someone in my lab at the moment doing similar studies with two different sets of algorithms, and they give wildly different answers, and it's all quite stressful, but it's fine. I think we pick the one that gives the most impressive sounding result and publish that one, which seems to be the default for the field at the moment. So she is actually going off and doing a proper study on it. But the interesting thing about these patterns and the reason it's worth mentioning them in the context of computation is that they can be Turing complete. So you have AND gates, you have OR gates, you have XOR gates, you can have NAND gates, and so you can get these very complex computational processes going on in which the cell is controlling its gene expression in very, very complex ways depending on the cell's own history and also the signals it's getting from outside. So the DNA itself you can sort of think of as being almost like the tape in a Turing machine in the sense... I assume everyone is more or less comfortable with the concept of a Turing machine. A combination of nods and glassy stairs. I'll take that as a good sign. And so the idea is that you have your hard drive, your information stored on the DNA, and it gets played out. And according to the instructions on that hard drive, different parts of it get read out in different orders, put together in different ways. And there's this very complex regulatory network. And so all of your cells all the time are performing these computations. And so one of the ways of thinking about these protein interaction networks is that I have a biologist's background so my instinct is to think of it as just like a bag of chemicals and proteins or sloshing around interacting. But you can also think of it in terms of information flow. So information comes into the cell, it acts on the network, or in the case of viruses, for example, and the analogy between biological viruses and computational viruses is very, very good. So a virus will come into the cell, attempt to use a cell's machinery to make more copies of itself, and the cell will do its best to prevent that genetic information from being input into its system and to recognise those codes and to break them down. And so there's this concept of... There's a lot to be learned, I think, by looking at the basic concepts of computer science and information theory and applying them to the way that genetic networks are regulated. Moving away from the natural systems, I keep looking at my wristband. Is anyone else constantly looking at your wristband to see what the time is, or is it just me? Just me, okay. Great way to find that out. So on to from the natural regulatory systems that we have to artificial ones. So this is a system called DNA origami. It's a huge and quite promising field, but the image we have on the left, yep, that works, on the left is a sort of packaging box made out of DNA, so you give it the correct sequence and it will fold into a structure. But crucially, the DNA will only open, the structure will only open and release what's inside in response to specific chemical signals. And the group that developed these, and you can see there's rather nice pictures down the right of it in various states with and without payload, the group that developed these were able to build, again, a sort of churing complete structure of gates. So they have AND gates or EXOR and they can do binary addition and so on. And they talk about this in terms of therapeutic use. So the idea is that we have these DNA structures containing drug molecules or containing further nucleotide sequences which can go on to do something like gene therapy. And the way they would be regulated to actually release these inside your body can be very, very subtly controlled. Again, sort of blasting through these quite quickly. And there's a different approach to using sort of biological systems in a computational sort of way. There is a nice protein... No. There's quite a nice system that another group is exploring looking at. It's an SSP problem. It's a subset problem that I'm told. It's a fairly common test for NP complete... for systems attacking NP complete problems. And it's a way of assessing sort of how good at parallel tasks your system is. And I won't get too heavily into maths behind it largely because I'm not so hot on it myself. But the idea is that using lithography you can carve out of, you know, silicon chips a system of channels exactly like the ones that live in the diagram here. And we put myosyn motors up in the top. So these are the molecules, the motor molecules responsible for dragging things around inside your cells. And they can travel sort of enormous distances. Sort of they used in nerves to carry a signal from your spine down to the bottom of your legs albeit quite slowly, but they make it to these staggering distances. And so we use these motorised systems inside a physical environment and set up the environment in such a way that we have a mechanical computer that, while not tremendously fast, can do massively parallel tasks very, very efficiently. And it's another nice example of sort of taking systems from biology and building them into these nice sort of computational systems. And there are plenty of other things as well. So people from a lab I worked in a few years ago were working on a system for T cell engineering which is taking the white blood cells from your immune system and patrolling around your body and look for a signal they recognise to be foreign and then attack it and kill that cell because they assume it's an invader. And so they're working on a system of modifying those T cell receptors in order again to make them sort of computationally complete. So you can programme these cells to say if this signal is present and this signal is present or this signal is absent. And again, have these computational structures at work within these T cells and be able to work out quite sort of complex profiles of what the immune cells will and will not attack. I'll no talk about sort of computation and biology to complete without a photo of slime mould, which everyone loves. So this is a classic experiment looking at the idea of the ability to perform quite complex computations with biological systems that have no idea what's going on. And so it's this idea that you generate a maze, sprinkle slime mould all the way through it. Put a piece of food at an exit and another exit and very, very quickly the slime moulds will recede from everywhere that is not on the most efficient path. So this is kind of similar to using ant-like agents to solve travelling salesman problems, which I suspect is again quite a well-known example. More glassy stairs which again resounding confirmation. Thank you. So it's another approach of, you know, you can take these quite simple biological processes and even without defining the problem for them, if you put them in an environment which reflects the problem you're trying to solve, they can be used quite neatly to find solutions. Ah, yes. Okay, and so taking the other approach, so trying to find computational descriptions of biological systems. So this is a very, very simple and it is surprisingly simple when you think about it. A representation of sholing fish. So you see images of large shoals of fish moving as one and a stimulus appears, whether it's a piece of food or it's a shark or it's that dentist from Finding Nemo, and the entire shol reacts as one. And the information can pass through that shol extraordinarily quickly, but what's perhaps more interesting is that the shape of that shol and the disposition of the fish within that shol is described by a very, very simple system. And without getting too heavily into it again, because I'm somewhat pressed for time, we're able to look at the main variables, really, are how quickly the fish nearby are moving, how far away the fish nearby are, and a social factor, which basically depends how sociable that particular fish is. And so we have this very, very simple construction of terms from which emerges extremely complex behaviour. And we have the same sort of things in murmurations of starlings and swallows. So you have these enormous flocks of birds, which move almost as if one organism, if you've ever seen them sort of flying around, they're quite spectacular to watch. And again, the flock reacting as one. And you can model these birds using very, very limited information to generate these flocks. And what you can actually find is, you can do calculations on how fast the information spreads throughout the flock, and it's extremely fast. But what's also interesting is that the flock is able to integrate information very, very efficiently. So different stimuli appearing from different vectors towards the flock, or towards the shell of fish, or towards the slime mould. These are all individual organisms that do not have a sort of overseer, but we're able to have the swarm or the flock moving as one. And so the study of the information transmission through these things is absolutely fascinating. But again, the movement of the entire flock is described by a surprisingly small amount of information. And it's again sort of how close your neighbour is, how fast your neighbour is moving. But if you see that your neighbours on this side are looking alarmed, and your neighbours on this side are looking quite calm, you'll tend to drift towards the calm ones. But also your reaction will be somewhere middling. So you won't be completely freaked out, you won't be as freaked out as the guys by the predator, but you'll be more freaked out by the guys closer to the food. And by this very simple process you're able to integrate information that the flock is able to integrate information from all sorts of different places and perform quite complex behavioural adjustments based on this. And of course the analogy with bees here is sort of fairly clear. So in bees you have a colony of many tens of thousands of bees or ants or other colony insects. And again each unit is... Bees are fairly smart, they're not too bad. But each unit is not making a decision for the hive. So you might have sort of drones that fly out, find a nice sight, come back. And they're doing this in all sorts of different directions and eventually persuading each other coming to a group decision that, okay we need to fly this way, or we need to fly that way. And if you ever want to read in detail about the biology of bees I recommend a book called Democracy of the Swarm, which is well worth a look. It goes into sort of great detail about how these decisions are made. Which kind of brings us back to humans and to neurons. So this is a network of neurons, probably grown in a dish that we're looking at. And so it's the same idea that we sometimes talk about neurons as if they are transistors or we sometimes talk about them as if they are wires. But as with the birds in a flock or bees in a hive, each individual neuron has connections going out to all of its neighbors and many other sensory inputs as well. And so what we're looking at really is no individual neuron can ever make a decision. But each one is integrating, doing a fairly good, is integrating quite a lot of information from its neighbors, albeit all very simple bits of information. But then performing these quite complex integrations, passing them on, and together, as with a swarm or a flock, end up making quite complex decisions based on interesting input data. And that's about the shape of what I wanted to try to cover, albeit very, very fast. That's a lot of quite general ideas glossed over quite quickly, I'm afraid. Partly, mostly due to the time limitations. But hopefully you can see the outlines of some of the interesting parallels we can look at, building biological systems in order to do computations, and also looking at existing biological systems and trying to understand what computations are going on underneath there. So the algorithms that are running in order to make the bee swim, the bee fly, or the fish swim, or the swarm react in one way or the other. So, yeah, thank you for your attention. If anyone wants to expand on bits of computer science that I don't understand, this would be a great time. Brilliant, thank you, Chris. Any questions that I'll bring the microphone to you? In that case, I would like to ask, how stable are these artificial molecular computations systems we've built, like the DNA box, whatever it was called, how stable are they with regard to temperature, pH, things? Are they entirely in a dish, or can they be supported in more complex biological systems? So they can be supported in fairly complex systems. So the particular example of the boxes that hinge open and respond to different signals, they've been successfully demonstrated in cockroaches, because apparently the scientists have never seen a horror film. So they have a fairly narrow range of pH and temperature at which they're happy, but happily the one thing that animals tend to be really, really good at is maintaining the temperature and pH range inside us. Which of these systems are easiest for us to play with? Do you have a recommendation for one to think it with? As in sort of biohacking, sort of bio-biology stuff. Oh, yeah. I would say slime molds. They're not that hard to grow or get hold of, and you can do lots of fun stuff with them. They exist in a sort of liminal space between, at some points in the life cycle, they're a single cell, and you can maintain them like that. At other points in the life cycle, they can be persuaded to form things that look like slugs and things that look a bit like plants. And so they're kind of blurring their line a little bit between a single cell and multicellular organisms, and you can also do fun things with them like make them solve mazes. And I hesitate to say behavioural tests, but see how they react to things. Oh, you know, you should just go prodding at ants in the back garden, it's quite good fun. OK, anybody else? I think that's it. OK, thank you. Oh, thank you guys.