Upload
hoangduong
View
231
Download
4
Embed Size (px)
Citation preview
ADGenKinetics: An Algorithmically Differentiated Libraryfor Biochemical Networks Modeling
via Simplified Kinetics Formats
Atiyah ElsheikhAustrian Institute of Technology, Vienna, Austria
Abstract
This work demonstrates the compact but powerfulfreely available Modelica library ADGenKinetics fordescriptive modeling of biochemical reaction net-works using simplified kinetics formats. While exist-ing powerful works and guidelines for modeling bio-chemical reaction networks based on classical mech-anistic kinetics already exist, in this work a first at-tempt of utilizing the power of Modelica constructsfor providing a compact implementation of simplifiedkinetic formats with generalized structured formulasis presented. This gives the opportunity of realizingbiochemical reaction networks using few number ofreaction components, in contrast to libraries based onclassical mechanistic kinetics which require hundredsof reaction components. Moreover, ADGenKineticsis the first algorithmically differentiated Modelica li-brary that is enhanced with differentiated componentsby which parameter sensitivities are additionally com-puted with minimal efforts from the user perspective.
Keywords: enzyme kinetics, biochemical reactionnetworks, systems biology, algorithmic differentiation
1 Introduction
Modelica as a universal modeling language with a lotof capabilities for supporting hierarchical modeling,multidisciplinary modeling, object-oriented reusablecomponents and different modeling flavours with alarge degree of freedom and creativity is continuouslyattracting the attention of many scientific fields.However, in the field of Systems Biology aiming atstudying cellular process with the aid of mathematicalmodels, there are still few published non-standardizedattempts for modeling biochemical reaction networksfor describing the metabolism within cellular activi-ties, one of the core modeling activities demanded bymany applications of the field of Systems Biology.
This work demonstrates a comprehensive overviewof the compact Modelica library ADGenKinetics fora specific set of reaction kinetics. These subsets ofenzyme kinetics are referred to as simplified kinet-ics formats and are represented by generalized struc-tured kinetics formulas suitable for biochemical reac-tions with arbitrary number of substrates, products, in-hibitors and activators. The employment of general-ized kinetics have two advantages from two perspec-tives:
1. From the modeling perspective: Utilization ofgeneralized kinetics formulas provides the oppor-tunity of implementing a compact library with sofew numbers of components that the user nei-ther needs to choose an enzyme kinetic compo-nent from a long list of components nor needs toself implement newer enzyme kinetics for newercases of non considered reactions
2. From the implementation perspective: By ef-ficient employment of powerful Modelica lan-guage constructs, the implementation of highlyspecialized practical library for modeling bio-chemical network applications gets simplified.
The proposed library is distinguished by the followingcriteria:
• It is suitably adequate to get linked with special-ized graphical editors for modeling biochemicalreaction networks and for other applications ofautomatic model generation
• It is the first algorithmically differentiated libraryby which algorithmic differentiation (AD) tech-niques [6, 11] are directly applied at the librarylevel [5]. The resulting additional subpackagecontains extended components in which param-eter sensitivities, i.e. derivatives of model vari-ables w.r.t. model parameters, are represented.
DOI Proceedings of the 9th International Modelica Conference 915 10.3384/ecp12076915 September 3-5, 2012, Munich, Germany
• it is open-source and provided under the Model-ica License 2.
The rest of the work is structured as follows: section 2presents a quick introduction to biochemical networksmodeling. Section 3 gives rather a quick overview ofvarious classical and simplified kinetic laws but com-prehensive enough for appreciating this contribution.Section 4 demonstrates the proposed library, its ad-vanantages and limitations along an example in section5. Finally, outlook is given in section 6.
2 Background and Terminology
2.1 Modeling biochemical reaction networks
Biochemical reaction network models are used for de-scribing the dynamics of molecular species and theirinteraction within the cellular metabolism [9]. Usuallysuch models are based on the continuum1 and homo-geneity assumptions2. The law of mass conservation3
is used for describing the rate of change in the mass ofintermediate metabolites (i.e. biochemical substances)in a biochemical reaction network. The resulting mod-els typically have the following structure:
c = N · v(c,α), c(0) = c0 (1)
where c ∈ Rm stands for vectors of the metabolite con-centrations, v = v(c, p) ∈ Rn is a vector of reactionrates described by enzyme kinetics, α is kinetic pa-rameters vector describing enzyme characteristics andN ∈ Rm×n is the reactions stoichiometry describing thenumber of participating molecules in any single reac-tion [15].
Figure 1 demonstrates a typical biochemical net-work of enzymatic reactions termed as the Spiral-lus which represents an abstraction of Tri-CarboxylicAcid (TCA) cycle [14]. The set of freely distributedmetabolites A,B,C,D,E,F are viewed as nodes, whilethe reactions are viewed as intermediate edges amongthe metabolites [2]. With the presence of substratesbeing taken up through the initial reaction vupt , in-termediate reactions become active and the two prod-ucts Eex,Fex get produced as long as enough substratemolecules are taken up. Some of the reactions are ir-reversible such as v3 (i.e. the flow of materials is con-ceptually only in the forward direction) while others
1All chemical species involved have such a high copy numberto be described by a continuous concentration value
2Diffusion processes are so fast that concentrations can be con-sidered to be spatially homogeneous
3the mass within a closed system remains constant over time
Figure 1: Spirallus: An Abstraction of the TCA cycle
are reversible such as v1. The reactions vupt ,v3,v4 areinhibited by the molecules of the metabolites A,D,Cacting as inhibitors respectively. Analogously, specificmolecules of metabolites may act as activators by ac-celerating certain reactions. Inhibitors and activatorsare referred to as effectors or modifiers. A mathemati-cal model for describing the process dynamics is givenas follows:
˙[A] = vupt − v1˙[B] = v1 − v2 − v5
˙[C] = v2 − v3˙[D] = v3 − v4
˙[E] = v4 + v5 − v2 − v6˙[F ] = v3 + v4 − v7
The state variables A,B, ..,Fex corresponds to the con-centration of metabolites. The algebraic variables v j
describe the reaction rates via algebraic functions re-ferred to as enzyme kinetics, the topic of the followingsection.
3 Enzyme kinetics
Vital cellular processes at the metabolism level are per-formed according to the present set of enzymatic reac-tions networks. The base elements of such networksare the involved enzymatic reactions. For instance,within an uni-uni enzymatic reaction in the form:
S+Ek1−−⇀↽−−k−1
ES k2−→ E +P (2)
ADGenKinetics: An Algorithmically Differentiated Library for Biochemical Networks Modeling …
916 Proceedings of the 9th International Modelica Conference DOI September 3-5, 2012, Munich Germany 10.3384/ecp12076915
the molecules of the specific enzyme E binds withthe molecules of the substrate S according to a rateconstant k1. Similarly, k−1 is a rate constant describ-ing the decomposition rate of the complex ES into Eand S. The resulting enzyme-substrate complex ESmolecules are vastly transformed to the product P. Thereaction rate v of such transformation, i.e. product for-mation, is modeled by enzyme kinetics. Such kineticstypically correspond to nonlinear functions of the fol-lowing form:
v(t) = e · f (c(t),α) (3)
where e is the amount of the associated enzyme, α aset of parameters corresponding to enzyme character-istics and c(t) the concentration of the involved sub-strates, products and effectors [1]. In case of a re-versible reaction, f can be usually expressed in termsof forward and backward reaction rate as v = v f wd −vbwd . In this case, the overall direction of the reactionis then the sign of v. Many enzyme kinetics approachesfor describing the function f exist some of which aredemonstrated in the following subsections.
3.1 Mechanistic kinetics
In order to emphasize the importance of simplified ki-netics formats, the widely used classical mechanistickinetics are introduced as a motivation. Mechanis-tic kinetics describe the reaction rates of biochemi-cal enzymatic reactions by involving the underlyingenzyme binding mechanisms within the mathemati-cal model. For instance, the simple reaction (2) ismodelled by Michaelis-Menten kinetic. Its analyticalderivation based on the quasi-steady state assumption(i.e. k−1,k1 ≫ k2) leads to the following formula:
v =k2[E]0[S]
k−1+k2k1
+[S]=
Vmax[S]Km +[S]
(4)
The parameter Km corresponds to the substrate con-centration that yields the half-maximal reaction rateVmax/2. These two parameters represent enzymaticcharacteristics demonstrating how quickly the enzymebecomes saturated and what its maximum activity is.
Reactions with effectors
For enzymatic activities influenced by effectors vari-ous types and binding mechanisms exist, cf. figure 2for various inhibition mechanisms. Mechanistic kinet-ics distinguish such types of inhibitions mechanismsthrough their mathematical formulation according towhether
Figure 2: A summary of different types of inhibitionmechanisms
• the inhibitor binds to the complex ES
• the inhibitor binds to S
• the reversibility of the inhibition
For instance, the analytical derivation of a mechanistickinetic for an irreversible reaction inhibited by I ac-cording to complete competitive inhibition leads to:
v =Vmax[S]
Km(1+[I]/KI)+ [S](5)
Where KI is a parameter that expresses the ratio of EIformation to EI decomposition. Within competitiveinhibition, the inhibitor I competes with the substrate Sfor binding with the enzyme E. In this case, the releaseof P is blocked by I, cf. figure 2. Similar discussionregarding activation mechanisms leads to the fact thata wide range of mechanistic kinetics formulas existsdistinguishing all these various mechanisms.
Multi-substrate reactions
For cellular reactions with more than one substrateand one product, very likely to arise in the cellular
Atiyah Elsheikh
DOI Proceedings of the 9th International Modelica Conference 917 10.3384/ecp12076915 September 3-5, 2012, Munich, Germany
metabolism, mechanistic kinetics are more sophisti-cated. Their analytical derivation additionally consid-ers the sequence in which substrates bind and productsare released. For example, within a bi-bi reaction, (twosubstrates S1,S2 and two products P1,P2) the underly-ing enzymatic mechanisms are differentiated accord-ing to whether binding to enzyme is done
• in random order, (i.e. E binds with both of S1 andS2 in any order)
• in a sequential order, (i.e. S2 binds only with thecomplex ES1)
• in an alternate binding of substrates and releaseof products (ping-pong mechanisms)
as well as
• which intermediate complexes are formed (onlyES1, ES2 or also ES1S2)
• Interactions among reactants (e.g. inhibitionthrough product formation)
For example, the kinetic of an ordered bi-bi reaction(i.e. binding in a specific order)
E +S1 ⇀↽ ES1 +S2 ⇀↽ ES1S2 ⇀↽
EP1P2 ⇀↽ P1 +EP2 ⇀↽ E +P1 +P2 (6)
is described with the equation:
v =Vmax[S1][S2]
KiS1KmS2 +KmS2 [S1]+ [S1][S2](7)
In summary, each combination of assumptions re-garding the underlying enzymatic reaction leads toa unique kinetic formula. This results in enormousnumber of possible equation patterns correspondingto combinatorially high number of different assump-tions. Such equations do not necessarily follow a gen-eral equation pattern if they are expressed in termsof mechanistic parameters rather than elementary rateconstants ki. This causes some difficulties by modelingsince hundreds of components need to be separatelyimplemented for expressing different enzyme bindingmechanisms.
3.2 Generalized kinetics formats
As already shown, mechanistic kinetics characterizedetailed description of the underlying enzymaticmechanism. These kinetics pose however some prob-lems when used for describing enzymatic reactions
within cellular environment. Under such crowdedconditions, a lot of effectors may influence the enzymeactivity. When considering all typical interactions,the corresponding derived kinetic becomes verycomplex and parameter dependencies are enhancedwhen estimating the parameters with experimentallygenerated data leading to serious problems in theprocess of model identification [16].
This argument motivates the use of generalized ki-netics which relay on more simplified assumptions twoof which are introduced. The first type is the so-calledconvenience kinetics which assumes a reversible rapidequilibrium with random binding mechanism [10]. Inthis way, the corresponding kinetic of any reactionwith arbitrary number of substrates Si, products Pj, in-hibitors Ib and activators Aa becomes:
v = ∏a
KAa +[Aa]
KAa
·∏b
KIb
KIb +[Ib]
·V f wd
max ∏i
[Si]
KmSi
−V bwdmax ∏
j
[Pj]
KmPj
∏i
(1+
[Si]
KmSi
)+∏
j
(1+
[Pj]
KmPj
)−1
(8)
Another kinetic format is the linlog kinetic [8] givenby:
v = v0 +∑i
αi · ln(Si
S0i)+∑
jβ j · ln(
Pj
P0j)+
∑a
γa · ln(Aa
A0a)+∑
aδb · ln(
Ib
I0b) (9)
In contrary to mechanistic parameters, which pro-vide descriptive physical insights into enzymaticmechanisms, linlog parameters are based on scaledsensitivities describing the influence of characteristicchanges of enzymes on a referenced reaction rate at areference steady-state v0.
One of the main advantages of the presented kinet-ics in the context of this work is that they are expressedin terms of generalized structured formulas very ade-quate for compact implementation and automatic gen-eration of highly complex models. However, one ofthe limitation of such kinetics is that they may notdescribe the enzymatic behavior accurately in someboundary cases as shown in [7].
ADGenKinetics: An Algorithmically Differentiated Library for Biochemical Networks Modeling …
918 Proceedings of the 9th International Modelica Conference DOI September 3-5, 2012, Munich Germany 10.3384/ecp12076915
4 Overview of the library
4.1 The Biochem Library
For modeling biochemical networks with Modelica,considerable efforts have been realized by the Biochemlibrary [12]. It provides the essential guidelines anddesign principles for achieving this goal, eg. basic im-plementable interfaces and basic types. According tothe available publications, Biochem provides about 99abstract reaction types under the restriction that a re-action can get connected to at most three substrates,three products and one effector. Out of these abstracttypes, many mechanistic reaction kinetics can be de-rived. Within the library Metabolic, a published im-plementation of Biochem, at least 180 kinetics are im-plemented and classified according to the number ofsubstrates and products within many sub-packages. Ifall combination of reaction assumptions are consid-ered, still many hundred of reaction kinetics need tobe inserted. If more than one effector is considered,a realistic scenario for biochemical reaction networksin cellular environment, the number of required com-ponents corresponding to various kinetics would be sohigh.
4.2 The ADGenKinetics Library
In this work, a compact implementation of simpli-fied kinetics is demonstrated following the mainguidelines provided by Biochem w.r.t. the librarystructure, physical units, naming conventions andsome of the implementation. The main differencesappear whenever the mathematical structures of thesimplified kinetics are utilized for implementinginterfaces for the underlying generalized formulas.These interfaces are specialized according to thenumber of reactants, products, specific effectors,reversibility etc. By exploiting powerful Modelicaconstructs, realization of simplified kinetics requirevery few number of components out of which realisticbiochemical networks are easily constructed, modeledand simulated. On the other hand classical mech-anistic kinetics within implementation of Biochemrequires a large number of components. Users arelikely to insert additional kinetics whenever new orslightly modified biochemical reaction networks needto be modeled.
Figure 3 summarizes the presented library. The fol-lowing packages are available:
• Interfaces: connectors, classification interfaces
and icons
• NodeElements: components for nodes
• Reactions: components for reactions
• Derivatives: extended components for computingparameter sensitivities
• Examples: biochemical network models
Further two subpackages within NodeElements andReactions exist corresponding to two ways of decla-ration of connectors within components:
1. dynamic: parametrized number of connections
2. static: fixed number of connections
The main differences of both ways and their advan-tages and disadvantages are emphasized in this sectionalong with the given examples. Common interfacesand abstract classes are located above these packages.
4.3 Connectors
The fundamental laws on which biochemical reactionnetwork models rely i.e. the continuum and homo-geneity assumptions and the law of conservation (cf.section 2.1) translates into the terminology of Model-ica as follows:
Listing 1: Implementation of chemical portsconnector ChemicalPort
"reaction connector from a node to
a reaction"
Units.Concentration c "Concentration";
flow Units.VolumetricReactionRate r
"reaction rate";
end ChemicalPort;
That is, the concentration of a substance is thepotential variable while the flow rate of materialsrepresents the flow variables when connecting nodesand reactions together. The mathematical models ofbiochemical reaction networks do not require a nodeto distinguish between a connection from an ingoingreaction and a connection to an outgoing reaction.The sign of the reaction rate is explicitly determiningwhether the considered node is a substrate or a productof the connected reaction.
This situation is different with connections to nodesfrom a reaction side. The kinetic formula distinguishesbetween a substrate node and a product node, cf. equa-tion (8). Consequently additional connectors, Chem-icalPort_S, ChemicalPort_P extending the connector
Atiyah Elsheikh
DOI Proceedings of the 9th International Modelica Conference 919 10.3384/ecp12076915 September 3-5, 2012, Munich, Germany
Figure 3: An overview of the library with static/dynamic number of connections
ChemicalPort with distinguished icons for differenti-ating between connections to substrates and connec-tions to products are considered. Additionally, the spe-cialized connector ModifierChemicalPort between ef-fectors and reactions is provided. This connector in-cludes only the concentration of the respective node.Similarly two icons are provided to distinguish activa-tors from inhibitors.
4.4 Nodes
In Biochem, implementation of nodes is realized atthree levels of abstraction:
1. NodeConnections: A class providing the basic in-terfaces and icons, about 8 connectors as a reac-tant and 4 connectors as a modifier
2. BasicNode: An abstract class realizing basic im-plementation of nodes and extending NodeCon-nections
3. Node: An implementation of BasicNode describ-
ADGenKinetics: An Algorithmically Differentiated Library for Biochemical Networks Modeling …
920 Proceedings of the 9th International Modelica Conference DOI September 3-5, 2012, Munich Germany 10.3384/ecp12076915
ing the concentration dynamics
The static subpackage is directly taken from Biochem.
In the subpackage dynamic, only one connector forreactants and one connector for modifiers [15] is givenas follows:
Listing 2: Implementation of node connectionspartial model NodeConnections
"Metabolite connections to reactions"
Interfaces.ChemicalPort rc
"connection to any reaction ";
Interfaces.ModifierChemicalPort mc
"connection as a modifier";
end NodeConnections;
The abstract class BasicNode in dynamic looks as fol-lows:
Listing 3: Implementation of an abstract node classpartial model BasicNode
"Basic declarations of any Metabolite"
extends Interfaces.dynamic.
NodeConnections;
parameter Units.Concentration c_0=0;
Units.Concentration c(start=c_0);
Units.VolumetricReactionRate r_net;
equation
r_net = rc.r;
rc.c = c;
mc.c = c;
end BasicNode;
Direct implementation of BasicNode is realized in themodels FixedConcentrationNode and Node:
Listing 4: Implementation of a nodemodel Node "Metabolite with dynamic rate"
extends NodeElements.dynamic.BasicNode;
equation
der(c) = r_net;
end Node;
Further types of nodes exist in Biochem.
4.5 Reactions
Each generalized kinetic format is realized within asubpackage. Currently, the subpackage convenienceis implemented. The realization of other simpli-fied kinetic formats like linlog kinetics is analogouslystraightforward.
4.5.1 dynamic
In this subpackage, convenience kinetics are imple-mented by extending several abstract classes whichspecifies a reaction according to:
1. its dimension: how many substrates and productsare involved as well as the stoichiometry of thereactants
2. its reversibility
3. whether the reaction is effected by other modi-fiers, how many and their types
The implementation of these basic classes are shownas follows:
Listing 5: The dimension of a reactionclass ReactionDimension
"Dimension and structure of a reaction"
parameter Integer NS = 1
"Number of substrates";
parameter Units.StoichiometricCoef
n_S[NS]=ones(NS)
"Stoichiometry of all subtrates";
parameter Integer NP = 1
"Number of products";
parameter Units.StoichiometricCoef
n_P[NP]=ones(NP)
"Stoichiometry of all products";
end ReactionDimension;
Using the previous class, an abstract type for reac-tions slightly modified version from the one providedin Biochemis given as follows:
Listing 6: The dimension of a reactionpartial model BasicReaction
"basic declaration of a reaction"
extends Interfaces.dynamic.Dimension
.ReactionDimension;
Units.VolumetricReactionRate v
"reaction rate";
Interfaces.ChemicalPort_S rc_S[NS]
"connection to substrates";
Interfaces.ChemicalPort_P rc_P[NP]
"connection to product";
equation
rc_S [:].r = n_S [:] * v;
rc_P [:].r = -n_P [:] * v;
end BasicReaction;
Specification of the reaction reversibility is done viathe related classes OneWayReaction and TwoWayRe-action. These classes provide the basic declarationof related kinetic parameters and are directly takenfrom Biochem. Moreover, two additional abstractclasses BasicIrrReaction and BasicRevReaction areintroduced in the proposed library for emphasizingtype abstractions among implemented kinetics:
Listing 7: Basic reversible reactionpartial model BasicRevReaction
"basic implementation of
a reversible reaction"
Atiyah Elsheikh
DOI Proceedings of the 9th International Modelica Conference 921 10.3384/ecp12076915 September 3-5, 2012, Munich, Germany
extends Reactions.convenience.dynamic.
BasicIrrReaction;
extends Interfaces.Reversible.TwoWay;
Real P1 "Product terms nominator";
Real P2 "Product terms denominator";
parameter Units.AffinityConst KmP[NS]
= ones(NS) "Affinity constants of
the product node";
equation
P1 = Vbwdmax * product ({rc_P[i].c/KmP[i]
for i in 1:NP});
P2 = product ({rc_P[i].c/KmP[i] + 1
for i in 1:NP});
end BasicRevReaction;
The corresponding classes for specifying the effec-tors are given by the classes ReactionInhibition andReactionActivation:
Listing 8: The inhibitors of a reactionpartial model ReactionInhibition
"Inhibition influencing a reaction"
parameter Integer NI = 1
"# Metabolites inhibiting the reaction";
Interfaces.ModifierChemicalPort_I
mc_I[NI];
parameter Units.AffinityConst KI[NI]
= ones(NI) "Affinity constant";
Real I "Inhibition term";
equation
I = product ({KI[i] / (KI[i] + mc_I[i].c)
for i in 1:NI});
end ReactionInhibition;
Using these classes, all reaction types of conveniencekinetics are realized only with 8 classes. For instance,the implementation of convenience kinetics for re-versible inhibited reactions with arbitrary number ofreactant substrates, products and inhibitors is given asfollows:
Listing 9: Kinetic for reversible inhibited reactionclass InhRevKinetic
"S1+S2+... <==I1 ,I2 ,..== > P1 ,P2 ,..."
extends Reactions.convenience.dynamic.
BasicRevReaction;
extends Reactions.convenience.dynamic.
ReactionInhibition;
equation
v = I * (S1 - P1) / (S2 + P2 - 1);
end InhRevKinetic;
Realistic biochemical reaction networks can be real-ized using only these 8 classes.
4.5.2 static
This subpackage is more or less a straightforwardimplementation of the Biochem guidelines except in
some details. It provides many components for de-scribing enzyme kinetics with fixed number of sub-strates, products and modifiers via a static number ofconnectors. The implementation is done along manylevels via the following abstract classes:
1. The classes Reaction1S, Reaction2S, ... , Reac-tion1P, Reaction2P, ... , Reaction1I, Reaction1Aetc. provide the basic icons for reactions withspecific number of connectors to substrates, prod-ucts, etc.
2. The abstract classes BasicIrrReaction1S1P, Ba-sicIrrReaction2S1P,...etc. provide basic imple-mentation for kinetic terms of irreversible and re-versible reactions with specific number of reac-tants. Similarly, the classes BasicReaction1I, Ba-sicReaction1I provide basic implementation forkinetics terms of modified reactions.
3. The actual kinetics are realized within Ir-rKinetic1S1P, IrrKinetic1S2P, ... , IrrKi-netic1S1P1I,... etc. by extending and specializingthe abstract classes.
Using this way, many components need to be pro-vided. For instance, by realizing reactions with twosubstrates and two products together with one modifierat maximum, there are 2 (substrates)× 2 (products)×2 (reversibility) ×3 (effectors) = 24 components thatneed to be provided. By three substrates and threeproducts with two modifiers at maximum, about 9×2×6 = 108 components need to be provided.
4.6 The Derivatives subpackage
The Derivatives subpackage contains an extendedcopy of the whole library with identical structureof subpackages, interfaces and components. Eachcomponent has additional declaration and equationsfor computing parameter sensitivities. The equationsare computed using algorithmic differentiation tech-niques. In this work, new novel AD techniques es-pecially optimized for equation-based languages areemployed. For any model using the library typicallycorresponding to a DAE system of the form:
F(x,x, p, t) = 0 , x(t0) = x0(p) (10)
where x(t) ∈ Rn and p ∈ Rm represent state vari-ables and model parameters, respectively, importingthe types within the Derivatives subpackage lets theunderlying model of eq. (10) get extended with the the
ADGenKinetics: An Algorithmically Differentiated Library for Biochemical Networks Modeling …
922 Proceedings of the 9th International Modelica Conference DOI September 3-5, 2012, Munich Germany 10.3384/ecp12076915
Figure 4: Omix: a highly-specialized graphical editorfor biochemical networks
corresponding sensitivity subsystems:
[Fxsi +Fxsi +Fpi ]Jp = 0 , si(t0) =∂x0(p)
∂ pi(11)
where si =∂x∂ pi
for i = 1,2, ...,m
and Jp ∈ Rm×r is the input Jacobian specifying the setof active parameters q ∈ Rr w.r.t. which derivativesare sought. The same model simulates the underlyingbiochemical reaction network together with the deriva-tives of all variables with respect to the specified inputparameters. A usage example is available in the Exam-ples subpackage and is summarized in the followingsection.
5 Examples
The implementation of the biochemical network in fig-ure 1 is demonstrated once with dynamic number ofconnections and again with static number of connec-tions. With dynamic number of connections, the im-plementation is assembled as follows:
Listing 10: Implementation of the Spirallus networkwith parametrized number of connectionsmodel Spirallusdyn
"An abstraction of the TCA cycle"
import ADGenKinetics.
NodeElements.dynamic .*;
import ADGenKinetics.
Reactions.convenience.dynamic .*;
Node Aex(c_0 =1);
Figure 5: Implementation with the Dymola graphicaleditor
InhIrrKinetic vupt(NS=1,NP=1,NI=1,
Vfwdmax =1.0,
KmS ={0.1} ,KI ={3.0});
ModifierNode A;
RevKinetic v1(NS=1,NP=1,
Vfwdmax =3.0, Vbwdmax =1.0,
KmS ={0.1} , KmP ={3.0});
Node B;
...
equation
// vupt
connect(Aex.rc,vupt.rc_S [1]);
connect(vupt.rc_P[1],A.rc);
connect(vupt.mc_I[1],A.mc);
// v1
connect(A.rc,v1.rc_S [1]);
connect(v1.rc_P[1],B.rc);
...
end Spirallusdyn;
The main disadvantage of this approach is that theimplementation is provided only at textual level.Typical modeling environments of Modelica don’tcurrently provide graphical support for parametrizeddynamic number of connections yet. Nevertheless,this approach is ideally relevant for automatic modelgeneration possibly using specialized graphical edi-tors for biochemical networks. For instance, figure4 shows a snap shot of Omix [2] a general-purposeeditor for constructing, editing and visualizingbiochemical networks in a semi-automatic manner.
Atiyah Elsheikh
DOI Proceedings of the 9th International Modelica Conference 923 10.3384/ecp12076915 September 3-5, 2012, Munich, Germany
Figure 6: Concentration of the substances
Omix is enhanced with a plugin for parsing andgenerating Modelica models [13]. The tool employsOpen Modelica Compiler (OMC) for parsing aModelica library for biochemical network modelingand identifying existing types of kinetics and nodes.Then OMC is again used for automatically generatingthe corresponding models that can be then simulatedusing typical Modelica simulation environments asdescribed in [3] in a very similar manner to the toolprovided in [4]. The presented library would be idealfor such a tool or any other SBML-based graphicaleditor using very similar concepts.
With the static components of fixed number of con-nections, biochemical network models can be directlyassembled with common Modelica simulation envi-ronments. For instance, figure 5 provides the imple-mentation of the network model using Dymola. Fig-ures 6 and 7 demonstrate the simulation results ofthe concentration of chemical substances and the re-action rates of reactions of the Spirallus network, re-spectively. Using the subpackage Derivatives, pa-rameter sensitivities can be computed in a straight for-ward way. For the Spirallus example, this can be doneby slightly modifying the declaration part of the codefrom listing 10 to the following:
Listing 11: Implementation of the dynamics of theSpirallus network together with the parameter sensi-tivitiesimport ADGenKinetics.Derivatives.
NodeElements.dynamic .*;
import ADGenKinetics.Derivatives.
Reactions.convenience.dynamic .*;
import ADGenKinetics.Derivatives.
Functions .*;
Figure 7: Reaction rates of reactions
inner parameter Integer NG = 24
"Number of gradients";
Node Aex(c_0 =1);
InhRevKinetic vupt(NS=1,NP=1,
Vfwdmax =1.0, g_Vfwdmax=unitVector (1,NG),
KmS ={0.1} , g_KmS={ unitVector (2,NG)},
KI={3.0} , g_KI={ unitVector (3,NG)});
...
IrrKinetic v7(NS=1,NP=1,
Vfwdmax =2.0, g_Vfwdmax=unitVector (23,NG),
KmS ={3.0} , g_KmS={ unitVector (24,NG)});
Node Fex;
equation
// equations remain as before
...
In the last model, the standard types for nodes and re-actions are replaced by the extended types within thesubpackage Derivatives. An additional unique param-eter NG is declared, specifying the number of activeparameters w.r.t. which derivatives are sought. Fi-nally, the input gradient of any parameter p is ini-tialized with the help of the function unitVector(i,NG)which returns a unit vector of length NG with the ithcomponent equal to one. In this way, for any vari-able v, g_v[i] corresponds to ∂v/∂ p. For parameterswith non-initialized gradients, they simply become in-active. Figure 8 shows the parameter sensitivities ofthe reaction v7 w.r.t. all kinetic parameters.
6 Outlook
In this work, a Modelic library for implementing gen-eralized kinetics formats based on justifiable simpli-fication assumptions is provided. With the help ofModelica language constructs, the opportunity of real-
ADGenKinetics: An Algorithmically Differentiated Library for Biochemical Networks Modeling …
924 Proceedings of the 9th International Modelica Conference DOI September 3-5, 2012, Munich Germany 10.3384/ecp12076915
Figure 8: Parameter sensitivities of v7
izing real-life applications with few number of compo-nents is given. Consequently, the library is especiallyadequate for tools requiring automatic model genera-tion. Moreover, this library follows the main guide-lines of Biochem making it possible to get integratedwith other existing implementation. The presented li-brary is the first algorithmically differentiated Mod-elica library. With minimal additional user efforts,base models additionally simulate parameter sensitiv-ities together with the network dynamics. The under-lying novel equation-based AD techniques which havebeen especially designed for ADGenKinetics have alsothe potentials to be employed by other Modelica li-braries.
Acknowledgement
I’d like to acknowledge Dr. Stephan Noack, instituteof Bio- and Geosciences, Biotechnology (IBG-1), re-search centre Jülich, for valuable discussions about en-zyme kinetics. His own advanced modeling librarywas very inspiring for me for understanding the prin-ciples of modeling biochemical reaction networks.
References
[1] H. Bisswanger. Enzyme Kinetics, Principles andMethods. WILEY-VCH Verlag, Weinheim, Ger-many, 2002.
[2] P. Droste, S. Noack, K. Noh, and W. Wiechert.Customizable visualization of multi-omics datain the context of biochemical networks. In VIZ2009: The 2nd International Conference on In-formation Visualisation, Barcelona, Spain, 2009.
[3] A. Elsheikh. Modelica-based computationaltools for sensitivity analysis via automatic differ-entiation. PhD thesis, submitted to Institute ofComputer Science, RWTH Aachen University,Aachen, Germany, 2011.
[4] A. Elsheikh, S. Noack, and W. Wiechert. Sen-sitivity analysis of Modelica applications via au-tomatic differentiation. In Modelica’2008: The6th International Modelica Conference, Biele-feld, Germany, 2008.
[5] A. Elsheikh and W. Wiechert. Automatic sensi-tivity analysis of DAE-systems generated fromequation-based modeling languages. In C. H.Bischof, H. M. Bücker, P. D. Hovland, U. Nau-mann, and J. Utke, editors, Advances in Auto-matic Differentiation, pages 235–246. Springer,2008.
[6] A. Griewank. Evaluating Derivatives: Princi-ples and Techniques of Algorithmic Differenti-ation. Number 19 in Frontiers in Appl. Math.SIAM, Philadelphia, PA, 2000.
[7] F. Hadlich, S. Noack, and W. Wiechert. Trans-lating biochemical network models between dif-ferent kinetic formats. Metabolic Engineering,11(2):87 – 100, 2009.
[8] J. J. Heijnen. Approximative kinetic for-mats used in metabolic network modeling.Biotechnology and Bioengineering, 91(5):534–545, 2005.
[9] E. Klipp, R. Herwig, A. Kowald, C. Wierling,and H. Lehrach. Systems Biology in Prac-tice: Concepts, Implementation and Application.Wiley-VCH, 2005.
[10] W. Liebermeister and E. Klipp. Bringingmetabolic networks to life: convenience rate lawand thermodynamic constraints. Theoretical Bi-ology and Medical Modelling, 2006.
[11] U. Naumann. The art of Differentiating Com-puter Programs, an Introduction to AlgorithmicDifferentiation. SIAM, 2012.
[12] E. L. Nilsson and P. Fritzson. A Metabolic Spe-cialization of a General Purpose Modelica Li-brary for Biological and Biochemical Systems.In Proceeding of the 4th International ModelicaConference, Hamburg, Germany, 2005.
Atiyah Elsheikh
DOI Proceedings of the 9th International Modelica Conference 925 10.3384/ecp12076915 September 3-5, 2012, Munich, Germany
[13] J. Tillack, P. Droste, N. Hackbarth, W. Wiechert,and K. Nöh. Visually-assisted modeling of ki-netic metabolic networks - from Omix to Mod-elica and back. In MATHMOD 2012: The 7thVienna International Conference on Mathemati-cal Modelling, Vienna, Austria, 2012.
[14] S. A. Wahl. Methoden zur integrierten Anal-yse metabolischer Netzwerke unter stationärenund instationären Bedingungen. PhD thesis, Re-search Centre Jülich, Germany, 2007.
[15] W. Wiechert, S. Noack, and A. Elsheikh. Mod-eling languages for biochemical network simu-lation: Reaction vs equation based approaches.Advances in Biochemical Engineering / Biotech-nology, 2010.
[16] W. Wiechert and R. Takors. Validation ofmetabolic models: Concepts, tools, and prob-lems. In H. V. Westerhoff and B. Kholodenko,editors, Metabolic Engineering in the Post Ge-nomic Era (Horizon Bioscience). Horizon Scien-tific Press, 2004.
ADGenKinetics: An Algorithmically Differentiated Library for Biochemical Networks Modeling …
926 Proceedings of the 9th International Modelica Conference DOI September 3-5, 2012, Munich Germany 10.3384/ecp12076915