Team:BCCS-Bristol/Modeling

From 2008.igem.org

(Difference between revisions)
(25/07/08)
(Progress)
Line 22: Line 22:
== Approach ==
== Approach ==
== Progress ==
== Progress ==
-
=== 16/07/08 ===
 
-
Random Brownian motion was achieved last Wednesday. Following this we implemented run and tumble motion, this was working by Friday.
 
 +
=== 16th - 23rd July ===
 +
• Implemented run & tumble motion
-
=== 23/07/08 ===
+
• With/without chemotaxis
-
Collisions were working (between bacteria and particles). This was modelled with a piece-wise linear potential function.
+
 +
• Implemented interactions between objects (bacteria and particles)
 +
Run and tumble motion
-
=== 24/07/08 ===
+
A fairly realistic model of bacterial motion; bacterial motion consists of two phases:
-
The gamma distribution (for the sampling of the tumble angle) was improved (on Mario’s recommendation). A tracer for the particles was added.
+
 +
• The run; movement in a straight line. Speed is constant and equal for all bacteria
 +
• The tumble; stationary rotation
-
=== 25/07/08 ===
+
All parameters are determined at the start of the respective phase.
-
We went through our assumptions and tweaked the trace to have a colour gradient along its length.
+
The run time is sampled by feeding a random number in the range [0, 1] to an inverse
 +
exponential function, with parameters found from the literature.
 +
Tumble time and tumble angle are determined independently, as tumbles can occur at
 +
different speeds due to the independent nature of the flagella motors. Tumble time is
 +
gamma-distributed, and determined in the same way as run length; tumble angle is
 +
sampled from a fourth-order polynomial approximation of an inverse gamma
 +
distribution. The tumble angle is bi-directional, with an equal probability of clockwise or
 +
anticlockwise tumbles; however, there is a slight forward bias – i.e. the mean angle is
 +
less than 90 degrees.
-
We plan to start implementing chemical signalling gradients.
+
==== Chemotaxis ====
 +
The chemotactic gradient has an effect on the mean run length of a bacterium; runs up
 +
the gradient have a longer mean length. A chemotactic gradient can therefore be
 +
simulated by sampling run length from one of two exponential distributions with
 +
different means, depending on the direction of movement. Using a single distribution
 +
for run length regardless of direction corresponds to the isotropic case, where no
 +
chemotactic gradient is in place.
-
=== Modelling Parameters ===
+
==== Interactions ====
 +
Implementation of interactions required a change in the movement heuristic. The
 +
movement was previously determined by speed and direction. This was substituted in
 +
favour of a force-based physics engine. A bacterium experiences forces due to its own
 +
intended movement, if it is in a run phase, and the reaction forces resulting from
 +
interactions between other objects (bacteria and particles). Particles only experience
 +
reaction forces. For each object, all forces are resolved to determine a single resultant
 +
force with x and y components; this resultant force is used to calculate a velocity using
 +
Stokes’ Law for spheres moving through fluids with low Reynolds numbers. Because the
 +
Reynolds numbers involved are so small (around 10-6), inertia is negligible so
 +
acceleration is ignored and velocity is calculated at each time step independently of the
 +
previous velocity.
 +
=== 24th – 30th July ===
-
{| {{table}}
+
• Adapted gamma distribution for tumble angle
-
| align="center" style="background:#f0f0f0;"|'''Attribute'''
+
-
| align="center" style="background:#f0f0f0;"|'''Value'''
+
-
| align="center" style="background:#f0f0f0;"|'''Strain'''
+
-
| align="center" style="background:#f0f0f0;"|'''Justification'''
+
-
|-
+
-
| Length||2μm||MG1655||Values come from the University of Alberta’s datasheet on MG1655, produced to aid modelling. Variability in size between strains - for instance, AW405 length varies between 1.5±0.2μm. But University of Alberta datasheet is specifically for MG1655.
+
-
|-
+
-
| Diameter||0.8μm||MG1655||
+
-
|-
+
-
| Shape||Circle r =0.714μm||||Actually rod-like. A circle with r= 0.714μm will have equivalent surface area to rod-like.
+
-
|-
+
-
| Mass||1.02x10-13g||MG1655||Given 1x10-12g for cell wet weight. Dividing this by gravity (=9.81) gives mass.
+
-
|-
+
-
| Swimming Speed||50μms-1||MG1655||University Alberta's datasheet gives 50μms-1. However, Swimming speed is affected by: 
+
-
Viscosity (as viscosity increases the speed increases to some maximum, then decreases as the viscosity increases further. E.coli (strain:KL227 of length: 1.0μm and diameter: 0.5μm) maximum speed occurs at viscosity 8cp. Suggested to be because higher viscosity provides increased energy supply. 
+
Added trace to particles, and to the mean position of the bacteria
-
Temperature
+
Changed run length calculation heuristic
-
• Culture medium
+
==== Gamma distribution ====
 +
Mario commented that the polynomial approximation seemed to result in greater
 +
tumbling angles than those expected from the literature. This problem was resolved
 +
using a database of 1000 pre-computed values derived from the matlab inverse gamma
 +
distribution.
-
• Vary strain to strain.  
+
==== Object tracing ====
 +
Whilst watching the simulations we noticed that is hard to follow a particles path; we
 +
therefore added tracers, with a colour gradient representing time, to the particle. The
 +
positions of the particles over time are stored in a database. This could be used for
 +
statistical analysis in future.
-
• Experimental methods Many papers give different and variable speeds (mainly for AW405 ~20μms-1). The speed itself is nearly uniform during the run. May need to measure experimentally, don't know under what conditions University of Alberta. Alberta value is higher than other values, but probably because MG1655 is a motile strain.
+
We also trace the mean position of all bacteria over time to observe any emergent
-
|-
+
behaviour.
-
| Tumbling angle||Shape parameter 4 Scale parameter 18.32 Location parameter -4.6||AW405||Appears not to be dependant on the concentration gradient of chemoattractants/repellents. Nor is there correlation between the length of the run and the change in direction. Used a gamma distribution that fitted the data of Berg and Brown. Non normality observed by several groups. Suggestions that non-normality was only due to the experimental methods used e.g. in the capillary tube. Tumbling occurs when 1 or several of the flagella are released from the bundle. The flagella on transition from the bundle to release go from normal (a left-handed helix with a pitch of 2.3  m and a diameter of 0.4  m) to semi coiled (a right-handed helix with half the normal pitch but normal amplitude) and then curly (a right-handed helix with half the normal pitch and half the normal amplitude). This therefore suggests that the tumbling angle has bidirectionality.
+
-
|-
+
-
| Tumble angle||Bidirectional||AW405||Personal communication with Howard Berg. "The direction is random, more or less, but there is a slight forward bias. It varies from tumble to tumble.  The turn-angle distribution peaks at 68 deg rather than 90 deg.
+
-
Tumbles turn out to be more complex than believed in 1972.  Motors switch independently, and a tumble can occur if one or just a few motors change their directions of rotation.  Tumbles are short, as judged by the tracking microscope, because they involve filament physics rather than motor physics:  a transformation in polymorphic form, following motor reversal, from normal to semi-coiled." 
+
-
|-
+
-
| Tumbling time||0.14±0.19s||AW405||Exponential distribution fitted (stated to be exponential by Berg and Brown) using only the mean tumble length (not STDEV).
+
-
|-
+
-
| Relationship between tumbling angle and time||||||
+
-
|-
+
-
| Speed while Tumbling||0μm/s||AW405||Berg and Brown noted that AW405 slowed/stopped while tumbling.
+
-
|-
+
-
| Isotropic run lengths||0.86±1.18s||AW405||Exponential distribution fitted, this is only an approximate and does not fit exactly (see fig.4 Berg and Brown) The standard deviation is the standard deviation of the mean and has not been used in the exponential distribution
+
-
|-
+
-
| Drift during run||||AW405||Drift was observed. It is what would be expected from rotational diffusion. (at 2.7cp at 32ºC drift was 23±23°). Rotational Brownian motion cause the cell to veer off course, so that in between tumbles the probability density function f of the swimming direction e evolves according to the Fokker-Planck equation.  Drift velocity in steep gradient of attractant ~7 µm/s (Berg & Turner, 1990)
+
-
|-
+
-
|
+
-
|}
+
 +
==== Run Length calculation ====
 +
Previously the run length was determined at the start of each run. To allow chemotactic
 +
behaviour over more complex chemical fields, a Bernoulli Process was implemented
 +
instead; during a run, at each time step there is a fixed probability that the run will be
 +
terminated. The probability takes one of three values, depending on the bacterium’s
 +
perception of the chemoattractant. The three cases are:
 +
• If the bacterium is unable to detect a change in chemoattractant concentration it
 +
perceives itself to be in an isotropic environment. This occurs when the
 +
concentration change of the chemoattractant is below a sensitivity threshold.
 +
• A perceived increase in chemoattractant concentration will result in a lower run
 +
termination probability.
 +
• A perceived decrease in chemoattractant will result in a higher run termination
 +
probability.
 +
=== 31st July – 5th August ===
 +
• Implemented wrapping boundaries
 +
• Written a class that allows parameters to be altered whilst the program is
 +
running
 +
==== Wrapping boundaries ====
 +
New class was implemented to limit the diffusion of bacteria in the simulation space. A
 +
wrapping boundary consists of a line and an offset vector. When an object touches the
 +
line its position is changed according to the offset vector. These can be used to simulate
 +
a continuous stream of bacteria past an area of interest (the neighbourhood of the
 +
particles), whilst only computing the movement of a small number of bacteria.
-
 
+
==== Run-time parameter control ====
-
No modelling has been carried out yet.
+
Previously all parameters were ‘hardwired’ into the program, meaning that they had to
 +
be changed by hand before the simulation was run. A new parameters class was
 +
constructed that allows us to change parameters whilst the program is running, enabling
 +
us to run batches of simulations for statistical analysis. A GUI was also added so that the
 +
user can change parameters without needed to alter the code.
== Models ==
== Models ==

Revision as of 15:30, 8 August 2008

BCCS-Modelling-Header 01.jpg BCCS-Modelling-Header 02.jpg BCCS-Modelling-Header 03.jpg

Contents

Approach

Progress

16th - 23rd July

• Implemented run & tumble motion

• With/without chemotaxis

• Implemented interactions between objects (bacteria and particles) Run and tumble motion


A fairly realistic model of bacterial motion; bacterial motion consists of two phases:

• The run; movement in a straight line. Speed is constant and equal for all bacteria

• The tumble; stationary rotation

All parameters are determined at the start of the respective phase. The run time is sampled by feeding a random number in the range [0, 1] to an inverse exponential function, with parameters found from the literature. Tumble time and tumble angle are determined independently, as tumbles can occur at different speeds due to the independent nature of the flagella motors. Tumble time is gamma-distributed, and determined in the same way as run length; tumble angle is sampled from a fourth-order polynomial approximation of an inverse gamma distribution. The tumble angle is bi-directional, with an equal probability of clockwise or anticlockwise tumbles; however, there is a slight forward bias – i.e. the mean angle is less than 90 degrees.

Chemotaxis

The chemotactic gradient has an effect on the mean run length of a bacterium; runs up the gradient have a longer mean length. A chemotactic gradient can therefore be simulated by sampling run length from one of two exponential distributions with different means, depending on the direction of movement. Using a single distribution for run length regardless of direction corresponds to the isotropic case, where no chemotactic gradient is in place.

Interactions

Implementation of interactions required a change in the movement heuristic. The movement was previously determined by speed and direction. This was substituted in favour of a force-based physics engine. A bacterium experiences forces due to its own intended movement, if it is in a run phase, and the reaction forces resulting from interactions between other objects (bacteria and particles). Particles only experience reaction forces. For each object, all forces are resolved to determine a single resultant force with x and y components; this resultant force is used to calculate a velocity using Stokes’ Law for spheres moving through fluids with low Reynolds numbers. Because the Reynolds numbers involved are so small (around 10-6), inertia is negligible so acceleration is ignored and velocity is calculated at each time step independently of the previous velocity.

24th – 30th July

• Adapted gamma distribution for tumble angle

• Added trace to particles, and to the mean position of the bacteria

• Changed run length calculation heuristic

Gamma distribution

Mario commented that the polynomial approximation seemed to result in greater tumbling angles than those expected from the literature. This problem was resolved using a database of 1000 pre-computed values derived from the matlab inverse gamma distribution.

Object tracing

Whilst watching the simulations we noticed that is hard to follow a particles path; we therefore added tracers, with a colour gradient representing time, to the particle. The positions of the particles over time are stored in a database. This could be used for statistical analysis in future.

We also trace the mean position of all bacteria over time to observe any emergent behaviour.

Run Length calculation

Previously the run length was determined at the start of each run. To allow chemotactic behaviour over more complex chemical fields, a Bernoulli Process was implemented instead; during a run, at each time step there is a fixed probability that the run will be terminated. The probability takes one of three values, depending on the bacterium’s perception of the chemoattractant. The three cases are:

• If the bacterium is unable to detect a change in chemoattractant concentration it perceives itself to be in an isotropic environment. This occurs when the concentration change of the chemoattractant is below a sensitivity threshold.

• A perceived increase in chemoattractant concentration will result in a lower run termination probability.

• A perceived decrease in chemoattractant will result in a higher run termination probability.

31st July – 5th August

• Implemented wrapping boundaries

• Written a class that allows parameters to be altered whilst the program is running

Wrapping boundaries

New class was implemented to limit the diffusion of bacteria in the simulation space. A wrapping boundary consists of a line and an offset vector. When an object touches the line its position is changed according to the offset vector. These can be used to simulate a continuous stream of bacteria past an area of interest (the neighbourhood of the particles), whilst only computing the movement of a small number of bacteria.

Run-time parameter control

Previously all parameters were ‘hardwired’ into the program, meaning that they had to be changed by hand before the simulation was run. A new parameters class was constructed that allows us to change parameters whilst the program is running, enabling us to run batches of simulations for statistical analysis. A GUI was also added so that the user can change parameters without needed to alter the code.

Models

No modelling has been carried out yet.

GRN Models

Agent Based

Hybrid

Results

Modelling Photo Album