Twinscan 是一种基因组序列分析工具,其主要用途是在基因组中寻找编码蛋白质的开放阅读框架(ORFs),从而识别基因并对其进行注释。Twinscan 最初于1997年由 David Haussler 等人开发,目前已成为基因组注释领域中最为流行的工具之一。
Twinscan 的算法基于隐马尔可夫模型(HMM)和动态编程。其能够使用特定物种和基因族的注释信息和统计数据构建 HMM 模型,然后利用这个模型识别基因,在此过程中,还可以检测剪切变异和副本数变化。
为了识别基因,Twinscan 首先对参考基因组进行预处理, 包括去噪声,消除类似序列的干扰,分析序列重复性等操作,然后通过 HMM 模型来预测每个碱基在基因中的可能性。
基于 HMM 模型的结果,Twinscan 进行了三次搜索,第一次搜索将预测的 ORFs 与数据库中已知的蛋白质进行比对,以确定每个 ORF 的信息,第二次搜索收集预测数据,确定最佳基因结构,第三次搜索再次优化预测的基因和其外显子边界。
Twinscan 在基因组注释领域得到了广泛应用,包括人类、小鼠、大麦等物种的基因组注释,同时还可以用于研究不同物种的基因家族的进化机制。Twinscan 也可以与其他注释工具结合使用,例如 GlimmerHMM、GENSCAN、AUGUSTUS 等。
Twinscan 的主要优点包括:
Twinscan 的缺点包括: