Gillespie Algorithm

16. Juli, 2007

Für die Biophysik Vorlesung haben wir den Gillespie Algorithmus zur Simulation von Reaktions - Prozessen mit geringen Raten zur Übung programmiert.

Den gibt's jetzt hier auch *Interaktiv*! Zumindest für den Prozess DNA -> RNA -> Protein (mit konstanter DNA Menge).

RNA Rates
Protein Rates

Eine Python Version gibt's bei www.paraschopra.com, die von mir verwendete C++ implementierung stelle ich bald ein ...

Zum Algorithmus

Die Idee ist einfach:

  • Es passieren chemische Reaktionen mit definierten Raten.
  • Die Raten und Konzentrationen können sehr klein sein (z.B. 1 Molekül)
  • Manchmal passieren Kaskaden von Reaktionen

Also kommt man mit einer fixierten Schrittweite nicht weiter, und samplet stattdessen die Zeit anhand der Übergangsraten. Das geht in etwa so:

  1. Schau nach wann die nächste Reaktion passiert
  2. Schau nach was für eine Reaktion passiert ist
  3. Wende die Reaktion an und ändere die Raten entsprechend

Dabei geht man davon aus, dass die die Prozesse poissonsch sind und kann dann einfach den nächsten Zeitschritt einer exponential verteilten Zufallsvariable (mit µ = Summe aller Raten) entnehmen.

Et Voila: Korrekte Trajektorien einer Stochastischen Gleichung

<<< Talkative

Kommentare

#1 Juli 19, 2007 matthias um 17:48:

interessant! aber sag mal, was baust du eigentlich alles so? aus den posts werd ich nicht ganz schlau, was du zur zeit machst und wo du dich rumtreibst ;)


schöne grüße
matthiasboehmer.de

Kommentieren


Die Letzten Zwanzig

Links im Artikel