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.