450 likes | 535 Views
Synthesizing Stochasticity in Biochemical Systems. Marc Riedel. Electrical & Computer Engineering. University of Minnesota. C I R C U I T S & B I O L O G Y. joint work with. Jehoshua (Shuki) Bruck. Caltech. Brian Fett. Univ. of Minnesota. R I E D E L lab @ U MN. Synthetic Biology.
E N D
Synthesizing Stochasticityin Biochemical Systems Marc Riedel Electrical & Computer Engineering University of Minnesota CIRCUITS & BIOLOGY joint work with Jehoshua (Shuki) Bruck Caltech Brian Fett Univ. of Minnesota RIEDELlab @ UMN
Synthetic Biology Engineering novel functionality in biological systems. View engineered biochemistry as a form of computation. inputs computation outputs Biochemical Reactions Molecular Triggers Molecular Products E. Coli
Design Scenario View engineered biochemistry as a form of computation. Bacteria are engineered to produce an anti-cancer drug: triggering compound drug E. Coli
Design Scenario Bacteria invade the cancerous tissue: cancerous tissue
Design Scenario The trigger elicits the bacteria to produce the drug: Bacteria invade the cancerous tissue: cancerous tissue
Design Scenario The trigger elicits the bacteria produce the drug: Problem: patient receives too high of a dose of the drug. cancerous tissue
Design Scenario Conceptual design problem. • Bacteria are all identical. • Population density is fixed. • Exposure to trigger is uniform. Constraints: Requirement: • Control production of drug.
Design Scenario cancerous tissue Approach: elicit a fractional response.
Synthesizing Stochasticity E. Coli Approach: engineer a probabilistic response in each bacterium. produce drug with Prob.0.3 triggering compound don’t produce drug with Prob.0.7
Synthesizing Stochasticity Generalization: engineer a probability distribution on logical combinations of different outcomes. A with Prob.0.3 B with Prob.0.2 cell C with Prob.0.5
Synthesizing Stochasticity A and B with Prob.0.3 B and C with Prob.0.7 Generalization: engineer a probability distribution on logical combinations of different outcomes. A with Prob.0.3 B with Prob.0.2 cell C with Prob.0.5
Synthesizing Stochasticity A and B with Prob.0.3 B and C with Prob.0.7 Generalization: engineer a probability distribution on logical combinations of different outcomes. X Y cell Further: program probability distribution with (relative) quantity of input compounds.
CAD Engineers doing Biology Why? • Specific computational expertise: with data structures and algorithms for analyzing and manipulating discrete designs over a large state space. How? • Cast problems in a computational language: with well-defined, quantitative inputs and outputs; tackling analysis and synthesis systematically.
Biochemical Reactions Reaction (specifies the relative rate of occurrence) k 1 molecule of type A combines with 2 molecules of typeB to produce 2 molecules of type C.
Biochemical Reactions (specifies the relative rate of occurrence) k • Large types (e.g. proteins, enzymes, RNA). • Small quantities (e.g., ~103molecules/cell). • Complex interactions. Reaction 1 molecule of type A combines with 2 molecules of typeB to produce 2 molecules of type C.
Discrete Analysis R1 R2 R3 e.g., Track discrete (i.e., integer) quantities of molecular types. “States” A B C S1 4 7 5 S2 2 6 8 S3 22 0 997 A reaction transforms one state into another:
Discrete Analysis S1 = [5, 5, 5] R1 R2 R3 S2 = [4, 7, 4] State [A, B, C] S3 = [2, 6, 7] S4 = [1, 8, 6]
Discrete Analysis Biochemical Reactions inputs computation outputs Quantities of Different Types Quantities of Different Types
Discrete Analysis Biochemical Reactions inputs computation outputs Quantities of Different Types Quantities of Different Types A = 1000 A = 0 B= 333 B = 1334 C = 666 C = 226
Probabilistic Analysis R1 R2 R3 • Its rate constant (i.e., its ki). • The quantities of its reactants. The probability that a given reaction is the next to fire is proportional to: See D. Gillespie, “Stochastic Chemical Kinetics”, 2006.
Probabilistic Analysis Ri For each reaction let Choose the next reaction according to:
Probabilistic Lattice start [3, 3, 3] p p 1 3 p 2 [2, 2, 6] [2, 6, 1] [5, 1, 2] p 6 p p p p 4 p 7 8 9 5 [1, 1, 9] [1, 5, 4] [4, 4, 0] [4, 0, 5] p 12 p p p 10 11 13 [0, 0, 12] [3, 3, 3] + + + + p p p p ( p p p p ) p ( p p p p ) p p p 1 4 10 11 1 5 2 6 12 2 7 3 8 3 9 13
Probabilistic Response Biochemical Reactions inputs computation outputs Probability Distribution on Quantities of Different Types Quantities of Different Types
Probabilistic Response A with Prob.0.3 Biochemical Reactions B with Prob.0.4 cell C with Prob.0.3 inputs computation outputs Probability Distribution on Quantities of Different Types X = 30 Quantities of Different Types Y= 40 Z = 30 Achievable by design? Yes. Found in nature? Yes.
Natural Stochasticity “Choice” Dead Cell Lambda Bacteriophage (Adam Arkin, 1998) Hijack (Lysis) Stealth (Lysogeny)
Natural Stochasticity “Choice” Dead Cell “Portfolio” of Responses Prob. 0.2 Prob. 0.8
Synthesizing Stochasticity Contribution of this work: • General method for synthesizing a set biochemical reactions that produces a specified probability distribution. Method is: • Precise. • Robust. • Programmable. • Modular and extensible.
Synthesizing Stochasticity Example For types d1, d2, and d3, program the response: Solution Setup initializing reactions: Initialize e1, e2, and e3, in the ratio: 30 : 40 : 30
Synthesizing Stochasticity Example For types d1, d2, and d3, program the response: Solution (cont.) Setup reinforcing reactions:
Synthesizing Stochasticity Example For types d1, d2, and d3, program the response: Solution (cont.) Setup stabilizing reactions:
Synthesizing Stochasticity Example For types d1, d2, and d3, program the response: Solution (cont.) Setup purifying reactions:
Synthesizing Stochasticity d1 with Prob. d2 with Prob. d3 with Prob. Initialize e1, e2, and e3 in the ratio: x : y : z Result Mutually exclusive production of d1, d2, and d3:
General Method Initializing Reactions Reinforcing Reactions Stabilizing Purifying Working Reactions where
General Method Initializing Reactions Reinforcing Reactions Stabilizing Purifying Working Reactions where
General Method Initializing Reactions For alli,to obtaindiwith probabilitypi, selectE1,E2,…, Enaccording to: (where Ei is quantity of ei) Use as appropriate in working reactions:
Error Analysis » << » << ' ' ' ' ' ' ' ' ' ' k k k k k i i i ij ij 2 = = = = l = l ' ' ' ' ' ' ' ' ' ' k k 1 , k k , k i i i ij ij Require Let for three reactions (i.e.,i, j= 1,2,3). Performed 100,000 trials of Monte Carlo.
Functional Dependencies Generalization: engineer a probability distribution with a functional dependence on input quantities. X Y cell Approach: deterministic “pre-processing”.
Modular Synthesis Deterministic Module Stochastic Module . . . . . . . . . initializing,reinforcing,stabilizing, purifying, andworking reactions linear,exponentiation, logarithm,raising-to-a-power,etc.
Synthesizing Stochasticity • (potential) Applications:biochemical sensing, drug production, disease treatment. • (immediate) Impetus: framework for analyzing and characterizing the stochastic behavior of natural biological systems. Synthesizing Stochasticity in Biochemical Systems
Modeling Natural Systems Lambda Bacteriophage(Adam Arkin, 1998) • Real model: 117 reactions in 61 types. • Our synthetic model: 19 reactions in 17 types. Curve-fits for data from Monte Carlo simulations for both the natural and synthetic models, sweeping the quantity of the input type moi from 1 through 10.
Discussion Computational Synthetic Biology vis-a-vis Technology-Independent Synthesis Experimental Design vis-a-vis Technology Mapping • Synthesize a design for a precise, robust, programmable probability distribution on outcomes – for arbitrary types and reactions. • Implement design by selecting specific types and reactions – say from “toolkit”, e.g. MIT BioBricks repository of standard parts.
Acknowledgements Sponsors: IBM RochesterBlue Gene Development Group NIH “Alpha” ProjectCenter for Genomic Experimentation and Computation (P50 HG02370)
Circuit Modeling inputs outputs Circuit Model defects, variations, uncertainty, etc.: 0 0 1 1 0 Characterize probability of outcomes.
Circuit Modeling inputs outputs stochastic logic Model defects, variations, uncertainty, etc.: p1 = Prob(one) 0 0,1,1,0,1,0,1,1,0,1,… 1 1,0,0,0,1,0,0,0,0,0,… 0 p2 = Prob(one)
Circuit Modeling inputs outputs stochastic logic Model defects, variations, uncertainty, etc.: 0 1 0