molecular computing

65
MOLECULAR COMPUTING DNA COMPUTING Donald Riggs

Upload: yestin

Post on 13-Jan-2016

55 views

Category:

Documents


0 download

DESCRIPTION

MOLECULAR COMPUTING. DNA COMPUTING Donald Riggs. Introduction Molecular Computing Adleman 1994 Conclusion Academic Programs Discussion. Introduction Molecular Computing Adleman 1994 Conclusion Academic Programs Discussion. DNA Computing. DNA Computing. Introduction - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: MOLECULAR COMPUTING

MOLECULAR COMPUTING

DNA COMPUTING

Donald Riggs

Page 2: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Introduction

Molecular Computing

Adleman 1994

Conclusion

Academic Programs

Discussion

Page 3: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Two types of molecular computing:

Specially created molecules - Rotaxane Wire into grid - FPGA Configure to form logic gates

DNA computing

Page 4: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Science, December 21, 2001Science, December 21, 2001Science, December 21, 2001

Page 5: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Watson-Crick Complemetarity Base pairs only join together in one way Pairing rules

Adenine –Thymine Guanine – Cytosine

Directionality left to right, from 5’ – 3’

5' A T C G 3'

| | | |

3' T A G C 5'

Page 6: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

5' A T C G 3'

| | | |

3' T A G C 5'

A strand beginning with a 5' end will only combine with a complementary strand beginning with a 3' end, thus the following binding is not possible.

5' A T C G 3'

| | | |

5' T A G C 3'

Page 7: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

The tripartite chemical structure of a nucleotide, the basic building block of a DNA molecule, shown here with a thymine base. [Paun et al, 1998]

Page 8: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

A schematic representation of double stranded DNA showing the “directionality” of each of the two strands. [Paun et al, 1998]

Page 9: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Polymerase – produces the complement of a single DNA strand. Requires a primer.

Ligase – joins strands of DNA together covalently. Not the same as hydrogen bonds which join bases together.

Page 10: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Annealing – formation of double-stranded DNA from single strands.

Denaturation – separation of a double-stranded DNA molecule into two single-strands.

Page 11: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Polymerase Chain Reaction – PCR

Denaturation at 94° C

Annealing at 54° C

Extension at 72° C

Page 12: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 13: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 14: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 15: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 16: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 17: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 18: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 19: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 20: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 21: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 22: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 23: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 24: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 25: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 26: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 27: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 28: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Gel electrophoresis – running a gel DNA is negatively charged

When placed in a tray containing positive and negative electrodes,

It moves through the gel from – to + The DNA is dyed so that it is visible Smaller pieces move faster (farther) A “ladder” is formed from DNA strands of

known sizes and is used for calibration

Page 29: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 30: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 31: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 32: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Molecular Computation of Solutions to Combinatorial Problems (1994)

Adleman’s seven city Hamiltonian Path problem. The graph was designed to have only one possible solution.

Page 33: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Adleman’s Algorithm:

Step 1: Generate random paths through the graph Step 2: Keep only those paths which begin with v in and

end with v out.

Step 3: If the graph has n vertices, then keep only those paths which enter exactly n vertices.

Step 4: Keep only those paths which enter all of the vertices of the graph at least once.

Step 5: If any paths remain, say ``YES'', otherwise say ``No''.

Page 34: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Vertices (cities) are represented as

20-mer strands as follows: O2 = 5’ TATCGGATCGGTATATCCGA 3’

O3 = 5’ GCTATTCGAGCTTAAAGCTA 3’

O4 = 5’ GGCTAGGTACCAGCATGCTT 3’

Page 35: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Vertices (cities) are represented as

20-mer strands as follows: O2 = 5’ TATCGGATCGGTATATCCGA 3’

O3 = 5’ GCTATTCGAGCTTAAAGCTA 3’

O4 = 5’ GGCTAGGTACCAGCATGCTT 3’

How many bits to encode 7 cities?

Page 36: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Vertices (cities) are represented as

20-mer strands as follows: O2 = 5’ TATCGGATCGGTATATCCGA 3’

O3 = 5’ GCTATTCGAGCTTAAAGCTA 3’

O4 = 5’ GGCTAGGTACCAGCATGCTT 3’

How many bits to encode 7 cities?

How long a DNA strand is required?

Page 37: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Vertices (cities) are represented as

20-mer strands as follows: O2 = 5’ TATCGGATCGGTATATCCGA 3’

O3 = 5’ GCTATTCGAGCTTAAAGCTA 3’

O4 = 5’ GGCTAGGTACCAGCATGCTT 3’

How many bits to encode 7 cities?

How long a DNA strand is required?

Why 20-mer strands?

Page 38: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Their complements are:

~O2 = 3’ ATAGCCTAGCCATATAGGCT 5’

~O3 = 3’ CGATAAGCTCGAATTTCGAT 5’

~O4 = 3’ CCGATCCATGGTCGTACGAA 5’

Page 39: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

The directed edges as:

O2→3 = 5’ GTATATCCGAGCTATTCGAG 3’

O3→2 = 5’ CTTAAAGCTATATCGGATCG 3’

O3→4 = 5’ CTTAAAGCTAGGCTAGGTAC 3’

Page 40: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 41: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

“Unfortunately, although I held the

solution in my hand, I also held about

100 trillion molecules that encoded

paths that were not Hamiltonian.

These had to be eliminated.”

[Adleman, 1998]

Page 42: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Adleman’s Algorithm:

Step 1: Generate random paths through the graph

Step 2: Keep only those paths which begin with v in and end with v out.

Step 3: If the graph has n vertices, then keep only those paths which enter exactly n vertices.

Step 4: Keep only those paths which enter all of the vertices of the graph at least once.

Step 5: If any paths remain, say ``YES'', otherwise say ``No''.

Page 43: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Step 2 of the algorithm requires that only the

DNA strands that begin at the first vertex and

end at the last vertex be kept. This

requirement was achieved using PCR. By

adding the correct primers to the solution, the

DNA strands beginning at city0 and ending at

city6 can be made to multiply exponentially.

After a sufficient amount of time, they will

make up the vast majority of the solution.

Page 44: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

The PCR works as follows:

A primer for the start city and another for the

terminal city are added to the solution

containing the result of the computation.

DNA strands containing both the starting city

and the terminal city are multiplied

exponentially.

Strands containing one of the two cities are

multiplied linearly but none of the other strands

are multiplied at all.

Page 45: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 46: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Adleman’s Algorithm:

Step 1: Generate random paths through the graph Step 2: Keep only those paths which begin with v in and

end with v out.

Step 3: If the graph has n vertices, then keep only those paths which enter exactly n vertices.

Step 4: Keep only those paths which enter all of the vertices of the graph at least once.

Step 5: If any paths remain, say ``YES'', otherwise say ``No''.

Page 47: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Step 3 requires the length of the strands to be

measured, to determine whether or not they

contain all of the cities. Remember that not all

strands beginning at (O0) and ending at (O6)

need contain all the remaining cities.

Measuring the length of the strands is

achieved using gel electrophoresis. The

DNA corresponding to the required length

(140-mer = 7 vertices x 20-mer/ vertex), as

measured by the gel, was cut out of the gel,

PCR amplified and purified.

Page 48: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Page 49: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Adleman’s Algorithm:

Step 1: Generate random paths through the graph

Step 2: Keep only those paths which begin with v in and end with v out.

Step 3: If the graph has n vertices, then keep only those paths which enter exactly n vertices.

Step 4: Keep only those paths which enter all of the vertices of the graph at least once.

Step 5: If any paths remain, say ``YES'', otherwise say ``No''.

Page 50: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

To implement Step 4, generate single stranded

DNA from the resulting product of Step 3.

The single stranded DNA is used in a process

called affinity separation.

Page 51: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Iron balls of 1 micron diameter to which

complements of v0 were attached were introduced

into the test tube containing the purified gel.

Holding a magnet against the side of the test tube

held the iron balls in place which, in turn, held the

DNA strands containing v0 in place while the

remainder of the liquid was poured out of the tube.

This process was repeated using complements of

all the remaining vertices. Now the liquid in the

test tube, if it contained anything, was known to

contain all vertices.

Page 52: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Adleman’s Algorithm:

Step 1: Generate random paths through the graph Step 2: Keep only those paths which begin with v in and

end with v out.

Step 3: If the graph has n vertices, then keep only those paths which enter exactly n vertices.

Step 4: Keep only those paths which enter all of the vertices of the graph at least once.

Step 5: If any paths remain, say ``YES'', otherwise say ``No''.

Page 53: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Amplify the result from Step 4 using

PCR and run it on a gel. An analysis of

the results clearly shows the presence

of a result, so the answer is “yes!”

Page 54: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Adleman’s conclusions:

Even a cursory reading his conclusions

reveals his intense excitement about

the results of this experiment.

3 main points Speed Storage density Energy efficiency

Page 55: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Speed Adleman estimates 10^20

operations/second or more are possible.

More operations/second than the fastest computer in 1994.

Page 56: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Storage density DNA stores information at 1 bit per

cubic nanometer. Video tape stores information at 1 bit

per 10^12 cubic nanometers. 1 gram DNA (1 cubic centimeter)

stores as much information as 1 trillion CDs, approximately 4,000,000,000,000,000,000,000 bits

Page 57: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Energy efficiency Evolution has provided highly efficient

DNA operations

Page 58: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Alas, this excitement proves to be

ephemeral. All is not well. DNA computers don’t scale enough to

perform really large calculations. Despite advancements in technique,

DNA computing remains labor

intensive. Automation of time-consuming lab

work is partially successful.

Page 59: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

“Despite our successes, and those of

others, in the absence of technical

breakthroughs, optimism regarding the

creation of a molecular computer

capable of competing with electronic

computers on classical computational

problems is not warranted.”

Adleman, 2002

Page 60: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Current Research in DNA Computing

Many colleges and universities offer

some access to DNA computing. A few

of the leading researchers are:

Len Adleman at the University of

Southern California Eric Winfree at Caltech Laura Landweber at Princeton

Page 61: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

The 9th International Meeting on DNA

Based Computers will be held on June

1-4 in Madison, Wisconsin. For further

information, try:

http://www.corninfo.chem.wisc.edu/writi

ngs/DNAcomputing.html

Page 62: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

An excellent book on DNA computing is

the aptly titled:

DNA Computing: New Computing

Paradigms by Paun, Rozenberg and

Salomaa

Springer-Verlag, Berlin, 1998.

ISBN: 3-540-64196-3

Page 63: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Conclusion

Academic

Programs

Discussion

Any questions?

Page 64: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Adleman 2002

Conclusion

Academic

Programs

Discussion

Page 65: MOLECULAR COMPUTING

DNA Computing

Introduction

Molecular

Computing

Adleman 1994

Adleman 2002

Conclusion

Academic

Programs

Discussion