Line 301: | Line 301: | ||
<h2>Introduction | <h2>Introduction | ||
</h2> | </h2> | ||
− | |||
− | |||
<p> | <p> | ||
Modeling is necessary for quantifying biological processes and designing biological systems for customized function. With the increasingly rapid development of synthetic biology, many models are based on different branches of applied mathematics, as exampled by stochastic process, cellular automaton, dynamic systems, and Boltzmann kinetics for different biological processes [1-4]. For example, automaton is often used to model birth and death processes, stochastic processes is often used to model transcription factor-DNA binding,dynamic systems is often used in population ecology to predict the evolution of colony, and Boltzmann kinetics is often used to quantitatively describe chemical reactions. Some toolkit based on this model, like <a href="http://www.compucell3d.org/" target=_blank>CompCell3D</a>, has been developed for computational nanotechnology and simulating tissue development. | Modeling is necessary for quantifying biological processes and designing biological systems for customized function. With the increasingly rapid development of synthetic biology, many models are based on different branches of applied mathematics, as exampled by stochastic process, cellular automaton, dynamic systems, and Boltzmann kinetics for different biological processes [1-4]. For example, automaton is often used to model birth and death processes, stochastic processes is often used to model transcription factor-DNA binding,dynamic systems is often used in population ecology to predict the evolution of colony, and Boltzmann kinetics is often used to quantitatively describe chemical reactions. Some toolkit based on this model, like <a href="http://www.compucell3d.org/" target=_blank>CompCell3D</a>, has been developed for computational nanotechnology and simulating tissue development. |
Revision as of 02:57, 18 October 2018
Software
Abstract
Our software tool was built based on (1) modeled parameters characterizing our 3-layer design; (2) populational description of individual cellular behaviors. We found that several cell behaviors and ENABLE signaling have key impact on the evolution of a cell colony with mixed cell types. In an object-oriented-programming and user-friendly style, our software allows users to adjust those key factors and profile the fate of their own mixed cells. Our software bridges a nanoscopic transcriptional design of biological circuits, with microscopic cellular behaviors, up to a macroscopic population output, from which clinical outcome could be predicted, artificial tissue could be assembled, etc.
Introduction
Modeling is necessary for quantifying biological processes and designing biological systems for customized function. With the increasingly rapid development of synthetic biology, many models are based on different branches of applied mathematics, as exampled by stochastic process, cellular automaton, dynamic systems, and Boltzmann kinetics for different biological processes [1-4]. For example, automaton is often used to model birth and death processes, stochastic processes is often used to model transcription factor-DNA binding,dynamic systems is often used in population ecology to predict the evolution of colony, and Boltzmann kinetics is often used to quantitatively describe chemical reactions. Some toolkit based on this model, like CompCell3D, has been developed for computational nanotechnology and simulating tissue development.
However, there hasn’t a ready single model for our ENABLE project. It is because an overall model for our project should not only consist the 3-layer standard design (for more details [link to circuit design]) but also the biological mechanism underlying it(for more details [link to model]).
Here we present a modeling software using multiscale mathematical tools for different biological processes, which serves as a reusable tool for cell colony design. We use different modules packaged in different Classes to simulate different biological processes. Based on the object-oriented principal, it is easy for users to realize customized Classes and simulate cell colony using our software.
A colony is occupied by different populations, a population is unitized by abundant individuals, be it a cell or an ensemble of various cells, and a cell is a network of chemicals, for example, proteins, lipids, nucleotides, etc. To simulate cell colony, our software bridges a nanoscopic transcriptional design of biological circuits, with microscopic cellular behaviors, up to a macroscopic population output, from which clinical outcome could be predicted, artificial tissue could be assembled, etc.
A demonstration using our software to simulate the process of our engineered cells collaborating to wipe out cancer cells are offered in this documentation.
Method
Our software is built based on OOP algorithm and MATLAB. A brief introduction to the workflow of our toolkit is shown below. For more details, please refer to our page on Github[link].
Figure.1 | UML of our toolbox.
Figure.2 | Workflow of our toolbox.
Initialization:
At first, initialize the system. Use the formative text as input, then designate the initial state of each cell (life span, type, vitality), properties of each cell type (type of Ligand and Notch, proliferation rate, mean vitality, and special chemical reactions in cells of this type), and relationship between cells (binding affinity between cells, which can be related to cell type and expression of membrane proteins, such as Notch and Ligand).
Parameter | Meaning |
---|---|
T | Temperate, measuring the effect of random move. |
E_neighbor | Affinity, measuring the effect of directional movement of cell based on cell-cell recognition. |
Nm | Sampling rate in dt, measuring the rate of cell movement. |
dt | The step length of Euler method in our simulation. |
T | Simulation time, measuring how long we want to simulate with our software. |
Iteration:
After initiation, an iteration is made. In a period of δt (very short time, and at the scale at 1-10 seconds), the cell may try to migrate, proliferate, or contact to neighboring cells to gather information for choice making. What is worth noticing is that if the cell moves/divides/dies, the Notch-Ligand kinetics may change abruptly for the changing cell-cell interaction, and a movement is relatively rapid compared with cell size. Therefore, it only takes little time for the switching of cell-cell network, but the process of finding proper movement takes some.
Within the interval of two “cellular movements (proliferation/migration/death included)”, “chemical movements” happens. This refers to the Notch-Ligand kinetics between cell membranes, the amplification of the signal of Notch ICD (intracellular domain) and the combination of augmented signals. Using Euler method (for kinetics) and discrete Gillespie algorithm (for stochastic process), we have predicted how a single cell works in a period within the interval of cellular movements (proliferation/migration/death included) and chemical movements, which refers to the Notch-Ligand kinetics between cell membranes, the amplification of the signal of Notch intracellular domain and the combination of augmented signals.
After this prediction, we construct some functions to record the general state of each cell, including index, position, age, and then tendency to die or divide, for further data analysis. A snapshot of our cell colony is taken simultaneously for further simulation visualization. A judgement statement is executed to determine whether to terminate (when δt multiples iteration time is greater than T [这个是什么意思]) or continue to iterate (both cellular movements and chemical movements). Movements in a single iteration seems negligible, but a big number of iterations would show a difference.
For more details of cellular movement, please refer to the supplementary material; for more details of chemical movement, please refer to our modeling of Notch-Ligand Kinetics.
Data analysis: Upon simulation termination, data will be analyzed using prepared functions. We offer APIs for cell track, cell census and cell network analysis.
Simulation visualization:
Using clips recorded in Iteration step, it’s easy to get our simulation visualized using built-in Matlab function videowrite. Cell colony composition can be checked by watching the output video.
Tutorials (single functions)
To make users familiar to our toolbox, a tutorial is as follows. Notch-Ligand kinetics (using ChemicalReactions toolkit)
ChemicalReactions toolkit is a toolkit for chemical reaction modeling using Petri net and Possion process. Here we demonstrate the usage of ChemicalReactions through an example of Notch-Ligand kinetics modeling.
Figure 1.3: Demo: Notch-Ligand kinetics analysis using ChemicalReactions toolkit. Code are offered on Github.
STEP1: Open MATLAB, and open the file ChemicalReactions.md in folder @ChemicalReactions.
STEP2: Enter the command line window
>>[Pre,Post]=Pre_Notch_Ligand(2)
>>obj= ChemicalReactions(‘’,’’,Post,Pre,@H_Notch_Ligand,zeros(1,12),2)
Here Pre_Notch_Ligand() is a function to generate transition matrix for chemical reactions, @H_Notch_Ligand is a function handle for calculation of reaction possibilities, zeros(1,12) designates the initial condition of the system, and 2 refers to 2 kinds of Notch/Ligand exist.
STEP3: Enter in the command line window
>>XMat=obj.iteration(100,1)
>>for i =1:12
>>plot(XMat(:,i));
>>hold on
>>end
Here iteration() is a method of class ChemicalReactions for predicting the state of system obj. (100, 1) is the setting step for data recording, and XMat is for data storage.
To repeat the results of Fig. 3, please refer to Github [link to Github] for code acquisition.
War predictor (using Cell2DProl toolkit)
Cell2DProl toolkit is a toolkit for Cell colony simulation. For more details, please refer to the supplementary material or our code [link to Github]. Here we demonstrate the usage of Cell2DProl through an example of therapeutic engineered cell design.
Figure 1.4: Demo: visualization function in the Cell2DProl toolkit
Figure 1.5: Demo: Data analysis functions in Cell2DProl toolkit
STEP1: Open MATLAB, and open the file Cell2DShadeProl.md in your folder.
STEP2: Click the ‘run’ on the panel
Here all the parameters are set proper previously. For more details on parameters, please refer to the supplementary material. If your simulation results are visualized successfully, a video called 1_6_1_6 can be found in your current folder.
STEP3: The left Figure in Fig.5 will be plotted automatically. To get the right figure, Enter in the command line window
>>res1=-Culture.*(Culture<-1);
>>res2=res1(:);
>>ecdf(res2);
OOP-based AND gate design (using Cell toolkit)
Cell toolkit is a toolkit to design combinational circuits by linking user-defined cellular movement (element) together. Here we show you how to use our toolkit Cell by an example of AND gate circuit design.
Figure 1.6: Demo: Simulation of 3-layer ENABLE using Cell toolkit
STEP1: Open MATLAB, and open the folder with subfolder @Cell.
STEP2: Run kinetic_notch_test.m, kinetic_addgate_test_signal.m, kinetic_addgate_test.m.
Here we use kinetic model for Notch activation and signal amplification [Ref1], and 3-step kinetics for intein kinetics [Ref.2] in literature[参考文献] to validate the function of our toolkit.
STEP3:The figures of Fig. 6 can be output automatically.
Supplementary material
Model_cell_colony
References
- Cis-interactions between Notch and Delta generate mutually exclusive signaling. J. Am. Chem. Soc., 2013, 135 (15), pp 5839–5847
Abstract
Contact-dependent signaling is critical for multicellular biological events, yet customizing contact-dependent signal transduction between cells remains challenging. Here we have developed the ENABLE toolbox, a complete set of transmembrane binary logic gates. Each gate consists of 3 layers: Receptor, Amplifier, and Combiner. We first optimized synthetic Notch receptors to enable cells to respond to different signals across the membrane reliably. These signals, individually amplified intracellularly by transcription, are further combined for computing. Our engineered zinc finger-based transcription factors perform binary computation and output designed products. In summary, we have combined spatially different signals in mammalian cells, and revealed new potentials for biological oscillators, tissue engineering, cancer treatments, bio-computing, etc. ENABLE is a toolbox for constructing contact-dependent signaling networks in mammals. The 3-layer design principle underlying ENABLE empowers any future development of transmembrane logic circuits, thus contributes a foundational advance to Synthetic Biology.