Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computing Beyond Silicon Valley Summer School at Caltech Science undergraduate students were brought together to interact and understand the connections.

Similar presentations


Presentation on theme: "Computing Beyond Silicon Valley Summer School at Caltech Science undergraduate students were brought together to interact and understand the connections."— Presentation transcript:

1 Computing Beyond Silicon Valley Summer School at Caltech Science undergraduate students were brought together to interact and understand the connections between computer science and other disciplines Gestalt principle Physics of Computation, Molecular Computing, Biomolecular Computing, and Quantum Computing A month in Pasadena

2 Branching in Biological Models of Computation Blair Andres-Beck, Vera Bereg, Stephanie Lee, Mike Lindmark, Wojciech Makowiecki Mike Lindmark, Wojciech Makowiecki

3 Branching in DNA Computation Chose several models of DNA computation (in particular the sticker model and DNA solution to small SAT problems) Examined the implementation of if…else statements and looping Branching allows easier mapping of conventional algorithms

4 Design Criteria Any change must preserve the existing functionality of the model Branching –Operation selection based on current data and instruction Looping –Further instructions based on test condition –Nested loops; that is, looping that doesn’t rely on a single marker

5 The Sticker Model Presented in “ (1996) Presented in “A Sticker Based Model for DNA Computation” (1996) Two types of ssDNA molecules –memory strand –complimentary stickers Four operations allow universal computation: –set, clear, separate and combine Parallel processing/computation Robotic assistance needed

6 Bit Representation

7 Set and Clear

8 Combine and Separate

9 Simple branching and looping in the Sticker Model Idea: use current mechanical operations to do branching (if else) and looping

10 Branching with existing operations Perform a separate operation based on evaluation of branch condition Act on each vial independently –“If” statement carried out on true, “else” on false Recombine vials after “if” statement Note: a vial is a small beaker

11 Branching and Looping procedures Example of usage: Minimal Set Cover problem

12 Looping with existing operations Test for loop condition –Fluorescent markers Can be detected by the robotic assistant Can have more than one type, allowing nested looping Choose next instruction based on presence or absence of fluorescence Problems –Slow (as the separate operation is difficult and slow) –Reliance on intervention outside the beaker (can’t mix, shake and get the answer) –Experimental error (eg.: some florescence already present)

13 Branching through DNA Transcriptional Logic Idea: use an OR gate for branching Idea: use an OR gate for branching

14 DNA Transcriptional Logic How it works –Transcription factor binds to the promoter region –Activated by enzyme RNA Polymerase [RNAP] –Unwinds DNA, makes RNA until terminator is reached –input and output are programmable!

15 Implementation of Branching The OR gate allows the if-else statement to end and the program to continue

16 Definition of Branching Branching allows for conditional if-else statements { if (condition) {output 1}; else {output 2}; } continuation …

17 Properties of the Branching Pros –Programmable input –Easy to track progress (by taking a sample and approximating the concentrations of outputs) –Does not require outside intervention Cons –Does not allow parallelism –Inefficient and fairly slow (although speed can be controlled) –Requires large number of promoter -transcription factor pairs

18 “Smart” drug or DNA automata combined with Sticker Model Idea: use “if else” statements from “Smart” drug model (with stickers instead of drugs)

19 Automata Automata –Machine that accepts strings over specific alphabet that are in its language –Computation terminates on processing last string symbol –Accepts input if terminates in accepting state

20 “Smart” Drug Basic Idea: transport diagnosis and drug delivery (suppression) stages into the cell – No robotic intervention what-so-ever – No robotic intervention what-so-ever Basic “if else” statements, thus can do branching! Basic “if else” statements, thus can do branching! Automata with: –Hardware (restriction nuclease, ligase, FolkI) –Software and input (dsDNA molecules and dsDNA with a hairpin structure at end) –In vitro

21 “Smart” Drug

22 “Smart” drug and Sticker Model Sticker model: –Memory strand with on/off regions for bits Drug model: –Coded instructions plus coded input with a sticker as hairpin (software and input) –Reusable “rules” (hardware) –If (rule=true)  release sticker –Can do anti-stickers to clear off bits as well –Can do anti-stickers to clear off bits as well Thus SISD model By varying code and subset of “rules” can change the outcome of the computation

23 Pros and Cons Less mechanical operations used –Separation procedure might not be needed –Could possibly get rid of them all together? Eliminates one of the positive sides of sticker model (no enzymes), but our enzymes are reusable (hardware) Have SISD, can do MIMD? How to ensure that each code is related to its specific data molecule? – Do we need to ensure this at all? Randomize? – Do we need to ensure this at all? Randomize? Do the environments fit?

24 Branching in the Sticker Model using DNA Instructions The Idea: Store the program with the data, run all the programs independently.

25 Basic Ideas Encode instructions into DNA Create a DNA program counter Each DNA computes cycle: –Separate strands based on next instruction –Perform operation –Increment PC

26 Changes to the Sticker Model Instruction strand = head + instruction + … + data connector Instruction = instr code + operand code

27 Changes to the Sticker Model Add connector to data strand Addition of PC strands

28 Changes to the Sticker Model Introduction of halt No explicit combine or separate operations Use of operation selectors

29 Adding Looping Looping by restarting the PC Loop operation –Clears off PC using complement PC strands if (stage1) { … if (NOT done) { loop;}… stage1 = false; }

30 Adding Branching Add IF instruction code Use End-If IF operation Operation selectors with solid-bound stickers Trapped strands enter branching cycle –Addition of excess PC and Step strands (excluding PC End-If IF strands) –Flow by End-If IF selectors –Return trapped strands

31 The Strands

32 Advantages Reusability of data, pc, start, step, and selector strands Simple programmability –Imagine building strand from instruction pieces Ability to run more than one program concurrently –Thousands of problems at the same time

33 Disadvantages Large error rate vs. long cycle time –Must perform several separations per cycle No ability to do error correction Large number of unique sequences needed

34 Exploring Branching in SAT problems Idea: use ssDNA as clauses for the SAT problem (Adelman et al)

35 Exploring Branching in SAT problems Works in parallel checking all the solutions at once If the solution is not valid (the variables in it contradict each other and thus the clause can not be resolved) then folds on itself An if statement acts on each clause at the same time! Disadvantages: – high error rates (esp. with increase of variables) – high error rates (esp. with increase of variables) – can not be done past 20 variables – can not be done past 20 variables

36 Conclusion and future goals/work Have tried to list and describe different ways that branching in DNA computing can be thought of and realized as. There are limitations and barriers that each one of the described here models has, however, they all have their advantages, benefits and purposes. Moving beyond convertional computers and applying Gestalte principle whenever possible Have fun.

37 References..Adleman, Leonard. "Molecular computation of solutions to combinatorial problems." Science. 226 (1994): 1021--1024...Adelman, Leonard, et al. “Solutions of 20-Variable 3-SAT Problem on a DNA Computer.” Science. 296(2002): 499--502...Benenson, Yaakov, et al. “An autonomous molecular computer for logical control of gene expression.” Nature. 429(2004): 423—428...Benenson, Yaakov, et al. “Programmable and autonomous computing machine made of biomolecules.” Nature. 414(2001): 430—434...Campbell, Neil A., Jane B. Reece, and Lawrence G. Mitchell. Biology, 5th edition. Menlo Park: Benjamin Cummings, 1999...Condon, Anne. “Automata make antisense.” Nature. News and Views 2004, 429.6990(2004): 351— 352...Karp, R, et al. “Error-resilient DNA computation”. Random Structure Algorithms. 15(1999): 450-466...Lauria, Mario, Kaustubh Bhalerao, Muthu M. Pugalanthiran, and Bo Yuan. "Building blocks of a biochemical CPU based on DNA transcription logic." 3rd Workshop on Non-Silicon Computation (NSC- 3), Munich, June 2004...Lipton, C. et al. “DNA Based Computers II” DIMACS. 44(1999): 163—170...Lipton, R. “Using DNA to Solve NP-Complete Problems.” Science. 268(1995): 542--545...Liu, Q, et al. “DNA computing on surfaces.” Nature. 403(2000): 175...Lloyd et al. “DNA computing on a chip.” Nature. 403(2000): 143--144...Roweis, Sam, et al. “A Sticker Model for DNA Computation.” Journal of Computational Biology 5.4 (1998): 615--629..Tan, W, et al. “Molecular beacons for DNA biosensors with micrometer to submicrometer dimensions.” Analitical Biochem. 283.1(2000):56--63.

38


Download ppt "Computing Beyond Silicon Valley Summer School at Caltech Science undergraduate students were brought together to interact and understand the connections."

Similar presentations


Ads by Google