How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve...

14
How to Make a Synthetic Multicellular Computer Javier Macia Ricard V. Solé SFI WORKING PAPER: 2013-05-021 SFI Working Papers contain accounts of scienti5ic work of the author(s) and do not necessarily represent the views of the Santa Fe Institute. We accept papers intended for publication in peerreviewed journals or proceedings volumes, but not papers that have already appeared in print. Except for papers by our external faculty, papers must be based on work done at SFI, inspired by an invited visit to or collaboration at SFI, or funded by an SFI grant. ©NOTICE: This working paper is included by permission of the contributing author(s) as a means to ensure timely distribution of the scholarly and technical work on a noncommercial basis. Copyright and all rights therein are maintained by the author(s). It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may be reposted only with the explicit permission of the copyright holder. www.santafe.edu SANTA FE INSTITUTE

Transcript of How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve...

Page 1: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

How to Make a SyntheticMulticellular ComputerJavier MaciaRicard V. Solé

SFI WORKING PAPER: 2013-05-021

SFI Working Papers contain accounts of scienti5ic work of the author(s) and do not necessarily representthe views of the Santa Fe Institute. We accept papers intended for publication in peer-­‐reviewed journals orproceedings volumes, but not papers that have already appeared in print. Except for papers by our externalfaculty, papers must be based on work done at SFI, inspired by an invited visit to or collaboration at SFI, orfunded by an SFI grant.

©NOTICE: This working paper is included by permission of the contributing author(s) as a means to ensuretimely distribution of the scholarly and technical work on a non-­‐commercial basis. Copyright and all rightstherein are maintained by the author(s). It is understood that all persons copying this information willadhere to the terms and constraints invoked by each author's copyright. These works may be repostedonly with the explicit permission of the copyright holder.

www.santafe.edu

SANTA FE INSTITUTE

Page 2: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

How to make a synthetic

multicellular computer

Javier Macia1,2†and Ricard V. Sole1,2,3†

(1) ICREA-Complex Systems Lab, Universitat Pompeu Fabra, Parc de Recerca Biomedica deBarcelona. Dr Aiguader 80, 08003 Barcelona, Spain

(2) Institute of Evolutionary Biology, UPF-CSIC, Psg maritim Barceloneta 37, 08003Barcelona

(3) Santa Fe Institute, 1399 Hyde Park Road, 87501 Santa Fe, New Mexico, USA

Biological systems perform computations at multiple scales and they do so in a robust way.Engineering metaphors have been often used in order to provide a rationale for modelingcellular and molecular computing networks and as the basis for their synthetic design. However,a major constraint in this mapping between electronic and wet computational circuits is thewiring problem. Although wires are identical within electronic devices, they need to be differentwhen using synthetic biology designs. Moreover, in most cases the designed molecular systemscannot be further reused to do other functions. A new approximation allows us to overcomethe problem by using synthetic cellular consortia where the output of the computation isdistributed over multiple engineered cells. By evolving circuits in silico, we can obtain theminimal sets of Boolean units required to solve the given problem at lowest cost using cellularconsortia. Our analysis reveals that the basic set of logic units is typically non-standard.Among the most common units, the so called inverted IMPLIES (N-Implies) appears to beone of the most important elements along with the NOT or AND functions. Although NORand NAND gates are widely used in electronics, evolved circuits based on combinations ofthese gates are rare, thus suggesting that the strategy of combining the same basic logic gatesmight be inappropriate in order to easily implement synthetic computational constructs. Theimplications for future synthetic designs and the general view of synthetic biology as standardengineering domain are outlined.

Keywords: Biological computing, synthetic biology, circuits, evolved circuits,multicellularity

1. INTRODUCTION

A fundamental trait of biological systems is their capac-ity to perform computations [1]. Although cells aremade of molecules and their viability relies in extractingand using energy to maintain them, they are not “just”matter and energy. Information, and how it is processedand used, is an essential ingredient of biology. Adapta-tion to environmental signals requires the processingand proper output to incoming information. This is ofno surprise when we consider that life is strongly tiedto genetic information [2]. Similarly, a computationalpicture of biological systems is at the core of importantkey, unanswered questions on how organisms behave [3].

How do biological systems compute? Computationis present at multiple scales, from molecules to col-lective decisions [4, 5, 6, 7, 8, 9, 10]. Developmentalprocesses [11, 12], collective intelligence [13, 14] orcomplex decision making in cells [15, 16] can be mappedinto some class of formal computational framework.Early works in theoretical biology and cybernetics and

†Author for correspondence [email protected]@upf.edu.

Boolean dynamical systems widely emphasized the viewof molecular phenomena within cells as the likely resultof computational processes [17, 18, 19, 20]. But beyondthe classical theoretical approach to computation, aspecially important avenue involves the engineering ofcellular circuits in order to construct given computa-tional functions or devices performing computations[21, 22, 23, 24, 25, 26, 27, 28]. An example is given infigure 1, where we show the potential implementationof a simple logic gate using engineered regulatory net-works. Here a NAND gate is built by combining a fewbasic components. Two input molecules (α and β) canbe sensed by appropriate receptors or simply diffuse intothe cell where they interact with operator sites. Only inabsence of both signals the output is produced.

In this context, it has been suggested that complexcomputational tasks might be obtained by engineeringbiological structures (molecules and cells) in such away that they can respond to given sets of inputs andgenerate a pre-defined output response. Using syntheticbiology techniques, a great deal of examples involvinglogic gates and simple combinations of them have

1

Page 3: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

2 Synthetic multicellular computers Javier Macia and Ricard V. Sole

!

!

""#$

#%&

'

(

)"

)

)$

*

"

!!"#"$%

!"#"$&

'"()'*"'$!"#"

+,)

-

#"#$

#####./////.//////0#

./////0//////0#

0/////.//////0#

0/////0/////.

" ! %1&

!

"

Figure 1. Simple logic gates can be implemented out fromminimal sets of logic units. The NAND gate (a) is obtainedas a sequential combination of AND and NOT gates. Thecompressed symbol is shown in (b) along with the truthtable. An example of a synthetic implementation of theNAND logic can be made (c) using genetic regulatoryelements A and B forming a regulatory heterodimer com-plex that prevents the expression of the reporter gene. Inconventional electronics, combinations of such gates allowto construct more complex circuits and chips (d), which arethen used as basic modules for further circuit designs.

been obtained and some specific computational prob-lems addressed (see [21, 29, 30] and references cited).Much is expected from these developments towards newapproaches to complex diseases, since decision-makingcircuits. But the promise of a reliable, scalable, reusable,robust and predictable life-based technology that couldallow constructing complex living machines has beenshown to be much more limited than expected [31].After a successful first wave of important results, thepromise of arbitrarily complex constructs obtained ina LEGO-like fashion is far from achieved. The flexibletoolbox of reusable elements is yet to be obtained andall synthetic designs so far can be used in a specifictask but not applied to other problems. In particular,the combinatorial potential implicit in standard circuitengineering has not been even explored yet.

Although it is known from basic theory of combina-torial circuits that some particular logic gates (such asthe NOR or NAND) can be used to build any circuitthat can be conceived, this extrapolation has failed tosucceed when applied to synthetic biological designs. Inthat sense, although several authors have been able tobuild such special gates and claimed that they couldin principle implement any potential, complex cellularcircuit, the required extra engineering makes that claimfar fetched. More specifically, the idea of constructingcomplex devices just combining logic gates in a standardmanner fails due to the so-called wiring problem. Incontrast to electronics, where all wires are identical butphysically isolated, in a cellular context each connectionmust be implemented by a different biochemical ele-ment, e.g. proteins. Even relatively simple devices, suchis a MUX circuit (figure 2a) are difficult to obtain [32].

This circuit involves three inputs, one of which (α) is theso called selector signal. As can be seen, the state of thisselector element determines which one of the two inputs(β and γ) is ”chosen” as the final output. Its use iswidespread in electronics and it is part of many differentapplications. In figure 2b we show a standard imple-mentation of this circuit obtained by connecting severalNAND gates (here shown as AND+NOT elements).Despite its simplicity, this circuit requires a considerableengineering effort in order to follow standard circuitdesign principles within a single cell. For illustrativepurposes we show a possible implementation of thiscircuit in figure 2c. We can easily appreciate that theinternal logic of our proposed circuit requires severalpromoters to be connected through different molecular”wires”. Such limitations pose immediate constraints tothe possibility of creating robust, scalable and flexibledevices with higher computational capacities. Hence,the development of decision-making circuits perform-ing complex functionalities and, in general, the pathtowards living computers seems compromised by thefailure of the standard design principles.

One way of approaching the problem of a complexwiring is to use a cellular consortium, where differenttypes of engineered cells are at work. Such cellularconsortia are common in nature [33, 35, 34] and providea more flexible scenario to build complex syntheticcircuits [36, 37, 38, 39]. Once a library of engineered cellshas been constructed, it is possible to combine in differ-ent ways to obtain different circuits. This is illustratedby the work of Tamsir et al. [40] where the authorsused a set of NOR-like gates constructed on Escherichiacoli by using two specific promoters but the inputsand outputs are controlled by expression of differentquorum sensing molecules without cross-talk amongthe different cells. Here, as it is done in conventionalcircuits, the colonies were spatially distributed on agarplates and connected through the quorum sensing wires.A reporter colony is used to indicate the final outputresponse. By arranging the colonies in different spatialconfigurations, all the elementary two-input logic gatescan be implemented. This example provides an instanceof the application of standard engineering principlesto synthetic multicellular systems. However, because ofits construction, it is once again limited in complexity,scalability and flexibility.

In [41, 42] we proposed a very different approach,which we named distributed multicellular computation(DMC). Under this approach, circuits are also dividedin different cell types, but the similarities with stan-dard electronics end here. Roughly speaking, we allowcircuits to be broken into pieces and having the compo-nent indicating the output scattered over the differentpieces. Several types of reporter cells can be presentand they do not need to be connected. Upon thisassumptions, it was shown [42] that complex circuitscan be built from very simple cellular consortia. Eachcell only requires a small engineering and additionalcell-cell communication molecules can be (but are notalways needed) to exchange information among cells.Multicellular implementation is conceptually appealing.It conceals the implementation details of each encap-sulated logic gate, which can be individually designed

2

Page 4: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

Synthetic multicellular computers Javier Macia and Ricard V. Sole 3

and optimized. As such, it can facilitate circuit imple-mentation and reduce interference with the host cellsphysiology by minimizing the number of componentsintroduced into each cell strain. Therefore, to assemblea complex multicellular circuit, the experimenter needsto be concerned with only two factors: the input-outputfunction of each cellular gate and the output-inputmatching between layers. Moreover, another benefit ofmulticellular computing is that it allows the suppressionof noise in each layer. Because the wiring-moleculeoutput from each gate is mixed and represents thesum over a population, spurious or noisy responseswithin a small proportion of cells can be filtered outin subsequent layers [43].

Instead of using NAND gates, the reduction ofthe wiring requirements was achieved by combiningthe standard AND and NOT gates with the non-standard logic gates called inverted implies (N-implies,NI). There are two possible NI logic gates (hereafterindicated as NI1 and NI2) defined in the two followingBoolean tables:

NI1I1 I2 GFP

0 0 00 1 11 0 01 1 0

NI2I1 I2 GFP

0 0 00 1 01 0 11 1 0

which describe a Boolean function where the underlyingcircuit decides which of two bits is (strictly) larger thanthe other. In that case the first table would correspondto I1 < I2 whereas the second defines I1 > I2. Despitethese gates are not commonly used in standard designs,they have a clear biological meaning found in manyregulatory genetic networks, i.e. one of the inputstriggers the expression of an output gene whereas theother blocks this expression.

Additionally, under this new approach the gates(NOT, AND and NI) are connected in a new way.Whereas in electronics the design rules try to minimizethe number of gates but do not pay attention to thenumber of wires or the complexity of the resultingnetwork of connections, here the number of wires isminimized and the network of connections is reducedto a simple fixed topology. This was experimentallyimplemented using engineered yeast cells, which allowedbuilding a library of cell types that could be combinedin multiple ways in order to create different types ofcombinatorial circuits [41, 42].

As a example, in figure 2d we present an alternativeimplementation for the MUX circuit based in DMCwith distributed output production. As we can see,the two-cell implementation is made by using twodisconnected elements, both being able to express the

reporter gene. In electronics, it would mean to breakthe circuit in two pieces, each one having a light bulbto indicate the output. Even though it makes littlesense for an electronic engineering it solves a problemwhen dealing with a living computational device.

Considering these previous results, the goal of thispaper is two-fold. On the one had we want to presenta general picture of optimized circuits implementingarbitrary Boolean functions based on the combinationof DMC and distributed output production. Suchpicture would we helpful in guiding the choice anddevelopment of components and wires in syntheticconstructs. On the other hand we also want to see howfar the analogies made between standard electroniccircuits and their cellular counterparts can be stretched.

The previous choices make the potential set ofdesigned circuits simple by construction. As shownbelow, searching in the space of circuit designs compat-ible with our proposal leads to simple solutions. Suchsolutions largely combine a subset of logic gates thatdeparts from the standard designs in several ways. Pre-vious works have obtained optimal solutions in differentsystems [44] by using evolutionary algorithms and thenetworks evolved were simpler in some ways to hand-designed synthetic biology networks. Similarly, herewe perform out analysis by means of an evolutionaryalgorithm exploring the space of possible designs forlogic circuits.

2. Boolean models of Cellular Computation

The simplest theoretical framework to define biologi-cal computation is a Boolean approximation. In suchframework, the set of possible states to be observed islimited to two, i. e. Σ = 0, 1. A given input string I

made of zeros and ones can be written as an element of

ΣN = 0, 1 × . . .× 0, 1︸ ︷︷ ︸

n

(1)

Such input string would correspond to a set ofpresent or absent input signals, which can be moleculesbut also physical variables‡. Let us focus on a givenBoolean function Φ involving N inputs and one output.This is formally indicated as a mapping

Φ : ΣN −→ Σ1 (2)

This function defines a input-output mappingbetween any given binary string of N bits I ∈ 0, 1N

and the two possible output values 0, 1. Complexcircuits can be obtained out from combination of severalsmaller sub-circuits called logic gates and this can bedone in multiple ways. These logic gates are two par-ticularly relevant subsets of Boolean functions, namelyi) the 16 two input-one output logic gates definingthe set G(2,1) = gkij where gkij represents the k-st gate

‡Physical variables such as temperature or pressure can beintroduced by means of thresholds. Since many organisms reactto such variables in a threshold manner, a one or a zero canbe used, although analog (non-Boolean) alternatives can also beconsidered

3

Page 5: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

4 Synthetic multicellular computers Javier Macia and Ricard V. Sole

!"#

!

"

!"#"$%

!"#"$&

'"()'*"'$!"#"

$%

&"

!

'()

!"

!

!"#"$%!"#"$%

!

!"

!!

"

"#$%&'$()

!"

#"

Figure 2. Standard and non-standard circuit design. Combinatorial circuits are constructed in conventional electronic designby using predefined gates and wiring them in order to execute a given input-output table. This is illustrated by the so calledmultiplexer (MUX) circuit, whose representation and logic table is shown in (a). Using AND and NOT gates, a standardimplementation is displayed in (b). In (c) we show an example of a synthetic gene network implementing a single-cellmultiplexer. The output signal is a GFP reporter. A very different design of the MUX system is shown in (d). Here thecircuit can be easily designed by splitting the computation into two separated and disconnected engineered cells, both ableto display the output signal. A simplified diagram that summarized the logic of (d) is shown in (e).

responding to inputs i and j, and ii) the one input-one output gates, i. e. the set G(1,1) = g1i0, g

2i0 where

g1i0 is the negation (NOT) and g2i0 is the identityfunction (Id) in response to i-st input. It is well knownthat multiple subsets of logic gates can be used toimplement any possible combinatorial circuit. These areknown as functionally complete sets (FCSs). Typicalexamples of these sets are the pairs AND,NOT andOR,NOT but since the NAND and NOR gates areobtained from the combination of these previous pairs,it actually occurs that the single-function sets NAND

and NOR are themselves FCSs. This statement canbe proven [45] using the rules of Boolean algebra.

As mentioned above, the single-cell implementation,although possible in principle, has two drawbacks. Thefirst involves the unavoidable design problem associatedto the use of several molecular wires associated to eachgene-gene connection. The second is the limited flexi-bility of a single-purpose design. Most typical designscannot be recycled in any way, but a flexible andscalable system should be able to allow combinationamong components so that multiple functions could beimplemented. Keeping in mind, as we have pointed out

4

Page 6: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

Synthetic multicellular computers Javier Macia and Ricard V. Sole 5

before, that the standard methods for circuitry designfocus on the minimization of the number of logic gatesbut do not pay attention on the number of wires or thecomplexity of the pattern of connections. This becomesa limitation for the application of standard rules forcellular circuit designs and hence a novel methodologyfor cellular circuit designs seems necessary.

To reach this goal, we propose a different approachaccording with the following criteria

1. the circuit can be distributed in a network of differ-ent engineered cell types (distributed computation),

2. the output production can take place in differentcell types simultaneously (distributed output pro-duction),

3. the set of wires connecting the different cell typesmust be minimal, and

4. the pattern of connections between cells must beas simple as possible.

Distributed computation allows for a minimization ofcircuit complexity, since each cell carries a small amountof engineering, limited to implementing one given logicgate. Logic gates (cells) generate an output respondingto an external input or at the most to an external inputand to the output produced by other different cell, i.e.a wire, according with the logic of one of the possiblefunctions from the set G(1,1) ∪ G(2,1). This output canbe the final output of the circuit or new wire. Of note,this assumption implies a significant difference withrespect to standard methodologies because there areno hidden gates, i.e. gates responding only to internalsignals (wires), typically present in standard circuits.Every feed-forward circuit implemented by our systemis based on three basic motifs, shown in Figure 3.These motifs involve engineered cells (colour balls)and links αi connecting them. By splitting differentparts of the circuitry over different cells we can takeadvantage of the intrinsic modularity of cells as units.Furthermore, distributed output production allows fora strong relaxation of the wiring requirements. Theconnections between different cell types can be imple-mented by producing small diffusible molecules that canbe secreted by a given cell type and sensed by other celltype. Our analysis is centred on the minimal scenariofor combinational digital circuits, where feedback con-nections are not allowed.

3. Evolving distributed circuits

The efficient design of synthetic biocomputers facesa complex optimization problem. As the number ofpotential elements grows with circuit complexity, sodoes the potential number of solutions. Such combina-torial explosion can be managed by using automatedmethods of design [46]. This has been done in somespecial cases, most of which consider the analog natureof genetic systems. They include small memory devices(flip-flops, [47]) pulses and bandwidth detectors [48]and generalized to different scenarios through simulatedannealing [49], non-linear programming methods [50]standard growth and selection procedures [51], evolu-tionary optimization of a set of independent circuits

[52] and in silico automated design inspired in stan-dard minimization techniques borrowed from electronicdesign [53]. All these methods exhibit advantages andlimitations, and the predicted circuits, specially whendealing with a large number of biological parts, involvecomplex wiring diagrams and are not expected to bereused for multiple functions.

In this paper we show the potential of DMC forevolving complex decision-making circuits that wouldbe very difficult to implement using inspiration fromstandard electronics. Along with the previously men-tioned MUX circuit, we show the result of evolvingfive different standard circuits of increasing complexity.These are a binary comparator, a three-bit adder andthe 3-bit parity circuit (see description below) andtwo 4-input circuits (see below). In order to comparethe expected networks resulting from electronic designprinciples with our (much less complex) proposed DMCconstructs, in figure 4 we show their traditional imple-mentation using logic gates. The left and right columnscorrespond to the implemented wiring diagrams usingdifferent one and two-input logic gates and NANDgates with arbitrary inputs, respectively. We can clearlyappreciate how rapidly the wiring complexity increasesonce we consider three input functions. The dramaticincrease in circuit complexity is specially well illustratedby the expected designs based on NAND gates (rightcolumn). Here we allow these gates to receive multipleinputs. If we force them to include only two inputs, thenumber of gates and links rapidly explodes.

In order to design a given circuit implementing anarbitrary Boolean function Φ, we start with a simplefeed-forward architecture. We define a set of inputsignals I1, ..., IN with Ii ∈ 0, 1 and a library Ω =Cq(g

kij) of different cells. Each cell implements the k-

st Boolean function gkij , responding to both anexternalinput Ii and to an internal wire αj , or only respondingto an external input, i.e. gki0

To explore the potential sets of gates to be usedin designing arbitrary circuits, we have used an evo-lutionary algorithm as our search engine for optimalsynthetic circuits. We start with a set Γ = Γ1, ..., Γsof randomly wired circuits. Here s different potentialsolutions are considered and each circuit will have Ninputs and one output. The total number of possible

functions implementable by this circuits is thus 22N

.Each circuit will be composed by a random number oflogic gates, which are also randomly chosen from theset G(1,1) ∪ G(2,1) which includes 21 + 24 = 18 differentpotential choices§. Once a given input-output functionis defined, many possible combinations can implementit.

3.1. Fitness Function

Each of these circuits is characterized by a fitnessfunction F (Γm). This fitness function is defined asthe combination of two different terms, i.e. F (Γm) =f(FΦ(Γm), Fc(Γm)). The first term, FΦ(Γm), measures

§For general definitions, further information and classification, seeTinder, R.F. (2000). Engineering digital design: Revised SecondEdition. pp. 317319. ISBN 0-12-691295-5

5

Page 7: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

6 Synthetic multicellular computers Javier Macia and Ricard V. Sole

α8

α7

C7

C8

I1

C9I3

I1

I2

I3

α4

C4

C5

C6

α4

C2

C3

I1

I2

I3

C1

α1

α2

! " #

Figure 3. A general circuit design can be obtained by starting from a multicellular system where each virtual cell is a givenlogic gate. Here each engineered cell is indicated as Cq and wires generated by Cq are indicated as αq. Cell Cq will producean output according with the logic defined by gkij . Here gkij represents the k-th logic gate responding to two inputs, the

external one Ii and the internal wire αj secreted by cell Cj . The upper layer involves single-input gates, i.e. gki0 (thus onlythe identity or NOT are possible). Different motifs of connections can emerge according with the criteria introduced, such asindependent strings of connected cells, where each cell responds to different wire (a), the same wire can be sensed by morethan one cell (b), or a given cell responds to wires produced in more than one cell (c). In this last case, due to cells only cansense two inputs (one external and one internal) all wires produced in different parts of the circuit but sensed by the samecell must be implemented using the same diffusible molecule, i.e. wire α7 and α8 are implemented by the same molecule,which can be produced in cells C7 and C8 independently. This situation corresponds to an implicit implementation in C9 ofthe OR logic with respect to wires α7 and α8. Yellow cells (C3, C5, C6 and C9) can produce independently the final outputsignal e.g. a GFP.

how good is the computation of Φ performed by thecircuit Γm. However, good computations are not enoughbut it is necessary minimize the complexity of the cir-cuits design. This can be achieved in several ways. Thesecond term of the fitness function, Fc(Γm), accounts foradditional evolutionary scenarios satisficing the criteriapresented in section 2 in order to safely translate theminto an experimentally feasible construct.

Specifically, FΦ(Γm) is defined as the normalizeddistance

FΦ(Γm) = 1−1

2N

N∑

j=1

|Omj − φj | (3)

where Omj and φj are the observed and expected

outputs associated to the j-th input string (i. e. φj =Φ(Ij)), respectively. The highest value, FΦ(Γm) = 1,will be obtained when perfect matching is achieved.

We have explored different scenarios imposing aselection force described by the second term of thefitness function, Fc(Γm), namely:

1. Minimal gate number: Given a library of cells to beused, our goal is to make the total number of circuitelements as small as possible. Of note, thinking interms of wet lab implementation, minimization ofgates diversity can be useful in order to reduce thelibrary of engineered cells. Here, Fc(Γm) is definedas

Fc(Γm) =1

ξm(4)

where ξm is the total number of gates forming inthe circuit Γm.

2. Minimal wire number: The implementation ofwires, i.e. connections between elements (e.g. cells)is one of the strongest limitations for syntheticdesigns [31, 42]. Here we minimize the total numberof wires used in the circuit by defining Fc(Γm) as

Fc(Γm) =1

1 + ωm

(5)

where ωm is the total number of different wirespresent in Γm.

3. Minimal complexity: This optimization procedurelooks for a structurally minimal wiring pattern [42,54] as the fitness function, in terms of informationprocessed by the circuit. Roughly speaking, thiscomplexity measure Cm weights the contributionof modularity versus integration [54]. We defineFc(Γm) as

Fc(Γm) =1

1 + Cm

(6)

where Cm is defined as [41]

Cm =1

2

Z∑

i=1

〈I(Xqi , X −X

qi )〉 (7)

Here, Z is the number of gates in the circuit andI(Xq

i , X −Xqi ) is the mutual information between

the q−st subset of the circuit formed by i gates, i.e.X

qi , and the rest of the circuit (i. e. X −X

qi ). The

symbols 〈〉 indicate the average among all possiblesubsets formed by i gates. Finally, the index i

covers all possible sizes, form subsets formed byone gate (i = 1) to the whole circuit (i = Z).

6

Page 8: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

Synthetic multicellular computers Javier Macia and Ricard V. Sole 7

GFP

GFP

GFPGFP

GFP

GFP

GFP

a

b

c

Figure 4. Examples of standard engineering designs of three cases studies, namely: (a) a two-bit comparator (b) the three-bitadder and (c) a 3-bit parity circuit. Here the set of inputs appears indicated as open squares and the single-output elementis marked as GFP. The left and right columns are different implementations of the same circuits design (Boolean table)but they have been constructed used diverse logic gates (left) or only using NAND gates with variable numbers of inputs.These circuits have been generated using the Logisim software package. Once the truth table is provided, it builds the logiccircuits, either choosing the appropriate set of two-input logic gates or using just NAND gates. If the NAND gates werechosen such that they only include two inputs, the circuits would be much more complex.

Interestingly, as shown below, all these differentconstraints converge into basically the same basic spaceof possible solutions.

3.2. Evolutionary Algorithm

The evolutionary process follows several different steps.

Step 1: For each circuit the computational termof the fitness (FΦ(Γm)) is evaluated according withexpression (3) upon the different input strings Ij .

Step 2: For all circuits with highest FΦ(Γm) valuesthe second term Fc(Γm) is evaluated. This criterionprevents possible biases associated with the constrainedcomponent Fc(Γm), favouring good computation.

Step 3: The total fitness is calculated according with

F (Γm) =

Fc(Γm) if FΦ(Γm) = maxFΦ(Γi)

0 otherwise

(8)where FΦ(Γi) = FΦ(Γ1), ..., FΦ(Γs). Each on of thesecircuits has a probability to pass to the next roundproportional to the total fitness, i.e.

℘(Γm) =F (Γm)

∑s

i=1 F (Γi)(9)

Step 4: Random mutations are introduced in thecircuits. Random mutations can occurs at differentlevels, namely i) addition of a new wire with probability

7

Page 9: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

8 Synthetic multicellular computers Javier Macia and Ricard V. Sole

!"#

!" !"#

!!"

!#"

!!"

!#"

!"

#"

!"

!"!$"

!!"

!!"

$"

#"

%"

!"%"

!#"

!"#

!"!$"

!!"

!$"

&"

%" !"#"

!#"

!#"

!"#

!"

!#"

!!"

#"

!$"

'()"

!"#"

!#"

!$"

!"#$

Figure 5. Examples DMC designs obtained by using anevolutionary algorithm to find solutions to given compu-tational functions, as defined by Boolean tables of theexamples shown in figure 4. The coloured balls representthe basic set of engineered cells indicating their internalBoolean functions. The dashed boxes indicate subsets ofcells linked through the same communication signal (wire)represented by coloured dashed arrows. In (a) the binarycomparator circuit is shown, after all simplifications havebeen performed. Figure (b) shows a DMC circuit imple-menting a binary three-bits adder using distributed logic.Finally, in (c) we display the minimal three-bit parity circuitis shown. Although the standard circuit is quite complex, acell consortia involving six different cell types is enough toimplement this complex function. Of note, these examplesinvolve two different wires at the most in the most complexcircuit and hence a real wet lab implementation is feasible.

µa, ii) deletion of a wire with probability µd, iii)addition of a new logic gate with probability θa, iv)deletion of an existing gate with probability θd, andv) modification of a logic gate with probability γ.More specifically, modifications of a logic gate areimplemented inverting a randomly chose output bit inthe truth table that defines the logic function.

Step 5: In order to maintain a constant populations of circuits in each round, the set of circuits comingfrom the previous round is completed by new randomlygenerated circuits.

Step 6: go to to Step 1

In order to illustrate the potential for construct-ing simple, nonstandard circuits out from the DMCmetaphor, let us consider several representative exam-ples. These examples belong to the most standardset of components used within electronic devices, butthey are also relevant in potential applications of syn-thetic consortia. The circuits shown below are, amongothers, the minimal designs obtained simultaneously

under the different scenarios described by the functionFc(Γm) in section 3.1. Simulations were run 500 timesfor each Fc(Γm) conditions with the set of parame-ters µa, µd, θa, θd, γ randomly chosen in the interval(0.001, 0.1). The logic circuits obtained have been testedusing Logisim software package.

3.3. Multiplexer

Our first example was the MUX circuit (figure 2a-b). The MUX circuit obtained following our methodis extremely simple, and its smaller version is shownin figure 2d. The resulting construct requires just twodifferent engineered cell types. Instead of a complexset of engineered regulatory interactions within a singlecell, we can create a consortium involving just two cells.The most important feature to be noticed (besides thesimple design) is that the cells are not connected asa consequence of the distributed output. The wholesystem performs the computation and thus both piecesare required, but there is no need to couple them.

3.4. Comparator

In many relevant applications, a given device mightneed to evaluate when two or more signals are equal ornot. A comparator circuit performs such evaluation. Fora problem involving two bits, the digital comparatortable (corresponding to the XNOR logic) reads:

I1 I2 GFP0 0 10 1 01 0 01 1 1

The minimal implementation in terms of number oflogic gates is a single XNOR gate. However, in a biolog-ical context, implementation of complex gates such asXOR and XNOR require the layering of multiple geneticcircuits, thus necessitating substantial efforts in circuitconstruction and tuning [55]. As an standard alterna-tive, this circuit can be build by combining togetherseveral NOT, AND and OR gates. Comparators are awidespread component in most electronic devices andare commonly used in converters, detectors and oscilla-tors. Their potential for synthetic biology applicationsseems clear if we consider that most potential decision-making circuits performing complex tasks are likely torequire this type of operation.

Here, we have evolved this circuit imposing mini-mization of circuit complexity. The minimal configura-tion obtained involves three different cell types imple-menting the AND, NOT and NI gates, and one wire(see figure 5a). As it occurs with the MUX system, twosubsets of cells that do not exchange signals can be usedto implement the Boolean function, whereas five NANDgates would be needed in the NAND-based logic (seefigure 4a). Of note, implementation of logic gates suchas NOT, AND and NI are easier than implementationof XNOR gates [55] and the circuit implementation

8

Page 10: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

Synthetic multicellular computers Javier Macia and Ricard V. Sole 9

a1 a

2 b

1 b

2 A>B A<B

!"""!"""!"""!""""""!""""""!"

!"""!"""!"""#""""""!""""""#"

!"""!"""#"""!""""""!""""""#"

!"""!"""#"""#""""""!""""""#""

!"""#"""!"""!""""""#""""""!"

!"""#"""!"""#""""""!""""""!"

!"""#"""#"""!""""""!""""""#"

!"""#"""#"""#""""""!""""""#"

#"""!"""!"""!""""""#""""""!"

#"""!"""!"""#""""""#""""""!"

#"""!"""#"""!""""""!""""""!"

#"""!"""#"""#""""""!""""""#"

#"""#"""!"""!""""""#""""""!"

#"""#"""!"""#""""""#""""""!"

#"""#"""#"""!""""""#""""""!"

#"""#"""#"""#""""""!""""""!"

I1 I

2 I

3 I

4 Out

!""!""!""!"""""#"

!""!""!""#"""""!"

!""!""#""!"""""!"

!""!""#""#"""""#""

!""#""!""!"""""!"

!""#""!""#"""""#"

!""#""#""!"""""#"

!""#""#""#"""""!"

#""!""!""!"""""!"

#""!""!""#"""""#"

#""!""#""!"""""#"

#""!""#""#"""""!"

#""#""!""!"""""#"

#""#""!""#"""""!"

#""#""#""!"""""!"

#""#""#""#"""""#"

!"

!"I4

I2 I

2

#"

!"$"

I3

!"$"

I3

I4

!"I1

I1

$"!"

!"

!"I2

I4 I

4 $" !"

I1

!"$"

I1

I2

!"I3

I3

$"!"

!"#

%&'"

%&'"

%&'"

%&'"

%&'"

!"a2

b1

#"

b2

b1

a1

&($" a

1

!"a2

a1

$"

b2

a1

b1

b1

&($"

&($"&(

$"

%&'"

%&'"

)"

*"

+"

,"

I#"

I$"

I-"

I."

a#"

a$"

b#"

b$"

Figure 6. Scaling up DMC. In (a) we consider a complex, nontrivial 4-input 1-output Boolean function analysed in Marchisioand Stelling 2011 [53]. Figure shows the truth table and the standard design using two-input gates along with NOT gates.Below (b) we display a minimal circuit implementing this function. In (c) a two-bits comparator circuit is implementedaccording with the standard methodology, whereas in (d) an alternative design obtained by evolution is shown involving lessgates an wires Only two communication signals (wires) are required for this implementation. Two colours (red and yellow)are used to indicate the two reporter molecules associated to each possible output (either A>B or A<B).

combining these gates (despite one wire is required) canbe easier under experimental pint of view.

3.5. Three bits adder

An additional operation that is essential in mostdevices is the binary addition of several input numbersdescribed by the truth table. Let us consider the three-bit adder, defined as:

I1 I2 I3 I1 + I2 + I30 0 0 00 0 1 10 1 0 10 1 1 01 0 0 11 0 1 01 1 0 01 1 1 1

This circuit (as shown in figure 4b) requires a largenumber of gates (in both scenarios) and wires that

make it almost prohibitive for real scenarios. Becauseof this, it provides a perfect illustration of the potentialfor strongly reducing circuit complexity by combiningnon-standard gates with distributed output production.Here the standard implementation would be highlydifficult to implement, whereas the consortium is com-pletely feasible (see figure 5b).

3.6. 3-Parity bit circuit

Our fourth example is another three-input, one-outputcircuit that implements the parity bit circuit. An evenparity bit circuit generates an output of 0 if the numberof 1s in the input sequence is even and 1 if the number of1s in the input sequence is odd. Because of its simplicity,parity is used in many applications where an operationcan be repeated in case of difficulty, or where simplydetecting the error is helpful. Parity can be used as acontrol to check whether the input string is the expectedone or some error (wrong bit) is present. Figure 5c showsthe minimal implementation found by the evolutionaryalgorithm. In this case two different wires are required.

9

Page 11: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

10 Synthetic multicellular computers Javier Macia and Ricard V. Sole

I1 I2 I3 Parity bit0 0 0 10 0 1 00 1 0 00 1 1 11 0 0 01 0 1 11 1 0 11 1 1 0

3.7. 4-inputs: two illustrative examples

In order to emphasize the advantages of DMC combinedwith distributed output production we have analysedone of the most complex functions involving four inputs.This function, described by the truth table shown infigure 6, is complex due to the fact that the canon-ical form does not allow for Boolean simplificationsas has been analysed in [53]. It involves a rathercomplex computation, which cannot be reduced nordecomposed in simpler ones and, as a result, has acomplex associated standard circuit. Here 17 two-inputgates (and four NOT gates) are needed to constructthe circuit based on electronic design rules. As we cansee, the number of wires rapidly explodes. Such circuitcomplexity makes a mapping between these designs anda synthetic construct highly unlikely to be even possible.

Again the solutions found by using our evolutionaryalgorithm minimizing the number of wires involve areduce number of wires and cells. Figure 6b showsthe minimal circuit obtained, involving seven wires andthirteen cells, all of them with the minimal engineeringrequired for our method. This is a worst case scenariothat can be found. Another circuit of great importancein electronic engineering, the so called two-bit com-parator, which processes 4-bit input strings and hasa two-bit output, is shown in figure 6c. The standardcircuit is again very large, with 14 two-input gates andfour inverters. In figure 6d the corresponding DMCdesign is shown, requiring only eight cells. Of note,it is interesting to see that the minimal circuits areformed by the non-standard combination of AND andN-Implies gates. The large number of the later type isa characteristic trait of DMC evolved circuits, as shownbelow.

4. Bias towards non-standard gates

A more general analysis has been performed by con-sidering the whole set of possible random 3-input, 1-output functions. Our evolutionary algorithm was usedto search for evolved DMC designs minimizing circuitsize and circuit complexity. The resulting optimized cir-cuits involve different abundances of different gates andhave different topological arrangements. Our results aresummarized by means of a graph that captures both thefrequency of gates used in the final design and how oftenthey are found together within a given solution.

Again, let us start with the MUX circuit, which isa good representation of a complex design. Figure 7ashows the weighted graph associated to the frequencyof gates used in the generation of evolved MUX circuits

imposing wires minimization. The diameter of the nodesis proportional to the frequency of its abundance andthe thickness of the links represents the probability thattwo gates are present in the same circuit. The graphallows us to draw to important consequences

We can observe an overabundance of a few gates.The histogram shown in figure 7b allows comparingeasily these frequencies. The most common 2-input,1-output gate is clearly non-standard from the pointof view of engineering principles. The second is thatneither combinations of the standard gates NOR orNAND seem to be much relevant here. Their frequencyis much smaller than other gates, particularly the non-conventional N-IMPLIES (NI1), which is the mostcommon choice, followed by AND and NOT gates.The fact that the most common gates define a non-standard set of logic functions (which has been shownto be complete, see [41]) suggests that we must considera whole alternative landscape of combinatorial logicdesigns under our distributed computation paradigm.

This analysis can be extended to the whole set of3-input 1-output functions and the results are shownin figure 8. Figure 8a shows the different frequency ofappearance of logic gates in circuits evolved withoutadditional constrains (red bars), i.e. the unique imposi-tion is a proper computation, and the correspondingresults obtained by evolution imposing minimal size(green bars) and minimal complexity (blue bars). Asfigure shows, the patterns are significantly different.In absence of additional constraints the most frequentgates are NOT, AND and not surprisingly NOR andNAND gates. However, in presence of additional con-strains patterns change and the abundance of NOR andNAND gates is reduced, whereas the NI1 andNI2 gatesemerge as an alternative for improved circuits.

Despite the NOR gate is functional complete set byitself, circuits involving only, or dominantly, NOR gatesare not the optimal solutions found as the thin auto-linkin the NOR node of the graphs indicate (figures 8b-c).Similar arguments can be applied to the NAND gate. Ofnote, the similarity between graphs obtained imposingminimal size and minimal informational complexity isremarkably, suggesting that the optimization of oneaspect could be related with an implicit optimizationof the other. Future work should be devoted to analysethese implications carefully.

5. Discussion

The continuous advance towards the design and syn-thesis of biocomputers shows that there is an enormouspotential for innovation [56, 57]. One of the goals ofongoing synthetic designs is the construction of com-plex living circuits able to perform complex decisionmaking tasks. Here we present a promising approachto this problem, which requires reliable and flexibleapproximations and the potential for extensive reuseand combination of basic units.

We have explored the landscape of circuit designsassociated to a number of complex decision-makingconstructs based on distributed multicellular compu-tation [41, 42]. Such circuits include a large numberof potentially important scenarios, including among

10

Page 12: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

Synthetic multicellular computers Javier Macia and Ricard V. Sole 11

NI1

NI2

Figure 7. (a) Weighted graph showing the frequency of gatesused in the generation of evolved MUX circuits under DMC.The diameter of the nodes is proportional to the frequencyof the gate. Links indicate that two gates have been wiredtogether within a circuit. The weights provide a measureof how frequently a given pair has been used. Note thedisproportionate frequency of N-implies (NI1) which aretypically connected to NOT and AND gates, much less withNOR gates. Note also the vanishing frequency of NOR-NOR links (see text). In (b) we summarize the relativefrequencies of different gates. The two N-Implies gates (hereNI=N1+IN2) have been added together. These and theNOR abundances are highlighted with distinctive colours.Circuits were evolved imposing minimal number of wires.

them many related to biomedical applications, biore-mediation scenarios or several kinds of bioengineeringproblems. Engineering biofilms, tissue architecture orgrowing biomaterials all deal with multiple interactingcell types and it is precisely its multicellular characterwhat makes our method scalable and easy ti implement.Our results suggest that the potential associated tomulticellular consortia, which have been explored indifferent scenarios [58, 59, 60, 61], can be used fordesigning complex computational devices.

The results described above suggest that, accordingwith the design rules proposed, other functional com-plete sets, such as AND, NI can be optimal for cellularimplementation than the standard ones, indicating thatthe optimal functional complete set dependents on con-straints imposed on the circuit topology. Our approxi-mation strongly departs from standard electronic designand in doing so we are able to strongly reduce the

!"#

$!%

!&'

!&(!$!%

&)(

&)'

"#

*"#

!"+

*!"#

!"#

$!%

!&'

!&(!$!%

&)(

&)'

"#

*"#

!"+

*!"#

!

"

#

Figure 8. (a) the graph displays the frequency of appear-ance of different logic gates for circuits evolved withoutany specific evolutionary pressure (red), imposing minimumsize (green), and under minimal circuits complexity (blue).These frequencies have been calculated as the average resultsfor 500 runs. In (b) the graph displays the average resultsfor 500 runs of an evolutionary pressure towards minimumsize. The frequency of a given gate is proportional to nodediameter, whereas the probability of finding two gates in thesame circuit is given by the link weights. In (c) we show thecorresponding results for evolved networks under minimalcircuits complexity. In both cases, the most representedgates are NOT, AND, NI1, NI2 and NOR.

connectivity requirements but also provide a source offlexible combinatorial power.

It provides a robust approach to building morecomplex computations, is predictable and scalable andopens the door to the future design of multicellularchips. It also allows re-thinking the way cells and tissuesprocess information beyond man-made metaphors. Itsgeneral nature makes it easily extendable to other formsof molecular interactions and model organisms or evenprotocellular systems [22, 62] and can take advantage

11

Page 13: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

12 Synthetic multicellular computers Javier Macia and Ricard V. Sole

from additional techniques, such as microencapsulation[63, 64]. Our results provides a proof of concept that theexpectations of synthetic biology in terms of creatingcomplex computational functions out from simple onescan be reached, and allows to explore novel forms ofoptimization beyond standard engineering [65].

Despite the promising previous results obtained sofar under the multicellular consortia approximation[40, 41], future work should be devoted to analysethe potentiality of multicellular circuits attending toimportant aspects, such as stochastic effects on low cellnumber populations or the impact of different growthrates in a multicellular consortia. Moreover, other layersof the hierarchy of computational systems, includingmemory and more complex integrated circuits shouldalso be explored. Although still far from a complexarchitecture that we could identify with a ”computer”,our method shows an enormous potential to achievesuch goal.

Acknowledgments

We thank Alfred Borden and the members of theComplex Systems Lab for useful discussions. This workhas been supported by and EU ERC Advanced Grant,the James S. McDonnell Foundation, the FundacionBotin and the Santa Fe Institute.

REFERENCES

[1] Hopfield, M. 1994. Physics, Computation, and Why Biol-ogy Looks so Different. J. Theor. Biol. 171:53-60.

[2] Nurse, P. 2008. Life, logic and information. Nature 454,424-426.

[3] Brenner, S. 2012. Turing centenary: Life’s code script.Nature 482, 461.

[4] Bray, D. .1995. Protein molecules as computational ele-ments in living cells. Nature 376, 307-312.

[5] Amos, M. 2004. Cellular Computing. Oxford UniversityPress, New York.

[6] Amos, M. 2005. Theoretical and Experimental DNA Com-putation. Springer, New York.

[7] Reed, M. A. and Tour, M. J. 2000. Computing withmolecules, Sci. Am. 282:86-93.

[8] Simpson, M.L. , Sayler, G. S., Fleming, J. T. and Apple-gate, B. 2001. Whole-cell biocomoputing. Trends Biotech-nol. 19:317-323.

[9] Sauro, H.H. and Khodolenko, B.N. 2004. Quantitativeanalysis of signaling networks. Prog. Biophys. Mol. Biol.

86, 5.43.[10] Istrail, S., Ben-Tabou, S. and Davidson, E. H. 2007. The

regulatory genome and the computer. Dev. Biol. 310:187-195.

[11] Hogeweg, P. 2002. Computing an organism: on the inter-face between informatic and dynamic processes. Biosys-

tems, 64, 97-109.[12] Deneubourg, J. L. 1989. Collective patterns and decision-

making. Ethol. Ecol. and Evol. 1, 295-311.[13] Sole, R. V. and Delgado, J. 1996. Universal Computation

in Fluid Neural Networks. Complexity 2, 49-56.[14] Fernando, C. T., Liekens, A. M., Bingle; L. E., Beck C,

Lenser T, Stekel DJ and Rowe JE (2009) Molecular circuitsfor associative learning in single-celled organisms. J. R.Soc. Interface 6, 463-469

[15] Perkins, T. J. and Swain, P. S. 2009. Strategies for cellulardecision-making. Mol. Syst. Biol. 5, 326.

[16] Hjelmfelt, A., Weinberger, E. D. and Ross, J. 1991.Chemical implementation of neural networks and Turingmachines. Proc Natl Acad Sci U S A. 88, 10983-10987.

[17] Kauffman, S.A. 1993. The origins of order. Oxford U.Press, New York.

[18] Kauffman, S.A., Peterson, C., Samuelsson, S. and Troein,C. 2003. Random Boolean network models and the yeasttranscriptional network. Proc. Natl. Acad. Sci. USA 100,14796-14799.

[19] Klemm, K. and Bornholdt, S. 2005. Topology of biologicalnetworks and reliability of information processing, Proc.

Natl. Acad. Sci. USA 102, 18414.[20] Andrianantoandro, E., Basu, S., D. Karig, and R. Weiss.

2006. Synthetic biology: new engineering rules for anemerging discipline. Mol Syst Biol. 2, E1-E14.

[21] Purnick, P. E. M. and Weiss, R. 2009. The second waveof synthetic biology: from modules to systems. NatureReviews Molecular Cell Biology 10, 410-422.

[22] Sole, R. V. , Munteanu, A., Rodriguez-Caso, C. andMacia, J. 2007. Synthetic protocell biology. From repro-duction to computation. Phil. Trans. R Soc. B Biol Sci.362, 1727-39.

[23] Kobayashi H, Kaern M, Araki M, Chung K, GardnerTS, Cantor CR and Collins JJ. 2004. Programmable cells:Interfacing natural and engineered gene networks. Proc.

Natl. Acad. Sci. USA 101, 8414-8419.[24] Kramer, B. P., Fischer, C. and Fussenegger, M. 2004.

BioLogic gates enable logical transcription control in mam-malian cells. Biotechnol. Bioeng. 87, 478484.

[25] Benenson, Y., Gil, B., Ben-Dor, U., Adar, R. and Shapiro,E. 2004. An autonomous molecular computer for logicalcontrol of gene expression. Nature 429, 423429.

[26] Tan, C. M., Song, H., Niemi, J. and You, L. C. 2007. Asynthetic biology challenge: making cells compute. Mol.Biosyst. 3, 343353.

[27] Benenson, Y. 2009. Biocomputers: from test tubes to livecells- Mol. BioSyst., 5, 675685

[28] Friedland, A. E. et al. 2009. Synthetic gene networks thatcount. Science 324, 11991202.

[29] Ruder, W. C., Lu, T. and Collins, J. J. 2011. SyntheticBiology Moving into the Clinic. Science 333, 1248-1252.

[30] Weber, W. and Fussenegger, M. 2012. Emerging biomedi-cal applications of synthetic biology. Nature Rev. Gen. 13,21-35.

[31] Kwok, R. 2010. Five hard truths for synthetic biology.Nature 463, 288290.

[32] Moon, T.S., Clarke, E.J., Groban, E.S., Tamsir, A., Clark,R.M., Eames, M., Kortemme, T., Voigt, C. A. 2011.Construction of a genetic multiplexer to toggle betweenchemosensory pathways in Escherichia coli. J Mol Biol.406, 215-27.

[33] VerBerkmoes, N.C., Denef, V.J., Hettich, R.L., Banfield,J.F. 2009 Systems Biology: Functional analysis of naturalmicrobial consortia using community proteomics NatureReviews Microbiology 7, 196-205.

[34] Bernstein, H.C., Carlson, R.P. 2012. Microbial Con-sortia Engineering for Cellular Factories: in vitroto in silico systems Computational and structuralbiotechnology journal. Vol. 3, Issue: 4, e201210017,http://dx.doi.org/10.5936/csbj.201210017.

[35] O’Toole G, Kaplan HB, Kolter R. 2000 Biofilm formationas microbial development. Annu Rev Microbiol.;54:49-79.

[36] You, L., Cox, R. S., Weiss, R. and Arnold, F. H. 2004.Programmed population control by cell-cell communica-tion and regulated killing Nature 428, 868871

[37] Basu, S., Gerchman, Y., Collins, C. H., Arnold, F. H.and Weiss, R. 2005. A synthetic multicellular system forprogrammed pattern formation Nature 434, 11301134.

[38] Shou, W., Ram, S. and Vilar, J. M. G. 2006. Syntheticcooperation in engineered yeast populations. Proc. Natl.

Acad. Sci. USA 104, 1877-1882.[39] Brenner, K., Karig, D. K., Weiss, R. and Arnold, F. H.

2007. Engineered bidirectional communication mediates aconsensus in a microbial biofilm consortium. Proc. Natl.

Acad. Sci. USA 104, 17300-17304.

12

Page 14: How to Make a Synthetic Multicellular Computer · minimal sets of Boolean units required to solve the given problem at lowest cost using cellular consortia. Our analysis reveals that

Synthetic multicellular computers Javier Macia and Ricard V. Sole 13

[40] Tamsir, A., Tabor, J. J. and Voigt, C.A. 2010. Robustmulticellular computing using genetically encoded NORgates and chemical wires Nature 469, 212215

[41] Regot, S., Macia, J., Conde, N., Furukawa, K. et al. 2011.Distributed biological computation with multicellular engi-neered networks. Nature 469, 207211.

[42] Macia, J., Posas, F. and Sole, R. V. 2012. DistributedComputation: The New Wave of Synthetic BiologyDevices. Trends Biotech. 30, 342-349

[43] Li, B. and, You, L. 2011. Division of logic labour. Naturevol 496, 171-172

[44] McGregor S, Vasas V, Husbands P, Fernando C.2012. Evolution of Associative Learning in Chemi-cal Networks. PLoS Comput Biol 8(11): e1002739.doi:10.1371/journal.pcbi.1002739

[45] Enderton, H. 2001. A Mathematical Introduction to Logic,second edition. Harcourt Academic Press

[46] Marchisio, M. A. and Stelling, J. 2009. Computationaldesign tools for synthetic biology. Curr. Opin. Biotech. 20,479-485.

[47] Rodrigo, G. and Jaramillo, A. 2007. Computational designof digital and memory biological devices. Syst. Synth. Biol.1, 183-195.

[48] Cao, H., Romero-Campero, F.-J., Heeb, S., Camara, S.and Krasnogor, N. 2010. Evolving cell models for systemsand synthetic biology. Syst. Synth. Biol. 4, 55-84.

[49] Rodrigo, G., Carrera, J. and Jaramillo, A. 2007. Genetdes:automatic design of transcriptional networks. Bioinformat-ics 23, 18571858.

[50] Huynh, L., Kececioglu, J., Koppe, M. and Tagkopoulos,I. 2012. Automatic Design of Synthetic Gene Circuitsthrough Mixed Integer Non-linear Programming. PLoSONE 7(4): e35529.

[51] Fran cois, P. and Hakim, V. 2004. Design of geneticnetworks with specified functions by evolution in silicoProc. Natl. Acad. Sci. USA 101, 580-585

[52] Dasika, M. S. and Maranas, C.D. (2008) Optcircuit: anoptimization based method for computational design ofgenetic circuits. BMC Syst Biol 2: 24.

[53] Marchisio, M. A. and Stelling, J.. 2011. Automatic Designof Digital Synthetic Gene Circuits. PLoS Comput. Biol. 7,e1001083.

[54] Tononi, G., Sporns, O. and Edelman, G.M. 1999. Mea-sures of degeneracy and redundancy in biological networks.Proc. Natl. Acad. Sci. USA 96, 3257-3262.

[55] Siuti, P., Yazbek, J., Lu, T.K. 2013. Synthetic circuitsintegrating logic and memory in living cells. Nature

Biotechnology. doi:10.1038/nbt.2510, or Bonnet et al.Amplifying Genetic Logic Gates. Science DOI: 10.1126/sci-ence.1232758

[56] Benenson, Y. 2012. Biomolecular computing systems:principles, progress and potential. Nature Rev. Genet. 13,455-468.

[57] Auslander, S, Auslander D, Mller M, Wieland M. andFussenegger M.. 2012. Programmable single-cell mam-malian biocomputers. Nature 487, 123-127.

[58] Weber, W. et al.. 2007. Synthetic ecosystems based onairborne inter- and intrakingdom communication. Proc.Natl. Acad. Sci. U.S.A. 104, 1043510440.

[59] Brenner, K. et al. (2008) Engineering microbial consortia:a new frontier in synthetic biology. Trends Biotech. 28,483489

[60] Wintermute, E.H. and Silver, P.A. (2010) Dynamics in themixed microbial concourse. Genes Dev. 24, 26032614 80

[61] Song, H. et al. -2009. Spatiotemporal modulation of bio-diversity in a synthetic-mediated ecosystem. Nat. Chem.Biol. 5, 929935

[62] Smaldon, J., Romero-Campero FJ, Fernndez Trillo F,Gheorghe M, Alexander C, Krasnogor N. 2010. A computa-tional study of liposome logic: towards cellular computingfrom the bottom up. Syst. Synth. Biol. 4, 157-179.

[63] Chang, T. M. S. 2005. Therapeutic applications of poly-meric artificial cells. Nature Rev. Drug Discov. 4, 221-235.

[64] Auslander S, Wieland M, Fussenegger M. 2012. Smartmedication through combination of synthetic biology andcell microencapsulation. Metab Eng. 14, 252-60.

[65] Banga, J. R. 2008. Optimization in computational systemsbiology. BMC Syst. Biol. 2, 47.

13