Beruflich Dokumente
Kultur Dokumente
= < +
(2)
2.3.3. Description of Hash-tree algorithm. Symbols for
algorithm description are given in Table 1. Now we
describe the hash-tree anti-collision algorithm in two
parts, both reader algorithm and tag algorithm. The
program list of reader algorithm is as following:
STEP1L=59,w=1,f=0, s=-1;
STEP2Command (w, L, f, s); squ=Generate_queue();
Add_recorder(f, w, L, squ, 0);
STEP3if (!c
k
) { delete(f); f--; goto STEP7;} else goto STEP4;
STEP4if (2.3922c
k
>=L) goto STEP5; else goto STEP6;
STEP5if(prime(2*L)>L
MAX
) goto STEP6;
else {
L=prime(2*L); s=-1; w=1; SetFlag(f); f++;
Command(w, L, f, s); squ=Generate_queue();
Add_recorder(f, w, L, squ, 0);
} goto STEP3;
STEP6if (Len(f)>5) L=5; else L=Little(Len(f));
s=Slot(f); w=Len(f)*Weight(f); f++;
Command(w, L, f, s); squ=Generate_queue();
Add_recorder(f, w, L, squ, 0);
goto STEP3;
STEP7if(Flag(f)) {delete(f); f--; goto STEP9;}
else goto STEP8;
STEP8deleteSlot(f); if(Slot(f)==-1) {delete(f); f--;
goto STEP9; } else goto STEP6;
Third International Conference on Natural Computation (ICNC 2007)
0-7695-2875-9/07 $25.00 2007
STEP9if(f<0) Algorithm is over; else goto STEP7;
The procedure of tag algorithm lists following:
STEP1f
tag
=s
tag
=-1;
STEP2to receive Commandw, L, f, s;
STEP3if (s==-1||f==f
tag
) {
compute s
tag
according to formula(1);
send data in slot Number s
tag
; }
STEP4if (receive confirmation from reader) {
algorithm end;}
else { f
tag
++; goto STEP2; }
Table 1. Symbols for algorithm description
Symbol Name Significance
Little(x) return a prime number not more
than variable x
Generate_queue() queue of collision slots in current
frame
Slot(f) return 1
st
element of Squ in frame
No. f, if Squ is empty, return -1
deleteSlot(f) delete 1
st
element of Squ in frame
No. f
Len(f) return the size of frame No. f
Weight(f) return the product of all w in table
from frame No. f to frame No.0
Prime(x) return a prime number closest to x
SetFlag(f) set the Flag of frame No. f
Flag(f) return the Flag of frame No. f
Add_recorder(
f, w, L, squ, flag)
adding to record [f Table w L squ
flag]
delete(f) delete record of the frame No. f
L
MAX
maximal frame size allowed
3. Analysis and verification of Hash-tree
algorithm
We compared the performance of the proposed
algorithm with that of EDFSA algorithm proposed by
reference [5] in two parts, both system efficiency and
identification time. Firstly, we analyzed the evaluation
model of system efficiency. And then we proved that the
system efficiency expectation of the proposed algorithm
was beyond 36.8%. Finally, in the simulation
environment, the difference of identification time between
the proposed algorithm and EDFSA algorithm was given .
3.1. Analysis of System Efficiency
In this section, we introduce system efficiency
standard from reference [5], and define system efficiency
as formula (3) below.
1
100%
c
L
=
3
Following, n denotes the actual number of tags in the
readers identification region; m denotes the whole
number of tags key. Variable p
k
is the probability that a
slot occupied by k tags. Variable a
k
is the expectation of
the number of slots occupied by k tags. In probability
theory, a
1
can be used to estimate c
1
, so the expectation of
system efficiency ( ) can be defined as formula (4).
1
( ) 100%
a
L
= =
4
In the first frame of the proposed algorithm, variable w
is 1, and all the tags will be divided into L groups, each
with m/L tags. The situation that k tags occupy the same
time slot is caused by k tags in one group appeared
randomly in readers identification region. Therefore, we
can describe p
k
-expression for the first frame as formula
(5). According to the principle of parameters selection,
the space of keys will be smaller and smaller after the first
frame. The system efficiency can be got from discussing
the characteristics function of the first frame.
( ) ( ) 1
k m L k
k
m L
p L m L m
k
| |
=
|
\ .
5
From (4) and (5) ,we got,
( )
1 1
1
1
1
m L
a Lp
L L
p L m
= = = =
Marking / m L as r, we got
( )
1 1
1
r
r
= 6
From (6), we got,
( ) ( )
( )
( ) ( ) 1 1 ln 1
2
1 ln 1
1
r r
r r r
d
e
dr r r
(
=
7
According to Maclaurin formula, we got
( )
2
ln ln 1 2
r
r e r r
= +
and differentiate 7we got,
( ) ( ) ( )
( )
( ) ( )
2
1 1 ln 1
2
1 ln 1 2 ln 1
0
1
r r
r r r r
d
e
dr r r
(
+
= >
0 1 r <
8
( )
1 1
1
0 0
lim lim 1 36.8%
r
r r
r e
= = = 9
From (8) and (9), we know is Monotonous
increasing function. When r is closing to 0, reach to
the minimum limit 36.8%. In other words, when the frame
size is much smaller than the number of keys, the
expectation of system efficiency is 36.8%. System
efficiency will be increasing with the proportion between
the frame size and the number of keys.
Assuming the second frame is not the expansion frame
of the first frame, we get that variable w of the second
frame is equal to L of the first frame according to the
principle of frame size adjustment. Using L to denote the
second frame size, we will get
k
p and as following.
'
' '
1 '
m
k k
LL
k
m
LL LL
p LL
m m
k
| |
| | | |
|
=
| |
|
\ . \ .
\ .
10
Third International Conference on Natural Computation (ICNC 2007)
0-7695-2875-9/07 $25.00 2007
1
'
1
'
' / ' 1
m
LL
LL
L p L
m
| |
= =
|
\ .
11
Clearly,
'
LL
m
is larger than
L
m
, and that is
Monotonous increasing function has be proved ahead.
Therefore, the system efficiency of the first frame is
smaller than that of the second frame. The expectation of
system efficiency is larger and larger with frame number
increasing, and its range is between 36.8% and 1.
Using the principle that system efficiency reaches to
maximum 36.8% when the number of tags is equal to
frame size, EDFSA algorithm keeps system efficiency
between 34.6% and 36.8% by the method of dividing tags
into several groups.
In a word, the system efficiency of Hash-tree anti-
collision algorithm breaks through 38.6%, and excelled
ALOHA-based algorithm.
3.2. Identification time comparison
According to basic ideas of both anti-collision
algorithm EDFSA and Hash-tree, we realize the
simulation program. In the simulation environment, L
MAX
in both algorithms is 256, and the initial frame size of
EDFSA is 10, the relation between identification time (t)
and the number of tags (n) is shown in figure 1. When n is
less than 60, EDFSA algorithm is better than Hash-tree
anti-collision algorithm, it is because the initial frame size
of Hash-tree anti-collision algorithm is 59, and maybe
waste slot time when n is less than 59. When n is more
than 60, Identification time of both algorithms increase
linearly with the number of tags. This shows that the two
algorithms have the function of selecting tags to respond.
But slopes of the two curves are different, Hash-tree anti-
collision algorithm is better than EDFSA with a large
number of tags, This also shows that the system efficiency
of the proposed algorithm is higher than that of EDFSA
algorithm.
4. Conclusion
The paper proposed an anti-collision algorithm, hash-
tree anti-collision algorithm, which has many merits such
as higher system efficiency, simple and so on. The
system efficiency of Hash-tree algorithm is beyond
36.8%, better than that of EDFSA algorithm. However,
the Hash-tree algorithm is simpler than the Bit-based
Binary Tree algorithm, doesnt need readers to detect the
exact location of collision bits. Simulation results show
that the number of tags more than 60, particularly with the
large number of tags, the algorithm shown an obvious
advantage. In addition, Hash-tree anti-collision algorithm
has theoretical significance to solve anti-collision
problem, and is bound to promote RFID system to be
used in the mine tracking system, vehicle monitoring,
electronic payments, and other fields.
0
1000
2000
3000
4000
5000
6000
1
0
3
0
5
0
1
5
0
2
5
0
3
5
0
4
5
0
5
5
0
6
5
0
7
5
0
8
5
0
9
5
0n
t ( ms)
EDFSA HashTr ee
Figure 1. Tag identification
time for the number of tags
References
[1] Songsen Yu, Yiju ZhanAnti-collision Algorithm Based on
Jumping and Dynamic Searching and Its Analysis. Computer
Engineering, 2005, 31(9).
[2] Peter Bawkes, Consultant to BTG International Ltd. Anti-
collision and Transponder Selection Methods for Grouped
Vicinity Cards and RFID tags. RFID Technology, 1999.
[3] H. Vogt. Multiple Object Identification with Passive RFID
Tags. 2002 IEEE International Conference on Systems, Man and
Cybernetics, October 2002.
[4] Jae-Ryong Cha, Jae-Hyun Kim. Novel Anti-collision
Algorithms for Fast Object Identification in RFID System.
ICPADS05, 2005.
[5] Su-Ryun Lee, Sung-Don Joo, Chae-Woo Lee. An Enhanced
Dynamic Framed Slotted ALOHA Algorithm for RFID Tag.
MobiQuitous05, 2005.
Third International Conference on Natural Computation (ICNC 2007)
0-7695-2875-9/07 $25.00 2007