摘要

动机:子树修剪与再生(SPR)是一种树重排方法,在解决一些计算生物学问题中得到了应用。这个最低限度根SPR数(第页SPR)操作,将一个有根的二叉树转换为另一个有根的二叉树所需的操作称为第页两棵树之间的SPR距离。计算第页SPR距离近年来得到了积极的研究。目前,缺乏实用的软件工具来计算第页较大树木的SPR距离第页SPR距离。

结果:在本文中,我们提出了一种简单实用的方法来计算第页SPR距离与整数线性规划。通过将这种新方法应用于几个模拟和真实的生物数据集,我们表明,我们的新方法在准确性和效率方面优于现有的软件工具。我们的实验结果表明,我们的方法可以计算出精确的第页多棵大树的SPR距离第页SPR距离。

可利用性:SPRDist软件工具可从下载网页:http://www.eng.uconn.edu(英文)/~你的.

联系人: ywu@eng.uconn.edu(英文)

1简介

多物种的进化史通常被表示为一个带叶标签的树,这被称为系统发育树。通常,系统发育树将祖先物种指定为树的根。虽然有时研究多分支树,但系统发育树通常(但并不总是)被假定为二元树。因此,在本文中,我们将注意力局限于根二进制有叶子标记的树。请参阅图1以系统发育树为例。

rSPR在树上的操作示意图。通过修剪包含叶1和叶2的子树,并重新嫁接到叶4的边缘,我们将左树转换为右树。
图1。

以下内容的插图第页树上的SPR操作。通过修剪包含叶1和叶2的子树,并重新嫁接到叶4的边缘,我们将左树转换为右树。

系统发育学中的一个重要问题是研究系统发育树的重排。树重排操作通过应用结构更改来修改树拓扑。有几种流行的树重排。例如,见Felsenstein(2004),了解各种树重排的概述。在这里,我们关注一种重排:子树修剪和重排(SPR)。SPR操作从树中删除一个分支(从而分离该分支下的子树);则通过将子树附加到剩余树中的分支,将子树重新插入到树的剩余部分中。请参阅图1有关SPR操作的说明。由于我们关注有根树,所以我们将有根树上的SPR操作表示为第页SPR操作。请注意,子树的根是重新连接发生的位置(即子树的方向保持不变)。还要注意,修剪后的子树可以作为剩余树的根的同级重新插入,然后树被重新根化。这里有一个小的技术困难:以前我们说子树应该附加到现有的分支,而当重新生根时没有这样的分支。为了便于理解,我们可以想象有一个虚拟的分支从根中伸出,它可以充当修剪后的子树可以重新嫁接到的分支。

在本文中,我们重点关注第页SPR距离问题。假设一棵有根的二叉树经历了未知数量的第页SPR操作。进一步假设结果树和原始树都已知。那么,一个自然的问题是有多少第页需要SPR操作将原始树转换为结果树。也就是说,我们问什么是最低限度数量第页将原始树转换为结果树所需的SPR操作。

1.1第页SPR距离问题

这个第页SPR距离问题给出了两个有根二叉树T型T型',计算最小数量第页转换所需的SPR操作T型T型′.

这个第页SPR距离被视为两个有根二叉树之间拓扑和进化相似性的直观度量。请注意第页SPR距离可能无法捕捉所有生物现象。一个重要的方面是第页SPR距离公式和文献中经常提到的时间约束。如果没有进一步的限制第页SPR距离在某些生物背景下(如杂交)可能在生物学上不可行。这是因为时间矛盾和“周期”第页当一系列不受约束的情况发生时,可能会发生SPR操作第页执行SPR操作。参见,例如Bordewich等。(2007)对于时间约束问题的相关工作。也可以看到一些关于MacLeod横向基因转移(LGT)中的时间违规的有趣讨论等。(2005). 在本文中,我们在计算第页SPR距离(除非另有说明)。

计算第页SPR距离是由几个重要的生物学问题引起的。LGT就是一个例子。关于LGT的一个常见问题是:给定两个有根的二叉树,将一棵树转换为另一棵树所需的最小LGT事件数是多少。LGT操作可以通过以下方式进行模拟第页SPR操作,因此这与第页SPR距离问题。参见,例如Beiko和Hamilton(2006)进一步阐述第页SPR和LGT。这个第页SPR距离问题也可用于研究种群序列的重组(Hein,1990,1993; Song和Hein,2005).

这个第页SPR距离问题近年来得到了积极的研究。众所周知,这个问题是NP-hard(Bordenwich和Semple,2004; 海因等。,1996)并且开发了几种近似算法(Bonet等。,2006; 波德威奇等。,2008; 海因等。,1996; 罗德里格斯岛等。,2001). 当前最佳多项式时间近似算法的近似比为(波德威奇等。,2008). 此外,Bordewich和Semple(2004)开发的固定参数可处理(FPT)算法(Bordenwich等。,2008). 他们证明了第页SPR距离可以用以下公式计算O(运行)(42k个k个4+n个4)时间,其中k个是SPR距离n个是树上的叶子数(即分类群)。虽然理论上很有趣,但当出现以下情况时,FPT算法的性能会下降k个增加。此算法似乎不适用于k个=10和n个例如,=100。FPT算法的实际适用性尚未得到很好的评估。最近,波德威奇等。(2007)开发了一种实用的方法来计算杂交事件的最小数量,该方法与第页SPR距离。他们的方法(在一个名为HybridNumber的程序中实现)在本质上与我们的方法类似:它总是试图找到最优解,但可能无法在合理的时间内完成计算。然而,他们的方法和我们这里的方法仍然计算不同的值。事实上第页SPR距离有时等于,但通常是杂交事件最小数量的下限。这是因为混合对第页SPR操作。第3节,我们证明了我们的方法比程序HybridNumber实现的方法要高效得多。

总之,目前还没有实用的软件工具可以计算第页第页SPR距离也相对较大。因此需要找到更好的方法来计算第页SPR距离。据我们所知,所有现有的计算第页SPR距离是启发式的。我们不知道以前的实现可以精确计算此距离。在本文中,我们开发了一种实用的方法来计算准确的的值第页SPR距离。我们对模拟和真实生物数据的实验表明,我们的方法可以处理许多当前感兴趣的数据(第3节). 特别地,我们提出了一个简单的整数线性规划(ILP)公式,它可以解决第页许多数据集的SPR距离问题。我们开发了一个软件工具(称为SPRDist公司)只使用公开可用的ILP解算器。我们还表明,在计算第页SPR距离。我们的方法背后的高层理念与波德威奇的类似等。(2008). 这项工作的一个主要贡献是开发了一个软件工具,可以精确计算第页SPR距离适用于许多数据集。

1.2背景

本节中提供的一些定义基于Bordenwich等。(2008). 根深蒂固的系统发育树(或简称系统发育树)T型是一个二叉根叶标记树。叶子标签集表示为L(左)(T型). 分支的集合T型表示为电子(T型)并且顶点集为V(V)(T型). 给一棵树T型,我们可以创造一片森林F类(T型)=lcub;T型1,T型2, …,T型(f)}来自T型通过删除电子(T型). 请注意,所有L(左)(T型)等于L(左)(T型). 换句话说,森林F类(T型)诱导分区L(左)(T型). 还有,任何两棵树T型T型j个节点不相交。相反,我们说树的列表T型形成一片森林T型如果(i)对于任何树木T型,L(左)(T型) ⊆L(左)(T型); (ii)每个T型,(唯一)最小子树连接中节点的树L(左)(T型),表示(T型),与相同T型当节点的阶数为2时(T型)签订合同;如果这样,我们说T型出现在里面T型; 和(iii)任何两棵树T型T型j个,(T型)和(T型j个)节点不相交。

协议森林的概念已在许多以前的论文中使用(Bonet等。,2006; 波德威奇等。,2008; 海因等。,1996; 罗德里格斯岛等。,2001)也是当前工作的关键T型T型'是具有相同叶片标记集的双根系统发育。协议林F类(T型,T型')是一组树T型1,T型2, …,T型(f)具有以下属性。第一,L(左)(T型1), …,L(左)(T型(f))成对不相交并形成a隔板属于L(左)(T型). 第二,每个T型必须出现在两者中T型T型′. 第三,对于任何T型T型j个,(T型)和(T型j个)是T和T′中不相交的节点。直观地说,协议森林提供了一组树,这些树可以通过切割相同数量的T型T型′. 请参阅图2以获取协议林的图示。很容易看出,对于具有相同叶子集的任何两个根的系统发育来说,总是存在一个一致森林:一个平凡的一致森林包括n个树,每个树只有一个n个树叶。但很明显,有许多协议森林。我们对与最小的树的数量(称为最大协议林或MAF)。很容易看出,协议在图2也是MAF。MAF问题是计算MAF中的树的数量(并找到这些树)。

两棵树组成的协议森林的插图。右边的三棵树组成了一个协议森林。很容易看出,它也是一个最大的协议林。
图2。

两棵树组成的协议森林的插图。右边的三棵树组成了一个协议森林。很容易看出,这也是一个最大协议森林。

关于第页SPR距离问题是它与MAF问题的联系,如引理1.1(Bordewich和Semple,2004; 海因等。,1996). 注意,这个结果有一个微妙的问题。它在波德威奇和森普尔展出(2004)海因的论点等。(1996)有一个缺陷,但可以通过一个简单的技巧修复:从两棵树的根中分别添加一个虚拟叶(带有新的叶标签)。如果没有这个假叶,引理1.1可能无法成立(事实上,可能会被去掉一个)。假叶可以被视为一个新的分类群,并且在接下来的算法开发中不会造成进一步的复杂性。因此,在下文中,我们假设已经对这两棵树进行了预处理,以在两棵树中添加新叶。例如,在图3叶5可以被认为是预处理后添加的新叶,而不是原来的叶1、2、3和4。

两棵树T(左)和T(右)的三叶图。对于叶1、2和3,TriPath({1,2,3})={a、b、c、f}。注意三重{1,2,3}在T和T′中是拓扑不相容的。对于叶1和3,路径(1,3)={a,c,f}。
图3。

两棵树T(左)和T(右)的三叶图。对于叶片1、2和3,TriPath公司({1,2,3}) = {,b条,c(c),(f)}. 注意三元组{1,2,3}在中的拓扑不兼容T型T型′. 对于叶片1和3,路径(1,3) = {,c(c),(f)}.

引理1.1。

 

在从每棵树的根中添加虚拟叶后第页两棵原始树的SPR距离等于MAF中(两棵生成树中)的树数减去一。

2进近

与之前关于第页SPR距离问题,我们的方法基于引理1.1。也就是说,我们将找到MAF,以便计算第页SPR距离。MAF公式有助于解决第页SPR距离问题是由于MAF定义的静态性质造成的。没有MAF配方,天真的人必须尝试所有可能的序列第页SPR操作以计算第页SPR距离,这看起来很有挑战性。当要应用现有的组合优化工具(如ILP)时,静态MAF公式尤为重要。

现在我们描述如何将MAF问题转换为一个简单的优化问题,我们将使用ILP解决该问题。我们的方法使用了与Bordwich类似的高级思想等。(2008). 显然,我们需要将分支切割在两棵树中,使两个生成的森林包含相同的树集。假设我们剪掉T型买一棵树T型. The钥匙属性为:每个结果T型也出现在T型',任意两个T型T型j个在里面F类(T型),子树(T型)和(T型j个)节点不相交T型′. 我们现在分别处理这两个要求。首先,确保生成的树T型出现在中T型',我们依赖于T型T型′. 三片叶子,j个k个是根最小子树,只有,j个k个作为叶子。例如,在图2,我们考虑叶1、2和3的三元组T型T型′. 三人组T型在拓扑上与T型':英寸T型叶1和叶2在中为兄弟T型'叶1和3是兄弟姐妹。在这种情况下,我们说1、2和3的三元组是拓扑的不相容的在里面T型T型′. 另一方面,3、4和5的三元组出现在两者中T型T型′. 我们说3、4和5的三重在拓扑上等价T型T型′. 下面是著名的引理(Semple和Steel,2003)讲述了如何使用三片叶子来测试两棵树是否相等。1

引理2.1

 

两个根二叉树是等价的,只要两棵树中的每三个叶子都是拓扑等价的。

直觉上,我们在T型T型'砍伐并获得协议森林F类(T型,T型′). 树枝的切口一定在约束以确保每个生成的树T型F类(T型,T型')必须同时出现在T型T型′. 此外,尽管问题涉及从两个分支中选择分支T型T型',我们实际上可以专注于分支切入T型和使用T型'作为参考,我们将在接下来解释。从这个角度来看,问题是选择要切入的最小边数T型,创建林F类(T型),所以F类(T型)也是一片森林T型′. 引理2.1意味着我们需要放置足够的分支切割T型这样,每个拓扑不兼容三元组的至少一个分支被切断。否则,此三元组将出现在F类(T型)从那以后F类(T型)也是一片森林T型',三元组也出现在T型′. 但这与三元组在T型T型′. 现在,对于三元组i、j和k,我们表示T型将i、j和k连接为TriPath公司({,j个,k个}). 因此,中至少有一个分支TriPath公司(t吨)为每个拓扑不兼容的三元组切割t吨。我们称这种类型的约束为分支切割第一类参见图以获得三元组的图示。一旦满足第一类约束,结果森林中任何有三片或更多叶子的树木都会被砍伐T型也必须出现在T型'由于引理2.1。

然而,类型一约束本身并不能保证创建协议林。例如,在图3,如果是边缘e(电子)(f)则满足第一类约束,但生成的林不是协议林。这是因为包含叶子1和2的树和包含叶子3和4的树在T型′. 要删除任何此类交叉点,我们需要对所有叶子的数量j个所以如果j个不被分支切入分开T型,然后j个未在中分隔T型′.

为了强加这个额外的属性,我们考虑离开,j个,k个在里面T型T型′. 对于两片叶子j个,我们表示中的边T型连接j个作为路径(,j个). 请参阅图3以获取路径的图示。假设路径介于j个与之间的路径相交k个在里面T型′. 那么如果路径(,j个) ∩路径(k个,)=∅(即j个和之间的路径k个不相交于T型),我们需要确保路径(,j个) ∪路径(k个,)被切割(我们称之为这两条路径不相容的). 我们称这种约束为第二类。否则,我们需要强制执行这四片叶子的额外约束。引理2.2指出一组分支切入T型为创建协议林T型T型'如果选择的分支切割满足二者都第一类和第二类约束。2

引理2.2

 

对于两个有根的二叉树T和T′,T中的一组分支割将T分解为T和T′的一致林,前提是分支割满足类型一和类型二约束。

证明:

 

首先假设分支切割分解T型进入协议林。那么森林中的每棵树也必须出现在T型'和中相应的树集T型'不得相交。因此,第一类约束得到了满足,因为任何不兼容的三元组都不能同时出现在两者中T型T型'因此,这种不相容的三元组必须切入T型现在假设叶i和j之间以及k和l之间的两条路径在T型'但在中不相交T型,两条路径中的任何一条都没有分支T型那么i和j属于同一棵树,k和l也属于森林中的同一棵树木(由T型). 但由于i和j之间的路径与k和l之间的路径相交T型',由于协议森林的属性,i、 j个k、 我属于森林中的同一棵树。但这违反了三重条件,因为存在大约三个叶子中的三重i、 j、k只出现在其中一个T型T型′. 这是一个矛盾。因此,在任何协议林中,也满足类型二约束。因此,通过枝条切割形成的第一类和第二类约束形成了一个协议森林。

相反,考虑一组同时满足类型一和类型二约束的分支切割。我们将证明,这些削减创造了一个协议森林。我们首先考虑砍伐造成的森林T型对于任何树T型(f)在森林里,很明显T型(f)也出现在T型'作为一类约束的诱导子树。所以我们只需要证明T型'是不相交的。对于矛盾,假设T型(f)T型f′(由森林诱发T型)相交于T型′. 请注意T型(f)T型f′只能有一个节点(否则它们不能相交)。所以一定有一对叶子,j个T型(f)k个,T型f′所以i和j之间的路径和k和l之间的路径相交。i、 j个k、 我属于森林中的不同树木T型中,i和j之间的路径以及k和l之间的路径是不相交的T型然而,类型2约束指定在i和j之间的路径或k和l之间的路径中必须存在分支切割。然后i、 j个k、 我不在同一棵树上。这与我们之前的假设相矛盾。

引理2.2意味着MAF问题可以通过找到最少的满足类型一和类型二约束的分支切割。自从第页SPR距离问题是NP-hard问题,不太可能存在多项式时间算法来找到此类最小分支切割集。为了开发一种实用的方法,我们将第页SPR距离问题是一个使用ILP的优化问题。虽然求解ILP公式是一个众所周知的NP-hard问题,但我们已经花费了大量精力开发实用软件,可以解决许多ILP实例,并且也有强大的商用ILP解算器(如CPLEX)可用。近年来,ILP已被用于解决计算生物学中的问题,并取得了许多成功。例如,古斯菲尔德(2003)使用ILP解决了简约单倍型问题。尽管就输入数据大小而言,他的ILP公式的大小是指数级的,但许多问题实例在实践中可以以惊人的速度得到解决。本文的主要目标之一是证明ILP作为一个强大且可用的优化工具,可能对更多的系统发育问题有用。

我们有以下简单的ILP公式来计算第页两个二叉树之间的SPR距离。这个公式类似于经典的打击集问题。直观地,我们使用最小数量的分支切割来三元组和路径对系统的分支集。特别地,我们定义了一个二进制变量C类对于每个边缘e(电子)在里面T型,其中C类=1,如果边缘e(电子)被切割。那么ILP公式是:作为示例,我们考虑带叶1、2和3的不相容三元组图3ILP公式中有以下约束:+b条+c(c)+(f)≥ 1. 类似地,对于不兼容的路径对(1,2)和(3,4),我们有以下约束:+b条+c(c)+d日+≥ 1. 在这里,为了简单起见,我们让分支的变量与分支本身具有相同的名称。

  1. 目标:最小化公式

  2. 从属于

  3. 公式 C类≥1,对于每个不相容的三元组t吨j个.

  4. 公式 C类≥1,对于每个不兼容的路径对(第页1,第页2).

  5. 对于每个树边缘e(电子)在里面T型,有一个二进制变量C类

2.1加速

上述ILP配方非常简单且体积小。总共有2个n个−2个二进制变量和O(运行)(n个4)ILP公式中的约束。它对相对较小的树也很有效。然而,我们发现在使用GLPK解算器时,等效的ILP公式对于较大的输入更快。这个公式使用了更多的变量和约束,但每个约束都比前面的公式简单。

对于任意两个节点j个(叶或内部节点),定义二元的变量M(M)i、 j个,指示节点之间的唯一路径j个在里面T型是否在某些分支处被切割。那就是,M(M)i、 j个=1 if之间的路径j个切割。很容易看出,不兼容三元组的第一类约束i、 j个k个然后可以表示为M(M)i、 j个+M(M)i、 k≤ 1. 类似地,不兼容双路径的第二类约束(i、 j个)和(k、 我)可以表示为M(M)i、 j个+M(M)k、 我≤ 1.

现在我们描述如何为创建约束M(M)i、 j个对于两个节点j个首先,如果=j个,我们有M(M)i、 我= 1. 第页是下一个节点在两者之间的路径上j个,然后让树枝e(电子)成为一个第页作为两个节点。然后,将创建以下三个约束:
例如,考虑中的叶1和3图3.让节点12成为叶1和叶2的最低共同祖先T型。然后我们有:M(M)1,3M(M)12, 3≤ 0,M(M)1,3M(M)12, 3+≥0且M(M)1,3+≤ 1. 对于叶1、2和3的不相容三元组,我们有M(M)1,2+M(M)1,3≤ 1. 对于不兼容的路径对(1,2)和(3,4),我们有M(M)1,2+M(M)3,4≤ 1. 这些约束看起来有点令人困惑,但其背后的推理很简单。什么时候?M(M)p、 j个=0(即p和j之间的路径被切断),然后M(M)i、 j个=0,无论发生什么C类e(电子).如果C类e(电子)=1(即分支e被切断),则M(M)i、 j个=0,无论发生什么M(M)p、 j个.如果C类e(电子)=0,则M(M)i、 j个=M(M)p、 j个.

对于较大的树,GLPK解算器似乎可以更快地求解这个新的ILP公式。但对于较小的树或使用CPLEX时,原始ILP公式更快。下面,我们的软件实现和实际结果都是基于这个新的ILP公式。在实践中,两种ILP公式都得到了实现,人们可以选择其中一种来获得更好的运行时间。

然后由ILP解算器求解ILP公式。我们的经验(第3节表明,即使使用免费的公开可用ILP解算器,ILP公式在计算第页SPR距离。ILP公式的解决方案表示要切入的一组分支T型,这也意味着MAF中的树。一旦ILP解决第页SPR距离等于解的值。这是引理1.1所暗示的,因为MAF中的树数比删除的边数大一。参见Semple(2007)如果想要确定一组可转换的最佳SPR操作T型T型'基于找到的MAF。

此外,为了提高ILP求解的效率,我们首先通过收缩两棵树中相同的子树来对两棵树进行简单的预处理T型T型′. 很容易看出,这种收缩不会改变第页两棵树之间的SPR距离。

3个实验结果

我们已经实现了一个基于ILP的软件工具SPRDist,用于计算第页两个有根二叉树之间的SPR距离。该工具是用C++编写的,并使用GNU GLPK ILP解算器。我们的经验表明,CPLEX(商业ILP解算器)通常比GLPK更快、更健壮。使用GLPK作为ILP解算器的主要原因是为了更好地为没有CPLEX许可证的用户提供我们的软件工具。

为了测试SPRDist的有效性,我们计算第页许多树对的SPR距离。这些树来自模拟数据和生物数据。实验在3192 MHz Intel Xeon工作站上进行。为了了解开源GLPK解算器的工作情况,我们还列出了使用商业CPLEX解算器时的运行时间。如下所示,尽管CPLEX解算器速度更快,但对于许多数据集来说,CPLEX和GLPK对于我们的特定问题的差异并不大。另一方面,对于GLPK太慢的数据集,运行CPLEX可能会有所帮助。例如,如所示表2对于ndhF树和ITS树,CPLEX需要约4小时才能找到最优解,而GLPK需要1天以上的时间。GLPK的一个更严重的问题是,在求解非常大的ILP配方时,GLPK可能会中止。对于我们尝试的一个数据集,我们确实遇到了这个问题。这由中的一次测试运行显示第3.1节。最初我们认为这是内存不足的问题。但现在我们认为这更可能是由于GLPK在一些大型问题实例上的一些实现问题。我们在Windows和Linux平台上运行基于GLPK的模拟。看来SPRDist的Linux版本更稳定。一般来说,在求解大型ILP配方时,CPLEX比GLPK更稳健。

为了进行比较,我们列出了以前相关方法的性能,包括启发式方法和精确方法。注意,运行时间仅供参考:与之比较的其他方法的运行时间直接引自各自的文献。

3.1模拟数据

模拟数据来自Beiko和Hamilton(2006)当他们开发了一个叫做EEEP的软件工具时。程序EEEP的设计目的是找到SPR操作树变换的简约解释。对于我们测试的数据集,每棵树包含100片叶子。Beiko和Hamilton首先生成了一个随机根二叉树,然后应用一组10个随机SPR操作来获得另一个有根的二叉树。输入包含原始树和结果树的拓扑。请注意第页测试树对的SPR距离最多为10。贝科和汉密尔顿(2006)然后测试了几种不同的方法(包括他们自己的一些方法),使用第页SPR。请注意,这些方法都不能保证找到最节省的SPR操作。因为我们这里的目的是测试SPRDist的效率,所以我们只选取了10个数据集,这些数据集的大小最大(100个叶子),执行的SPR操作最随机(10)。对于这些选定的数据集,只有Lattrans程序(Hallett和Lagergren,2001)给出了一些数据集的解决方案。在Beiko和Hamilton测试的其他几种方法(2006)(包括EEEP)无法在5小时内完成。请注意,编程EEEP比此处提到的某些程序慢的原因之一是,EEEP旨在处理更复杂的情况,例如多叉树和时间限制。

发件人表1可以发现,我们的程序SPRDist在准确性和效率方面都优于其他程序。这里,我们使用10(第页SPR操作在真的历史)作为推断树重排的准确性的粗略指南。回想一下,这意味着第页SPR距离最多为10,但如果真实历史不是最节俭的,则可能小于10。程序Lattrans大大高估了第页数据集1和8的SPR操作。此外,SPRDist和Lattrans都可能低估第页SPR操作(例如,对于数据集3和4)。这些结果表明第页SPR距离与十个数据集中的六个重排的真实数量相匹配。因此,对于相对较大的树和相对较少的树重排(在这种情况下,树有100片叶子和10个真正的重排)第页SPR距离似乎可以很好地估计真实重排操作的数量。

表1。

SPRDist程序在Beiko和Hamilton 10个模拟数据上的性能(2006)

SPRDist公司
拉丁美洲
数据第页SPR分布。GLPK公司CPLEX(个)最佳第页SPR公司时间(s)
1101.4小时31313520
210171067
911秒314936
49992秒4936
51029秒181068
697秒5
71043秒15
81068秒2213648
910618秒1351070
101037秒101067
SPRDist公司
拉丁美洲
数据第页SPR分布。GLPK公司CPLEX(个)最佳第页SPR公司时间(s)
1101.4小时31313520
210171067
911秒314936
49992秒4936
51029秒181068
697秒5
71043秒15
81068秒2213648
910618秒1351070
101037秒101067

为了进行比较,我们还列出了Lattrans程序的结果(Hallett和Lagergren,2001). 请注意,生成数据集时会执行10次随机SPR操作。当找不到结果时(可能是因为程序崩溃或停止而没有找到解决方案),我们使用符号“-”。对于所有10个数据,程序EEEP没有给出结果。时间以秒为单位。GLPK以粗体突出显示,因为这可能是实际使用的版本。数据集1和8的Lattrans结果以粗体突出显示,因为Lattran大大高估了这两个数据的SPR距离。

表1。

SPRDist程序在Beiko和Hamilton 10个模拟数据上的性能(2006)

SPRDist公司
拉丁美洲
数据第页SPR分布。GLPK公司CPLEX(个)最佳第页SPR公司时间(s)
1101.4小时31313520
210171067
911秒314936
49992秒4936
51029秒181068
697秒5
71043秒15
81068秒2213648
910618秒1351070
101037秒101067
SPRDist公司
拉丁美洲
数据第页SPR分布。GLPK公司CPLEX(个)最佳第页SPR公司时间(s)
1101.4小时31313520
210171067
911秒314936
49992秒4936
51029秒181068
697秒5
71043秒15
81068秒2213648
910618秒1351070
101037秒101067

为了进行比较,我们还列出了Lattrans项目的结果(Hallett和Lagergren,2001). 请注意,生成数据集时会执行10次随机SPR操作。当找不到结果时(可能是因为程序崩溃或停止而没有找到解决方案),我们使用符号“-”。对于所有10个数据,程序EEEP没有给出结果。时间以秒为单位。GLPK以粗体突出显示,因为这可能是实际使用的版本。数据集1和8的Lattrans结果以粗体突出显示,因为Lattran大大高估了这两个数据的SPR距离。

此外,SPRDist程序对10个数据集中的大多数数据集都非常有效。除了数据集2之外,SPRDist会找到第页SPR距离,10个数据集中有5个数据集的运行时间<1分钟。然而,SPRDist的运行时间差异很大:对于数据集1,它需要>1小时,而对于数据集5,它只需要29秒。请注意,此运行时间是通过GLPK实现的,GLPK是一个相对较差的ILP解算器。我们的经验表明,当使用CPLEX等商业ILP解算器时,我们的方法的适用范围可以得到增强。例如,中数据集2的GLPK解算器中止表1另一方面,CPLEX解算器只需17秒即可解算出该数据集。

总的来说,程序SPRDist在准确性和效率方面都优于程序Lattrans。我们的方法的主要优点是它总是给出最优解,这与诸如程序Lattrans之类的启发式方法不同。

3.2生物学数据

为了证明我们的方法适用于真实的生物数据,我们还对以下生物数据测试了我们的方法。在这里,我们将我们的方法应用于禾本科数据集的树对。该数据集最初来自草地系统发育工作组(Grass PWG,2001). 该数据集包含六个位点的序列:核糖体DNA(ITS)的内部转录间隔区;NADH脱氢酶F亚基(ndhF);光敏色素B(phyB);核酮糖1,5-二磷酸羧化酶/加氧酶大亚基(rbcL);RNA聚合酶II,亚单位β〃(rpoC2);和颗粒结合淀粉合成酶I(蜡质)。施密特之前对禾本科植物数据集进行了分析(2003),他为这些位点生成了推断的根二叉树。波德威奇等。(2007)计算15对树中每一对的最小杂交数。请注意,当处理一对树时,只保留共享的分类群。为了测试我们的方法在这些生物树上的表现,我们计算了第页相同15对树的SPR距离。在本节中,我们将重点介绍精确方法。我们所知的唯一其他可用软件工具计算的精确值与第页SPR距离为程序HybridNumber(Bordewich等。,2007). 在下文中,我们测试了我们方法的可扩展性和效率,并与HybridNumber程序进行了比较。请参阅表2结果。

表2。

程序SPRDist在15对禾本科数据树上的性能

一对数据
SPRDist公司
波德威奇等。
12#分类群第页SPR公司时间(GLPK)时间(CPLEX)杂交时间
1第ndhF次物理B401275秒26秒1411小时
2第ndhF次大亚基361020秒7秒1311.8小时
第ndhF次转速C2341153秒11秒1226.3小时
4第ndhF次蜡质的1978秒2秒9320秒
5第ndhF次智能交通系统461934.7小时4.1小时≥152天
6物理B大亚基21410秒1秒41秒
7物理B转速C22163秒3秒7180秒
8物理B蜡质的143秒1秒1秒
9物理B智能交通系统30821秒7秒819秒
10大亚基转速C2261166秒19秒1329.5小时
11大亚基蜡质的1263秒1秒7230秒
12大亚基智能交通系统2913211秒86秒≥92天
13转速C2蜡质的1011秒1秒11秒
14转速C2智能交通系统3114626秒277秒≥102天
15蜡质的智能交通系统15714秒3秒8620秒
一对数据
SPRDist公司
波德威奇等。
12#分类群第页SPR公司时间(GLPK)时间(CPLEX)杂交时间
1第ndhF次物理B401275秒26秒1411小时
2第ndhF次大亚基361020秒7秒1311.8小时
第ndhF次转速C2341153秒11秒1226.3小时
4ndhF公司蜡质的1978秒2秒9320秒
5第ndhF次智能交通系统461934.7小时4.1小时≥152天
6物理B大亚基21410秒1秒41秒
7物理B转速C22163秒3秒7180秒
8物理B蜡质的143秒1秒1秒
9物理B智能交通系统30821秒7秒819秒
10大亚基转速C2261166秒19秒1329.5小时
11大亚基蜡质的1263秒1秒7230秒
12大亚基智能交通系统2913211秒86秒≥92天
13转速C2蜡质的1011秒1秒11秒
14转速C2智能交通系统3114626秒277秒≥102天
15蜡质的智能交通系统15714秒3秒8620秒

为了进行比较,我们还列出了来自Bordewich的结果等。(2007). 请注意,最小杂交数与第页SPR距离。但这两个值是相关的。第页SPR:第页SPR距离;杂交:最小杂交数。时间单位为秒(s)、小时(h)和天(d)。三个数据集(5、12、14)的结果以粗体突出显示,因为这些是较大的示例,程序HybridNumber无法计算准确的杂交数,而我们的新方法可以找到准确的杂交值第页SPR距离。

表2。

程序SPRDist在15对禾本科数据树上的性能

一对数据
SPRDist公司
波德威奇等。
12#分类群第页SPR公司时间(GLPK)时间(CPLEX)杂交时间
1第ndhF次物理B401275秒26秒1411小时
2第ndhF次大亚基361020秒7秒1311.8小时
第ndhF次用途C2341153秒11秒1226.3小时
4第ndhF次蜡质的1978秒2秒9320秒
5第ndhF次智能交通系统461934.7小时4.1小时≥152天
6物理B大亚基21410秒1秒41秒
7物理B转速C22163秒3秒7180秒
8物理B蜡质的143秒1秒1秒
9物理B智能交通系统30821秒7秒819秒
10大亚基转速C2261166秒19秒1329.5小时
11大亚基蜡质的1263秒1秒7230秒
12大亚基智能交通系统2913211秒86秒≥92天
13转速C2蜡质的1011秒1秒11秒
14转速C2智能交通系统3114626秒277秒≥102天
15蜡质的智能交通系统15714秒3秒8620秒
一对数据
SPRDist公司
波德威奇等。
12#分类群第页SPR公司时间(GLPK)时间(CPLEX)杂交时间
1第ndhF次物理B401275秒26秒1411小时
2第ndhF次大亚基361020秒7秒1311.8小时
第ndhF次转速C2341153秒11秒1226.3小时
4第ndhF次蜡质的1978秒2秒9320秒
5第ndhF次智能交通系统461934.7小时4.1小时≥152天
6物理B大亚基21410秒1秒41秒
7物理B转速C22163秒3秒7180秒
8物理B蜡质的143秒1秒1秒
9物理B智能交通系统30821秒7秒819秒
10大亚基转速C2261166秒19秒1329.5小时
11大亚基蜡质的1263秒1秒7230秒
12大亚基智能交通系统2913211秒86秒≥92天
13转速C2蜡质的1011秒1秒11秒
14转速C2智能交通系统3114626秒277秒≥102天
15蜡质的智能交通系统15714秒3秒8620秒

为了进行比较,我们还列出了来自Bordewich的结果等。(2007). 请注意,最小杂交数与第页SPR距离。但这两个值是相关的。第页SPR:第页SPR距离;杂交:最小杂交数。时间单位为秒(s)、小时(h)和天(d)。三个数据集(5、12、14)的结果以粗体突出显示,因为这些是较大的示例,程序HybridNumber无法计算准确的杂交数,而我们的新方法可以找到准确的杂交值第页SPR距离。

实验结果表2清楚地表明我们的SPRDist程序比Bordwich的HybridNumber程序更有效等。(2007). 事实上,除了一对树(ndhF和ITS)之外,我们的程序只需要几秒或几分钟,而程序HybridNumber有时需要几个小时,甚至在2天后无法给出最佳结果(树对5、12和14)。因此,我们的程序SPRDist比程序HybridNumber更具可扩展性。计算第页两棵拓扑上相距很远的大树之间的SPR距离仍然具有挑战性,但可行。例如,对于ndhF和ITS树,GLPK解算器运行超过1天,而CPLEX解算器则运行4小时,以找到此数据集的最佳解决方案。应该注意的是,程序HybridNumber计算的最小杂交数虽然相关,但与第页SPR距离。因此,我们并不是在这里建议我们的程序优于HybridNumber程序。同样,重点是比较精确方法在计算类似数量时的可伸缩性。

程序SPRDist的另一个特性是,它检查发现的MAF是否遵守混合问题施加的额外时间约束。也就是说,如果找到的MAF满足时间约束,那么程序SPRDist也解决了最小混合问题。当然,这并不总是发生。数据如Baroni所示等。(2005)其中第页SPR距离不同于最小杂交数。我们还注意到第页SPR距离给出了最小杂交数的下限。表2,对于两组树rbcL/ITS和rpoC2/ITS第页程序SPRDist计算的SPR距离对最小杂交数的估计明显高于程序HybridNumber的估计。因此,我们的方法也可能对杂交问题感兴趣。

4讨论

我们提出了一种简单有效的方法来计算第页两个有根二叉树之间的SPR距离。据我们所知,这是第一种可以计算精确值的实用方法第页较大树木的SPR距离第页SPR距离。对于许多数据集,开放源代码GLPK解算器可以相当有效地求解ILP公式。只需要对少数数据集使用CPLEX,就可以在合理的时间内找到最佳解决方案。这非常重要,因为大多数用户都没有CPLEX许可证。我们的新方法可能对生物学中的几个计算问题有用。注意,如果一个或两个输入树都是无根的,可以首先尝试对无根的树进行所有可能的生根,然后将我们的方法应用于有根的树。

与之前的工作(Bonet等。,2006; 博德维奇等。,2008; 海因等。,1996; 罗德里格斯岛等。,2001)在上第页SPR距离问题,我们的方法简单得多。我们利用ILP的强大功能。我们相信ILP也可以帮助解决其他的系统发育问题。

剩下的主要问题之一是进一步改进我们的方法的性能。一个主要问题是减少ILP求解器使用的ILP公式的大小,并加快求解过程。在未来的工作中,我们将在第页SPR距离问题,如Bordenwich所示等。(2008). 当这些结构特性与ILP公式结合时,可能会大大减小ILP公式的大小,从而使解决方案更加有效。

致谢

我感谢Yun S.Song、Frederick Matsen和Dan Gusfield进行了有益的讨论,感谢Simone Linz分享了这些草树。我还要感谢弗雷德里克·马特森、西蒙·林茨和三位匿名审稿人阅读并帮助改进手稿。

基金:国家科学基金会(IIS-0803440)和康涅狄格大学;国家科学基金会(部分CCF-0515278,IIS-0513910)。

利益冲突:未声明。

1这个引理对Bordewich中的方法也很重要等。(2007). 参见Semple and Steel(2003)有关三元组和根树的更多定义。

2应该注意Bordewich中的引理2.2和引理3.1等。(2008)这些都是密切相关的。

参考文献

巴罗尼
M(M)
限制持续进化历史中杂交事件的数量
数学杂志。生物
2005
,卷。 
51
(第
171
-
182
)
贝科
RG公司
汉密尔顿
N个
横向遗传转移事件的系统发育鉴定
BMC Evol公司。生物
2006
,卷。 
6
(第
159
-
169
)
发动机盖
毫升
近似系统发育之间的子树距离
J.公司。生物
2006
,卷。 
13
(第
1419
-
1434
)
波德威奇
M(M)
森普尔
C类
有根子树剪枝和再生距离的计算复杂性
安.组合数学
2004
,体积。 
8
(第
409
-
423
)
波德威奇
M(M)
一种计算两棵树杂交数的约简算法
进化。生物信息
2007
,体积。 
(第
86
-
98
)
波德威奇
M(M)
系统发育树间子树距离的3近似算法
J.离散算法
2008
,卷。 
6
(第
458
-
471
)
费尔森施泰因
J型
推断系统发育。
2004
马萨诸塞州桑德兰西诺尔
草地系统学工作组
禾草(禾本科)的系统发育和亚科分类
安·莫·博特·加德
2001
,卷。 
88
(第
373
-
457
)
古斯菲尔德
D类
Baeza-Yates公司
R(右)
纯简约单倍型推断
第14届组合模式匹配年会(CPM'03),LNCS,第2676卷
2003
施普林格
(第
144
-
155
)
哈雷特
M(M)
拉格尔格伦
J型
横向基因转移问题的高效算法
第五届计算分子生物学研究年会论文集
2001
(第
149
-
156
(2001年重组)
海因
J型
利用简约性重构重组序列的进化
数学。Biosci公司
1990
,卷。 
98
(第
185
-
200
)
海因
J型
重构重组序列历史的启发式方法
J.摩尔·埃沃
1993
,卷。 
36
(第
396
-
405
)
海因
J型
进化树比较的复杂性
离散应用程序。数学
1996
,体积。 
71
(第
153
-
169
)
麦克劳德
D类
通过递归合并和重排比较系统发育树推断横向基因转移的可能事件
BMC演变。生物
2005
,卷。 
5
第页。 
27
 
罗德里格斯岛
相对长度单位
最大一致森林问题的一些近似结果
LNCS 2129。
2001
伦敦
施普林格
(第
159
-
169
)
施密特
来自大型数据集的系统发生树
2003
杜塞尔多夫
海因里希-海因大学
 
博士论文
森普尔
C类
Gascuel公司
O(运行)
钢材
M(M)
杂交网络
重建进化:数学和计算的新进展。
2007
纽约
牛津大学出版社
(第
277
-
314
)
森普尔
C类
钢材
M(M)
系统发育学。
2003
纽约
牛津大学出版社
歌曲
YS公司
海因
J型
构造最小祖先重组图
J.公司。生物
2005
,卷。 
12
(第
159
-
178
)

作者注释

副主编:Martin Bishop