Emerging Technologies of Computation

25
Emerging Technologies of Computation Montek Singh COMP790-084 Nov 15, 2011

description

Emerging Technologies of Computation. Montek Singh COMP790-084 Nov 15, 2011. Today: Computing using DNA. Two different technologies TODAY: DNA as biochemical computer DNA molecules encode data enzymes, probes etc. manipulate data Thurs: DNA used to assemble electronic computer - PowerPoint PPT Presentation

Transcript of Emerging Technologies of Computation

Page 1: Emerging Technologies of Computation

Emerging Technologies of Computation

Montek SinghCOMP790-084Nov 15, 2011

Page 2: Emerging Technologies of Computation

Two different technologies

◦ TODAY: DNA as biochemical computer DNA molecules encode data enzymes, probes etc. manipulate data

◦ Thurs: DNA used to assemble electronic computer DNA molecules used as scaffolding nanoscale electronic components piggyback DNA assembles the computer

Today: Computing using DNA

Page 3: Emerging Technologies of Computation

“I was fascinated. With my own hands, I was creating DNA that did not exist in nature.”

Leonard M. AdlemanScientific American, August 1998

Page 4: Emerging Technologies of Computation

What is a DNA computer?◦ A system that manipulates DNA to solve

mathematical problems

◦ How is information represented? In DNA molecules

◦ How is information manipulated? Using enzymes and ligases

◦ How do you obtain gain/amplification? DNA replication

◦ How do you read output? mechanical isolation, separation, probes

Computing with DNA

Page 5: Emerging Technologies of Computation

4 types of molecular building blocks◦ Adenine, Thymine, Guanine, Cytosine◦ Shortened to 4 symbols: A, T, G, C

Double-helix structure◦ complementary strands◦ A and T bond with each other◦ G and C bond with each other

Basics of DNA

Page 6: Emerging Technologies of Computation

Watson-Crick pairing◦ each strand has its complement◦ the two will “anneal” (twist around each other)

weak hydrogen bonds break easily with heat

◦ non-complementary strands will not anneal

Basics of DNA

Page 7: Emerging Technologies of Computation

Polymerases◦ copy information◦ from a strand template, make its complement◦ need a “start signal”

a short DNA fragment, or primer starts adding symbols to the primer zips it up!

Basics of DNA

Page 8: Emerging Technologies of Computation

Ligases◦ covalently bonds DNA molecules together◦ joins two pieces into single strand◦ nature’s repair mechanism!

Basics of DNA

Page 9: Emerging Technologies of Computation

Nucleases◦ scissors to cut DNA strands◦ some nucleases will search for, and cut at, only

specific sequences◦ e.g.: EcoRI (from E. coli) cuts after the G in GAATTC

Basics of DNA

Page 10: Emerging Technologies of Computation

Technique to separate molecules in a slab of gel◦ current applied to

gel◦ DNA is –vely

charged◦ shorter strands

move faster than longer ones

◦ one can also weigh down specific strands by attaching metal balls to them

Basics of DNA: Gel electrophoresis

Page 11: Emerging Technologies of Computation

Mail order!◦ Write down the sequence on a piece of paper◦ Send to a synthesis facility◦ Wait 10 days◦ Receive 1018 molecules in a test tube

Today’s price [from www.genscript.com]

DNA Synthesis

Page 12: Emerging Technologies of Computation

To build a computer, only two things are really needed◦ a method of storing information◦ a few simple operations for acting on that

informationTuring machine

Is DNA good enough?◦ great way to store the “blueprint of life”◦ enzymes (polymerases and ligases) can operate◦ Is this enough? YES!

How do we make DNA compute?

Page 13: Emerging Technologies of Computation

Hamiltonian Path Problem◦ given: a directed graph, G◦ given: specified start and end nodes, s and t◦ definition: Hamiltonian path is one that goes from

start node to end node, passing through each remaining node exactly once

◦ decide: whether a Hamiltonian path exists for <G,s,t>

Like all good problems, this one is NP-complete

Let’s choose a problem!

Page 14: Emerging Technologies of Computation

Given graph with n vertices,1. Generate a set of random paths through th

graph2. For each path:

a. check if path has correct start and end nodesb. check if path passes through exactly n nodesc. check if each vertex is visitedRemove path if it fails any of these checks

3. If set is not empty, report that a Hamiltonian path exists.

An algorithm

Page 15: Emerging Technologies of Computation

Hamiltonian Path Problem◦ 7 cities, 14 nonstop flights◦ takes about a min for most of us

Smaller problem◦ 4 cities◦ for illustration

Adleman’s DNA computer

Page 16: Emerging Technologies of Computation

Use DNA fragments to code cities and flights◦ each city X has two

parts to its name (X1X2) and complement

(X’1X’2)◦ a flight also has 2 parts

flight from X1X2 to Y1Y2 has sequence: (X2Y1)

Coding the problem

Page 17: Emerging Technologies of Computation

Synthesize:◦ complements of city

names (X’1X’2)◦ flights (X2Y1)

A pinch of each has 1014 molecules◦ throw them all into a

test tube◦ add water, ligase, salt◦ one drop, one second!

Coding the problem

Page 18: Emerging Technologies of Computation

Each flight bonds only with complements of its start and end cities:◦ flights (X2Y1)◦ bonds with (X’1X’2) and

(Y’1Y’2)◦ ligase seals fragments

Sequences grow:◦ Atlanta-Boston◦ Atlanta-Boston-Chicago◦ …

What happened?

Page 19: Emerging Technologies of Computation

1014 or so parallel computations!

All paths created at once

Enormous parallelism!

Page 20: Emerging Technologies of Computation

How to weed out the paths that were not Hamiltonian?

Answer:◦ clever use of probes, polymerization, gel

electrophoresis, etc.

Challenge

Page 21: Emerging Technologies of Computation

Gain:◦ Want to weed out the incorrect paths◦ Want to amplify correct paths

Strategy:◦ Add 2 primers

1. add last name of start city alerts polymerase to copy the right city strings complements of sequences with the right start city

2. add complement of the first name of the end city alerts polymerase to copy the right flight sequences with the right end city

◦ Exponential growth!

Gain/Amplification

Page 22: Emerging Technologies of Computation

Use gel electrophoresis◦ short solutions do not go through all cities

move faster◦ keep long ones (length 24)

Discard the short ones

Page 23: Emerging Technologies of Computation

Use metal probes◦ e.g., specific probe for Boston◦ sticks to only those paths that contain Boston◦ electrophoresis to weed out others◦ heat and repeat

Discard the ones that skip cities

Page 24: Emerging Technologies of Computation

If there is any DNA left, there is a Hamiltonian Path!

Also possible to “read out” the path [see refs.]

Final step

Page 25: Emerging Technologies of Computation

highly parallel◦ 1014 solutions simultaneously explored in about 1

second highly energy efficient

◦ 2 1019 ligation operations per joule◦ theoretical max is 34 1019 joule◦ today’s computers? ~ 109 – 1010 ops/joule

Final comments