Biological systems with intertwined feedback loops pose a challenge to mathematical modeling efforts. Moreover, rare events, such as mutation and extinction, complicate system dynamics. Stochastic simulation algorithms are useful in generating time-evolution trajectories for these systems because they can adequately capture the influence of random fluctuations and quantify rare events. We present a simple and flexible package, BioSimulator.jl, for implementing the Gillespie algorithm, $\tau$-leaping, and related stochastic simulation algorithms. The objective of this work is to provide scientists across domains with fast, user-friendly simulation tools. We used the high-performance programming language Julia because of its emphasis on scientific computing. Our software package implements a suite of stochastic simulation algorithms based on Markov chain theory. We provide the ability to (a) diagram Petri Nets describing interactions, (b) plot average trajectories and attached standard deviations of each participating species over time, and (c) generate frequency distributions of each species at a specified time. BioSimulator.jl's interface allows users to build models programmatically within Julia. A model is then passed to the simulate routine to generate simulation data. The built-in tools allow one to visualize results and compute summary statistics. Our examples highlight the broad applicability of our software to systems of varying complexity from ecology, systems biology, chemistry, and genetics. The user-friendly nature of BioSimulator.jl encourages the use of stochastic simulation, minimizes tedious programming efforts, and reduces errors during model specification.
翻译:生物系统与相互交织的反馈回路环对数学模拟工作构成挑战。 此外,诸如突变和灭绝等稀有事件使系统动态复杂化。 斯托卡模拟算法有助于为这些系统生成时间演变轨迹, 因为它们能够充分捕捉随机波动的影响, 并量化稀有事件。 我们展示了一个简单灵活的软件包, 即BioSimulator.jl, 用于实施吉列斯比算法、 $tau-leaping 及相关的随机模拟算法。 这项工作的目的是为各领域的科学家提供快速、 方便用户的模拟工具。 我们使用高性化编程语言Julia, 因为它强调科学计算。 我们的软件包可以使用一套基于Markov 链理论的模拟模拟模拟模拟算法。 我们提供以下能力:(a) 图表描述互动, (b) 绘制平均轨迹, 并附上每个参与模型的物种在一段时间内的标准偏差。 (c) 生成每个物种的频率分布, 从而降低每个物种的周期性模拟工具。 BioSimula-jlus 界面界面让用户在模拟中建立模型中生成模型, 并允许我们所建的模拟的模型到模拟的模型中生成的模型到模拟数据, 。