随机动力学
何时使用随机动力学
随机模拟算法提供了一种实用的方法来模拟反应本质上是随机的。模型与少量的分子实际上可以模拟随机,即允许结果包含一个元素的概率,与确定性的解决方案。
模型先决条件模拟随机解算器
模型的前提条件包括:
所有反应在模型中必须有他们
KineticLaw
属性设置为MassAction
。如果你的模型包含事件,您可以使用随机模拟
ssa
解算器。其他随机动力学不支持事件。金宝app你的模型必须不包含剂量。没有随机动力学支持剂。金宝app
此外,如果你执行个体或种群模型的拟合Configset对象
指定了一个随机解算器和选项,请注意,在拟合SimBiology®暂时的变化:
SolverType
属性默认的解算器ode15s
SolverOptions
属性的选项配置为一个确定的解算器
随机模拟期间会发生什么呢?
在随机模拟的模型,软件忽略,转让,或代数规则如果出现在模型中。根据模型,随机模拟可以比确定性模拟需要更多的计算时间。
提示
当使用随机模拟模型解算器,你可以增加LogDecimation
财产的configset对象
记录数据点较少,减少运行时间。
随机模拟算法(SSA)
化学主方程(CME)描述了化学动力学系统的概率分布的时间演化。直接求解该分布为最现实的问题是不切实际的。随机模拟算法(SSA)而不是有效地生成个人符合芝加哥商品交易所的模拟,通过模拟每个反应倾向使用其功能。因此,分析多个随机模拟来确定概率分布比直接解决CME更有效率。
优势
这个算法是准确的。
缺点
因为该算法评估一个反应,这可能是太慢的模型与大量的反应。
如果任何反应物分子的数量是巨大的,它可能需要很长时间来完成仿真。
明确Tau-Leaping算法
因为随机模拟算法可能太慢了许多实际问题,这个算法是为了加快模拟一些精度为代价的。算法对每个反应作为独立于他人。它会自动选择一个时间间隔,这样倾向的相对变化函数为每个反应小于你的错误宽容。选择的时间间隔之后,该算法计算的次数每一个时间间隔,使反应发生在适当的各种化学物种的浓度变化有关。
优势
该算法可以在SSA数量级的速度比。
您可以使用此算法对于大问题(如果问题不是数字的)。
缺点
该算法牺牲一些速度的准确性。
该算法对僵硬的模式。
您需要指定错误宽容,这样产生的时间顺序的步骤是最快的时间尺度。
隐式Tau-Leaping算法
像明确tau-leaping算法,隐式tau-leaping算法也是一种近似的方法模拟旨在加快模拟一些成本的准确性。它可以处理数值的问题比显式tau-leaping算法。对于确定性系统,一个问题是数值的如果有“快速”和“慢”时间尺度系统中存在。对于这样的问题,明确tau-leaping方法执行只有在它继续花小时间的步骤的顺序最快的时间尺度。隐式tau-leaping方法可能会采取更大的措施,仍然是稳定的。别人的算法将每个反应是独立的。它会自动选择一个时间间隔,这样倾向的相对变化函数为每个反应小于指定的错误宽容。选择一个时间间隔后,算法计算的次数每一个时间间隔,使反应发生在适当的更改所涉及的各种化学物种的浓度。
优势
该算法可以比SSA快得多。这也是通常比显式tau-leaping算法快。
您可以使用此算法对于大问题和数值的问题。
采取通常的总数少于explicit-tau-leaping算法。
缺点
该算法牺牲一些速度的准确性。
有更高的计算负担而明确每一步tau-leaping算法。这将导致一个更大的CPU时间每一步。
这种方法往往抑制了扰动的慢流形导致减少国家对均值方差。
引用
[1]吉布森硕士勃拉克j .(2000),“化学系统与许多物种的确切随机模拟和许多频道,“物理化学学报,105:1876 - 1899。
[2]Gillespie d(1977),“完全随机模拟的耦合化学反应,“物理化学学报,81 (25):2340 - 2361。
[3]Gillespie d(2000),“化学朗之万方程,”化学物理学报,113 (1):297 - 306。
[4]Gillespie d(2001),“近似加速化学反应系统的随机模拟,”化学物理学报,115 (4):1716 - 1733。
[5]Gillespie D。,作品L。(2004), “Improved Leap-Size Selection for Accelerated Stochastic Simulation,” Journal of Chemical Physics, 119:8229–8234
[6]Rathinam M。,作品L。,曹Y。Gillespie d(2003),“随机化学反应系统的刚度:隐式Tau-Leaping方法,“化学物理学报,119 (24):12784 - 12794。
[7]硅藻土,c(2003),“刚性微分方程刚度是一个微妙的,困难的,和重要的概念在常微分方程的数值解,“MATLAB新闻和笔记。