An enzyme can be thought of as a computational element, i.e. a processing unit able to transform an input into an output signal. Thus, in a biochemical pathway, an enzyme reads the amount of reactants (substrates) and converts them into products. Here we consider the biochemical pathway in unicellular organisms (e.g. bacteria) as a living computer that can be programmed to obtain the desired output. Through an optimal executable code stored in the “memory” of bacteria, we can simultaneously maximize the concentration of two or more metabolites of interest.
The key role of computation in the bio-inspired science was first discovered by Alan Turing in 1952. In 1995, Bray pointed out that a single protein can transform one or multiple input signals into an output signal, and can thus be viewed as a computational or information-carrying element. Following this line of thought, we provide a framework to show that bacteria could have computational capability and act as molecular machines. Accordingly, the same framework can be applied to eukaryotic cells.
Inspired by Brent and Bruck , through the formalism shown in Figure 1 we describe the whole behavior of bacterial cells in terms of the von Neumann architecture. In particular, the genome sequence is thought of as an executable code specified by a set of commands in a sort of ad-hoc low-level programming language. Each combination of genes is coded as a string y of L bits, each of which represents the status of a gene set. By turning off a gene set, we turn off the chemical reactions associated with it.
The memory unit contains the string y, which is the program to be executed. We model the processing unit of the bacterium as the collection of all its chemical reactions. In this way, we associate the chemical reaction network of bacteria with a Turing machine (TM). This relationship is based on the mapping between the cell metabolism and a Minsky's register machine RM (equivalent to a TM) . In fact, an RM is a multitape TM with the tapes restricted to act like simple registers (i.e. “counters”). A register is represented by a left-handed tape that can hold only positive integers by writing stacks of marks on the tape; a blank tape represents the count ‘0’. Specifically, the reactions taking place in the cell can be thought of as increment/decrement instructions of the RM, where the RM registers (tapes) count the number of molecules of each metabolite.
Remarkably, as the biological system grows larger, reaching the desired multiple input/output, performance becomes a difficult task, necessitating some sort of machine optimization. To this end, we provide a novel algorithm called Genetic Design through Multi-objective Optimization (GDMO), with the aim of programming bacteria to maximize the yield of desired metabolites. The multi-objective optimization aims at exploiting the computational capabilities of bacteria in order to allow the maximum production of metabolites of practical or industrial interest. The solution of a multi-objective problem is a potentially infinite set of points called Pareto optimal solutions or Pareto front.
GDMO finds the genetic strategies that obey control signals, and optimizes multiple biological functions. Each point of the Pareto front provided by GDMO is a molecular machine that executes a particular task. The Pareto optimality enables not only a wide range of Pareto optimal solutions, but also the best trade-off design (see Figure 2).
Robust genetic interventions in cells, framed as optimal programs to be run in a molecular machine, can be exploited to extend and modify the behavior of cells and cell aggregates. For instance, programs can instruct cells to make logic decisions according to environmental factors and current cell state. A program embedded in a cell could allow its metabolic network to work with a specific user-imposed aim. The complexity and performance of this type of computing could be described using the Pareto front; specifically, each axis represents a metabolite, while the shape of the area underlying the front indicates the ability of the organism to specialise. The metabolic computing (see links [a] and [b]) proposed here complements Cardelli's DNA computing (link [c]) and Bray's enzyme computing.
 R. Brent and J. Bruck. 2020 computing: Can computers help to explain biology? Nature, 440(7083):416--417, 2006.
 D. Lun et al. Large-scale identification of genetic design strategies using local search. Molecular systems biology, 2009.
 D. Soloveichik et al. Computation with finite stochastic chemical reaction networks. Natural computing, 2008.
Claudio Angione, Pietro Liò
Computer Laboratory, University of Cambridge, UK
Department of Maths and Computer Science, University of Catania, Italy