Title: DNA Computing Computation with the Code of Life
1DNA ComputingComputation with the Code of Life
- Michael Ang
- ltm_at_michaelang.comgt
- Interactive Telecommunications Program
- New York University
- February 16, 2007
2What is it?
- Invented by Len Adleman (1994)
- Realized combinatorial properties of DNA could be
used to solve problems encoded as strings of DNA
3Why is it interesting?
- Cross-discipline (CS meets Molecular Biology)
- High data density
- Data and computation happens at molecular level
- Each base of DNA is 0.35nm
- Massively parallel
- 1012 or more copies of DNA in a test tube
- Use biological enzymes to make these copies
- Energy efficient
- Potential to perform computation inside the body
- Though big challenges before a reality
4What is DNA?
- Source code to life
- Instructions for building and regulating cells
- Data store for genetic inheritance
- Cellular machinery (enzymes) translates DNA into
proteins, duplicates, repairs, etc. - Think of enzymes as hardware, DNA as software
5What is DNA made of?
- Composed of four nucleotides ( sugar-phosphate
backbone) - A Adenine
- T Thymine
- C Cytosine
- G Guanine
- Bond in pairs
- A T
- C G
6How does it work?
- Use specially coded DNA as initial conditions for
biological reaction - Natural enzymes duplicate DNA
- Matching DNA base pairs attach to each other
- Find answer in resulting soup of DNA strands
7Travelling Salesman
- Simple problem (at small scale)
- Complexity scales exponentially
8Algorithm
- Generate all possible routes
- Select routes that start with the initial city
and end with the destination city - Select itineraries with the correct number of
cities - Select itineraries that contain each city once
9Algorithm
- Generate all possible routes
- Select routes that start with the initial city
and end with the destination city - Select itineraries with the correct number of
cities - Select itineraries that contain each city once
10City Encoding
11Annealing
- Use a lot (1013) copies of each city and path
12Weve made all the routes
13Algorithm
- Generate all possible routes
- Select routes that start with the initial city
and end with the destination city - Select itineraries with the correct number of
cities - Select itineraries that contain each city once
14Polymerase Chain Reaction
15And repeat
16Algorithm
- Generate all possible routes
- Select routes that start with the initial city
and end with the destination city - Select itineraries with the correct number of
cities - Select itineraries that contain each city once
17Gel electrophoresis
- Race the DNA through a gel
- Shorter lengths go faster
18Algorithm
- Generate all possible routes
- Select routes that start with the initial city
and end with the destination city - Select itineraries with the correct number of
cities - Select itineraries that contain each city once
19Affinity purify
- Pull out strands matching one city at a time
20We have our answer
- Sequence result or perform more PCR reactions to
determine combinatorically - Took Adleman 7 days to run through the steps
- Actual computation took minutes
21Problems/Challenges
- Relatively high error rate in DNA
- Sometimes bases dont align properly
- Problem complexity still scales exponentially
- 200 city problem might take DNA weighing more
than Earth - Many people doubtful
22Can I do it?
- If you have access to a lab, yes
- DIY seems possible (lt500)
Personal Biocomputing Eugene Thacker
23Further Research
- Use to break DES (1995)
- Turing Machine (at least similar to) (2001)
- Play tic-tac-toe (2003)
- DNA computer to detect and treat cancer (2004)
- Use enzymes and DNA to create state machine using
mRNA as input - Output DNA sequence to suppress disease causing
gene - In vitro (petri dish) so far
- Much harder in vivo (living cell)
24Maya II Tic Tac Toe
25Maya II Logic Gates
26Maya II Fluorescent Output
27DNA Automata
28A nanoscale programmable computing machine with
input, output, software and hardware made of
biomolecules Nature 414, 430-434 (2001)
- 1012 automata run independently and in parallel
- on potentially distinct inputs
- in 120 ml
- at room temperature
- at combined rate of 109 transitions per second
- with accuracy greater than 99.8 per transition,
- consuming less than 10-10 Watt.
29(Video from Weizmann Institute)
30So what?
- Computation at molecular level
- Computation (potentially) within cells
- Operate with cellular messages as input and
output - Operate near theoretical power limits
- Computer Science implemented in Biology
- Practical applications still a dream
31To correctly gauge the practicality of molecular
computing will require inputs from experts in a
wide variety of fields including biology,
chemistry, computer science, engineering,
mathematics and physics. - Len Adleman (1995)
32References
- What is DNA - Genetics Home Reference
- DNA Computer Could Target Cancer Nanotech Web
- DNA Computing A Primer Arstechnica
- On Constructing a Molecular Computer Len
Adleman - Breaking DES using a molecular computer - D.
Boneh, C. Dunworth, and R. Lipton - Injectable Medibots Programmable DNA could
diagnose and treat cancer - Alexandra Goho - First game-playing DNA computer revealed New
Scientist - Programmable and autonomous computing machine
made of biomolecules - Benenson, Paz-Elizur,
Adar, Keinan, Livneh Shapiro - Personal Biocomputing Eugene Thacker
- Biological Nanocomputer Weizman Institute
- Computer Made from DNA and Enzymes National
Geographic News
33Thanks
- Michael Ang
- ltm_at_michaelang.comgt
- Interactive Telecommunications Program
- New York University
- February 16, 2007