当研究一条DNA或蛋白质序列时,主要关注的是其包含的遗传信息;当研究两条或多条DNA或蛋白质序列时,则主要关注不同序列之间的差别与联系。在生物信息学中,对生物大分子的序列比对是非常基本的工作。
目前关于进化的基本思想就是生物结构由简单到复杂,物种由少到多。在生命进化过程中,DNA可能会经历突变(碱基替换)、插入、缺失等变化,使得不同物种的DNA序列同时具有相似性与差异性。序列比对(sequence alignment)主要思想就是运用特定的算法找出两个或多个序列之间产生最大相似性得分的空格插入和序列排列方案,其要解决的主要问题为DNA序列当中的插入与缺失变化。根据比对的序列数目不同,可以分为双序列比对(pairwise alignment)、多序列比对(multiple alignment)。序列比对多基于动态规划算法(dynamic programming algorithm),揭示序列中的保守和非保守区域,分析序列的进化趋势。
描述序列之间关系的概念有同源(homolog)、相似(similarity)、距离(distance)。同源是一个定性概念,指不同序列具有一个共同的进化上的祖先;相似和距离则都是定量概念,表示两条序列之间的相似程度和差异程度。如果两条序列是同源的,那么其具有较高的相似性,但是由于趋同进化(convergent evolution)的存在,具有较高的相似性不一定同源。
同源可分为垂直同源(ortholog)和水平同源(paralog),垂直同源为共同祖先的不同进化分支,水平同源主要由基因组复制事件产生,例如动物α球蛋白和β球蛋白的同源关系如下所示:
直系同源体通常有相同或相似的功能,但对旁系同源体则不一定:由于缺乏原始的自然选择的力量,复制出的基因副本可以更加自由的变异从而获得新的功能。
相似性得分和距离是一对相反的定量描述序列相似和距离的变量。相似性得分是一定计分规则下两条序列对应字符的函数,一般相同字符(也即碱基或氨基酸)越多得分越高,如下所示:
但是在进化过程中,除了碱基替换,还有插入、缺失、复制等,因此相似性描述序列的主要思想是通过在序列中插入空格,来获得最高的相似性得分(score):
其中s1'、s2'…sk'为序列s1、s2…sk插入空格得到。
而编辑距离其值取决于两个序列对应位置上差异字符的个数,差异字符越多其值越大,例如海明距离(Hamming distance)计算如下所示:
距离描述序列的主要思想就是通过字符替换使一条序列转换为另一条序列,每个替换都记为一个耗费(cost),考虑到插入缺失的存在,这种操作还可以拓展为字符替换、插入空格、删除空格,因此对多序列之间的距离描述就是将这些序列转换为一个共同序列所需要的最小耗费:
如果不计插入与删除的空格,仅计算对应字符的替换耗费,则为编辑距离(edit distance)。
END