| Literature DB >> 20066048 |
Abstract
ODE simulations of chemical systems perform poorly when some of the species have extremely low concentrations. Stochastic simulation methods, which can handle this case, have been impractical for large systems due to computational complexity. We observe, however, that when modeling complex biological systems: (1) a small number of reactions tend to occur a disproportionately large percentage of the time, and (2) a small number of species tend to participate in a disproportionately large percentage of reactions. We exploit these properties in LOLCAT Method, a new implementation of the Gillespie Algorithm. First, factoring reaction propensities allows many propensities dependent on a single species to be updated in a single operation. Second, representing dependencies between reactions with a bipartite graph of reactions and species requires only storage for reactions, rather than the required for a graph that includes only reactions. Together, these improvements allow our implementation of LOLCAT Method to execute orders of magnitude faster than currently existing Gillespie Algorithm variants when simulating several yeast MAPK cascade models.Entities:
Mesh:
Substances:
Year: 2010 PMID: 20066048 PMCID: PMC2798956 DOI: 10.1371/journal.pone.0008125
Source DB: PubMed Journal: PLoS One ISSN: 1932-6203 Impact factor: 3.240
Figure 1Example of LOLCAT Method's data structure.
In practice, our implementation only creates subtrees for sets of reactions significantly larger than those shown in Cloud A's subtrees, for efficiency reasons. As a result, most clouds are like Cloud B and have no subtrees.
Benchmarking results for ODM, NRM, MODM and LOLCAT Method.
| System Parameters Runtimes(s) | ||||||
| ID | # Rxns. | # Species | ODM | NRM | MODM | LOLCAT |
| A | 2040 | 236 | 8.45, 0.04 | 25.52, 5.75 | 25.08, 0.12 | 3.06, 0.14 |
| B | 11492 | 5092 | 61.08, 0.17 | 162.68, 6.15 | 64.21, 0.22 | 1.68, 0.04 |
| C | 35003 | 11402 | 152.18, 0.64 | 374.73, 4.63 | 166.06, 0.46 | 3.73, 0.06 |
| D | 84301 | 15087 | 374.66, 2.30 | 720.35, 62.32 | 390.85, 1.41 | 4.73, 0.13 |
| E | 162150 | 14766 | 640.72, 3.01 | 964.49, 99.97 | 623.39, 1.58 | 1.88, 0.04 |
| F | 292190 | 15287 |
|
| 2527.93, 61.09 | 9.30, 0.09 |
Six versions of the Yeast Pheromone Model [10] were benchmarked. Slowdown factors are mean time normalized against the performance of LOLCAT Method for each model. The “” in the last entry for ODM and NRM indicates that those simulations could not be run because the dependency graph consumed more than the RAM and swap space, roughly 20 GB, of the host machine. The varying structure of the simulated system may account for the non-uniform scaling of runtimes.
Figure 2Cumulative distribution function (CDF) plots of reaction valence for all six models.
To compute the CDF we first computed the PDF of reaction valence, weighting each reaction valence by the reaction's average propensity over a pre-computed sample trajectory. We then computed the CDF from the PDF to increase visual salience of the sparsely distributed weights. A steep climb near a particular valence means a significant probability of a randomly chosen reaction having that approximate valence. This, in turn, often indicates the presence of a super-species that is involved in many reactions and benefits greatly from factoring.