[发明专利]确定自动机的空间压缩方法有效
申请号: | 200910090556.3 | 申请日: | 2009-08-20 |
公开(公告)号: | CN101630323A | 公开(公告)日: | 2010-01-20 |
发明(设计)人: | 杨毅夫;刘燕兵;刘萍;郭莉 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京泛华伟业知识产权代理有限公司 | 代理人: | 王 勇 |
地址: | 100190北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 确定 自动机 空间 压缩 方法 | ||
1.一种确定自动机的空间压缩方法,包括:
步骤1)、对确定自动机中的各个状态做分簇操作,得到多个用于表示 状态集合的簇;
步骤2)、将所述确定自动机中各个状态的转移边按步骤1)所得到的 簇分类,得到多个簇矩阵、与所述簇矩阵对应的位图以及一个剩余矩阵; 其中,所述簇矩阵包括指向同一簇的转移边,所述位图用于描述簇矩阵中 相关元素的有效性;所述剩余矩阵包括确定自动机中未被包含到所述簇矩 阵中的剩余转移边;
步骤3)、为所述簇矩阵中的各行提取基值,然后将所述簇矩阵转换成 一个偏移量矩阵,再将偏移量矩阵中的各行合并,增加用于标记可合并状 态的索引数组,得到所述簇矩阵的压缩矩阵;其中,
所述的基值为基值所在行所对应簇中的最小值,所述的偏移量矩阵中 的偏移量为所述簇矩阵中的转移边的值与所述基值间的差;
所述的将偏移量矩阵中的各行合并时,满足以下规则:在矩阵T中, 当且仅当对任意字符c满足T[r][c]=-1或者T[s][c]=-1或者T[s][c]= T[r][c]时,行r和行s是可合并的,其中,“-1”代表对应位置的值为无效 值。
2.根据权利要求1所述的确定自动机的空间压缩方法,其特征在于, 还包括:
步骤4)、压缩所述的剩余矩阵。
3.根据权利要求1或2所述的确定自动机的空间压缩方法,其特征 在于,所述的步骤1)包括:
步骤1-1)、从确定状态机的初始状态开始做广度优先遍历,得到trie 树结构;
步骤1-2)、对所得到的trie树中的各个状态做分簇操作,得到多个用 于表示状态集合的簇;其中,在做分簇操作时,将所述确定自动机的初始 状态作为一个单独的簇,将所述确定自动机中一个状态的所有直接后继状 态的集合作为一个簇。
4.根据权利要求1或2所述的确定自动机的空间压缩方法,其特征 在于,所述的步骤2)包括:
步骤2-1)、判断所述确定自动机中剩余转移边的数目是否小于阈值, 若小于,则将剩余的转移边填入所述的剩余矩阵中,否则,执行下一步;
步骤2-2)、将所述确定自动机中剩余的所有转移边中指向同一簇最多 的转移边转移到一个簇矩阵中,并用一个对应的位图表示该簇矩阵中元素 的有效性。
5.根据权利要求1或2所述的确定自动机的空间压缩方法,其特征 在于,所述的位图包括多个与所述簇矩阵具有一一对应关系的位图,所述 位图用于描述与其具有对应关系的簇矩阵中元素的有效性。
6.根据权利要求1或2所述的确定自动机的空间压缩方法,其特征 在于,所述的位图包括一个位图,所述位图利用位图中元素的数值大小描 述所述转移边在按簇分类后的位置。
7.一种由权利要求1-6之一的确定自动机的空间压缩方法所得到的矩 阵实现正则表达式匹配的方法,包括:
输入文本,用所述矩阵对所述输入文本进行匹配;所述的用所述矩阵 对所述输入文本进行匹配包括:
步骤a)、在一个簇矩阵对应的位图中查看位图元素bitmap[s][c]是否 为有效状态,若为有效状态,则将所述簇矩阵中基值base[s]和偏移量 T[equal[s]][c]之和的值作为当前状态的直接后继状态,若为无效状态,执 行下一步;
其中,所述的s代表当前状态,所述的c代表输入文本中所要匹配的 字符,所述的equal代表用于标记可合并状态的索引数组,所述的T代表 簇矩阵;
步骤b)、判断是否还存在未经处理的簇矩阵,若存在,则取出未经处 理的下一个簇矩阵及其位图后,重新执行步骤a),否则,执行下一步;
步骤c)、从所述的剩余矩阵中取出T′[s]][c]的值,作为当前状态的直 接后继状态;其中,所述的T′表示剩余矩阵。
8.根据权利要求7所述的正则表达式匹配方法,其特征在于,在所 述的步骤b)中,按照所包含的转移边数量的多少依次选择所述的簇矩阵。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910090556.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种主题网络爬虫系统的设计方法
- 下一篇:嵌入式系统以及硬件设定方法