Line 101: | Line 101: | ||
top: 100px; | top: 100px; | ||
left: 15%; | left: 15%; | ||
+ | background-color:white; | ||
+ | } | ||
+ | #fh5co-hero { | ||
+ | min-height: 5200px; | ||
+ | style:"background: #fff url(https://static.igem.org/mediawiki/2017/thumb/8/87/TsinghuaA-backgroundpartten.jpeg/240px-TsinghuaA-backgroundpartten.jpeg) repeat;" | ||
} | } | ||
.mytable { | .mytable { | ||
Line 120: | Line 125: | ||
<!-- end:fh5co-header --> | <!-- end:fh5co-header --> | ||
<aside id="fh5co-hero" class="js-fullheight"> | <aside id="fh5co-hero" class="js-fullheight"> | ||
− | <div class="flexslider js-fullheight"> | + | <div class="flexslider js-fullheight" style="background: #fff url(https://static.igem.org/mediawiki/2017/thumb/8/87/TsinghuaA-backgroundpartten.jpeg/240px-TsinghuaA-backgroundpartten.jpeg) repeat;"> |
<ul class="slides"> | <ul class="slides"> | ||
<li style="background-image: url(images/slide_2.jpg);"> | <li style="background-image: url(images/slide_2.jpg);"> | ||
Line 135: | Line 140: | ||
</div> | </div> | ||
</aside> | </aside> | ||
− | <div id="fh5co-services-section"></div> | + | <div id="fh5co-services-section" style="background: #fff url(https://static.igem.org/mediawiki/2017/thumb/8/87/TsinghuaA-backgroundpartten.jpeg/240px-TsinghuaA-backgroundpartten.jpeg) repeat;"></div> |
<div class="background" id="apDiv_background"> | <div class="background" id="apDiv_background"> | ||
<div class="myTitle1" >Solid model</div> | <div class="myTitle1" >Solid model</div> |
Revision as of 16:34, 30 October 2017
Solid model
I Introduction
Spatial factors have a great impact on the results of population interactions. To understand spatial effects better, we develop our discrete probabilistic solid model.
Concretely, to achieve this goal we designed a fluid model based on Cellular Automaton (CA).
What is more, we found that it will be much easier to consider effects spatial factors on population interactions if we can visualize it. Therefore, we designed our game---Solid E.coli War (Game Overview & Discovery) based on our solid model to satisfy our needs. The game can also help us realize educational purpose of our project and make public know more about synthetic biology! (Exhibition at National Museum)
Our game is made on the structure of html5. Below is a small video of our solid E.coli War.
Concretely, to achieve this goal we designed a fluid model based on Cellular Automaton (CA).
What is more, we found that it will be much easier to consider effects spatial factors on population interactions if we can visualize it. Therefore, we designed our game---Solid E.coli War (Game Overview & Discovery) based on our solid model to satisfy our needs. The game can also help us realize educational purpose of our project and make public know more about synthetic biology! (Exhibition at National Museum)
Our game is made on the structure of html5. Below is a small video of our solid E.coli War.
II Our method
It seems we can use Partial Differential Equation (PDE) directly. However, it will be too complicated to execute PDE fast in program and also difficult for visualization of the changing process, not to say adapting it to our game.
Thus, we choose another method as our solid model fundamental: cellular automaton (CA).
[wikipedia] A cellular automaton consists of a regular grid of cells, each in one of a finite number of states. An initial state (time t = 0) is selected by assigning a state for each cell. A new generation is created (advancing t by 1), according to some fixed rule (generally, a mathematical function) that determines the new state of each cell in terms of the current state of the cell and the states of the cells in its neighborhood. Typically, the rule for updating the state of cells is the same for each cell and does not change over time, and is applied to the whole grid simultaneously.
Using the idea of CA, first, we discretize whole space in a medium and total time we take to cultivate cells; second, we set placement rules, i.e. events that will happen after a cell is put onto medium; third, we set iteration rules, i.e. events that will trigger during each iteration in simulation.
Thus, we choose another method as our solid model fundamental: cellular automaton (CA).
[wikipedia] A cellular automaton consists of a regular grid of cells, each in one of a finite number of states. An initial state (time t = 0) is selected by assigning a state for each cell. A new generation is created (advancing t by 1), according to some fixed rule (generally, a mathematical function) that determines the new state of each cell in terms of the current state of the cell and the states of the cells in its neighborhood. Typically, the rule for updating the state of cells is the same for each cell and does not change over time, and is applied to the whole grid simultaneously.
Using the idea of CA, first, we discretize whole space in a medium and total time we take to cultivate cells; second, we set placement rules, i.e. events that will happen after a cell is put onto medium; third, we set iteration rules, i.e. events that will trigger during each iteration in simulation.
III Basic assumptions
Our solid model has several basic assumptions that are indispensable.
(1) A colony-to-grid representation in a 200×200 mesh grid (one grid represents a cell colony) is good enough to simulate bacterial growth in a real medium. (See Overall Discretization)
(2) The time it takes for AHLs and nutrition to diffuse into surrounding grids and reach concentration balance is very short compared to the time for cells to grow into colonies. (此处应有参考文献) (See Placement Rules)
(3) We suppose decomposing rate of AHLs and utilization rate nutrition are constants, and decomposing rate is relatively high compared to growth rate of cells.
(1) A colony-to-grid representation in a 200×200 mesh grid (one grid represents a cell colony) is good enough to simulate bacterial growth in a real medium. (See Overall Discretization)
(2) The time it takes for AHLs and nutrition to diffuse into surrounding grids and reach concentration balance is very short compared to the time for cells to grow into colonies. (此处应有参考文献) (See Placement Rules)
(3) We suppose decomposing rate of AHLs and utilization rate nutrition are constants, and decomposing rate is relatively high compared to growth rate of cells.
IV. Overall discretization
In the first place we do spatial and time discretization. The whole medium is discretized into a 200×200 mesh grid, and valid space for living is a disk inscribed on it with a radius of 100. Using assumption I, we set each cell colony (abbreviated as ‘cell’ in following sections) into a corresponding grid to represent its presence. In software simulation, we keep three matrices of 200×200 size to record the amount of cells, nutrition and AHLs in each grid, respectively.
Meanwhile, the whole time we take to cultivate cells is discretized into 1,200 iterations. After each iteration, the number of substances in each grid changes according to certain rules (will be discussed in following sections).
Meanwhile, the whole time we take to cultivate cells is discretized into 1,200 iterations. After each iteration, the number of substances in each grid changes according to certain rules (will be discussed in following sections).
V Placement rules
When we place a cell onto a corresponding grid, concentrations of substances in adjacent grids also change as a result. We apply assumption II to develop a set of synchronous placement rules:
(1)The event of placing a cell triggers concentration incline in surrounding grids synchronously
(2)Cell’s influence keeps unchanged in subsequent iterations as long as the cell exists.
(3)Removal of a cell has inverse effects.
According to assumption III, concentrations of AHL and nutrient will decline in each iteration if their generative sources are removed. Different types of cell affecting different kinds of substances are illustrated below:
(1) When a farmer placed, it will eject nutrient to surrounding 5×5 grids, and the amount of nutrient in each grid will increase by 1. Then the amount of nutrient will hold on until the farmer is killed. When farmers is removed, the amount decrease by 1.
(2) When placed, warriors eject AHL molecule to surrounding 3×3 grids, and the amount in each grid increases by 1; Then the amount of AHL molecule will hold on until the farmer is removed. When warriors is removed, the amount decreases by 1.
(1)The event of placing a cell triggers concentration incline in surrounding grids synchronously
(2)Cell’s influence keeps unchanged in subsequent iterations as long as the cell exists.
(3)Removal of a cell has inverse effects.
According to assumption III, concentrations of AHL and nutrient will decline in each iteration if their generative sources are removed. Different types of cell affecting different kinds of substances are illustrated below:
(1) When a farmer placed, it will eject nutrient to surrounding 5×5 grids, and the amount of nutrient in each grid will increase by 1. Then the amount of nutrient will hold on until the farmer is killed. When farmers is removed, the amount decrease by 1.
(2) When placed, warriors eject AHL molecule to surrounding 3×3 grids, and the amount in each grid increases by 1; Then the amount of AHL molecule will hold on until the farmer is removed. When warriors is removed, the amount decreases by 1.
VI Iteration rules
In the ik-th iteration, our program traverses the whole mesh grid and checks for two missions: death penalty and probabilistic growth based on states of the i(k-1)-th iteration. We may call the grid which the program is checking ‘present grid’ for convenience.
VII Death penalty
There are two and only two cases which causes cell death: nutrient in present grid is depleted; or there are enemy AHLs in present grid. It is noted that farmers cannot die of case I because they create aliments themselves. As for case II, when AHL-I and AHL-II are in adjacent grid and the colony inside the grid is warrior, one of them will be killed.
VIII Probabilistic growth
Another mission during iteration is to simulate bacterial growth. Concentration of AHL is excluded in this section, because it only functions in Death Penalty part. Since nutrient contributes to cell growth, a natural idea is to set a probabilistic model of any empty grid, described by a linear equation:
Pk (x,y)=α∙Ck (x,y)
Where (x,y) are coordinates of present grid, Pk (x,y) is the probability an adjacent cell can grow into present grid in ik-th iteration, Ck (x,y) is concentration of nutrient in present grid in ikth iteration, α is a coefficient that remains unchanged during simulation.
This equation helps our program to judge whether or not an adjacent cell can grow into present grid in ik-th iteration; after this judgement is settled, we choose randomly from surrounding grids that have cells in them, namely, supposing we select cell A, and inherit its cell type to get clone cell B in present grid. Now we see cell A successfully ‘grow’ into present grid and has its duplicate cell B. Note that when B is generated, placement rules mentioned above will be applied according to B’s type and position.
Pk (x,y)=α∙Ck (x,y)
Where (x,y) are coordinates of present grid, Pk (x,y) is the probability an adjacent cell can grow into present grid in ik-th iteration, Ck (x,y) is concentration of nutrient in present grid in ikth iteration, α is a coefficient that remains unchanged during simulation.
This equation helps our program to judge whether or not an adjacent cell can grow into present grid in ik-th iteration; after this judgement is settled, we choose randomly from surrounding grids that have cells in them, namely, supposing we select cell A, and inherit its cell type to get clone cell B in present grid. Now we see cell A successfully ‘grow’ into present grid and has its duplicate cell B. Note that when B is generated, placement rules mentioned above will be applied according to B’s type and position.
In conclusion, our solid model help us a lot in considering effect of spatial factors on population interactions and designing of our solid E.coli War.