第九章 系统发育分析
Mark A. Hershkovitz and Detlef D.Leipe
National Center for Biotechnology Information
National Library of Medicine
National Institutes of Health
Bethesda,Maryland
系统发育学研究的是进化关系,系统发育分析就是要推断或者评估这些进化关系。通过系统发育分析所推断出来的进化关系一般用分枝图表(进化树)来描述,这个进化树就描述了同一谱系的进化关系,包括了分子进化(基因树)、物种进化以及分子进化和物种进化的综合。因为”clade”这个词(拥有共同祖先的同一谱系)在希腊文中的本意是分支,所以系统发育学有时被称为遗传分类学(cladistics)。在现代系统发育学研究中,研究的重点已经不再是生物的形态学特征或者其他特性,而是生物大分子尤其是序列。
尽管本章的目的是想描述一个万能的系统发育分析方法,但是这个目标过于天真,是不可能实现的(Hills et al.,1993)。虽然人们已经设计了大量的用于系统发育的算法、过程和计算机程序,这些方法的可靠性和实用性还是依赖于数据的结构和大小,因此关于这些方法的优点和缺点的激烈争论成了分类学和系统发育学期刊的热门课题(Avise, 1994:Saitou, 1996; Li, 1997; Swofford et al., 1996a)。Hillis等人(1993)曾经极其简单地介绍过系统发育学。
比起许多其它学科而言,用计算的方法进行系统发育分析很容易得到错误的结果,而且出错的危险几乎是不可避免的;其它学科一般都会有实验基础,而系统发育分析不太可能会拥有实验基础,至多也就是一些模拟实验或者病毒实验(Hillis et al., 1994);实际上,系统发育的发生过程都是已经完成的历史,只能去推断或者评估,而无法再现了。尽管现在的系统发育分析的程序存在着很多缺陷,许多生物学著作中仍然大量引用系统发育分析得到的结论,这些结论的源数据只是简单地应用了某一个系统发育的分析程序。只有在很偶然的情况下,在应用某些软件处理数据时受到的困难会少一点,但是在概念上理解这些程序是如何处理数据仍然是个难题。
本文中关于系统发育分析方法的指导有如下一些目的。首先,我们要介绍一个概念性的步骤,这个步骤包含了当前在对生物序列进行系统发育分析时最广泛使用的方法中应用到的一些最重要的原理。这个步骤认为,所有的系统发育方法都刻画了一个模型去模拟真实的进化过程,然后假定程序发现的序列之间的差异是模拟的进化结果,而这个模型本身就包含了方法中固有的假定。对于一个好的使用的系统发育的分析方法,刻画一个正确的模型同描绘一个正确的进化树是同等重要的。另外,我们还将讨论一些比较通用的方法所刻画的模型,并且讨论一下这些模型是如何影响对数据组的分析的。最后,我们会针对系统发育模型和进化史的推论,提供一些具体方法应用的例子。
系统发育模型的组成
系统发育的建树方法都会预先假定一个进化模型(Penny et al., 1994)。比如,所有广泛使用的方法都假定进化的分歧是严格分枝的,因此我们可以用树状拓扑发生图来描述已知的数据。但是在一个给定的数据组中,因为存在着物种的杂交以及物种之间遗传物质的传递,这个假定很可能会被推翻。因此,如果所观察的序列并非是严格遗传的话,大多数系统发育方法就会得到错误的结果。
系统发育方法中固有的模型会导致一些额外的假定:
还有一些假定,在某些方法中是默认的,但是在另外一些方法中是可以修正的:
许多公开发表的系统发育分析结果的错误通常都是因为违反了上述假定,特别令人恼火的是现有的方法并不能察觉对基本假定的违反。每一个序列组都必须根据上述基本假定进行评估,并且同分析过程相协调。下面我们将会描述分析过程。
系统发育数据分析:比对,建立取代模型,建立进化树以及进化树评估
对DNA序列进行系统发育分析的四个主要步骤是比对,建立取代模型,建立进化树以及进化树评估。一般来说,执行这四个步骤的计算机程序都是相互独立的,但是他们都是进行系统发育分析的有机部分。
当前的讨论主要集中在分析DNA序列的方法上,这些方法基本上(不全是)仍然是通过碱基和密码子的替代来考察序列的差异;这个方法同样应用于对蛋白质序列的分析,但是由于氨基酸的生物化学多样性,我们必须引入更多的数学参数。因此,下面讨论的适用于核苷酸碱基的方法同样适用于氨基酸和密码子,而关于蛋白质的一些特殊问题和程序会在别的地方得到讨论(Felsenstein, 1996)。
因为建树的标准在一定程度上依赖比对和取代模型,因此一开始就应该介绍这些方法,这些介绍非常必要。三种主要的建树方法分别是距离、最大节约(maximum parsimony, MP)和最大似然(maximum likelihood,ML)。距离树考察数据组中所有序列的两两比对结果,通过序列两两之间的差异决定进化树的拓扑结构和树枝长度。最大节约方法考察数据组中序列的多重比对结果,优化出的进化树能够利用最少的离散步骤去解释多重比对中的碱基差异。最大似然方法考察数据组中序列的多重比对结果,优化出拥有一定拓扑结构和树枝长度的进化树,这个进化树能够以最大的概率导致考察的多重比对结果。这些方面将会在后面详细讨论。
建立数据模型(比对)
系统发育的序列数据通常会进行多重比对,也就是说,在系统发育的有关文献中通常会把那些单独的比对好的碱基所占据的位置称作位点;在进行系统发育的理论讨论时这些位点等同于特征符,而占据这些位点的真实的碱基或者空位被称为特征符状态;但是也有例外,STATALIGN程序(Thorne and Kishino, 1992)在进行系统发育分析时不会进行多重比对,它使用原始的未比对过的序列。
多重比对在第七章中有详细讨论,在这里我们只讨论与系统发育分析有关的多重比对方法。对准的序列位点将会被应用于系统发育分析,但是这只能描述一个先验的系统发育的结论,因为位点本身(不是真实的碱基)都是假定为同源的(Mindell, 1991; Wheeler, 1994)。因此,出于系统发育的目的,比对程序只是系统发育分析的一部分。
建立一个比对模型的基本步骤包括:选择合适的比对程序;然后从比对结果中提取系统发育的数据集,至于如何提取有效数据,取决于所选择的建树程序如何处理容易引起歧义的比对区域和插入----删除序列(即所谓的indel状态或者空位状态)。
多重比对程序
多重比对程序有如下一些属性:
计算机依赖性:无依赖;部分依赖;完全依赖。
系统发育调用:无调用;先验调用;递归调用。
比对参数评估:先验评估;动态评估;递归评估。
比对特征:基本结构(比如序列);高级结构。
数学优化:统计优化;非统计优化。
在系统发育分析研究中,一个典型的比对过程包括:首先应用CLUSTAL W程序,然后进行手工比对,最后提交给一个建树程序。这个过程有如下特征选项:(1)、部分依赖于计算机(也就是说,需要手工调整);(2)、需要一个先验的系统发育标准(也就是说需要一个前导树);(3)、使用先验评估方法和动态评估方法(推荐)对比对参数进行评估;(4)、对基本结构(序列)进行比对(对于亲水的氨基酸,推荐引入部分的二级结构特征);(5)、应用非统计数学优化。这些特征选项的取舍都依赖于下面将要描述的具体的系统发育分析方法。
计算机依赖型
提倡进行完全的计算机多重比对的人常常有这样的依据,他们认为手工比对通常都是含混不清的(Gatesy et al., 1993)。MALIGN(Wheeler and Gladstein, 1994)和TreeAlign(Hein, 1990, 1994)程序都试图在根据系统发育功能而优化比对的时候实现完全计算机化,尤其是试图通过初步的多重比对而优化出一个最大节约树(MP tree)。一般来说,只有当我们假定计算机程序能够进行正确的比对的时候,我们才会实行完全的计算机处理。之所以还提倡进行手工比对(比如,Thompson et al., 1994),是因为现在的比对算法和程序还不能满足系统发育分析的需要。
系统发育标准
许多计算机多重比对程序(比如CLUSTAL, PileUp,ALIGN in ProPack)根据明确的系统发育标准(一个前导树)进行比对,这个前导树是由双重比对得到的。但是SAM(Hughey et al., 1996)和MACAW(Lawrence et al., 1993)程序在进行多重比对时并不引入明确的系统发育标准,虽然这些程序也可以模拟系统发育过程操作参数。
如果在进行系统发育分析的时候,比对中引入了前导树,那么通过这个比对推导出的进化树逻辑上应该同前导树的拓扑结构相同。由CLUSTAL比对得到的前导树(如图9.1)将会被转化成PHYLIP树的文件格式,然后输入到画树程序中,这些画树程序包括TreeTool(X windows), TreeDraw(Macintosh), PHYLODENDRON(Macintosh), TREEVIEW(Macintosh, Microsoft Windows) 或者PAUP(图 9.1;Macintosh, Microsoft Windows)的画树工具。按道理,我们应该回过头来为CLUSTAL比对再指定一个前导树,但是在实际操作中我们并不会这么做。有些程序(比如TreeAlign and MALIGN)为了得到优化的比对和系统发育树,程序本身就设计了交叉(同步)递归优化的算法。理论上,能够解决比对----系统发育难题的同步优化算法或者配套算法应该是存在的,但是递归算法必须冒一定的风险,它很可能会导致一个错误的或者不完整的结果(Thorne and Kishino, 1992)。因此,根据比对结果建立进化树之后,必须考虑另外的可能性,也就是说,如果根据其它的比对结果得到一个并不是最优化的进化树,这个次优化的进化树是不是更能够满足研究的需要。
比对参数评估
在比对中会出现一些序列区域,其长度是可变的,如何处理这些区域中indel状态的位点是最重要,这取决于进化模型的所有要素(比如,包括核苷酸转换/颠换速率),而且相关的参数在前导树与比对推导的进化树中应该保持一致。比对参数应该随着进化的分叉动态变化(Thompson et al., 1994),只有这样才能保证碱基错配的几率能够满足序列趋异的需要;比对参数应该随时调整(Thompson et al., 1994, Hughey et al., 1996),以防止引入过多的近似序列而导致比对序列的信息量不足,可以通过降低近似序列的比对分值权重来防止这种情况。CULSTAL程序兼顾了这两种情况(参数动态变化),而SAM程序引入了序列权重。
利用基本结构或者高级结构进行比对
根据二级或者三级序列结构进行比对,比起直接利用一级序列进行比对的可信度要好,因为在同源性评估中,人们一直认为复杂结构的保守性高于简单特征(核苷酸,氨基酸)的同源保守性,而且,立足于复杂结构的比对程序还可以搜索到一些特殊的关联位点,这些位点是进化的功能区域。实际上,基于系统发育的结构多重比对并没有将问题简化,也就是说,序列比对必须服从结构进化,而结构进化则同系统发育保持一致。有一个探索式的手工程序(如图9.2),是用来对核糖体DNA进行结构比对的(Gutell et al., 1994),这个程序要考察相关取代的样式,但是相关性必须通过系统发育树中的多个独立的补偿性突变推导得到(cf. Harvey and Pagel, 1991)。
数学优化
有些比对程序(比如,MACAW, SAM)根据一个统计模型进行优化,但是这些统计同系统发育模型的关系并不清楚。仅仅根据一个系统发育模型是没有办法比较多重比对方法的优劣的。
总结:对于系统发育分析,最好的比对程序是什么呢?
对于一个给定的系统发育问题,如果预先不知道其中的系统发育关系,就很难知道最适用的比对方法(cf. Morrison and Ellis, 1997)。一般来说,我们并不赞成直接把计算机比对结果提交给建树程序,因为建树程序不能发现比对的错误;尤其是那些包含在比对程序包中(比如,CLUSTAL and TREE in ProPack)的建树程序,特别要注意这一点(Feng and Doolittle, 1996),因为在这些程序包中的建树程序更加不严格。我们必须通过分子结构功能和碱基取代过程作出一些假定,并且结合另外一些独立的系统发育证据,对整个比对进行考察。
从比对中提取系统发育数据集
在某些比对中,比对长度是可变的,这时,系统发育数据集同比对就不会完全吻合;即使 在一些长度不变的比对中,数据集也可能同比对结果不一致--举一个很简单的例子,有时候我们只需要处理第一个和第二个密码子位点,就不需要全部的比对结果,这个话题我们在后面讨论取代模型的时候还会涉及到。
如果比对中出现可变长度,我们通常会根据比对的不确定性程度和处理indel状态的原则这两个标准对比对结果进行取舍,从中选择所需的系统发育数据集;其中针对indel状态的处理方法取决于建树方法以及从比对结果中发掘出的系统发育信息,最极端的方法是把包括空位在内的所有indel位点从比对中清除出去,在分析时不加考虑(cf. Swofford et al., 1996a),这个方法的好处是可以把序列的变化包容在取代模型中,而不需要特别的模型来处理indel状态,但是它的缺点也很明显:indel区域的系统发育信息完全被忽略了。
在提取数据集时保留indel区域但是忽略所有的空位分值,将会保留包括空位在内的位点碱基变化信息。某些长度可变区域在部分序列或者全部序列中很难对准,在这种情况下,这些难以对准的碱基的分值应该清零;这个方法存在很大的缺陷,MP和ML建树方法会不加考虑地把这些清零的或者被忽略的分值理解为零分歧,但是实际上隐藏在这些分值下面的实际的数据(不管是空位还是难以对准的碱基),一般来说,反映出的分歧度都很大。PAUP 4.0中的距离建树方法(将在下文描述)允许通过非空位区域外推得到空位区域的距离。
最大节约(MP;见下)是允许把可比对的空位合并,并将其视为特征符的唯一方法;可以通过两种方式达到目的:作为一个附加的特征符状态(第五种核酸碱基或者第二十一种氨基酸),或者作为一套独立于碱基取代的特征符集。当空位占据了不止一个位点的时候,前一个方法行不通,因为每一个空位位点都会被统计为一次独立的特征符状态变化。当比对的序列的局部出现很好的可比对的空位的时候,后一种方法非常有用。我们可以把一套空位特征符附加到比对序列数据集中,也可以用额外的碱基程序在适当的位置对空位计分,但是在计分的时候,空位位点中只有一个作为空位计分,其余的将会被忽略。PAUP将会执行这个方法。
对于某些比对而言,比对程序会忽略所有的空位分值或者忽略所有低于预设值的空位分值;但是,还没有任何一种程序会忽略单个序列的单个位点。如果比对在序列组内部相当明确,但是处身其中时却不太清楚,此时必须对比对做“手术”,确保同序列组相关的明确的信息被保留,而除去模糊的信息。
图9.3给出了一个比对“手术”的例子。在空位区域,我们必须作出决定:在可供选择的比对中,哪一个更加合理,尤其重要的是,哪一个更加适合于建立进化树分析。如果手工解决比对的不确定性,就必须考虑系统发育关系、取代过程(比如,转换和颠换)和碱基组成;在这个阶段,用系统发育证据解决不确定性非常合理。在倾向于变长的序列区域,关系非常疏远的序列和序列组的比对就可以侧向展开(就是说,引入人工空位,并且忽略分值),最终的结果使得只有关系很近的序列区域对准在一起。某些序列中的某些位点虽然对准了,但是并不确定,他们的分值可以在计分时忽略;这个方法的优点是可以保留同这些序列相关的明确信息,缺点是最大节约和最大似然的建树方法会把这些“缺失”的分值看做是零分歧。
由MALIGN(Wheeler and Gladstein, 1994)和TreeAlign得到的比对不需要在比对后用这些方法中的建树方法进行数据修饰,即使这些比对中仍然有一些同样类型的不确定性,这些不确定性在另外一个程序进行分析时需要修正。如前所述,这些程序会根据由比对得到的最好的MP系统发育进化树,对比对参数进行递归优化。MALIGN还会利用一套空位为代价,对以连接的可供选择的比对为基础的建树方法进行优化;在这个方法中,在最有可能的几种比对中出现的比对特征将会被加权。这就提供了一种方法,可以捕获序列分歧的数量(在取消不确定的比对区域的分值的时候这些分歧是被忽略掉的),因为这些区域的所有可能的比对方式都将显示这些区域的最大的序列分歧。处于不确定的比对区域中的位点很可能不是同源的,因此在进化树中需要加入一些噪声干扰或者偏向。
决定取代模型
对于取代模型,应该给予同比对和建树同样的重视。就像前面暗示的那样,取代模型既影响比对,也影响建树;因此需要采用递归方法。现在,对于核酸数据而言,可以通过取代模型中的两个要素进行计算机评估(Swofford, 1997),但是对于氨基酸和密码子数据而言,没有什么评估方案(Felsenstein, 1996)。其中一个要素是碱基之间相互取代的模型;另外一个要素是序列中不同位点的所有取代的相对速率。还没有一种简单的计算机程序可以对较复杂的变量(比如,位点特异性或者系统特异性取代模型)进行评估,同样,现有的建树软件也不可能理解这些复杂变量。
碱基取代速率模型
一般而言,生物化学性质相近的碱基之间的取代频率较高;在DNA中,四种转换(Aà G, Gà A, Cà T, Tà C)的频率比八种颠换(Aà C, Aà T, Cà G, Gà T, 以及前四种的反向取代)的频率要高;这些偏向会影响两个序列之间的预计的分歧。
各个残基之间的相对取代速率一般由方阵形式列出;对于碱基而言,行数和列数都是4,对于氨基酸而言,行数和列数都是20(比如PAM方阵),对于密码子而言,行数和列数都是61(除去了中止密码子)。非对角线元素对应于一个碱基变为另一个碱基的相对代价,而对角线元素则代表不同序列拥有同一个碱基的代价。
这些代价值可以固定为先验的代价表,以确保建树方法在计分时对每一种取代都使用确定的代价值。固定的代价方阵是典型的静态权重方阵,MP建树方法(如图9.4)使用的就是这种方阵。如果使用这种权重,那么这个方法就会被称为“加权节约”。又如,ML建树方法,代价值是由即时的速率方阵得到的,这个方阵(如图9.5)代表了各种取代可能会发生的概率的ML估计值。MP权重方阵只涉及简单的算术,而应用距离和ML速率方阵则可以引入复杂的代数。为了避免盲目使用不适当的方法,建议大家熟悉其内部的基本原理(见Li, 1997, and / or Swofford et al., 1996a)。
实际上,“前进”和“反向”取代速率被认为是相同的;这个取代模型被称为是“时间可逆”;这个模型拥有“静态”的性质,因为在所有的碱基频率中没有预知的变化。在系统发育的特殊历史中,不同序列中的碱基频率不同表明,前进和反向速率实际上可能会不同;而传统的取代权重或者速率方阵不能包容这个“非静态”环境;本节的结尾将讨论一个基于非静态取代模型(“logdet”)的建树方法,这个方法将会提供一个可供选择的计算方法。
通常,特征符状态的权重方阵都会或多或少地通过观察进行过估值,当然也可以从速率矩阵衍生得到。比如,如果假定两个转化的其中一个,发生的频率是每个颠换的两倍,那么据此就可以确定一个权重方阵,比如,AG的转换代价为1,而AT的颠换代价为2(图9.4)。(节约方法规定对角线元素值,或者说是不同序列中拥有相同碱基的代价值为零。这是节约方法的一个缺点详见下文)在随后的建树步骤中,这套假定会把颠换的总数降至最低值,而力求把那些主要差异是转换的序列集中在一起。
任何一种“时间可逆”的核苷酸取代模型都可以用图9.5所示的方阵刻画,只是其中一个速率和其它速率的差异;在任意组合中,最多可以达到只有六个参数,其中每一个速率参数都是独立的(Swofford et al., 1996a;Li, 1997)。如果平衡的碱基频率不相等,则需要额外的参数;如果平衡的碱基频率不相等,但是却假定这些频率相等,那么系统发育进化树的最终结果将会出错(Li, 1997)。
侧线(paralinear)(Lake, 1994)和“logdet”(Lockhart et al., 1994)做了一些修正(见Swofford et al., 1996a)来满足非静态环境的需要;这个方法只适用于距离进化树的建立;在这个方法中,对于每一个序列匹配,各种类型和变化方向的原始取代的数目都会计算在一个4×4的方阵中(如图9.6)。每个方阵都会有一个代数行列式,这个行列式的log值是评估序列差异性的一个要素,因此被称为“logdet”。对那些拥有各种各样的碱基频率的序列进行双重比较,就会得到各种各样的方阵,也就会得到各种各样的行列式值;因此,在评估序列两两之间的距离的时候,就要受到序列两两之间的行列式值的影响,而且序列两两之间的比较允许适用不同的取代模型,因此沿着系统发育进化树的不同树枝,将会产生多元化。Logdet尤其对位点之间的速率差异(见下文)敏感,因此,碱基频率的偏向可能只存在于那些承受变化的位点。
位点内速率差异模型
除了取代模型的多元化以外,一个序列中各个不同位点之间取代速率的差异也会对建立进化树的结果产生很深远的影响(Swofford et al., 1996a);关于位点之间的速率差异(或者叫做位点异质性),有一个最明显的例子,就是在一个编码序列中,三联体编码的位点差异:在三联体编码中,第三个编码位点比另外两个位点更加容易发生变化;正是出于这个原因,许多系统发育分析方法在分析编码序列时,都会把第三个编码位点排除在外;但是在某些情况下,速率差异模型会更加敏锐(比如,对应于蛋白质或者rRNA的保守序列)。
对位点差异的取代速率进行估值的方法有非参数化模型(W.M. Yang et al., 1996),不变式模型和gamma分布模型(Swofford et al., 1996a)。非参数化方法源于特异位点的相对速率的范畴;这个方法可以在MP建树方法中使用,只要根据相对的变异频率对特异位点进行简单加权就可以了,当然进行加权时需要有关于真实进化树的预备知识;这个方法同样也可以适用于ML建树方法,但是在计算上被认为是不切实际的(W.M. Yang et al., 1996)。不变式模型对一定比例的位点进行估值,这些位点并不能自由变化;剩余的位点假定为等概率变化。至于gamma模型方法,它假定一个给定的序列变化的概率是遵守gamma分布规律的,据此指定位点的取代概率;gamma分布的形状(有形状参数α描述)描述了一个序列中各个位点的取代频率的分布(Swofford et al., 1996a, p. 444, Figure 13; cf. Li, 1997, p. 76, Figure 3.10; 注意尺度差异)。在一个混合方法中,可以假定一部分位点是不变的,而剩余的位点则是按照gamma分布变化的。
实际上,gamma修正可以是连续的,离散的或者自离散的(W.M. Yang et al., 1996)。连续gamma的意思是各个位点沿一条连续的概率曲线变化;目前,这个方法在绝大多数情况下无法计算。离散gamma逼近方法指定各个位点的概率,使得这些(大量的)概率值逼近gamma曲线。自离散模型假定相邻的位点的变化速率是相关联的;许多组位点被分为许多类,其中每一类中的位点的变化速率可能被假定为常量或者异类值。
进化树建立程序使用各种各样的位点速率差异修正方法。对于核酸数据,PAUP 4.0在单独或者混合使用时间可逆的距离建树方法和最大似然建树方法时,既使用不变式gamma模型,也使用离散的gamma模型;在使用logdet距离建树方法时,使用不变式模型(见下)。对于核酸,氨基酸和编码子数据,PAML使用连续的,离散的和自离散的gamma模型。对于核酸和氨基酸数据,PHYLIP使用一种离散的gamma模型。
究竟使用哪一种取代模型呢?
在一个给定的序列集中,即使一个取代模型中的任何参数都可以证明是很有判断力的,但是最好的模型并不一定总是拥有最多的蚕室;相反,参数越少,模型越好,这是因为对每一个参数进行估值都会引入一个相关的变量,而每引入一个附加的参数维度,都会使得整体的变数增加,有时候甚至会对模型起抑制作用(见Li, 1997: p. 84, 表4.1)。对于一个给定的序列比较,如果模型只有两个参数,那么碱基差异的总和要被划分为两个类别;如果模型有六个参数,那么碱基差异的总和要被划分为六个类别;很明显,如果分为六个类别,那么每一个类别中的位点样本数目将会很小,很可能小得无法进行合理地估值。
PAUP的“描述树”特征是对DNA序列的取代模型进行规范的一个较好的策略,它使用似然方法同时评估六个可逆的取代速率、gamma分布的α形状参数和不变的位点的比例(图9.7)。这些参数可以通过相等的或者指定的碱基频率进行估值。通常,任何一个合理的系统发育进化树(比如,很容易就可以得到一个相邻连接的进化树)都适用于这个程序,因为很明显,对参数的估值在很大程度上受到特征符模式的影响,而不是进化树的拓扑结构(Swofford et al., 1996b)。这个估值程序对于50个序列而言,并不会耗费太多的时间。如果序列较多,或者时间较紧,可以对试验的进化树进行精简,在保留全部的系统发育范围和结构的同时,减少分类数目。通过这些估算的取代参数,我们可以通过比较由较多参数和较少参数分别评估得到的似然分值,决定一个简化的模型是否合理(比如,六个取代类别是否可以减少到两个)。有时候,α参数和不变位点的比例可以相互替换,所以我们应该比较每一个单独使用时得到的似然分值和两个同时使用时得到的似然分值。注意,和MP以及ME不同,用不同的参数值得到ML分值可以直接比较(Swofford et al., 1996b)。
对于编码蛋白质的DNA序列,根据样本的分歧程度,有时候很明显地,有用的变化基本上都是第一位和第二位的编码位点,而在整个数据集中,第三位点通常都是随机的,或者第三位点变化而第一位点和第二位点不变。尽管除去“无用”位点可以提高剩余位点的不同速率的估值精确度,上面所述的程序还是要对这个速率差异进行修正。对于节约进化树的建立,我们有时候会把随机的第三位点从分析中除去,因为这些位点只会引入噪声,如果碱基频率不相等,这些位点还会引入错误。
怎么样才能确定数据集中的非静态因素是否会成为一个问题呢?最简单的方法可能就是去比较PAUP中两种通过不同方法得到的建树结果和进化树评估结果,一种方法是使用时间可逆的方法,另一种方法是logdet距离建树方法。下面的章节中将会涉及到这些程序。
还没有什么好的计算方法,能够直接从序列数据中评估非静态因素的影响。PAUP中有一个命令,会列出所有序列的碱基频率。这个程序应该使用排除不变位点(Exclude Constant Sites)的选项。序列中的碱基频率可以很直观地比较出来。数据文件应该指定 gapmode=missing,或者PAUP要把一个空位特征符计算为一个碱基变化。碱基频率的命令还要对数据执行一个“chi平方(chisquare)”测试,但是这个测试并不切实际,因为它假定数据是从一个随机样本中提取的,而结果就会假定所观察到的不相等是相互独立的而不是系统发育结构的结果。一个毫无意义的chisquare分值并不能除去非静态因素,而一个有意义的分值很可能会进一步证实非静态因素。PAUP中的碱基组成命令已经被用来证明:在被子植物和绿藻的5.8S rDNA序列中,两者之间变化比较大的位点集中存在中碱基偏好,但是并不一定在某个序列上产生变化(Hershkovitz and Lewis, 1996)。
建树方法
现有的软件中所采用的建树方法已经在某些著作(Saitou, 1996; Swofford et al., 1996a; Li, 1997)中有很详尽的讨论;这部分只是简单地描述一些最常用的方法。建树方法可以分为两类,每类有两种不同的方法:
距离建树方法
距离建树方法根据双重序列比对的差异程度(距离)建立进化树。如果所有的起源分歧事件都很精确地记录在序列中(Swofford et al., 1996a),那么距离建树方法将会重构真实的进化树。然而,当序列突变达到饱和时,分歧程度就会达到上限。一对分歧序列的其中之一在某个特定位点发生突变后,后续的突变不管发生在哪一条序列,都不会再造成更多的差异。实际上,后续的变异很可能会使得前一个位点恢复成相等的状态,从而屏蔽掉前一个突变,因此,绝大多数基于距离的建树方法都会针对这样“不可见”的替换进行修正。在实际操作中,使用的速率方阵都会很有效地假定:在所观察的相等的碱基对中,实际上存在一定比例的位点,这些位点经受了多次突变,而且,随着整个序列差异程度的增加,这些位点的比例也在增加。有些程序(至少是随意地)会计算出不正确的距离进行,比方说,MEGA程序(Kumar et al., 1994)只针对密码子和氨基酸数据会计算出错误的距离;除非序列的整体差异程度很小,这个程序实质上将会保证给出错误的结果。
双重序列差异使用最大似然方法的取代速率计算得到。最常用的距离建树程序使用的模型局限于时间可逆模型,只包含很有限的几个取代模型;但是PAUP 4.0 基本上会测试时间可逆模型的所有变化,包括用最大似然方法从数据中评估得到的实际模型,以及针对非静态数据的logdet距离建树方法所得到的模型。
与最大似然方法相比,距离建树方法的计算强度很小,但是可以使用序列进化的相同模型,这是它们最主要的优点。这个方法的缺点是屏蔽了真实的特征符数据。最常用的距离建树方法是“不加权配对组算术方法”(UPGMA,unweighted pair group method with arithmetic mean)、相邻连接方法(NJ,neighbor joining)和对距离进化树的附加值进行优化的方法,包括最小进化方法(ME,minimum evolution)。有些方法被不止一个系统发育软件包引用,但是在使用时不一定会使用相同的指定参数和(或)进化树优化特征(比如,树枝交换见下)。
不加权配对组算术方法(UPGMA,unweighted pair group method with arithmetic mean)
UPGMA是一种聚类或者说是分类方法它按照配对序列的最大相似性和连接配对的平均值的标准将进化树的树枝连接起来。它还不是一种严格的进化距离建树方法(Li, 1997)。只有当序列分歧是基于一个分子钟或者近似等于原始的序列差异性的时候,我们才会期望UPGMA会产生一个拥有真实的树枝长度的准确的拓扑结构(ultrametric; Swofford et al., 1996a)。正如前面讨论的那样,在实际问题中很少会遇到这种情况。
相邻连接方法(NJ,neighbor joining)
相邻连接算法在距离建树中经常会用到,而不会理会使用什么样的优化标准。完全解析出的进化树是通过对完全没有解析出的“星型”进化树进行“分解”得到的,分解的步骤是连续不断地在最接近(实际上,是最孤立的)的序列对中插入树枝,而保留进化树的终端(图9.8)。于是,最接近的序列对被巩固了,而“星型”进化树被改善了,这个过程将不断重复。这个方法相对而言很快,也就是说,对于一个50个序列的进化树,只需要若干秒甚至更少。
FitchMargoliash(FM)
FitchMargoliash(FM)方法设法通过把所有可能观察到的距离相对于进化树中所有可能的路径长度的偏差的平方极小化,将进化树中观察到的双重距离的合适度极大化(Felsenstein, 1997)。有一些变量,在怎样对错误进行加权的处理上不太一样。对变化的估值并非是完全独立的,因为所有的进化树内部的树枝中存在的错误都至少被计算了两次(Rzhetsky and Nei, 1992)。
最小进化方法(ME,Minimum Evolution)
最小进化方法先使用同FM相同的方式计算出路径长度,然后根据路径长度优化出最短的进化树;也就是说,它要求将观察到的距离相对于基于进化树的距离的偏差的平方最小化(Rzhetsky and Nei, 1992; Swofford et al., 1996a; Felsenstein, 1997)。同FM方法不同,ME方法并不使用所有可能的双重序列距离和所有可能的相关的进化树路径长度,而是先根据到外层节点的距离固定进化树内部节点的位置,然后根据这些观察点之间的最小计算误差,对内部的树枝长度进行优化。于是这个方法声称它消除了FM计算的依赖性。
究竟哪一个基于距离的建树程序是最好的
ME和FM似乎是最好的程序程序,它们在模拟研究中所取得的成绩几乎相同(Huelsenbeck, 1995)。ME在计算机程序中的应用越来越广泛了,包括METREE(Rzhetsky and Nei, 1994)和PAUP都在使用ME。对于蛋白质数据,PHYLIP中的FM程序提供了最多的时间可逆取代模型,但是没有对位点内部的取代速率差异进行修正。MEGA(Kumar et al., 1994)和METREE软件包包括一个针对蛋白质的gamma修正,但是只有同一个原始(“p距离”)的分歧模型(没有距离修正或者偏好修正)结合时才进行修正,这种方法只有当分歧很小时才合理(Rzhetsky and Nei, 1994)。MEGA也计算同义的和异义的位点的分离距离,但是只有当没有取代或者碱基频率偏好的时候,以及没有对位点内部的速率差异进行修正的时候,这个方法才合理。因此,对于绝大多数数据集而言,对核苷酸数据应用一个更加理想的模型可能会比MEGA方法要好。
模拟研究指出,对于一个大范围的进化树形状空间,UPGMA的可操作性很差(Huelsenbeck, 1995)。我们并不赞成使用这种方法,而之所以在这里会提及这个方法,是因为在现在的出版物上经常会出现UPGMA的应用,这一点可以由当前的出版物中出现的UPGMA“基因进化树”证明(Huelsenbeck, 1995)。
很显然,NJ是最快的程序,并且所产生的进化树同ME进化树相比,虽不能说一样,但也已经非常相近了(Rzhetsky and Nei, 1992; Li, 1997)。但是,NJ只产生一个进化树。根据数据结构,有大量不同的进化树可能和NJ进化树一样好,甚至比NJ进化树好得多(Swofford et al.1996a)。我们中的一个(MAH)和D.Hillis(个人通讯)已经各自独立地得到了一些(虽然很少)数据集,对于这些数据集,NJ给出的进化树很糟糕;但是使用PAUP方法中的“最接近(closest)”选项后,进行逐步加总,得到了一个较好的距离进化树(Swofford, 1997)。
特征符建树方法
除了在所有的分析步骤中都会用到特征符数据以外,基于特征符的建树方法毫无共同之处。这就使得我们能够评估一个比对中每一个碱基位点对其它所有的碱基位点的依赖性。最常用的基于特征符的建树方法是最大节约方法和最大似然方法。
最大节约方法(MP,Maximum Parsimony)
最大节约方法是一种优化标准,这个标准遵循“奥卡姆剃刀原则(Occam’s razor)”:对数据最好的解释也是最简单的,而最简单的所需要的特别假定也最少。在实际应用中,MP进化树是最短的也是变化最少的进化树,根据定义,这个进化树的平行变化最少,或者说是同形性最低。MP中有一些变量与特征符状态改变的可行方向不尽相符(Swofford et al., 1996a)。
为了能够包容取代偏好,MP必须加权;比如,颠换的变换相对于转换(见上文)被加权。进行加权的最简单的方法就是建立一个加权步骤方阵,在这个方阵里,权重用速率的倒数,这个速率是由上面描述的ML方法评估得到的。步骤方阵加权可能会极大地减慢MP的计算速度。
如果比对内部的位点确实存在这速率差异,那么MP方法就会执行得很不好(Huelsenbeck, 1995)。对于这个问题,还没有什么很好的解决方法。有一个方法,就是对数据集进行修改,使得最终分析的数据集中只包括那些内部差异性很小的位点,这些位点是由前面提到的似然分析方法判断得到的。更常见的情况是,MP分析只简单地屏蔽掉那些高度同形的可疑位点(比如说,某些序列比对中的第三个编码位点)。另外一个方法是根据引导树中所能观察到的位点变化倾向,对位点进行循环加权。这个“连续逼近”方法在PAUP中会自动简化,但是这个方法的出错的倾向程度取决于引导树的出错程度。
MP分析期望能够产生大量的(有时候是成千上万个)具有相同分值的进化树。因为这些进化树之间的优化程度相同,所以只有所有进化树都严格一致的分组才算是得到数据的支持。距离建树方法和ML建树方法期望得到一个最简单的最好的进化树,是因为这些方法的算法中包括了除法和小数,而MP建树方法只是计算离散的步长。对于一个给定的数据集,存在着比最佳的进化树差不了多少的ME进化树或者ML进化树,如果这些进化树严格一致的话,很可能会产生同MP一致进化树多少有些可比性的分解。不幸的是,MP的使用者传统上都会给出严格一致的进化树(有时候是进化树的一致性,其中有一个或者两个步骤不太好),而ME和ML用户通常就不会这样做。
现在已经开发了大量的进化树统计量值来描述一个MP进化树。除了进化树的长度外,这些统计量包括各种各样的比例,用以描述同形的数量,比如稠度指数,或者一个进化树中一个特征符改变状态的平均次数(Swofford, 1990)。尽管在MP分析中仍然经常报告这些指数,但是已经证明这些指数受到许多人为因素的干扰,比如被分析的分类群的数量。
模拟研究(Huelsenbeck, 1995)已经表明,如果从世系分歧开始的序列进化的数量远大于世系分离的分歧数量(比如,一个进化树中,终端的树枝很长,而内部节间的树枝很短),MP的效果同ME一样差,比ML还要更差。这种情况会造成“长树枝效应”长树枝可能会被人工连接,因为累积的非同源的相似性的数量超过了因为真实的相关性而保留的同源相似性的数量(Swofford et al., 1996a)。在这种情况下,特征符加权会改善MP的执行效果(Huelsenbeck, 1995)。
最大似然方法(ML, Maximum Likelihood)
ML对系统发育问题进行了彻底搜查。ML期望能够搜寻出一种进化模型(包括对进化树本身进行搜索),使得这个模型所能产生的数据与观察到的数据最相似。
实际上,ML是从比对的每一个碱基位点衍生出来的。给定一个特定的进化树和观察到的全部的碱基频率,我们可以计算出似然值,具体方法是要计算一个位点遵循一个特定取代过程时所得到的变化模式的概率;似然值就是把在这个特定的取代过程中每一个可能的取代的再现的概率进行加和。所有位点的似然值相乘就得到了整个进化树的似然值(也就是说,数据集的概率给出了进化树和进化过程)。大家可以想象一下,对于一个特定的进化树,数据集的似然值在某些位点偏低,而另外一些位点偏高。如果进化树比较好,那么大多数位点的似然值都会较高,因此整个似然值较高;如果进化树不太好,似然值就会比较低。如果数据集中没有系统发育的信号,所有随机的进化树的似然值上都会相差无几。
取代模型应该得到优化,以适应观察到的数据的需要。比方说,如果存在着转化的偏好(其明显表现为有大量的位点只包含嘌呤或者只包含嘧啶),那么,如果计算数据的似然值时所采用的模型没有考虑偏好的话,其效果显然不如采用考虑了偏好的模型。同样地,如果有一部分位点确实只包含一种碱基,而另外一部分位点以相同的概率包含各种碱基,那么,如果计算数据的似然值时所采用的模型假定所有位点的进化都平等的话,其效果显然不如采用考虑了位点内部的速率差异的模型。对于一个特定的进化树,改变取代参数就意味着将改变与之相关联的数据集的似然值;因此,在某一个取代模型下,进化树可以取得很高的似然值,但是,在另一个取代模型下,进化树所取得的似然值就可能会很低。
因为ML要耗费大量的计算机机时,所以对于一个给定的数据集,想要在优化取代模型和进化树的同时进行完全的搜索几乎是不可实现的。值得推荐的是一个很经济的探索式的程序(Adachi and Hasegawa, 1996; Swofford et al., 1996a)。在这一点上,可能最好的节约时间的方法是前面所说的对取代模型的ML评估(图9.7)。这个程序可以反复进行,搜索到较好的ML进化树,然后重新对参数进行评估,然后搜索更好的进化树。
随着算法、计算机和对系统发育的认识的进步,ML标准在分子系统发育分析中也变得越来越流行。在模拟研究中,如果对由相同的模型产生的数据进行数据分析的话,ML做得总是比ME和MP要好(Huelsenbeck, 1995)。在所有的方法中,ML的计算强度最大,所以在某些情况下,它总是无法实现;而且,同样的模拟研究表明在许多情况下,ME和MP方法同ML方法的执行效果一样好(或者一样差)。
距离方法、节约方法和最大似然方法的差异
距离方阵方法简单的计算两个序列的差异数量。这个数量被看作进化距离,而其准确大小依赖于进化模型的选择。然后运行一个聚类算法,从最相似(也就是说,两者之间的距离最短)的序列开始,通过距离值方阵计算出实际的进化树,或者通过将总的树枝长度最小化而优化出进化树。
用最大节约方法搜索进化树的原理是要求用最小的改变来解释所要研究的分类群之间的观察到的差异。
用于系统发育推论的最大似然方法评估所选定的进化模型能够产生实际观察到的数据的可能性。进化模型可能只是简单地假定所有核苷酸(或者氨基酸)之间相互转变的概率一样。程序会把所有可能的核苷酸轮流置于进化树的内部节点上,并且计算每一个这样的序列产生实际数据的可能性(如果两个姐妹分类群都有核苷酸“A”,那么,如果假定原先的核苷酸是“C”,得到现在的“A”的可能性比起假定原先就是“A”的可能性要小得多)。所有可能的再现(不仅仅是比较可能的再现)的几率被加总,产生一个特定位点的似然值,然后这个数据集的所有比对位点的似然值的加和就是整个进化树的似然值。
进化树搜索
即使是对于一个只有50个序列的系统来说,单一的系统发育进化树的数量也会随着分类群数量的增长而按照指数规律增长,从而变为一个天文数字(Swofford et al., 1996a; Li, 1997)。由于计算能力的限制,现在一般只允许对很小一部分的可能的进化树进行搜索。具体的数目主要依赖于分类群的数量、优化标准(比如说,MP要比ML快得多)、参数设定(比如说,不加权的MP要比加权的快得多;预置了少量参数的ML要比预置大量参数或者对参数进行同步优化要快得多)、计算机硬件以及计算机软件(对软件的依赖性较小;但是某些算法要比其它算法快;某些软件允许多线程;某些软件限制内存里的进化树的数量和种类)。搜索程序还会受到数据结构的影响:如果数据解析得很糟糕,那么将会得到较多的“近乎优化”的进化树,这些进化树必须重新评估以确定其中最优化的进化树。
树枝交换算法不断修整由初始步骤所建立的进化树(Swofford et al., 1996a)。这个算法的范围很广,既可以产生所有可能的单一进化树(穷举算法),也可以只评估次要的修改。
有两种搜索方法保证可以找到最优化的进化树:穷举法和树枝跳跃法(BB)(Swofford et al., 1996a)。对于一个很大的数据集,这两种方法都很不实用。对分类群数量的限制主要取决于数据结构和计算机速度,但是对于超过20个分类群的数据集,BB方法很少会得到应用。穷举法要根据优化标准,对每一个可能的进化树进行评估。BB方法提供一个逻辑方法,以确定那些进化树是值得评估的,而另一些进化树是可以简单地屏蔽掉的。因此BB方法通常要比穷举法快得多。
绝大多数分析方法都使用“启发式”的搜索(Swofford et al., 1996a)。启发式现搜索出相近的次优化的进化树家族(“岛屿”),然后从中得到优化解(“山顶”)。不同的算法用不同程度的精确性搜索这些岛屿和山顶。最彻底也是最慢的程序(TBR,tree bisection-reconnection,进化树对分重接)先把进化树在每一个内部树枝处劈开,然后以任意方式将劈开的碎片重新组合起来(Swofford et al., 1996a)。最快的算法只是检查一下相邻终端的不太重要的重新组合,因此倾向于找到最近的岛屿的山顶。
有许多不同的软件会执行进化树的搜索算法。PAUP允许对搜索选项进行全范围的设置,从最肤浅的到最详尽的;而且,对于一个简单的定制搜索,它允许使用不同算法的任意组合,其中每一个算法都有多个可供用户定义的参数,同时还提供评估搜索过程和中途修改搜索进程的方法。PAUP还可以对进化树岛屿了如指掌,掌握岛屿被命中的次数。
要想改善搜索效率和进化树的优化,可以尝试大量不同的策略。比如说,有些分析方法要耗费大量的机时和精力才能找到岛屿;要到达同样的效果,我们可以先制造各种各样的“起始”进化树,这些起始进化树满足一个初始标准,然后用PAUP将这些起始进化树排列成岛屿,最后用更加彻底的算法进行评估。
降低搜索代价的一个最好方法就是对数据集进行剪除。比方说,从数据集本身或者从预置的搜索中,我们可能会很明显地知道一个由五个终端组成的聚集是不可分解的,并且这些终端的排列并不影响剩下的拓扑结构,而且对这些终端进行分解并不符合数据分析的目的;这时,如果在分析中除去这个聚集中的四个终端,将会把搜索任务简化几个量级。
每一种分析都是独一无二的。影响对优化搜索策略(数据量,数据结构,时间量,硬件,分析目的)进行选择的因素太复杂,使得我们无法推荐一个简单可行的处方。因此进行搜索的用户必须对他的数据非常熟悉;他们的脑海里必须要有明确的目标,了解各种各样的搜索程序,了解他们的硬件设备和软件的能力;他们必须能够发展他们自己的协议。
建立并搜索进化树的其它方法
上述方法在当前的应用中是最广泛的。当然我们还可能会在别处注意到,还有大量的建立和搜索进化树的其它方法(Swofford et al., 1996a; Li, 1997)。这些方法包括Wagner距离方法和亲近方法(距离转化方法);包括Lake的不变式方法(一个基于特征符的方法,它选择的拓扑结构包含一个意义重大的正数以支持颠换);包括Hadamard结合方法(一个精细的代数方阵方法,对距离数据或者观察到的特征符进行修正);包括裂解方法(这个方法决定在数据中应该支持哪一个基于距离的可选的拓扑结构)。四重奏迷惑(Quartet puzzling)方法可以被ML建树方法所应用,这个算法相对而言是个较快的进化树搜索算法。
确定树根
这里所描述的建树方法所产生的都是无跟树(也就是说,进化树没有进化的极性)。为了评估进化假说,通常必须要确定进化树的树根。确定系统发育进化树的树根并不是一个简单的小问题(Nixon and Carpenter, 1993)。
对于序列数据,如果你接受一个分子钟,那么树根总是出现在横跨整个进化树的最长跨距的中点(Weston, 1994)。分子进化是否有真正意义上的分子钟,仍然是个有争议的问题(Li, 1997),但是不管树根在什么地方,绝大多数基因进化树都显示了非分子钟的行为。因此,通常都是使用外在的证据来确定树根究竟放在何处,也就是说,要决定这个进化树通过什么位置同外围的系统发育集团相连接;这些外围集团可能是那些与被分析的物种/序列没有最相近的共同祖先的任意的物种/序列。但是外围集团的树根确定问题将其推入一个两难的困境之中:同内部集团很相近的外部集团很可能只是内部集团的一部分,只是被错误地排除在外了。一个明显距离很远的外围集团(比方说,分析植物时用到的一个真菌种)很可能会拥有一个分歧非常大的序列,以至于把这个序列同内部集团放在一起将要受到长树枝效应的影响(见上)。
一个确定树根的聪明一点的办法就是分析时加入一个复制的基因(Baldauf et al., 1996; Lawson et al., 1996)。如果来自于绝大多数物种或者所有物种的所有的平行基因在分析时都被包含进去,那么从逻辑上我们就可以把进化树的树根定位于平行基因进化树的交汇处,当然要假定在所有进化树中都没有长树枝问题。
评估进化树和数据
现在已经有一些程序可以用来评估数据中的系统发育信号和进化树的健壮性(Swofford et al., 1997)。对于前者,最流行的方法是用数据信号和随机数据作对比实验(偏斜和排列实验);对于后者,可以对观察到的数据重新取样,进行进化树的支持实验(非参数自引导和对折方法)。似然比例实验可以对取代模型和进化树都进行评估。
随机进化树(偏斜实验)
模拟研究表明,通过随机的数据集所产生的随机的MP进化树的长度的分布是对称的,但是使用系统发育信号的数据集,其分布将是不对称的(图9.9; Hillis and Huelsenbeck, 1992)。在偏斜实验中,g1统计的临界值随着分类群数目的不同和序列中位点的不同而不同。这个实验并不评估一个特定的拓扑结构的可靠性,而且这个实验对其它的随机数据集中所呈现的信号都敏感,哪怕只是很少的一点。如果数据很明显地支持某些分组,而这些分组中的分类群被有选择地删除,那么这个实验可以用来决定系统发育信号是否还保留着,当然至少要为测试提供10种不同的特征符和5个分类群。PAUP中包含了这个程序。
随机的特征符数据(排列实验)
随机数据方法决定了一个从真实数据得到的MP进化树或者其中的一部分是否可以偶然得到。实际上,数据并非真正地随机化了,只是在每一个比对列中以不同次序排列,使得初始数据的共变性被消除了;结果产生了一个非随机序列的序列比对;正确地说,这些序列中的每一个位点都是从那些在整个比对中占据这个位点的碱基群体中随机得到的。排列结尾几率实验(PTP, the permutation tail probability test)对MP进化树的分值和那些通过对每一个位点都进行大量的排列组合多得到的数据所推算出的进化树的分值进行比较,从而决定在原始数据中是否存在着系统发育信号。一个依赖于拓扑结构的实验(TPTP, topology-dependent test)对特殊的进化树的分值进行比较,从而决定这些差异是否可以产生偶然性;这个方法并不评估这个进化树或者其中的一部分是否正确(Faith and Trueman, 1996; Swofford et al., 1996b)。值得注意的是,TPTP实验看来似乎是进一步地确认了进化树中那些同MP进化树很接近但是并不在其中的一些分组;这是因为这个方法探测集体的信号,这些信号可以把一个分类群放置在正确(如果不能说是准确,至少也是近似)的位置;结果可以通过附加的程序使用相关的数据子集进行调整(Faith and Trueman, 1996)。PAUP中包含了这个程序。
自引导方法
自引导方法是对进化树重新取样的评估方法,可以对距离建树方法、节约建树方法、似然进化方法以及衍生出的其它任何方法进行评估。这个方法是在1979年(Efron, 1979)提出的,并且由Joe Felsenstein将其引入(Felsenstein, 1985),作为系统发育分析中的进化树评估方法。典型的自引导分析结果是一个数字,这个数字同一个系统发育进化树的一个特定树枝相关,而这个系统发育进化树则给出了支持单源进化分支的自引导的重复比例。
那么在实际操作中应该怎么做呢?自引导方法的操作过程可以分为两个步骤,第一步先从原始数据集中产生(许多)新的数据集,然后经过计算得到一个数值,表征一个特定的数值(比方说,一个分类群)在进化树中出现的次数的比例;这个数值通常被称为自引导数值。从原始数据集中产生新的数据集的具体做法是重新取样,即从原始数据集中随机地“可以替换”地抽取各个列中的特征符作为新的样本。“可以替换”的意思是说每一个位点都可以重新取样,其抽取几率同其它任何位点的抽取几率都一样;结果是每一个新建的数据集同原始数据集的位点总数相同,但是某些位点重复了两次或者三次,而某些位点则丢失了;当然新建的数据集也有可能同原始数据集完全相同或者走向另外一个极端,只有一个位点被反复抽取,总数达到500次,而原始数据集中其它499个位点都被丢失了。
虽然自引导评估方法已经成为整个系统发育分析中的一个普遍手段,但是对于这个方法究竟计算了什么仍然有一些争论。刚开始的时候,有人提议说自引导数值计算了重合性(Felsenstein, 1985)。在最近的阐述中,自引导程序被认为是计算了精确性这个生物学相关的参数给出了得到真实的系统发生史的可能性(Felsenstein and Kishino, 1993)。模拟研究表明,在合适的条件下(各种替换速率基本相等,树枝基本对称),如果自引导数值大于70%,那么所得到的系统发育进化树能够反映真实的系统发生史的可能性要大于95%(Hillis and Bull, 1993)。同理,如果条件不是很合适,那么如果自引导数值大于50%,则精确性的评估就会过高(Hillis and Bull, 1993)。在某些条件下,如果自引导数值较高,可能会使系统发生史看起来很好,从而得出错误的结论。
实际的考虑
如果样本较小,这个技术是不会被用到的。如果一个特定的分组不太可信的话,那么就可以使用自引导方法进行评估,以确认将这个分组并入一个大的单源分组中是否可信(Sanderson, 1989)。也可以在实验中使用自引导方法,这个实验的具体做法是:每次删除一个内部树枝,然后根据剩余的内部树枝重新计算进化树,这样做的目的是为了收集分歧顺序信息,而这些信息在整个数据集中都是很不明确的(见实例:Leipe et al., 1994)。
对折方法
对折方法同自引导方法相似,都是要重新进行取样。但是,与自引导方法中产生“可以替换”的新的数据集不同的是,对折方法在对原始数据集重新取样时,是从每一个复制中除去一个和多个比对位点;结果是每一个对折的复制品都比原始数据集要小,而且不会包含重复的数据位点。虽然绝大多数论文都假定通过不同的技术方法评估所得到的可变性都应该很相似(Swofford and Olsen, 1990; Swofford et al., 1996a),实际上对折方法的使用频率远低于自引导方法。尽管如此,对折方法仍然有一定的市场,象PAUP和PHYLIP这样的程序里都包含有这个选项。
带参数的自引导方法
带参数的自引导方法同不带参数的自引导方法不同,前者使用了模拟的但是仍然真实的复制品,而不是虚假的复制品。在进行系统发育的序列分析中,与原始数据集大小相同的复制数据集是通过一个特殊的序列进化模型得到的,数据集还包括根据这个模型得到的最佳进化树拓扑结构(Huelsenbeck et al., 1996a),然后就可以使用感兴趣的方法对每一个数据集进行分析。对实验进化树的树枝是否支持的判定方法同无参数的自引导方法大体相同。
作为一种还没有被其它方法(诸如进化树中所显示的分类群中的任何分组的单个谱系)(Huelsenbeck et al., 1996a, 1996b)检验过的测试假定,带参数的自引导方法还不能算是无参数的自引导方法之外的一种选择。在每一个复制品的分析中,“真实的”进化树(假定能够产生模拟数据的进化树)的分值可能会比每一个复制品的最好的进化树的分值都要大(或者小)。分值差异图则显示了样本偏差的一个真实的正规分布。任何期望的可选的进化树拓扑的分值差异的重要价值可以由这个正规图来决定。带参数的自引导方法可以同任何建树方法协同使用。目前,这个方法的局限因素在于程序生成模拟数据的可行性。有一个程序,能够在以下情况下模拟序列数据:模型包括两个取代类型(转化和颠换),碱基频率不相等,对于内部位点的速率差异设定或者没有设定gamma修正。这个程序可以在作者的Web站点上找到,这个站点由Berkeley维护(参见本章最后所附的Internet资源列表)。
似然比例实验
正如方法名称所暗示的那样,似然比例实验适用于ML分析。评估一个次优化的似然值对于最优化模型中的正规的误差分布极为重要。在理想情况下,误差曲线被假定为一个chi-平方分布,因此实验统计值应该是最优化数值和实验数值之差的两倍,而其自由度则是不同的参数的数目。
应用chi平方实验来选择系统发育进化树存在不少问题,尤其是因为“参数空间的不规则性”(Z.Yang et al., 1995),但是如果取代模型之间的参数数目已知的话,这个方法可以用来评估取代模型的最优性。一旦我们用上述最大似然程序评估了一个取代模型和进化树,我们就可以用较少的参数对这个进化树进行评估(比方说,把位点内的速率设置为相同:图9.7)。
KishinoHasegawa实验
如果给定了伴随着决定进化树误差的不确定性,另外一个方法就可以决定与比对中每一个位点相联系的取样误差(Kishino and Hasegawa, 1989)。这个程序在PAUP中执行,可以用来测试一个特定的次优化的ML或者MP拓扑结构同最优化的拓扑结构相比是否显著不同,当然必须假定用来产生最优化的进化树的模型是正确的。这个方法不能被用来评估任意选择的拓扑结构:因为不同的拓扑结构可能会拥有不同的似然功能,在某个模型下,一个统计学意义较差的进化树在另一种模型下,其统计学意义可能会变得很好。可以把本方法同带参数的自引导方法结合起来(模型和进化树已经预先最优化了),以避免这个问题(见Sullivan et al., in press)。
约束进化树搜寻
评估进化树的一个最有效的方法是比较无约束搜索和有约束的搜索,约束条件是必须搜索同一个特殊拓扑结构相联系的最优化进化树。除了比较简单分值外,还可以把约束进化树同排列实验、似然比例实验、KishinoHasegawa实验以及带参数的自引导评估方法结合起来。
系统发育软件
PHYLIP
PHYLIP是一个包含了大约30个程序的软件包,这些程序基本上囊括了系统发育的所有方面。PHYLIP是免费软件,并且可以在很多平台上运行(Mac, DOS, Unix, VAX/VMS, 及其它)。根据其作者Joe Felsenstein(来自于the University of Washington)所介绍的,PHYLIP目前已经是最广泛使用的系统发育程序。
PHYLIP是一个命令行程序,没有PAUP或者MACCLADE程序那样的鼠标点击的界面。软件的文档写得非常好,很容易理解,命令行界面也很简明。如果想使用某一个程序,只要键入程序名称就可以了,程序界面可以从“infile”文件中自动读取数据。然后,使用者可以从选项菜单中选择选项,或者直接接受默认值,然后程序会将结果输出到一个叫做“outfile”(也可以是“treefile”)的文件中去。如果另外一个程序还要读取这个输出文件,就必须将“outfile”文件改名(改为“infile”)。图9.10给出了建立一个自引导的相邻连接的进化树的步骤的几个要点。接下来的部分我们将讨论一些用PHYLIP程序推导进化树的细节问题。
分析蛋白质数据的程序
PROTDIST程序计算蛋白质序列比对的距离矩阵。这个程序允许使用者从三个氨基酸取代的进化模型中选择其中之一。最简单的也是最快的(也是最不理想的)模型假定每一个氨基酸编程其它19中氨基酸的机会都是均等的。第二种是类别模型,在这个模型中,氨基酸分布在不同的分组中,按照转换的不同类别(转化成本组的氨基酸或者其它分组的氨基酸)进行评估。推荐使用第三种(默认的)方法,这个方法使用一张通过观察氨基酸转换得到的经验表,即DayHoff PAM 001方阵(DayHoff, 1979)。在PHYLIP文档中和最新出版物(Felsenstein, 1996)中可以找到详细资料。
PROTPARS程序计算蛋白质序列的似然值。这个方法使用的进化模型同PROTDIST程序中使用的进化模型不同,前者在评估观察到的氨基酸序列的转化的可能性时,考虑到潜在的核苷酸序列的转换。特别地,它作出如下(富有生物学意义的)假定:同义转化 [比方说:GCA (alanine)à GCC (alanine)] 比非同义转化的发生频率要高。这样,举个例子来说,如果两个氨基酸之间的转化需要在潜在的核苷酸水平上进行三次非同义转换,那么这个转换的可能行比起那些在潜在的核苷酸水平上只要进行两次非同义转换和一次同义转换的氨基酸转化的可能性要小。PROTPARS不提供氨基酸转化的经验值选项(象PAM方阵那样的)。
分析核酸数据的程序
DANDIST计算核苷酸序列的距离矩阵,然后运行NEIGHBOR或者PHYLIP软件包中的其它距离矩阵程序计算输出结果,产生进化树。DANDIST允许用户从三种核苷酸取代模型中选择其中之一。比较老的(1969)Jukes and Cantor模型同PROTDIST程序中的简单模型很相似,前者假定所有的核苷酸取代频率都一相等。比较近的(1980)Kimura双参数模型与之也很相似,但是它允许用户把颠换的权重设置得比转换的权重要高。PHYLIP也包含DNAML,这是一个针对核苷酸数据的最大似然程序。因为这个程序执行起来相当慢,所以下面将描述一个推荐使用的程序Gary Olsen’s fastDNAml 程序(Olsen et al., 1994),这个程序是DNAml的“姐妹”程序。
PAUP
开发PAUP(Swofford, 1997)的目的是为系统发育分析提供一个简单的,带有菜单界面的,与平台无关的,拥有多种功能(包括进化树图)的程序。在苹果机(Macintosh)上使用过PAUP程序(版本3)的人对这个程序的菜单界面都会很熟悉,虽然这个版本已经不再发行了。PAUP 3.0只建立于MP相关的进化树及其分析功能;而PAUP 4.0已经可以针对核苷酸数据进行与距离方法和ML方法相关的分析功能,以及其它一些特色。
获取和编译程序
在商业版本发行之前,现行的出版物中,有成打的分析使用了PAUP 4.0测试版本(由原作者通过 blue@onyx.si.edu 提供)。菜单界面的测试版本已经在Macintosh 68K 、PRC 计算机和微软的视窗操作系统上编译通过。命令行版本已经在Sun Sparc、Supersparc、DEC Alpha(OSF1和OPENVMS)、SGI(32位和64位)以及linux上编译通过。
初学的用户应该将其中一个菜单版本浏览一遍。在这些版本中也可以使用命令行,这样会使得命令教程会变得容易一些。通常而言,命令都有缩写。比如,要执行启发式进化树搜索的命令可以键入“hs[earch]”(大小写不敏感;括弧内的字符为选项)。而且,因为文件在各个平台之间都是可移植的,菜单版本可以用来测试数据文件。如果希望在一个很快的Unix机器上跑一个分析程序,这个协议就显得非常重要。如果文件格式出错,菜单版本不仅仅报告文件格式的错误,而且还会打开文件,将错误的地方高亮度显示。
数据格式
PAUP使用一种称为NEXUS的数据格式,这种格式还可以被MACCLADE程序使用,当然PAUP也可以输入PHYLIP, GCG-MSF, NBRF-PIR, HENNIG86数据格式以及文本比对(形如“{ name } <tab or space> { same-length sequences } <ret>”的列表,以“;<ret> end”结束)。Sequencher(基因密码有限公司)和Sequin程序可以输出NEXUS格式。其它格式的比对序列(CLUSTAL, FASTA, GDE等等)可以通过ReadSeq程序将其转化为NEXUS格式。如果使用ReadSeq程序,必须为每个单独的序列(分类单元)设计一个不超过八个字符的名字,因为程序会自动截取过长的名字。PAUP中的名字可以无限长,但是每一个名字必须唯一。比对块(比方说,就像MSF文件)可以由空格分开,作为更好的跟踪序列的位置。比对可以是连续的,也可以是较差存取的。PAUP文件中可以在方括号中写明注解和注释(比方说,比对中基本位置的标记)。PAUP可以识别IUPAC核苷酸的模糊密码,但是这些密码在进行距离和ML分析时被看作是丢失的数据。
PAUP文件中的数据块可以包含附加的最优化信息,比如特征符和序列标签,丢失数据的定义以及特征符集和特征符权重集的定义;其语法同PAUP 3.0相同,并且可以通过帮助文档进行交互式查询。一个PAUP文件还可以包含假定和进化树块。这些块的格式同MACCLADE程序所使用的格式基本相同,只有若干差异(Maddison and Maddison, 1992);举个例子,MACCLADE不能识别空位模式,而空位模式在MP分析中将会把空位看作是附加的特征符状态(FORMAT<space>GAP= { character } <space> GAPMODE=newstate<space> { other format options };)。同样地,PAUP会忽略一些MACCLADE数据选项。
在某些情况下,很南对数据进行手工格式化,这时就可以用菜单界面或者交互式的MACCLADE程序输出正确的格式文件。举个例子,可以通过PAUP菜单界面创建“假定集”。假定中可以包含一个外围集团的说明规范、特定分类群的排除以及特征符,如果是MP分析,还可以包含特征符权重和特征符类型的说明规范。假定还可以存储为一个合适的格式文件;打开一个数据文件的时候,就可以加载这个文件,或者,可以把注释粘贴到一个早先创建的文件中,以避免在并发的通话中需要将其加载。
PAUP也可以读取PHYLIP进化树的描述(从PHYLIP或者CLUSTAL输出),其中所提供的数据将被粘贴到一个NEXUS文件中的一个PAUP格式(begin trees; <ret>utree= { tree name } <space> { tree description };<ret>end;)的进化树块中。但是,PAUP数据文件必须被激活,并且在PHYLIP树中必须包含确切的分类群。PAUP会输入拓扑结构,以及优化的PHYLIP或者CLUSTAL衍生的树枝长度(命令为:gett[ trees ] /file- { treefile } st [ oredbrlens ])。
建立进化树
目前PAUP中的进化树建立功能包括MP方法,如果是针对核苷酸序列,还有距离方法以及ML方法,使用的是fastDNAml算法(Olsen et al., 1994)。而且,PAUP执行Lake’s不变式方法(Swofford et al., 1996a; Li, 1997)。每一种建树程序都允许使用多种的选项。MP选项包括任意特征符权重方案的说明规范。距离选项包括对NJ, ME, FM(见PAUP发行附注 re: PHYLIP)和UPGMA程序的选择。全范围的选项和他们的当前树枝可以通过菜单或者命令行进行查询(节约方法键入:pse [ ttings ] ?;距离方法键入:dse [ ttings ] ?;似然方法键入:lse [ ttings ] ?;)。距离方法和ML方法都有关于取代模型的详细的说明规范(取代数值,gamma, 以及不变位点的参数,假定相等,或者指定数值,或者经验的碱基频率)。任何进化树的这些参数都可以得到评估,只要设置参数数值为“est [ imate ]”, 并且用内存中一个期望使用的进化树执行“des [ cribe tree ]”命令(图9.7)。
根据同PAUP 4.0测试版本一起发行的附注所说的,“PAUP*所找到的进化树的似然值通常都会同PHYLIP的一样高甚至更高[ 也就是说,更加好 ]”(这不仅是因为PAUP对进化树进行重新排布时更加广泛,而且也是因为因为它对树枝长度的迭代的收敛标准更加严格)。
不管使用哪一种建树方法,PAUP都提供了多种的进化树搜索选项。这些选项包括产生初始进化树(启动进化树)的算法规范:NJ, 逐步相加,或者输入进化树。逐步相加的算法也提供大量的选项,包括分类群“原态”的加和(分类群按照文件顺序相加):最接近的,最遥远的,或者对任意数目的复制品都是随机的。所有逐步相加算法的选项都考虑到了部分进化树的任意的最大数目,这些部分进化树是要保留下来并且在分类单元相加时进行扩建的。增大这个数目(比方说,增大到100)也就意味着增大了起始拓扑结构的多样性,即使他们并不是随机的。
一个随机的相加策略是默认的搜索策略的有用的补充(最近的相加,TBR交换,保存所有最好的进化树)。在随机搜索中,有大量的复制品可以同较快的NNI交换算法相结合。对于MP分析,可能存在这大量的长度相等的进化树,因此搜索时应该指定从每一个复制品中只保存一部分进化树,这些进化树同较慢的搜索的分值相当或者更好。而且,次优化的进化树的数目(这些进化树将会被交换,以寻找更好的进化树)应该受到限制,可以通过设定MAXTREES将其降至一个较小的数目(比方说,10)。通过这个策略,我们在浏览“进化树空间”区域时(这些区域很可能在较慢的搜索中被丢失),有时候会找到一些较好的进化树或者找到额外的唯一的最优化的进化树。可以指定随机相加的种子,但是默认值总是一样的。因此,除非更换种子,重复随机相加的搜索只能得到同样的结果。
评估进化树
对于距离方法、MP方法和ML方法,PAUP执行无参数的自引导方法和对折方法,在执行过程中用到了这些建树方法的所有可用的选项。除非另外指定,所有的自引导方法都才能够同样的种子开始(也就是说,重复同样的自引导分析,其结果相同)。如果自引导数值大于50%,则数值将会被绘制在进化树上;如果自引导数值处于50%和任何指定的下界之间,则这些数值将从表格输出中决定。
对MP方法进行自引导分析或者对折分析时,MAXTREES应该设为10和不超过100之间的一个数。这时因为,MP进化树中分解性较差的那部分在用重新取样得到的数据进行操作时,其分解性通常会更差;因此,一个复制品所找到的相同长度的进化树的数目很可能是一个天文数字。因为那些并不能够被全套数据集很好地支持的进化树树枝的自引导数值或者对折数值不会很高,所以,对MAXTREES加以限制(即便是有一些)不会对结果带来多少负荷,尤其是当复制品的数目增大到比方说1000的时候。
另外,PAUP执行KishinoHasegawa实验以比较MP或者ML进化树(见发行附注 re: PHYLIP);计算多个进化树的四种类型的一致性(通常是对多个长度相等的MP进化树进行操作);计算MP进化树的逐步差异;评估指定分区之间的位点的信号冲突(比方说,在总和分析中,核内序列数据和细胞器序列数据)。
在PAUP中有不同的方法来确定一个约束进化树,但是最简单的方法是使用“loa [ d constraints ]”命令,从任何进化树文件或者任何数据文件中的进化树块中把一个或者多个进化树的定义输入到约束进化树缓冲中去。选择约束进化树要限定“hs [earch ]”命令。如果使用菜单,这个过程会很简单;也可以通过“help loa [ dconstr ]”和“help hs [earch ]”命令查询命令行的语法。
其它特色
许多(但不是所有的)PAUP命令选项都是触发开关,因此在一次通话中一个已经设定的选项保持激活状态。在执行一个新命令或者程序之前,特别是在执行一个包含很多不同程序和数据集的复杂的会话之前,查询当前的设置是非常有用的;查询可以使用菜单,也可以在合适的地方直接键入命令“{ command-name }<space>?”。
PAUP拥有一额外的附加的特色,在这里我们之涉及到其中的一部分:(1)、为画图、打印或者将PICT文件进化树(包括PHYLIP或者CLUSTAL进化树; 见图9.1)输出为若干种格式(但是,遗憾的是,不包括TreeDraw、PHYLODENDRON和TREEVIEW的辐射图)的基本的图形特色;(2)、一个能够编辑数据文件和日志文件的文字编辑器,这个编辑器可以分成四个面板,以浏览一个很长的比对或者日志的不同部分;(3)、将输出存入一个新的日志文件,或者将输出附加到一个已经存在的文件中去;(4)、使用外围集团、指定的祖先、指定的祖先状态或者中点方法确定进化树的树根;(5)、计算MP和ML方法中特征符状态的重新构建(如果这个程序使用ML,精确度可能会好一些,但是非常慢,而且对于超过100个不同位点和50个分类群的数据集,几乎是不可实现的;输出结果可以被用来对一个进化树的变化进行手工标记);(6)、序列之间双重碱基差异的总和(现在叫做“二核苷酸频率”,当然以后的版本可能会用其它名字)。
其它程序
除了PAUP和PHYLIP以外,还有其它一些系统发育程序,这些程序有一些独到之处,但是程序在处理过程和可移植性方面通常都有很多限制。这些程序包括FastDNAml, MACCLADE, MEGA plus METREE, MOLPHY和PAML。
FastDNAml
FastDNAml(Olsen et al., 1994)是一个独立的最大似然建树程序。虽然它还没有成为当前版本的PHYLIP软件包中的一员,但是它的输入输出约定同PHYLIP在很大程度上都是相同的,而且FastDNAml和PHYLIP’s DNAML的结果非常相似,甚至完全一样。FastDNAml可以在并行处理机上运行,而且它还自带了大量有用的脚本(尤其是关于自引导以及打乱序列输入顺序的脚本)。要想充分利用这个程序,就必须有一定的Unix知识。REP Web站点公布了Unix和VAX/VMS平台的程序源码,而通过FTP可以获得Power Macintosh版本的程序源码(见本章结尾的列表)。
MACCLADE
MACCLADE(Maddison and Maddison, 1992)是一个交互式的Macintosh程序,能够对进化树和数据进行操作,能够研究特征符的系统发育行为。程序使用的是NEXUS格式,它也能够读取 PAUP格式的数据和进化树文件。PAUP文件中的一些信息会被MACCLADE忽略(比如,gapmode,空位模式),但是PAUP“假定”块中的信息将会被 输入,其中包括特征符权重和特征符集以及分类群集。PAUP和MACCLADE文件仍然存在着一些细微的差别;因此,用MACCLADE编辑PAUP文件或者用PAUP编辑MACCLADE文件时,需要将文件保存为一个新文件,从而保留原文件,使之不被改动。MACCLADE还可以读取PHYLIP文件、NBRF-PIR文件以及文本文件(见上)。可以使用任何方法产生进化树,但是MACCLADE的功能是严格地基于节约方法的。举个例子,程序允许使用者追踪任意进化树上的每一个单独特征符的进化轨迹。不管怎么说,MP和ML重新构建的功能是不同的,而且ML功能据称更加实际一些(Swofford et al., 1996a)。进化树的拓扑结构可以通过拖动树枝进行操作,而点击树枝则会在进化树的对称性上产生审美的修饰。
MACCLADE包括如下一些同序列分析相关的附加的特色:
MEGA plus METREE
MEGA(Kumar et al., 1994)是一个关于序列分析以及比较统计的DOS程序的软件包,其中包括有距离建树方法和MP建树方法。对于MP建树方法,将执行分支定理和启发式算法;对于距离建树方法,MEGA提供了PAUP中的取代模型的一个子集,也提供了NJ建树算法。在其捆绑的METREE程序(Rzhetsky and Nei, 1994)中提供了一个ME搜索。现在还无法比较MEGA和PAUP或者PHYLIP中的搜索算法的效率和可靠性。针对核苷酸数据建立进化树,MEGA的效果不如PAUP(Lewis and Lewis, 1995)或者PHYLIP。举几个例子:其格式不允许在数据文件中存储假定,因此必须在每一次会话中手工指定这些假定;取代模型的范围和空位处理方法以及丢失的数据都是有限的,并且程序不能评估参数数值;似然方法不允许加权;不能IUPAC核苷酸的模糊密码;使用MP方法时不允许进行自引导分析;进化树图形很简单,并且不能保存进化树文件。虽然MEGA可以通过密码子数据和氨基酸数据建立距离进化树,但是使用的取代模型太简单,对于绝大多数数据集而言,不能产生可靠的进化树。MEGA同其它程序一样,也没有包括一些有用的特点(Lewis and Lewis, 1995):空位和空位大小频率,密码子的用法和氨基酸频率。
MOLPHY
MOLPHY(Adachi and Hasegawa, 1996)是一个共享的软件包(见本章结尾的列表),可以进行ML分析以及核苷酸序列或者氨基酸序列的统计。MOLPHY在Sun OS和HP9000/700系统上经过测试。在实际使用时需要对Unix文件操作有一定的了解。MOLPHY的用途包括NEXUS, MEGA和PHYLIP文件格式之间的数据文件的格式转换,还包括从EMBL或者GeneBank的核苷酸序列文件中提取编码区域。其中的ML程序同PHYLIP中的ML程序很相似,但是前者的氨基酸取代模型的范围很广,而且有很多选项能够进行快速的启发式的搜索,其中包括一个选项能够使用“本地自引导”分析(也就是说,进行一个子树的自引导分析,条件是假定这个进化树的剩余部分是正确的)以搜索更好的ML进化树。输出结果包括树枝长度评估以及标准偏差。分析分离的密码子位置是可能的。MOPHY使用PAUP中提供的核苷酸取代模型的一个子集,尽管它允许使用者自行指定参数数值。现在使用的MOLPHY缺少一个自引导选项,也不能包容位点内部的速率差异性。
PAML
PAML(Yang et al., 1996)是一个共享软件包(见本章结尾的列表),能够进行ML模型的建立和进化树的建立,能够进行Bayesian进化树的建立,能够进行模拟实验,能够进行基于似然方法的进化树的分析,能够进行进化树评估以及数据和进化树的统计。这个软件包已经在Macintosh 68K和PowerPC计算机上编译通过,还有一个非编译的Unix版本(GNU gcc或者Sun ANSI C)。对于密码子数据和氨基酸数据,这个程序提供了最详细的和最灵活的参数指定和评估方案。对于核苷酸数据(BASEML和BASEMLG),取代模型的范围同PAUP的一样广泛,可能包括了所有值得考虑的模型。PAML执行不额外的模型:相邻位点的速率相关性(自动离散gamma模型)和一个多基因模型,这个模型允许对每一个基因指定取代模型。后者对于分析来自于不同基因(在不同约束下进化)的混合数据非常有用。下列步骤可能很有用:受限用PAUP进行ML进化树的建立,然后转向PAML,评估是否加入这些参数以改善似然值。PAML还包括一个在非静态条件下(序列之间的碱基频率变化很大)建立进化树的似然方法,但是对于超过四个序列的系统,这个方法被认为是不实用的。CODONML程序对于评估密码子频率、每一个密码子位置上的碱基频率以及每一个(非)同义位点上的(非)同义取代的数目非常有用。一个受到限制的PAML特色是能够从数据集中把包含一个空位的所有位点或者丢失的数据分值(不允许存在IUPAC模糊密码)排除出去。当分类群数目增加时,一个给定位点至少要达到的似然分值也随之增加;因此这个限制要冒一定的风险,很可能会把很有用的数据也切除掉。同时,PAML中的进化树搜索算法也受到MOLPHY中采用的不严格的星型分解方法的限制。因此,必须采用多重搜索。
一些简单的实际的考虑
第九章所涉及到的因特网资源:
系统发育学的资源(PHYLOGENETIC RESOURCES):
在加州大学伯克力分校的古生物学博物馆有一个因特网站点,组织得非常好,如果你对这个领域感兴趣,最好能够把这个地址保存在收藏夹里。这个站点所搜集的系统发育学的程序并不象其它站点那样多,但是它的页面里包含了许多与系统发育学有关的链接,其中包括出版物、介绍、新闻组、协会、会议通知以及大量的分子生物学和分类生物学数据库。
http://www.ucmp.berkeley.edu/subway/phylogen.html
系统发育学的程序(PHYLOGENY PROGRAMS):
通过这个网站浏览现有的系统发育学的软件是个非常好的选择。在这个站点中有大约一百个系统发育学的程序简单的描述,按照程序方法(长程方法,似然方法,节约方法等)和运行的计算机平台(Unix,Mac,Pc等)组织起来。另外,它还提供了这些软件的下载网址或者商业软件的出版网址。
http://evolution.genetics.washington.edu/phylip/software.html
系统发育学计算机分析程序(PHYLOGENETIC ANALYSIS COMPUTER PROGRAMS):
这是个关于生命树的网页。它所提供的系统发育学程序没有上一个网站那么多,但是程序的说明更加详尽,并且除了画树程序以外,它还提供了序列编辑器和其他一些分子生物学的软件工具。
http://phylogeny.arizona.edu/tree/programs/programs.html
节约算法分析软件(PARSIMONY ANALYSIS SOFTWARE):
这个站点是由IWHS(Iternational Willi Hennig Society)维护的,专门研究节约算法,其中许多程序同PAUP或者Hennig86互相影响。
http://www.vims.edu/~mes/hennig/software.html
生物目录分子进化(BIOCATALOG MOLECULAR EVOLUTION):
欧洲生物信息学研究所提供了大量系统发育学软件的链接。这个站点提供的STATALIGN程序似乎是独一无二的,其他站点都没有。
http://www.ebi.ac.uk:/biocat/phylogeny.html
杆页(ROD PAGE’S HOME PAGE):
这个主页提供了少量的系统发育学的分析软件,这些程序是基于苹果机或者视窗操作系统的,包括下面提到的TreeView程序。
http://taxonomy.zoology.gla.ac.uk/rod/rod.html
读取序列(READSEQ):
这里有一个文件格式转化程序,可以把一种格式的序列文件转化成另一种格式的序列文件。这个站点的页面上有一个拷贝—粘贴(copy—and—paste)窗口和一个下拉菜单,用户可以选择14种常用的序列文件格式中的一种作为输出格式。
http://dot.imgen.bcm.tmc.edu:933/seq-util/Optiions/readseq.html
序列输入输出(SEQIO):
这个站点有一个软件包,其中包括了READSEQ程序的可执行版本,还有其它许多的关于数据库搜索的软件和分子生物学家们可能会用到的计算机工具。这个软件包可比READSEQ程序复杂得多,必须下载后安装才能使用。如果只是想进行简单地序列文件格式转化,READSEQ要快得多。
http://wwwcsif.cs.ucdavis.edu/~knight/seqio.html
PHYLIP:
这是一个分析系统发育的免费软件,有关软件的简短介绍可以在线阅览,但是软件和完整手册需要下载。
http://evolution.genetics.washington.edu/phylip.html
画树程序(TREEVIEW):
这个站点的画树软件是基于苹果机和视窗操作系统的,它读取标准的NEXUS和PHYLIP格式的系统发育树文件。这个软件允许用户重新定义树根和其它一些简单的节点,系统发育树可以打印或者保存在一个文件中(在苹果机中是PICT,在视窗操作系统中是图元文件),以备日后处理。这个程序对于出版物中的系统发育树的描绘很有帮助。
http://taxonomy.zoology.gla.ac.uk/rod/treeview.html
在RDP树上进行系统发育定位(SUGGESTING A PHYLOGENETIC PLACEMENT ON THE RDP TREE):
这项服务允许用户自行输入一段小的RNA序列,把这段序列用快速DNAml画树程序定位到已有的RDP(Ribosomal Database Project)树上。这项服务快得令人惊奇,它可以在不到一分钟的时间里返回一个大约包含20个物种的系统发育树,但是它还不能进行彻底的分析。
http://rdp.life.uiuc.edu/RDP/commands/sgtree.html
致谢:
非常感谢Dave Swofford提供了PAUP 4.0的测试版本以及同Dave Swofford 和Jack Sullivan进行的十分有益的讨论。M.A.H是作为国家生物工程信息中心的一名博士后参与这项工作的。感谢NIH和史密森学会。
图示:
图9.1、
选定的植物、真菌和原生生物的5.8s rDNA序列的CLUSTAL引导树。分类和相应缩写字母所代表的序列在其它地方有描述(Hershkovitz and Lewis, 1996)。首先利用CLUSTAL的特定的(在这里使用的是默认值)空位罚分进行双重比对,然后根据双重比对得到序列两两之间的相似性,得到这个临近相连的(距离)进化树。计算相似性时依据的是双重比对中相同碱基的比例,不用考虑空位的位置。这个进化树既可以看作是一个最终结果,也可以作为一个多重比对中的预备步骤。不管怎样,这个进化树都会被存储为PHILIP格式的进化树文件。对于多重比对程序而言,这个进化树的拓扑结构将决定序列输入的顺序(最外面的集合最先比对),而树枝长度将决定序列的权重。这个进化树(见Hershkovitz and Lewis, 1996)中有几个分组,同已知证据不能吻合(比如,针叶树和红藻的多元性;厥类植物和苔藓的单一性),这些不正确因素都将误导多重比对。这个进化树是由PAUP的苹果机版本的画树程序制作和打印,之后经过了苹果机的图形程序加工而成的。PAUP的进化树阅览和制作的常规协议如下:(1)、执行一个PAUP文件,其分类名称同进化树名称相同;(2)、用GETTREES命令引入进化树文件,指定选项以保留进化树文件中的树枝长度;(3)、用PRINT TREES命令画出进化树,再次指定输入的树枝长度的用途;(4)、用弹出的打印进化树菜单(Print Trees)中的预览选项(Preview option)将进化树存储为PICT文件。注意,对于PAUP画树工具的使用,所执行的数据文件(序列和比对)的内容并不重要,只需要分类名相同就可以。在数据文件中可能会有额外的分类,只要用DELETE TAXA命令将其忽略即可。
图9.2、
结构RNA序列比对的系统发育证据。(A)、假定的八个序列的比对,这个比对是根据二级结构相同的碱基对准得到的,中间有一段变长(由Z字形标记)的环形(loop)区域。(B)、假定的二级结构配对关系的说明。(C, D)、AT序列和GC序列可供选择的系统发育关系。(C)中的比对同系统发生相一致,但是与之无关,因为AT和GC的取代只发生了一次。因此,必须有生物化学或者统计学证据为比对提供支持。在(D)中,AT和GC之间发生了多个独立的取代,因此系统发育证据支持这个比对。
图9.3、
系统发育的比对分析。(A)、图9.1中所显示的引导树分类群中,5.8s rDNA序列比对的变长区域(框中所示)。18所示为被子植物;910为gnetophytes;1113为松类植物;1415为蕨类植物;16为苔藓;1721为绿藻;2227为真菌类;2833为原生生物。这些序列比对已经公开出版(Hershkovitz and Lewis, 1996)。每个序列的阴影区域都是独一无二的。图9.1所示的引导树分类群中的序列同这里的序列一样,只是这里的序列为了简单起见,略去了一部分。注意引导树(基于完整序列)中的分类群似乎在变长区域形成了比对分组。按照双重原则,某些相关性较远的序列出现可供选择的比对形式似乎很合理。举个例子来说,如果向左移动两格,那么CLADO序列中间的TAC就会同一些被子植物中的YAY对准,而不是同绿藻类的YYC对准;但是足够的抽样显示YAY在被子植物中并不普遍,因此,引导树支持现行的比对,以使绿藻类中不会出现变长;如果没有足够的样本、引导树或者预知的系统发育证据,就不能做此结论。注意,绿色植物系统(121)和真菌及原生生物并不能很好的对准。阴影部分的变化和引导树注明的分歧都表明在这些距离较远的组分之间不存在真正的比对,这里的比对相当武断,真实的碱基也不太象是同源的。(B)、同样的比对,为了进行系统发育分析进行如下的修正:(1)、真菌类和原生生物序列重新计分,忽略所有阴影区域内的位点,这些位点同绿色植物系统的比对很不确定;(2)、真菌类的变长区域附加到比对的末尾,因为这些区域在真菌类内部比对较好,而且包含了有用的系统发育变化;(3)、多位点空位按照一个空位计分,其余的忽略不计,因此在MP分析中,多位点空位不被看做多个独立的缺失位点。原生生物的变长区域不会被附加到比对末尾,因为比对结果和引导树都表明原先的比对相当武断。
图9.4
特征符权重方阵及其在MP系统发育分析中的应用。(A)、图中的方阵表明颠换的代价是转换的代价的两倍。因为根据MP分析,两个序列共有的碱基是永远不会改变的,因此对角线元素将会被忽略。(B,C)、八个序列中,某个特殊的对准位点的碱基的假定的进化模式,在这里有两种系统发育的解决方案和构建模式。用不加权的MP方法进行分析,则这两种构建方法(相对于其它方法)拥有相同的代价值(分为三个步骤),因此是等价的;但是如果使用(A)中所示的加权方阵后,构建(B)需要四个步骤,而构建(C)则需要5个步骤,因此,应该选择构建方法(B)以及其它只需要四个步骤的构建方法。
图9.5
在ML和距离系统发育分析中使用的简化的取代速率方阵。这个方阵同图9.4中所示的方阵类似,但是在对分歧进行实际计算时需要引入比较复杂的代数,而且并不取决于碱基之间的简单的步骤加和。非对角线元素an代表一个变化的瞬时速率,它是不同取代的相对速率以及目标碱基的频率。实际上,前进速率(上对角元素值)同反向速率(下对角元素值)被认为是相等的;而对角线元素值是非零值,这很有效地说明了一种可能性,即序列之间的分歧越大,越有可能在很偶然的情况下拥有相同的碱基。在序列进化的最简单的模型中(the JukesCantor model),所有的a值都相同,所有的取代类型和碱基频率都被认为是等价的。
图9.6
双重序列比较。这张表比较了菠菜(Spinacia oleracea)和铁锈真菌(Sclerotinium sclerotiorum)的18s rDNA序列进行比对的1361个位点。行表示铁锈真菌中,同菠菜的特定碱基比对的碱基分布;列表示菠菜中,同铁锈真菌的特定碱基比对的碱基分布;对角线元素是两个序列中碱基位点相同的数目。注意铁锈真菌中有AT碱基偏向:铁锈真菌中有83(10 + 36 +25 + 12)个位点是A或者T,它们对应的菠菜序列的位点是G和C;想比较而言,铁锈真菌中只有47(6 + 22 + 13 + 6)个位点是G和C,其对应的菠菜序列的位点是A和T。因为这两个序列的绝大多数位点都相同,并且因为变异受到限制,所以对这两个序列(全序列)进行简单的碱基频率的比较时,这个偏向并不明显。注意,很明显,转换的数目(13 + 36 + 25 + 22 = 96)同颠换的数目(6 + 4 + 10 + 6 + 8 + 12 + 5 + 6 = 57)相比,极为巨大;而CT转换占到58/153(153是总数)。这些数据可以通过PAUP或者MEGA程序得到。
图9.7
用PAUP对一个核苷酸取代模型进行估值的策略。这里显示的是PAUP的输出结果,有些输出为了简单起见,被略去了。输入的命令由粗体特征符表示,并且被写在括号里。这个程序的命令行版本需要在命令行中输入命令,但是同样的命令还可以通过菜单界面给出。PAUP程序执行后,并且执行了数据文件以后 [ paup>exe 18s.paup ],程序将会以较快的速度建立一个进化树在这种情况下,MP搜索(PAUP中默认的最优化标准)将会使用程序的默认设置。在输出结果中显示了全部的搜索设置(这里被截短了)。在这个情况下,一共找到了36个同等节约的进化树。最优化标准变为似然方法 [ paup> set cri=1 ],设置也改变了,开始使用六个取代类型,并且对位点内部的速率差异进行gamma和不变式的混合修正;对于取代速率方阵,gamma形状参数和不变位点的比例将通过数据和进化树进行估值 [ paup> lse nst=6 rma=est ra=ga sha=est pi=est ]。命令 lse ? 显示了当前的似然方法的设置(这里被截短了)。命令 set tcom 将会压缩输出的进化树,以节约空间。我们通过描述存储的进化树对似然方法的参数值进行估值,在这里使用的是16号进化树(同样的拓扑结构出现在 Hershkovitz and Lewis, 1996)。一个选项把进化树的输出指向一个种族,这将显示树枝长度 [ paup>desc 16 /pl=ph ]。当然,也可以选择把进化树的输出屏蔽掉 [ paup>desc 16 /pl=no ]。输出结果还将显示似然方法的参数值、进化树的分值和其它一些信息,在这里这些信息没有被显示出来。R方阵是图9.5中所示的一般形式的方阵的一个实例;它包括了似然方法的设置中要用到的相对的速率参数。可以输入命令,把似然方法的设置改变回较早时的数值(把这些数值设置为对刚才描述的进化树有效的数值 [ paup> lse rma=pre sha=pre pi=pre ]),将会激活参数的估值。于是这些数值将会为ML建树搜索服务。同样地,这些数值可以插入到相似的距离方法的参数设置中,为距离方法建树搜索服务。
图9.8
星型分解图。本图显示了诸如相邻连接方法之类的建树算法的工作方式。最相近的两个终端被连接起来,并在它们和剩余的终端之间插入一个树枝。然后,这个新的树枝得到修整,使得这个树枝的数值是两个原始值的平均数,并产生一个只包含n-1个终端的星型图。这个过程将反复进行,直到最后只剩下一个终端为止。
图9.9
测试数据中的系统发育信号的偏差实验:一个PAUP输出(命令行在括弧内用粗体字体显示)。这个程序的命令行版本需要在命令行中输入命令,但是同样的命令还可以通过菜单界面给出。这个实验使用的样本同图9.7中的一样,都是18S rDNA数据集,并且假定优化标准是MP标准。对MP而言不提供信息的特征符已经被删除,因为如果数据中这些特征符的比例较高的话,将会对结果产生误导。所有的进化树分值的全部输出会非常冗长;因此这个实验命令提供了一个选项,可以输出一个包含20个分类的柱状图(20是默认值)。默认的复制数目是1000,在这里已经大大增加了。对33个分类群所作的g1统计非常重要:其数值比拥有25个分类群和500个特征符(Hillis and Huelsenbeck, 1992)的系统临界值(-0.09; p=0.01)还要小很多(负数);对于拥有更多的分类群和特征符的系统,还没有给出临界值,但是可想而知,这些值必将更加小(负数)。这个MP进化树的分值是2315分(比较图9.7),比起500个随机进化树中的任何一个都要小得多。接下来会进行第二次实验,但是将从18S数据集中删除被子植物的数据。分类群可以根据名字或者编号被临时删除,而被子植物恰好是数据文件中的前10个分类群。在这种情况下,g统计要比拥有500个特征符和10个分类群的系统的临界值(-0.16; p=0.5)大得多(正数),显示出18S序列没有系统发育信号来解决这些样本的关系。用这些18S数据以及10个被子植物得到的MP分值是312分,这个分值只比最好的随机进化树分值稍微好一点。
图9.10
用PHYLIP程序进行自引导分析的工作流程。SEQBOOT接受一个PHYLIP格式的文件作为输入数据,然后按照用户指定的数目(比如1000次)将其加倍。输出文件中的结果可以用来计算1000个距离矩阵:如果是DNA数据,就用DNADIST;如果是蛋白质数据,就使用PROTDIST。在这个步骤中,真书的数据(核苷酸,氨基酸)被屏蔽,由两个序列之间的分歧数量取代。然后,NEIGHBOR程序将会为这些(1000个)矩阵的每一个都建立一个进化树。然后,CONSENSE程序将1000个进化树较少到1个,并且在树枝上标注自引导数值。存在于输出文件中的CONSENSE进化树的拓扑结构可以用任何文本编辑软件打开,而进化树文件可以为出版发行作进一步处理。Treetool和TREEVIEW允许用户对进化树进行操作和处理(重新确定树根,重新排布树枝,将系统树图转化为家族图谱,等等),并且可以将文件存储为常用的图形格式(就像PICT)。虽然这些程序不在PHYLIP软件包中(用虚线方框标注),他们都是免费可得的(见本章结尾的列表)。图示还显示了一些在自引导分析过程中进行数据处理时所用到的不同的文件格式。受篇幅限制,每个文件都截去了许多内容,这些截去的内容在框中处于右方和底部。
参考文献
Adachi J.and Hasegama,M.(1996).MOLPHY Version2.3.Programs for Molecular phylogenetics based on maximum likelihood(Tokyo:Institute of Statustical Mathematics).
Avise J.C.(1994).Molecular Markers,Natural and Evolution(New York: Chapman & Hall).
Baldauf,S.L,Palmer,J.D.,and Doolittle,W.F.(1996).The root of the universal tree and the and the orugin Efron,B.(1979).Bootsrapping methods:Another look at the jackknife.Ann.Stat.7,1-26.
Dayhoff,M.O.,Schwarez,R.M.,and Orcutt,B.C.(1978).A model of evolutionary change in proteins.In Atlas of protein sequence and structure M.O.Dayhoff,ed.(washington,DC.,National Biomedical Research Foundation),pp 345-362.
Faith,D.P.,and Trueman,J.W.H.(1996).When the topology-depnsent permutation test(T-PTP)ing the null hypothesis of nonmonophyly,(b)rejecting the null hypothesis of "no structure,"(c)Felsenstein,J.(1985).Confidence intervals on phylogeies:An approach using the bootstrap.Evolution39,783-791.
Felsenstein,J.(1997).An alternative lesst-approsch to inferring phylogenies from pairwise distances.Syst.Biol.46,101-111.
228 PHYLOGENETIC ANALYSIS
Felsenstein,J.,and kishino,H.(1993)Is there something wrong with the bootstrap on phylogenies.
A reply to Hillis and Bull.Systematic biology42,193-200.
Feng,D.F.,and Doolittle,R.F.(1996).progressive alignment of amino acid sequences and con-struction of phylogenetic trees from them.Methods Enzymoi.266,368-382.
Gstesy,J.,Desalle,R.,and wheeler,w.(1993).Alignment-ambiguous nucleotide sites and the Gutell,R.R.,Lsrsen,N.,and woese,C.R.(1994).Lessons from an evolving rRNA:16S and 23S rRNA structures from a comparative perpective.Microbiol.Rev 58,10-26.
Harver,P.H.,and pagel,M.D.(1991).The comparative Method in Evolutionary Biology(Oxfrord:Oxford University press).
Hein,J.(1990).Unified approach to alignment and phylogenies.Methods Enzymol.183,626-645.
Hein,J.(1994).TreeAlin.Methods MOL.Bion 25,349-364.
Helbig,A.J.,and seibold,I.(1996).Deep-level diagnostic value of the rDNA-ITS region.Hershkovitz,M.A.,and Bull,J.J.(1996).Are storks and new world vultures paraphyletic?Mol.phyloenet.Evol 13,1276-1295.
Hershkovitz,M.A.,and Lewis,L.A.(1996).Deep-level diagnostic as a method for assessing confidence in phylogenenbeck,J.P.(1992)
Hillis,D.M.,Allsrd,M.W.,and miyamoto,M.M.(1993).Analysis of DNA sequence sara:phylo
Hillis,D.M.,Huelsenbeck,J.P.,and cunningham,C.W.(1994)Application and accuracy of molecular phylogenies.methods Enzymol.224,456-487.
Hillos,D,M.,Huelsenbeck,J,P(1995).perfromance of phlogenetoc methods in simulation.syst Biol,44,17-48.
Huelsenbeck,J.P.,Hillis,D,M.,and Grate,L.(1996b)SAM:sequence slinment and modelling software:University of california Baskin center for compuer Engineering and modelling software University of California,Baskin Center for Computer Enguneering and Information Sciences .
http:\\www.cse.ucsc.edu\research\compbio\sam doc.html)
Kishino,H.,and Hasegawa,M,(1989).Evaluation of the maximum lielihood estimate of the evolutionary tree topologies.Comput.Appl.Biosci.10,189-191.
Lake,J,A(1994).Reconstructing evolutionary trees from DNA and protein seqences:paralinear distanece,C.E.,Altschul,S.F.,Bognals:A Gibbs sampling strategy for multiple alignments.science 262,208-214.
Lawson,F.S.,charlebois,R.L.,and Dillon,J.A.(1996).phylogenetic analysis of carbamoylphosphate synthetasa genes:Complex evolutionary history includes an internal duplication within a Lipe,D.D.,Gunderson,J.H.,Nerad,T.A.,and sogin, M. L (1993).Small suunit riosomal RNA of Hexamita inflata and the quest for the first branch in the eukaryotic tree. Mol. Biochem. Parasitol. 59, 41-48
Leipe, D. D., Wainright, P. O., Gunderson, J. H., Porter, D., Patterson, D. J., Valois, F., Himmerich, S., and Sogin, M. L. (1994). The Stramenopiles from a molecular perspective: 16S-like rRNA sequences from Labyrinthuloides minutum and Cafeteria ronbergensis. Phycologia 33, 369-377
Lewis, P., and Lewis, L. A. (1995). MEGA: Molecular Evolutionary Genetics Analysis, Version 1.02, by S. Kumar, K. Tamura, and M. Nei. Syst. Biol. 44, 576-577
Li, W.-H. (1997). Molecular Evolution (Sunderland, MA: Sinauer Associates).
Lockhart, P. J., Steel, M. A., Hendy, M. D., and Penny, D. (1994). Recovering evolutionary trees under a more realistic model of sequence evolution. Mol. Biol. Evol. 11, 605-612.
Maddison, W. P., and Maddison, D. R. (1992). MacClade: Analysis of phylogeny and Character Evolution. Version 3.0 (Sunderland, MA: Sinauer Associates).
Mindell, D. P. (1991). Aligning DNA sequences: Homology and phylogenetic weighting. In Phylo-genetic Analysis of DNA Sequences, M. M. Miyamoto and J. Cracraft, Eds. (New York: Oxford University Press), pp. 73-89
Morrison, D. A., and Ellis, J. T. (1997). Effects of nucleotide sequence alignment on phylogeny estimation: A case study of 18S rDNAs of Apicomplexa. Mol. Biol. Evol. 14, 428-441
Nixon, K. C., and Carpenter, J. M. (1993). On outgroups. Cladistics 9, 413-426
Olsen, G. J., Matsuda, H., Hagstrom, R., and Overbeed, R. (1994). FastDNAml: A tool for construction of phylogenetic trees of DNA sequences using maximum likelihood. Comput. Appl. Biosci. 10, 41
Penny, D., Lockhart, P. J., Steel, M. A., and Hendy, M. D. (1994). The role of models in reconstructing evolutionary trees. In Models in Phylogeny Reconstruction, Systematics Association Special Volume No. 52, R. W. Scotland, D. J. Siebert and D. M. Williams, Eds. (Oxford: Clarendon Press), pp. 211-230
Rzhetsky, A., and Nei, M. (1992). A simple method for estimating and testing minimum evolution trees. Mol. Biol. Evol. 9, 945-967
Rzhetsky, A., and Nei, M. (1994). METREE: A program package for inferring and testing minimun-evolution tress. Comput. Appl. Biosci. 10, 409-412
Saitou, N. (1996). Reconstruction of gene trees form sequence data. Methods Enzymol. 226, 427-449
Sanderson, M. J. (1989). Confidence limits on phylogenies: the bootstrap revisited. Cladistics 5, 113-129
Soltis, D. E., Soltis, P. S., Nickrent, D. L., Johnson, L. A., Hahn, W. A., Hoot, S. B., Sweere, J. A., Kuzoff, R. K., Kron, K. A., Chase, M. W., Swenson, S. M., Zimmer, A. A., Chaw, S.-M., Gillespie, L. J., Kress, W. J., and Sytsma, K. J. (1997). Angiosperm phylogeny inferred form 18S ribosomal DNA sequences. Ann. Missouri Bot. Garden 84, 1-49
Strimmer, K., and von Haeseler, A. (1996). Quartet puzzling: A quartet maximum likelihood method for reconstructing tree topologies. Mol. Biol. Evol. 13, 964-969
Sullivan, M. J., and Swofford, D. L. (1997) Are guinea pigs rodents? The importance of adequate models in molecular phylogenetics. J. Mammal. Evol. 4, 77-86
Swofford, D. L. (1990). PAUP. Phylogenetic Analysis Using Parsimony, Version 3.0. Computer program distributed by the Illinois Natural History Survey, Champaign, IL.
Swofford, D. L., (1997)
Swofford, D. L., and Olsen, G. J. (1990)
Swofford, D. L., Olsen, G. J., Waddell, P. J., and Hillis, D. M. (1996a). Phylogenetic inference. In Molecular Systematics, D. M. Hillis, C. Moritz and B. K. Mable, Eds. (Sunderland, MA: Sinauer Associates), pp. 407-514
Swofford, D. L., Thorne, J. L., Felsenstein, J., and Wiegmann, B. M. (1996b). The topology-dependent permutation test for monophyly does not test for monophyly. Syst. Biol. 45, 575-579
Thompson, J. D., Higgins, D. G., and Gibson, T. J. (1994). Clustal W: Improving the sensitivity of progressive multiple alignment through sequence weighting. Nucl. Acids Res 22, 4673-4680
Thorne, J. L., and Kishino, H. (1992). Freeing phylogenies form artifacts of alignment. Mol. Biol. Evol. 9, 118-1162
Weston, P. H. (1994). Methods for rooting cladistic trees. In Models in Phylogeny Reconstruction, R. W. Scotland, D. J. Siebert, and D. M. Williams, Eds. (Oxford: Systematics Association), pp. 125-155
Wheeler, W. C. (1994). Sources of ambiguity in nucleic acid sequence alignment. Exs 69, 323-352
Wheeler, W. C., and Gladstein, D. (1994). MALIGN: A multiple sequence alignment program. J. Hered. 85, 417
Yang, W. M., Inouye, C. J., Zeng, Y., Bearss, D., and Seto, E. (1996). Transcriptional repression by YYI is mediated by interaction with mammalian homolog of the yeast global regulator RPD3. Proc. Natl. Acad. Sci. U. S. A. 93, 12845-12850
Yang, Z., Goldman, N., and Friday, AA. (1995). Maximum likelihood trees form DNA sequences: A peculiar statistical problem. Syst. Biol. 44, 384-399