[发明专利]在字符串集之中查找最佳匹配字符串的方法和系统有效
申请号: | 201380011914.1 | 申请日: | 2013-02-19 |
公开(公告)号: | CN104160396B | 公开(公告)日: | 2017-06-16 |
发明(设计)人: | M·基斯泽基斯;K·扎泽伊克基;T·德泽埃德泽克基;G·库库塞恩斯基 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 中国国际贸易促进委员会专利商标事务所11038 | 代理人: | 冯玉清 |
地址: | 美国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 字符串 之中 查找 最佳 匹配 | ||
技术领域
本发明涉及数据处理的领域,并且更具体地涉及动态编程的领域。
背景技术
关于参考字符串(或者‘查询字符串’)从字符串集(通常存储在数据库中)中查找最佳匹配字符串和对应的最优比对分数的问题是在许多技术领域中的共同问题,尤其是在生物信息学领域和文本分析中。已知用于比对两个或更多个生物序列(例如蛋白质序列、DNA序列或者RNA序列)的各种序列比对算法并且它们可以用于例如确定进化保守的序列同源性、确定存储在数据库或者因特网中与参考文本高度相似的文本文档。
序列(或者‘字符串’)比对算法在计算上非常复杂。由于在多于几个中等长度序列之间识别最优比对在计算上过于昂贵,因此大多数比对程序使用启发性方法而非全局优化。然而,启发性方法以精确度为代价来提高处理速度。因此,不保证会找到最优比对。其它方法(例如动态编程方法(例如基于普通Needleman-Wunsch或者Smith-Waterman算法))保证给出正确并且最优序列比对作为结果。然而,所述准确方法对于许多高复杂度的多重序列比对问题来说仍然太慢(即使当在图形处理部件(GPU)上执行时),成对序列比对的计算成本是关于序列长度的二次方程式。
然而,有时需要快速地查找准确的最佳匹配,尤其在医学和生命科学中,比对结果的正确性对于诊断疾病或者测试科学假设的有效性有至关重要的影响。
发明内容
本发明的目的是提供用于从序列集快速并且精确地查找为关于参考序列的最佳匹配序列的序列的改进的计算机实现的方法、计算机程序产品和计算机系统。该目的通过独立权利要求的特征得以解决。本发明的优选实施例在从属权利要求中给出。如果没有明确地声明,例如通过仅明确参照特定实施例,那么本发明的实施例可以彼此自由地组合。
图形处理部件(GPU)指的是专用于计算密集的、高度并行计算的处理部件;这正是图形渲染和几个其它高度可并行化的计算任务的含义。根据实施例,‘GPU’是能够并行地执行多个线程的多处理器计算设备。计算设备可以充当主CPU的协处理器,由此允许将在主CPU上运行的应用的数据并行、计算密集的部分卸载到GPU上。优选地,GPU的处理部件是流多处理器。GPU可以具有几个不同功能的存储部件,由于所述存储器可由在GPU上运行的一组线程访问(共享),借此这些存储部件中的一些被用作‘共享存储器’(此处还称为‘本地存储器’)。此处使用的‘线程’是以程序功能执行的线程。此处使用的‘线程组’或者‘线程块’是可以通过经由某个共享存储器(优选地为快速存储器)有效地共享数据一起合作并且可以同步它们的执行以协调存储器访问的一批线程。另外,GPU可以包括可由流多处理器中的每一个访问的一个或者多个中央存储器(但与访问共享存储器相比通常具有较低性能)。
此处使用的‘字符串’是任何符号序列,尤其是表示自然语言文本、DNA、RNA或者蛋白质序列的字符串。符号可以是字符、特殊字符、数字等等。
此处使用的‘比对分数(alignment score)’是表示两个被比对的字符串的相似度的相似度度量。比对可以基于例如具有仿射空位罚分和对于不同的匹配/不匹配字符对的可能不同成本的Needlcman-Wunsch算法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380011914.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:控制方法、系统和设备
- 下一篇:用于半结构化数据的可缩放分析平台