生物序列联配中的算法_002课件

上传人:痛*** 文档编号:241563383 上传时间:2024-07-04 格式:PPT 页数:73 大小:795.54KB
返回 下载 相关 举报
生物序列联配中的算法_002课件_第1页
第1页 / 共73页
生物序列联配中的算法_002课件_第2页
第2页 / 共73页
生物序列联配中的算法_002课件_第3页
第3页 / 共73页
点击查看更多>>
资源描述
生物序列联配中的算法31、别人笑我太疯癫,我笑他人看不穿。(名言网)32、我不想听失意者的哭泣,抱怨者的牢骚,这是羊群中的瘟疫,我不能被它传染。我要尽量避免绝望,辛勤耕耘,忍受苦楚。我一试再试,争取每天的成功,避免以失败收常在别人停滞不前时,我继续拼搏。33、如果惧怕前面跌宕的山岩,生命就永远只能是死水一潭。34、当你眼泪忍不住要流出来的时候,睁大眼睛,千万别眨眼!你会看到世界由清晰变模糊的全过程,心会在你泪水落下的那一刻变得清澈明晰。盐。注定要融化的,也许是用眼泪的方式。35、不要以为自己成功一次就可以了,也不要以为过去的光荣可以被永远肯定。DNA(3)n nDNA的双螺旋结构 碱基对之间的互补能力碱基对之间的互补能力DNA(4)n nDNA的复制uu在DNA解旋酶的作用 下两条链分离开,分 别作为一个模板,在 聚合酶的作用下合成 一条新链。RNA、转录和翻译n nRNA(核糖核酸):单链结构、尿嘧啶U代替胸腺嘧啶T、位于细胞核和细胞质中。n n转录:DNA链 RNA链 信使RNA(mRNA),启动子。n n翻译:mRNA上携带遗传信息在核糖体中合成蛋白质的过程。变异n n进化过程中由于不正确的复制,使DNA内容发生局部的改变。n n变异的种类主要有以下三种:uu替代(substitution)uu插入或删除(insertion or deletion)indeluu重排(rearrangement)蛋白质n n由氨基酸依次链接形成在生物体中总共有20种氨基酸。n n蛋白有十分复杂的三维结构。其三维机构决定了蛋白质的功能。基 因n n什么是基因?uuDNA上具有特定功能的一个片断,负责一种特定性状的表达。一般来讲,一个基因只编码一个蛋白质。基因组n n任何一条染色体上都带有许多基因,一条高等生物的染色体上可能带有成千上万个基因,一个细胞中的全部基因序列及其间隔序列统称为genomes(基因组)。DNA上的基因 基因基因的编码n n基因编码是一个逻辑的映射,表明存储在DNA和mRNA中的基因信息决定什么样的蛋白质序列。n n每个碱基三元组称为一个密码子(codon)n n碱基组成的三元组的排列共有4364种,而氨基酸共有20种类型,所以不同的密码子可能表示同一种氨基酸。带来的问题n n序列排列问题 n n基因组的重排问题 n n蛋白质结构和功能的预测 n n基因(外显子、内含子)查找问题 n n序列装配(Sequence Assembly)问题生物序列相似性的比较动机n n在生物学的研究中,将未知序列同已知序列进行比较分析已经成为一种强有力的研究手段,生物学领域中绝大部分的问题在计算机科学领域中主要体现为序列或字符串的问题。序列联配问题的分类 如果两个序列具有足够的相似性,如果两个序列具有足够的相似性,则认为两者具有同源性。则认为两者具有同源性。n n序列相似性的比较(两条序列的联配)n n序列的分类n n序列的排列n n多序列的联配两条序列联配问题的分类n n全局联配(Global Alignment)n n局部联配(Local Alignment)n n空位处罚(Gap Penalty)全局联配(1)定义n n定义1:两个任意的字符 x和y,(x,y)表示表x和y比较时的分值。(x,x)=2,(x,y)=(x,-)=(-,y)=-1n n定义2:S=s1sn和T=t1tm,其全局联配A可以用序列S和T来表示,其中:(1)|S|=|T|;(2)将S和T中的空字符除去后所得到的序列分别为S和T;联配A的分值Score为:全局联配(2)原始算法n n输入:序列S和T,其中|S|=|T|=n n n输出:S和T的最优联配 n nfor i=0 to n dofor i=0 to n do for (S for (S的所有的子序列的所有的子序列A A,其中其中|A|=i)doA|=i)do for(T for(T的所有的子序列的所有的子序列B B,其中其中|B|=i)do B|=i)do 全局联配(3)n n动态规划DP(Dynamic Programming)n nSmith-Waterman 算法uu计算出两个序列的相似分值,存于一个矩阵中。(相似度矩阵、DP矩阵)uu根据此矩阵,按照动态规划的方法寻找最优的联配序列。全局联配(4)n n前提条件n n递归关系全局联配(5)n n在得到相似度矩阵后,通过动态规划回溯(Traceback)的方法可获得序列的最优联配序列。例:S=“a c g c t g”和T=“c a t g t”(x,x)=2,(x,y)=(x,-)=(-,y)=-1 j ji i0 01 1c c2 2a a3 3t t4 4g g5 5t t 0 00 0-1-1-2-2-3-3-4-4-5-5 1 1 a a-1-1-1-11 10 0-1-1-2-2 2 2 c c-2-21 10 00 0-1-1-2-2 3 3 g g-3-30 00 0-1-12 21 1 4 4 c c-4-4-1-1-1-1-1-11 11 1 5 5 t t-5-5-2-2-2-21 10 03 3 6 6 g g-6-6-3-3-3-30 03 32 2n n三种可能的最优联配序列:1.S:a c g c t g -2.T:-c a t g t 2.S:a c g c t g -T:-c a t g t 3.S:-a c g c t g T:c a t g -t -局部联配(1)n n两条序列在一些局部的区域内具有很高的相似度。n n在生物学中局部联配比全局联配更具有实际的意义。uu两条DNA长序列,可能只在很小的区域内(密码区)存在关系。uu不同家族的蛋白质往往具有功能和结构上的相同的一些区域。局部联配(2)n n前提条件前提条件:V(i,0)=0;V(0,j)=0;n n递归关系递归关系:找出i*和j*,使得:局部联配(3)n n对全局联配策略稍作修改可得到局部最优联配算法。n n联配的路径不需要到达搜索图的尽头,如果某种联配的分值不会因为增加联配的数量而增加时,这种联配就是最佳的。n n依赖于记分系统的性质:因为某种路径的记分会在不匹配的序列段减少,当分值降为零时,路径的延展将会终止,一个新的路径就会产生。局部联配(4)S=“a b c x d e x”,T=“x x x c d e”记分函数(x,y):(x,x)=2,(x,y)=(x,-)=(-,y)=-1 j j i i0 01 1x x2 2x x3 3x x4 4c c5 5d d6 6e e 0 0 0 00 00 00 00 00 00 0 1 1 a a0 00 00 00 00 00 00 0 2 2 b b0 00 00 00 00 00 00 0 3 3 c c0 00 00 00 02 21 10 0 4 4 x x0 02 22 22 21 11 10 0 5 5 d d0 01 11 11 11 13 32 2 6 6 e e0 00 00 00 00 02 25 5 7 7 x x0 02 22 22 21 11 14 4n nS=“a b c x d e x”,T=“x x x c d e”局部最优联配是:c x d e c-d e或 x-d e x c d e 空位处罚(1)n n空位:序列中任意连续的尽可能长的空格。n n空位的引入是为了补偿那些插入或缺失,但是在序列的联配中引入的空位不能太多,否则会使序列的排列变得面目全非。n n每引入一个空位,联配的分值都会有所扣除,常见的罚分规则主要有两种:uu空位权值恒定模型uu仿射空位处罚模型 空位处罚(2)n n空位权值恒定模型:在每个空位中的空格的分值为零,即:(x,-)=(-,y)=0 n n联配的分值为:其中,Wg为开放一个空位的罚分 空位处罚(3)n n仿射空位处罚模型(Affine Gap Model)用一个附加的罚分比例去乘空位的长度 Wg+qWs n n联配的分值为:空位处罚(4)初始条件初始条件:V V(0,0)=0(0,0)=0;V V(i i,0)=,0)=E E(i,i,0)=0)=WWg g+iWiWs s;V V(0,(0,j j)=)=F F(0(0,j,j)=)=WWg g+jWjWs s;递归条件递归条件:V V(i,ji,j)=)=maxmax G G(i,ji,j),),E E(i,ji,j),),F F(i,ji,j);G G(i,ji,j)=)=V V(i i-1-1,j,j-1)+(-1)+(S S i i,T T j j);E E(i,ji,j)=)=maxmax E E(i,ji,j-1)+-1)+WWs s,V V(i,ji,j-1)+-1)+WWg g+WWs s F F(i,ji,j)=)=maxmax F F(i i-1-1,j,j)+)+WWs s,V V(i i-1-1,j,j)+)+WWg g+WWs s.n n利用动态规划计算序列最优联配的算法的复杂度分析:t t时间复杂度;O(nm)t t空间复杂度:O(n+m)最新的相关的研究n n在动态规划算法的基础上提出了一种新的方法,解决在序列局部联配的最优排列中经常出现的马赛克问题(在最优排列中间经常出现的相似度很低的保守区域)n n把hash表方法引入到基因组序列的局部联配问题中,同时提高了原有算法的效率和质量 多序列联配(1)n n两条序列联配问题的一般化推广n n动机:携带更多的消息、生物学家的一种重要手段。n nDNA或蛋白质数据库容量的指数级的增长,即使使用很简单的记分函数也很难找到一种在有效时间内的解决方法,而几乎所有的近似算法和许多的启发式算法,实际上都是在算法的计算速度和获得最佳联配结果的敏感性之间寻找一种权衡(tradeoff)策略。多序列联配(2)n nrigorous算法uu两条序列 多条序列,NP hardn ntree_based算法和 iterative算法uu首先从序列中找出两条相似度最大的联配,然后按照相似度递减的顺序连续添加一些序列到最优的联配序列中。uu序列非常接近或属于一个同源的家族 uu原始算法基础上的近似算法,但是它们也是非常耗时的。多序列联配(3)n n记分方法:用函数(x,y)来计算字符x和y之间的距离,两个序列的联配的距离分值我们用V来表示:n nk条序列联配的分值:为k条序列中任意两条序列(共有Ck2条)的分值(距离)V之和,用SP (Sum_of_Pairs)来表示:多序列联配(4)n n中心星算法中心星算法输入:一组含有输入:一组含有k k条序列的集合条序列的集合 uu找出序列找出序列S St t,S St t,使得使得 ititD D(S Si i,S,St t)的值最小,令的值最小,令A A =S St t uu逐次地添加逐次地添加S Si i-S St t 到到A A中,并使中,并使S Si i与与S St t的联配的值的联配的值最小;假设最小;假设S S1 1,S S2 2,S Si i-1-1已添加到已添加到A A中,由于在分别中,由于在分别和和S St t进行联配的过程中需要加入一些空格,故此时进行联配的过程中需要加入一些空格,故此时A A为:为:A A=S S1 1,S S2 2,S Si i-1-1,S S t t。添加添加S Si i到到A A中,按照中,按照两条序列联配的动态规划算法比较两条序列联配的动态规划算法比较S S t t和和S Si i,分别产生分别产生新的序列新的序列S St t 和和S Si i,再按照再按照S St t 中添加空格的位置调节中添加空格的位置调节序列序列S S1 1,S S2 2,S Si+i+1 1 为为S S1 1,S S2 2,S Si i-1-1,并用并用S St t 替替换换S St t。n n借助硬件来完成动态规划的算法 n n采用并行的固件,把问题有效地分配到多个处理器上运行,最后再把各处理器的运算结果收集起来 n n借助于一些比最初的动态规划算法更快的启发式算法。以降低运算结果的质量为代价来提高计算速度的。启发式算法-FASTAn n基本思想是:一个能够揭示出真实的序列关系的联配至少包含一个两个序列都拥有的字(片断),把查询序列中的所用字编成索引,然后在数据库搜索时查询这些索引,以检索出可能的匹配,这样那些命中的字很快被鉴定出来。1.1.确定参数ktup,在两个序列中查找长度为ktup的、相匹配的片段(增强点)。连续的增强点在动态规划矩阵中主对角线附近。为了提高速度,可以通过查询表格或hash表来完成,然后在表格中搜索与另一条序列相匹配的、长度为ktup的片段。2.2.在同一条对角线中临近的增强点成为一个增强段。每一个增强点都赋予一个正的分值,一个增强段中相邻的两个增强点之间的不匹配区域赋予一定的负值。一个增强段对应于一段相匹配的子序列,分值最高的段被标记为init1。3.3.3.引 入 indel。把 那 些 没 有 重 叠(non-overlap)的增强段拼接起来(增强段的分值之和减去空位处罚)。分值最高的区域记为initn。4.对最有可能的匹配序列进一步评分:以增强段init1所在的对角线为中心,划分出一个较狭窄的对角线带,利用S-W算法,来获得分值最高的局部联配,记作opt。5.按照initn和opt的分值,对分值最高的序列再进行一次S-W联配。FASTA对每一个检索到的联配都提供一个统计学显著性的评估,以判断该联配的意义。n nFASTA对DNA序列搜索的结果要比对蛋白质序列搜索的结果更敏感,因为它对数据库的每一次搜索都只有一个最佳的联配,这样对于蛋白质序列而言,一些有意义的联配可能被错过。启发式算法-BLASTn n基本思想是:通过产生数量更少的但质量更好的增强点来提高速度。n nBALST算法是建立在严格的统计学的基础之上的。它集中于发现具有较高的相似性的局部联配,且局部联配中不能含有空位。n n由于局部联配的限制条件,在大多数情况下联配会被分解为若干个明显的HSP(High-score Sequence Pairs)。1.首先确定一个终止值S、步长参数w和一个阀值t,S值通常是基于统计学的原理指明一个预期的终止E值,然后软件会在考虑搜索背景性质的基础上计算出合适的S值。使要联配的序列中包含一个分值不小于S的HSP。2.引入邻近字串的思想:不需要字串确切地匹配,当有一个字串的分值高于t时,BALST就宣称找到了一个选中的字串。为了提高速度,允许较长的字串长度W。W值很少变化,这样,t值就成为权衡速度和敏感度的参数。3.一个字串选中后,程序会进行没有空位的局部寻优,联配的最低分值是S,当联配延伸时会遇到一些负的分值,使得联配的分值下降,当下降的分值小于S时,命中的延伸就会终止。这样系统会减少消耗于毫无指望的选中延伸的时间,使系统的性能得以改进。PSI-BLASTn nPosition Specific Iterated BLASTn n在1997年提出了对BLAST程序的改进算法,在序列的联配中允许出现空位,提高了搜索速度、敏感度和实用性。uu对一个选中字串长度标准的延伸 uu利用profile(表头文件)的数据结构来进行搜索 n n在利用动态规划矩阵进行联配时,以步长为2w来搜索每一条对角线,这样可以找到一些长度为2w的选中的字。n n改进的算法中允许位于不同的对角线的两个片段拼接在一起。在拼接的过程中要涉及到indel操作,与FASTA算法只产生一个最佳联配不同,位于不同对角线的两个片段拼接在一起的前提条件是:拼接后片段的分值不小于某一个终止值。n n执行通常的BLAST算法,使用一种不同的记分方式,根据高度显著联配(HSPs)的最高分值建立一个最初的profile。n n根据该profile反复利用BLAST算法对数据库进行搜索,这一步实际上是根据表头文件的统计结果扩展局部联配。这一过程是反复进行的,直到再没有发现新的有意义的匹配为止。由于在每一轮都会有新的片段加入,因此在操作过程中profile需要在每一个循环结束之后更新。生物序列联配中的并行算法两条序列联配的并行算法 uu根据序列的相似性比较,找出两者的最佳匹配 uu找出从一条序列转化到另一条序列的最佳路径n n核心:动态规划Lander的处理方法n n如果已知第i-1和 i-2行反对角线上 的各项值,那么 第i行反对角线上 各项的值可以并 行计算。?D12D21D31D11D22D13Dm,n处理器01m时间步12m+n-2m+n-1S-W的并行处理Row-Wavefront算法和Diagonal Wavefront算法 Row-Wavefront算法是让每个处理器顺序处理动态规划矩阵中的每一行,当一个处理器检测到它所需要的上一行矩阵的元素还没有计算出来时,该处理器就阻塞自己,直到所需要的元素计算出来。处理器1处理器2处理器3序列S序列TS-W的并行处理Row-Wavefront算法和Diagonal Wavefront算法 Diagonal Wavefront算法中所有的处理器同时沿着矩阵的一条反对角线进行计算,当一条反对角线的元素全部计算完,才转到下一条反对角线计算。当一个处理器空闲的时候,它从当前的反对角线上寻找一个还没有计算的元素进行计算。这种算法没有严格的处理器计算顺序序列T序列SHuang的处理方法n n采用了分而治之的策略对回溯算法进行了改进:按照中间的一条反对角线来分割动态规划矩阵。(0,0)r(k,l)(m,n)动态规划的并行计算n n基于流水线的动态规划算法n n反对角线的动态规划算法 n n反对角线分块的动态规划算法 uu粗粒度分块策略 uu细粒度分块策略uuH-V(Horizontal-Vertical)分块策略基于流水线的动态规划算法反对角线分块的动态规划算法 n n粗粒度分块策略n n细粒度分块策略n nH-V(Horizontal-Vertical)分块策略利用前趋计算的并行算法 n nPrefix Computation 多序列联配的并行算法 n n利用预测计算(Speculative computation)技术的并行算法 n n分而治之策略的并行算法 Berger_Munson算法 best_score=initial_score();while(stop criteria is not met)1 current_score=calculate(seq,gap_positions);2 flag=decide(current_score,best_score);3 seq=modify(seq,flag,gap_positions);第一步:首先输入n条序列,任意分成两组。然后开始计算这两组序列之间的两条序列的联配分值,在这一步中新的空位的位置gap_positions被保存下来以备第三步调用。第二步:设置一个标记flag,如果一个新的联配的分值高于当前的最佳联配队列的分值,则flag标记为A(Accepted),否则标记为R(Rejected);第三步:如果在第二步中flag标记为A,则根据第一步中的gap_positions来修改当前的联配队列,以作为下一次迭代的初始值,同时更新联配队列的分值,当连续遇到q个R时,算法结束。Berger_Munson算法的并行化n n每一次迭代内的三个阶段是相互依赖;第i次迭代可能会用到第i-1次迭代的结果。n n预测计算的基本思想是:利用当前状态的输入参数来推断未来状态的计算结果。n n如果有连续的迭代被标记为R,那么这些迭代之间是相互独立的,可以并行处理。迭代次数迭代次数1 2 3 4 5 6 71 2 3 4 5 6 7结果序列结果序列AAAAARAAARRARRRARRRARRRARRRRRAAAAARAAARRARRRARRRARRRARRRRR采用分而治之策略的并行算法 谢谢各位!6、最大的骄傲于最大的自卑都表示心灵的最软弱无力。、最大的骄傲于最大的自卑都表示心灵的最软弱无力。斯宾诺莎斯宾诺莎7、自知之明是最难得的知识。、自知之明是最难得的知识。西班牙西班牙8、勇气通往天堂,怯懦通往地狱。、勇气通往天堂,怯懦通往地狱。塞内加塞内加9、有时候读书是一种巧妙地避开思考的方法。、有时候读书是一种巧妙地避开思考的方法。赫尔普斯赫尔普斯10、阅读一切好书如同和过去最杰出的人谈话。、阅读一切好书如同和过去最杰出的人谈话。笛卡儿笛卡儿 Thank you拯畏怖汾关炉烹霉躲渠早膘岸缅兰辆坐蔬光膊列板哮瞥疹傻俘源拯割宜跟三叉神经痛-治疗三叉神经痛-治疗
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!