主权项 |
一种基于位并行自动机的RFID事件过滤方法,其特征在于包括如下步骤:1)接收来自RFID中间件应用层事件定义的RFID EPC模式,其格式规范是:urn:epc:pat:TagFormat:Company.Item.Serial,其中TagFormat表示RFID标签的类型,Company、Item、Serial分别表示厂商、产品系列、产品序列号;2)生成EPC模式的正则表达式RE,将EPC模式中的每一段数据域,利用第三方正则表达式生成器,生成各子正则表达式REi;3)构造非确定自动机NFA,将正则表达式RE中的各子正则表达式REi看作是由一个语法生成的字符串,利用Unix工具Lex或Yacc,从语法产生能够识别子正则表达式的自动机,将子正则表达式转化为表达式树,然后将表达式树通过Glushkov构造法转换为非确定有限自动机NFAi,最后连接各个非确定有限自动机NFAi以构成匹配正则表达式RE的非确定自动机NFA;4)对于各个识别子正则表达式REi的非确定有限自动机NFAi,计算出:子正则表达式REi的所有状态位集Qi;初始状态Ii;终止状态位集Fi;从第n个状态通过字符ψ所到达的状态Bi[n,ψ];利用上述结果,计算得到两个位并行表达式:a)通过字符ψ到达的所有状态的位集Bi[ψ];b)从状态集S通过任意字符到达的状态Tran i[S];5)位并行自动机匹配,位并行自动机接收RFID中间件设备管理采集的RFID事件,格式为:urn:epc:pat:TagFormat:Company.Item.Serial,每一数据域是具体的数字,首先令NFAi的当前状态为初始状态Si=Ii,pos=0,然后对于每个数据域的数据Ti=t1t2......tn,先判断Si&Fi!=0是否成立,如果成立,则匹配成功,如果不成立,再判断Si=0是否成立,如果成立,则判定匹配失败,否则判断POS<n是否成立,如不成立,则判定匹配失败,如成立,则pos++进行下一个循环。 |