BLAST:基本局部比对搜索工具

Basic Local Alignment Search Tool
Altschul et al. · J. Mol. Biol. 1990 · ← 导航

1. 背景

1990 年前,序列比对只能通过 Smith-Waterman DP(O(mn))完成。随数据库增长,这已不可接受。BLAST 引入了一套启发式加速策略,在可接受的敏感性损失下将速度提升数十倍。BLAST 的 seed-and-extend 范式直接影响了后来的 BLAT、BWA-SW 和 BWA-MEM。

2. 原始 BLAST(1990)

  1. 种子生成: 查询序列中取所有长度 k 的子串(k-mer)
  2. 命中检测: 数据库中找与种子匹配且分数 ≥ T 的命中
  3. 无空位延伸: 向两端无空位延伸至分数下降超 X(X-dropoff)
  4. 显著性评估: 统计评估延伸结果的显著性

3. Gapped BLAST(1997)

4. X-dropoff 与 Z-dropoff 对比

特性BLAST X-dropoffBWA-MEM Z-dropoff
公式bestScore − curr > XbestScore − curr > Z + |x−y|×pgapExt
单边 gap惩罚不惩罚
设计目标蛋白质搜索DNA 比对(含结构变异)

Z-dropoff 是 X-dropoff 的改进:加入 |x−y|×pgapExt 后,坐标差增大时阈值自动放宽,允许一方有长插入。

5. Seed-and-Extend 演进

算法种子种子长度延伸截断
BLAST精确 k-mer11 (DNA)无空位 → SWX-dropoff
BLAT精确 k-mer11无空位 → SW
BWA-SWDP 间 FM-index变长,允许差异SWZ-best
BWA-MEMSMEM变长,精确Banded DPZ-dropoff