Douglas Densmore, Director of CIDAR Group, is trying to bring the fields of computation and experimentation together to create something extraordinary. Where common EDA programs provide an interface for engineers to design integrated circuits, Densmore and his team build tools to allow researchers to edit genes.
Here's a look at the work being done at the CIDAR Lab and how some of the genetic circuit design process may be familiar to electrical engineers.
The CELLO Framework: Designing Genetic Circuits
Another one of CIDAR's frameworks is CELLO, published in 2016, which is essentially a programming language that allows users to design computational circuits that live in cells.
The hope is that biological circuits will take after the design of integrated circuits someday in the near future. Similar to an EDA program, users specify the behavior of a biological system through the use of algorithms to generate biological circuitry from an HDL specification in Verilog. Pieces of this code are then compiled into a logic circuit comprised of logic gates.
These logic gates have behaviors which are described as output signals as a function of its input signals. CELLO then uses combinatorial design to generate a linear DNA sequence which is placed into the user’s constraint file.
Once in the file, simulations are run to predict the performance of the user's circuit design. An example is shown below where the Verilog code is parsed and converted to a truth table.
A.A.K. Nielsen et al., Science 352, aac7341 (2016). DOI: 10.1126/science.aac7341
The incredible thing is that CELLO takes this logic representation and turns in into an abstract genetic regulatory network that satisfies that user's specification. This can be achieved by parsing the biological parts database, Clotho, which we'll discuss next. These biological circuits are used to detect various things such as oxygen, glucose, or even environmental conditions such as light, temperature, and acidity.
Densmore's team also designed another circuit to analyze and rank three individual inputs and then make a response based on the priority level of each circuit. Currently, Densmore and his team have their genetic parts set up for E. coli, but they plan to expand on different strands of bacteria.
The whole system is very customizable and you can check it out here.
Clotho CAD: Storing Biological Data
In partnership with the Anderson Lab at UC Berkeley, Densmore and his team developed Clotho, a design framework that is utilized for engineering synthetic biological systems and handling the data used to create them. Clotho can create biological systems starting from the basic building blocks of life, DNA, through an app environment (yes, like on a smartphone).
The biological systems created on Clotho are stored in relational databases at MIT, UC Berkeley, or Boston University.
Users can then write custom applications to manipulate these designs in two different ways: through specifications of the system they're creating (e.g., creating design rules and parameters) or using physical assembly rules. Both methods are geared towards creating a composite DNA device.
Densmore and his team have created this as an opensource system in hopes of creating an ecosystem-like environment for the compositions to evolve off of one another’s app design. The concept is that Clotho can be a base on which unique tools and applications can be built, edited, and shared. Pigeon, a tool that takes text descriptions of genetic circuits into graphical representations, is an example of how Clotho can be used for the development of real-world—and extremely useful—applications. development.
Raven: Optimizing Gene Assembly
After specifying biological parts through Eugene (CIDAR Labs' purpose-built language) and designing genetic circuits using Clotho, the next step is assembly.
This part of the process is addressed by Raven, a tool that allows researchers to plan and optimize the DNA assembly process. Raven works in conjunction with other CIDAR Labs programs, allowing researchers to bring their work on Clotho into reality.
Puppeteer is another program on the assembly end which enables researchers to automate DNA assembly tasks designed in Raven. This can include preparing scripts for robotics used in the wet labs for DNA assembly. Puppeteer also incorporates an element of task management.
This assembly planning portion is analogous to electric circuit assembly in that resources, protocols, and available procedures are taken into account.
The CIDAR Labs suite of tools makes genetic circuit design more accessible for researchers, similarly to how typical CAD and EDA programs allow engineers to design electric circuits.
Do you have experience with gene circuit design? Share your experiences in the comments below.