Skip to main content
QUICK REVIEW

[论文解读] Exact Analysis of Pattern Matching Algorithms with Probabilistic Arithmetic Automata

Tobias Marschall, Sven Rahmann|arXiv (Cornell University)|Sep 30, 2010
Algorithms and Data Compression参考文献 18被引用 3
一句话总结

本文提出一种通用框架,利用概率性算术自动机(PAAs)在任意随机文本模型(包括i.i.d.、马尔可夫模型和HMM)下,精确计算基于窗口的模式匹配算法(如Horspool、BDM和BOM)的字符访问次数的精确分布。该方法通过构建并最小化确定性算术自动机(DAAs),实现精确的非渐近性能分析,从而获得精确的成本分布及特定模式下算法行为的对比统计信息。

ABSTRACT

We propose a framework for the exact probabilistic analysis of window-based pattern matching algorithms, such as Boyer-Moore, Horspool, Backward DAWG Matching, Backward Oracle Matching, and more. In particular, we show how to efficiently obtain the distribution of such an algorithm's running time cost for any given pattern in a random text model, which can be quite general, from simple uniform models to higher-order Markov models or hidden Markov models (HMMs). Furthermore, we provide a technique to compute the exact distribution of \emph{differences} in running time cost of two algorithms. In contrast to previous work, our approach is neither limited to simple text models, nor to asymptotic statements, nor to moment computations such as expectation and variance. Methodically, we use extensions of finite automata which we call deterministic arithmetic automata (DAAs) and probabilistic arithmetic automata (PAAs) [13]. To our knowledge, this is the first time that substring- or suffix-based pattern matching algorithms are analyzed exactly. Experimentally, we compare Horspool's algorithm, Backward DAWG Matching, and Backward Oracle Matching on prototypical patterns of short length and provide statistics on the size of minimal DAAs for these computations.

研究动机与目标

  • 提供基于窗口的模式匹配算法的精确、非渐近概率分析,克服以往研究仅关注渐近行为或矩的局限性。
  • 在一般文本模型(包括i.i.d.、高阶马尔可夫模型和隐马尔可夫模型)下实现分析,而非局限于简单的均匀模型。
  • 开发一个框架,可为任意给定模式精确计算字符访问成本的分布,而不仅限于期望值或方差。
  • 通过计算两个算法成本差的精确分布,实现对两种算法的直接比较,从而支持针对特定模式的性能评估。

提出的方法

  • 构建确定性算术自动机(DAAs),用于建模给定模式和窗口状态下一氧化模式匹配算法的成本(如字符访问次数)。
  • 使用改进的DFA最小化技术对DAAs进行最小化,以减少状态空间并提高计算效率。
  • 通过引入文本模型的概率,将DAAs扩展为概率性算术自动机(PAAs),从而实现在有限文本长度下的精确分布计算。
  • 使用乘积构造方法构建差值DAAs,用于建模两个算法之间的成本差异,从而实现直接比较。
  • 将该框架应用于Horspool、B(N)DM和BOM算法在短模式上的分析,采用多种文本模型。
  • 在真实模式上实现并评估该方法,性能指标包括DAAs的大小和计算时间。

实验结果

研究问题

  • RQ1在一般文本模型下,对于有限长度的随机文本,给定模式匹配算法的字符访问成本的精确分布是什么?
  • RQ2Horspool、B(N)DM和BOM在特定模式上的性能分布如何比较?哪些因素影响其相对效率?
  • RQ3是否可以精确计算两个算法之间成本差异的分布?这能揭示关于其相对行为的哪些新见解?
  • RQ4DAA最小化在多大程度上能减少状态空间并提升长模式下的计算可行性?
  • RQ5最小DAAs的大小是否随模式长度呈多项式增长?与先前构造方法相比表现如何?

主要发现

  • 该框架可精确计算任意基于窗口的模式匹配算法的完整字符访问成本分布,而不仅限于期望值或方差等矩。
  • 对于{A,C,G,T}字符集上长度为6的模式,B(N)DM的最小DAAs平均为42.8个状态,BOM为41.8个,Horspool为22个,表明最小化显著减少了状态空间。
  • 计算单个成本分布耗时0.3至0.6秒/模式,而计算成本差异耗时14至36秒,表明该方法具备实际可行性。
  • BOM在某些模式上(如CAAAAA)可优于B(N)DM(概率达48.2%),尽管其总位移从不优于B(N)DM,这归因于窗口内容的影响。
  • 最小DAAs的大小似乎随模式长度呈多项式增长,表明对实际模式长度具有潜在可扩展性。
  • 与先前的会议版本相比,该方法在DAAs构造的简洁性和最小化效率方面表现更优,从而实现了对更长模式的分析。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。