主要内容

SimBiology中随机集合数据的分析

这个例子展示了如何在SimBiology®中进行集成运行以及如何分析生成的数据。

简介

当一个模型的行为在本质上是随机的,一次模拟运行并不能提供对模型的足够了解。一个人必须表演一组合奏。集成运行产生大量需要系统分析的数据。

这个例子说明了如何使用SimBiology进行集成运行,以及如何分析生成的数据。

负荷模型

我们将使用G蛋白模型,该模型是根据Yi等人(2003)发表的数据建立的。加载野生型G蛋白模型,观察其种类和反应。

sbioloadprojectgprotein_norulesm1m1。物种
ans = SimBiology物种阵列索引:隔间:名称:值:单位:1未命名的G 7000 2未命名的Gd 3000 3未命名的Ga 0 4未命名的RL 0 5未命名的L 6.022e+17 6未命名的R 10000 7未命名的Gbg 3000
m1。反应
ans = SimBiology反应阵列指数:反应:1 L + R <-> RL 2 R <-> null 3 RL -> null 4 Gd + Gbg -> G 5 G + RL -> Ga + Gbg + RL 6 Ga -> Gd

表演集体跑步

集成运行只能在使用随机求解器时进行。使用确定性求解器,进行集成运行是没有意义的,因为您总是会得到完全相同的结果。由于随机性,本页上的示例图可能与您自己运行这个示例得到的图不完全匹配。

将求解器类型更改为SSA,并执行10次模型运行。为了加快模拟的速度,让我们只记录每100个反应事件。

numRuns = 10;configsetObj = getconfigset(m1,“活跃”);configsetObj。SolverType =“ssa”;configsetObj.SolverOptions.LogDecimation = 100;simdata = sbioensemblerun(m1, numRuns);

原始数据图

将命名为G、Ga和RL的物种对应的原始数据绘制,并适当标注。

图;speciesNames = {‘G’“遗传算法”“RL”};[t, x] = selectbyname(simdata, speciesNames);持有i = 1:numRuns plot(t{i}, x{i});结束网格;包含(“时间以秒为单位”);ylabel (物种数量的);标题(“原始集成数据”);传奇(speciesNames);

图中包含一个轴对象。标题为Raw Ensemble Data的axes对象包含30个类型为line的对象。这些物体代表G, Ga, RL。

系综统计

让我们计算这些物种的集合统计数据。

[timeVals, meanVals, varianceVals] = sbioensemblestats(simdata, speciesNames);

让我们画出均值和标准差作为时间的函数。

图;情节(timeVals meanVals);网格;包含(“时间以秒为单位”);ylabel (“的意思是”);标题(“平均值的变化”);传奇(speciesNames“位置”“NorthEastOutside”);

图中包含一个轴对象。标题为Variation of Mean的坐标轴对象包含3个类型行对象。这些物体代表G, Ga, RL。

图;情节(timeVals√varianceVals);网格;包含(“时间以秒为单位”);ylabel (“标准差”);标题(“标准偏差的变化”);传奇(speciesNames“位置”“NorthEastOutside”);

图中包含一个轴对象。标题为Variation of Standard Deviation的坐标轴对象包含3个类型为line的对象。这些物体代表G, Ga, RL。

从这些图中可以看出,G和Ga具有完全相同的标准差,尽管它们的均值变化不同。让我们来看看为什么会这样。第一步是弄清楚它们之间是否有任何关系。让我们再看看模型中的反应,看看是否有什么明显的。

m1。反应
ans = SimBiology反应阵列指数:反应:1 L + R <-> RL 2 R <-> null 3 RL -> null 4 Gd + Gbg -> G 5 G + RL -> Ga + Gbg + RL 6 Ga -> Gd

一半的保护

从反应来看,G和Ga之间的关系不是很清楚。为了进一步分析,我们将使用sbioconsmoiety看看是否存在部分守恒。

sbioconsmoiety (m1,“semipos”“p”
ans =2 x1细胞{'G + Gbg'} {'G + Gd + Ga'}

由此可见,'G + Gd + Ga'始终是守恒的。但这并不能完全解释为什么G和Ga的方差是相同的。Gd呢?为什么它的方差不影响G或Ga?为了进一步研究它,让我们计算Gd的集成统计数据并绘制它们的变化。

[timeValsGd, meanValsGd, varianceValsGd] = sbioensemblestats(simdata,“Gd”);图;情节(timeValsGd meanValsGd,“- - -”...timeValsGd sqrt (varianceValsGd),“:”);轴([-50 600 -500 3000]);包含(“时间以秒为单位”);标题(“Gd的均值和标准差”);传奇(“的意思是”“标准差”

图中包含一个轴对象。标题为Mean和Standard Deviation的轴对象包含2个类型为line的对象。这些对象代表平均值、标准偏差。

同方差的解释

从图中可以看出,Gd在时间= 0时开始具有非零值,但其均值和方差都非常急剧地接近零并保持在那里。因此,当Gd保持在零附近时,部分守恒方程为

G + G 一个 c o n 年代 t 一个 n t

这意味着当G增加时,Ga减少了等量,反之亦然。这就解释了为什么G和Ga的方差几乎相同。如果你看一下varianceVals矩阵中的数据,你会发现这两个方差非常接近,但并不完全相等。这是由于Gd的存在它非常接近于零,但不是完全为零。

集成图:2D分布图

可视化随机集合数据的一种方法是绘制特定时间点物种浓度的直方图。每个直方图显示了特定物种在整个运行集合中的浓度分布。这些直方图可以使用SimBiology命令生成sbioensembleplot

让我们为物种G、Ga和RL在t = 10时创建直方图。注意,在本例中,我们生成集成数据时没有指定插值选项sbioensemblerun.因此,在集合中每次运行的时间向量彼此不同。sbioensembleplot插值模拟数据,以找到在t = 10的精确时间内每次运行的物种数量。

sbioensembleplot(simdata, speciesNames, 10);

图中包含一个轴对象。标题为Species G的坐标轴对象(Mean = 5948.14, Std. Deviation = 36.3051)包含一个类型为直方图的对象。

图中包含一个轴对象。标题为Species Ga的坐标轴对象(Mean = 4051.39, Std. Deviation = 36.1337)包含一个类型为直方图的对象。

图中包含一个轴对象。标题为Species RL的坐标轴对象(Mean = 9622.07, Std. Deviation = 11.0337)包含一个类型为直方图的对象。

集合情节:3D山地情节

很明显,为了充分了解分布如何随时间变化,您需要在每个感兴趣的时间间隔上制作这些分布图。此外,分布图需要与均值和方差图一起看。如果能把所有这些信息都集中在一张图上,那就太好了。

3D集成数据图就是这样做的。通过这些3D图,你可以看到均值和方差是如何随时间变化的。此外,不必在每个可能的时间步骤绘制物种分布,在一个视图中,您可以看到一个拟合的正态分布如何随着时间变化,具有与实际数据相同的均值和方差。3D集成图非常适合用于了解平均值、方差和分布如何随时间变化。

让我们看一个Ga物种的三维集合图。

sbioensembleplot (simdata“遗传算法”);

图中包含一个轴对象。标题为“时变集成数据图”的axis对象包含251个类型为行、补丁、文本的对象。

这个例子展示了如何使用SimBiology中的各种工具来分析SimBiology模型的随机集合数据。