Team:BCCS-Bristol/Modeling/BSim

From 2009.igem.org

(Difference between revisions)
Line 27: Line 27:
== BSim Features ==  
== BSim Features ==  
-
There are many new features available in the new version of BSim:
+
The original BSim package from the BCCS Bristol team competing in iGEM 2008 was designed primarily for analysis of the specific problem at the time i.e. chemotactic behaviour of bacteria and basic quorum signalling. Although it was robust and powerful, it was felt that adding new features required a very in-depth knowledge of Java as the biological and physical aspects of the program were very closely intertwined with performance and system related code. Motivated by the wet lab work and this year's project, we decided to take the best features of BSim 2008 and create a new, more modular platform, where only a basic programming background is required to create advanced simulations.
 +
 
 +
BSim 2009 has been designed from the ground up to allow for advanced agent-based modelling. All parameters used throughout the package demonstrate physical and biological plausibility and are fully referenced. By completely basing BSim on the literature, it is easy to ensure that all modules remain reliably synchronised and work correctly together, as well as minimising the effort required to create new simulations.
 +
 
 +
The main features of BSim 2009 are summarised below. Click on the icon next to a feature to read more about it.
 +
 
=== Bacteria ===
=== Bacteria ===
Line 33: Line 38:
A versatile bacterium model is specified in the BSim core libraries. The default BSim bacterium exhibits physically correct run-and-tumble motion powered by a flagellar motor, and can be made to replicate and produce [[Team:BCCS-Bristol/Modeling/BSim#Vesicles|outer membrane vesicles]] in a biologically realistic manner.
A versatile bacterium model is specified in the BSim core libraries. The default BSim bacterium exhibits physically correct run-and-tumble motion powered by a flagellar motor, and can be made to replicate and produce [[Team:BCCS-Bristol/Modeling/BSim#Vesicles|outer membrane vesicles]] in a biologically realistic manner.
-
* Heavy basis on literature
 
-
* Run and tumble by default (flagellar motor)
 
-
* chemotaxis!
 
-
* brownian motion and fluid forces implemented
 
-
* easily adaptable.
 
=== Interactions and actions ===
=== Interactions and actions ===
Line 43: Line 43:
BSim allows the user to specify the actions and interactions present between different elements in the simulation. The specification allows for easily specified and adaptable behaviour based on what is actually required for a specific simulation. Everything can interact!
BSim allows the user to specify the actions and interactions present between different elements in the simulation. The specification allows for easily specified and adaptable behaviour based on what is actually required for a specific simulation. Everything can interact!
-
* easily specified and adaptable
 
-
* can do whatever you want:
 
-
** Collision
 
-
** Merging (vesicle/bacterium)
 
-
** GRNs
 
-
* other interactions:
 
-
** Everything can interact! chemical fields, GRNs, vesicles...
 
=== Vesicles ===
=== Vesicles ===
Line 55: Line 48:
Many bacteria naturally produce outer membrane vesicles, and the size and rate of production seems to be based on rate of change of bacterial surface area. BSim includes physically based OMV production dynamics which were incorporated into our main iGEM project to allow us to analyse the effectiveness of OMV based communication.
Many bacteria naturally produce outer membrane vesicles, and the size and rate of production seems to be based on rate of change of bacterial surface area. BSim includes physically based OMV production dynamics which were incorporated into our main iGEM project to allow us to analyse the effectiveness of OMV based communication.
-
* Small, but size based on growth
 
-
* Size and creation rate based on rate of change of surface area [ref - steve?]
 
-
* Vesicle movement - brownian motion in a viscous fluid environment
 
-
* Interaction can be specified
 
=== Chemical Fields ===
=== Chemical Fields ===
Line 64: Line 53:
Chemical fields play an important part in many biological systems. BSim allows the user to specify an arbitrary chemical field and use this to realistically interact with the bacterial behaviour. It is also possible to simulate the diffusion of larger molecules as particle fields.
Chemical fields play an important part in many biological systems. BSim allows the user to specify an arbitrary chemical field and use this to realistically interact with the bacterial behaviour. It is also possible to simulate the diffusion of larger molecules as particle fields.
-
* diffusion
 
-
* decay
 
-
* physical units
 
=== [[Team:BCCS-Bristol/Modeling/GRN|GRN modelling]] ===
=== [[Team:BCCS-Bristol/Modeling/GRN|GRN modelling]] ===
BSim allows the user to specify complex GRNS based on ODEs and apply these to individual bacteria to analyse GRN effects on a population level. It is now possible to analyse the effects of individual GRNs on a population level, all within the same context.
BSim allows the user to specify complex GRNS based on ODEs and apply these to individual bacteria to analyse GRN effects on a population level. It is now possible to analyse the effects of individual GRNs on a population level, all within the same context.
 +
=== [[Team:BCCS-Bristol/Modeling/Magnetotaxis|Magnetotaxis]] ===
=== [[Team:BCCS-Bristol/Modeling/Magnetotaxis|Magnetotaxis]] ===
-
It is now possible to simulate magnetotactic bacteria. These bacteria are sensitive to externally applied magnetic fields and can therefore be influenced to move along the direction of user specified magnetic field lines.
+
Some bacteria are sensitive to externally applied magnetic fields and can therefore be influenced to move along the direction of specific magnetic field lines. BSim currently implements a model of a constant magnetic field that can be specified by the user and can be used to simulate the effect of such a field on the motility of magnetotactic bacteria.
-
==BSim - A stochastic agent-based simulation framework==
 
-
The original BSim package from the BCCS Bristol team competing in iGEM 2008 was designed primarily for analysis of the specific problem at the time i.e. chemotactic behaviour of bacteria and basic quorum signalling. Although it was robust and powerful, it was felt that adding new features required a very in-depth knowledge of Java as the biological and physical aspects of the program were very closely intertwined with performance and system related code. Therefore we decided to take the best features of BSim 2008 and create a new, more modular platform, where only a basic programming background is required to create advanced simulations.
+
=== Robust, modular components ===
-
 
+
-
BSim 2009 has been designed from the ground up to allow for advanced agent-based modelling. All parameters used throughout the package demonstrate physical and biological plausibility and are fully referenced. By completely basing BSim on the literature, it is easy to ensure that all modules remain reliably synchronised and work correctly together, as well as minimising the effort required to create new simulations.
+
-
Facilitated by the code restructuring, we have been able to implement a variety of new features into BSim 2009 to assist with the modelling of the wet lab work. We briefly describe the main features below. See [[Team:BCCS-Bristol/Modeling/BSim_Features|the BSim features page]] for more details of the BSim package and its new features.
+
BSim 2009 has been designed to allow maximum flexibility in simulation design while keeping the deep coding behind-the-scenes. All components can be used individually or in arbitrary combinations allowing the end user to quickly create advanced simulations without necessarily having previous Java programming experience. The source code is freely available and extensively referenced and commented, so new modules can quickly be addded if necessary for a specific simulation.
-
===BSim 2009 Feature Overview===
+
=== Versatile, customisable logging and visual output ===
-
The main features of BSim 2009 include:
+
Everything that can be specified by the user within a simulation can be logged to a file readable by MATLAB, Excel and other numerical analysis packages. The user can specify time intervals, formatting and what to output for all types of loggers. In addition, visual output is available, both directly to the screen and to image/movie files.
-
* Versatile and adaptable simulation definition specification
+
-
* Robust, modular components
+
-
* A variety of fully featured simulation objects, including
+
-
** Particles with brownian motion (can simulate beads, vesicles)
+
-
** Bacteria with flagellar motors exhibiting
+
-
*** Correct run and tumble behaviour
+
-
*** Chemotactic sensing and motion
+
-
*** Growth and vesiculation
+
-
** Physically based chemical fields incorporating diffusion and decay
+
-
** Ordinary Differential Equations and systems of ODEs can be fully specified and interact with any object, e.g. to allow agent based GRN simulation (See the link below for an example).
+
-
* Actions and interactions between all objects in a simulation can be easily specified based on requirements.
+
-
* Everything that can be specified by the user can be logged to a file readable by MATLAB, Excel and other numerical analysis packages.
+
-
* Visual output is available, both directly to the screen and to image/movie files.
+
-
* BSim has already been used in other projects: [https://2009.igem.org/Team:BCCS-Bristol/Modeling/quorum_coupled_repressilators quorum coupled repressilators], simulation of electrically charged microtubule transport.
+

Revision as of 09:34, 20 October 2009

BCCS-Bristol
iGEM 2009



Tutorials
Download
Case Studies
Interested in finding out more about the creation of BSim simulations? Click here for a selection of tutorial examples. Want to use the BSim software yourself? Click here to download the core libraries and source code (available freely under the MIT licence). The BSim platform has already been used in a number of other projects! Read more about these projects here.

Contents

BSim Features

The original BSim package from the BCCS Bristol team competing in iGEM 2008 was designed primarily for analysis of the specific problem at the time i.e. chemotactic behaviour of bacteria and basic quorum signalling. Although it was robust and powerful, it was felt that adding new features required a very in-depth knowledge of Java as the biological and physical aspects of the program were very closely intertwined with performance and system related code. Motivated by the wet lab work and this year's project, we decided to take the best features of BSim 2008 and create a new, more modular platform, where only a basic programming background is required to create advanced simulations.

BSim 2009 has been designed from the ground up to allow for advanced agent-based modelling. All parameters used throughout the package demonstrate physical and biological plausibility and are fully referenced. By completely basing BSim on the literature, it is easy to ensure that all modules remain reliably synchronised and work correctly together, as well as minimising the effort required to create new simulations.

The main features of BSim 2009 are summarised below. Click on the icon next to a feature to read more about it.


Bacteria

A versatile bacterium model is specified in the BSim core libraries. The default BSim bacterium exhibits physically correct run-and-tumble motion powered by a flagellar motor, and can be made to replicate and produce outer membrane vesicles in a biologically realistic manner.


Interactions and actions

BSim allows the user to specify the actions and interactions present between different elements in the simulation. The specification allows for easily specified and adaptable behaviour based on what is actually required for a specific simulation. Everything can interact!


Vesicles

Many bacteria naturally produce outer membrane vesicles, and the size and rate of production seems to be based on rate of change of bacterial surface area. BSim includes physically based OMV production dynamics which were incorporated into our main iGEM project to allow us to analyse the effectiveness of OMV based communication.


Chemical Fields

Chemical fields play an important part in many biological systems. BSim allows the user to specify an arbitrary chemical field and use this to realistically interact with the bacterial behaviour. It is also possible to simulate the diffusion of larger molecules as particle fields.


GRN modelling

BSim allows the user to specify complex GRNS based on ODEs and apply these to individual bacteria to analyse GRN effects on a population level. It is now possible to analyse the effects of individual GRNs on a population level, all within the same context.


Magnetotaxis

Some bacteria are sensitive to externally applied magnetic fields and can therefore be influenced to move along the direction of specific magnetic field lines. BSim currently implements a model of a constant magnetic field that can be specified by the user and can be used to simulate the effect of such a field on the motility of magnetotactic bacteria.


Robust, modular components

BSim 2009 has been designed to allow maximum flexibility in simulation design while keeping the deep coding behind-the-scenes. All components can be used individually or in arbitrary combinations allowing the end user to quickly create advanced simulations without necessarily having previous Java programming experience. The source code is freely available and extensively referenced and commented, so new modules can quickly be addded if necessary for a specific simulation.


Versatile, customisable logging and visual output

Everything that can be specified by the user within a simulation can be logged to a file readable by MATLAB, Excel and other numerical analysis packages. The user can specify time intervals, formatting and what to output for all types of loggers. In addition, visual output is available, both directly to the screen and to image/movie files.