890 likes | 1.28k Views
第二章 双序列比对 哈尔滨医科大学 生物信息学院 李霞教授. 第一节 引言. 同源( homology ) - 具有共同的祖先 直向同源( Orthologous ) 共生同源( paralogous ) 相似( similarity ) 同源序列一般是相似的,相似序列不一定是同源的. 通过点矩阵进行序列比较. 编辑距离( Edit Distance). 相似性得分. 第二节 打分矩阵. ( 1 )核酸打分矩阵设 DNA 序列所用的字母表为 = { A , C , G , T }
E N D
第二章 双序列比对哈尔滨医科大学生物信息学院李霞教授
第一节 引言 • 同源(homology)- 具有共同的祖先 • 直向同源(Orthologous ) • 共生同源(paralogous ) • 相似(similarity) 同源序列一般是相似的,相似序列不一定是同源的
第二节 打分矩阵 • (1)核酸打分矩阵设DNA序列所用的字母表为 = { A,C,G,T } a. 等价矩阵 (unitary matrix) b. BLAST矩阵 c. 转移矩阵(transition,transversion) (嘌呤:腺嘌呤A,鸟嘌呤G;嘧啶:胞嘧啶C,胸腺嘧啶T) 表3.1 等价矩阵表 表3.2 BLAST矩阵 表3.3 转移矩阵
(2)蛋白质打分矩阵 • (i)等价矩阵 • (ii) 氨基酸突变代价矩阵GCM • (iii)疏水矩阵 • (iv)PAM矩阵(Point Accepted Mutation) (Dayhoff模型:可接受点突变) • (v) BLOSUM矩阵 (Blocks Amino Acid Substitution Matrices) 其中Rij代表打分矩阵元素 i、j分别代表字母表第i和第j个字符。
氨基酸突变代价矩阵GCM 一个氨基酸残基转变到另一个氨基酸残基所需的密码子碱基变化数目 1 或 2 只有Met到Tyr为 3
PAM & BLOSOM • 这类矩阵里列出同源蛋白质在进化过程中氨基酸变化的可能性。 • 这类矩阵式基于进化原理的 证据: 编码相同蛋白质的基因随着进化发生分歧,相似度降低。 • 科学 • 用得多
PAM矩阵(Point Accepted Mutation) • 基于进化的点突变模型如果两种氨基酸替换频繁,说明自然界接受这种替换,那么这对氨基酸替换得分就高 • 一个PAM就是一个进化的变异单位, 即1%的氨基酸改变但这并不意味100次PAM后,每个氨基酸都发生变化,因为其中一些位置可能会经过多次突变,甚至可能会变回到原来的氨基酸。 • PAM矩阵的制作步骤 • 构建序列相似(大于85%)的比对 • 计算氨基酸 j 的相对突变率mj(j被其它氨基酸替换的次数) • 针对每个氨基酸对 i 和 j , 计算 j被 i替换次数 • 替换次数除以相对突变率(mj) • 利用每个氨基酸出现的频度对j进行标准化 • 取常用对数,得到PAM-1(i, j) • 将PAM-1自乘N次,可以得到PAM-N
PAM Matrices (Point Accepted Mutations) Mutations accepted by natural selection
Total Mutation Rate is the total mutation rate of all amino acids
Normalize Total Mutation Rate to 1% This defines an evolutionary period: the period during which the 1% of all sequences are mutated (accepted of course)
Mutation Probability Matrix Normalized Such that the Total Mutation Rate is 1%
elements are shown multiplied by 10,000 From: http://www.icp.ucl.ac.be/~opperd/private/pam1.html
PAM60—60%, PAM80—50%, • PAM120—40% • PAM-250 matrix provides a better scoring alignment than lower-numbered PAM matrices for proteins of 14-27% similarity
PAM = % Accepted Mutations:1500 changes in 71 groups > 85% similarityBLOSUM = Blocks Substitution Matrix:2000 “blocks” from 500 families Two classes of widely used protein scoring matrices
针对不同的进化距离采用PAM 矩阵 序列相似度 = 40% 50% 60% | | | 打分矩阵 = PAM120 PAM80 PAM 60 PAM250 → 14% - 27%
第三节 双序列比对算法 • 序列的两两比对 (Pairwise Sequence Alignment) 按字符位置重组两个序列,使得两个序列接近一样的长度
序列两两比对基本算法 假设比较300个氨基酸长度的两条序列 ATTC………CGAAGA AGTC………GAAGGT 直接方法 — 生成两个序列所有可能的比对,分别计算代价函数,然后挑选一个代价最小的比对作为最终结果,需要计算 2300次——天文数字
动态规划方法 Dynamic Programming ATTC………CGAAGA AGTC………GAAGGT 起点 终点 ATTC………CGAAG AGTC………GAAGG A T + (1) ATTC………CGAAGA AGTC………GAAGG - T + (2) ATTC………CGAAG AGTC………GAAGGT A - + (3)
最短路经问题 C1 W1 终点 起点 W2 C2 路径1:C1 + w1 ? 路径2:C2 + w2 ? 取最小值! 算法求解: 从起点到终点逐层计算
计算过程: • 按行计算 • 其他方式
计算过程: (3)求最佳路径
算法分析: 数据结构d i , j 空间复杂度:O (mn) 时间复杂度:O (mn) 由于在所考虑的子问题空间中,总共有θ(mn)个不同的子问题,因此,用动态规划算法自底向上地计算最优值能提高算法的效率。
算法程序 矩阵赋值算法 for i=0 tolength(A) F(i,0) ← 0 for j=0 tolength(B) F(0,j) ← 0 for i=1 tolength(A) for j = 1 tolength(B) { Choice1 ← F(i-1,j-1) + S(A(i), B(j)) Choice2 ← F(i-1, j) + d Choice3 ← F(i, j-1) + d F(i,j) ← max(Choice1, Choice2, Choice3) }
反向构造匹配序列 AlignmentA ← "" AlignmentB ← "" i ← length(A) j ← length(B) while (i > 0 and j > 0) { Score ← F(i,j) ScoreDiag ← F(i - 1, j - 1) ScoreUp ← F(i, j - 1) ScoreLeft ← F(i - 1, j) if (Score == ScoreDiag + S(A(i-1), B(j-1))) { AlignmentA ← A(i-1) + AlignmentA AlignmentB ← B(j-1) + AlignmentB i ← i - 1 j ← j - 1 } elseif (Score == ScoreLeft + d) { AlignmentA ← A(i-1) + AlignmentA AlignmentB ← "-" + AlignmentB i ← i - 1 } otherwise (Score == ScoreUp + d) { AlignmentA ← "-" + AlignmentA AlignmentB ← B(j-1) + AlignmentB j ← j - 1 } }
子序列与完整序列的比对 ----AGCT---- ATGCAGCTGCTT