《生物计算技术》第4章多重序列比对分析.ppt
《《生物计算技术》第4章多重序列比对分析.ppt》由会员分享,可在线阅读,更多相关《《生物计算技术》第4章多重序列比对分析.ppt(98页珍藏版)》请在三一办公上搜索。
1、,Biocomputing technology Multiple sequence alignment,第4章 多重序列比对分析,目的要求:1 掌握多重序列比对的基本概念及意义。2 掌握多重序列比对的星形比对、树形比对及隐马尔可夫模型。3 了解多重序列比对的动态规划算法、CLUSTAL W 算法。,教学内容:4.1 多重序列比对的意义 4.2 多重序列比对算法原理,Multiple sequence alignment,4.1 多重序列比对的意义,目的:发现多个序列的共性 发现与结构和功能相关的保守序列片段定义:设:有k个序列s1,s2,.,sk,每个序列由同一个字母表中的字符组成,k大于2
2、,通过插入“空位”操作,使得各序列达到一样的长度,从而形成这些序列的多重比对。,Biocomputing technology Multiple sequence alignment,8条免疫球蛋白序列片段的多重比对:,半光氨酸,色氨酸,疏水残基,保守区域,SP得分,Biocomputing technology Multiple sequence alignment,Biocomputing technology Multiple sequence alignment,通过序列的多重比对,可以得到一个序列家族的序列特征。当给定一个新序列时,根据序列特征,可以判断这个序列是否属于该家族。对于多
3、序列比对,现有的大多数算法都基于渐进比对的思想,在序列两两比对的基础上逐步优化多序列比对的结果。进行多序列比对后,可以对比对结果进行进一步处理,例如构建序列的特征模式,将序列聚类、构建分子进化树等。,4.2 多重序列比对算法原理,SP模型 多重比对的动态规划算法 优化算法 星型比对 树形比对4.2.6 CLUSTALW算法隐马尔可夫模型,Biocomputing technology Multiple sequence alignment,SP 模型(Sum-of-Pairs)逐对加和函数,作用:评价多重序列比对的结果,SP计算的两种方法:,Biocomputing technology Mu
4、ltiple sequence alignment,方法1:先计算多重比对结果的每一列字符的得分,然后求整体多重比对得分,Biocomputing technology Multiple sequence alignment,假设:得分函数(代价函数)具有加和性,即多重比对的得分 是各列得分总和。思路:如何给比对的每一列打分,然后将各列的和加起来,成为一个总得分。每一列的处理方式:寻找一个具有k 个变量的打分函数,每一个变量或者是 一个来自特定字母表中的字符,或者是一个空位。k 是参与多重比对的序列的个数。,Biocomputing technology Multiple sequence a
5、lignment,显式函数应满足如下条件:函数形式简单,具有统一的形式,不随序列的个数 而发生形式的变化。2.根据得分函数的意义,函数值应独立于各参数的顺序,即与待比较的序列先后次序无关。3.对相同的或相似字符的比对,奖励的得分值高,而对 于不相关的字符比对或空白,则进行惩罚(得分为负值)。满足上述条件的一个函数就是常用的逐对加和函数,SP函数。,方法1:先计算多重比对结果的每一列字符的得分,然后求整体多重比对得分,其中,c1,c2,ck是一列中的k个字符,p是关于一对字符相似性的打分函数。SP_score(c1,c2,ck)是多重序列比对中某一列 的得分.,Biocomputing tech
6、nology Multiple sequence alignment,例:图4.1多重比对的倒数第3列的SP得分:,打分函数:P(a,a)=0 P(a,b)=-1(ab)P(a,-)=P(-,b)=-1 P(-,-)=0,逐对计算p(1,2),p(1,3),.,p(1,8),p(2,3),p(2,4),.p(2,8).,p(7,8)的所有得分:(-7-6-5-4-3-2-1)+2=-26然后将一个多重比对所有列的得分全部加起来,其和即为该多重比对的得分。将所有多重比对的得分计算出来进行比较,得分最高的,应该是最好的。,Biocomputing technology Multiple seque
7、nce alignment,多重比对在两条特定序列上的投影,Biocomputing technology Multiple sequence alignment,方法2:先计算多重序列结果的序列两两比对得分,然后计算整体多重比对得分。,是一个多重比对ij是由推演出来的序列si和sj的两两比对,方法1和方法2等价的条件:P(-,-)=0,Biocomputing technology Multiple sequence alignment,多重比对的动态规划算法,多重序列比对的最终目标是通过处理得到一个得分最高(或代价最小)的序列对比排列,从而分析各序列之间的相似性和差异。,Biocomput
8、ing technology Multiple sequence alignment,多重比对的动态规划算法,s1:VSN-Ss2:-SNA-s3:-AS,Biocomputing technology Multiple sequence alignment,前趋节点的个数等于2k-1,问题:计算量巨大时间复杂度为O(2ki=1,.,k si)O(2kNk),Biocomputing technology Multiple sequence alignment,NP-完全问题的定义,Biocomputing technology Multiple sequence alignment,P 类问
9、题为多项式界的问题;NP 类问题是这样一类问题,如果有一个复杂度为多项式的算法解决其中的某个问题,则所有这些问题都在P类中;而NP-完全问题是这样一类问题,如果其中的某个问题存在多项式界的算法,则NP 类中的每一个问题都存在一个多项式界算法。NP 完全问题通常被认为是一些人们难以在有限的时间、空间内对问题求出最佳解的问题,几乎所有专家都认为不可能在多项式时间内准确求解NP-完全问题。,NP-完全问题的近似求解方法,Biocomputing technology Multiple sequence alignment,舍去寻找最优解的要求,寻找对一般问题比较接近 最优解的近似解;2.利用非常规的
10、求解技术求解,例如,利用神经网络、遗传算法等方法进行问题求解。,生物信息学中NP-完全问题的近似求解方法,Biocomputing technology Multiple sequence alignment,1.只求解规模比较小的问题;2.利用动态规划、分支约束等技术减小搜索空间,提高 求解问题的效率;3.针对具体问题的特点,根据实际输入情况,设计实用 求解算法,这样的算法虽然在最坏的情况下其时间复 杂度是非多项式的,但是算法执行的平均效率和复杂 度与多项式的算法相当;4.采用近似算法或者启发式方法,如局部搜索、模拟退火、遗传算法等。对基于SP 模型寻找最优多重序列比对这样一个问题,可以用近
11、似的方法求解,其算法的时间复杂度可用多项式表示。,优化计算方法,标准动态规划算法存在的问题:搜索空间大剪枝技术:将搜索空间限定在一个较小的区域范围内。若问题是搜索一条得分最高(或代价最小)的路径,则在搜索时如果当前路径的得分低于某个下限(或累积代价已经超过某个上限),则对当前路径进行剪枝,即不再搜索当前路径的后续空间。,Biocomputing technology Multiple sequence alignment,Biocomputing technology Multiple sequence alignment,在序列两两比对中,Fickett 和Ukkonen 设计了一种称为定界
12、约束过程(bounding procedure)的方法来缩小搜索空间,减少计算量,其中距离矩阵的上界和下界可以预先确定或动态变化。为了在多维空间上使用动态规划算法,Carrillo 和Lipman 将这种思想引入到多重序列比对,即先进行初步的序列双重比对,以限制进一步做多重序列全面比对所需要的多维空间的大小和计算量,从而克服了多序列的维数、空间和运算量之间的矛盾,Carrillo-Lipman的优化计算方法,Biocomputing technology Multiple sequence alignment,设k 条序列的长度分别为n1n2nk,按照SP 得分模型计算这些序列的最优比对。依然
13、采用动态规划方法,但并不计算超晶格空间中所有的节点,而是仅处理与最优路径“相关”的节点。但是,哪些节点是相关的呢?这需要观察节点在两条序列上的投影。,确定相关节点的方法:假设是关于k 条序列s1s2sk 的最优多重比对。从某个节点向任何两条序列所在的平面投影,如果该投影是这两条序列两两最优比对的一部分(前面一部分),则该节点是与最优比对相关的节点。,问题的提出:,一种计算两条序列经过特定断点的最优比对的算法,Biocomputing technology Multiple sequence alignment,设有两条序列s、t,|s|=m,|t|=n;位点i 将序列s一分为二,位点j将序列t
14、一分为二,则:序列s、t 对于经过特定断点(i、j)的最优比对可分为两个部分:对应于两条序列前缀0:s:i 与0:t:j 的最优比对;对应于两条序列后缀 i:s:m与j:t:n 的最优比对;,例:,Biocomputing technology Multiple sequence alignment,比对两条序列:s=ATTCGG,t=GATTC打分函数:p(a,a)=1,p(a,b)=-1,p(a,-)=p(-,b)=-1,Biocomputing technology Multiple sequence alignment,如果超晶格空间中的一个节点想任意两条序列所在的平面投影,投影在这些
15、”断点”中,则超晶格空间中的这个节点就是与最优路径相关的节点,否则不是相关节点.,小结:在进行多重序列比对时,首先要进行序列的两两比对,其目的就是要找到任意两条序列通过特定断点的最优比对,找到这些断点,然后,将多重比对中的超晶格空间的节点向任意两条序列所在的平面投影,看看投影是否在这些断点上,如果节点向各个平面的投影均在相应的断点上,则这个节点是与多重序列比对的最优路径相关的节点,否则,就不是相关节点,要进行”剪枝”处理.,Biocomputing technology Multiple sequence alignment,(1)设 是关于s1s2sk 的最优比对,如果 SP_score()
16、L,则 score(i,j)Li,j(4-6)其中,score(i,j)是 在si 和sj 所在平面投影的得分,这里,L实际上是最优多重序列比对的一个下限,Lij是序列si 和序列sj 比对得分的一个下限,虽然最优多重比对的投影不一定是两两最优比对,但是我们可以为投影的得分设立一个下限。,判断超晶格空间中一个节点是否是相关节点的方法:,Biocomputing technology Multiple sequence alignment,(2)现在的问题:需要判断超晶格中的一个节点 i=(i1,i2,ik)是否在L 的限制下与最优比对相关。,(3)简单地说,如果一个节点的所有投影满足(4-6)
17、式的 条件,则该节点是相关的。若条件不满足,即score(i,j)小,则该节点不可能是相关的,因此,i 肯定不会处于最优路径上。,(4)公式(4-6)的条件只是一个必要条件,但不是充分条件。满足条件只是说明i 可能处于最优路径,但不一定处于 最优路径。公式(4-6)条件的作用是限制搜索空间,提高 算法的实施效率。,Biocomputing technology Multiple sequence alignment,(5)将判断条件公式(4-6)进一步具体化,则对于所有的1xyk,如果i 满足 Cx,y ix,iy Lx,y(4-7)则i 是相关的。这里,Cx,y是序列sx 和sy 的总得分矩
18、阵;Cx,y ix,iy 表示在点 ix,iy 处的值,即 经过ix,iy断点的sx和sy的最优比对得分;ix,iy是断点;Lx,y是sx 和sy 的比对得分的下限,注意:尽管不是所有的相关节点均参与最优比对,但只有与最优路径相关的节点才参与最优比对.,Biocomputing technology Multiple sequence alignment,(6)判断非相关节点的方法:假设是关于s1s2sk 的最优比对,其所对应的路径通过节点 i=(i1,i2,ix,iy,ik),则:Cx,y ix,iy Score(i,j)Lx,y反之,如果 Cx,y ix,iy Lx,y,则多重序列最优比对
19、路径不会经过节点 i=(i1,i2,ix,iy,ik),因而,该超晶格节点是非相关节点.,Biocomputing technology Multiple sequence alignment,为了得到一个合理的下限 L,我们可以任选一个包含所有序列的多重比对,计算其得分,以此作为 L。若选取的 L 接近于最优值,算法速度将大大提高。注意:L 的值不能超过最优值,否则算法出错。在实现上述优化计算方法时,必须非常仔细。不可能对超晶格中的每一个节点都进行上述判断,否则,计算时间不会有多大的减少。我们需要一种完全消除无关单元的办法,以便不需再处理它们。下面介绍一种可能的策略:,Biocomputin
20、g technology Multiple sequence alignment,在计算机中实现“剪枝”技术的措施-1:从超晶格的零点0=(0,0,0)出发,此节点总 是相关的,并影响依赖于它的节点.每个这样的节点 又有它自己的受影响的节点,如此展开,直至达到在 最终角落的节点(n1n2nk).(2)以数组a 保存各节点的计算结果.如果在计算a j 时用到i,称节点i 影响另一个节点j,又称,节点j 依赖于节点i。每个节点依赖于至多2k-1个其它节点,也至多影响 2k-1个其它节点.(3)节点i 和节点j 关系的另一特征是:b=j-i b是一个非零的二进向量.,Biocomputing tec
21、hnology Multiple sequence alignment,在计算机中实现“剪枝”技术的措施-2:,(4)为了便于处理,设置一个缓冲区,该缓冲区内仅存放 相关节点的后续节点。(5)首先将0 放入其中。(6)当节点i 进入缓冲区时,其对应的值a i 被初始化,然后a i 的值在随后的阶段中被更新。当节点i 离开缓冲区时,其值即为该点真正的值,并用 于其他节点(依赖于此节点)的计算。(7)节点i 的后续节点是否要计算,还取决于i 是否为相关 节点,若不是,则不再计算其后续的其他节点。,具体实现过程:,Biocomputing technology Multiple sequence a
22、lignment,设节点j 是一个依赖于节点i 的相关节点,如果j 不在缓冲区内,则将其放入缓冲区,并计算 a j a i+SP_Score(Colum(s,i,b)(3)如果j 早已在缓冲区中,则按下式更新 a j max(a j,a i+SP_Score(Colum(s,i,b)注意:Carrilo-Lipman 算法要求待比较的多个序列具有较大 的相似性,并且序列数不能太多。,4.2.4 星形比对,Biocomputing technology Multiple sequence alignment,*启发式方法作为首选。,*启发式方法不一定保证最终能得到最优解,但在大多数 情况下,其计
23、算结果接近于最优结果。,*启发式这类方法能够大大减少所需的计算时间,加快计 算速度。,*渐进法是多重序列比对中常用到的启发式方法。其基本 思想是将序列多重比对转化为序列两两比对,逐渐将两 两比对组合起来,最终形成完整的多序列比对。,*组合两两序列比对的方法有:星形结构或者树形结构。,1.星形比对的基本思想:,星形比对是一种启发式方法,首先由Gusfield 提出。在给定的若干序列中,选择一个核心序列,通过该序列与其它序列的两两比对形成所有序列的多重比对,从而使得 在核心序列和任何一个其它序列方向的投影是最优的两两比对。,Biocomputing technology Multiple sequ
24、ence alignment,2.星形比对算法概述-1,Biocomputing technology Multiple sequence alignment,*设s1,s2,sk是k 条待比对的序列。*假设已知核心序列是sc,1c k,则可以利用标准的 动态规划算法求出所有sc 和si 的最优两两比对。这个工作的时间复杂度为O(kn2),假设所有序列的长度约为n。*将这些序列的两两比对聚集起来,并采用“只要是空位,则 永远是空位”的原则。*聚集过程从某一个两两比对开始,然后逐步加上其他的两 两比对。在这个过程中,逐步增加sc中的空位字符,以适应 其他的比对,但决不删除sc中已存在的空位字符。
25、,2.星形比对算法概述-2,Biocomputing technology Multiple sequence alignment,*随着后续比对的不断加入,一方面我们有一个由sc指导的、已经建立好的部分序列的多重比对,另一方面我们有sc与 一个新序列之间的比对。在两种比对中我们插入尽可能少 而必要的空位,以保持与扩展的sc序列相匹配。然后,将新 扩展的序列加入序列群中,且它和其它扩展的序列具有相 同的长度。*这个过程一直进行到所有的两两比对都加入以后结束,这 一步所需的计算量为O(k2n)。*算法总的时间复杂度为O(kn2+k2n)。,scs1s2sk,(sc,s1)(sc,s2)(sc,s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 生物计算技术 生物 计算 技术 多重 序列 分析
链接地址:https://www.31ppt.com/p-5069339.html