Stochastic Transient Analysis of Biochemical Systems Marc D. Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics and Computational Biology University of Minnesota Brian’s Automated Modular Biochemical Instantiator (BAMBI)
[computational] Synthetic Biology [computational] Analysis “There are known ‘knowns’; and there are unknown ‘unknowns’; but today I’ll speak of the known ‘unknowns’.” – Donald Rumsfeld, 2004 Biological Process Molecular Inputs Molecular Products Known Unknown Independent Unknown Given
Gene Regulation Analogy with computation is apt. Tinkering with gene regulation is hard. Is this the only way to implement computation with biology?
Playing by the Rules
Biochemical Reactions: how types of molecules combine a2a b c Playing by the Rules
Biochemical Reactions cell proteinscount Discrete chemical kinetics; spatial homogeneity.
Biochemical Reactions slow medium fast Relative rates or (reaction propensities): Discrete chemical kinetics; spatial homogeneity.
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,” Stochastic Chemical Kinetics Playing by the Rules
S 1 = [5, 5, 5] 0 Choose the next reaction according to: Stochastic Simulation Algorithm (SSA) RiRi where R1R1 R2R2 R3R3
RiRi R1R1 R2R2 R3R3 Choose the time of the next reaction according to: S 1 = [5, 5, 5] 0 Stochastic Simulation Algorithm (SSA)
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)
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)
Playing by the Rules waveforms circuit netlist SPICE Rules for integrated circuits: amplifier v1 1 0 rin e12 rjump 1 4 1e-12 rin e12 e k e k e k rload k r k rgain k r k r k r k r k r k.dc v print dc v(9).end amplifier v1 1 0 rin e12 rjump 1 4 1e-12 rin e12 e k e k e k rload k r k rgain k r k r k r k r k r k.dc v print dc v(9).end
Playing by the Rules histogram: resulting quantities of proteins biochemical reactions Rules for biochemistry: SPICE X=100, Y = 30 X a = X b = X n = 0 Y = 0 and initial quantities of proteins Gillespie’s SSA
Where does the netlist come from? X=100, Y = 30 X a = X b = X n = 0 Y = 0 Playing by the Rules Rules for biochemistry:
Design a system that computes output quantities as functions of input quantities. Synthesizing Biological Computation Biochemical Reactions givenobtain Quantities of Different Types M N = f(M) independent for us to design specified
Start with no amount of types b and c. Example: Exponentiation Start with M of type m. Produce of type n. M 2 Use working types a, b, c. Start with any non-zero amount of types a and n. nana fast 2 med a obtain 1 of n bm slow cbn b 2 v.fast b nc med. obtain of n M 2 Bin Laden School of Terrorism
Functional Dependencies Logarithm Linear Raising-to-a-Power Exponentiation With “locking”, produces designs that are independent of rates.
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
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
S 1 = [ 5, 5, 5] 0 S 2 = [ 4, 7, 4] S 3 = [ 2, 6, 7] 4 S 4 = [ 1, 8, 6] 6 3 Stochastic Transient Analysis (STA) Extend SSA by allowing for: Forced quantities. Injected quantities. Thresholds.
S 1 = [ 5, 5, 5] 0 S 2 = [ 4, 7, 4] S 3 = [ 2, 6, 7] 7 S 4 = [ 1, 8, 6] 11 3 Stochastic Transient Analysis (STA) Set A to 1 at t = 2. Add 3 to B at t = 6. Limit C to 5 at t = 10. 9, 5] 1, Algorithmic and mathematical details are in the paper…
It’s not a bug, it’s a feature.
Example: FIR Filter Two-Tap Moving-Average Filter: X 1/α=1/β= Y
Example: FIR Filter Two-Tap Moving-Average Filter: Biochemical Design: But biochemistry executes asynchronously and in parallel….
Example: FIR Filter Two-Tap Moving-Average Filter: Biochemical Design: Filter Clocking and Locking
Timing then Mario Luigi Biochemical rules are inherently parallel. Sequentialize? Step 1: Step 2:
Module Locking slow Sequentialize computation with only two rates: “ fast ” and “ slow ”. + fast
Example: FIR Filter Two-Tap Moving-Average Filter:
Discussion Synthesize a design for a precise, robust, programmable probability distribution on outcomes – for arbitrary types and reactions. Computational Synthetic Biology 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
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? The first technology-independent biochemical ALU and CPU. Discussion
students at the University of Minnesota Brian FettAdam SheaBin Cheng Tim Mullins Senior Technical Staff Member, HPC Life Sciences Applications, IBM Systems and Technology Group Acknowledgements
PSB Surfing Mauna Kea, Hawaii Jan. 4, Bio-Design Automation Circuits and Biology CAD for Biology Further Info Circuits and Biology at UMN
Communicating Ideas