Abstract
Molecular computing is an emerging field to which chemistry, biophysics, molecular biology, electronic engineering, solid state physics and computer science contribute to a large extent. It involves the encoding, manipulation and retrieval of information at a macromolecular level in contrast to the current techniques, which accomplish the above functions via IC miniaturization of bulk devices. The biological systems have unique abilities such as pattern recognition, learning, self-assembly and self-reproduction as well as high speed and parallel information processing.
Description of Bio-Molecular Computing
The aim of this article is to exploit these characteristics to build computing systems, which have many advantages over their inorganic (Si,Ge) counterparts.DNA computing began in 1994 when Leonard Adleman proved thatDNA computing was possible by finding a solution to a real- problem, a Hamiltonian Path Problem, known to us as the Traveling Salesman Problem,with a molecular computer. In theoretical terms, some scientists say the actual beginnings of DNA computation should be attributed to Charles Bennett's work. Adleman, now considered the father of DNA computing, is a professor at the University of Southern California and spawned the field with his paper, "Molecular Computation of Solutions of Combinatorial Problems." Since then, Adleman has demonstrated how the massive parallelism of a trillion DNA strands can simultaneously attack different aspects of a computation to crack even the toughest combinatorial problems.
DNA Computing on a chip
The DNA computing was proposed as a means of solving a class of computational problems where in the computing time grows exponentially with the problem size. 'Traveling sales man' or 'Hamilton path problem' is an example. One technique for solving such problems involves the immobilization and manipulation of combinatorial mixtures of DNA on a support. These problems include the search for a solution that simultaneously satisfies a number of clauses, each composed of a number of variables connected by OR statements. These can be solved by a reasonable amount of time by using brute force search made possible by the parallel nature of DNA computing techniques. Here, space (amount of DNA needed) is exchanged for time (number of biochemical steps to be used) to achieve a small computational time. The whole process consists of the following steps.
A set of DNA molecules (Watson strands) encoding all candidate solutions to the computational problems of interest is synthesized and attached to a surface via a reactive functional group.