跳到主要内容

通过状态空间适当子空间的穷举计数检测大型布尔网络的吸引子

摘要

背景

布尔模型越来越多地被用于研究生物信号网络。在布尔网络中,节点表示生物实体,如基因、蛋白质或蛋白质复合体,边缘表示激活或抑制一个节点对另一个节点的影响。根据激活器或抑制剂的输入,布尔网络将节点分类为活动节点或非活动节点。形式主义很有吸引力,因为对于许多生物学关系,我们缺乏关于结合常数或动力学参数的定量信息,只能依赖“a激活(或抑制)B”类型的定性描述。布尔网络分析的一个中心目标是确定吸引子(稳态和/或循环)。众所周知,这个问题计算复杂,其最重要的参数是网络节点的数量。各种算法都取得了相当大的成功。本文提出了一种算法,该算法通过简单直观的参数扩展了可分析网络的大小。

结果

我们现在互联网这是一个软件包,在完全异步更新模式下,在没有任何网络缩减的情况下,检测最多150个节点的布尔网络的固定状态,以及最多一半节点的网络的任何当前循环的一大部分。该算法对整个网络状态空间中适当选择的子空间的状态进行了完全枚举。与整个网络状态空间相比,这些相关子空间的大小很小,因此可以分析大型网络。用于周期分析的扫描子空间更大,减少了可访问网络的大小。重要的是,循环检测中固有的是一种基于循环成员状态的非冻结节点数的分类方案,其特征是非冻结节点较少的循环更容易检测。人们进一步认为,这些可检测的循环在生物学上也是更重要的循环。此外,互联网还提供了标准的布尔分析功能,如节点循环检测。

结论

互联网是一个便于分析大型布尔网络的软件包。其直观的方法有助于更好地理解所讨论的网络。

背景

在生物网络的研究中使用布尔模型是在20世纪70年代提出并实现的[1-5]. 布尔网络模型的特征是生物相互作用网络的拓扑结构和一组由Thomas和D'Ari称为“逻辑函数”的定性参数[6]. 逻辑功能确定网络中任何节点的激活状态或值,作为其激活和/或抑制输入的功能。通常,对于具有k个不同输入节点的目标节点,每个输入节点又可以是“活动的”或“非活动的”,逻辑函数为2个输入节点中的每一个分配目标节点的结果值k个可能的输入模式。

布尔网络最适合分析和描述系统的稳态(与动力学参数无关)。正如托马斯所证明的那样,非平凡的稳态是由负反馈或正反馈回路的存在决定的,前者以稳态或振荡过程为特征,而后者导致开关样或分化行为。

由于各小组开发的工具,对由多个节点组成的布尔网络进行分析是可行的。Garg等人[7]引入了二元决策图的概念,并开发了小队[8].金西姆Gonzalez等人[9]. Himkelman等人[10]使用代数方法开发亚当,Helikar等人[11]开发了仿真平台化学链和Müssel等人开发的BoolNet公司[12].

还开发了一些算法,在不影响稳态特性的情况下简化网络架构。它们迭代地消除了不调整自身功能的单个节点[13,14]或:具有一个传入边和一个传出边(简单调解人节点)或在所有吸引子中具有相同的值[15,16]. 这两种方法都保持了网络的不动点结构。后者也保持了循环吸引子,而前者在某些情况下可能引入虚假吸引子。

对于具有n个节点的二进制布尔网络,有2n个形成状态空间的可能激活模式:每个状态都由一个n维二进制向量表示。在多值布尔网络的情况下,其中一些节点可以有2个以上的值,激活模式的数量增长得更快。我们将这个数字称为网络的“状态复杂性”。

对于网络中的每个节点,逻辑参数决定了它对从其他节点接收到的输入的反应,更具体地说,是节点在任何给定的输入模式下倾向于哪个值(0或1),也称为该输入模式的节点“图像”。通常,对于具有k个输入(激活或抑制)的节点,有2个k个可能的输入模式和相应的逻辑参数。我们将其称为网络的“参数复杂性”。对于逻辑参数的选择,有一些明显的限制,例如,向已经活动的节点添加激活输入不应导致其失活。为了简单起见,布尔网络分析通常采用这样的约定:无论是否存在任何激活剂,受至少一个抑制剂影响的节点总是趋向于不活动;在没有任何抑制影响的情况下,一个激活剂就足以激活它。这有效地消除了问题的参数复杂性。在这里,我们偏离了这一惯例,这是由生物学例子驱动的,例如,转录因子和共激活因子都是特定功能所必需的,或者共激活因子和共抑制因子竞争靶转录因子(图1). 我们在这里做出的唯一假设是,在“最佳”条件下,即存在所有激活剂而不存在所有抑制剂,节点必须被激活,同样,在存在所有抑制剂而不存在任何激活剂的情况下,它必须被失活。这些最小假设确保每个节点原则上必须能够在其两个值之间切换。我们注意到状态和参数复杂度是相关的,通常可以通过向网络中添加符号节点来降低参数复杂度,符号节点表示过程中的复杂度或中间步骤;然而,这是以更高的状态复杂性为代价的。

图1
图1

状态复杂性和参数复杂性。答:假想调控生物网络的示意图。转录因子TF(条纹圈)与两个相互竞争的共激活物(CA1、CA2)中的任何一个相互作用,以驱动两个靶基因之一(三角形T1、T2)的表达。抑制剂(灰色圆角矩形)的存在阻碍TF。B类:在缺乏底层交互的详细知识的情况下,可以将来自A的网络简化为该图,将状态复杂性转换为参数复杂性,如所示C类抄送:对于24中4个输入节点的可能激活模式B类,指定了两个目标T1和T2的逻辑函数。唯一的知识是关于激活或抑制输入节点对目标的影响。对于逻辑函数,我们使用Thomas et al引入的约定[6],即参数KTF、R、CA2表示目标节点在作为下标提到的输入节点的积极影响下(即存在激活剂,缺少抑制剂)趋向的值(0或1)。对于互联网,每个节点的逻辑参数中只有两个是预定义的(以粗体表示的值)。另外两列Ex1和Ex2指定系统所有参数的具体值,如A类

对于任何给定的网络和网络状态,如果所有节点都满足逻辑功能,即具有与其输入一致的值,则不明显;事实上,这种状态是否存在甚至不明显。节点值可以根据输入模式进行切换来更新。无论何时声明在给定状态下,节点满足等式,这意味着如果我们选择更新它,节点将保留其值(即,该值与当前输入模式的图像相同)。为了简单起见,我们将这种节点称为“内容”节点。根据定义,网络的固定状态是满足所有节点方程的状态,即所有节点都是内容节点。相反,如果节点的当前值与其当前输入不一致,并且在选择进行更新时将被修改,则该节点称为“不满意”节点。

布尔网络通常使用“同步”更新策略进行研究,其中所有不满意节点的值同时切换。(请注意,这种切换可能导致产生新的不满节点。)虽然这种方法在技术上很方便,但它不能正确反映生物网络的特征,甚至可能在其行为中引入伪影。“异步”更新一次只进行一个节点,通常会随机选择它们。此方法在中称为“通用异步”[15],是我们选择的。

在下文中,我们指的是随机异步更新和二进制布尔网络(尽管该算法也适用于多个离散值网络)。此外,所有结果都是在网络上测试产生的,该网络具有:(i)2到3之间的边与节点的比值,以及(ii)具有非零输入和输出度的所有节点,并且其中至少一个节点大于一个节点(即,没有简单中介节点)。

实施

该软件应用程序是用ANSI C编写的,并且是单线程的。唯一的硬件要求与可用的随机访问内存有关。可以使用中也使用的简单格式加载网络拓扑[7]. 在输入文本文件中,每一行对应于激活A → B或抑制C − | D。

作者可以免费获得源代码。

结果

固定状态检测

该算法开发的关键是要认识到布尔网络的离散性允许我们将搜索限制在固定状态(如果存在)所在的状态空间的选定子空间。结果表明,这些子空间比实际状态空间小几个数量级,从而可能实现精确枚举。这是通过两步过程实现的(图2)。

图2
图2

为了简化本文中描述的算法,我们分析了一个三节点网络(a)。我们从2 x 22矩阵中节点1和2的所有值组合的完整列表开始,然后按所述添加节点3以获得(2+1)x 22+1矩阵(B)。我们从2 x 2中节点1和2的所有值组合的完整列表开始2矩阵,然后按所述添加节点3以获得(2 + 1) x 2个2+1为此,我们还使用逻辑参数指定了三个节点倾向于任何输入组合的图像1′、2′、3′。在这个简单的示例中,只有节点3接收多个输入,因此具有非平凡的逻辑功能。对于任何有效的逻辑函数选择,去掉与图像状态不匹配的状态,我们得到两个固定状态的候选。将状态与其映像状态进行比较,我们发现状态(1,1,0)是一个固定状态,如果 1 等于0(即节点3不被其激活器1单独激活),而状态(0,0,1)是固定的,如果 2 等于1(即节点3已经被其抑制剂2的缺失激活)。设置两者 1  = 0和 2  = 1表示两种状态都是固定的。实验数据与状态(1,1,0)一致,但与状态(0,0,1)不一致,因此有助于估计逻辑函数。

假设一个由n个节点组成的布尔网络。对于其中的k个(通常是k大约10个),生成2k个×k矩阵表示它们的所有2k个可能的状态。然后,对于剩余的n-k个节点中的每一个,都要经历以下迭代过程:

通过首先复制矩阵,然后添加一个额外的列来扩展矩阵,该列具有适当选择的(k + 1)标准节点(对于每对相同的行为0和1)。结果是2k+1(千分之一)×(k) + 1) 矩阵。新节点的选择至关重要:它的所有传入节点必须存在于初始的k成员组中(参见下面的备注)。然后,对于每一行,我们检查添加的节点的值是否满足其节点方程。如果违反了它,那么我们将删除该行,因为它不会导致固定状态。这样做,所有的2n-(k+1)下游继任者被彻底清除。如果k个最初选定的节点中的所有传入节点都在矩阵中,则对其执行相同的步骤。

然后a(k + 2)添加节点,进一步扩展矩阵,对所有行测试其方程,重复该过程,直到考虑到所有节点。在每个迭代步骤中,如果没有发现剩余节点的所有传入节点都已存在于矩阵中,则选择具有最大离差的节点。该算法只是试图增加每个步骤中至少有一个节点具有所有传入节点的可用概率。前k个节点的选择也基于此推理:选择具有最大偏离值的节点。

连续删除等式冲突状态(即包含至少一个不满节点的状态)会导致所检查状态的数量急剧减少。它可以将问题简化许多数量级,具体取决于网络大小和复杂性。在一个典型的网络中,在矩阵中包含一半节点的时间前后,被检查状态的数量达到最大值。然后,随着评估过程中考虑到许多节点方程,状态数量迅速减少。处理完整个节点集后,最终矩阵中只保留固定状态。

我们注意到,这里描述的方法同时处理状态和参数复杂性。当测试节点的实际值是否与节点方程兼容时,我们接受此条件适用于至少一个逻辑参数选择的任何状态。因此,该算法不仅为逻辑参数的具体组合生成固定状态,而且还为所有可能的参数生成固定状态。然后可以从最终矩阵中读取实现固定点所需的逻辑参数条件(图2B) ●●●●。这一方面对于逆向工程问题至关重要。

对多值情况的推广很简单:在每个迭代步骤中,当添加一个具有m个级别的节点时,该算法将前一个矩阵的m-1副本与相应的级别(从1m-1个)已附加。然后如前所述进行,即删除所有方程暴力状态。

循环检测

前期工作

系统方程指示每个状态流向相邻状态,并且(在异步模式下)相邻状态最多相差一个节点的值。将更改节点设置为满足系统方程的值,这会将内容节点的数量增加一个;然而,此更改通常会对其他节点产生影响,并可能导致其他不满意的节点。如果状态空间包含吸引盆地,那么系统最终将流向它们。吸引力的基础表明固定状态或第个,共个稳定循环也就是说,一旦系统到达状态集,系统就无法摆脱这些状态集。一旦一个系统进入一个吸引池,方程就会驱使它更深地进入其中,逐渐增加内容节点的数量。然而,对于任何一个吸引盆地来说,要想知道它是否可以从任何给定的当前状态达到,都不是一件小事。

我们认为一个州不稳定/无序其不满节点的数量越高,我们将状态称为1-,2-到n-不满。直觉上,系统方程往往会将系统推向更多稳定/有序状态空间的区域。我们注意到,大多数有趣的稳定循环驻留在足够有序的空间状态区域中,其中其成员的节点值的很大一部分满足方程。包含大量不满意节点的状态的稳定循环不太相关,这从以下考虑中显而易见(比较图)。

图3
图3

简单和复杂循环的分析。实心圆表示系统的状态,而不是单个节点。在异步更新模式下,两个相邻状态的差异正好是一个节点的值。因此,可能的最短周期(0,0)(0, 1) (1, 1) (1, 0) (0, 0) → …, 由两个变化节点组成,状态空间长度为4。答:循环“abcd”仅在没有虚线过渡a时固定g.在存在这种转变的情况下,循环泄漏到状态g,并且系统只有一个固定点g。B类:在循环“abcd”中,这里的状态c是3-不相容的,因此可以转换到三个不同的后继状态d、e和f。为了固定循环,如图所示,d、e、f的所有后继状态都必须返回到循环。因此,在生物激励网络中,复杂的固定循环被认为是罕见的。

如果一个具有n个节点的系统的状态是k-不满意的,那么它有k个后继状态,因为k个不满意的节点中的每一个都可以更新,并且方程不会改变内容节点的值。

当循环的所有成员国都在循环中流动时,循环是稳定的。如果单个循环成员的后续成员不是循环的一部分,则会使循环亚稳定(图A) ●●●●。

一个稳定的循环包含一个即使节点数量适中的状态,也必然是一个长循环(图中的状态“c”B表示3-不满意);该状态有多个继承者,所有继承者都必须是循环的成员以及所有继承者等。另一方面,其成员很少有不满节点的循环通常很短。我们引用一个k循环来表示其最不满意的成员国是k不满意的国家。一个1周期,其中每个国家成员都有一个继任者,也被称为简单的循环(图A、 在缺少A的情况下g过渡)。否则,它是一个混合的循环和在这种循环中出现“分支”(图B) ●●●●。简单的循环必然是稳定的。一个典型的例子是:一个1循环,由4个状态组成,可通过两个节点的值的4个组合(0-0、0-1、1-0和1-1)区分。网络中剩余的k-2个节点都是内容,并且由所有4个循环状态共享。

我们注意到,原则上,尽管所有州都很少有不满节点,但周期可能很长。

稳定循环查找

上述定点搜索是在满足所有系统方程的状态下执行的。它不能用于检测循环,因为循环的每个成员状态必须至少为1-不满。很自然,放松上述限制可以用于循环查找。也就是说,在扩大的子空间中搜索,包括所有状态,直到并包括k-不满状态,将导致检测到所有j-cycles,其中j ≤ k) ●●●●。不可避免的是,枚举更多的状态会导致可解析网络的规模减小。

k的值可以从k变化 = 1(1个循环搜索)到n(搜索所有循环)。选定状态的数量随着k的增加而快速增长。只有当所选状态的数量因内存限制而可管理时,循环查找才可行。此外,由于该算法符合“标准”图形理论方法,首先查找所有父子状态关系,然后搜索稳定循环,因此执行运行时间会快速增加。如果找到一个,它会通过自下而上的方式“创造”吸引力的盆地。

该算法经历了两个主要阶段:

  1. (i)

    确定状态空间的适当子集。

    1. a。

      与固定状态的情况一样,每次迭代添加一个节点,并在每个步骤中保持所有状态直到并包括k不满状态。每个状态都由其不满节点的数量标记(在{0,1,…,k}中)。最终结果是所有这些状态的集合。当前的实现可以轻松处理多达数千万个州的设置。请注意,所有网络固定状态都包含在内,并用零标记。

    2. b。

      每个选定状态的前身和后继都记录在适当的数据结构中。在选定的一组州中没有任何继承者的所有州(即,它们在“外部”流动)都无法进行评估,从现在起将被排除在外。

  2. (ii)

    搜索所选状态集内的循环:

    1. a。

      首先,确定每个固定状态的吸引域。这是通过“向上走”收集到的有关继承人/前任人关系的信息,沿着属于当前流域的所有州进行标记和计数来实现的。任何剩余的非标记态都只属于循环吸引子的盆地。在随后的步骤中,搜索仅限于这些状态(流域大小计算除外)。缺少非标记状态显然意味着所选状态集中没有循环;此时搜索有效终止。

    2. b。

      从k值最低的状态开始,通过在所选状态的图形中创建所有定向行走,再次使用后继/前置数据结构查找定向循环。如果发现任何此类循环,则检查其任何成员国是否属于任何当前检测到的盆地。如果是这种情况,则循环将被视为不稳定而丢弃。否则,检查循环是否“关闭”,即其所有成员的子代是否也是循环的成员。如果不是这样,则该旋回的成员(或后继成员)属于尚未发现的盆地,或者它是更大混合旋回的一部分。在当前步骤中,简单地登记这样一个循环;这将在稍后阶段处理。如果发现循环是闭合的,那么它是稳定的,并构成一个吸引子。它的所有流域状态都会被统计,任何未被标记的状态现在都会被标记。(请注意,一个状态可以属于多个吸引子。)重复此步骤,直到考虑所有注册状态。

    3. c。

      检测到的旋回(其成员未流向已识别的盆地)仍然可以保留。它们中的每一个都可能是更大混合循环的一部分。一个迭代过程被称为迭代过程,它从一个适当选择的“种子”循环开始,通过添加循环中的任何新状态来不断扩大循环。迭代一直持续到这个扩大的循环“关闭”。如前所述,确定了相应的流域,并继续对任何剩余的未标记状态进行处理。

准确确定所有继承人/前任人关系以及盆地成员计数所需的时间随选定州的数量线性增长。这一事实有助于快速呈现算法。另一个关键因素是,每次确定吸引子盆地时,搜索空间的大小都会减小。

标杆管理

为了进行基准测试,我们通过编程生成了大量足够复杂的布尔网络,这些网络具有与已知的生物相关示例相似的特性。如上所述,排除了具有单个传入边缘和单个传出边缘的节点。对于大多数网络来说,边与节点的比率大约为2.5(当不是这样的时候,它是这样规定的),每个节点不允许超过6条传入边。我们选择比较互联网GenYsis公司金西姆因为这两个包支持真正的异步更新,并保证检测所有周期(对于特定大小的网络).lnet网络GenYsis公司共享通用输入格式;对于金西姆已为所有相关运行生成兼容版本。

图4
图4

三种算法的示意图比较。彩色区域表示可以使用三种工具中的任何一种分析吸引子GenYsis公司,金西姆互联网对于蓝色区域,吸引子至少有一个不满节点,且总节点数超过30个,仅lnet适用。

只有互联网涉及数百个网络的测试运行是自动化的GenYsis公司如下图所示,运行仅限于小型网络,而金西姆它们很难实现自动化。因此,我们只运行了其中几个仍能产生足够代表性结果的程序。

测试是在一台Linux计算机上进行的,该计算机具有Xeon 2.4 GHz处理器和96 GB物理内存。GINsim的版本是2.4,它在Java 1.5上运行。

GenYsis基因发现在检测约30个节点的网络的所有固定点和所有周期方面具有优势。较大的程序的执行时间可达1小时,内存需求最小。对于更大的网络,执行时间比我们的测试时间(1小时)还要长,内存利用率变得越来越重要。这些结果与Ferhat等人的结果基本一致[17]. 应该强调的是GenYsis公司通过设计检测所有现有的周期,也包括数千个成员国的周期。

金西姆如Hinkelman之前报告的那样,以节省内存的方式快速检测多达120个节点的网络的固定状态[18]. 多线程,金西姆还利用了我们的多核测试环境。然而,大型网络的执行时间高于我们的测试时间,有时似乎根本不会终止。它在寻找稳定循环时的性能相当差。分析20个节点的网络已经需要几分钟的时间,即使是中等规模的网络也会失败。原因是它试图详尽列举所有网络状态。这里应该注意到金西姆也可以处理多值网络。

互联网检测最多150个节点的网络的固定状态,检测最多20个节点的所有周期,并检测最多70个节点的网的周期子集。限制因素是可用的计算机内存,因为互联网不可避免地会增长得太大。

对于循环检测,多达20个节点的网络,互联网的性能相当于GenYsis公司。从20到30个节点仍然是相同的,但是互联网搜索被限制在具有低k的k不满足状态(k的实际值取决于网络大小)。否则,速度可能会明显变慢,原因与GINsim公司在没有k(k)很低的吸引子的情况下,减速可能很重要 = 0或1),因为这些总是首先被检测到,并且它们的流域状态立即从任何下游考虑中删除。为了进一步说明这两种算法的不同性能,一个30节点的网络分析可能需要几个小时GenYsis公司无论固定状态或周期的数量(无论多大)。另一方面,虽然互联网可能无法检测到非常大的周期,它将在亚秒的时间内找到固定状态和小周期。

30个左右节点互联网在检测周期中是唯一的。由于计算机内存有限,为了增加节点数量,我们必须减少任何枚举状态下不满意节点的允许数量。这导致检测周期更少。然而,回想一下,在代表生物系统的布尔网络中,具有低k值的k循环可能是最相关的。

三种算法的比较示意图如图所示4其余数字仅集中于互联网结果。

图5
图5

固定状态搜索的持续时间依赖于网络节点的数量。正文中的解释。

第一系列测试针对节点范围从30到150的网络的固定状态。对于分析的每个节点数,根据前面提到的规则,生成一组100个网络。然后对这些网络中的每一个进行分析互联网要么只搜索固定状态,要么也搜索稳定循环。记录计算机执行时间,并使用结果生成图中所示的曲线图5,6,7,8910

图6
图6

枚举状态与状态总数。此日志2-日志2该图清楚地表明,计算出的所有可能网络状态的分析状态数量显著减少。

图7
图7

可访问的不满节点数量随着节点数量的增加而减少。分析不同规模网络的计算时间,取决于不满意节点的最大允许数量。对于较大的网络,软件可以处理的不满节点的最大数量会逐渐减少。这也反映在内存使用的增加上(未显示)。例如,对于40个节点的网络,最多可以访问4个不满意节点的循环。这样的循环包含数十或数百个状态。

图8
图8

即使是循环搜索,枚举状态的数量仍然很低。对于大约10个节点的30节点网络9.03状态,具有不超过10个不满节点的状态的数量仍然只是状态空间的一小部分。

图9
图9

总体 lnet公司 性能。 lnet公司执行时间依赖于网络大小和不满节点的数量。

图10
图10

50节点网络中边数对固定状态搜索的影响。随着边数的增加,中值互联网执行时间只略微增加,但更多的网络实例需要更长的时间来分析(外围点)。

在图中5显示了节点数与计算机执行时间(以秒为单位)的半对数图。130、140和150例患者的数据未显示,因为内存不足分别导致其中20%、68%和68%的患者终止治疗。(对于那些成功分析的网络,持续时间趋势与图中显示的趋势一致。)

接下来,如前所述互联网算法依赖于大幅减少枚举状态的数量。这在图中很明显6,其中绘制枚举状态与系统空间状态的总数(仅适用于固定状态搜索)。

在图中7,重点是循环搜索。这3个图分别显示了30、40和50个节点的网络中循环搜索的计算时间。来自更多节点(最多70个)的数据未显示,但遵循类似的趋势。

8同样关于循环搜索,显示了不满节点数相等或更少的系统状态计数,以增加不满节点数。对于一个30节点的网络,最多有10个不满节点的州仍然不到整个状态空间的6%。枚举此分数足以检测多达数千个成员国的现有循环。

9总结了所有互联网关于固定状态和循环的结果。

最后,图10显示了增加具有固定节点数的网络的边数的效果(选择了50个节点)。

结论

我们提出了一种基于构建方法的算法,大大减少了布尔网络中固定状态和固定循环的搜索空间。它允许快速可靠地检测多达150个节点的网络中的所有固定状态,边到节点的比率高达3。对于大约一半节点数的网络,检测到与生物学上最相关的循环相对应的高阶循环吸引子。

该方法的主要特点是精确枚举网络状态空间的定义明确的区域,并忠实地再现相应的状态转移图。结果是检测出这些区域中的所有吸引子。根据枚举子空间的总分数,可以推断出每个吸引子盆地的大小信息。

的执行时间互联网与其他方法相当或更快。它的局限性显然是可用内存。随着网络规模的增长,即使关注整个网络状态空间的小个子空间,在某些时候也变得异常复杂。受编程启发的优化只会带来边际改进,因为每次添加一个节点,布尔网络的状态空间就会翻倍。一个有希望的替代方案是首先应用现有的网络缩减方法,然后将生成的网络提交给lnet公司。这样的场景应该能够处理最多有数百个节点(在减少之前)的网络。

在编写手稿的过程中,我们注意到SQ Zhang等人发表了一篇文章[19],其中描述了类似于此处所示的固定状态检测算法。作者还提供了一个基于简单周期性检查的算法的循环查找版本的概念大纲,然而,该算法只能可靠地检测简单的循环。我们没有测试该算法,因为没有足够的信息可用。最后,没有讨论不满节点数在循环检测中的作用。

可用性和要求

这个互联网可执行文件,附加文件中提供了一个文件,其中包含如何使用它的说明和输入文件的示例1

操作系统:源代码可以在Windows、Linux和Apple计算机上编译。

程序设计语言:ANSI C

非学术用户使用的限制:无

工具书类

  1. 考夫曼S:随机构建的遗传网络中的代谢稳定性和表观遗传。《理论生物学杂志》。1969, 22: 437-467. 10.1016/0022-5193(69)90015-0.

    第条 中国科学院 公共医学 谷歌学者 

  2. Glass L,Kauffman SA:连续非线性生化控制网络的逻辑分析。《理论生物学杂志》。1973, 103: 103-129.

    第条 谷歌学者 

  3. Thomas R:基因控制电路的布尔形式化。《理论生物学杂志》。1973, 42: 563-585. 10.1016/0022-5193(73)90247-6.

    第条 中国科学院 公共医学 谷歌学者 

  4. Thomas R、Thieffry D、Kaufman M:生物调控网络的动态行为——I.反馈回路的生物作用和回路特征状态概念的实际应用。公牛数学生物学。1995, 57: 247-276.

    第条 中国科学院 公共医学 谷歌学者 

  5. Thieffry D,Thomas R:生物调控网络的动态行为——II。λ噬菌体的免疫控制。公牛数学生物学。1995, 57: 277-295.

    中国科学院 公共医学 谷歌学者 

  6. Thomas R,Richard D’A:生物反馈。1990年,博卡拉顿:CRC出版社

    谷歌学者 

  7. Garg A,Xenarios I,Mendoza L,DeMicheli G:基因网络动态分析和硅基因微扰实验的有效方法。Lect Notes计算机科学。2007, 4453: 62-76. 10.1007/978-3-540-71681-5_5。

    第条 谷歌学者 

  8. Di Cara A,Garg A,De Micheli G,Xenarios I,Mendoza L:使用SQUAD对监管网络进行动态模拟。BMC生物信息学。2007年,8:462-10.1186/1471-2105-8-462。

    第条 公共医学中心 公共医学 谷歌学者 

  9. Gonzalez AG、Naldi A、Sánchez L、Thieffry D、Chaouiya C:GINsim:监管网络定性建模、模拟和分析的软件套件。生物系统。2006, 84 (2): 91-100. 10.1016/j.biosystems.2005.10.003。

    第条 中国科学院 公共医学 谷歌学者 

  10. Hinkelmann F、Brandon M、Guang B、McNeill R、Blekherman G、Veliz-Cuba A、Laubenbacher R:ADAM:使用计算机代数分析生物系统的离散模型。BMC生物信息学。2011, 12: 295-10.1186/1471-2105-12-295.

    第条 公共医学中心 公共医学 谷歌学者 

  11. Helikar T,Rogers JA:ChemChains:针对实验室科学家的生化网络模拟和分析平台。BMC系统生物。2009, 3: 58-10.1186/1752-0509-3-58.

    第条 公共医学中心 公共医学 谷歌学者 

  12. Müssel C,Hopfensitz M,Kestler HA:BoolNet是布尔网络生成、重建和分析的R包。生物信息学。2010, 26 (10): 1378-1380. 10.1093/bioinformatics/btq124。

    第条 公共医学 谷歌学者 

  13. Naldi A,Remy E,Thieffry D,Chaouiya C:逻辑调控图的动态一致约简。理论计算科学。2011, 412 (21): 2207-2218. 2016年10月10日/j.tcs.2010.10.021。

    第条 谷歌学者 

  14. Veliz-Cuba A:布尔网络模型的简化。《理论生物学杂志》。2011年,289C:167-172。

    第条 谷歌学者 

  15. Saadatpour A、Albert I和Albert R:信号转导网络异步布尔模型的吸引子分析。《理论生物学杂志》。2010, 266: 641-656. 2016年10月10日/j.jtbi.2010.07.022。

    第条 公共医学 谷歌学者 

  16. Saadatpour A,Wang RS,Liao A,Liu X,Loughran TP,Albert I,AlbertR:T细胞生存网络的动态和结构分析确定了大颗粒淋巴细胞白血病的新候选治疗靶点。公共科学图书馆计算生物学。2011年,7(11):e1002267-10.1371/journal.pcbi.1002267。

    第条 公共医学中心 中国科学院 公共医学 谷歌学者 

  17. Ay F,Fei X,Kahveci T:布尔生物调控网络的可扩展稳态分析。《公共科学图书馆·综合》。2009年,4(12):e7992-10.1371/journal.pone.0007992。

    第条 公共医学中心 公共医学 谷歌学者 

  18. Hinkelmann F:博士论文。系统生物学中离散模型的代数理论。2011年,弗吉尼亚理工学院数学系

    谷歌学者 

  19. Shu-Qin Z,Morihiro H,Tatsuya A,Wai-Ki C,Michael KN:布尔网络中寻找小吸引子的算法。EURASIP生物信息学和系统生物学杂志。2007, 2007: 20180-

    谷歌学者 

下载参考资料

致谢

作者要感谢阿比谢克·加格、朱利安·多利埃和伊奥安尼斯·塞纳里奥斯的宝贵讨论,以及劳伦特·埃西奥的支持。

作者信息

作者和附属机构

作者

通讯作者

与的通信尼古拉·伯恩蒂尼斯(Nikolaos Berntenis)

其他信息

相互竞争的利益

Nikolaos Berntenis和Martin Ebeling是F.Hoffmann-La Roche Ltd.的全职员工。

两位作者都声明,他们没有相互竞争的利益。

作者的贡献

NB写了互联网代码并执行比较测试。NB和ME构思了算法并撰写了手稿。两位作者阅读并批准了最终手稿。

电子辅助材料

12859_2013_6239_MOESM1_ESM.zip地址

附加文件1:包括 互联网 可执行文件(LINUX),一个帮助文件(文本格式),包含有关如何运行的详细说明 互联网 和4个用于说明帮助文件中的软件的输入网络文件。(邮政编码219 KB)

作者提交的原始图像文件

权利和权限

本文由BioMed Central Ltd.授权发布。这是一篇根据知识共享署名许可条款发布的开放存取文章(http://creativecommons.org/licenses/by/2.0)它允许在任何介质中不受限制地使用、分发和复制原始作品,前提是正确引用了原始作品。

转载和许可

关于本文

引用这篇文章

Berntenis,N.,Ebeling,M.通过穷举状态空间的适当子空间来检测大型布尔网络的吸引子。BMC生物信息学 14, 361 (2013). https://doi.org/10.1186/1471-2105-14-361

下载引文

  • 收到:

  • 认可的:

  • 出版:

  • 内政部:https://doi.org/10.1186/1471-2105-14-361

关键词