1.一种射频识别系统中快速选择标签子集的近似最优方法,即从具有N个标签的标签集合S={t1,t2,…,ti,…,tN}中选择出n个标签形成子集W, 其特征在于:首先,将正整数1~N随机分配给标签集合S中的每个标签,标签ti分配到的正整数记为γ(ti),γ(ti)同时作为标签ti的唯一读取顺序,γ(ti)∈{1,2,…,N};然后,基于标签的唯一读取顺序对标签进行识别,包括消息Msg构建过程和标签检测过程两部分:(1)消息Msg构建过程:从阅读器R的角度出发,对从标签集合S中选择出的n个标签,按照唯一读取顺序由小到大的顺序进行排序,形成子集W={w1,w2,…,wj,…,wn},wj表示选择出的n个标签中,唯一读取顺序由小到大排在第j位的标签;
将标签wj划分为不相交的两个部分,分别记为高位部分和低位部分;高位部分为标签wj的前 位,低位部分为标签wj的后 位;
通过函数 计算标签wj的索引值,通过函数O(wj)=mod(γ(wj)‑1,L H
2)计算标签wj的偏移量;子集W中所有n个标签的偏移量构成阵列C,I(wj)存在2种可能值,H
创建一个包含2个0的数组A对子集W中的I(wj)的各种可能值出现的次数进行统计,统计结果构成数组D;将阵列C和数组D的组合作为消息Msg;
(2)标签检测过程:从接收到的消息Msg中提取子集W中所有n个标签的唯一读取顺序,若标签ti的索引值和偏移量包含在消息Msg中,则认为标签ti属于子集W。
2.根据权利要求1所述的射频识别系统中快速选择标签子集的近似最优方法,其特征在于:包括如下步骤:
S1:阅读器R基于消息Msg构建过程构建消息Msg,该消息Msg对子集W中的所有n个标签的索引值和偏移量进行编码;
S2:阅读器R向所有标签ti广播消息Msg;
S3:解码消息Msg中包含的索引值和偏移量,确认标签ti的索引值和偏移量是否包含在消息Msg中:若标签ti的索引值和偏移量包含在消息Msg中,则认为标签ti属于子集W,将标签ti标记为就绪状态;否则,将标签ti标记为停用状态。
3.根据权利要求1所述的射频识别系统中快速选择标签子集的近似最优方法,其特征在于:所述消息Msg构建过程包括如下步骤:(1)定义一个n单元的阵列C,第j个单元记为C[j]=O(wj);
H
(2)I(wj)存在2种可能值,对子集W进行统计,第k种可能值出现的次数记为mk,第(k+1)H H
种可能值大于第k种可能值,mk=0,1,2,…,k=1,2,…,2 ;创建一个包含2个0的数组A,在第k个0前面插入mk个1,将数组A更新为数组D;
(3)将阵列C和数组D的组合作为消息Msg。
4.根据权利要求1所述的射频识别系统中快速选择标签子集的近似最优方法,其特征在于:所述标签检测过程中,对接收到的消息Msg进行解码,得到阵列C和数组D:若在消息Msg中同时检测到标签ti的索引值和偏移量,则认为标签ti属于子集W;否则,认为标签ti属于集合(S‑W);具体包括如下步骤:(1)对接收到的消息Msg进行解码,提取标签ti的唯一读取顺序γ(ti),计算标签ti的索引值 获取索引值小于I(ti)的标签的数量J,索引值小于等于I(ti)的标签的数量K;
(2)若J=K,则认为子集W中没有与标签ti相同的索引值;否则,判断标签ti包含在数组D中,进入步骤(3);
L
(3)计算标签ti的偏移量O(ti)=mod(γ(ti)‑1,2),再在C[J+1],C[J+2],C[J+3],…,C[K]中检查是否存在值等于O(ti)的元素C[k],k=J+1,J+2,…,K:若存在,则认为标签ti的偏移量O(ti)在C[J+1]和C[K]之间,标签ti包含在阵列C中,判断标签ti属于子集W,将标签ti标记为就绪状态。