跳转到内容

核心方法

生物信息学的核心在于将生物学问题转化为可计算的模型,并设计高效算法求解。一个根本问题是:面对海量的序列数据,如何设计算法来高效地搜索、比对、组装和识别模式?

这一板块聚焦于生物信息学中最基础、最通用的算法与模型:从序列的表示与索引,到序列比对的动态规划原理,再到基因组组装的图算法框架,以及隐藏马尔可夫模型等概率方法。

这一部分围绕以下关键问题展开:

  • 序列表示与索引:如何将海量参考基因组组织成可高效查询的数据结构?k-mer、后缀数组、Burrows-Wheeler 变换的原理与权衡是什么?
  • 序列比对:动态规划如何解决编辑距离和比对问题?全局比对、局部比对、启发式算法的适用场景有何不同?
  • 基因组组装:de Bruijn 图与重叠图(Overlap-Layout-Consensus)的建模差异?如何处理重复序列和测序错误?
  • 概率模型:隐藏马尔可夫模型(HMM)如何识别序列中的隐藏状态?位置权重矩阵(PWM)如何刻画序列模式?

建议按以下顺序学习,形成从数据结构到算法、从确定性方法到概率模型的完整认知:

  1. 序列表示与索引 — 理解序列索引的数据结构基础
  2. 序列比对 — 掌握动态规划在序列比对中的应用
  3. 组装与图算法 — 学习图论视角下的基因组组装
  4. 概率模型与模式识别 — 理解不确定性建模与模式识别

此外,算法设计范式 提供了穷举搜索、贪心、动态规划、分治、图算法和随机化六大范式的系统性概述,可作为本板块的算法思维框架。