At the end of the 1950s, Richard Feynman (1961, pp.282-96) described the possibility of building computers that were ‘sub-microscopic’. More recently, several people have advocated the realization of massively parallel computation using the techniques and chemistry of molecular biology.
At the end of 1994 Leonard Adleman published a paper on ‘Molecular Computation of Solutions of Combinatorial Problems’ (Science, vol.266, pp.1021 - 24). He explained how a problem could be set up by synthesizing DNA molecules with a particular sequence, and solved by letting the DNA molecules react in a test tube, producing a molecule whose sequence is the answer. In the same paper he recounted how he had put this theory into practice by solving a standard problem with a DNA reaction system. Adleman called his DNA computer the TT-100, for test tube filled with 100 microlitres of fluid, which is all it took for the reactions to occur.
Since then, many advances have been proposed to refine the protocol for programming a DNA computer to reduce the complexity of the operations and eliminate errors (see Lipton, n.d.; and Boneh and Lipton, nd.). Despite their respective complexities, biological and mathematical operations have some similarities:
The very complex structure of a living being is the result of applying simple operations to initial information encoded in a DNA sequence.
The result f(w) of applying a computable function to an argument can be obtained by applying a combination of basic simple functions to w.
For the same reasons that DNA was probably selected for living organisms as a genetic material, its stability and predictability in reactions, DNA strings can also be used to encode information for mathematical systems.
Conventional computers represent information in terms of 0’s and l’s, physically expressed in terms of the flow of electrons through logical circuits. Builders of DNA computers represent information in terms of the chemical units of DNA. Calculating with an ordinary computer is done with a program that instructs electrons to travel on particular paths; with a DNA computer, calculation requires synthesizing particular sequences of DNA and letting them react in a test tube. In a scheme devised by Lipton (n.d.), the logical command AND is performed by separating DNA strands according to their sequences, and the command OR is done by pouring together DNA solutions containing specific sequences.
‘It will fill a bathtub, not the universe,’ says Lipton, ‘and it will be incredibly cheap to build.’ A pound of DNA in 1,000 quarts of fluid, about three-feet square, will hold more memory than all the computers ever made. The chemicals are inexpensive; DNA runs virtually on its own power, and the soup, with a little splicing, can be re-used from one experiment to the next. Lipton estimates that a superparallel DNA computer, offering trillions of processors working simultaneously, could be built for $100,000.
The fastest supercomputers can currently perform 1000 million instructions per second (MIPS); a single DNA molecule requires approximately 1000 seconds to perform an instruction (.001 MIPS). Obviously, if you want to perform one calculation at a time (serial logic), DNA computers are not a viable option. However, if one wanted to perform many calculations simultaneously (parallel logic), a computer such as the one described above can easily perform 1014 MIPS. DNA computers also require less energy and space. While existing supercomputers operate 109 operations per joule, a DNA computer could perform 2 x 1019 operations per joule (many times more efficient). Data can be stored on DNA at a density of approximately 1 bit per cubic nm, while existing storage media require 1012 cubic nm to store 1 bit (Adleman, 1995).
Thus, the potential of molecular computation is impressive. However, it is too early for either great optimism or great pessimism. It is possible that DNA computers will become more common for solving very complex problems and DNA computers may also become automated. In addition to the direct benefits of using DNA computers for performing complex computations, some of the operations of DNA computers already have (Adleman, 1995), and more could be, used in molecular and biochemical research.
Adleman,L.(1994).’Moleculer computation of solutions to combinatorial problems’,Science,vol.266,pp.1021-24.
Adleman,L.(1995 ‘On constructing a moleculer computer’:ftp://usc.edu/pub/csinfo/papers/adleman/molecular_coputer.ps
Boneh,D.&Lipton,R.J.’Making DNA computers error resitant’.(Unpublished manuscript.)
Feynman,R.P. (1961)’Minaturization’,in D.H.Gilbert (ed.)Reinhold,New York.
Lipton,R.J.(n.d.)’Speeding up computations via molecular biology’:ftp://ftp.cs.princeton.edu/pub/people/rjl/bio.ps