一种基于动态规划的全局双序列比对优化算法

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:S82415127
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:序列比对是生物信息处理中非常重要的一类方法,基本的序列比对算法是基于动态规划思想提出的。本文提出了一种基于动态规划思想的全局双序列比对优化算法(Optimized Global Pairwise Sequence Alignment based on the idea of Dynamic Programming) OGPSADP,在保持基本动态规划敏感性的前提下,GOPSA方法计算替换矩阵时只需存储当前相邻两列的元素,同时引用checkpoint技术以减少计算迭代次数,有效降低了时间复杂度和空间复杂度。
  关键词:生物信息学;序列全局比对;动态规划;替换矩阵
  中图分类号:TP301文献标识码:A文章编号:1009-3044(2007)06-11594-03
  
  1 引言
  生物信息学是生物学的一个分支,它采用信息科学、计算机科学、生物数学、比较生物学等学科的观点和方法对生命的现象及其组成分子(核酸、蛋白质等)进行研究,主要研究生命中的本质和规律,包括物质组成、结构功能、生命体的能量和信息的交换传递等。
  序列比对是生物学中最基本、最重要的方法,是生物学计算的核心。序列比对又叫序列联配,其意义在于从核酸、氨基酸的层次中分析序列的相似性,推测其结构功能及进化上的联系,是基因识别、分子进化、生命起源研究的基础[1]。最常见的比对是蛋白质序列之间或核酸序列之间的两两比对,通过比较两个序列之间的相似性区域,寻找二者可能的分子进化关系。进一步的比对是将多个蛋白质序列或核酸序列同时进行比较,寻找这些有进化关系的序列之间共同的保守区域、位点和剖面信息,从而探索导致它们产生相同功能的序列模式。
  
  2 序列比对
  序列同源(homology)指的是序列来自相同的祖先,意味着这些序列具有相同的进化历史,而序列的相似性(similarity)指的是两序列在某参数条件下的相像,它可以用相同残基的百分比或是其他的方法来表示。序列之间的相似度是可以量化的参数,而序列是否同源需要有进化事实的验证,显著的相似性通常意味着同源。
  序列比对是运用某种特定的数学模型或算法,找出两个或多个序列之间的最大匹配碱基或残基数,比对算法的结果在很大程度上反映了序列之间的相似性程度以及它们的生物学特征[2]。序列比对根据同时进行比对的序列数目多少可分为双序列比对(pair-wise sequence alignment)和多序列比对(multiple sequence alinment)。序列比对从比对范围考虑也可分为全局比对(global alignment)和局部比对(local alignment),全局比对考虑序列的全局相似性,局部比对考虑序列片断之间的相似性。如下所示。
  全局比对:
  LGPSSKQTGKGS-SRIWDN
  LN-ITKSAGKGAIMRLGDA
  局部比对:
  在实际应用中,用全局比对方法企图找出只有局部相似性的两个序列之间的关系显然是徒劳的;而用局部比对得到的局部相似性结果则同样不能说明这两个序列的三维结构或折叠方式是否相同。从这个意义上讲,局部相似性搜索比整体相似性比对更加灵敏,也更具有生物学意义[3]。
  
  3 动态规划思想
  动态规划[4]解决序列比对问题的基本思想:使用迭代法计算出两个序列的相似分值,并存入一个得分矩阵中,根据得分矩阵回溯寻找最优的比对序列。
  全局比对中的动态规划:
  假设存在两条序列As=(a1a2…an)和Bs=(b1b2…bn),如图1所示,将As和Bs分别作为横坐标和纵坐标放置,组成一个路径矩阵,即得分矩阵,矩阵元素(i,j)值为比对的得分值。在得分矩阵中到达位置为(i,j)的某一个元素有三种可能的路径:通过位置i-1,j-1的对角方向,没有空位罚分;通过列j的垂直方向,通过行i的水平方向,空位罚分的值取决于插入空格的个数。
  得分矩阵的元素值通过公式(1)进行迭代计算,得分矩阵的元素值的迭代方式如图2所示。
  图2 迭代逻辑图
  其中Si,j=s(a1a2…an, b1b2…bn,)是到达序列As中第i位字符与序列Bs中第j位字符的比对得分值;S(ai,bi)是根据替换矩阵得到的ai和bi匹配得分;wx和wy是As和Bs序列的i和j位置前长度为x和y的空位罚分,Sij是动态决定序列As和Bs的子序列的最优得分,矩阵的每个位置都具有得分时,序列整体的最优比对得分将是矩阵最后一行一列的位置的得分。要决定两条序列的最优比对,需要用到回溯技术,即沿着产生最高序列比对得分的路径向相反方向移动,记录相应位置的序列残基字母,这样就可以得到最优的序列的比对方式。
  计算得分矩阵的算法描述如下:
  步骤一:
  步骤二:
  For (i=|As|; j=|Bs|; i>0 && j>0) do
  If S[i,j]=S[i-1,j-1]+σ(a[i],b[j]) then i--, j--
  else if S[i,j]=S[i-1,j]+σ(a[i],_) then i--, insert(“_”,Bs,j)
  else if S[i,j]=S[i,j-1]+σ(-,T[j]) then j--, insert(“_”,As,i)
  以图1为例,序列As=“acgctg”,Bs=“catgt”,记分函数:σ(x,x)=+2,σ(x,y)=σ(x,-)=σ(-,y)=-1,x和y表示字符变量,|As|、|Bs|表示序列As和Bs的长度。首先要计算矩阵S,元素位置为(0,0)的S[0,0]赋值0,然后根据上述动态规划算法步骤1连续和循环计算矩阵的各个元素。然后,从矩阵的右下角元素开始根据动态规划算法步骤2回溯寻找最优路径。经过动态规划算法得到如图1所示得分矩阵,图中箭头表示回溯路径。
  比对结果1:
  A:acgctg-
  B:-c-atgt
  比对结果2:
  A:acgctg-
  B:-ca-tgt
  比对结果3:
  A:-acgctg
  B:catg-t-
  从上述的算法描述和举例中可以看出,若m=|As|,n=|Bs|,基本动态规划算法的时间和空间复杂度为O(m×n)。随着目前研究的序列长度的增加,利用基本动态规划方法解决双序列比对问题无法满足实际的需要。
  
  4 OGPSADP算法
  OGPSADP算法的基本思想是:在U矩阵的计算过程中只存储前一列和当前列,从而节省存储空间,增加checkpoint点的个数,可以减少迭代次数;且在U矩阵计算过程中同时记录元素的来源关系,最佳比对路径的获得不需要回溯,减少运算时间。
  (1)基于得分矩阵S计算替换矩阵U,矩阵元素U[ab,d]表示得分矩阵S中沿着序列As在对角线ab方向上值为d最大距离值。U矩阵的行与S矩阵的对角线相对应的对角线相对应,列与S矩阵中“等高”的固定计分值对应。ab=a-b对应M对角线,d对应S矩阵中的得分值,U[ab,d]的值为a,该值由S矩阵中ab、ab+1和ab-1上值为d-1的元素所决定。计算过程中,只存储相邻两列的元素,同时记录矩阵元素的数据来源关系,以便于不用回溯就可以获得最佳比对结果。
  U[ab,d]=max a s.t.D[a,b]=d where ab=a-b
  =-infinity if no such a exists
  U[0,0]=max a s.t. As[1…a]=Bs[1…b]
  U[ab,d]=-infinity, if |ab|>d
  {outer loop,iterated until U[|As|-|Bs|,d]=|As|}
  U[ab,d]=max(U[ab+1,d-insertCost],
  U[ab,d-mismatchCost]+1,
  U[ab-1,d-deleteCost]+1)
  {inner Loop,extends diagonal on a run of matches}
  While (As[U[ab,d]+1]=Bs[U[ab,d]-ab+1])
  U[ab,d]+=1
  (2)将替换矩阵U均匀地分割成k2个小块,对每一块从上到下,和从下到上两个方向向中间行计算,根据计算的结果在中间行得到回溯路径经过该行的点,这个点成为一个checkpoint点,checkpoint点将矩阵分为左上角和右下角的两个矩阵部分,然后接着对这两个字矩阵进行同样的处理,直到最后分割的子矩阵只剩下一行或列,这样得到的所有checkpoint点构成最优化路径。
  对于基本动态规划算法Needleman-Wunsch、OGPSADP算法进行了对比试验。从美国国家生物信息技术中心的核算序列数据库Genbank中选取两对长度大约为1000、5000的DNA序列,所用参数:单一的记分矩阵,线性空位罚分,试验结果如下表1。
  表1 算法空间需求和运行时间比较
  从两组试验结果可看出,OGPSADP算法的运行时间和存储空间需求小于基本动态规划算法。
  
  5 结束语
  目前在生物信息学领域中用于两两序列全局比对的算法研究并不多,许多可用的比对软件是基于局部比对算法或者直接对局部比对结果进一步加工得到全局比对结果,但是得到的结果并不理想。OGPSADP算法能够达到序列大片段连续对齐,并且对碱基突变、插入和缺失的频率非常小的序列的全局比对具有较满意的计算效率和精度,能有效降低时间和空间复杂度。经过实验发现,将算法用于序列同源性研究和进化分析时,效果并不理想。作者下一步的工作是将此双序列比对算法推广到多序列比对中。
  参考文献:
  [1] Martin Tompa. Biological Sequence Analysis. Technical Report of Washington University. Department of Computer Sciences, 2000.
  [2] T K Attwood, D J Parry-Smith. 罗静初,等译. 生物信息学概论[M]. 北京:北京大学出版社,2001:141-145.
  [3] 张敏. 生物序列比对算法研究现状与展望[J]. 大连大学学报,2004,25(4):75-78.
  [4] W.J.Kent, A.M.Zahler. Conservation, regulation, synteny, and introns in a large-scale C.briggsae-C.elegans genome alignment based on segment-to-segment, comparison. Proc. Natl. Acad. Sci. USA, 1996,93(22):12098-12103.
  本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
2007年-2009年的金融危机是20世纪30年代大萧条以来最严重的一次全球性经济危机。危机过后,人们开始反思金融创新和混业经营给金融系统带来的巨大的不稳定性。相关的研究有很
货币需求分析是货币政策制定中的一项重要内容。通过介绍我国货币供给的现状,显而易见,对我国货币需求进行分析研究是非常有意义的。   本文首先结合国内外货币需求相关理
一些研究表明,所有权和控制权分离在东亚和西欧的一些家族控制上市公司中尤为突出。在内部人控制的公司中,公司的大股东可以通过对资本结构的安排,以增发、配股等方式进行股
本文主要分析了成品油(汽油、煤油和柴油)的消费特点,根据1985-2009年间的数据对成品油消费特点进行概括,发现成品油消费量一直保持增长势头,并得出25年来成品油消费平均增长
介绍了计算机网络入侵检测系统的工作原理和模型,并对其工作过程中的关键技术——信息收集和信息分析进行了详尽探讨,最后介绍了一个完整的计算机网络入侵检测系统的功能及其
后进生通常是那些在品行或学习等方面暂时落后的学生.他们在一个班里数量不多,但因学习落后或常犯错误,具有一定的破坏性,给教师工作带来一些麻烦.因此,教师要做好后进生的转
期刊
物理学的发展是物理科学体系中重要的组成部分,因此在物理教学的过程中,增强物理教学的历史感是是十分有必要的。主要探讨了物理学史在物理教学中能够起到的积极作用,以期在
本文提出了一个定理并给出了详细证明,该定理给出了n-可扩图的一个充分必要条件.
在世界经济一体化与全球化浪潮影响下,在2001年中国正式宣布加入世界贸易组织,并且承诺在未来五年内,中国将逐步放开国内的金融市场。2006年底,随着我国银行业全面对外开放,越来越