Organization Computation on the Web

OrgWeb allows the computation and basic analysis of chemical organizations without the prior need of installing software. Only Java needs to be enabled in your web browser.

Index

Introduction
Organization Computation on the Web
Direct access from the Web
Tutorial
Model-Checking
Known Issues

Introduction

Chemical Organization Theory is a new method for the analysis of chemical reaction networks. As a chemical reaction network we understand a set of species or molecules that can be transformed into other molecules using reactions. A simple system could be for example a set of species a,b,c and d with the following 7 reactions
a->2 a
a + b->a + 2 b
d + c->a + 2 c
d->2 d
a->
b->
c->

with ∅ denoting the empty set. Thus reaction 2 for example denotes the transformation of one a and one b to one a and two b. Such the number of a's in the system remains constant while one b is added. The species on the left hand side of the reaction are called its substrates and the species on the right hand side its products. The number in front of each species is called it's stochiometry in the reaction. Where no number is given, an implicit stoichiometry of 1 is assumed. Reactions transforming a species into the empty set ∅ are called decay reactions. They just consume a species. These reactions model situations where the number of species can diminish over time, e.g. in order to simulate loss through an outflow from the system.

A graphical representation of the system could be

where arrows denote the direction of the reaction and the numbers at the bases the stoichiometry of the corresponding molecule.

Closure and Self-maintenance

Given such a system, Chemical Organization Theory tries to analyze the long-term behaviour by predicting for example which sets of species are likely to remain in the system over a long period of transformations by reactions. Such a chemical organization is a set of species that fulfill two properties.
First, this set is closed. That is, there is no reaction that uses species from the organization as substrates and produces a set of species that is not part of the organization. Such if we simulate the system over a long time period and starting from an organization, no species can appear anew. An example for a set fulfilling the closure condition (i.e. is closed) is {a,b}. There is no reaction using a or b as substrate and producing e.g. c or d. The set {c,d} in contrast is not closed, since reaction 3 produces a and two c out of c and d.

The second condition, self-maintenance guarantees that, given some assumptions over the simulation, species present in an organization do not disappear over the time. Such a simulation can be performed for example when assuming that during a given time step each reaction is applied for a given number of times. Such each reaction is assigned a so-called flux. The fluxes of all reactions taken together form a flux vector with the length of the number of reactions. Such the vector (1,3,0,0,0,0,0) indicates for example that reaction 1 is applied once while reaction 2 performs 3 times in the same time step. Such 1*1+3*1 a and 1*0+3*1 b are transformed into 1*2+3*1 a and 1*0+3*2 b corresponding to an overall production of 1 a and 3 b. The self-maintenance condition now requires that given a set of species and the corresponding reactions that can be performed among these species, that there is a flux vector such that the overall production of each species is non-negative. Each reaction among present species needs to have a positive flux. Taking for example the set of molecules {c} we see, that only reaction 6 can be applied. Since reaction 6 only consumes b, we can not find any flux vector assigning a positive value to reaction 6 such that we have no overall consumption of b. In contrast if we add a to the system forming {a,b} we can find such a flux vector: (1,1,0,0,1,1,0). In this case reaction 1,2,5 and 6 are enabled and we can find a flux vector such that the overall change in a and b is zero. Taking in contrast (2,2,0,0,1,1,0) we have a production of one a and b in each time step.

Thus a chemical organization is defined as a set of molecules that fulfills both, the closure and the self-maintenance condition. Consequently we can assume that the species of an organization do not vanish over time and that there are no species appearing anew.

The steady state lemma

A common method of simulation of reaction systems uses ordinary differential equations which modell the change of the amount of a species over an infinite small time step depending on the concentrations of all species. Under this circumstances the flux of the reactions depends on the amount of the different species present. A common analysis is to observe the long-term behaviour of such a system,e.g. to find steady states where the amount of each species does not change over time. Now chemical organization theory states, that if there is a steady state of the system in simulation, this steady state corresponds to a chemical organization of the system. This property is of importance, since the precise kinetics governing the ordinary differential equations of a reaction network are often not known. Thus we can predict the long-term behaviour of a model, i.e. the set of species that can be present during a long period of simulation time by computing the chemical organizations of the system. Thus, if we find for example a species not present in any organization, the lemma states, that this species can not be present in any steady state of the reaction network. This can be of utility when modelling for example large reaction networks and check whether the network fulfills the desired properties.

Visualization of Chemical Organizations - The Hasse diagram of organizations

In order to simplify the analysis of the chemical organizations of a reaction network, they can be arranged in a structure called a Hasse diagram. This structure contains several levels of nodes with links between the nodes of different levels. Each node corresponds to a set, in our case a set of species. A node k connected to an "above" lying node n indicates that the organization in k is a subset to the organization in n. Conversely, the node n lying "above" node k indicates that n is a superset of k. To simplify the analysis species present in "below" lying nodes are sometimes left out such that only species appearing anew are displayed.

Hasse diagram of the above reaction network. In the first picture species are displayed in the nodes. In the second picture only the species appearing anew are displayed.

Organization Computation on the Web

The functionality of the Applet encompasses the most commonly used analysis methods in organization computation. The applet consists of two main views, the editing view and the Hasse diagram visualization view. In the editing view the reaction network can be inserted by either entering species and reaction directly, by pasting the network in the commonly SBML format or the URL to such a file. Additionally some networks that have been analyzed using chemical organization theory are available through the "Example" drop-down menu or via the interface to the BioModels database (http://www.ebi.ac.uk/biomodels ).
To load a model from the BioModels database, you need to open the corresponding tab. There you can browse through the available models. Some information is displayed on the right hand side of the view. Double-clicking on an item in the list loads the model to the editor. Please note that you need to trust the applet (this is asked when loading the applet) in order to use this functionality.
After having loaded a model it can be edited either in the "Species", "Reactions" or "SBML" tab. In the latter, the source code of the SBML file can be edited directly. In the "Species" tab some, inflow and outflow/decay reactions for species can be added by checking the "Input" respectively "Output" boxes of the corresponding species. Such reactions are important in Chemical Organization Theory, since an inflow of an species can make it finally present in some organizations.
The computation of chemical organizations can be performed by pushing the "Start computation" button. The time needed for computation depends on network size. Most networks with less than 100 reactions and species should be processed in reasonable time (< 1 min). Some options can be given. First it is possible to search only for organizations that fulfill the self-maintenance condition. Second organizations regulatory organizations can be computed. This approach allows to integrate boolean networks into a reaction network (see Kaleta et al., 2008 for more details). The example menu contains the networks "Regulatory Switch" and "Regulatory E. coli metabolism" that have been modelled using this approach. Third organizations with non-reacting species can be computed. These are organizations where some species do not participate in any reaction. However note that this might drastically increase the number of organizations found.
When the Hasse diagram has been computed, it can be displayed by pushing "Visualize Hasse diagram". Pushing the "ParallelPlacer" button afterwards more clearly rearranges the nodes of the Hasse diagram. As a standard only species new in an organizations are displayed. Thus each node contains the species it displays plus the species of the nodes to which it has a down-link. Unchecking "show only new species" displays all species in each node. By pushing "Edit network", the applet changes back to the editing view.

Commonly used Applications

The applet offers some methods to simplify analysis. The website can be called with several parameters, that also can be combined.

Loading a model
If the argument url is supplied, a model is automatically loaded from the corresponding address. To enable this function, the applet needs to be trusted. When entering for example
http://orgtheo.artificialchemistries.org/index.php?url=http://www.ebi.ac.uk/compneur-srv/biomodels/models-main/publ/BIOMD0000000010.xml
the model BIOMD0000000010.xml from the BioModels Database is automatically loaded.

Visualizing the Hasse diagram
If view=true is supplied, a model is automatically loaded from the additionally given URL. Subsequently the Hasse diagram is computed and visualized. When entering for example
http://orgtheo.artificialchemistries.org/index.php?url=http://www.ebi.ac.uk/compneur-srv/biomodels/models-main/publ/BIOMD0000000010.xml&view=true
The model BIOMD0000000010.xml from the BioModels Database is automatically loaded and the Hasse diagram displayed.

Processing kinetic laws
If processKineticLaws=true is supplied, a model is automatically loaded from the additionally given URL. Subsequently modifiers essential for each kinetic law of the reactions to have a non-zero flux are identified and added as catalysts to the reaction. This argument can be combined with every other argument. When entering for example
http://orgtheo.artificialchemistries.org/index.php?url=http://www.ebi.ac.uk/compneur-srv/biomodels/models-main/publ/BIOMD0000000010.xml&view=true&processKineticLaws=true
the processing for the model BIOMD0000000010.xml from the BioModels Database is performed and the resulting Hasse diagram displayed.

Model-Checking
Chemical Organization Theory can help to identify species and reactions that will not appear in any long-term simulation of the model. These predictions are even possible if no kinetic laws are provided. If kinetic laws are available, they can be taken into account by setting processKineticLaws=true When entering for example
http://orgtheo.artificialchemistries.org/index.php?url=http://www.ebi.ac.uk/compneur-srv/biomodels/models-main/publ/BIOMD0000000010.xml&processKineticLaws=true&check=true
the processing for the model BIOMD0000000010.xml from the BioModels Database is performed. Afterwards it is checked whether each species and reactions can appear in an organization.

Tutorial

Next I will give a short tutorial on how to use the WebTools for organization computation. We will construct the above presented reaction network and compute the chemical organizations of the system.

We start by defining the species. This can be simply done switching to the "Species" tab and pushing 4 times the "Add species" button. Then we rename the species Than we rename the species into a,b,c and d by editing the corresponding cells in the table. Now the applet should look something like this



Next we need to add the reactions. We start by adding the non-decay reactions. Thus we change to the "Reactions" tab and add 4 reactions by pushing the corresponding button. Then we need to enter the reactions. The notation of reactions is slightly different than this presented above. The stoichiometry of each species needs to be given and the "+" between the different species are omitted. Additionally the "->" sign needs to be surrounded by a space on both sides. If a reaction is correctly entered, integer stoichiometry values will be redisplayed as floating point numbers. Thus also floating point numbers can be entered as stoichiometry. Now the applet should lookk like this



Next we add the output reactions for the species a, b and c. This can be simply done by going to the "Species" tab and checking the boxes in the "Outflow" column of the corresponding species. Switching to the "Reactions" tab you will see the corresponding reactions added. Likewhise you can add an inflow reaction of the form "-> a" for some species (but not now). Setting a species to external adds an inflow and an outflow reaction simultanously.
Now we want to compute the chemical organizations of the system. But first we need to make sure that we really compute all organizations. In some cases a network contains organizations that contains species that do not participate in any reaction. In most cases the analysis does not need such organizations. Thus the standard setting ignores them, since the number of organizations can increase drastically. However, when wanting to compute all organizations we need to check the "Add non-reacting molecules" box on the right side. Than we can compute the chemical organizations by pushing the "Start computation" button.
After a brief computation the set of organizations and the corresponding Hasse diagram of organizations is displayed. Now the applet look like this



Since this display might appear a little cryptic, the Hasse diagram can be visualized directly. This can be done by pushing the "Visualize Hasse diagram" button. In the new view you might additionally arrange the nodes of the Hasse diagram to get an better overview by pushing "Anneal Placer". Now you should see the following



By unchechecking the "show only new species" box, you see the complete list of species for each organization. If you display larger lattice you can adjust the zoom and font in order to visualize the whole or parts of the lattice. Right clicking on a node pops up a menu where you can adjust the display of the nodes and get the reactions among the species by selecting "Show node info". By the "Edit network" button you can go back, edit the network and recompute the chemical organizations.

Model-Checking

As every steady state or growth state, i.e., a state where some species accumulate, of the network corresponds to a chemical organization, it is possible to check whether each species can appear in such a steady state or growth state during simulation. These predictions do not require a knowledge on the kinetics of a reaction network. However, if reaction kinetics are available it can be checked whether the reactions fulfill a basic property that is required for the analysis. This property relates species concentrations to the flux of a reaction. Thus, it is assumed that each reaction has a non-zero flux if and only if all of its educts are present in non-zero concentration. Since some kinetic laws might violate this constraint, they can be checked, by pushing the "Analyze kinetic laws" button.
Afterwards it can be checked whether each species and reaction can appear in a steady state or growth state of the network during simulation by pushing the "Check Model" button. Results are displayed in the "Model-Checking" tab. The analysis is performed in two steps.

First, the chemical organizations of the initial network are computed. In this step, species that cannot appear in a steady state or growth state are detected. If such species are identified, the network is processed a second time after adding an inflow for species whose concentration is set to a non-zero concentration at a given time-point ( e.g., by an initial concentration). If still some species or reactions do not appear in any organization, they cannot be present in the model during simulation. This is because they are neither set to a non-zero concentration at a specific time-point nor can they be produced at positive rate. If they have a non-zero concentration during simulation, this hints to inconsistencies between the kinetic laws and the stoichiometric structure of a network. If no kinetic laws are available, this hints to problems in the stoichiometric structure. Such problems often include reactions set to irreversible despite their kinetic laws producing negative fluxes, missing reactions or inconsistent stoichiometries (e.g., not mass-balancing).

Known Issues

On 64 bit systems there is no Java Plugin from Sun available. Thus only web browsers with integrated Java support, e.g. Konqueror can be used. This issue should be resolved with Java 7.0.