DNA computing is an alternative to the way computers work. While this technology is not readily available, or being mass produced, the theory behind it is quite old and the development is ongoing and catching more speed. Companies like IBM are attempting to use DNA to produce the next generation of processors.
Before discussing how DNA can be used in computers, it's important to first understand the basic structure of a DNA molecule. DNA is a double stranded helix where the two strands are linked by base pairs of amino acids commonly labeled, A, T, C, and G. A single double helix strand has millions of these connections which are limited as they only connect A to T and C to G. These amino acids would essentially take the place of the binary code of 1's and 0's used in computers today. The base pairs of amino acids are separated by.33 nanometers. To put the size into perspective, a DNA chip can be built in a 2-nanometer scale, which allows data density about 2000 times what can be achieved now.
A Hamiltonian Path is a traceable path that visits each vertex, or point, once with a beginning and ending point. While this may seem simple in theory, it is actually a complex problem to solve. To simplify this, if one was to try and plot the shortest route to tour the ten biggest cities in the United Kingdom only once, over 3.5 million routes would need to be analyzed. If this example were tested using a single processor each of the 3.5 million scenarios would need to be calculated one at a time, and the Hamiltonian Path would then be selected.
All the possible solutions, both correct and incorrect, can be encoded in DNA. Each of the cities can be encoded in a four character combination of the base pairs of amino acid found in DNA. An example of one city indicator would be TCGG. By mixing all of the molecules in a test tube, he created all the DNA combinations, or answers, possible for the given conundrum. In theory this allowed for simultaneous processing in order to find the correct solution, as the DNA strands were developing not in succession of one another, but at the same time. Through a series of chemical reactions, scientists were able to remove the incorrect answers and was able to leave only those strands representing the correct Hamiltonian path.
There are several shortcomings with DNA computing as described above. A major drawback is the need for human intervention, which becomes less practical with bigger calculations.
So what exactly could a DNA computer do? One possibility discussed is being able to apply tiny DNA computers inside of the body to help monitor and prevent diseases. The computer would analyze conditions, and make decisions based on their findings. Theoretically the tiny DNA computer would be able to release medicine or kill diseased cells. The new processors could also take the place of the current day supercomputers used for data crunching in large corporations, scientific labs, and government agencies. Processors faced with computing year's worth of data could cut the processing time into a fraction of what if currently takes.
DNA could also prove to be a much cheaper alternative to our current data storage technology. One gram of genetic material, which is the size of one cubic centimetre, could hold the equivalent of 1 Trillion compact discs.