|
|
|
By Eric Baum
There's a powerful computer hidden inside your body. It's not your brain--it's your DNA.
Molecular biologists are beginning to unravel the information-processing tools-such as enzymes, copying tools, proofreading mechanisms and so on-that evolution has spent billions of years refining. Now we're taking those tools in large numbers of DNA molecules and using them as biological computer processors.
Here's how it works. Information specifying a computational problem too complex for even a supercomputer is encoded in DNA. Then various molecular-biological tools are used to process this information.
In a hot-tub sized vat of DNA, at normal laboratory concentration, one might easily imagine having 1021 DNA molecules, each potentially encoding 400 bits of information. That's 100,000 billion times as much information as you can store in your 1 gigabyte hard disk. Each of these molecules acts, in a sense, as a separate processor in a giant multiprocessor. So, in effect, we have a thousand billion billion processors.
Sounds exciting, even Saganesque. But there are problems. One is that the algorithms proposed so far use really slow molecular-biological operations. Each primitive operation in the DNA computer takes hours.
That's a clock rate maybe 1011 times slower than your 100MHz Pentium.
That's why you don't have to worry about a DNA-based computer replacing your Pentium. It will never respond quickly enough on simple problems. But we're hoping it makes up for its slothfulness with pure parallel power or massive memory on some problem too big to fit or run in a silicon machine. If all goes as expected, a DNA computer will be able to do a computation that would take millions of years on the most powerful supercomputer in, say, six months.
But there are other hurdles. These processes take hours when you run them with a small test tube of DNA. Scale up to the vast amounts of DNA we're talking about, and they may slow down dramatically. Another hazard is hydrolysis-the DNA molecules can fracture. Over the six months you're computing, your DNA system is gradually turning to water.
In addition, every operation is somewhat random. Unlike your Pentium's transistors-which reliably compute what they're supposed to-the components in the DNA computer are probabilistic. If a tiny subcircuit is supposed to give the answer "1," it may yield that answer 90 percent of the time and "0" the rest of the time. To make DNA computing work, we have to figure out how to build a reliable computer out of noisy components.
Yet another hitch concerns the model of the DNA computer as a highly parallel computer, with each DNA molecule acting as a separate processor. In a standard multiprocessor-say a Cray or a Connection-buses transmit information from one processor to the next. But the problem of transmitting information from one molecule to another in a DNA computer has yet to be solved. Current DNA algorithms compute successfully without passing any information, but this limits their flexibility.
Finally, we're still looking for a giant problem for the DNA system to compute. No one has yet suggested a concrete puzzle worth solving-and a concrete algorithm for solving it using DNA-that couldn't be solved more quickly some other way.
All these obstacles sound daunting, and any one of them may be enough to kill DNA computing. But computer scientists have all kinds of creative ideas for overcoming these problems. DNA computing is where silicon computing was the year after the transistor was invented. It doesn't do anything useful yet, but who knows what might happen if you play with it?
DNA computing is not a here-and-now practical technology; it's a pie-in-the-sky research project. It has astounding possibilities, but it's going to take a lot of good ideas, hard work and luck to realize its potential.
At a minimum, this research will shed a whole new light on the computing DNA does in living creatures. If the purpose of life is to process information stored in DNA, then in trying to perfect DNA computing, in a sense, we are trying to create life.
Eric Baum is a senior research scientist at NEC Research Institute's
computer science division in Princeton, N.J. His papers are available
at his Web page:
(http://www.neci.nj.nec.com:80/homepages/eric/eric.html). Have
a comment-or a gripe-about Windows computing you'd like to share?
Send it to Nancy A. Lang. To find her E-Mail ID Click Here
|
|
|