P System Modelling Framework



Framework Description 

    The framework simulates the evolution of Multi-compartmental Gillespie algorithm over a hierarchy of compartment structures.

    The kernel for the system has the following features which aim to provide flexibility in simulation and modularisation in modelling along with a model checking strategy. 

  1. Multi-compartments and Gillespie – The algorithm used to select a compartment and a rule in which to apply it is a variation of the stochastic Gillespie algorithm and is known as multi-compartmental Gillespie [1]. This creates the effect of many compartments simultaneously running under Gillespie.
  1. Rule selection using probabilities and total parallelism – There are alternative mechanisms for selecting rules depending on the nature of the application. Gillespie algorithm assigns a time in which each rule is applied, dependent on the availability of its reactants and a constant. Rule selection can be made in this way by applying the rule which has the shortest time. Rule selection can also be made by ignoring the concentration of reactants and selecting a rule only by using the constant assigned to it as a probability that the rule will be applied. There is another option to allow total parallelism, that is once a rule is selected, it is applied the maximum number of times that it can be applied for the number of reactants available.
  1. Identify a set of rules with a value and be able to replicate them in other parts – Each compartment has a set of rules whose scope for application is the aforementioned compartment and its outside or inside compartment, that is, the compartment which is at the parent or a child node of the given compartment in the hierarchy tree. The set of rules are defined and can be replicated by assigning the same set to different compartments.
  1. Identify a compartment and replicate it with different initial values – A compartment or compartment hierarchy can be modulated in its specification and then replicated many times in the model.
  1. String in addition to objects – The species that are manipulated in the system can be Strings as in addition to objects.
  1. Translation of a P system to PRISM – The specification of a P system can be translated for PRISM to provide model checking.


Back to top

Tools and implementations of the Framework

    A P system model can be created in the following way.

    The P system is described in SBML format and a set of SBML notations is produced which describes the components of the system. Aspects of the system that can be described separately can be specified by separate sub-systems and stored in separate files. This is to add comprehension of an individual system or sub-system and to allow this sub-system to be replicated in the final system that is to be simulated. The components of the system are produced.

    The SBML representations can then be transformed to construct a more specific model for simulation. The components specified can be replicated and further SBML representations created where the initial values of species may be changed.

    For simulation, the SBML notations are transformed into the input format for the simulator. This contains the full list of compartments and the structural hierarchy and the initial amounts for their species. This is a static view and is the initial configuration of the system and is given to the simulator to produce an evolution of the species through time. 

  1. Simulators

The following simulators to evolve a P system are available:

1.1 An implementation of multi-compartment Gillespie, in Scilab - SL_PSimulator


1.2 An implementation of multi-compartmental Gillespie, in C - C_PSimulator


If you have any problems contact Francisco J. Romero-Campero at fran@us.es or Marian Gheorghe at m.gheorghe@dcs.shef.ac.uk 

  1. Other tools

    There are other tools to assist with the input and output of the simulator and allow the creation of the input and graphical representation of the output. 

    There exists a User Guide and help on how to use this tool, along with the tool itself from its webpage [http://www.celldesigner.org/].

    The tool takes in a set of SBML files describing parts of a P system and produces the resultant P system. This allows a more complex system to be described in several files. The converter can then represent the system in various different formats of output, used as input for different simulators. 

    A compartment or compartment hierarchy can be replicated many times within the P system by specifying the number of replications and the environment to which to keep them. The path of the tree must be specified in the blueprint, but there can be many branches duplicated with the compartment sub-tree described after the containing compartment node. 

    This tool is a Java application and requires a Java JVM [http://java.sun.com/]. There are example usages given when the tool is started. 


If you have any problems contact Francisco J. Romero-Campero at fran@us.es or Marian Gheorghe at m.gheorghe@dcs.shef.ac.uk 

    The output is compatible with SciLab [http://www.scilab.org/] and spreadsheets such as OpenOffice Calc and MS Excel and may be visualised this way.

 Back to top


    The example described below contains a large number of cells that are communicating with the same outside environment. Figure 2 shows the view of the SBML created in the Cell Designer tool. This describes the component called the “Cell” and its relationship with the “Environment” which is the compartment outside. This is stored as the blueprint for this model.

    To run simulations, a model must be created of the specific system and the SBML converter is used to create input for the simulator.

    In this example, 100 cells are created in the environment by specifying that 100 instantiations of the model described in the given file, within the specified container Environment. I.e. example.sbml : 100 : Environment. This instructs to copy the subsystem described in example.sbml 100 times, but keep the same environment. The system produced contains 101 compartments, 100 have the blueprint of the Cell and one that of the Environment. If it was such that the cell had compartments within in, such as a nucleus, then these would also be replicated too giving 201 compartments.

    If there are cells which start with different initial amounts for their species, then the SBML Converter tool can be used to replicate the files the specified number of times. This allows the production of similar blueprints that are edited. Once there is a subset of blueprints produced, they can be instantiated the relevant number of times.

    The resultant input file is given to the simulator and the various different simulation types can be applied.

 Back to top

Case Studies