Report 6
Report 6
Report 6
Submitted By
2. 3. 4. 5. 6. 7. 8. 9.
History & Motivation3 DNA Fundamentals..4 Principles of DNA Computing6 Example of DNA Computing : The Hamiltonian Path Problem14 Present & Future DNA Computer.17 Advantages17 Disadvantages..17 References..18
California surprised the scientific community by using the tools of molecular biology to solve a different computational problem. The main idea was the encoding of data in DNA strands and the use of tools from molecular biology to execute computational operations. Besides the novelty of this approach, molecular computing has the potential to outperform electronic computers. For example, DNA computations may use a billion times less energy than an electronic computer while storing data in a trillion times less space. Moreover, computing with DNA is highly parallel: In principle there could be billions upon trillions of DNA molecules undergoing chemical reactions, that is, performing computations, simultaneously.
random search. He solved the traveling salesman problem also known as the Hamiltonian path" problem. There are two reasons for using molecular biology to solve computational problems. (i) The information density of DNA is much greater than that of silicon : 1 bit can be stored in approximately one cubic nanometer. Others storage media, such as videotapes, can store 1 bit in 1,000,000,000,000 cubic nanometer. (ii) Operations on DNA are massively parallel: a test tube of DNA can contain trillions of strands. Each operation on a test tube of DNA is carried out on all strands in the tube in parallel.
DNA Fundamentals
DNA (deoxyribonucleic acid) is a double stranded sequence of four nucleotides; the four nucleotides that compose a strand of DNA are as follows: adenine (A), guanine (G), cytosine (C), and thymine (T); they are often called bases. DNA supports two key functions for life: coding for the production of proteins, self-replication. Each deoxyribonucleotide consists of three components: a sugar deoxyribose five carbon atoms: 1 to 5 hydroxyl group (OH) attached to 3 carbon a phosphate group a nitrogenous base.
The chemical structure of DNA consists of a particular bond of two linear sequences of bases. This bond follows a property of Complementarity: adenine bonds with thymine (A-T) and vice versa (TA), cytosine bonds with guanine (C-G) and vice versa (G-C). This is known as Watson-Crick complementarity. The DNA monomers can link in two ways:
Phosphodiester bond
Hydrogen bond
The four nucleotides adenine (A), guanine (G), cytosine (C), and thymine (T) compose a strand of DNA. Each DNA strand has two different ends that determine its polarity: the 3end, and the 5end. The double helix is an anti-parallel (two strands of opposite polarity) bonding of two complementary strands.
that could be called the software, used to execute the desired calculation. A single strand of DNA is similar to a string consisting of a combination of four different symbols A G C T. Mathematically this means we have at our disposal a letter alphabet, = {A GC T} to encode information which is more than enough considering that an electronic computer needs only two digits and for the same purpose. In a DNA computer, computation takes place in test tubes or on a glass slide coated in 24K gold. The input and output are both strands of DNA, whose genetic sequences encode certain information. A program on a DNA computer is executed as a series of biochemical operations, which have the effect of synthesizing, extracting, modifying and cloning the DNA strands. As concerning the operations that can be performed on DNA strands the proposed models of DNA computation are based on various combinations of the following primitive bio-operations: Synthesizing a desired polynomial-length strand used in all models.
Mixing : combine the contents of two test tubes into a third one to achieve union. Annealing: bond together two single-stranded complementary DNA sequences by cooling the solution. Annealing in vitro is known as hybridization Melting: break apart a double-stranded DNA into its singlestranded complementary components by heating the solution. Melting in vitro is also known under the name of denaturation.
Amplifying (copying): make copies of DNA strands by using the Polymerase Chain Reaction PCR. The DNA polymerase enzymes perform several functions including replication of DNA. The replication reaction requires a guiding DNA single-strand called template, and a shorter oligonucleotide called a primer, that is annealed to it.
Separating the strands by length using a technique called gel electrophoresis that makes possible the separation of strands by length.
Extracting those strands that contain a given pattern as a substring by using affinity purification.
Cutting DNA double-strands at specific sites by using commercially available restriction enzymes. One class of enzymes, called restriction endonucleases, will recognize a specific short sequence of DNA, known as a restriction site. Any double-stranded DNA that contains the restriction site within its sequence is cut by the enzyme at that location.
Ligating: paste DNA strands with compatible sticky ends by using DNA ligases. Indeed, another enzyme called DNA ligase, will bond together, or ``ligate'', the end of a DNA strand to another strand. Substituting: substitute, insert or delete DNA sequences by using PCR site-specific oligonucleotide mutagenesis.
Marking single strands by hybridization: complementary sequences are attached to the strands, making them doublestranded. The reverse operation is unmarking of the doublestrands by denaturing, that is, by detaching the complementary strands. The marked sequences will be double-stranded while the unmarked ones will be single-stranded. Destroying the marked strands by using exonucleases, or by cutting all the marked strands with a restriction enzyme and removing all the intact strands by gel electrophoresis. (By using enzymes called exonucleases, either double-stranded or singlestranded DNA molecules may be selectively destroyed. The exonucleases chew up DNA molecules from the end inward, and exist with specificity to either single-stranded or double-stranded form.)
Detecting and Reading: given the contents of a tube, say ``yes'' if it contains at least one DNA strand, and ``no'' otherwise. PCR may be used to amplify the result and then a process called sequencing is used to actually read the solution.
In Short, DNA computers work by encoding the problem to be solved in the language of DNA: the base-four values A, T, C and G. Using this base four number system, the solution to any conceivable problem can be encoded along a DNA strand like in a Turing machine tape. Every possible sequence can be chemically created in a test tube on trillions of different DNA strands, and the correct sequences can be filtered out using genetic engineering tools.
Simplified graph Hamiltonian path : AtlantaBostonChicagoDetroit Adlemans Algorithm Input: A directed graph G with n vertices, and designated vertices vin and vout. Step 1: Generate paths in G randomly in large quantities. Step 2: Reject all paths that do not begin with vin and do not end in vout. Step 3: Reject all paths that do not involve exactly n vertices. Step 4: For each of the n vertices v: reject all paths that do not involve v. Output: YES, if any path remains; NO, otherwise. To implement step 1, each node of the graph was encoded as a random 20-base strand of DNA. Then, for each edge of the graph, a different 20-base oligonucleotide was generated that contains the second half of the source code plus the first half of the target node.
City
Atlanta Boston Chicago Detroit
DNA Name
ACTTGCAG TCGGACTG GGCTATGT CCGAGCAA
Complement
TGAACGTC AGCCTGAC CCGATACA GGCTCGTT
City Atlanta - Boston Atlanta - Detroit Boston - Chicago Boston - Detroit Boston - Atlanta Chicago - Detroit
To implement step 2, the product of step 1 was amplified by PCR using oligonucleotide primers representing vin and vout and ligase enzyme. This amplified and thus retained only those molecules encoding paths that begin with vin and end with vout. ~1014 computations are carried out in a single second. For implementing step 3, agarose gel electrophoresis allowed separation and recovery of DNA strands of the correct length. The desired path, if it exists, would pass through all seven nodes, each of which was assigned a length of 20 bases. Thus PCR products encoding the desired path would have to be 140 bp. Step 4 was accomplished by successive use of affinity purification for each node other than the start and end nodes. The solution strand has to be filtered from the test tube: GCAG TCGG ACTG GGCT ATGT CCGA Atlanta Boston Chicago Detroit Thus we see in a graph with n vertices, there are a possible (n-1)! permutations of the vertices between beginning and ending vertex. To explore each permutation, a traditional computer must perform O(n!) operations to explore all possible cycles. However, the DNA computing model only requires the representative oligos. Once
placed in solution, those oligos will anneal in parallel, providing all possible paths in the graph at roughly the same time. That is equivalent to O(1) operations, or constant time. In addition, no more space than what was originally provided is needed to contain the constructed paths.
Advantages
Perform millions of operations simultaneously. Generate a complete set of potential solutions and conduct large parallel searches. Efficiently handle massive amounts of working memory. They are inexpensive to build, being made of common biological materials. The clear advantage is that we have a distinct memory block that encodes bits. Using one template strand as a memory block also allows us to use its compliment. as another memory block, thus effectively doubling our capacity to store information.
Disadvantages
Generating solution sets, even for some relatively simple problems, may require impractically large amounts of memory (lots and lots of DNA strands are required) Many empirical uncertainties, including those involving: actual error rates, the generation of optimal encoding techniques, and
the ability to perform necessary bio-operations conveniently in vitro (for every correct answer there are millions of incorrect paths generated that are worthless). DNA computers could not (at this point) replace traditional computers. They are not programmable and the average dunce can not sit down at a familiar keyboard and get to work.
References
Paun, G., Rozenberg, G., and Salomaa, A., DNA Computing, Springer,1998. DNA COMPUTING-GRAPH ALGORITHMS [lec-12.pdf] G. P. Raja Sekhar, Dept. of Mathematics, IIT, Kharagpur Leonard M. Adleman, Computing with DNA, Scientific American, August 1998. From Microsoft to Biosoft Computing with DNA, Lila Kari, Department of Computer Science University of Western Ontario L.Adleman. On constructing a molecular computer. 1st DIMACS workshop on DNA based computers, Princeton, 1995. In DIMACS series, vol.27 (1996) L.Adleman, P.Rothemund, S.Roweis, E.Winfree. On applying molecular computation to the Data Encryption Standard. 2nd DIMACS workshop on DNA based computers, Princeton, 1996