Computer scientists at the University of California, Davis, and the California Institute of Technology have created DNA molecules that can self-assemble into patterns essentially by running their own program. The work is published March 21 in the journal Nature.

“The ultimate goal is to use computation to grow structures and enable more sophisticated molecular engineering,” said David Doty, assistant professor of computer science at UC Davis and co-first author on the paper.

The system is analogous to a computer, but instead of using transistors and diodes, it uses molecules to represent a six-bit binary number (for example, 011001). The team developed a variety of algorithms that can be computed by the molecules.

"We were surprised by the versatility of algorithms we were able to design, despite being limited to six-bit inputs," Doty said. The researchers were able to design and run 21 algorithms over the course of the experiments, demonstrating the potential of the system, he said.

Working initially as postdoctoral scholars with Professor Erik Winfree at Caltech, Doty and co-lead author Damien Woods, now at Maynooth University, Ireland, designed a library of short pieces, or tiles, of DNA. Each DNA tile consists of 42 bases (A, C, G or T) arranged in four domains of 10-11 bases. Each domain can represent a 1 or 0 and can stick to some of the domains on other tiles. No two tiles are a complete match.

Programmable DNA Lego bricks

Two of the four domains on each tile are “input,” and two “output.” In an electronic diode, transistor or logic gate, a value of 0 or 1 at the input (or inputs) will give a known value at the output. Similarly, depending on which tiles the researchers selected to begin their program, they could get a known output at the other end.

Starting with the original six bits of input, the system adds row after row of molecules, progressively running the algorithm. Instead of electricity flowing through circuits, rows of DNA strands sticking together perform the computation.

It’s rather like having a set of Lego bricks, some of which will spontaneously stick to other bricks. Select a set of bricks to start with, mix them together and watch them self-assemble into a structure.

The end result of the program is something like a knitted scarf of DNA, made of tiles stuck together in a pattern set by the original program. The results are read with an atomic force microscope, which detects a marker molecule attached to the DNA.

The team was able to demonstrate algorithms for a variety of tasks, including counting exercises, random walks and drawing patterns such as zigzags, diamonds and a double helix in the DNA.

Doty and Woods began the work as theoretical computer scientists, so they had to master some “wet lab” skills. In the future, molecular programming might operate at a higher level, Winfree said. Today’s coders don’t need to understand transistor physics, for example.

At UC Davis, Doty is now working on theoretical aspects of molecular programming. DNA is of special interest because it both represents information in molecular form, and it is relatively easy to work with, he said.

“It’s a great gift the molecular biologists have given us computer scientists,” he said.

Additional authors on the paper are Cameron Myhrvold, Joy Hui and Peng Yin of Harvard University, and Felix Zhou of the University of Oxford. Funding support came from the National Science Foundation and NASA.