1 / 40

Synthesizing Sequential Register-Based Computation with Biochemistry

Synthesizing Sequential Register-Based Computation with Biochemistry. Marc Riedel. Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics and Computational Biology University of Minnesota. IWBDA ─ San Francisco, July 27, 2009 . Biological Process.

marvel
Télécharger la présentation

Synthesizing Sequential Register-Based Computation with Biochemistry

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Synthesizing Sequential Register-Based Computation with Biochemistry Marc Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics and Computational BiologyUniversity of Minnesota IWBDA ─ San Francisco, July 27, 2009

  2. BiologicalProcess [computational]Synthetic Biology “There are knownknowns; and there are unknownunknowns; but today I’ll speak of the knownunknowns.” – Donald Rumsfeld, 2004 Quantities of Different Types Quantities of Different Types

  3. BiologicalProcess M N = 2 = = N N f f ( ( M M ) ) M [computational]Synthetic Biology “There are knownknowns; and there are unknownunknowns; but today I’ll speak of the knownunknowns.” – Donald Rumsfeld, 2004

  4. log ( ) N M = 2 BiologicalProcess = N M a P N = M M N = 2 = N f ( M ) M [computational]Synthetic Biology “There are knownknowns; and there are unknownunknowns; but today I’ll speak of the knownunknowns.” – Donald Rumsfeld, 2004

  5. BiologicalProcess [computational]Synthetic Biology “There are knownknowns; and there are unknownunknowns; but today I’ll speak of the knownunknowns.” – Donald Rumsfeld, 2004 module MA(clk, X, Y); input X; input clk; output Y; reg Xn; always @(clk) begin Y = (1/2 * X) + (1/2 * Xn); Xn = X; end endmodule Verilog

  6. BiologicalProcess [computational]Synthetic Biology “There are knownknowns; and there are unknownunknowns; but today I’ll speak of the knownunknowns.” – Donald Rumsfeld, 2004 Quantities of Different Types ProbabilityDistribution on outcomes

  7. X BiologicalProcess Y é ù X Z with Pr ê ú + X Y ë û [computational]Synthetic Biology “There are knownknowns; and there are unknownunknowns; but today I’ll speak of the knownunknowns.” – Donald Rumsfeld, 2004 fixed

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

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

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

  11. R1 R2 R3 Playing by the Rules Stochastic Chemical Kinetics 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. SeeDan Gillespie, • “Exact Stochastic Simulation of Coupled Chemical Reactions,”1977. • “Stochastic Chemical Kinetics,” 2006.

  12. Stochastic Simulation Algorithm (SSA) R1 R2 R3 S1 = [5, 5, 5] 0 Ri Choose the next reaction according to: where

  13. R1 R2 R3 Stochastic Simulation Algorithm (SSA) S1 = [5, 5, 5] 0 Ri Choose the time of the next reaction according to:

  14. Stochastic Simulation Algorithm (SSA) S1 = [5, 5, 5] 0 Choose R3 and t = 3 seconds. R1 R2 R3 S2 = [4, 7, 4] 3 Choose R1 and t = 1 seconds. S3 = [2, 6, 7] 4 Choose R3 and t = 2 seconds. S4 = [1, 8, 6] 6 Choose R2 and t = 1 seconds.

  15. Stochastic Simulation Algorithm (SSA) S1 = [5, 5, 5] 0 Choose R3 and t = 3 seconds. S2 = [4, 7, 4] 3 7 Choose R1 and t = 1 seconds. S3 = [2, 6, 7] 4 Choose R3 and t = 2 seconds. S4 = [1, 8, 6] 6 Choose R2 and t = 1 seconds.

  16. Example: Exponentiation Produce of type n. Bin LadenSchool of Terrorism + fast + a n a n 2 obtain 1 of n med a slow m b + v . fast + n b 2 c b M obtain of n 2 M 2 fast b med . c n Start with M of type m. Use working types a,b,c. Start with anynon-zero amount of types aandn. Start with no amountof types bandc.

  17. g f ( r ) = 1 Mario b f ( g ) = 2 Luigi [computational]Rate Independent Biochemical Computation Biochemical rules are inherently parallel. “The score is still Q to 12.” Sequentialize? Step 1: then Step 2:

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

  19. Logic Synthesis SPICE Register Level Design Integrated Circuits Design Automation for 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

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

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

  22. 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

  23. 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

  24. 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

  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

  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

  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

  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

  29. Example: FIR Filter Two-Tap Moving-Average Filter: Chemical Design: Clocking and Locking Filter

  30. Example: FIR Filter Two-Tap Moving-Average Filter:

  31. Synthesizing Biological Computation Biochemical Reactions inputs computation outputs Molecular Triggers Molecular Products

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

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

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

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

  36. Gene Regulation • Analogy with computation is apt. • Tinkering with gene regulation is hard. Is this the only way to implement computation with biology?

  37. 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 Experimental Design vis-a-vis Technology Mapping in Circuit Design • Implement design by selecting specific types and reactions – say from “toolkit”.

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

  39. Acknowledgements students at theUniv. of Minnesota Adam Shea Brian Fett Weikang Qian Caltech Shuki Bruck Erik Winfree

  40. Support MARCO (SRC/DoD) Contract 2003-NT-1107 CAREER Award 0845650 Biomedical Informatics & Computational BiologyUMN / Mayo Clinic / IBM Blue Gene DevelopmentGroup. Rochester, MN

More Related