具有局部-整体约束的无重叠近似模式匹配方法与流程

文档序号:18704221发布日期:2019-09-17 23:24阅读:272来源:国知局
具有局部-整体约束的无重叠近似模式匹配方法与流程

本发明的技术方案涉及电数字数据处理技术领域,具体地说是具有局部-整体约束的无重叠近似模式匹配方法。



背景技术:

大数据时代已到来,从海量数据中挖掘出有价值的信息已成为新的研究热点,频繁模式挖掘是指从大量数据中找出频繁出现的模式,其主要任务是模式匹配,因为频繁模式挖掘通常需要计算一个模式的支持度,而支持度计算的实质就是模式匹配问题,因此,模式匹配是频繁模式挖掘的基础与核心,随着科学技术的发展,模式匹配已成为计算机科学中的一个重要研究方向,并且是许多工作的研究基础,不仅应用于简单的时间序列匹配,还应用于简单的生物序列匹配。

模式匹配是指在序列s中查找与模式p相同或者相似的子序列的过程,其发展趋势主要有以下几种:①从传统的模式匹配到具有间隙约束的模式匹配;②从具有间隙约束的精确模式匹配到具有间隙约束的近似模式匹配;③从无特殊条件下的近似模式匹配到一次性条件下的近似模式匹配,再到无重叠条件下的近似模式匹配。

在模式匹配问题中引入间隙约束,能使得问题求解更加灵活,并且能够避免匹配到无意义的模式,下例a对具有间隙约束的模式匹配问题进行了详细说明。

例a.给定序列s=s1s2s3s4s5=acaba,模式p=p1[min1,max1]p2[min2,max2]p3=a[0,2]b[0,1]a。

具有间隙约束的模式p表示为p1[min1,max1]p2…pj[minj,maxj]pj+1…[minm-1,maxm-1]pm,其中,minj和maxj分别表示子模式pj和子模式pj+1之间能够匹配的通配符的最小个数和最大个数,区间[minj,maxj]称为间隙约束,m表示模式串的长度。

例a中,对于给定模式p=a[0,2]b[0,1]a,以a[0,2]b为例,[0,2]称为间隙约束,其中0表示子模式a和子模式b之间最少能够匹配0个通配符,2表示子模式a和子模式b之间最多能够匹配2个通配符;为了方便描述各出现,模式p在序列s中出现的所有字符,用序列s中对应字符的位置下标进行表示,该例中,给定模式p在给定序列s中的出现有2个,分别是<1,4,5>和<3,4,5>;<1,4,5>表示子序列s1s4s5和模式p1p2p3完全一致,其中字符s1和字符s4之间有2个字符,满足间隙约束[0,2],字符s4和字符s5之间没有字符,满足间隙约束[0,1];<3,4,5>表示子序列s3s4s5和模式p1p2p3完全一致,其中字符s3和字符s4之间没有字符,满足间隙约束[0,2],字符s4和字符s5之间也没有字符,满足间隙约束[0,1];由此可见,用户能够根据具体应用设置间隙的大小和长度,因此间隙约束比传统的通配符“?”和“*”更加灵活。

具有间隙约束的模式匹配按照匹配类型,又为精确模式匹配和近似模式匹配,其中精确模式匹配发展比较成熟,它要求模式中的每个子模式和序列中的对应字符相一致,不允许误差的存在,但在生物信息检索、时间序列分析领域,由于基因会发生突变,时间序列数据预处理过程中会引入噪音,精确模式匹配已经不能够发现更多有效信息,抗干扰性差,这时就需要近似意义上的模式匹配,近似模式匹配要求模式中的每个子模式和序列中的对应字符不必完全相同,允许存在误差,能够匹配出更多有价值的信息。

具有间隙约束的近似模式匹配常以序列之间的距离进行近似度量,hamming距离是常用的一种度量距离,它是指两个等长序列对应位置的不同字符的个数,但hamming距离无法度量序列之间的局部近似度,进而导致序列之间的整体不相似,以此引入了更大噪音,另一种度量距离是最初用于音乐信息检索的(δ,γ)-距离,其能够解决hamming距离引入噪音的问题,因此,本发明采用(δ,γ)-距离对序列进行近似度量,其中δ-距离考虑了序列之间的局部约束,γ-距离考虑了序列之间的整体约束,下例b通过hamming距离和(δ,γ)-距离度量时间序列进行对比说明。

例b.给定模式p=b[0,1]d[0,1]b。

说明书附图的图1表明,图1中的(1)与无间隙的给定模式p一致;图1中的(2)、(3)具有间隙约束,并且能够与给定模式p精确匹配。

用hamming距离作为给定模式p的度量距离:给定两个等长的序列x和序列y,序列x和序列y的hamming距离为对应位置的不同字符的个数;图1中的(4)、(5)、(6)不能与给定模式p精确匹配,能够在hamming距离的阈值为1时与给定模式p近似匹配,但阴影片段都与给定模式p的相应片段存在巨大偏差,导致图1中的(4)、(5)、(6)都与图1中的(1)在整体上不相似。

用(δ,γ)-距离作为给定模式p的度量距离:δ-距离:给定字符集σ中的任意两个字符x和字符y,字符x和字符y的δ-距离为|x-y|,记作dδ(x,y);γ-距离:给定两个等长的序列x=x1x2…xn和序列y=y1y2…yn,序列x和序列y的γ-距离为其中1≤i≤n,记作dγ(x,y),其中n表示序列的长度。

给定两个等长的序列x=x1x2…xn和序列y=y1y2…yn,给定局部阈值δ和整体阈值γ,当:

(1)则称序列x和序列y满足局部近似度约束,简称局部约束,记作x=δy;

(2)dγ(x,y)≤γ,则称序列x和序列y满足整体近似度约束,简称整体约束,记作x=γy;

(3)x=δy且x=γy,则称序列x和序列y同时满足局部约束和整体约束,简称局部-整体约束,记作x=(δ,γ)y;

图1中的(7)、(8)、(9)不能与给定模式p精确匹配,但在(δ,γ)-距离下能够与给定模式p近似匹配,其中,图1中的(7)、(8)在局部阈值δ为1,整体阈值γ为1时能够与给定模式p近似匹配,并且都与图1中的(1)在整体上具有良好的相似性,说明δ-距离能够度量序列之间的局部近似度,使得序列之间满足局部约束;图1中的(9)在局部阈值δ为1,整体阈值γ为1时不能与给定模式p近似匹配,但在局部阈值δ为1,整体阈值γ为2时能够与给定模式p近似匹配,说明γ-距离能够度量序列之间的整体近似度,使得序列之间满足整体约束。

说明书附图的图1表明,由于hamming距离无法度量序列之间的局部近似度,导致序列之间的整体不相似;(δ,γ)-距离能够同时对序列之间的局部近似度和整体近似度进行度量,保证了序列之间的整体相似性。

在具有间隙约束的近似模式匹配问题中,当不施加任何的约束方式时,即在无特殊条件下,会匹配出冗余的出现,这些出现并不是用户所需要的,导致过表达,一次性条件下的模式匹配虽然缩减了结果集,但是由于条件过于苛刻,会遗漏许多有用的信息,导致欠表达,无重叠条件下的模式匹配不仅缩减了结果集,精简计算,同时也保留了一些有价值的信息,能够同时避免过表达和欠表达,具有很大的发展潜力和研究意义,下例c采用例a中的序列s和模式p对无重叠条件下的(δ,γ)-近似模式匹配进行详细说明。

例c.给定序列s=s1s2s3s4s5=acaba,模式p=p1[min1,max1]p2[min2,max2]p3=a[0,2]b[0,1]a。

出现:给定序列s=s1s2...sn,模式p=p1[min1,max1]p2…[minm-1,maxm-1]pm,局部阈值δ和整体阈值γ,当存在m个整数l1,l2,…,lm,同时满足以下两个条件:

(1)1≤l1<l2<…<lm≤n,minj≤lj+1-lj-1≤maxj,其中1≤j≤m-1;

(2)

则称<l1,l2,…,lm>是给定模式p在给定序列s中的一个出现,记作

无特殊条件下的模式匹配:序列s中任意位置的字符允许被出现重复使用;说明书附图的图2表明,在无特殊条件下,该例中给定模式p在给定序列s中的出现有4个,分别为<1,2,3>、<1,3,5>、<1,4,5>和<3,4,5>;对于<1,3,5>来说,子序列s1s3s5和模式p1p2p3并不完全一致,其中字符s3=a,子模式p2=b,a≠b,但dδ(s3,p2)=|s3-p2|=|a-b|=1≤δ=1,因此子序列s1s3s5和模式p1p2p3之间满足局部约束,即s1s3s5=δp1p2p3,同时dγ(s1s3s5,p1p2p3)=|s1-p1|+|s3-p2|+|s5-p3|=0+1+0=1≤γ=1,则子序列s1s3s5和模式p1p2p3之间满足整体约束,即s1s3s5=γp1p2p3,因此<1,3,5>是给定模式p在给定序列s中的一个出现,即s1s3s5=(δ,γ)p1p2p3;对于<1,4,5>来说,子序列s1s4s5和模式p1p2p3完全一致,两者之间的γ-距离为0,对应字符之间的δ-距离也为0,<1,4,5>是一个精确匹配的出现;由此可见,精确匹配是近似匹配的一个特例,近似匹配比精确匹配更具一般性。

一次性条件下的模式匹配:序列s中任意位置的字符最多只能被出现使用一次;在一次性条件下,例c中给定模式p在给定序列s中的出现只有<1,2,3>、<1,3,5>、<1,4,5>和<3,4,5>这4个出现中的任意1个,当选择了<1,2,3>,则不能选择<1,3,5>、<1,4,5>和<3,4,5>,因为字符s1和字符s3都已经被<1,2,3>使用。

无重叠条件下的模式匹配:任何两个出现不能在相同位置使用序列s中的同一个字符;在无重叠条件下,例c中给定模式p在给定序列s中的出现2个,分别是<1,2,3>和<3,4,5>,由此可见,无重叠条件比一次性条件更加灵活,无重叠条件下的模式匹配能够发现更多有用的信息。

模式匹配问题一般要求具备准确性、一般性和灵活性,并且在通过缩减结果集来降低对数据分析的难度的同时,能够保留下有价值的信息,但现有的相关技术很难同时满足这些条件,例如,武等人发表的文献“netaspno:approximatestrictpatternmatchingundernonoverlappingcondition,ieeeaccess.”在无重叠条件下研究了基于hamming距离的近似模式匹配,通过避免回溯和剪枝策略提高了方法的有效性,虽然该文献研究的是hamming距离下的近似模式匹配,具备一般性,但是hamming距离没有考虑序列之间的局部约束,在对序列进行近似度量时会导致巨大偏差,不具备准确性;he等人发表的文献“sail-approx:anefficienton-linealgorithmforapproximatepatternmatchingwithwildcardsandlengthconstraints,ieee.”通过动态规划的方法,研究了带通配符和长度约束的一次性近似模式匹配,并证明了所提方法的正确性,但是该文献研究的是一次性条件下的近似模式匹配,会遗漏许多有价值的信息;武等人发表的文献“strictpatternmatchingundernon-overlappingcondition,sciencechinainformationsciences.”基于网树结构研究了无重叠条件下的精确模式匹配,并通过网树结构解决了无重叠条件下的精确模式匹配问题,证明了所提方法的完备性、正确性和有效性,但是该文献研究的是精确模式匹配,无法处理噪音问题,不具备求解的一般性;陶等人发表的文献“面向比特流的分组快速搜索匹配方法,计算机工程.”借鉴编码qs方法的编码思想,提出一种对模式进行分组预处理,以及使用字符组计算跳跃集的分组qs方法,并证明了方法的有效性,但是该文献没有考虑间隙约束,缺乏灵活性。

总之,针对具有局部-整体约束的无重叠近似模式匹配问题,现有的无重叠近似模式匹配技术很难兼顾求解的准确性、一般性和灵活性,以及在保证结果集非冗余的同时,能够保留下有价值的信息,并且至今尚未出现一个很好的方法来解决这类问题。



技术实现要素:

本发明所要解决的技术问题是:提供一种具有局部-整体约束的无重叠近似模式匹配方法,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题,该方法在具有间隙约束的情况下,实现了(δ,γ)-距离下的无重叠近似模式匹配,克服了现有技术针对具有局部-整体约束的无重叠近似模式匹配问题,存在很难兼顾求解的准确性、一般性和灵活性,以及在保证结果集非冗余的同时能够保留下有价值的信息的缺陷。

本发明解决该技术问题所采用的技术方案是:具有局部-整体约束的无重叠近似模式匹配方法,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题,具体步骤如下:

第一步,确定网树的层数:

读入给定序列s,确定其长度为n,该序列s中的每个字符分别记作字符s1、字符s2、…、字符sn,读入给定模式p,确定其长度为m,该模式p的各个子模式分别记作子模式p1、子模式p2、…、子模式pm,这里0<m<n;根据给定模式p中的子模式数确定网树的层数,则网树共有m层,分别记作第1层、第2层、…、第m层;

第二步,创建一棵网树,并计算网树中各个结点的最小树根距离

给定局部阈值δ和整体阈值γ,这里0≤δ≤γ,并根据上述第一步中的序列s和上述第一步中的模式p创建一棵网树,在该网树的第j层中,标签为i的结点记作与精确模式匹配不同,具有局部-整体约束的无重叠近似模式匹配创建的网树中,每个结点需要记录字符si与子模式pj之间的δ-距离dδ(si,pj),并且每个结点需要记录其最小树根距离来描述结点到达树根层的能力,即结点到达树根层的最短γ-距离,并把结点的最小树根距离初始化为0;在创建网树的过程中,根据各个结点的最小树根距离能够预先判断并删除网树中的无效双亲关系以及无效结点;

具体处理方法如下:

对上述第一步中的给定序列s中的字符si进行处理,并依次计算其与上述第一步中的给定模式p中的子模式p1、子模式p2、…、子模式pm之间的δ-距离dδ(si,pj),其中1≤j≤m:

当dδ(si,pj)>δ,其中1≤j≤m,不需要在所创建网树的第j层创建结点

当dδ(si,pj)≤δ,其中j=1,直接在所创建网树的树根层创建结点结点的最小树根距离等于字符si与子模式p1之间的δ-距离dδ(si,p1),通过公式(1)计算结点的最小树根距离

公式(1)中,δ表示局部阈值,dδ(si,p1)表示字符si与子模式p1之间的δ-距离;

当dδ(si,pj)≤δ,其中1<j≤m,在所创建网树的第j层创建结点并在所创建网树的第j-1层的所有结点中,通过以下方法,判断结点与结点之间能否建立双亲关系:

当结点与结点之间满足间隙约束[minj-1,maxj-1],且结点和结点之间能够建立双亲关系,并在结点和结点之间建立双亲关系;

当结点与结点之间不满足间隙约束[minj-1,maxj-1],或者结点和结点之间不能够建立双亲关系;

依次遍历完网树第j-1层的所有结点确定其中能够与结点之间建立双亲关系的结点有t个,其中t≥0,当t=0时,则删除结点当t>0时,则把t个结点分别记作并通过公式(2)计算结点的最小树根距离

公式(2)中,t表示结点的双亲个数,dδ(si,pj)表示字符si与子模式pj之间的δ-距离;

对上述第一步中的给定序列s中的每个字符处理完毕,即创建完一棵网树;

第三步,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题:

利用上述第一步和第二步构建的网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题,具体说是,网树中的结点代表模式p的第j个子模式在序列s中的第i个位置,同样,由于网树不同层上的结点允许拥有相同的标签,但同一层不允许拥有相同的标签,这正符合无重叠条件的性质,因此,网树结构适用于求解无重叠条件下的模式匹配问题,网树中的一条树根叶子路径对应一条出现,寻找出现即在网树中寻找满足局部-整体约束的树根叶子路径,对于利用网树结构解决(δ,γ)-距离下的无重叠近似模式匹配问题,选用以下四种相似的寻找出现的方法中的任意一种:

第一种:从树根层的最后一个结点开始,在满足局部-整体约束的条件下,判断该根结点能否到达叶子层,当能到达时,则从能够到达的叶子层的最后一个结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在当前根结点的子网树内向上回溯一条树根叶子路径,即找到一条出现;

第二种:从树根层的第一个结点开始,在满足局部-整体约束的条件下,判断该根结点能否到达叶子层,当能到达时,则从能够到达的叶子层的第一个结点开始,在满足局部-整体约束的条件下,根据最左双亲策略,在当前根结点的子网树内向上回溯一条树根叶子路径,即找到一条出现;

第三种:从叶子层的最后一个结点开始,在满足局部-整体约束的条件下,判断该叶子结点能否到达树根层,当能到达时,则从能够到达的树根层的最后一个结点开始,在满足局部-整体约束的条件下,根据最右孩子策略,在当前叶子结点的子网树内向下回溯一条树根叶子路径,即找到一条出现;

第四种:从叶子层的第一个结点开始,在满足局部-整体约束的条件下,判断该叶子结点能否到达树根层,当能到达时,则从能够到达的树根层的第一个结点开始,在满足局部-整体约束的条件下,根据最左孩子策略,在当前叶子结点的子网树内向下回溯一条树根叶子路径,即找到一条出现;

由此利用网树结构完成了(δ,γ)-距离下的无重叠近似模式匹配;

在显示器上输出上述第一步中的给定模式p在上述第一步中的给定序列s中的所有出现,即输出结果集occ(s,p)中的所有出现,由此完成具有局部-整体约束的无重叠近似模式匹配。

上述具有局部-整体约束的无重叠近似模式匹配方法,所用的编程软件是vc++6.0,画图工具是visio2013,所用的处理器为pentium(r)dual-core32processor+,操作系统为windows7及以上版本,以上所用软件和硬件环境都是本领域的技术人员所熟知的。

本发明的有益效果是:与现有方法相比,本发明具有的突出实质性特点如下:

(1)本发明通过网树结构研究了具有局部-整体约束的的无重叠近似模式匹配,并解决了(δ,γ)-距离下的无重叠近似模式匹配问题,首先读入给定的序列s和给定的模式p,确定与给定模式p的子模式数相匹配的网树层数,之后根据输入条件创建一棵网树,在创建网树过程中,计算网树各个结点的最小树根距离并对无效双亲关系和无效结点进行预判断并删除,最后利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题;

(2)cn109271419a公开了一种无间隙约束的在线串匹配方法,该方法采用队列的先进先出的性质,动态地输出所有出现,以此实现字符串的在线模式匹配,但是该发明研究的是无重叠条件下的精确模式匹配,无法处理噪音问题,而本发明基于(δ,γ)-距离,研究的是无重叠条件下的近似模式匹配,能够处理噪音问题,并且能够同时度量序列之间的局部近似度和整体近似度,这是两者的最大实质性区别;

(3)cn102243656a公开了一种基于散列的串匹配方法及其选择模式串子窗口的方法,通过选择每个模式串的最优子窗口来计算该模式串的散列值,然后实现了基于散列的串匹配方法,该发明研究的是无特殊条件下的字符串精确模式匹配,并且不允许字符间存在间隙,而本发明研究的是无重叠条件下的近似模式匹配,并且允许字符间存在间隙,这是两者的最大实质性区别;

(4)cn102609459a公开了一种基于正则表达式的字符串匹配方法,根据匹配类型标识将匹配字符串和待匹配数据按段分割或按行进行分割,对每个子字符串确定正则表达式生成模式,按子字符串正则表达式逐一地对分割得到的待匹配子字符串进行匹配,并输出匹配结果,该发明在匹配之前需要对字符串和待匹配数据进行分割,并且研究的是无特殊条件下的精确模式匹配,而本发明在匹配之前不需要对序列和模式进行分割,只需要遍历一次序列就能够实现对整个模式的匹配,并且本发明研究的是无重叠条件下的近似模式匹配,能够处理噪音问题,这是两者的最大实质性区别;

(5)cn103377259a公开了一种多模式字符串匹配方法和装置,该发明将多个模式按照顺序生成一个决策树结构,然后将待匹配的主串沿所述决策树向下进行匹配,该发明研究的是无特殊条件下的精确模式匹配,并且不允许字符间存在间隙,而本发明研究的是无重叠条件下的近似模式匹配,并且允许字符间存在间隙,这是两者的最大实质性区别;

(6)cn102750379a公开了一种基于过滤型的字符串快速匹配方法,设计字符串匹配技术领域,该方法先对模式进行预处理,然后创建匹配数组,最后利用动态规划方法和过滤方法实现字符串近似模式匹配,该发明在匹配之前需要先对模式进行预处理,并且研究的是编辑距离下的字符串近似模式匹配,无法度量序列之间的局部近似度,而本发明在匹配之前不需要先对模式进行预处理,并且采用(δ,γ)-距离对序列进行近似度量,兼顾了局部近似度和整体近似度,这是两者的最大实质性区别;

(7)cn102831232a公开了一种字符串的匹配方法及装置,该发明首先获取字符映射表,然后接收输入数据,获取输入数据中的字符在字符映射表中的映射字符,最后将获取到的映射字符组成的字符串与预设字符串在字符映射表中的映射的字符串相匹配,该发明研究的是无特殊条件下的字符串精确模式匹配,无法处理数据噪音问题,并且不允许字符间存在间隙,而本发明研究的是无重叠条件下的近似模式匹配,能够处理数据噪音问题,并且允许字符间存在间隙,这是两者的最大实质性区别;

(8)cn103425739a本发明涉及信息处理技术领域,尤其是一种快速字符串匹配方法,本发明首先对目标字符串进行预先处理,得到其各个字符的一个简单哈希表,当匹配到首个字符后即进行匹配目标字符串的最后一个字符,以此实现字符串的快速匹配,该发明研究的是无特殊条件下的字符串精确模式匹配,并且在匹配之前需要对字符串预先处理,而本发明研究的是无重叠条件下的近似模式匹配,并且在匹配之前不需要对序列预先处理,仅需扫描一遍序列即能够完成匹配,这是两者的最大实质性区别;

(9)cn104750683a公开了一种字符串匹配方法及装置,该方法首先确定模式字符串首字符在待匹配的目标字符串中存在的各位置,当各位置中存在满足预设条件的位置时,确定该模式字符串在该目标字符串中存在,以实现字符串的精确匹配,该发明研究的是无特殊条件下的精确模式匹配,并且不允许字符间存在间隙,而本发明研究的是无重叠条件下的近似模式匹配,并且允许字符间存在间隙,这是两者的最大实质性区别;

(10)cn105141583a公开了一种字符串匹配方法和系统,该发明首先将被匹配字符串分解成预先设定数目的若干块数据块,然后将所述各数据块与模式进行快速匹配,直到找出所有相互匹配的字符串或达到停止条件,从而实现字符串的匹配,该发明研究的是无特殊条件下的字符串精确模式匹配,并且在匹配之前需要将被匹配字符串分解成数据块,而本发明研究的是无重叠条件下的近似模式匹配,在匹配之前不需要对序列进行分解,这是两者的最大实质性区别;

(11)cn106959962a公开了一种多模式字符串匹配方法和装置,该发明首先将具有前缀包含关系的模式压缩到一个模式中得到压缩模式集,然后根据压缩模式集构造前缀集,最后根据预设方法为前缀集构造ac自动机,该发明研究的是无特殊条件下的字符串精确模式匹配,并且不允许字符间存在间隙,而本发明研究的是无重叠条件下的近似模式匹配,并且允许字符间存在间隙,这是两者的最大实质性区别;

(12)cn106980620a公开了一种对中文字串进行匹配的方法及装置,该发明首先获取待匹配的第一字串和第二字串,然后根据预设的计算形似字或音似字的编辑距离规则获取相同位置上字符之间的编辑距离,最后根据编辑距离对第一字串和第二字串进行匹配,但编辑距离无法度量序列之间的局部近似度,而本发明是采用(δ,γ)-距离对序列进行近似度量,兼顾了局部近似度和整体近似度,从而实现(δ,γ)-距离下的近似模式匹配;

(13)cn107239500a公开了一种字符串匹配方法及系统,涉及字符匹配领域,该发明要求字符间完全相同,是一种精确匹配,并且不允许字符间存在间隙,而本发明研究的是无重叠条件下的近似模式匹配,并且允许字符间存在间隙,这是两者的最大实质性区别。

与现有方法相比,本发明具有的显著进步如下:

(1)本发明方法在模式匹配问题中引入了间隙约束,研究的是具有间隙约束的模式匹配,用户能够灵活地设置间隙约束的大小和区间长度,使得模式的形式更具有灵活性,使其应用更加广泛,更加符合实际工作的需要;

(2)本发明方法在具有间隙约束的情况下,研究的是近似模式匹配问题,度量距离是近似模式匹配的关键,hamming距离虽然有效地解决了传统的字符串模式匹配问题,具有抗干扰性,但hamming距离忽略了字符之间的远近关系,在时间序列分析领域不能有效地反映时序之间的差异而会造成误匹配,针对hamming距离的不足,本发明通过网树结构研究了具有局部-整体约束的近似模式匹配,并采用(δ,γ)-距离对序列进行近似度量,其中δ-距离保证序列之间满足局部约束,γ-距离保证序列之间满足整体约束,(δ,γ)-距离通过同时对序列之间的局部近似度和整体近似度进行度量,拓宽了应用领域,降低了匹配的误差,用户能够根据具体应用灵活地设置δ和γ的大小,更具有实际意义;

(3)本发明方法研究的是无重叠条件下的(δ,γ)-近似模式匹配,在具有间隙约束的模式匹配问题中,只要一个子模式的出现位置发生改变,就会产生一个新的出现,无特殊条件下的模式匹配允许序列中每个位置的字符被出现多次重复使用,这将直接导致解空间呈指数级,一次性条件下的模式匹配虽然缩减了结果集,精简了计算,而且避免了字符的重复使用,但由于其条件过于苛刻,在匹配的过程中会遗漏许多有价值的信息,无重叠条件下的模式匹配在缩减结果集的同时,不仅降低了对数据处理分析的难度,也保留了许多有价值的信息,具有重要的研究价值;

(4)将本发明所提方法合理地运用于简单的时间序列匹配,能够帮助用户计算模式的支持度,对于挖掘频繁的时间序列模式,并做出合理决策具有重要的研究价值,本发明的实施例即是简单的时间序列匹配应用描述,其中,序列s代表字符型时间序列,即数值型时间序列符号化后的结果,模式p反映了一段时间的数据变化规律,能够预测未来数据的走势,时间序列数据规模庞大,难于分析,通过本发明提出的具有局部-整体约束的无重叠近似模式方法计算模式p在序列s中的支持度,寻找模式p在序列s中的出现,不仅能够帮助用户提取有价值的信息和知识,而且能够缩减结果集,降低了对数据处理分析的难度,具有巨大的发展潜力。

附图说明

下面结合附图和实施例对本发明进一步说明。

图1为例b通过hamming距离和(δ,γ)-距离度量时间序列的对比说明图,其中:图1(1)为bdb,图1(2)为badb,图1(3)为baddb,图1(4)为eaddb,图1(5)为bafdb,图1(6)为badde,图1(7)为aaddb,图1(8)为bacdb,图1(9)为bacdc。

图2为例c中的给定模式p在给定序列s中的所有出现。

图3为本发明方法采用计算机处理的流程示意图。

图4为本发明实施例1根据给定模式p中的子模式数确定的网树层数。

图5为本发明实施例1创建的一棵网树。

图6为说明书附图的图5去掉其中不能到达叶子层的结点、无效双亲关系、以及无效结点后的网树。

图7为在说明书附图的图6的结点的子网树内,重新计算其各个结点的最小树根距离并找到出现<4,6,7,9>。

图8为说明书附图的图7删除出现<4,6,7,9>,并在结点的子网树内,重新计算其各个结点的最小树根距离并找到出现<2,3,6,7>。

图9为说明书附图的图8删除出现<2,3,6,7>,并在结点的子网树内,重新计算其各个结点的最小树根距离并找到出现<1,2,5,6>。

具体实施方式

图1所示实施例表明,图1(1)bdb与例b中的无间隙的模式p一致;图1(2)badb和图1(3)baddb引入了间隙约束,能够处理噪音,纠正相位差异;图1(4)eaddb、图1(5)bafdb和图1(6)badde不能与例b中的给定模式p精确匹配,虽然在hamming距离的阈值为1时能够与例b中的给定模式p近似匹配,但是与图1(1)bdb在整体上都不相似,偏差大,其中图1(4)eaddb中的“e”与“b”存在巨大偏差,图1(5)bafdb中的“f”与“d”存在巨大偏差,图1(6)badde中的“e”与“b”存在巨大偏差;图1(7)aaddb、图1(8)bacdb和图1(9)bacdc不能与例b中的给定模式p精确匹配,但在(δ,γ)-距离下能够与例b中的给定模式p近似匹配,其中图1(7)aaddb和图1(8)bacdb在局部阈值δ=1,整体阈值γ=1时能够与例b中的给定模式p近似匹配,并且与图1(1)bdb在整体上具有良好的相似性;图1(9)bacdc在局部阈值δ=1,整体阈值γ=1时不能与例b中的给定模式p近似匹配,在局部阈值δ=1,整体阈值γ=2时能够与例b中的给定模式p近似匹配;以上说明,hamming距离无法度量序列之间的局部近似度,(δ,γ)-距离既能度量序列之间的局部近似度,又能度量序列之间的整体近似度,保证了序列之间的整体相似性。

图2所示实施例表明,例c中的给定模式p在给定序列s中共有4个出现,其中,‘s’代表序列s,‘a’、‘c’、‘a’、‘b’、‘a’分别是给定序列s中的5个字符,5个字符对应位置下标分别用‘1’、‘2’、‘3’、‘4’、‘5’表示;给定模式p在给定序列s中的第1个出现、第2个出现、第3个出现、第4个出现分别用它们在给定序列s中的对应字符的位置下标进行表示,因此给定模式p在给定序列s中的4个出现分别是<1,2,3>、<1,3,5>、<1,4,5>和<3,4,5>,在4个出现中,包含δ-距离和γ-距离都为0的出现<1,4,5>和<3,4,5>,说明精确模式匹配是近似模式匹配的特例,近似模式匹配比精确模式匹配更具一般性。

图3为本发明方法采用计算机处理的流程:1)开始→2)读入序列s、模式p、局部阈值δ和整体阈值γ→3)按照前后顺序读取序列s中的字符si→4)在网树的第j层创建结点并计算其最小树根路径数判断字符si是否是序列s的尾字符,是,执行第6步;否,执行第3步→6)从树根层的最后一个结点开始,从右至最左依次在网树中寻找出现→7)判断是否到达树根层的第一个结点,是,执行第8步;否,执行第6步→8)在显示器上输出模式p在序列s中的所有出现→9)结束。

实施例1

给定一段经过sax(符号聚合近似)方法符号化的序列s=s1s2s3s4s5s6s7s8s9=baabcbbab,给定模式p=p1[min1,max1]p2[min2,max2]p3[min3,max3]p4=b[0,1]a[0,2]b[0,2]b,给定局部阈值δ=1,整体阈值γ=1。

第一步,确定网树的层数:

读入给定序列s=baabcbbab,其长度为9,读入给定模式p=b[0,1]a[0,2]b[0,2]b,其长度为4,该模式p的各个子模式分别记作子模式p1=b、子模式p2=a、子模式p3=b、子模式p4=b,共4个子模式,则网树共有4层,分别记作第1层、第2层、第3层、第4层;

第二步,创建一棵网树,并计算网树中各个结点的最小树根距离

给定局部阈值δ和整体阈值γ,这里0≤δ≤γ,并根据上述第一步中的序列s和上述第一步中的模式p创建一棵网树,在该网树的第j层中,标签为i的结点记作与精确模式匹配不同,具有局部-整体约束的无重叠近似模式匹配创建的网树中,每个结点需要记录字符si与子模式pj之间的δ-距离dδ(si,pj),并且每个结点需要记录其最小树根距离来描述结点到达树根层的能力,即结点到达树根层的最短γ-距离,并把结点的最小树根距离初始化为0;在创建网树的过程中,根据各个结点的最小树根距离能够预先判断并删除网树中的无效双亲关系以及无效结点;

具体处理方法如下:

对上述第一步中的给定序列s中的字符si进行处理,并依次计算其与上述第一步中的给定模式p中的子模式p1、子模式p2、…、子模式pm之间的δ-距离dδ(si,pj),其中1≤j≤m:

当dδ(si,pj)>δ,其中1≤j≤m,不需要在所创建网树的第j层创建结点

当dδ(si,pj)≤δ,其中j=1,直接在所创建网树的树根层创建结点结点的最小树根距离等于字符si与子模式p1之间的δ-距离dδ(si,p1),通过公式(1)计算结点的最小树根距离

公式(1)中,δ表示局部阈值,dδ(si,p1)表示字符si与子模式p1之间的δ-距离;

当dδ(si,pj)≤δ,其中1<j≤m,在所创建网树的第j层创建结点并在所创建网树的第j-1层的所有结点中,通过以下方法,判断结点与结点之间能否建立双亲关系:

当结点与结点之间满足间隙约束[minj-1,maxj-1],且结点和结点之间能够建立双亲关系,并在结点和结点之间建立双亲关系;

当结点与结点之间不满足间隙约束[minj-1,maxj-1],或者结点和结点之间不能够建立双亲关系;

依次遍历完网树第j-1层的所有结点确定其中能够与结点之间建立双亲关系的结点有t个,其中t≥0,当t=0时,则删除结点当t>0时,则把t个结点分别记作并通过公式(2)计算结点的最小树根距离

公式(2)中,t表示结点的双亲个数,dδ(si,pj)表示字符si与子模式pj之间的δ-距离;

对上述第一步中的给定序列s中的每个字符处理完毕,即创建完一棵网树;

上述步骤的具体执行过程如下:

1)对第1个字符s1=b进行处理,由于dδ(s1,p1)=|b-b|=0≤δ,字符s1与子模式p1是精确匹配,此时j=1,因此创建结点通过公式(1)计算结点的最小树根距离为0;由于dδ(s1,p2)=|b-a|=1≤δ,字符s1与子模式p2是近似匹配,此时j=2,因此创建结点在第1层不存在能够与结点建立双亲关系的结点,结点的双亲个数为0,因此删除结点同理,删除结点和结点

2)对第2个字符s2=a进行处理,由于dδ(s2,p1)=|a-b|=1≤δ,字符s2与子模式p1是近似匹配,此时j=1,因此创建结点通过公式(1)计算结点的最小树根距离为1;由于dδ(s2,p2)=|a-a|=0≤δ,字符s2与子模式p2是精确匹配,此时j=2,因此创建结点在第1层存在与结点满足间隙约束[0,1]的结点并且则在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;由于dδ(s2,p3)=|a-b|=1≤δ,字符s2与子模式p3是近似匹配,此时j=3,因此创建结点在第2层不存在能够与结点建立双亲关系的结点,结点的双亲个数为0,因此删除结点同理,删除结点

3)对第3个字符s3=a进行处理,由于dδ(s3,p1)=|a-b|=1≤δ,字符s3与子模式p1是近似匹配,此时j=1,因此创建结点通过公式(1)计算结点的最小树根距离为1;由于dδ(s3,p2)=|a-a|=0≤δ,字符s3与子模式p2是精确匹配,此时j=2,因此创建结点在第1层存在与结点满足间隙约束[0,1]的结点和结点并且以及则在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;由于dδ(s3,p3)=|a-b|=1≤δ,字符s3与子模式p3是近似匹配,此时j=3,因此创建结点在第2层存在与结点满足间隙约束[0,2]的结点并且则在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;由于dδ(s3,p4)=|a-b|=1≤δ,字符s3与子模式p4是近似匹配,此时j=4,因此创建结点在第3层不存在能够与结点建立双亲关系的结点,结点的双亲个数为0,因此删除结点

4)对第4个字符s4=b进行处理,由于dδ(s4,p1)=|b-b|=0≤δ,字符s4与子模式p1是精确匹配,此时j=1,因此创建结点通过公式(1)计算结点的最小树根距离为0;由于dδ(s4,p2)=|b-a|=1≤δ,字符s4与子模式p2是近似匹配,此时j=2,因此创建结点在第1层存在与结点满足间隙约束[0,1]的结点和结点并且以及则结点与结点都不能与结点建立双亲关系,结点的双亲个数为0,因此删除结点由于dδ(s4,p3)=|b-b|=0≤δ,字符s4与子模式p3是精确匹配,此时j=3,因此创建结点在第2层存在与结点满足间隙约束[0,2]的结点和结点并且以及则在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;由于dδ(s4,p4)=|b-b|=0≤δ,字符s4与子模式p4是精确匹配,此时j=4,因此创建结点在第3层存在与结点满足间隙约束[0,2]的结点并且则在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;

5)对第5个字符s5=c进行处理,由于dδ(s5,p1)=|c-b|=1≤δ,则字符s5与子模式p1是近似匹配,此时j=1,因此创建结点并通过公式(1)计算结点的最小树根距离为1;由于dδ(s5,p2)=|c-a|=2>δ,因此不需在第2层创建结点由于dδ(s5,p3)=|c-b|=1≤δ,字符s5与子模式p3是近似匹配,此时j=3,因此创建结点在第2层存在与结点满足间隙约束[0,2]的结点和结点并且以及则在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;由于dδ(s5,p4)=|c-b|=1≤δ,字符s5与子模式p4是近似匹配,此时j=4,因此创建结点在第3层存在与结点满足间隙约束[0,2]的结点和结点并且以及则不能在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;

6)对第6个字符s6=b进行处理,由于dδ(s6,p1)=|b-b|=1≤δ,则字符s6与子模式p1是精确匹配,此时j=1,因此创建结点并通过公式(1)计算结点的最小树根距离为0;由于dδ(s6,p2)=|b-a|=1≤δ,字符s6与子模式p2是近似匹配,此时j=2,因此创建结点在第1层存在与结点满足间隙约束[0,1]的结点和结点并且以及则在结点与结点之间建立双亲关系,不能在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;由于dδ(s6,p3)=|b-b|=0≤δ,字符s6与子模式p3是精确匹配,此时j=3,因此创建结点在第2层存在与结点满足间隙约束[0,2]的结点并且则能在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;由于dδ(s6,p4)=|b-b|=0≤δ,字符s6与子模式p4是精确匹配,此时j=4,因此创建结点在第3层存在与结点满足间隙约束[0,2]的结点结点和结点并且则在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;

7)对第7个字符s7=b进行处理,由于dδ(s7,p2)=|b-a|=1≤δ,字符s7与子模式p2是近似匹配,此时j=2,因此创建结点在第1层存在与结点满足间隙约束[0,1]的结点和结点并且以及则不能在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;由于dδ(s7,p3)=|b-b|=0≤δ,字符s7与子模式p3是精确匹配,此时j=3,因此创建结点在第2层存在与结点满足间隙约束[0,2]的结点并且在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;由于dδ(s7,p4)=|b-b|=0≤δ,字符s7与子模式p4是精确匹配,此时j=4,因此创建结点在第3层存在与结点满足间隙约束[0,2]的结点结点和结点并且则在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;

8)对第8个字符s8=a进行处理,由于dδ(s8,p3)=|a-b|=1≤δ,字符s8与子模式p3是近似匹配,此时j=3,因此创建结点在第2层存在与结点满足间隙约束[0,2]的结点和结点并且以及则结点与结点都不能与结点建立双亲关系,结点的双亲个数为0,因此删除结点由于dδ(s8,p4)=|a-b|=1≤δ,字符s8与子模式p4是近似匹配,此时j=4,因此创建结点在第3层存在与结点满足间隙约束[0,2]的结点结点和结点并且则结点与结点都不能与结点建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为1;

9)对第9个字符s9=b进行处理,由于dδ(s9,p4)=|b-b|=0≤δ,字符s9与子模式p4是精确匹配,此时j=4,因此创建结点在第3层存在与结点满足间隙约束[0,2]的结点和结点并且以及在结点与结点之间建立双亲关系,在结点与结点之间建立双亲关系,通过公式(2)计算结点的最小树根距离为0;

此时给定序列s中的字符已处理完毕,并创建完一棵网树,说明书附图的图6给出了本实施例最终创建完的网树,并去掉了其中不能到达叶子层的结点、无效双亲关系、以及无效结点;

第三步,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题:

利用上述第一步和第二步构建的网树来解决(δ,γ)-距离下的无重叠近似模式匹配问题,具体说是,网树中的结点代表模式p的第j个子模式在序列s中的第i个位置,同样,由于网树不同层上的结点允许拥有相同的标签,但同一层不允许拥有相同的标签,这正符合无重叠条件的性质,因此,网树结构适用于求解无重叠条件下的模式匹配问题,网树中的一条树根叶子路径对应一条出现,寻找出现即在网树中寻找满足局部-整体约束的树根叶子路径,对于利用网树结构解决(δ,γ)-距离下的无重叠近似模式匹配问题,有四种相似的寻找出现的方法,本实施例中选用四种相似的寻找出现的方法中的第一种,即从树根层的最后一个结点开始,在满足局部-整体约束的条件下,判断该根结点能否到达叶子层,当能到达时,则从能够到达的叶子层的最后一个结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在当前根结点的子网树内向上回溯一条树根叶子路径,即找到一条出现;

具体处理方法如下:

首先从树根层的最后一个结点开始,在满足局部-整体约束的条件下,判断该根结点能否到达叶子层;能到达,则从能够到达的叶子层的最后一个结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在当前根结点的子网树内向上回溯一条树根叶子路径,即找到一条出现,加入结果集occ(s,p);将找到的出现删除,迭代以上过程,直到树根层的第一个结点,找出所有出现;

由此利用网树结构完成了(δ,γ)-距离下的无重叠近似模式匹配;

在显示器上输出上述第一步中的给定模式p在上述第一步中的给定序列s中的所有出现,即输出结果集occ(s,p)中的所有出现,由此完成具有局部-整体约束的无重叠近似模式匹配;

上述步骤的具体执行过程如下:

1)从根结点开始判断并寻找出现:

在说明书附图的图6的结点的子网树内,重新计算其各个结点的最小树根距离说明书附图的图7给出了其计算结果,由此能够看出,在满足局部-整体约束的条件下,结点能够到达叶子层的最后一个结点是结点此时已有路径是<9>,其γ-距离为0;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<9>中,此时已有路径是<7,9>,其γ-距离为0;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<7,9>中,此时已有路径是<6,7,9>,其γ-距离为1;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<6,7,9>中,此时已有路径是<4,6,7,9>,其γ-距离为1,即找到一条出现<4,6,7,9>,并加入到结果集occ(s,p)中;

2)从根结点开始判断并寻找出现:

在说明书附图的图7中删除出现<4,6,7,9>,在结点的子网树内,重新计算其各个结点的最小树根距离说明书附图的图8给出了其计算结果,由此能够看出,在满足局部-整体约束的条件下,结点能够到达叶子层的最后一个结点是结点此时已有路径是<7>,其γ-距离为0;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<7>中,此时已有路径是<6,7>,其γ-距离为0;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<6,7>中,此时已有路径是<3,6,7>,其γ-距离为0;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<3,6,7>中,此时已有路径是<2,3,6,7>,其γ-距离为1,即找到一条出现<2,3,6,7>,并加入到结果集occ(s,p)中;

3)从根结点开始判断并寻找出现:

在说明书附图的图8中删除出现<2,3,6,7>,在说结点的子网树内,重新计算其各个结点的最小树根距离说明书附图的图9给出了其计算结果,由此能够看出,在满足局部-整体约束的条件下,结点能够到达叶子层的最后一个结点是结点此时已有路径是<6>,其γ-距离为为0;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<6>中,此时已有路径是<5,6>,其γ-距离为为1;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<5,6>中,此时已有路径是<2,5,6>,其γ-距离为为1;由结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到结点的双亲结点将其加入到已有路径<2,5,6>中,此时已有路径是<1,2,5,6>,其γ-距离为1,即找到一条出现<1,2,5,6>,加入到结果集occ(s,p)中;

此时已到达树根层的第一个结点,完成了具有局部-整体约束的无重叠近似模式匹配,结果集occ(s,p)中共三个出现,在显示器上输出结果集occ(s,p)中所有出现,即<1,2,5,6>、<2,3,6,7>和<4,6,7,9>。

图4表明,本实施例根据给定模式p=b[0,1]a[0,2]b[0,2]b中的子模式数确定网树的层数,由于给定的模式p中存在4个子模式,子模式p1=b、子模式p2=a、子模式p3=b、子模式p4=b,故网树有4层,分别记作第1层、第2层、第3层和第4层。

图5表明,本实施例根据给定的序列s、模式p、局部阈值δ以及整体阈值γ创建的一棵网树,并计算出各个结点的dδ(si,pj),以及计算各个结点的最小树根距离每个结点左侧第一行的数据表示字符si与子模式pj之间的δ-距离dδ(si,pj),第二行的数据表示结点的最小树根距离对于dδ(si,pj)>δ的结点不需要被创建,由于dδ(s5,p2)>δ,因此结点不需要被创建;图中的黑色虚线表示两个结点之间满足间隙约束,但由于局部-整体约束的限制,不能在两个结点之间建立双亲关系;对于没有双亲的结点说明没有经过该结点的满足局部-整体约束的路径,需要被删除,不需要被创建,由于结点和结点都没有双亲,因此结点和结点被删除,不被创建。

图6为说明书附图的图5去掉其中不能到达叶子层的结点、无效双亲关系、以及无效结点后的网树,其中不存在无效双亲关系和无效结点,并且每个结点都能够到达叶子层,每个结点左侧第一行的数据表示字符si与子模式pj之间的δ-距离dδ(si,pj),第二行的数据表示结点的最小树根距离

图7表明,在说明书附图的图6的结点的子网树内,重新计算其各个结点的最小树根距离并根据各个结点的最小树根距离判断出结点能够到达叶子层的最后一个结点是结点然后从结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到一条出现<4,6,7,9>。

图8表明,在说明书附图的图7中删除出现<4,6,7,9>,并在结点的子网树内,重新计算其各个结点的最小树根距离判断出结点能够到达叶子层的最后一个结点是结点然后从结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到一条出现<2,3,6,7>。

图9表明,在说明书附图的图8中删除出现<2,3,6,7>,并在结点的子网树内,重新计算其各个结点的最小树根距离判断出结点能够到达叶子层的最后一个结点是结点然后从结点开始,在满足局部-整体约束的条件下,根据最右双亲策略,在结点的子网树内向上找到一条出现<1,2,5,6>。

实施例2

除“第三步,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题中,本实施例中选用四种相似的寻找出现的方法中的第二种,即从树根层的第一个结点开始,在满足局部-整体约束的条件下,判断该根结点能否到达叶子层,当能到达时,则从能够到达的叶子层的第一个结点开始,在满足局部-整体约束的条件下,根据最左双亲策略,在当前根结点的子网树内向上回溯一条树根叶子路径,即找到一条出现;”之外,其他同实施例1。

实施例3

除“第三步,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题中,本实施例中选用四种相似的寻找出现的方法中的第三种,即从叶子层的最后一个结点开始,在满足局部-整体约束的条件下,判断该叶子结点能否到达树根层,当能到达时,则从能够到达的树根层的最后一个结点开始,在满足局部-整体约束的条件下,根据最右孩子策略,在当前叶子结点的子网树内向下回溯一条树根叶子路径,即找到一条出现;”之外,其他同实施例1。

实施例4

除“第三步,利用网树结构来解决(δ,γ)-距离下的无重叠近似模式匹配问题中,本实施例中选用四种相似的寻找出现的方法中的第四种,即从叶子层的第一个结点开始,在满足局部-整体约束的条件下,判断该叶子结点能否到达树根层,当能到达时,则从能够到达的树根层的第一个结点开始,在满足局部-整体约束的条件下,根据最左孩子策略,在当前叶子结点的子网树内向下回溯一条树根叶子路径,即找到一条出现;”之外,其他同实施例1。

本发明不仅限于以上实施例,凡是利用本发明的设计思路,做一些简单变化的设计都应进入本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1