1、 序列比对序列比对原理原理 Principles of Sequence AlignmentBiology -What is the biological question or problem?Data -What is the input data?-What other supportive data can be used?Model -How is the problem formulated computationally?-Or,whats the data model?Algorithm -What is the computational algorithm?-How abo
2、ut its performance/limitation?序列比对(sequence alignment)的定义:运用某种 特定的数学模型或算法,找出两个或多个序列之间的最大匹配碱基或氨基酸残基数,比对的结果反映了算法在多大程度上提供序列之间的相似性关系及它们的生物学特征。序列:核酸或蛋白质第一节 序列比对相关概念为什么要进行序列比对?基于同源物鉴定的功能预测Cystic Fibrosis(囊性纤维化)and the adenosine triphosphate binding Protein囊囊肿性性纤维化化(Cystic Fibrosis,CF),亦称为囊性囊性纤维化化、囊囊肿性性纤维变
3、性性或囊囊纤维变性性,是一种常一种常见的的遗传疾病。疾病。此病症会影响病患的全身,此病症会影响病患的全身,导致逐致逐渐的的行行动困困难以及提早死亡。最常以及提早死亡。最常见的症状的症状是因是因为长期反复的肺部感染所期反复的肺部感染所导致的呼致的呼吸困吸困难,其他可能的症状包括鼻,其他可能的症状包括鼻窦炎、炎、发育不良、腹泻以及不孕。育不良、腹泻以及不孕。基本假设:序列的保守性 功能的保守性注意:蛋白质一般在三级结构的层面上执行功能;蛋白质序列的保守性决定于其编码DNA的保守性。序列同源性模型中的进化假设1.所有的生物都起源于同一个祖先;2.序列不是随机产生,而是在进化上,不断发生着演变;3.基
4、本假设:序列保守性 结构保守性注意:反之可以不为真。结构保守性 序列保守性序列同源性模型中的进化假设1.所有的生物都起源于同一个祖先;2.序列不是随机产生,而是在进化上,不断发生着演变;3.基本假设:序列保守性 结构保守性注意:反之可以不为真。结构保守性 序列保守性同源性(同源性(homology)-具有共同的祖具有共同的祖先先(质的判断质的判断)相似性(相似性(similarity)同一性(同一性(identity)(三个重要概念见教材三个重要概念见教材P47)同源序列一般是相似的同源序列一般是相似的 相似序列不一定是同源的相似序列不一定是同源的 进化趋同(同功能)进化趋同(同功能)“同源性
5、与“相似性”的用法使用ClustalW和DNAMAN 310分析了本实验室克隆的15个黄瓜抗病基因类似序列(RGA)之间以及与烟草的N 基因、亚麻的L6基因和拟南芥的RPS2基因之间的同源性,并对这些RGA进行了PCR和Southern验证与分析。结果表明:15个黄瓜RGA中,核苷酸序列同源性最高的是CsRGA2、CsR2GA4和CsRGA5,其次是CsRGA6、CsRGA7、CsRGA8和CsRGA9,CsRGA1和CsRGA3也存在较高的同源性;其余的RGA同源性较低。在氨基酸序列上也表现了相同的特征。与N、L6和RPS2等抗病基因的产物之间同源性最高46%,最低22%。(丁国华等,20
6、07)相似性(相似度)直系同源与旁系同源序列的相似性描述序列的相似性描述定性的描述定性的描述:画图画图定量的数值:定量的数值:相似度相似度距离距离第二节第二节 序列比对打分方法序列比对打分方法比对比对就是两条序列字符间简单的两两匹配。比对可以反映出两条或多条同源序列间的进化关系.最简单的情况下即不考虑空位,当两条序列对比时,要做的仅是为较短的序列选择比对的起始点。考虑这样的两条核苷酸序列:AATCTATA和AAGATA 仅有三种比对方式不考虑空位的简单比对,它的打分函数是有对比奖励和罚分的和来决定上例中三个比对从左至右分别是 4、1、3匹配得分:匹配得分:1失配得分:失配得分:0空位空位两条或
7、多条序列比对时,如果考虑到插入与删除时间发生地可能性,那么候选的比对数量就会大大增加,也就导致了比对的复杂性。上节中两条核苷酸序列,在不考虑空位时仅有三种比对,而较短的那条加入了两个空位后,变产生了28种不同的比对,例如:等等简单空位罚分简单空位罚分对含有空位的比对打分时,空位罚分空位罚分就必须包含到打分函数中,空位比对的简单打分公式如下:例如:假设匹配得分为1,失配得分为0,空位罚分为-1三种空位比对的得分从左至右分别是1、3、3起始罚分与长度罚分起始罚分与长度罚分使用简单空位罚分对两条序列进行比对时,经常能找到若干同格式最优的比对。进一步区分这些比对的方法是找出哪些比对包含较多的不连续空位
8、哪些包含较少长度较长的空位片段。插入插入/删除事件删除事件假设两条序列长度分别是12和9假设这两条序列是真正的同源序列,那么它们之间长度的差异可以解释为(1)较长的序列有核苷酸的插入,或者(2)较短的序列发生了核苷酸的删除,或者(3)两者都发生了。在不知道原始父辈序列的情况下,无法判断导致空位的原因是由于一条序列的插入事件还是另一条的删除事件,通常把这类事件称为插入插入/删除事删除事件件。多联核苷酸的插入删除事件插入删除事件相对于单个核苷酸来说会较经常发生。统计结果表明,两条序列长度上的差异更可能是单个三联核苷酸的插入删除事件导致的,而多个不连续核苷酸插入删除事件的可能性比较小。空位罚分空位
9、罚分由序列中产生的新空位串引起的起始罚分起始罚分和根据缺少的字符数而定的长度罚分长度罚分。预设长度罚分小于起始罚分,以此建立的打分函数便能奖励空位连在一起的比对。假设起始罚分为-2,长度罚分为-1,匹配得分为+1,失配得分为0,则对于这三个比对,从左至右比对的得分分别是-3,-1,+1在后两种比对在使用简单空位罚分时,最后得分都是在后两种比对在使用简单空位罚分时,最后得分都是+3,现在却得到了不同的分数。,现在却得到了不同的分数。打分矩阵打分矩阵正如空位罚分空位罚分可以奖励与进化相关的的比对,失配罚分失配罚分也可以用来进一步区分相似比对。统计结果表明,两条同源的序列比对时,某些替换比其他替换常
10、见的多。例例:两条蛋白质序列,其中一条在某一个位置上是丙氨酸,如果该位点被替换成另一个较小的且疏水的氨基酸,比如缬氨酸对蛋白质的影响很小,如果被替换成较大且带电的残基,比如赖氨酸,那么对蛋白质的影响可能就会非常大。直观的讲,比较保守的替换比随机替换更可能维持蛋白质的功能,更不容易被淘汰,因此在打分上更倾向于丙氨酸而不是赖氨酸。打分矩阵(打分矩阵(Scoring Matrix)核酸打分矩阵设DNA序列所用的字母表为 =A,C,G,T a.单位矩阵 b.BLAST矩阵 c.转换-颠换矩阵(transition,transversion)(嘌呤:腺嘌呤A,鸟嘌呤G;嘧啶:胞嘧啶C,胸腺嘧啶T)ATC
11、GA1000T0100C0010G0001ATCGA5-4-4-4T-45-4-4C-4-45-4G-4-4-45ATCGA1-5-5-1T-51-1-5C-5-11-5G-1-5-51单位矩阵单位矩阵转换转换-颠换矩阵颠换矩阵BLAST矩阵矩阵如果不考虑颠换和置换,可采用以下打分矩阵如果不考虑颠换和置换,可采用以下打分矩阵PAM矩阵(矩阵(Point Accepted Mutation)基于进化的点突变模型基于进化的点突变模型 一个一个PAM就是一个进化的变异单位就是一个进化的变异单位,即即1%的氨基酸改变的氨基酸改变相对突变率相对突变率仅仅是某种氨基酸仅仅是某种氨基酸 被其他任意氨基酸替换
12、的次数被其他任意氨基酸替换的次数例如:ma是指丙氨酸与非丙氨酸残基比对的次数,是指丙氨酸与非丙氨酸残基比对的次数,Ma为概率为概率然而我们针对每个氨基酸对然而我们针对每个氨基酸对i 和和j,计算氨基酸,计算氨基酸j 被氨基酸被氨基酸i 替换的次数替换的次数 Aij例如:Acm 是被比对序列中,甲硫氨酸被半胱氨酸替换的次数是被比对序列中,甲硫氨酸被半胱氨酸替换的次数以以Aij除以除以ma 利用每个氨基酸出现的频度对起进行标准化,得到利用每个氨基酸出现的频度对起进行标准化,得到PAM-1矩矩阵中的元素阵中的元素Rij式中Mab为任意氨基酸b替代a的概率式中pa为氨基酸a未被替换的概率100个残基发
13、生一次替换的Dayhoffs PAM-1矩阵针对不同的进化距离采用针对不同的进化距离采用PAM 矩阵矩阵序列相似度序列相似度=40%50%60%|打分矩阵打分矩阵 =PAM120 PAM80 PAM 60PAM250 14%-27%Dotplot算法 评估两条序列相似度最简单的方法之一是利用点阵点阵图图。第一条被比较的序列排列在点阵图空间的横轴,第二条序列则排列在纵轴。点阵空间中两条序列中的残基相同时,在对应的位点上画上圆点,两条序列间连续相同的区域在图中会形成由圆点组成的上斜线。第三节 序列比对算法具有连续相似区域的两条具有连续相似区域的两条DNA序列的简单点阵图序列的简单点阵图滑动窗口技术
14、滑动窗口技术 使用滑动窗口滑动窗口代替一次一个位点的比较是解决这 个问题的有效方法。假设窗口大小窗口大小为10,相似度阈值相似度阈值为8,则每次比较取10个连续的字符,如相同的字符超过8个,则标记 基于滑动窗口滑动窗口的点矩阵点矩阵方法可以明显地降低点阵图的噪声,并且明确无误的指示出了两条序列间具有显著相似性的区域。(a)对人类()对人类(Homo sapiens)与黑猩猩()与黑猩猩(Pongo pygmaeus)的)的球蛋球蛋白基因序列进行比较的完整点阵图。(白基因序列进行比较的完整点阵图。(b)利用滑动窗口对以上的两种球蛋)利用滑动窗口对以上的两种球蛋白基因序列进行比较的点阵图,其中窗口
15、大小为白基因序列进行比较的点阵图,其中窗口大小为10个核苷酸,相似度阈值个核苷酸,相似度阈值为为8。(a)(b)常用对比软件:BLAST(bl2seq)动态规划动态规划:Needleman 和和 Wunsch 算法算法一旦选定了序列比对打分的方法,就可以为寻找最佳比对设计算法了。最显而易见的方法就是对每个可能的比对进行穷穷举搜索举搜索,但这一般是不可行的。我们可以用动态规划动态规划解决这个问题,即把一个问题分解成计算量合理的子问题,并使用这些子问题的结果来计算最终答案。S.Needleman与C.Wunsch首次运用动态规划方动态规划方法法来进行序列分析。假设两条序列:CACGA和CGA,使用
16、统一的空位空位和失配罚分失配罚分则:1、给第一条序列加一个空位 2、给第二条序列加一个空位 3、两条序列都不加空位如果知道了ACGA与GA最佳比对的得分,就可以立即计算出表中第一行的得分。同样地,如果知道了表中第二、第三行剩余序列的最佳比对的得分,就可以计算出起始位点的不同的三种比对得分。动态规划算法动态规划算法通过计算部分序列比对得分并填入一个表格,直到整个序列比对被计算出来,由此得到最优比对。动态规划动态规划比对ACAGTAG与ACTCG空位罚分为-1匹配奖励为+1失配得分为 00-1-2-3-4-5-1-2-3-4-5-6-7 A C T C GACAGTAG用空位罚分的倍数用空位罚分的
17、倍数对表格第一行与第对表格第一行与第一列进行初始化一列进行初始化填充表格填充表格0-1-2-3-4-5-1-2-3-4-5-6-7 A C T C GACAGTAG表格中表格中横向移动横向移动表示在表示在纵轴序列中加入一个空纵轴序列中加入一个空位位纵向移动纵向移动表示在横轴序表示在横轴序列中加入一个空位列中加入一个空位斜对角向移动斜对角向移动表示两序表示两序列各自相应的核苷酸进列各自相应的核苷酸进行了比对行了比对横向移动横向移动纵纵向向移移动动斜对角向移动斜对角向移动0-1-2-3-4-5-1-2-3-4-5-6-7 A C T C GACAGTAG-1-1=-2,表示在横向序列中插,表示在横
18、向序列中插入一个空位,然后与纵向序列入一个空位,然后与纵向序列中的中的A比较,空位罚分比较,空位罚分-1。-1-1=-2,表示在纵,表示在纵向序列中插入一个向序列中插入一个空位,然后与横向空位,然后与横向序列中的序列中的A比较,比较,空位罚分空位罚分-1。0+1=1,表示两序,表示两序列的第一个列的第一个A进行进行对比,匹配奖励对比,匹配奖励1。-2-2-2-21 110-1-2-3-4-5-1-2-3-4-5-6-7 A C T C GACAGTAG1-1=0,表示在横向序列中插入,表示在横向序列中插入一个空位,然后与纵向序列中一个空位,然后与纵向序列中的的C比较,空位罚分比较,空位罚分-1
19、2-1=-3,表示在纵,表示在纵向序列中插入一个向序列中插入一个空位,然后与横向空位,然后与横向序列中的序列中的A比较,比较,空位罚分空位罚分-1。-1+0=-1,表示横向,表示横向序列的序列的A与纵向序与纵向序列的列的C进行比较,进行比较,失配得分失配得分0。-3-3-1-110 000-1-2-3-4-5-1-2-3-4-5-6-7 A C T C GACAGTAG-2-1=-3,表示在横向序列中插,表示在横向序列中插入一个空位,然后与纵向序列入一个空位,然后与纵向序列中的中的A比较,空位罚分比较,空位罚分-1。1-1=0,表示在纵,表示在纵向序列中插入一个向序列中插入一个空位,然后与
20、横向空位,然后与横向序列中的序列中的C比较,比较,空位罚分空位罚分-1。-1+0=-1,表示横向,表示横向序列的序列的C与纵向序与纵向序列的列的A进行比较,进行比较,失配得分失配得分0。0 0-1-11-3-3000-1-2-3-4-5-1-2-3-4-5-6-7 A C T C GACAGTAG0-1=-1,表示在横向序列中插入,表示在横向序列中插入一个空位,然后与纵向序列中一个空位,然后与纵向序列中的的C比较,空位罚分比较,空位罚分-1。0-1=-1,表示在纵,表示在纵向序列中插入一个向序列中插入一个空位,然后与横向空位,然后与横向序列中的序列中的C比较,比较,空位罚分空位罚分-1。1+1
21、2,表示横向,表示横向序列的序列的C与纵向序与纵向序列的列的C进行比较,进行比较,匹配奖励匹配奖励1。-1-1100-1-12 22 0-1-2-3-4-5-110-1-2-3-20210-1-3-11210-4-20122-5-3-1112-6-4-2011-7-5-3-102A C T C GACAGTAG为了利用打分表重建比对重建比对,需要找出一条由表格中最右下角到最左上角的路径!动态规划动态规划途中箭头指示了部分打分表中的合法路径,每条路径代表若干等价最优比对路径自右下至左上排列自来分别是 根据这条线路,可以重建比对,可以得到以下这个得分为2的最优比对0-1-2-3-4-5-110-
22、1-2-3-20210-1-3-11210-4-20122-5-3-1112-6-4-2011-7-5-3-102A C T C GACAGTAG全局对比与局部比对全局对比与局部比对准全部比对准全部比对到目前为止,所有讨论的基本比对算法仅是做了全局全局比对比对。而比对两序列时,这并不总是可取的。假如从AAACACGTGTCT中搜寻段序列ACGT。在若干种两序列比对中,我们需要的是区别对待末端空位与序列内部空位这种比对称为准全局比对准全局比对 (semiglobal alignment)准全局比对准全局比对(1)通过初始化部分打分表,表格第一行与第一列为零;(2)允许表格最后一行与一列横向与纵向
23、的移动不被罚分;Needleman 和和 Wunsch 算法的改进算法的改进(准全局比对)(准全局比对)Smith-Waterman算法算法准全局比对有时有点不能为序列搜索提供所需的适应性需要进行局部比对局部比对例如:两条序列 AACCTATAGCT 和 GCGATATA,用准全局比对算法,空位罚分为-1,匹配奖励为+1,失配得分为-1,得:局部比对时,表中小于零的位置用零代替局部比对时,表中小于零的位置用零代替AACCTATAGCT GCGATATA A A C C T A T A G C TSmith-Waterman算法算法局部比对局部比对1981年,由F.Smith 和 M.Water
24、man首次提出;动态规划方法通过较少的改动便可以用来识别匹配的子序列,并且忽略匹配区域之前或之后的失配和空位;局部比对时,表中小于零的位置用零代替;得到的局部比对代表了被比两条序列间的最佳的匹配子序列;局部比对方法可以识别子序列的匹配,而这是全局与准全局比对不可能做到的。第四节第四节 序列比对工具序列比对工具尽管序列比对是比较两条已知序列的极为重要的工具,然而序列比对的更为常见的用途是用来搜索大量序列的数据库,以找到与特定序列相似的那些序列。在数据库搜索过程中,由于被搜索序列很长,而且数量巨大,用简单而直接的方法将数据库中的每条序列与查询序列进行比对并返回得分最高的序列难以奏效。作为替代方法,
25、各种索引方法与启发方式被用来加快搜索的过程,虽然不能保证与查询序列比对的最好的,但是能返回大部分与查询序列比对较好的,而且这些方法的效率很高。BLAST及其家族及其家族序列数据库搜索最著名且常用的工具之一是BLAST算法,原始的BLAST算法是通过搜索序列数据库来找出最优的空间局部比对。BLASTP是BLAST算法的一种变种为了有效地搜索大型数据库,BLASTP首先将查询序列打碎成一个个单词,查询序中所有可能的单词是通过查询序列上滑动与单词等长的窗口来得到的。除了BLASTP,还有BLASTN和BLASTX等等.BLASTP搜索算法概述搜索算法概述FASTA及其相关算法及其相关算法FASTA算
26、法及家族成员能够进行序列间含空位的局部比对。FASTA搜索非常细致,需要时间也长的多。FASTA搜索也是将搜索序列打碎成单词。对于氨基酸序列FAMLGFIKYLPGCM,假设单词长度为1,那么:目标序列TGFIKYLPGACT,那么对照表格发现,甘氨酸(G)在第一个表中位置为5、12,在第二个表中为-4、3,再观察其它出现了很多距离为3的情况,这一现象暗示了一个可能的合理比对。通过两条序列的偏移表,即可发现相同的区域。单词ACDEFGHIKLMNPQRSTVWY位置2131578431196121014123456789101112TGFIKYLPGACT3-2333-33-4-8210333
27、数据库搜索的比对得分与统计显著性数据库搜索的比对得分与统计显著性数据库搜索引擎一般都为每个搜索结果提供P得分和E得分加入搜索结果的比对得分为S,那么P和和E得分得分指的是用于随机找出的一条或多条序列,比对得分大于等于S的可能性。P与E的值比较低说明该结果与查询序列具有进化上的关系。第五节第五节 多重序列比对多重序列比对 (multiple sequence alignment)到目前为止,所讨论的比对算法都是为进行序列两两比较而设计的,然而同时比对多条序列也是很重要的。当统计一组序列的替换率时,多重序列比对通常比两两比对更合适,因为多重比对尽可能地多考虑到了序列中的空位。多重比对对于打分矩阵的
28、建立也很重要,比如本章前面讨论的PAM与BLOSUM矩阵。但是由于随着比对序列数量的增大,多重比对算法的复杂度呈指数级增加,就算是使用超级计算机或者工作站的分布式网络,要对20条以上具有一般长度与复杂度的序列进行比对,仍是非常棘手的问题。因此,利用启发式的比对方法启发式的比对方法被提出来,这类方法不能保证产生一个最优比对,但是能找出一个近似最优的比对。本章总结本章总结两条或多条基因或氨基酸序列间的比对序列间的比对代表着一个有关这些序列从共同祖先开始的进化路径的假设。尽管真正的进化路径无法被明确无误的推断出,但序列比对算法可以识别随机发生率很低的那些比对,多种技术可以用来左右打分函数,例如PAM与BLOSUM。Needleman与 Wunsch首先提出的全局比对算法全局比对算法以及Smith与Waterman 提出的局部比对算法局部比对算法已经成为了众多数据库搜索算法的基础,包括 BLASTX 等工具。这些算法利用了索引、启发式和快速比较等技术,使得整个数据库中的序列能与查询序列在很短的时间内完成。谢谢谢谢!