- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
平均情况下的最优多模式近似匹配
Average-Optimal Multiple Approximate String Matching
作者:Kimmo Fredriksson, Gonzalo Navarro
摘要:本文介绍了一个从单模式的最优近似匹配算法Chang-Marr算法的基础上扩展得到的多模式近似匹配算法。这个算法不仅保持了单模式匹配算法的最优性,而且极具实用价值。另外我们还介绍了一个线性时间算法,它能处理错误水平更高的情况。我们用实验证明了当错误水平取中等大小的值时我们的算法是最快的。当错误水平取中等值时,现存的算法只能在很少的模式数目上同时进行有效的近似匹配,而我们的算法当模式数目达到成百上千时仍能保持其效率。由于没有一个现存的算法能有效处理中等错误水平的大模式集的近似匹配,因此我们的算法填补了一个重要的空白。
导论
在传统的字符串算法中,近似匹配是几个被重点研究的问题之一,并且广泛应用于文本搜索、计算生物学、模式识别等领域当中。给定一个目标文本(text)T1...n和一个模式(pattern)串P1...m,以及允许的最大错误数目k,我们要做的就是在T中搜索子串,使得这个子串和模式P最多只有k个字符不同。这里所说的不同字符,是可以通过替换(substitution)、删除(deletion)、插入(insertion)三种编辑操作变成与模式中相应字符相同的字符。我们把叫做近似匹配的错误水平(difference ratio),我们用σ来表示字母表Σ的大小。为了便于平均情况下的分析,通常的惯例是假设目标文本T是均匀分布的字母表上的一个随机文本。
对上述基本问题的一个很自然的扩展是所谓的“多模式搜索(multipattern searching)”,即,在目标文本中同时搜索r个模式P1P2...Pr,找到目标文本中和这r个模式中的某一个模式最多只有k个字符不同的所有匹配结果。多模式搜索也存在许多应用,例如病毒和入侵的检测,拼写纠正、带同义词和字典扩展的文本检索等。并且,一些单模式近似匹配算法能够借助于多模式搜索来搜索模式块以加快搜索速度。多维搜索问题也可以简化为字符串匹配的问题。根据应用环境的不同,r的值可能很小,也可能达到成百上千。最原始的多模式近似匹配算法是对r个模式分别进行单模式近似匹配,因此我们的目标是在此基础上找到更快的办法。
自从20世纪60年代以来,对单模式的近似匹配进行了大量研究【8】,最先提出的是基于动态规划的时间复杂度为O(mn)的算法【11】,后来又提出了很多在最坏情况下更快的新算法,也有很多平均情况下更快的新算法。1994年Chang和Marr证明了单模式匹配问题的平均复杂度为,并给出了当时满足此最优时间代价的算法【3】。
长久以来,多模式近似匹配没有受到单模式近似匹配那样的注意,并不是因为大家对此没有兴趣,而是这个问题实在有些难度。现存的多模式近似匹配算法要么只适用于k=1的情况【6】,要么算法处理的模式集不能太大,要么错误水平不能太大【2】。
如此说来多模式近似匹配确实是个尚待开发的领域。现存算法中根本找不到既能搜索大模式集,又适合中等错误水平的算法,而且有这样一个趋势,算法能处理的模式集越大,那么它能适用的错误水平就越小。
本文的目的是介绍一个平均情况下最优的多模式近似匹配算法,本算法允许模式集包含好几千个模式并且能同时适用于较低的错误水平和中等错误水平,填补了本领域的一个重要空白。我们在一个最优的单模式近似匹配算法的基础上构建最优的多模式近似匹配算法,它的平均时间复杂度为。我们还通过实验证明这个算法不仅是理论上最优的,而且经过我们的某些改进能够非常适合实际使用。由于当错误水平超过1/3时这个算法效率急剧下降,我们还介绍了一个衍生算法,它的平均时间复杂度为O(n),不过它适用的错误水平可以上升到1/2。实验表明,在较小的字母表时,对于很大范围的m,r和k值,这两个算法都是最快的,见第6节。
相关工作
2.1多模式近似匹配
一个较为原始的办法是对r个模式分别进行单模式近似匹配,如果单模式近似匹配算法使用【3】中的最优算法,那么这种原始搜索算法的平均搜索时间为。如果单模式近似匹配算法使用【11】中的时间复杂度为O(mn)的古典算法,那么这种原始搜索算法的时间复杂度将达到O(rmn)。
目前在最多允许k个错误的模型下只有很少的几个多模式近似匹配算法。第一个是基于散列方法的算法,由Muth和Manber提出【6】。这个算法只允许进行k=1的近似搜索,但对模式个数r有很强的容忍能力,即使模式个数达到几千的数目,搜索的效率还是很高。它的预处理时间为O(rm),平均的搜索时间为O(mn(1+rm2/M)),其中M为散列表的大小,因此算法总的时间复杂度为O(rm+nm(1+rm2/M)
您可能关注的文档
最近下载
- 苏教版六年级上册数学第1单元《长方体和正方体》单元测试卷(共10套).pdf VIP
- 30题计划合同管理岗位常见面试问题含HR问题考察点及参考回答.pdf VIP
- 人体穴位大全及穴位按摩保健方法(动画图解).doc VIP
- 标准集合图集S161.pdf VIP
- 漏肩风.ppt VIP
- 朔黄铁路地质选线.ppt VIP
- 2023-2024学年北京西城区十五中高一(上)期中英语试题及答案.docx VIP
- 2025年职业教育信息化标杆校任务书 .pdf VIP
- 2025年七年级语文上册第一单元写作实践指导及范文.docx VIP
- JTGT F30-2014 公路水泥混凝土路面施工技术细则.docx VIP
文档评论(0)