DNA and silicon computing are alike, right? Wrong. DNA and standard, silcon-chip based computers are fundamentaly different in the way they compute and in other aspects as well. As Richard Feynman said of standard computers, "The inside of a computer is dumb as hell, but it goes like mad!" This, actually is not a bad representation of a computer. Modern "von Nuemann" computers, as they are called, work instructions one-at-a-time. They take a task, complete it, and then move on to the next one, repeating the process again and again. DNA computing, however, computes in a different fashion, known as parallel computing. This type of computing takes place when many, many taks are worked on at the same time, and are better at solving problems that standard computers find impossibly difficult.
Take for example, problems involving finding many possible solutions and then finding the correct one. Since a standard computer can only generate a possible solution one-at-a-time, and check possible solutions one-at-a-time, problems such as these get increasingly more complex for these one-at-a-time computers as the number of possibilities rises. Parallel computers, however, are much better at this because they can have thousands of possibilities being worked out at the same time. In DNA computing, a DNA strand can be replicated 500 times a second (this is pretty fast, considering the 99.8% accuracy rate in DNA replication because the bases A, T, G, and C pair up to create a sort of "backup" to one DNA strand in case there is a mistake). However, 500 replications per second is actually very slow (1000 bits/second, or 0.001 MIPS) compared to modern computers, which can run at 1,000 MIPS (million instructions per second) in some cases. But, if many enzymes (enzymes have jobs that are similar to commands on a computer, cutting, pasting, replicating, repairing DNA strands) are allowed to work on DNA in parallel, they can start working on the second strand before the first is completely copied, and so on, increasing the data path about 1000 bits per DNA strand. And since the DNA strands increase exponentially, you soon have data paths of thousands of gigabytes, much bigger than any modern compter today. Eventually, DNA computations, if running in parallel, can reach 1014 MIPS in speed. Also, DNA is much more efficient than a standard computer. A supercomputer operating at 1,000 MIPS can perform 1019 operations per Joule, while using DNA is 10 to the 10th times more efficient (running at 2 X 1019 if working in parallel).
Data density in DNA is also hugely bigger than standard computers. A DNA strand has the bases A, T, C, and G spaced evenly 0.35 nanometers apart on it. This means that, if there is one base per square nanometer, the data density of one square inch is close to a million gigabytes. In a standard computer, data density is close to 100,000 time smaller, around 7 gigabytes per square inch.
Increasing performance is different for both types of methods. For standard computers, increasing performance means increasing the RAM or clock-speed, so that individual tasks can be completed faster. For parallel (here DNA) computing, more memory and parallel processing increases performance.
To show an example of where DNA computing would be superior, let us take a problem where a salesman has to go through 20 cities exactly once using certain rules and a set starting and ending point (this is just a more complex version of the problem described in the next section). It would take a 100 MIPS computer 2 whole years just to generate the 45 million gigabytes of memory (assuming 18 factorial possible paths and 7 bytes per path) needed to express all possible paths. However, with DNA computing, this huge number of paths that need to be generated is fine, because the orginal DNA and enzymes working on the DNA can replicate very fast, quickly making the gargantium number of paths look like nothing at all in a very short time.
Continue on to "DNA Computing Example" to learn about and eventually "solve" a problem using DNA.
IntroductionGames for DNA Computing
Genetics - DNA Computing - Are You A Computer?