Presentation is loading. Please wait.

Presentation is loading. Please wait.

Writing and Compiling Code into Biochemistry Marc Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics.

Similar presentations


Presentation on theme: "Writing and Compiling Code into Biochemistry Marc Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics."— Presentation transcript:

1 Writing and Compiling Code into Biochemistry Marc Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics and Computational Biology University of Minnesota PSB ─ Kona, Hawaii, Jan. 7, 2010

2 Students Electrical & Computer Engineering University of Minnesota Brian FettAdam Shea Keshab Parhi Distinguished McKnight University Professor; Edgar F. Johnson Professor; Electrical & Computer Engineering University of Minnesota Acknowledgements

3 “Minnesota Farmer” Most of the cells in his body are not his own! Most of the cells in his body are not even human! Most of the DNA in his body is alien! Who is this guy? Acknowledgements

4 “Minnesota Farmer” 100 trillion bacterial cells of at least 500 different types inhabit his body. Who is this guy? He’s a human-bacteria hybrid: vs. only 1 trillion human cells of 210 different types. [like all of us]

5 “Minnesota Farmer” Who is this guy?What’s in his gut? 100 trillion bacterial cells of at least 500 different types inhabit his body. He’s a human-bacteria hybrid: vs. only 1 trillion human cells of 210 different types. [like all of us]

6 About 3 pounds of bacteria! What’s in his gut? “E. coli, a self-replicating object only a thousandth of a millimeter in size, can swim 35 diameters a second, taste simple chemicals in its environment, and decide whether life is getting better or worse.” – Howard C. Berg

7 “Stimulus, response! Stimulus response! Don’t you ever think!” We should put these critters to work…

8 Synthetic Biology Positioned as an engineering discipline. –“Novel functionality through design”. – Repositories of standardized parts. Driven by experimental expertise in particular domains of biology. – Gene-regulation, signaling, metabolism, protein structures …

9 Biochemistry in a Nutshell DNA: string of n nucleotides ( n ≈ 10 9 )... ACCGTTGAATGACG... Nucleotides: Amino acid: coded by a sequence of 3 nucleotides. Proteins: produced from a sequence of m amino acids ( m ≈ 10 3 ) called a “gene”.

10 Biochemical Reactions: how types of molecules combine. + + 2a2a b c Playing by the Rules

11 Biochemical Reactions 9 6 7 cell proteinscount + 8 5 9 Discrete chemical kinetics; spatial homogeneity.

12 Biochemical Reactions + + + slow medium fast Relative rates or (reaction propensities): Discrete chemical kinetics; spatial homogeneity.

13 Protein-Protein Chemistry [computational] Biochemistry y x quantities z Biochemical [computation] quantity

14 Multiplication pseudo-code biochemical code

15 Exponentiation biochemical code pseudo-code

16 Raising-to-a-Power pseudo-code biochemical code

17 then Mario Luigi Biochemical rules are inherently parallel. Sequentialize? Step 1: Step 2: [nearly] Rate Independent Biochemical Computation )( 1 rfg  )( 2 gfb  M1M1 M2M2

18 Module Locking slow + + + Sequentialize computation with only two rates: “ fast ” and “ slow ”. + fast

19 Lock phases or modules with keys. Keys are generated by keysmiths; but indicators consume keysmiths. Example: Multiplication

20 Key Generation Two-phase protocol to ensure only one type of key is present.

21 Logic Synthesis SPICE Register Level Design Behavioral Specification (e.g., DSP function) Structural Description (e.g., memory and functional units) Circuit-Level Description (e.g., NAND2 and D flip-flops) waveforms Integrated Circuits Design Automation for

22 Biochemistry Logic Synthesis SPICE Register Level Design Behavioral Specification (e.g., DSP function) Structural Description (e.g., memory and functional units) Biochemical Netlist (e.g., Proteins, Enzymes) Integrated Circuits Design Automation for waveforms Biochemical Synthesis SSA Engine “Stochastic Transient Analysis of Biochemical Systems” STA Engine Brian’s Automated Modular Biochemical Instantiator Verilog Elements of Register-based Biochemical computation

23 Example: FIR Filter Two-Tap Moving-Average Filter: X 1/α=1/β= Y

24 Example: FIR Filter Two-Tap Moving-Average Filter: module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

25 Example: FIR Filter module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

26 Example: FIR Filter module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

27 Example: FIR Filter module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

28 Example: FIR Filter module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

29 Example: FIR Filter module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

30 Example: FIR Filter module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule module MA(X, Y); input X; output Y; reg Xn; always begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule

31 Example: FIR Filter Two-Tap Moving-Average Filter: Chemical Design: Filter

32 Example: FIR Filter Two-Tap Moving-Average Filter:

33 Example: IIR Filter Biquad versatile infinite-impulse responses filter:

34 Example: IIR Filter Biquad versatile infinite-impulse responses filter:

35 Example: IIR Filter

36

37

38 The probability that a given reaction is the next to fire is proportional to: Its rate. The quantities of its reactants. See D. Gillespie, “Stochastic Chemical Kinetics”, 2006. Stochastic Kinetics + + + k1k1 k2k2 k3k3

39 It’s not a bug, it’s a feature.

40 Biochemical Reactions computationinputsoutputs Molecular Triggers Molecular Products Synthesizing Biological Computation

41 How can we control the quantity of molecular product at the populational level? Biological Computation at the Populational Level

42 product trigger Engineer a probabilistic response in each cell. with Prob. 0.3 product with Prob. 0.7 Synthesizing Stochasticity

43 Obtain a fractional response. Biological Computation at the Populational Level

44 Z        YX X Prwith Y X fixed Biochemical Reactions [stochastic] Biological Computation

45 Discussion Synthesize a design for a precise, robust, programmable probability distribution on outcomes – for arbitrary types and reactions. Computational Chemical Design vis-a-vis Technology-Independent Logic Synthesis Implement design by selecting specific types and reactions – say from “toolkit”. Experimental Design vis-a-vis Technology Mapping in Circuit Design

46 DNA Strand Displacement X1X1 X2X2 X3X3 + Erik Winfree’s group at Caltech: “DNA as a Universal Substrate for Chemical Kinetics.”

47 Methods and CAD tools for generating nearly rate independent biochemical netlists for: nearly any memoryless function (e.g., curve-fitting). Where are we? Methods for generating any register-to-register computation (e.g., DSP functions). Where are we headed? A technology-independent biochemical CPU. Discussion

48 Support CAREER Award 0845650 MARCO (SRC/DoD) Contract 2003-NT-1107 Blue Gene Development Group. Rochester, MN Biomedical Informatics & Computational Biology UMN / Mayo Clinic / IBM

49 R1R1 R2R2 R3R3 See Dan Gillespie, The probability that a given reaction is the next to fire is proportional to: Its rate. The number of ways that the reactants can combine. “Exact Stochastic Simulation of Coupled Chemical Reactions,”1977. “Stochastic Chemical Kinetics,” 2006. Stochastic Chemical Kinetics Playing by the Rules

50 S 1 = [5, 5, 5] 0 Choose the next reaction according to: Stochastic Simulation Algorithm (SSA) RiRi where R1R1 R2R2 R3R3

51 RiRi R1R1 R2R2 R3R3 Choose the time of the next reaction according to: S 1 = [5, 5, 5] 0 Stochastic Simulation Algorithm (SSA)

52 S 1 = [5, 5, 5] 0 S 2 = [4, 7, 4] Choose R 3 and t = 3 seconds. R1R1 R2R2 R3R3 S 3 = [2, 6, 7] 4 Choose R 1 and t = 1 seconds. S 4 = [1, 8, 6] 6 Choose R 3 and t = 2 seconds. 3 Choose R 2 and t = 1 seconds. Stochastic Simulation Algorithm (SSA)

53 S 1 = [5, 5, 5] 0 S 2 = [4, 7, 4] Choose R 3 and t = 3 seconds. S 3 = [2, 6, 7] 4 Choose R 1 and t = 1 seconds. S 4 = [1, 8, 6] 6 Choose R 3 and t = 2 seconds. Choose R 2 and t = 1 seconds. 37 Stochastic Simulation Algorithm (SSA)


Download ppt "Writing and Compiling Code into Biochemistry Marc Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics."

Similar presentations


Ads by Google