An effective algorithm for peptide de novo sequencing from MS/MS spectra

1. 研究背景

  • 数据库搜索方法 需要已知的蛋白数据库,但对于未知蛋白质,无法适用。
  • de novo 测序方法 直接从 MS/MS 数据推断氨基酸序列,非常重要。

2. 现有方法的问题

  • 暴力搜索方法:枚举所有可能的肽序列并与 MS/MS 数据比对,计算量过大,不适用于长肽。
  • 谱图图(spectrum graph)方法:将质谱数据转换成图,并寻找最长路径来推断序列,存在问题:
    • 缺失片段(某些离子信号丢失,导致路径断裂)。
    • 噪声干扰(背景噪声峰影响正确路径的识别)。
    • 同质峰重叠(同一峰可能对应多个离子类型)。

3. 解决方案

  • 定义 DP(x, y) 为构造出 b-ions 质量为 xy-ions 质量为 y 的最优前缀-后缀组合的最大得分。
  • 递推公式
    • 计算前缀 A 和后缀 A' 的得分
    • 通过 chummy pair 机制(前缀和后缀质量的合理匹配)优化搜索空间
    • 逐步构建最优的氨基酸序列
  • 考虑所有可能的离子(b-, y-, a-, x-, c-, z-),提高匹配率。
  • 使用“chummy pair”策略,减少冗余计算,加快搜索速度。
  • 采用动态规划,逐步构建最优序列,而非暴力搜索所有可能的肽。

提问1: 为什么使用“chummy pair”策略

de novo 测序 过程中,需要构造一个 肽序列,使得其碎片离子(b-离子和 y-离子)尽可能多地匹配质谱中的峰。

直接暴力搜索所有前缀/后缀组合,会导致指数级复杂度,无法高效求解。

传统的 谱图图(spectrum graph) 方法,虽然减少了一些搜索,但仍然需要考虑大量可能的路径,计算成本高。

Chummy Pair 通过定义 前缀 A 和后缀 A' 之间的合理关系确保我们只考虑可能产生最优解的部分匹配,避免冗余计算。

提问2: 如何寻找 “chummy pair”

核心思想:使用动态规划,逐步扩展最优的 Chummy Pair

(1) 初始化

  • DP(x, y) 表示:
    • 质量 x 的前缀 A
    • 质量 y 的后缀 A'
    • 形成的 chummy pair (A, A') 的最大得分。
  • 初始条件DP(0, 0) = 0(空序列)。

(2) 递推公式

  1. 扩展前缀 A(加入一个氨基酸 a)

    • 如果 (A, A') 是 chummy pair,且 ‖A‖b < ‖A'‖y,则可以尝试扩展 A: DP(x+‖a‖,y)=DP(x,y)+f(x+‖a‖,x,y)DP(x + ‖a‖, y) = DP(x, y) + f(x + ‖a‖, x, y)DP(x+‖a‖,y)=DP(x,y)+f(x+‖a‖,x,y)
    • 这里 f(u, v, w) 是新增一个离子后,增加的匹配得分。
  2. 扩展后缀 A'(加入一个氨基酸 a')

    • 如果 (A, A') 是 chummy pair,且 ‖A'‖y \geq ‖A‖b,则可以尝试扩展 A': DP(x,y+‖a′‖)=DP(x,y)+f(M−(y+‖a′‖),M−y,M−x)DP(x, y + ‖a'‖) = DP(x, y) + f(M - (y + ‖a'‖), M - y, M - x)DP(x,y+‖a′‖)=DP(x,y)+f(M−(y+‖a′‖),M−y,M−x)

(3) 终止条件

  • 遍历所有可能的 DP(x, y),找到 |x + y - M| \leq ε 的最大得分 DP(x, y)
  • 逆向回溯,重构最优肽序列 P

总结

方法计算方式复杂度主要问题Chummy Pair 如何优化?
暴力搜索枚举所有序列指数级 O(20^n)计算量太大避免暴力搜索
谱图方法通过最长路径求解O(n^2)峰匹配不稳定减少错误的峰匹配
本算法动态规划 + Chummy PairO(n)-高效搜索最优序列

提问3: Case 1 和 Case 2 中A<和A>是什么,怎么理解它们的作用

Definition 1 里面,A⟨A⟩ 是对前缀 A 和后缀 A' 进行一步缩短后的结果。它们的作用是确保 前缀 A 和后缀 A' 的增长是单调的,从而优化动态规划的搜索空间。

  • A⟨ 就是 减少前缀 A 的最后一个氨基酸,相当于 倒退一步
  • A'⟩ 就是 减少后缀 A' 的第一个氨基酸,相当于 往后推一步

动态规划求解 de novo 测序 时,我们希望:

  1. 以正确的方式扩展前缀 A 和后缀 A',确保计算路径是最优的。
  2. 保证增长的单调性,即:
    • A 增长时,A' 不能随意缩短。
    • A' 增长时,A 不能随意缩短。
  3. 减少冗余计算,避免探索无效的 A, A' 组合。

 A⟨A⟩ 在 Case 1 和 Case 2 中的作用

  • 如果 A⟨ 仍然满足 chummy pair 条件,说明 A 的最后一个氨基酸并不是必须的,我们可以 减少 A 的大小
  • 如果 A'⟩ 仍然满足 chummy pair 条件,说明 A' 的第一个氨基酸并不是必须的,我们可以 减少 A' 的大小

这样做的 核心目的是

  • 确保 AA' 是合理的前后缀组合
  • 避免无意义的扩展,减少计算量
  • 通过缩短 A/A',我们可以找到更紧凑的 A, A' 组合,避免 A /A'过长导致搜索空间过大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值