Chemischer Transport Hauptseminar Anorganische Chemie Alexandra Philipp.
Stochastic Simulation Hauptseminar 11.07.2007 Ludwig Geistlinger.
-
Upload
senta-schlenz -
Category
Documents
-
view
121 -
download
2
Transcript of Stochastic Simulation Hauptseminar 11.07.2007 Ludwig Geistlinger.
Stochastic Simulation
Hauptseminar
11.07.2007
Ludwig Geistlinger
Gliederung
1. Problemstellung 2. Deterministische Methode 3. Stochastische Methode 4. Effizienzverbesserung 5. Anwendung
1. Problemstellung
1. Problemstellung
Gegeben:
→ räumlich homogenes Volumen V
→ N chemisch aktive Spezies Si ( i = 1, …, N )
Xi := aktuelle Anzahl von Molekülen der Art Si in V
→ M chemische Reaktionen Rμ ( μ = 1, …, M )
→ Rμ durch Reaktionskonstante kμ charakterisiert
A
D
C D
B
B
B
C
C
C
D A
A
B
D
A
B
A B
CD
AA
A
1. Problemstellung
Xi = { 8, 6, 5, 5}
N = 4
Si = { A, B, C, D }
Rμ = { A ↔ B, 2A ↔ C, A+D ↔ 2A }
kμ = { k1 , k2, …, k6 }+
+
+
1. Problemstellung
Zielstellung:
Bestimmung bzw. Simulation der Zeitevolution aller Xi
Zeit t
Kon
zent
ratio
n c
cEq
Xi(t)
2. DeterministischeMethode
2.1 Exkurs Differentialgleichungen
2.2 Zwei Beispiele
2.3 Probleme dieser Methode
2. Deterministische Methode
2.1 Exkurs Differentialgleichungen
→ Ableitung als Änderungsrate
(hier: Änderung der Konzentration pro Zeit)
→ Anfangswertprobleme mit Diff.glg. erster Ordnung:
gegeben: (A) Diff.glg.:0
d
d cx
t
x
→ Allgemeine Lösung: cteAtx )(
(B) Anfangsbedingung: x(t0) = x0
→ ergibt spezielle Lösung
2. Deterministische Methode
2.2 Zwei Beispiele
(1) mit X(0) = X0
X(t) … kontinuierliche Fkt., die die Anzahl der Moleküle der Species X in V zum Zeitpunkt t repräsentiert
YX k
kXt
X
d
d(A) Aufstellen der Differentialgleichung:
(B) Lösen der Differentialgleichung: kteAtX )(
(C) Einsetzen der Anfangsbedingung: kteXtX 0)(
2. Deterministische Methode
(2)
2 ,2 ,
5
6
3
4
1
2
XXWZXYXRk
k
k
k
k
k
→ Aufstellen der Differentialgleichungen:
d
d
t
Y 21 YkXk
t
Z
d
dZkXk 4
232
1
t
W
d
d 265 2
1XkWXk
t
X
d
d 2654
2321 2
12 XkWXkZkXkYkXk
2.3 Probleme der deterministischen Methode
2. Deterministische Methode
→ Keine Berücksichtigung von Korrelationen
→ Keine Berücksichtigung von Fluktuationen
→ Problembereich Differentialgleichungen
(Berechnung, Eindeutigkeit, Existenz)
… Alternative(n) ?
3. StochastischeMethode
3.1 Die Idee3.2 Der Algorithmus3.3 Simulation mit COPASI
3. Stochastische Methode
3.1 Die Idee
→ det. Methode:
Reaktionskonstanten ↔ Reaktionsraten
N gekoppelte Differentialgleichungen
→ stochastische Methode:
Reaktionskonstanten ↔ Reaktionswahrscheinlichkeiten
Random Walk auf einer N-dimensionalen Markov-Kette
Simulation über eine Master-Equation
3. Stochastische Methode
Master Equation
Bsp.: YXk
k
1
2
)|1,1()1(
)|1,1()1()'|,(
2
1
tYXPYk
tYXPXktYXP
M
XN
XN tRXRXPTtXXP N
111 )|,...,()'|,...,( 1
Fundamentalhypothese:
kμ … Wahrscheinlichkeit, dass eine bestimmte Kombination von Reaktanden im nächsten Zeitintervall gemäß Rμ reagiert
hμ … Anzahl der unterschiedlichen Kombinationen von Reaktanden für Rμ zum Zeitpunkt t in V
→ hμ kμ … Wahrscheinlichkeit, dass eine Rμ Reaktion im nächsten Zeitintervall in V auftritt
3. Stochastische Methode
3. Stochastische Methode
Dichtefunktion der Reaktionswahrscheinlichkeit
P(τ , μ) … Wahrscheinlichkeit zum Zeitpunkt t, dass die nächste Reaktion in V im Zeitintervall [ t , t
+ τ ] auftritt und eine Reaktion des Typs Rμ ist
khkhP
PkhP
M
1
0
exp),(
)(),(
P(„Rμ tritt auf“)P(„Keine Reaktion“)
3.2 Der Algorithmus3. Stochastische Methode
Schritt 1 (Initialisierung)
t = 0 : Xi = Xi(0) kμ → hμkμ
Schritt 2 (Monte Carlo)
→ generiere Zufallspaar (τ , μ) aus P(τ , μ)
Schritt 3 (Evolution)
t = t + τ : Xi = Xi + ∆Xi → Berechne hμkμ neu
Schritt 4 (Terminierung)
t > tstop oder alle hμ = 0
3.2 Der Algorithmus3. Stochastische Methode
Schritt 1 (Initialisierung)
t = 0 : Xi = Xi(0) kμ = kμ(0) → hμkμ
Schritt 2 (Monte Carlo)
→ generiere Zufallspaar (τ , μ) aus P(τ , μ)
Schritt 3 (Evolution)
t = t + τ : Xi = Xi - ∆Xi → Berechne hμkμ neu
Schritt 4 (Terminierung)
t > tstop oder alle hμ = 0
3. Stochastische Methode
Generierung eines Zufallpaares (τ , μ) aus P(τ , μ)
„Konditionieren“:
→ τ ist stetig (0 ≤ τ < ∞) und μ ist diskret (μ = 1, 2, …, M) !
)|()(),( PPP
M
PP1
),()(
M
P
PP
1
),(
),()|(
a
aP )|()exp()( aaP
aμ = hμ kμ
M
aa1
Substitution
Generierung eines Zufallpaares (τ , μ) aus P(τ , μ)
3. Stochastische Methode
)exp()( aaP a
aP )|(
)exp(1)( aF
1
1ln
1
ra
12
1
1
aara
]1,0[1 Ur ]1,0[2 Ur
1
)|(a
aF
3.2 Der Algorithmus3. Stochastische Methode
Schritt 1 (Initialisierung)
t = 0 : Xi = Xi(0) kμ = kμ(0) → hμkμ
Schritt 2 (Monte Carlo)
→ generiere Zufallspaar (τ , μ) aus P(τ , μ)
Schritt 3 (Evolution)
t = t + τ : Xi = Xi - ∆Xi → Berechne hμkμ neu
Schritt 4 (Terminierung)
t > tstop oder alle hμ = 0
Evolution
→ Verwendung des generierten Zufallpaares (τ , μ):
(1) setze: t = t + τ
(2) simuliere Rμ durch Änderung aller involvierten Xi
Beispiel: Rμ: S1 + S2 → 2S3
→ X1 = X1 – 1
→ X2 = X2 – 1
→ X3 = X3 + 2
→ Berechne alle aμ neu, in denen die involvierten Xi
als Reaktanden auftreten
3. Stochastische Methode
3.2 Der Algorithmus3. Stochastische Methode
Schritt 1 (Initialisierung)
t = 0 : Xi = Xi(0) kμ = kμ(0) → hμkμ
Schritt 2 (Monte Carlo)
→ generiere Zufallspaar (τ , μ) aus P(τ , μ)
Schritt 3 (Evolution)
t = t + τ : Xi = Xi - ∆Xi → Berechne hμkμ neu
Schritt 4 (Terminierung)
t > tstop oder alle hμ = 0
3.3 Simulation mit COPASI
3. Stochastische Methode
COPASI … COmplex PAthway SImulator
} 0 ,2 ,2 { 321 kkk YYYXXXR
Y(t)
X(t)
3. Stochastische Methode
DM (Direct Method)
… direkte Generierung von μ und τ mit Inversionsmethode → benötigt 2 Zufallszahlen pro Iteration
FDM (First Reaction Method)
1. Generiere für jede Reaktion τμ
2. Durchlaufe Reaktion mit niedrigstem τμ
→ benötigt M Zufallszahlen pro Iteration
4. Effizienzverbesserung
4.1 Verbesserungen im Überblick4.2 LDM4.3 Tau-Leaping
4.1 Verbesserungen im Überblick
1. NRM (Next Reaction Method):Erstellung eines dependency graph
Verwendung einer indizierten priority queue Wiederverwendung von Zufallszahlen
2. ODM (Optimized Direct Method):Umordnung der Reaktionen nach Häufigkeit
Bedarf einer Prä-Simulation
3. SDM (Sorting Direct Method):Dynamisches ordnen der Reaktionen
4. LDM (Logarithmic Direct Method)
4. Effizienzverbesserung
4. Effizienzverbesserung
→ gibt an, welche aμ verändert werden müssen (geg. Rμ)
4.1 Verbesserungen im Überblick
1. NRM (Next Reaction Method):Erstellung eines dependency graph
Verwendung einer indizierten priority queue Wiederverwendung von Zufallszahlen
2. ODM (Optimized Direct Method):Umordnung der Reaktionen nach Häufigkeit
Bedarf einer Prä-Simulation
3. SDM (Sorting Direct Method):Dynamisches ordnen der Reaktionen
4. LDM (Logarithmic Direct Method)
4. Effizienzverbesserung
4. Effizienzverbesserung
→ Effiziente Verwaltung der absoluten Reaktionszeiten
Indexstruktur
Label
Index
Zeit
Zeiger
4.1 Verbesserungen im Überblick
1. NRM (Next Reaction Method):Erstellung eines dependency graph
Verwendung einer indizierten priority queue Wiederverwendung von Zufallszahlen
2. ODM (Optimized Direct Method):Umordnung der Reaktionen nach Häufigkeit
Bedarf einer Prä-Simulation
3. SDM (Sorting Direct Method):Dynamisches ordnen der Reaktionen
4. LDM (Logarithmic Direct Method)
4. Effizienzverbesserung
4. Effizienzverbesserung
Kostenintensivster Schritt der Methode ist das Auffinden der nächsten ablaufenden Reaktion im System
12
1
1
aara
M
aa1
→
→ Propensities werden beinahe zweimal aufsummiert
→ Suchtiefe im zweiten Schritt liegt in O(M)
1.
2.
4.2 LDM (Logarithmic Direct Method)
4. Effizienzverbesserung
Idee „Binäre Suche“
→ Speichern aller M partiellen Summen in einem Array
→ Binäre Suche:
Wiederholtes Aufteilen des Suchintervalles in 2 Hälften
Test: subtotal[μ–1] ≤ key < subtotal[μ]
mit key := r2a
→ Suchtiefe für binäre Suche liegt bei O(logM)
4.3 Tau-Leaping Approximation4. Effizienzverbesserung
→ Überspringen von Reaktionsereignissen
Dμ(τ) … Anzahl der Läufe durch Rμ im Intervall [t, t + τ]
→ Wähle τ :
- größtmöglich
- jedoch klein genug, dass sich aμ nicht signifikant ändern (leap condition)
Approx.:
Update:
)(~rmit )( aPoissonrD
M
iii rtXtX
1
)()(
5. Anwendung
5. Anwendung
24 h Simulation einer Säugerzelle
→ zelluläre „Uhr“ durch oszillierende Protein Feedback Loops
→ Einteilung der Reaktionen in Reaktionsklassen
(Bedarf einer zusätzlichen Zufallszahl !)
→ Analyse der Stabilität der „Uhr“ gegenüber:
(a) molekularem Rauschen
(b) Knockout von Schlüsselgenen / -Proteinen
Zusammenfassung
Bestimmung / Simulation der Evolution von N chemischen Spezies in Reaktionsnetzwerk von M Reaktionswegen
Deterministische Methode: Lösung N gekoppelter Differentialgleichungen
Stochastische Methode: 4-Schritte-SimulationDichtefunktion der ReaktionswahrscheinlichkeitGenerierung zweier Zufallszahlen
Verschiedene Möglichkeiten der Effizienzverbesserung
Simulation komplexer Netzwerke
Zusammenfassung
Literatur
Differentialgleichungen:[1] D. Jordan, P. Smith: „Mathematical Techniques“, Oxford Univ. Press, 1994[2] O. Levenspiel: „Chemical Reaction Engineering“, John Wiley & Sons, 1999
Stochastische Methode: [3] D. Gillespie: „A General Method for Numerically Simulating the Stochastic Time Evolution of Coupled Chemical Reactions“, Jrn. of Comp. Phys. 22, 403-434, 1976 [4] D. Gillespie: „Exact Stochastic Simulation of Coupled Chemical Reactions“, Jrn. Of Phys. Chem. 81, 2340-2361, 1977
Effizienzverbesserung: [5] M. Gibson, J. Bruck: „Efficient exact stochastic simulation of chemical systems with many species and channels“, Jrn. of Phys. Chem. 104, 1876-1889, 1999 [6] Y. Cao, H. Li, L. Petzold: „Efficient formulation of the stochastic simulation algorithm for chemically reacting systems“, J. Chem. Phys. 121, 4059-4067, 2004 [7] H. Li, L. Petzold : „Logarithmic Direct Method for Discrete Stochastic Simulation of Chemically Reacting Systems“, Jrn. of Chem. Phys., 2006 [8] Y. Cao, D. Gillespie, L. Petzold: „Efficient Step Size Selection for the Tau-Leaping Simulation Method“, Jrn. Of. Chem. Phys. 124, 044109, 2006
Anwendung [9] D. Forger, C. Peskin: „Stochastic Simulation of the Mammalian Circadian Clock“, Proceedings of the National Academy of Sciences, 2005
Literatur
ENDE