Main Page | Recent changes | View source | Page history

Printable version | All content dual-licensed under the GNU FDL and the Creative Commons Share-alike Attribution license. | Privacy policy

Not logged in
Log in | Help
 

Integrating the Gillespie Algorithm with Swarm

From SwarmWiki

Integrating the Gillespie Algorithm with Swarm

Scott Christley

Dept. of Mathematics, Dept. of Computer Science, Center for Mathematical and Computational Biology, University of California, Irvine

The Gillespie algorithm is a discrete event procedure that can simulate the stochastic kinetics of chemical reactions in an exact way. Unlike classical continuous deterministic chemical kinetics which simulates the time-evolution of the chemical concentrations using ordinary differential equations (ODE), the Gillespie algorithm simulates each individual chemical reaction event as a stochastic process. When the number of molecules is low, then the Gillespie algorithm correctly simulates the mass-action stochastic kinetics for second- order and higher reactions, while ODE models incorrectly describe the expected value of the system nor can it give any insight into variability.

The Gillespie algorithm shares common concepts with agent-based modeling, specifically representation of a discrete number of agents where the agents behave according to probabilistic rules. One key difference is that the time of occurrence for each reaction event in the Gillespie algorithm is a random variable. Agent-based models typically represent entities of various scales with various levels of abstraction. Behaviors are scheduled (using the Swarm scheduler) at unit time intervals, sometimes without explicit units, and where time is relative between scales. This presents a challenge for integrating the Gillespie algorithm with agent-based models as a discrete time simulation only approximately solves the stochastic kinetics, and could provide incorrect results.

I will present some ideas for how the Gillespie algorithm can be integrated with agent-based models in an appropriate way such that the time-evolution of the system is correctly simulated. I will demonstrate these ideas with a modified Heatbugs application, and discuss various trade-offs.

  • Presentation in PDF

[Main Page]
Main page
About SwarmWiki
News
Recent changes
Random page
Help

View source
Discuss this page
Page history
What links here
Related changes

Special pages