Research Article A Novel Hybrid Anticollision Algorithm...
Transcript of Research Article A Novel Hybrid Anticollision Algorithm...
Research ArticleA Novel Hybrid Anticollision Algorithm for RFID SystemBased on Grouped Dynamic Framed Recognition and BinaryTree Recursive Process
Jian Yang1 Yonghua Wang1 Qingling Cai2 and Yiju Zhan2
1Faculty of Automation Guangdong University of Technology Guangzhou 510006 China2School of Engineering Sun Yat-sen University Guangzhou 510006 China
Correspondence should be addressed to Jian Yang yangjianijdsn163com
Received 31 October 2014 Revised 23 November 2014 Accepted 8 December 2014
Academic Editor Lizhe Wang
Copyright copy 2015 Jian Yang et alThis is an open access article distributed under the Creative CommonsAttribution License whichpermits unrestricted use distribution and reproduction in any medium provided the original work is properly cited
Recently RFID technology has come into end-user applications for monitoring tracking and so forth In RFID system a readeridentifies a set of tags over a shared wireless channel When multiple tags communicate with the same reader simultaneously allpackages will be lost and no tag can be recognized which is known as tag collision Tag collision is a significantly important issue forfast tag identificationWefirstlymake a thorough analysis among a variety of traditional RFID anticollision algorithmsThen a novelhybrid anticollision algorithm called T-GDFSA is proposed Tags are assigned to different groups based on the initial tag estimationand then experience several dynamic read frames for identification When a collision occurs in current slot a tree-based recursiveprocess will be deployed immediately T-GDFSA combines the advantages of ALOHA-based and tree-based together and acquireshigher system throughput by reducing unnecessary idle and collision slots and lower communication complexity by decreasingthe data transmitted which makes it identify tags faster with less power consumption Simulations show that the theoretical valuesmatch well the simulation results Moreover T-GDFSA also has a good tolerance for the inaccuracy of initial tag estimation andthe length variation of tagrsquos ID
1 Introduction
In the recent decades Radio Frequency Identification (RFID)has become one of the most commonly used technologiesin our daily life RFID technology is similar to the tech-nologies of barcodes and magnetic strips but in additionit has the capability of identifying objects uniquely and evenwithout requiring direct line of sight It is nowadays gettingmore prevalent in daily applications such as electronic tollcollection public transport access control and security andairport luggage position tracking [1 2] A basic RFID systemis composed of a reader and a set of tagsThe reader inquiriestags that are able to communicate on the wireless channelreturning their IDs Tags are typically passive devices whichanswer to readerrsquos query by backscattering the received signal[3 4] However because of all readers and tags sharing thesame communication channel when more than one readertries to transmit to the same tag or more than one tag tries to
communicate with the same reader simultaneously all theirpackages will be lostThis phenomenon is called RFID systemcollision which leads to long identification time low systemefficiency and high power consumption [5 6] As illustratedin Figure 1 there are two different categories of collisions inRFID system (1) reader collision and (2) tag collision Readercollision happens when multiple readers coexisting in thesame area interfere with each other and can be overcome bythe coordination strategy among readers Tag collision occursamong tags simultaneously transmitting to the same readerand may be more difficult to solve because of constraintsof energy supply and computing complexity on tags withlow functionality Since tag collision is considered as a keyproblem affecting the universal adoption of the RFID systemin this paper we primarily focus on tag collision in singlereader scenarios
In order to avoid tag collision many tag anticollisionalgorithms have been proposed so far which can be classified
Hindawi Publishing CorporationInternational Journal of Distributed Sensor NetworksVolume 2015 Article ID 641327 12 pageshttpdxdoiorg1011552015641327
2 International Journal of Distributed Sensor Networks
ReaderTag
Covering
rangeCover
ing
range
(a)
ReaderTag
Covering
range
(b)
Figure 1 (a) Reader collision in RFID system (b) Tag collision in RFID system
into two categories ALOHA-based probabilistic anticollisionalgorithms [7ndash10] and tree-based deterministic anticollisionalgorithms [11ndash13] ALOHA-based algorithms decrease theprobability of collision by randomly scheduling the responsetime of tags In those algorithms identification time isslotted and time slots form up read frames Frame size variesover time and is broadcast by the reader to all tags at thebeginning of each read frameWhen receiving frame size tagsselect one time slot from current read frame randomly andonly respond the reader when the selected time slot comesColliding tags are scheduled into the next read frame to beslotted and identified until there are no tags left The mainrepresentatives are DFSA [8 9] and EDFSA [10] both ofwhich need to estimate the initial tag population to set theproper read frame size to optimize performance Howeverwhen the number of tags becomes much larger comparedwith the frame size the performance deteriorates seriouslyA detailed study of these two algorithms is presented inSection 2 On the other hand tree-based algorithms proceedwith the identification process represented as a tree where theroot responds a set of tags to be identified The algorithmsperiodically query a subset of tags which match the givenquery property and continuously split a set of tags intotwo subsets until each set has only one tag Although theidentification time may be longer than that of ALOHA-basedalgorithms they are deterministic which can avoid that aspecific tag may not be identified all the time leading to theso-called ldquotag starvation problemrdquo The main representativesare BS [11] QT [12] and QTI [12] Unfortunately there aremany distinct disadvantages in BS QT and QTI A greatnumber of colliding subsets exist in BS while performanceof QT and QTI is very sensitive to the distribution of tagrsquos IDA more detailed description is shown in Section 2
Furthermore a good tag anticollision algorithm for RFIDpassive tags should have the following characteristics Firstlya reader must identify all tags existing in its covering rangeas tag starvation problem may cause failure of tracking andpositioning objects Second system throughput should behigh enough to ensure tags are recognized promptly whichis of great importance for mobile tag identification Finally
communication complexity ought to be low since passive tagssupplement power supply from the readerrsquos electromagneticwave which causes the available power for tags being verylimited On the other hand low communication complexityis also very useful for the RFID applications where large scalemobile readers are deployed
Based on the analysis hereinbefore we propose a novelhybrid anticollision algorithm to improve the performance ofRFID tag identification The new algorithm called GroupedDynamic Framed Recognition and Binary Tree RecursiveProcess (T-GDFSA) generally identifies tags by groupeddynamic frames and calls binary tree recursive process tosolve each colliding slot As T-GDFSA combines ALOHA-based and tree-based anticollision together it avoids thewaste of idle slots in the late identification stage in ALOHA-based and colliding slots in the early identification stagein tree-based Also because of the combination the com-munications between the reader and tags become reducedwhich means less power is consumed According to the latersimulations in Section 4 T-GDFSA acquires higher systemthroughput by reducing unnecessary idle and collision timeslots and lower communication complexity by decreasingthe data transmitted between the reader and tags whichoverwhelm other main anticollisions and make it easier to berealized in the end-user applications
The remainder of this paper is organized as followsIn Section 2 a variety of ALOHA-based and tree-basedtag anticollision algorithms are observed specifically InSection 3 the main concept and description of T-GDFSA arepresent in detail In Section 4 evaluation of time complexityand communication complexity of T-GDFSA are proposedrespectively In Section 5 performance simulations betweenT-GDFSA and other anticollision algorithms are shown viaMatlab Lastly Section 6 gives conclusion
2 RFID Tag Anticollision Algorithms
In this section we review the main representatives ofALOHA-based and tree-based tag anticollision algorithmsfor RFID system The major metrics observed include time
International Journal of Distributed Sensor Networks 3
Table 1 The strategy of grouping and frame sizing
Tag populationn
Frame sizeL
Group sizeG
Tag populationn
Frame sizeL
Group sizeG
sdot sdot sdot sdot sdot sdot sdot sdot sdot 177ndash354 256 16ndash11 8 1 355ndash707 256 212ndash19 16 1 708ndash1416 256 420ndash40 32 1 1417ndash2831 256 841ndash81 64 1 sdot sdot sdot sdot sdot sdot sdot sdot sdot
82ndash176 128 1
complexity and communication complexity We analyze timecomplexity by the identification time for recognizing a set oftags expressed by 119879 and study communication complexityby the total bits sent by the reader and the average bits sent bysingle tag for the identification expressed by Bits
119877and Bits
119879
respectively
21 Dynamic Framed Slotted ALOHA (DFSA) DFSA is anALOHA-based algorithm which can adjust the read framesize dynamically according to the estimation of tag pop-ulation The identification process is made of several readframes which is slotted into intervals of time called time slotwhose duration is equal to the tagrsquos ID transmission timeBefore the initialization of the first read frame the readerestimates the unidentified tag population 119899 and sets the readframe size 119871 Tags randomly select one time slot in the rangeof [1 119871] and only respond the reader when the selectedslot comes As the proper frame size is decided in advanceDFSA decreases the potential collision probability to a greatextent The population of unidentified tags is estimated inthe following way Let 119873
119888be the number of colliding time
slots let119873119904be the number of time slots with single tag which
can be identified successfully and let 119862ratio be the ratio of 119873119888
and 119899 which can be calculated by (1) When the current readframe is finished the population of unidentified tags varies to119873119888119862ratio minus119873
119904 which is set to be the new size of the next read
frame to maintain an optimal system throughput
119862ratio = 1 minus (1 minus1
119871)119899
sdot (1 +119899
119871 minus 1) (1)
If we define 119879slot as the duration of time slot 119871 ini as theinitial frame size 119871 as the actual frame size after initial frame119875succ(119896) as the possibility of successful identification for a tagafter 119896 times attempts 119876Repbits as the symbol length of slotinterval ACKbits as the symbol length of acknowledgmentsent by the reader after receiving tagrsquos ID and IDbits as thelength of tagrsquos ID themajormetrics ofDFSA can be describedas follows
119879 = 119879slot sdot (119871 ini + 119871 sdot
infin
sum119896=1
119896119875succ (119896))
Bits119877= 119871bits sdot (
infin
sum119896=1
119896119875succ (119896) + 1) + 119876Repbits sdot 119871
sdot
infin
sum119896=1
119896119875succ (119896) + 119899 sdot ACKbits
Bits119879= IDbits sdot
infin
sum119896=1
119896119875succ (119896)
(2)
However when tag population is large the performanceof DFSA deteriorates heavily This is because the size ofmemory recording the selected slot in tags is limited andcannot keep pace with the increase of tag population whichmakes the optimal condition that the frame size is set equalto the tag population not satisfied
22 Enhanced Dynamic Framed Slotted ALOHA (EDFSA)On the basis of DFSA in order to enhance the systemperformancewhen tag population is large EDFSA introducesthe grouping strategy that it randomly splits tags into differentgroups according to themaximal frame size and the estimatednumber of unread tags Only the tags associated with oneof the groups are queried in the following read framesthen the identifications for tags in other groups are followedsequentially In fact the grouped identification is morelike a combination of several DFSA processes Chebysevrsquosinequality is used in the end of each read frame to estimatethe number of tags left which is used to adjust the number ofgroups and frame size for the incoming read frames
The grouping and frame sizing strategy is represented inTable 1 where the group number and frame size are adjustedin theway of doubling or halving which can be easily realizedin practical applications by the operation of left shifting orright shifting the group register
If we define the same notations as given in DFSA abovethe major metrics of EDFSA can be derived as follows
119879 = 119879slot sdot (119866ini sdot 119871 ini + 119866 sdot 119871 sdot
infin
sum119896=1
119896119875succ (119896))
Bits119877= 119866bits sdot 119871bits sdot (
infin
sum119896=1
119896119875succ (119896) + 1) + 119876Repbits sdot 119866
sdot 119871 sdot
infin
sum119896=1
119896119875succ (119896) + 119899 sdot ACKbits
Bits119879= IDbits sdot
infin
sum119896=1
119896119875succ (119896)
(3)
4 International Journal of Distributed Sensor Networks
23 Binary Tree Algorithm (BS) BS and Query Tree (QT) areboth tree-based algorithms in which the reader iterativelyqueries a subset of tags matching a given property until alltags are identified They differ in the way of querying tagsaccording to a binary random number in BS and a queryprefix in QT In BS the reader recognizes tags in the timeinterval called read cycle Colliding tags are split into twosubsets recursively until just one tag is allocated in everysubset The tag has a counter initialized to 0 in the verybeginning Only tags with counter value equal to 0 canrespond the reader query in current read cycle and othertags keep silent and wait for their counters decreasing to 0Tags modify the value of counter depending on the resultof current identification If a collision happens collidingtags add a 1-bit binary value randomly to their counterswhich are split into two subsets with the counter at 0 andthe counter at 1 respectively Other tags not involved inthe collision increase their counters by 1 to maintain theirformer identifying order unchanged In case of identifyingsuccessfully or no response all tags unread decrease theircounters by 1 and tags with counter at 1 respond the readerin the next read cycle
If we define 119879cycle as the duration of a read cycle lceillog2119899rceil
as the minimal integer not less than log2119899 119862bits as the
length of query command and other parameters as the samenotations given in DFSA above the major metrics of BS canbe expressed as follows
119879
= 119879cycle
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(4)
Bits119877
= 119862bits
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(5)
Bits119879= IDbits sdot log2119899 (6)
The expressions (4) and (5) are general equations when 119896collision times that is the depth of current node (read cycle)in the binary tree (the whole identification process) tendsto positive infinity For convenience we derive the lowerbounds of 119879 and Bits
119877for reference As in BS the binary
tree representing the whole identification process is a strictbinary tree the intermediate nodes denoted by 119862
119865(119899) (ie
the colliding times) achieve minimal value when they areregarded as a complete binary tree whose number of nodescan be expressed as 2119862
119865(119899) + 1 Consider the fact that the
number of all nodes in the strict binary tree satisfies theinequation119873nd(119899) ge 2119862
119865(119899) + 1 = 2 sdotsum
log2119899minus1
119896=02119896 +1 = 2119899minus 3
and each node correspondswith a read cycle sowe can derivethe following expressions for fast tag estimation
119879 ge 119879cycle sdot (2119899 minus 3)
Bits119877ge 119862bits sdot (2119899 minus 3)
(7)
24 Query Tree Algorithm (QT) QT splits a tag set accordingto tagrsquos IDThe reader transmits a query including a bit stringand only the tag whose ID has a prefix matching the querystring responds by transmitting its ID In particular if thecurrent query string is 119902
11199022sdot sdot sdot 119902119899(119902119894isin 0 1) and leads to
a collision the reader uses two 1-bit longer queries that is11990211199022sdot sdot sdot 1199021198990 and 119902
11199022sdot sdot sdot 1199021198991 in the next read cycles in turn
which splits the set of colliding tags into two subsets If acollision still occurs when the new 1-bit longer query stringis sent then the string length is further increased by 1 bitwith 0 or 1 added to the end of the current query stringuntil the collision is solved and a tag is identified successfullyThe reader has a stack 119878 to manage query strings In thebeginning 119878 is initialized as NULL which causes all tagsresponse When collision occurs the reader pushed two 1-bit longer query strings into 119878 When current read cycle isfinished it pops a query string from 119878 for the next read cycleThat 119878 is popped empty indicates that all tags are recognizedNotice that collisions in QT correspond to the intermediatenodes not including the root node compared with BS
If we define the same notations as given in BS above themajor metrics of QT can be derived as follows
119879 le 119879cycle sdot (2887119899 minus 1)
Bits119877le IDbits sdot (2887119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(8)
25 Query Tree Improved Algorithm (QTI) There areamounts of useless query strings in QT which increase theread cycles and depress the system throughput QTI is anenhancement that removes those certainly causing collisionsin advance For example consider the case in which queryprefix 119902 has produced a collision while 1199020 result in noresponse As 1199021 definitely leads to a collision QTI skips itdirectly and takes 11990210 as the next query prefix
Compared with QT QTI only reduces the amount of datatransmitted by the reader while it maintains the amount ofdata sent by tags unchanged which alsomakes the expressionof Bits
119879unchanged
If we follow the same notations defined in BS we canobtain the formulas as follows
119879 le 119879cycle sdot (2665119899 minus 1)
Bits119877le IDbits sdot (2665119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(9)
From what has been discussed hereinbefore we can seeclearly that regardless of time or communication complexitythe metrics of ALOHA-based including DFSA and EDFSA
International Journal of Distributed Sensor Networks 5
are the same order infinitesimal of 119899 while the metricsof tree-based including BS QT and QTI are the higherorder infinitesimal of 119899 Although the metrics of tree-basedalgorithms seem worse they are deterministic which canavoid the so-called ldquotag starvation problemrdquo that a specifictag may not be identified all the time in ALOHA-basedalgorithms
3 The Proposed Algorithm T-GDFSA
The proposed algorithm T-GDFSA can be divided into twosteps the step of the estimation of tag population and thestep of tag identification The former is just implementedonce to estimate the initial number of tags existing in thecovering range of the reader which is used in the second stepto calculate the optimal number of groups and frame size ineach group In T-GDFSA the method used for tag estimationis similar to TEM (Tag Estimation Method) [14] At the endof each read cycle the recorded triple numbers ⟨119888
0 1198881 119888119896⟩
can be obtained from the readerrsquos memory which quantifiesthe number of idle time slots successful time slots occupiedby only one tag and colliding slots with more than twotags respectively Meanwhile the expected triple numbers⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ can be computed from the given framesize 119873 and the number 119899 of tags by statistical knowledgeAccording to Chebyshevrsquos expression the outcome of arandom experiment involving a random variable 119883 is mostlikely somewhere near the expected value of119883This propertyis used to calculate the distance between the recorded results⟨1198880 1198881 119888119896⟩ and the expected results ⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ of eachread cycle as defined in (10) When theminimal distance isachieved the corresponding 119899 is considered to be the optimalestimation of tag population Consider
120576 (119873 1198880 1198881 119888119896) = min119899
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(
1198861198731198990
1198861198731198991
119886119873119899119896
) minus (
1198880
1198881
119888119896
)
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(10)
where 119886119873119899119896
is the expected value of colliding slots with 119896 tagsthen
119886119873119899
119896= 119873 sdot (
119899
119896) sdot (
1
119873)119896
sdot (1 minus1
119873)119899minus119896
(119896 le 119899) (11)
In (10) the minimal 120576 is supposed to be achieved by asearching process with 119899 varying in the range [119888
1+ 2119888119896 3(1198881+
2119888119896)] where 119888
1+ 2119888119896is the lower bound of 119899 according to
[15] since 1198881tags have been identified and if there are 119888
119896
collisions at least 2119888119896tags collided The upper bound of 119899 is
set to 3(1198881+ 2119888119896) since by simulation no further accuracy in
the estimation is obtained if the upper bound is set to highervalues
From [1] we know that the system throughput becomesoptimal when the frame size is set equal to the number of tagsIn order to satisfy this condition the grouping size is adjustedby 1 each time to ensure that the number of tags in eachgroup is very close to the frame size The optimal groupingsize is decided by the expected system efficiency Suppose
the current number of groups is 119896 it will be increased to 119896+1
if the expected system efficiency with 119896 + 1 groups rises justequal to that with 119896 groups Consider
119886119873119899119896
1
119873=
119886119873119899(119896+1)
1
119873(119896 = 1 2 ) (12)
From (12) the maximum number of tags with 119896 groups is
119899119896=lg (119896 (119896 + 1))
lg (1 minus 1119873)sdot 119896 sdot (119896 + 1) (119896 = 1 2 ) (13)
By the utilization of (13) the optimal grouping size 119866 can beobtained with a varying 119899 and a given frame size 119871
Then the optimal 119866 is broadcast by the reader with arandom number to tags Grouping rule is as follows Each taggenerates a new random number by the old received one andits serial number (tagrsquos ID) Then the new random number isdivided by 119866 and all tags have a group number randomly inthe range [0 119866 minus 1] In the current read frame only tags withgroup number 0 are permitted to respond the reader Whenall of them have been identified the reader begins a new readframe and tags with group number 1 are involvedThe processcontinues until tags having group number 119866 minus 1 are queriedwhich means all tags have been recognizedThe frame size ofeach read frame decides how many time slots are included init At the beginning of each read frame the reader broadcaststhe optimal frame size 119871 to all tags which means there are119871 time slots in the incoming read frame and tags involvedgenerate an integer 119871
119894in the range [1 119871] and save it in its slot
counter By this means tags are allocated into 119871 time slotsrandomly In the first time slot initiated by the reader tagswith slot counter at 0 are permitted to respond the readerWhen all tags in current time slot have been identified thereader polls the next time slot and informs other unidentifiedtags to decrease their time slot counter by 1 Tags whose valueof slot counters decreasing to 0 are permitted to respond thereader in the incoming time slot If a collision happens inthe current time slot tags involved add 0 or 1 randomly totheir slot counters which cause them to fall into two subsets Itmeans that a binary tree is introduced and colliding tags aresubdivided into two child nodes of the current parent noderandomly Other tags increase their slot counters by 1 so as tocounteract the effect caused by splitting for the colliding tagsto keep their former identification sequence unchangedAftersplitting the reader firstly turns to identify the tags in the leftchild node of current parent node and if a collision is stilldetected the node-splitting process will be executed againand tags falling into the deeper left child node will be read inthe incoming time slotThe process will keep on going recur-sively until there is no collision happened in the current leftchild node Because there is nomore than 1 tag in the leaf tagin it can be identified successfully and then muted Next thereader returns up to the parent node of the current left childnode then turns down to the right child node and identifiestags in itThere are three possible outcomes Collision slotwillcause a new node-splitting process similar to that representedbeforehand 1-tag slot will make the reader identify the tagsuccessfully and then return to the parent node Idle slot willmake the reader directly come back to the parent node Next
6 International Journal of Distributed Sensor Networks
0 1
10
0 1
0 1
0 1
Time slot
1 2 3 4 5 6 7Group
middot middot middot
middot middot middot
middot middot middot
1 i i + 1 i + 2 i + 3 i + 4 i + 5 i + 6 i + 7 i + 8
Lev = 0
Lev = 1
Lev = 2
Lev = 3
120601
120601
120601 120601 120601
Figure 2 The execution process of the T-GDFSA
as all the child nodes of the parent node have been identifiedthe reader will return to the upper parent node The proce-durewill continue recursively until all nodes of the binary treehave been queried which means all tags in current collidingtime slot have been identified In the initiation of each binarytree recursive process the reader sets a level counter forcurrent colliding slot to record the depth of current node(ie read cycle) in the binary tree It is increased by 1 when acollision happens in current node and the reader goes deeperto the child nodes and is decreased by 1 when all tags inthe child nodes are already identified and the reader returnsto the upper parent node Level counter which decreasedto 0 indicates that all tags in the current collision slot havebeen identified In Figure 2 the tag identification process forgroup 1 is illustrated where Lev means the level counter Φdenotes no tag responding and each ldquo∙rdquo represents one tagThe identification processes for other groups are similar
4 Performance Evaluation
In this section wewill evaluate the performance of T-GDFSAThere are several metrics focusing on different aspects ofRFID system We take time complexity and communicationcomplexity for emphatic analysis Because time complex-ity reflects the identification efficiency which is of greatimportance for fast tag identification and communicationcomplexity indicates power consumption of the reader andtags which is of great significance for mobile RFID appli-cations Time complexity is defined as the total time spentto identify a set of tags in the covering range of the readerCommunication complexity refers to the amount of datatransmitted between the reader and tags which can becomposed of two parts Bits
119877(the total number of bits sent
by the reader) and Bits119879(the total number of bits transmitted
by single tag in average)Prior to deeper analysis it is necessary to make the
following important assumptions
Assumption 1 As data received by the reader aremostly shortsymbols such as acknowledgement symbols and so forth
which are much less compared with the data sent by thereader we simply ignore it and consider that Bits
119877totally
represents the communication complexity on reader
Assumption 2 The duration of time slot in read frame is setequal to that of read cycle in binary tree which is denoted bythe unified symbol 119879cycle making it possible to calculate thesystem throughput quantificationally
Assumption 3 In most RFID applications power consump-tion of tags is more sensitive than that of the reader So weproposed a new strategy dedicated to reducing Bits
119879 which
is deployed as follows Instead of sending complete tagrsquos IDdirectly tag firstly sends IDTest (a short bit string) to testthe state of the current time slot If no collision happensIDTest can be received by the reader successfully The readerresponds with the acknowledgement IDReq to require thetag to transmit its complete ID The strategy eliminates theuselessmass data transmission of tagrsquos ID caused by collisionsand ensures that tagrsquos ID is sent only once Since the length ofIDTest ismuch shorter than that of tagrsquos ID Bits
119879is decreased
drastically
41 Time Complexity The total consumed time denoted by119879 consists of three parts 119879est (time cost in the estimation oftag population) 119879rf (time cost in read frames) and 119879rc (timecost in read cycles of binary tree recursive process) Then weget
119879 = 119879est + 119879rf + 119879rc (14)
Let 119866ini denote the initial grouping size for the estimation oftag population and let 119866(119899) denote the actual grouping sizecalculated by (13) 119871 ini and 119871(119899) represent the initial framesize and the actual frame size separately 119899 is the numberof unidentified tags Then 119879est and 119879rf can be expressed as119866ini119871 ini119879cycle and 119866(119899)119871(119899)119879cycle respectively According to[1] when the condition of maximal throughput of framedslotted ALOHA the read frame size is equal to the numberof unidentified tags is satisfied the average number of tags in
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
2 International Journal of Distributed Sensor Networks
ReaderTag
Covering
rangeCover
ing
range
(a)
ReaderTag
Covering
range
(b)
Figure 1 (a) Reader collision in RFID system (b) Tag collision in RFID system
into two categories ALOHA-based probabilistic anticollisionalgorithms [7ndash10] and tree-based deterministic anticollisionalgorithms [11ndash13] ALOHA-based algorithms decrease theprobability of collision by randomly scheduling the responsetime of tags In those algorithms identification time isslotted and time slots form up read frames Frame size variesover time and is broadcast by the reader to all tags at thebeginning of each read frameWhen receiving frame size tagsselect one time slot from current read frame randomly andonly respond the reader when the selected time slot comesColliding tags are scheduled into the next read frame to beslotted and identified until there are no tags left The mainrepresentatives are DFSA [8 9] and EDFSA [10] both ofwhich need to estimate the initial tag population to set theproper read frame size to optimize performance Howeverwhen the number of tags becomes much larger comparedwith the frame size the performance deteriorates seriouslyA detailed study of these two algorithms is presented inSection 2 On the other hand tree-based algorithms proceedwith the identification process represented as a tree where theroot responds a set of tags to be identified The algorithmsperiodically query a subset of tags which match the givenquery property and continuously split a set of tags intotwo subsets until each set has only one tag Although theidentification time may be longer than that of ALOHA-basedalgorithms they are deterministic which can avoid that aspecific tag may not be identified all the time leading to theso-called ldquotag starvation problemrdquo The main representativesare BS [11] QT [12] and QTI [12] Unfortunately there aremany distinct disadvantages in BS QT and QTI A greatnumber of colliding subsets exist in BS while performanceof QT and QTI is very sensitive to the distribution of tagrsquos IDA more detailed description is shown in Section 2
Furthermore a good tag anticollision algorithm for RFIDpassive tags should have the following characteristics Firstlya reader must identify all tags existing in its covering rangeas tag starvation problem may cause failure of tracking andpositioning objects Second system throughput should behigh enough to ensure tags are recognized promptly whichis of great importance for mobile tag identification Finally
communication complexity ought to be low since passive tagssupplement power supply from the readerrsquos electromagneticwave which causes the available power for tags being verylimited On the other hand low communication complexityis also very useful for the RFID applications where large scalemobile readers are deployed
Based on the analysis hereinbefore we propose a novelhybrid anticollision algorithm to improve the performance ofRFID tag identification The new algorithm called GroupedDynamic Framed Recognition and Binary Tree RecursiveProcess (T-GDFSA) generally identifies tags by groupeddynamic frames and calls binary tree recursive process tosolve each colliding slot As T-GDFSA combines ALOHA-based and tree-based anticollision together it avoids thewaste of idle slots in the late identification stage in ALOHA-based and colliding slots in the early identification stagein tree-based Also because of the combination the com-munications between the reader and tags become reducedwhich means less power is consumed According to the latersimulations in Section 4 T-GDFSA acquires higher systemthroughput by reducing unnecessary idle and collision timeslots and lower communication complexity by decreasingthe data transmitted between the reader and tags whichoverwhelm other main anticollisions and make it easier to berealized in the end-user applications
The remainder of this paper is organized as followsIn Section 2 a variety of ALOHA-based and tree-basedtag anticollision algorithms are observed specifically InSection 3 the main concept and description of T-GDFSA arepresent in detail In Section 4 evaluation of time complexityand communication complexity of T-GDFSA are proposedrespectively In Section 5 performance simulations betweenT-GDFSA and other anticollision algorithms are shown viaMatlab Lastly Section 6 gives conclusion
2 RFID Tag Anticollision Algorithms
In this section we review the main representatives ofALOHA-based and tree-based tag anticollision algorithmsfor RFID system The major metrics observed include time
International Journal of Distributed Sensor Networks 3
Table 1 The strategy of grouping and frame sizing
Tag populationn
Frame sizeL
Group sizeG
Tag populationn
Frame sizeL
Group sizeG
sdot sdot sdot sdot sdot sdot sdot sdot sdot 177ndash354 256 16ndash11 8 1 355ndash707 256 212ndash19 16 1 708ndash1416 256 420ndash40 32 1 1417ndash2831 256 841ndash81 64 1 sdot sdot sdot sdot sdot sdot sdot sdot sdot
82ndash176 128 1
complexity and communication complexity We analyze timecomplexity by the identification time for recognizing a set oftags expressed by 119879 and study communication complexityby the total bits sent by the reader and the average bits sent bysingle tag for the identification expressed by Bits
119877and Bits
119879
respectively
21 Dynamic Framed Slotted ALOHA (DFSA) DFSA is anALOHA-based algorithm which can adjust the read framesize dynamically according to the estimation of tag pop-ulation The identification process is made of several readframes which is slotted into intervals of time called time slotwhose duration is equal to the tagrsquos ID transmission timeBefore the initialization of the first read frame the readerestimates the unidentified tag population 119899 and sets the readframe size 119871 Tags randomly select one time slot in the rangeof [1 119871] and only respond the reader when the selectedslot comes As the proper frame size is decided in advanceDFSA decreases the potential collision probability to a greatextent The population of unidentified tags is estimated inthe following way Let 119873
119888be the number of colliding time
slots let119873119904be the number of time slots with single tag which
can be identified successfully and let 119862ratio be the ratio of 119873119888
and 119899 which can be calculated by (1) When the current readframe is finished the population of unidentified tags varies to119873119888119862ratio minus119873
119904 which is set to be the new size of the next read
frame to maintain an optimal system throughput
119862ratio = 1 minus (1 minus1
119871)119899
sdot (1 +119899
119871 minus 1) (1)
If we define 119879slot as the duration of time slot 119871 ini as theinitial frame size 119871 as the actual frame size after initial frame119875succ(119896) as the possibility of successful identification for a tagafter 119896 times attempts 119876Repbits as the symbol length of slotinterval ACKbits as the symbol length of acknowledgmentsent by the reader after receiving tagrsquos ID and IDbits as thelength of tagrsquos ID themajormetrics ofDFSA can be describedas follows
119879 = 119879slot sdot (119871 ini + 119871 sdot
infin
sum119896=1
119896119875succ (119896))
Bits119877= 119871bits sdot (
infin
sum119896=1
119896119875succ (119896) + 1) + 119876Repbits sdot 119871
sdot
infin
sum119896=1
119896119875succ (119896) + 119899 sdot ACKbits
Bits119879= IDbits sdot
infin
sum119896=1
119896119875succ (119896)
(2)
However when tag population is large the performanceof DFSA deteriorates heavily This is because the size ofmemory recording the selected slot in tags is limited andcannot keep pace with the increase of tag population whichmakes the optimal condition that the frame size is set equalto the tag population not satisfied
22 Enhanced Dynamic Framed Slotted ALOHA (EDFSA)On the basis of DFSA in order to enhance the systemperformancewhen tag population is large EDFSA introducesthe grouping strategy that it randomly splits tags into differentgroups according to themaximal frame size and the estimatednumber of unread tags Only the tags associated with oneof the groups are queried in the following read framesthen the identifications for tags in other groups are followedsequentially In fact the grouped identification is morelike a combination of several DFSA processes Chebysevrsquosinequality is used in the end of each read frame to estimatethe number of tags left which is used to adjust the number ofgroups and frame size for the incoming read frames
The grouping and frame sizing strategy is represented inTable 1 where the group number and frame size are adjustedin theway of doubling or halving which can be easily realizedin practical applications by the operation of left shifting orright shifting the group register
If we define the same notations as given in DFSA abovethe major metrics of EDFSA can be derived as follows
119879 = 119879slot sdot (119866ini sdot 119871 ini + 119866 sdot 119871 sdot
infin
sum119896=1
119896119875succ (119896))
Bits119877= 119866bits sdot 119871bits sdot (
infin
sum119896=1
119896119875succ (119896) + 1) + 119876Repbits sdot 119866
sdot 119871 sdot
infin
sum119896=1
119896119875succ (119896) + 119899 sdot ACKbits
Bits119879= IDbits sdot
infin
sum119896=1
119896119875succ (119896)
(3)
4 International Journal of Distributed Sensor Networks
23 Binary Tree Algorithm (BS) BS and Query Tree (QT) areboth tree-based algorithms in which the reader iterativelyqueries a subset of tags matching a given property until alltags are identified They differ in the way of querying tagsaccording to a binary random number in BS and a queryprefix in QT In BS the reader recognizes tags in the timeinterval called read cycle Colliding tags are split into twosubsets recursively until just one tag is allocated in everysubset The tag has a counter initialized to 0 in the verybeginning Only tags with counter value equal to 0 canrespond the reader query in current read cycle and othertags keep silent and wait for their counters decreasing to 0Tags modify the value of counter depending on the resultof current identification If a collision happens collidingtags add a 1-bit binary value randomly to their counterswhich are split into two subsets with the counter at 0 andthe counter at 1 respectively Other tags not involved inthe collision increase their counters by 1 to maintain theirformer identifying order unchanged In case of identifyingsuccessfully or no response all tags unread decrease theircounters by 1 and tags with counter at 1 respond the readerin the next read cycle
If we define 119879cycle as the duration of a read cycle lceillog2119899rceil
as the minimal integer not less than log2119899 119862bits as the
length of query command and other parameters as the samenotations given in DFSA above the major metrics of BS canbe expressed as follows
119879
= 119879cycle
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(4)
Bits119877
= 119862bits
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(5)
Bits119879= IDbits sdot log2119899 (6)
The expressions (4) and (5) are general equations when 119896collision times that is the depth of current node (read cycle)in the binary tree (the whole identification process) tendsto positive infinity For convenience we derive the lowerbounds of 119879 and Bits
119877for reference As in BS the binary
tree representing the whole identification process is a strictbinary tree the intermediate nodes denoted by 119862
119865(119899) (ie
the colliding times) achieve minimal value when they areregarded as a complete binary tree whose number of nodescan be expressed as 2119862
119865(119899) + 1 Consider the fact that the
number of all nodes in the strict binary tree satisfies theinequation119873nd(119899) ge 2119862
119865(119899) + 1 = 2 sdotsum
log2119899minus1
119896=02119896 +1 = 2119899minus 3
and each node correspondswith a read cycle sowe can derivethe following expressions for fast tag estimation
119879 ge 119879cycle sdot (2119899 minus 3)
Bits119877ge 119862bits sdot (2119899 minus 3)
(7)
24 Query Tree Algorithm (QT) QT splits a tag set accordingto tagrsquos IDThe reader transmits a query including a bit stringand only the tag whose ID has a prefix matching the querystring responds by transmitting its ID In particular if thecurrent query string is 119902
11199022sdot sdot sdot 119902119899(119902119894isin 0 1) and leads to
a collision the reader uses two 1-bit longer queries that is11990211199022sdot sdot sdot 1199021198990 and 119902
11199022sdot sdot sdot 1199021198991 in the next read cycles in turn
which splits the set of colliding tags into two subsets If acollision still occurs when the new 1-bit longer query stringis sent then the string length is further increased by 1 bitwith 0 or 1 added to the end of the current query stringuntil the collision is solved and a tag is identified successfullyThe reader has a stack 119878 to manage query strings In thebeginning 119878 is initialized as NULL which causes all tagsresponse When collision occurs the reader pushed two 1-bit longer query strings into 119878 When current read cycle isfinished it pops a query string from 119878 for the next read cycleThat 119878 is popped empty indicates that all tags are recognizedNotice that collisions in QT correspond to the intermediatenodes not including the root node compared with BS
If we define the same notations as given in BS above themajor metrics of QT can be derived as follows
119879 le 119879cycle sdot (2887119899 minus 1)
Bits119877le IDbits sdot (2887119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(8)
25 Query Tree Improved Algorithm (QTI) There areamounts of useless query strings in QT which increase theread cycles and depress the system throughput QTI is anenhancement that removes those certainly causing collisionsin advance For example consider the case in which queryprefix 119902 has produced a collision while 1199020 result in noresponse As 1199021 definitely leads to a collision QTI skips itdirectly and takes 11990210 as the next query prefix
Compared with QT QTI only reduces the amount of datatransmitted by the reader while it maintains the amount ofdata sent by tags unchanged which alsomakes the expressionof Bits
119879unchanged
If we follow the same notations defined in BS we canobtain the formulas as follows
119879 le 119879cycle sdot (2665119899 minus 1)
Bits119877le IDbits sdot (2665119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(9)
From what has been discussed hereinbefore we can seeclearly that regardless of time or communication complexitythe metrics of ALOHA-based including DFSA and EDFSA
International Journal of Distributed Sensor Networks 5
are the same order infinitesimal of 119899 while the metricsof tree-based including BS QT and QTI are the higherorder infinitesimal of 119899 Although the metrics of tree-basedalgorithms seem worse they are deterministic which canavoid the so-called ldquotag starvation problemrdquo that a specifictag may not be identified all the time in ALOHA-basedalgorithms
3 The Proposed Algorithm T-GDFSA
The proposed algorithm T-GDFSA can be divided into twosteps the step of the estimation of tag population and thestep of tag identification The former is just implementedonce to estimate the initial number of tags existing in thecovering range of the reader which is used in the second stepto calculate the optimal number of groups and frame size ineach group In T-GDFSA the method used for tag estimationis similar to TEM (Tag Estimation Method) [14] At the endof each read cycle the recorded triple numbers ⟨119888
0 1198881 119888119896⟩
can be obtained from the readerrsquos memory which quantifiesthe number of idle time slots successful time slots occupiedby only one tag and colliding slots with more than twotags respectively Meanwhile the expected triple numbers⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ can be computed from the given framesize 119873 and the number 119899 of tags by statistical knowledgeAccording to Chebyshevrsquos expression the outcome of arandom experiment involving a random variable 119883 is mostlikely somewhere near the expected value of119883This propertyis used to calculate the distance between the recorded results⟨1198880 1198881 119888119896⟩ and the expected results ⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ of eachread cycle as defined in (10) When theminimal distance isachieved the corresponding 119899 is considered to be the optimalestimation of tag population Consider
120576 (119873 1198880 1198881 119888119896) = min119899
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(
1198861198731198990
1198861198731198991
119886119873119899119896
) minus (
1198880
1198881
119888119896
)
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(10)
where 119886119873119899119896
is the expected value of colliding slots with 119896 tagsthen
119886119873119899
119896= 119873 sdot (
119899
119896) sdot (
1
119873)119896
sdot (1 minus1
119873)119899minus119896
(119896 le 119899) (11)
In (10) the minimal 120576 is supposed to be achieved by asearching process with 119899 varying in the range [119888
1+ 2119888119896 3(1198881+
2119888119896)] where 119888
1+ 2119888119896is the lower bound of 119899 according to
[15] since 1198881tags have been identified and if there are 119888
119896
collisions at least 2119888119896tags collided The upper bound of 119899 is
set to 3(1198881+ 2119888119896) since by simulation no further accuracy in
the estimation is obtained if the upper bound is set to highervalues
From [1] we know that the system throughput becomesoptimal when the frame size is set equal to the number of tagsIn order to satisfy this condition the grouping size is adjustedby 1 each time to ensure that the number of tags in eachgroup is very close to the frame size The optimal groupingsize is decided by the expected system efficiency Suppose
the current number of groups is 119896 it will be increased to 119896+1
if the expected system efficiency with 119896 + 1 groups rises justequal to that with 119896 groups Consider
119886119873119899119896
1
119873=
119886119873119899(119896+1)
1
119873(119896 = 1 2 ) (12)
From (12) the maximum number of tags with 119896 groups is
119899119896=lg (119896 (119896 + 1))
lg (1 minus 1119873)sdot 119896 sdot (119896 + 1) (119896 = 1 2 ) (13)
By the utilization of (13) the optimal grouping size 119866 can beobtained with a varying 119899 and a given frame size 119871
Then the optimal 119866 is broadcast by the reader with arandom number to tags Grouping rule is as follows Each taggenerates a new random number by the old received one andits serial number (tagrsquos ID) Then the new random number isdivided by 119866 and all tags have a group number randomly inthe range [0 119866 minus 1] In the current read frame only tags withgroup number 0 are permitted to respond the reader Whenall of them have been identified the reader begins a new readframe and tags with group number 1 are involvedThe processcontinues until tags having group number 119866 minus 1 are queriedwhich means all tags have been recognizedThe frame size ofeach read frame decides how many time slots are included init At the beginning of each read frame the reader broadcaststhe optimal frame size 119871 to all tags which means there are119871 time slots in the incoming read frame and tags involvedgenerate an integer 119871
119894in the range [1 119871] and save it in its slot
counter By this means tags are allocated into 119871 time slotsrandomly In the first time slot initiated by the reader tagswith slot counter at 0 are permitted to respond the readerWhen all tags in current time slot have been identified thereader polls the next time slot and informs other unidentifiedtags to decrease their time slot counter by 1 Tags whose valueof slot counters decreasing to 0 are permitted to respond thereader in the incoming time slot If a collision happens inthe current time slot tags involved add 0 or 1 randomly totheir slot counters which cause them to fall into two subsets Itmeans that a binary tree is introduced and colliding tags aresubdivided into two child nodes of the current parent noderandomly Other tags increase their slot counters by 1 so as tocounteract the effect caused by splitting for the colliding tagsto keep their former identification sequence unchangedAftersplitting the reader firstly turns to identify the tags in the leftchild node of current parent node and if a collision is stilldetected the node-splitting process will be executed againand tags falling into the deeper left child node will be read inthe incoming time slotThe process will keep on going recur-sively until there is no collision happened in the current leftchild node Because there is nomore than 1 tag in the leaf tagin it can be identified successfully and then muted Next thereader returns up to the parent node of the current left childnode then turns down to the right child node and identifiestags in itThere are three possible outcomes Collision slotwillcause a new node-splitting process similar to that representedbeforehand 1-tag slot will make the reader identify the tagsuccessfully and then return to the parent node Idle slot willmake the reader directly come back to the parent node Next
6 International Journal of Distributed Sensor Networks
0 1
10
0 1
0 1
0 1
Time slot
1 2 3 4 5 6 7Group
middot middot middot
middot middot middot
middot middot middot
1 i i + 1 i + 2 i + 3 i + 4 i + 5 i + 6 i + 7 i + 8
Lev = 0
Lev = 1
Lev = 2
Lev = 3
120601
120601
120601 120601 120601
Figure 2 The execution process of the T-GDFSA
as all the child nodes of the parent node have been identifiedthe reader will return to the upper parent node The proce-durewill continue recursively until all nodes of the binary treehave been queried which means all tags in current collidingtime slot have been identified In the initiation of each binarytree recursive process the reader sets a level counter forcurrent colliding slot to record the depth of current node(ie read cycle) in the binary tree It is increased by 1 when acollision happens in current node and the reader goes deeperto the child nodes and is decreased by 1 when all tags inthe child nodes are already identified and the reader returnsto the upper parent node Level counter which decreasedto 0 indicates that all tags in the current collision slot havebeen identified In Figure 2 the tag identification process forgroup 1 is illustrated where Lev means the level counter Φdenotes no tag responding and each ldquo∙rdquo represents one tagThe identification processes for other groups are similar
4 Performance Evaluation
In this section wewill evaluate the performance of T-GDFSAThere are several metrics focusing on different aspects ofRFID system We take time complexity and communicationcomplexity for emphatic analysis Because time complex-ity reflects the identification efficiency which is of greatimportance for fast tag identification and communicationcomplexity indicates power consumption of the reader andtags which is of great significance for mobile RFID appli-cations Time complexity is defined as the total time spentto identify a set of tags in the covering range of the readerCommunication complexity refers to the amount of datatransmitted between the reader and tags which can becomposed of two parts Bits
119877(the total number of bits sent
by the reader) and Bits119879(the total number of bits transmitted
by single tag in average)Prior to deeper analysis it is necessary to make the
following important assumptions
Assumption 1 As data received by the reader aremostly shortsymbols such as acknowledgement symbols and so forth
which are much less compared with the data sent by thereader we simply ignore it and consider that Bits
119877totally
represents the communication complexity on reader
Assumption 2 The duration of time slot in read frame is setequal to that of read cycle in binary tree which is denoted bythe unified symbol 119879cycle making it possible to calculate thesystem throughput quantificationally
Assumption 3 In most RFID applications power consump-tion of tags is more sensitive than that of the reader So weproposed a new strategy dedicated to reducing Bits
119879 which
is deployed as follows Instead of sending complete tagrsquos IDdirectly tag firstly sends IDTest (a short bit string) to testthe state of the current time slot If no collision happensIDTest can be received by the reader successfully The readerresponds with the acknowledgement IDReq to require thetag to transmit its complete ID The strategy eliminates theuselessmass data transmission of tagrsquos ID caused by collisionsand ensures that tagrsquos ID is sent only once Since the length ofIDTest ismuch shorter than that of tagrsquos ID Bits
119879is decreased
drastically
41 Time Complexity The total consumed time denoted by119879 consists of three parts 119879est (time cost in the estimation oftag population) 119879rf (time cost in read frames) and 119879rc (timecost in read cycles of binary tree recursive process) Then weget
119879 = 119879est + 119879rf + 119879rc (14)
Let 119866ini denote the initial grouping size for the estimation oftag population and let 119866(119899) denote the actual grouping sizecalculated by (13) 119871 ini and 119871(119899) represent the initial framesize and the actual frame size separately 119899 is the numberof unidentified tags Then 119879est and 119879rf can be expressed as119866ini119871 ini119879cycle and 119866(119899)119871(119899)119879cycle respectively According to[1] when the condition of maximal throughput of framedslotted ALOHA the read frame size is equal to the numberof unidentified tags is satisfied the average number of tags in
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of Distributed Sensor Networks 3
Table 1 The strategy of grouping and frame sizing
Tag populationn
Frame sizeL
Group sizeG
Tag populationn
Frame sizeL
Group sizeG
sdot sdot sdot sdot sdot sdot sdot sdot sdot 177ndash354 256 16ndash11 8 1 355ndash707 256 212ndash19 16 1 708ndash1416 256 420ndash40 32 1 1417ndash2831 256 841ndash81 64 1 sdot sdot sdot sdot sdot sdot sdot sdot sdot
82ndash176 128 1
complexity and communication complexity We analyze timecomplexity by the identification time for recognizing a set oftags expressed by 119879 and study communication complexityby the total bits sent by the reader and the average bits sent bysingle tag for the identification expressed by Bits
119877and Bits
119879
respectively
21 Dynamic Framed Slotted ALOHA (DFSA) DFSA is anALOHA-based algorithm which can adjust the read framesize dynamically according to the estimation of tag pop-ulation The identification process is made of several readframes which is slotted into intervals of time called time slotwhose duration is equal to the tagrsquos ID transmission timeBefore the initialization of the first read frame the readerestimates the unidentified tag population 119899 and sets the readframe size 119871 Tags randomly select one time slot in the rangeof [1 119871] and only respond the reader when the selectedslot comes As the proper frame size is decided in advanceDFSA decreases the potential collision probability to a greatextent The population of unidentified tags is estimated inthe following way Let 119873
119888be the number of colliding time
slots let119873119904be the number of time slots with single tag which
can be identified successfully and let 119862ratio be the ratio of 119873119888
and 119899 which can be calculated by (1) When the current readframe is finished the population of unidentified tags varies to119873119888119862ratio minus119873
119904 which is set to be the new size of the next read
frame to maintain an optimal system throughput
119862ratio = 1 minus (1 minus1
119871)119899
sdot (1 +119899
119871 minus 1) (1)
If we define 119879slot as the duration of time slot 119871 ini as theinitial frame size 119871 as the actual frame size after initial frame119875succ(119896) as the possibility of successful identification for a tagafter 119896 times attempts 119876Repbits as the symbol length of slotinterval ACKbits as the symbol length of acknowledgmentsent by the reader after receiving tagrsquos ID and IDbits as thelength of tagrsquos ID themajormetrics ofDFSA can be describedas follows
119879 = 119879slot sdot (119871 ini + 119871 sdot
infin
sum119896=1
119896119875succ (119896))
Bits119877= 119871bits sdot (
infin
sum119896=1
119896119875succ (119896) + 1) + 119876Repbits sdot 119871
sdot
infin
sum119896=1
119896119875succ (119896) + 119899 sdot ACKbits
Bits119879= IDbits sdot
infin
sum119896=1
119896119875succ (119896)
(2)
However when tag population is large the performanceof DFSA deteriorates heavily This is because the size ofmemory recording the selected slot in tags is limited andcannot keep pace with the increase of tag population whichmakes the optimal condition that the frame size is set equalto the tag population not satisfied
22 Enhanced Dynamic Framed Slotted ALOHA (EDFSA)On the basis of DFSA in order to enhance the systemperformancewhen tag population is large EDFSA introducesthe grouping strategy that it randomly splits tags into differentgroups according to themaximal frame size and the estimatednumber of unread tags Only the tags associated with oneof the groups are queried in the following read framesthen the identifications for tags in other groups are followedsequentially In fact the grouped identification is morelike a combination of several DFSA processes Chebysevrsquosinequality is used in the end of each read frame to estimatethe number of tags left which is used to adjust the number ofgroups and frame size for the incoming read frames
The grouping and frame sizing strategy is represented inTable 1 where the group number and frame size are adjustedin theway of doubling or halving which can be easily realizedin practical applications by the operation of left shifting orright shifting the group register
If we define the same notations as given in DFSA abovethe major metrics of EDFSA can be derived as follows
119879 = 119879slot sdot (119866ini sdot 119871 ini + 119866 sdot 119871 sdot
infin
sum119896=1
119896119875succ (119896))
Bits119877= 119866bits sdot 119871bits sdot (
infin
sum119896=1
119896119875succ (119896) + 1) + 119876Repbits sdot 119866
sdot 119871 sdot
infin
sum119896=1
119896119875succ (119896) + 119899 sdot ACKbits
Bits119879= IDbits sdot
infin
sum119896=1
119896119875succ (119896)
(3)
4 International Journal of Distributed Sensor Networks
23 Binary Tree Algorithm (BS) BS and Query Tree (QT) areboth tree-based algorithms in which the reader iterativelyqueries a subset of tags matching a given property until alltags are identified They differ in the way of querying tagsaccording to a binary random number in BS and a queryprefix in QT In BS the reader recognizes tags in the timeinterval called read cycle Colliding tags are split into twosubsets recursively until just one tag is allocated in everysubset The tag has a counter initialized to 0 in the verybeginning Only tags with counter value equal to 0 canrespond the reader query in current read cycle and othertags keep silent and wait for their counters decreasing to 0Tags modify the value of counter depending on the resultof current identification If a collision happens collidingtags add a 1-bit binary value randomly to their counterswhich are split into two subsets with the counter at 0 andthe counter at 1 respectively Other tags not involved inthe collision increase their counters by 1 to maintain theirformer identifying order unchanged In case of identifyingsuccessfully or no response all tags unread decrease theircounters by 1 and tags with counter at 1 respond the readerin the next read cycle
If we define 119879cycle as the duration of a read cycle lceillog2119899rceil
as the minimal integer not less than log2119899 119862bits as the
length of query command and other parameters as the samenotations given in DFSA above the major metrics of BS canbe expressed as follows
119879
= 119879cycle
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(4)
Bits119877
= 119862bits
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(5)
Bits119879= IDbits sdot log2119899 (6)
The expressions (4) and (5) are general equations when 119896collision times that is the depth of current node (read cycle)in the binary tree (the whole identification process) tendsto positive infinity For convenience we derive the lowerbounds of 119879 and Bits
119877for reference As in BS the binary
tree representing the whole identification process is a strictbinary tree the intermediate nodes denoted by 119862
119865(119899) (ie
the colliding times) achieve minimal value when they areregarded as a complete binary tree whose number of nodescan be expressed as 2119862
119865(119899) + 1 Consider the fact that the
number of all nodes in the strict binary tree satisfies theinequation119873nd(119899) ge 2119862
119865(119899) + 1 = 2 sdotsum
log2119899minus1
119896=02119896 +1 = 2119899minus 3
and each node correspondswith a read cycle sowe can derivethe following expressions for fast tag estimation
119879 ge 119879cycle sdot (2119899 minus 3)
Bits119877ge 119862bits sdot (2119899 minus 3)
(7)
24 Query Tree Algorithm (QT) QT splits a tag set accordingto tagrsquos IDThe reader transmits a query including a bit stringand only the tag whose ID has a prefix matching the querystring responds by transmitting its ID In particular if thecurrent query string is 119902
11199022sdot sdot sdot 119902119899(119902119894isin 0 1) and leads to
a collision the reader uses two 1-bit longer queries that is11990211199022sdot sdot sdot 1199021198990 and 119902
11199022sdot sdot sdot 1199021198991 in the next read cycles in turn
which splits the set of colliding tags into two subsets If acollision still occurs when the new 1-bit longer query stringis sent then the string length is further increased by 1 bitwith 0 or 1 added to the end of the current query stringuntil the collision is solved and a tag is identified successfullyThe reader has a stack 119878 to manage query strings In thebeginning 119878 is initialized as NULL which causes all tagsresponse When collision occurs the reader pushed two 1-bit longer query strings into 119878 When current read cycle isfinished it pops a query string from 119878 for the next read cycleThat 119878 is popped empty indicates that all tags are recognizedNotice that collisions in QT correspond to the intermediatenodes not including the root node compared with BS
If we define the same notations as given in BS above themajor metrics of QT can be derived as follows
119879 le 119879cycle sdot (2887119899 minus 1)
Bits119877le IDbits sdot (2887119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(8)
25 Query Tree Improved Algorithm (QTI) There areamounts of useless query strings in QT which increase theread cycles and depress the system throughput QTI is anenhancement that removes those certainly causing collisionsin advance For example consider the case in which queryprefix 119902 has produced a collision while 1199020 result in noresponse As 1199021 definitely leads to a collision QTI skips itdirectly and takes 11990210 as the next query prefix
Compared with QT QTI only reduces the amount of datatransmitted by the reader while it maintains the amount ofdata sent by tags unchanged which alsomakes the expressionof Bits
119879unchanged
If we follow the same notations defined in BS we canobtain the formulas as follows
119879 le 119879cycle sdot (2665119899 minus 1)
Bits119877le IDbits sdot (2665119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(9)
From what has been discussed hereinbefore we can seeclearly that regardless of time or communication complexitythe metrics of ALOHA-based including DFSA and EDFSA
International Journal of Distributed Sensor Networks 5
are the same order infinitesimal of 119899 while the metricsof tree-based including BS QT and QTI are the higherorder infinitesimal of 119899 Although the metrics of tree-basedalgorithms seem worse they are deterministic which canavoid the so-called ldquotag starvation problemrdquo that a specifictag may not be identified all the time in ALOHA-basedalgorithms
3 The Proposed Algorithm T-GDFSA
The proposed algorithm T-GDFSA can be divided into twosteps the step of the estimation of tag population and thestep of tag identification The former is just implementedonce to estimate the initial number of tags existing in thecovering range of the reader which is used in the second stepto calculate the optimal number of groups and frame size ineach group In T-GDFSA the method used for tag estimationis similar to TEM (Tag Estimation Method) [14] At the endof each read cycle the recorded triple numbers ⟨119888
0 1198881 119888119896⟩
can be obtained from the readerrsquos memory which quantifiesthe number of idle time slots successful time slots occupiedby only one tag and colliding slots with more than twotags respectively Meanwhile the expected triple numbers⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ can be computed from the given framesize 119873 and the number 119899 of tags by statistical knowledgeAccording to Chebyshevrsquos expression the outcome of arandom experiment involving a random variable 119883 is mostlikely somewhere near the expected value of119883This propertyis used to calculate the distance between the recorded results⟨1198880 1198881 119888119896⟩ and the expected results ⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ of eachread cycle as defined in (10) When theminimal distance isachieved the corresponding 119899 is considered to be the optimalestimation of tag population Consider
120576 (119873 1198880 1198881 119888119896) = min119899
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(
1198861198731198990
1198861198731198991
119886119873119899119896
) minus (
1198880
1198881
119888119896
)
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(10)
where 119886119873119899119896
is the expected value of colliding slots with 119896 tagsthen
119886119873119899
119896= 119873 sdot (
119899
119896) sdot (
1
119873)119896
sdot (1 minus1
119873)119899minus119896
(119896 le 119899) (11)
In (10) the minimal 120576 is supposed to be achieved by asearching process with 119899 varying in the range [119888
1+ 2119888119896 3(1198881+
2119888119896)] where 119888
1+ 2119888119896is the lower bound of 119899 according to
[15] since 1198881tags have been identified and if there are 119888
119896
collisions at least 2119888119896tags collided The upper bound of 119899 is
set to 3(1198881+ 2119888119896) since by simulation no further accuracy in
the estimation is obtained if the upper bound is set to highervalues
From [1] we know that the system throughput becomesoptimal when the frame size is set equal to the number of tagsIn order to satisfy this condition the grouping size is adjustedby 1 each time to ensure that the number of tags in eachgroup is very close to the frame size The optimal groupingsize is decided by the expected system efficiency Suppose
the current number of groups is 119896 it will be increased to 119896+1
if the expected system efficiency with 119896 + 1 groups rises justequal to that with 119896 groups Consider
119886119873119899119896
1
119873=
119886119873119899(119896+1)
1
119873(119896 = 1 2 ) (12)
From (12) the maximum number of tags with 119896 groups is
119899119896=lg (119896 (119896 + 1))
lg (1 minus 1119873)sdot 119896 sdot (119896 + 1) (119896 = 1 2 ) (13)
By the utilization of (13) the optimal grouping size 119866 can beobtained with a varying 119899 and a given frame size 119871
Then the optimal 119866 is broadcast by the reader with arandom number to tags Grouping rule is as follows Each taggenerates a new random number by the old received one andits serial number (tagrsquos ID) Then the new random number isdivided by 119866 and all tags have a group number randomly inthe range [0 119866 minus 1] In the current read frame only tags withgroup number 0 are permitted to respond the reader Whenall of them have been identified the reader begins a new readframe and tags with group number 1 are involvedThe processcontinues until tags having group number 119866 minus 1 are queriedwhich means all tags have been recognizedThe frame size ofeach read frame decides how many time slots are included init At the beginning of each read frame the reader broadcaststhe optimal frame size 119871 to all tags which means there are119871 time slots in the incoming read frame and tags involvedgenerate an integer 119871
119894in the range [1 119871] and save it in its slot
counter By this means tags are allocated into 119871 time slotsrandomly In the first time slot initiated by the reader tagswith slot counter at 0 are permitted to respond the readerWhen all tags in current time slot have been identified thereader polls the next time slot and informs other unidentifiedtags to decrease their time slot counter by 1 Tags whose valueof slot counters decreasing to 0 are permitted to respond thereader in the incoming time slot If a collision happens inthe current time slot tags involved add 0 or 1 randomly totheir slot counters which cause them to fall into two subsets Itmeans that a binary tree is introduced and colliding tags aresubdivided into two child nodes of the current parent noderandomly Other tags increase their slot counters by 1 so as tocounteract the effect caused by splitting for the colliding tagsto keep their former identification sequence unchangedAftersplitting the reader firstly turns to identify the tags in the leftchild node of current parent node and if a collision is stilldetected the node-splitting process will be executed againand tags falling into the deeper left child node will be read inthe incoming time slotThe process will keep on going recur-sively until there is no collision happened in the current leftchild node Because there is nomore than 1 tag in the leaf tagin it can be identified successfully and then muted Next thereader returns up to the parent node of the current left childnode then turns down to the right child node and identifiestags in itThere are three possible outcomes Collision slotwillcause a new node-splitting process similar to that representedbeforehand 1-tag slot will make the reader identify the tagsuccessfully and then return to the parent node Idle slot willmake the reader directly come back to the parent node Next
6 International Journal of Distributed Sensor Networks
0 1
10
0 1
0 1
0 1
Time slot
1 2 3 4 5 6 7Group
middot middot middot
middot middot middot
middot middot middot
1 i i + 1 i + 2 i + 3 i + 4 i + 5 i + 6 i + 7 i + 8
Lev = 0
Lev = 1
Lev = 2
Lev = 3
120601
120601
120601 120601 120601
Figure 2 The execution process of the T-GDFSA
as all the child nodes of the parent node have been identifiedthe reader will return to the upper parent node The proce-durewill continue recursively until all nodes of the binary treehave been queried which means all tags in current collidingtime slot have been identified In the initiation of each binarytree recursive process the reader sets a level counter forcurrent colliding slot to record the depth of current node(ie read cycle) in the binary tree It is increased by 1 when acollision happens in current node and the reader goes deeperto the child nodes and is decreased by 1 when all tags inthe child nodes are already identified and the reader returnsto the upper parent node Level counter which decreasedto 0 indicates that all tags in the current collision slot havebeen identified In Figure 2 the tag identification process forgroup 1 is illustrated where Lev means the level counter Φdenotes no tag responding and each ldquo∙rdquo represents one tagThe identification processes for other groups are similar
4 Performance Evaluation
In this section wewill evaluate the performance of T-GDFSAThere are several metrics focusing on different aspects ofRFID system We take time complexity and communicationcomplexity for emphatic analysis Because time complex-ity reflects the identification efficiency which is of greatimportance for fast tag identification and communicationcomplexity indicates power consumption of the reader andtags which is of great significance for mobile RFID appli-cations Time complexity is defined as the total time spentto identify a set of tags in the covering range of the readerCommunication complexity refers to the amount of datatransmitted between the reader and tags which can becomposed of two parts Bits
119877(the total number of bits sent
by the reader) and Bits119879(the total number of bits transmitted
by single tag in average)Prior to deeper analysis it is necessary to make the
following important assumptions
Assumption 1 As data received by the reader aremostly shortsymbols such as acknowledgement symbols and so forth
which are much less compared with the data sent by thereader we simply ignore it and consider that Bits
119877totally
represents the communication complexity on reader
Assumption 2 The duration of time slot in read frame is setequal to that of read cycle in binary tree which is denoted bythe unified symbol 119879cycle making it possible to calculate thesystem throughput quantificationally
Assumption 3 In most RFID applications power consump-tion of tags is more sensitive than that of the reader So weproposed a new strategy dedicated to reducing Bits
119879 which
is deployed as follows Instead of sending complete tagrsquos IDdirectly tag firstly sends IDTest (a short bit string) to testthe state of the current time slot If no collision happensIDTest can be received by the reader successfully The readerresponds with the acknowledgement IDReq to require thetag to transmit its complete ID The strategy eliminates theuselessmass data transmission of tagrsquos ID caused by collisionsand ensures that tagrsquos ID is sent only once Since the length ofIDTest ismuch shorter than that of tagrsquos ID Bits
119879is decreased
drastically
41 Time Complexity The total consumed time denoted by119879 consists of three parts 119879est (time cost in the estimation oftag population) 119879rf (time cost in read frames) and 119879rc (timecost in read cycles of binary tree recursive process) Then weget
119879 = 119879est + 119879rf + 119879rc (14)
Let 119866ini denote the initial grouping size for the estimation oftag population and let 119866(119899) denote the actual grouping sizecalculated by (13) 119871 ini and 119871(119899) represent the initial framesize and the actual frame size separately 119899 is the numberof unidentified tags Then 119879est and 119879rf can be expressed as119866ini119871 ini119879cycle and 119866(119899)119871(119899)119879cycle respectively According to[1] when the condition of maximal throughput of framedslotted ALOHA the read frame size is equal to the numberof unidentified tags is satisfied the average number of tags in
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
4 International Journal of Distributed Sensor Networks
23 Binary Tree Algorithm (BS) BS and Query Tree (QT) areboth tree-based algorithms in which the reader iterativelyqueries a subset of tags matching a given property until alltags are identified They differ in the way of querying tagsaccording to a binary random number in BS and a queryprefix in QT In BS the reader recognizes tags in the timeinterval called read cycle Colliding tags are split into twosubsets recursively until just one tag is allocated in everysubset The tag has a counter initialized to 0 in the verybeginning Only tags with counter value equal to 0 canrespond the reader query in current read cycle and othertags keep silent and wait for their counters decreasing to 0Tags modify the value of counter depending on the resultof current identification If a collision happens collidingtags add a 1-bit binary value randomly to their counterswhich are split into two subsets with the counter at 0 andthe counter at 1 respectively Other tags not involved inthe collision increase their counters by 1 to maintain theirformer identifying order unchanged In case of identifyingsuccessfully or no response all tags unread decrease theircounters by 1 and tags with counter at 1 respond the readerin the next read cycle
If we define 119879cycle as the duration of a read cycle lceillog2119899rceil
as the minimal integer not less than log2119899 119862bits as the
length of query command and other parameters as the samenotations given in DFSA above the major metrics of BS canbe expressed as follows
119879
= 119879cycle
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(4)
Bits119877
= 119862bits
sdot (1 + 2 sdot
infin
sum119896=0
2119896minus (2119896+ 119899 minus 1) sdot (1 minus 2
minus119896)119899minus1
)
(5)
Bits119879= IDbits sdot log2119899 (6)
The expressions (4) and (5) are general equations when 119896collision times that is the depth of current node (read cycle)in the binary tree (the whole identification process) tendsto positive infinity For convenience we derive the lowerbounds of 119879 and Bits
119877for reference As in BS the binary
tree representing the whole identification process is a strictbinary tree the intermediate nodes denoted by 119862
119865(119899) (ie
the colliding times) achieve minimal value when they areregarded as a complete binary tree whose number of nodescan be expressed as 2119862
119865(119899) + 1 Consider the fact that the
number of all nodes in the strict binary tree satisfies theinequation119873nd(119899) ge 2119862
119865(119899) + 1 = 2 sdotsum
log2119899minus1
119896=02119896 +1 = 2119899minus 3
and each node correspondswith a read cycle sowe can derivethe following expressions for fast tag estimation
119879 ge 119879cycle sdot (2119899 minus 3)
Bits119877ge 119862bits sdot (2119899 minus 3)
(7)
24 Query Tree Algorithm (QT) QT splits a tag set accordingto tagrsquos IDThe reader transmits a query including a bit stringand only the tag whose ID has a prefix matching the querystring responds by transmitting its ID In particular if thecurrent query string is 119902
11199022sdot sdot sdot 119902119899(119902119894isin 0 1) and leads to
a collision the reader uses two 1-bit longer queries that is11990211199022sdot sdot sdot 1199021198990 and 119902
11199022sdot sdot sdot 1199021198991 in the next read cycles in turn
which splits the set of colliding tags into two subsets If acollision still occurs when the new 1-bit longer query stringis sent then the string length is further increased by 1 bitwith 0 or 1 added to the end of the current query stringuntil the collision is solved and a tag is identified successfullyThe reader has a stack 119878 to manage query strings In thebeginning 119878 is initialized as NULL which causes all tagsresponse When collision occurs the reader pushed two 1-bit longer query strings into 119878 When current read cycle isfinished it pops a query string from 119878 for the next read cycleThat 119878 is popped empty indicates that all tags are recognizedNotice that collisions in QT correspond to the intermediatenodes not including the root node compared with BS
If we define the same notations as given in BS above themajor metrics of QT can be derived as follows
119879 le 119879cycle sdot (2887119899 minus 1)
Bits119877le IDbits sdot (2887119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(8)
25 Query Tree Improved Algorithm (QTI) There areamounts of useless query strings in QT which increase theread cycles and depress the system throughput QTI is anenhancement that removes those certainly causing collisionsin advance For example consider the case in which queryprefix 119902 has produced a collision while 1199020 result in noresponse As 1199021 definitely leads to a collision QTI skips itdirectly and takes 11990210 as the next query prefix
Compared with QT QTI only reduces the amount of datatransmitted by the reader while it maintains the amount ofdata sent by tags unchanged which alsomakes the expressionof Bits
119879unchanged
If we follow the same notations defined in BS we canobtain the formulas as follows
119879 le 119879cycle sdot (2665119899 minus 1)
Bits119877le IDbits sdot (2665119899 minus 1)
Bits119879= IDbits sdot (221log2119899 + 419)
(9)
From what has been discussed hereinbefore we can seeclearly that regardless of time or communication complexitythe metrics of ALOHA-based including DFSA and EDFSA
International Journal of Distributed Sensor Networks 5
are the same order infinitesimal of 119899 while the metricsof tree-based including BS QT and QTI are the higherorder infinitesimal of 119899 Although the metrics of tree-basedalgorithms seem worse they are deterministic which canavoid the so-called ldquotag starvation problemrdquo that a specifictag may not be identified all the time in ALOHA-basedalgorithms
3 The Proposed Algorithm T-GDFSA
The proposed algorithm T-GDFSA can be divided into twosteps the step of the estimation of tag population and thestep of tag identification The former is just implementedonce to estimate the initial number of tags existing in thecovering range of the reader which is used in the second stepto calculate the optimal number of groups and frame size ineach group In T-GDFSA the method used for tag estimationis similar to TEM (Tag Estimation Method) [14] At the endof each read cycle the recorded triple numbers ⟨119888
0 1198881 119888119896⟩
can be obtained from the readerrsquos memory which quantifiesthe number of idle time slots successful time slots occupiedby only one tag and colliding slots with more than twotags respectively Meanwhile the expected triple numbers⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ can be computed from the given framesize 119873 and the number 119899 of tags by statistical knowledgeAccording to Chebyshevrsquos expression the outcome of arandom experiment involving a random variable 119883 is mostlikely somewhere near the expected value of119883This propertyis used to calculate the distance between the recorded results⟨1198880 1198881 119888119896⟩ and the expected results ⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ of eachread cycle as defined in (10) When theminimal distance isachieved the corresponding 119899 is considered to be the optimalestimation of tag population Consider
120576 (119873 1198880 1198881 119888119896) = min119899
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(
1198861198731198990
1198861198731198991
119886119873119899119896
) minus (
1198880
1198881
119888119896
)
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(10)
where 119886119873119899119896
is the expected value of colliding slots with 119896 tagsthen
119886119873119899
119896= 119873 sdot (
119899
119896) sdot (
1
119873)119896
sdot (1 minus1
119873)119899minus119896
(119896 le 119899) (11)
In (10) the minimal 120576 is supposed to be achieved by asearching process with 119899 varying in the range [119888
1+ 2119888119896 3(1198881+
2119888119896)] where 119888
1+ 2119888119896is the lower bound of 119899 according to
[15] since 1198881tags have been identified and if there are 119888
119896
collisions at least 2119888119896tags collided The upper bound of 119899 is
set to 3(1198881+ 2119888119896) since by simulation no further accuracy in
the estimation is obtained if the upper bound is set to highervalues
From [1] we know that the system throughput becomesoptimal when the frame size is set equal to the number of tagsIn order to satisfy this condition the grouping size is adjustedby 1 each time to ensure that the number of tags in eachgroup is very close to the frame size The optimal groupingsize is decided by the expected system efficiency Suppose
the current number of groups is 119896 it will be increased to 119896+1
if the expected system efficiency with 119896 + 1 groups rises justequal to that with 119896 groups Consider
119886119873119899119896
1
119873=
119886119873119899(119896+1)
1
119873(119896 = 1 2 ) (12)
From (12) the maximum number of tags with 119896 groups is
119899119896=lg (119896 (119896 + 1))
lg (1 minus 1119873)sdot 119896 sdot (119896 + 1) (119896 = 1 2 ) (13)
By the utilization of (13) the optimal grouping size 119866 can beobtained with a varying 119899 and a given frame size 119871
Then the optimal 119866 is broadcast by the reader with arandom number to tags Grouping rule is as follows Each taggenerates a new random number by the old received one andits serial number (tagrsquos ID) Then the new random number isdivided by 119866 and all tags have a group number randomly inthe range [0 119866 minus 1] In the current read frame only tags withgroup number 0 are permitted to respond the reader Whenall of them have been identified the reader begins a new readframe and tags with group number 1 are involvedThe processcontinues until tags having group number 119866 minus 1 are queriedwhich means all tags have been recognizedThe frame size ofeach read frame decides how many time slots are included init At the beginning of each read frame the reader broadcaststhe optimal frame size 119871 to all tags which means there are119871 time slots in the incoming read frame and tags involvedgenerate an integer 119871
119894in the range [1 119871] and save it in its slot
counter By this means tags are allocated into 119871 time slotsrandomly In the first time slot initiated by the reader tagswith slot counter at 0 are permitted to respond the readerWhen all tags in current time slot have been identified thereader polls the next time slot and informs other unidentifiedtags to decrease their time slot counter by 1 Tags whose valueof slot counters decreasing to 0 are permitted to respond thereader in the incoming time slot If a collision happens inthe current time slot tags involved add 0 or 1 randomly totheir slot counters which cause them to fall into two subsets Itmeans that a binary tree is introduced and colliding tags aresubdivided into two child nodes of the current parent noderandomly Other tags increase their slot counters by 1 so as tocounteract the effect caused by splitting for the colliding tagsto keep their former identification sequence unchangedAftersplitting the reader firstly turns to identify the tags in the leftchild node of current parent node and if a collision is stilldetected the node-splitting process will be executed againand tags falling into the deeper left child node will be read inthe incoming time slotThe process will keep on going recur-sively until there is no collision happened in the current leftchild node Because there is nomore than 1 tag in the leaf tagin it can be identified successfully and then muted Next thereader returns up to the parent node of the current left childnode then turns down to the right child node and identifiestags in itThere are three possible outcomes Collision slotwillcause a new node-splitting process similar to that representedbeforehand 1-tag slot will make the reader identify the tagsuccessfully and then return to the parent node Idle slot willmake the reader directly come back to the parent node Next
6 International Journal of Distributed Sensor Networks
0 1
10
0 1
0 1
0 1
Time slot
1 2 3 4 5 6 7Group
middot middot middot
middot middot middot
middot middot middot
1 i i + 1 i + 2 i + 3 i + 4 i + 5 i + 6 i + 7 i + 8
Lev = 0
Lev = 1
Lev = 2
Lev = 3
120601
120601
120601 120601 120601
Figure 2 The execution process of the T-GDFSA
as all the child nodes of the parent node have been identifiedthe reader will return to the upper parent node The proce-durewill continue recursively until all nodes of the binary treehave been queried which means all tags in current collidingtime slot have been identified In the initiation of each binarytree recursive process the reader sets a level counter forcurrent colliding slot to record the depth of current node(ie read cycle) in the binary tree It is increased by 1 when acollision happens in current node and the reader goes deeperto the child nodes and is decreased by 1 when all tags inthe child nodes are already identified and the reader returnsto the upper parent node Level counter which decreasedto 0 indicates that all tags in the current collision slot havebeen identified In Figure 2 the tag identification process forgroup 1 is illustrated where Lev means the level counter Φdenotes no tag responding and each ldquo∙rdquo represents one tagThe identification processes for other groups are similar
4 Performance Evaluation
In this section wewill evaluate the performance of T-GDFSAThere are several metrics focusing on different aspects ofRFID system We take time complexity and communicationcomplexity for emphatic analysis Because time complex-ity reflects the identification efficiency which is of greatimportance for fast tag identification and communicationcomplexity indicates power consumption of the reader andtags which is of great significance for mobile RFID appli-cations Time complexity is defined as the total time spentto identify a set of tags in the covering range of the readerCommunication complexity refers to the amount of datatransmitted between the reader and tags which can becomposed of two parts Bits
119877(the total number of bits sent
by the reader) and Bits119879(the total number of bits transmitted
by single tag in average)Prior to deeper analysis it is necessary to make the
following important assumptions
Assumption 1 As data received by the reader aremostly shortsymbols such as acknowledgement symbols and so forth
which are much less compared with the data sent by thereader we simply ignore it and consider that Bits
119877totally
represents the communication complexity on reader
Assumption 2 The duration of time slot in read frame is setequal to that of read cycle in binary tree which is denoted bythe unified symbol 119879cycle making it possible to calculate thesystem throughput quantificationally
Assumption 3 In most RFID applications power consump-tion of tags is more sensitive than that of the reader So weproposed a new strategy dedicated to reducing Bits
119879 which
is deployed as follows Instead of sending complete tagrsquos IDdirectly tag firstly sends IDTest (a short bit string) to testthe state of the current time slot If no collision happensIDTest can be received by the reader successfully The readerresponds with the acknowledgement IDReq to require thetag to transmit its complete ID The strategy eliminates theuselessmass data transmission of tagrsquos ID caused by collisionsand ensures that tagrsquos ID is sent only once Since the length ofIDTest ismuch shorter than that of tagrsquos ID Bits
119879is decreased
drastically
41 Time Complexity The total consumed time denoted by119879 consists of three parts 119879est (time cost in the estimation oftag population) 119879rf (time cost in read frames) and 119879rc (timecost in read cycles of binary tree recursive process) Then weget
119879 = 119879est + 119879rf + 119879rc (14)
Let 119866ini denote the initial grouping size for the estimation oftag population and let 119866(119899) denote the actual grouping sizecalculated by (13) 119871 ini and 119871(119899) represent the initial framesize and the actual frame size separately 119899 is the numberof unidentified tags Then 119879est and 119879rf can be expressed as119866ini119871 ini119879cycle and 119866(119899)119871(119899)119879cycle respectively According to[1] when the condition of maximal throughput of framedslotted ALOHA the read frame size is equal to the numberof unidentified tags is satisfied the average number of tags in
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of Distributed Sensor Networks 5
are the same order infinitesimal of 119899 while the metricsof tree-based including BS QT and QTI are the higherorder infinitesimal of 119899 Although the metrics of tree-basedalgorithms seem worse they are deterministic which canavoid the so-called ldquotag starvation problemrdquo that a specifictag may not be identified all the time in ALOHA-basedalgorithms
3 The Proposed Algorithm T-GDFSA
The proposed algorithm T-GDFSA can be divided into twosteps the step of the estimation of tag population and thestep of tag identification The former is just implementedonce to estimate the initial number of tags existing in thecovering range of the reader which is used in the second stepto calculate the optimal number of groups and frame size ineach group In T-GDFSA the method used for tag estimationis similar to TEM (Tag Estimation Method) [14] At the endof each read cycle the recorded triple numbers ⟨119888
0 1198881 119888119896⟩
can be obtained from the readerrsquos memory which quantifiesthe number of idle time slots successful time slots occupiedby only one tag and colliding slots with more than twotags respectively Meanwhile the expected triple numbers⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ can be computed from the given framesize 119873 and the number 119899 of tags by statistical knowledgeAccording to Chebyshevrsquos expression the outcome of arandom experiment involving a random variable 119883 is mostlikely somewhere near the expected value of119883This propertyis used to calculate the distance between the recorded results⟨1198880 1198881 119888119896⟩ and the expected results ⟨119886119873119899
0 1198861198731198991
119886119873119899119896
⟩ of eachread cycle as defined in (10) When theminimal distance isachieved the corresponding 119899 is considered to be the optimalestimation of tag population Consider
120576 (119873 1198880 1198881 119888119896) = min119899
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(
1198861198731198990
1198861198731198991
119886119873119899119896
) minus (
1198880
1198881
119888119896
)
1003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816100381610038161003816
(10)
where 119886119873119899119896
is the expected value of colliding slots with 119896 tagsthen
119886119873119899
119896= 119873 sdot (
119899
119896) sdot (
1
119873)119896
sdot (1 minus1
119873)119899minus119896
(119896 le 119899) (11)
In (10) the minimal 120576 is supposed to be achieved by asearching process with 119899 varying in the range [119888
1+ 2119888119896 3(1198881+
2119888119896)] where 119888
1+ 2119888119896is the lower bound of 119899 according to
[15] since 1198881tags have been identified and if there are 119888
119896
collisions at least 2119888119896tags collided The upper bound of 119899 is
set to 3(1198881+ 2119888119896) since by simulation no further accuracy in
the estimation is obtained if the upper bound is set to highervalues
From [1] we know that the system throughput becomesoptimal when the frame size is set equal to the number of tagsIn order to satisfy this condition the grouping size is adjustedby 1 each time to ensure that the number of tags in eachgroup is very close to the frame size The optimal groupingsize is decided by the expected system efficiency Suppose
the current number of groups is 119896 it will be increased to 119896+1
if the expected system efficiency with 119896 + 1 groups rises justequal to that with 119896 groups Consider
119886119873119899119896
1
119873=
119886119873119899(119896+1)
1
119873(119896 = 1 2 ) (12)
From (12) the maximum number of tags with 119896 groups is
119899119896=lg (119896 (119896 + 1))
lg (1 minus 1119873)sdot 119896 sdot (119896 + 1) (119896 = 1 2 ) (13)
By the utilization of (13) the optimal grouping size 119866 can beobtained with a varying 119899 and a given frame size 119871
Then the optimal 119866 is broadcast by the reader with arandom number to tags Grouping rule is as follows Each taggenerates a new random number by the old received one andits serial number (tagrsquos ID) Then the new random number isdivided by 119866 and all tags have a group number randomly inthe range [0 119866 minus 1] In the current read frame only tags withgroup number 0 are permitted to respond the reader Whenall of them have been identified the reader begins a new readframe and tags with group number 1 are involvedThe processcontinues until tags having group number 119866 minus 1 are queriedwhich means all tags have been recognizedThe frame size ofeach read frame decides how many time slots are included init At the beginning of each read frame the reader broadcaststhe optimal frame size 119871 to all tags which means there are119871 time slots in the incoming read frame and tags involvedgenerate an integer 119871
119894in the range [1 119871] and save it in its slot
counter By this means tags are allocated into 119871 time slotsrandomly In the first time slot initiated by the reader tagswith slot counter at 0 are permitted to respond the readerWhen all tags in current time slot have been identified thereader polls the next time slot and informs other unidentifiedtags to decrease their time slot counter by 1 Tags whose valueof slot counters decreasing to 0 are permitted to respond thereader in the incoming time slot If a collision happens inthe current time slot tags involved add 0 or 1 randomly totheir slot counters which cause them to fall into two subsets Itmeans that a binary tree is introduced and colliding tags aresubdivided into two child nodes of the current parent noderandomly Other tags increase their slot counters by 1 so as tocounteract the effect caused by splitting for the colliding tagsto keep their former identification sequence unchangedAftersplitting the reader firstly turns to identify the tags in the leftchild node of current parent node and if a collision is stilldetected the node-splitting process will be executed againand tags falling into the deeper left child node will be read inthe incoming time slotThe process will keep on going recur-sively until there is no collision happened in the current leftchild node Because there is nomore than 1 tag in the leaf tagin it can be identified successfully and then muted Next thereader returns up to the parent node of the current left childnode then turns down to the right child node and identifiestags in itThere are three possible outcomes Collision slotwillcause a new node-splitting process similar to that representedbeforehand 1-tag slot will make the reader identify the tagsuccessfully and then return to the parent node Idle slot willmake the reader directly come back to the parent node Next
6 International Journal of Distributed Sensor Networks
0 1
10
0 1
0 1
0 1
Time slot
1 2 3 4 5 6 7Group
middot middot middot
middot middot middot
middot middot middot
1 i i + 1 i + 2 i + 3 i + 4 i + 5 i + 6 i + 7 i + 8
Lev = 0
Lev = 1
Lev = 2
Lev = 3
120601
120601
120601 120601 120601
Figure 2 The execution process of the T-GDFSA
as all the child nodes of the parent node have been identifiedthe reader will return to the upper parent node The proce-durewill continue recursively until all nodes of the binary treehave been queried which means all tags in current collidingtime slot have been identified In the initiation of each binarytree recursive process the reader sets a level counter forcurrent colliding slot to record the depth of current node(ie read cycle) in the binary tree It is increased by 1 when acollision happens in current node and the reader goes deeperto the child nodes and is decreased by 1 when all tags inthe child nodes are already identified and the reader returnsto the upper parent node Level counter which decreasedto 0 indicates that all tags in the current collision slot havebeen identified In Figure 2 the tag identification process forgroup 1 is illustrated where Lev means the level counter Φdenotes no tag responding and each ldquo∙rdquo represents one tagThe identification processes for other groups are similar
4 Performance Evaluation
In this section wewill evaluate the performance of T-GDFSAThere are several metrics focusing on different aspects ofRFID system We take time complexity and communicationcomplexity for emphatic analysis Because time complex-ity reflects the identification efficiency which is of greatimportance for fast tag identification and communicationcomplexity indicates power consumption of the reader andtags which is of great significance for mobile RFID appli-cations Time complexity is defined as the total time spentto identify a set of tags in the covering range of the readerCommunication complexity refers to the amount of datatransmitted between the reader and tags which can becomposed of two parts Bits
119877(the total number of bits sent
by the reader) and Bits119879(the total number of bits transmitted
by single tag in average)Prior to deeper analysis it is necessary to make the
following important assumptions
Assumption 1 As data received by the reader aremostly shortsymbols such as acknowledgement symbols and so forth
which are much less compared with the data sent by thereader we simply ignore it and consider that Bits
119877totally
represents the communication complexity on reader
Assumption 2 The duration of time slot in read frame is setequal to that of read cycle in binary tree which is denoted bythe unified symbol 119879cycle making it possible to calculate thesystem throughput quantificationally
Assumption 3 In most RFID applications power consump-tion of tags is more sensitive than that of the reader So weproposed a new strategy dedicated to reducing Bits
119879 which
is deployed as follows Instead of sending complete tagrsquos IDdirectly tag firstly sends IDTest (a short bit string) to testthe state of the current time slot If no collision happensIDTest can be received by the reader successfully The readerresponds with the acknowledgement IDReq to require thetag to transmit its complete ID The strategy eliminates theuselessmass data transmission of tagrsquos ID caused by collisionsand ensures that tagrsquos ID is sent only once Since the length ofIDTest ismuch shorter than that of tagrsquos ID Bits
119879is decreased
drastically
41 Time Complexity The total consumed time denoted by119879 consists of three parts 119879est (time cost in the estimation oftag population) 119879rf (time cost in read frames) and 119879rc (timecost in read cycles of binary tree recursive process) Then weget
119879 = 119879est + 119879rf + 119879rc (14)
Let 119866ini denote the initial grouping size for the estimation oftag population and let 119866(119899) denote the actual grouping sizecalculated by (13) 119871 ini and 119871(119899) represent the initial framesize and the actual frame size separately 119899 is the numberof unidentified tags Then 119879est and 119879rf can be expressed as119866ini119871 ini119879cycle and 119866(119899)119871(119899)119879cycle respectively According to[1] when the condition of maximal throughput of framedslotted ALOHA the read frame size is equal to the numberof unidentified tags is satisfied the average number of tags in
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
6 International Journal of Distributed Sensor Networks
0 1
10
0 1
0 1
0 1
Time slot
1 2 3 4 5 6 7Group
middot middot middot
middot middot middot
middot middot middot
1 i i + 1 i + 2 i + 3 i + 4 i + 5 i + 6 i + 7 i + 8
Lev = 0
Lev = 1
Lev = 2
Lev = 3
120601
120601
120601 120601 120601
Figure 2 The execution process of the T-GDFSA
as all the child nodes of the parent node have been identifiedthe reader will return to the upper parent node The proce-durewill continue recursively until all nodes of the binary treehave been queried which means all tags in current collidingtime slot have been identified In the initiation of each binarytree recursive process the reader sets a level counter forcurrent colliding slot to record the depth of current node(ie read cycle) in the binary tree It is increased by 1 when acollision happens in current node and the reader goes deeperto the child nodes and is decreased by 1 when all tags inthe child nodes are already identified and the reader returnsto the upper parent node Level counter which decreasedto 0 indicates that all tags in the current collision slot havebeen identified In Figure 2 the tag identification process forgroup 1 is illustrated where Lev means the level counter Φdenotes no tag responding and each ldquo∙rdquo represents one tagThe identification processes for other groups are similar
4 Performance Evaluation
In this section wewill evaluate the performance of T-GDFSAThere are several metrics focusing on different aspects ofRFID system We take time complexity and communicationcomplexity for emphatic analysis Because time complex-ity reflects the identification efficiency which is of greatimportance for fast tag identification and communicationcomplexity indicates power consumption of the reader andtags which is of great significance for mobile RFID appli-cations Time complexity is defined as the total time spentto identify a set of tags in the covering range of the readerCommunication complexity refers to the amount of datatransmitted between the reader and tags which can becomposed of two parts Bits
119877(the total number of bits sent
by the reader) and Bits119879(the total number of bits transmitted
by single tag in average)Prior to deeper analysis it is necessary to make the
following important assumptions
Assumption 1 As data received by the reader aremostly shortsymbols such as acknowledgement symbols and so forth
which are much less compared with the data sent by thereader we simply ignore it and consider that Bits
119877totally
represents the communication complexity on reader
Assumption 2 The duration of time slot in read frame is setequal to that of read cycle in binary tree which is denoted bythe unified symbol 119879cycle making it possible to calculate thesystem throughput quantificationally
Assumption 3 In most RFID applications power consump-tion of tags is more sensitive than that of the reader So weproposed a new strategy dedicated to reducing Bits
119879 which
is deployed as follows Instead of sending complete tagrsquos IDdirectly tag firstly sends IDTest (a short bit string) to testthe state of the current time slot If no collision happensIDTest can be received by the reader successfully The readerresponds with the acknowledgement IDReq to require thetag to transmit its complete ID The strategy eliminates theuselessmass data transmission of tagrsquos ID caused by collisionsand ensures that tagrsquos ID is sent only once Since the length ofIDTest ismuch shorter than that of tagrsquos ID Bits
119879is decreased
drastically
41 Time Complexity The total consumed time denoted by119879 consists of three parts 119879est (time cost in the estimation oftag population) 119879rf (time cost in read frames) and 119879rc (timecost in read cycles of binary tree recursive process) Then weget
119879 = 119879est + 119879rf + 119879rc (14)
Let 119866ini denote the initial grouping size for the estimation oftag population and let 119866(119899) denote the actual grouping sizecalculated by (13) 119871 ini and 119871(119899) represent the initial framesize and the actual frame size separately 119899 is the numberof unidentified tags Then 119879est and 119879rf can be expressed as119866ini119871 ini119879cycle and 119866(119899)119871(119899)119879cycle respectively According to[1] when the condition of maximal throughput of framedslotted ALOHA the read frame size is equal to the numberof unidentified tags is satisfied the average number of tags in
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of Distributed Sensor Networks 7
each colliding time slot is about 23922 on average Because119866(119899)119871(119899) is very close to 119899 in T-GDFSA the average numberof tags in each colliding time slot denoted by 119862tag can beconsidered as 23922 simply
According to the representation above we know that thebinary tree process for each colliding time slot is a strictlybinary tree so there is no 1-degree node included meaningthat any non-leaf node (the root node or the intermediatenode) has two child nodes Let 119873nd and 119873leaf be the numberof non-leaf nodes and leaf nodes respectively then 119873nd =
2119873leaf minus 1 can be easily deduced [16] Since the root nodecorresponds to the colliding time slot which has already beencounted in the read frame before the effective number ofnodes in every binary tree is 119873nd minus 1 Since the leaf nodesare composed of 1-tag leaf nodes and idle leaf nodes thenumber of actual nodes in every colliding time slot denotedas 1198731015840
nd satisfies the inequation 1198731015840nd ge 2119862tag minus 2 = 27844
on average Note the fact that when 119862tag is small it is veryclose to 119873leaf so the inequation above can be considered asequation 1198731015840nd = 2119862tag minus 2 = 27844 simply By probabilityknowledge we can derive that the expected value of collidingtime slots is 119866(119899)119871(119899)119875col where 119875col is the probability ofdetecting a colliding time slot and that 119879rc is no less than27844119866(119899)119871(119899)119875col119879cycle Substituting (14) with the all resultsabove we acquire the final expression of 119879 as follows
119879 asymp 119866ini sdot 119871 ini + 119866 (119899) sdot 119871 (119899) + 27844 sdot 119866 (119899) sdot 119871 (119899)
sdot 119875col sdot 119879cycle(15)
In expression (15) 119875col = [1 minus 119899119866(119899) sdot 119901(1 minus 119901)119899119866(119899)minus1 minus (1 minus
119901)119899119866(119899)]where 119901 = 1119871(119899) is the probability of a tag selectinga time slot from total 119871(119899) time slots
42 Communication Complexity on Reader Bits119877is defined
as the amount of data transmitted by the reader to identifya set of tags appearing in its irrigation range which reflectsthe communication complexity on reader suitably From theabove analysis we realize that no matter in the step of initialtag estimation or in the step of tag identification process theamount of data sent by the reader representing group size andframe size are both (119866bits+119871bits) bitsThe reader also needs totransmit QueryRep periodically tomake the current time slotincreased continually so as to poll tags allocated in differenttime slots of current frame and the amount of data of thispart can be expressed as [119866ini119871 ini + 119866(119899)119871(119899)]QueryRepbitsBesides in every binary tree recursive process as expressedabove the number of read cycles1198731015840nd is equal to 2119862tag minus 2 =
27844 As nodes in a binary tree consist of collision nodesand leaf nodes and the leaf nodes need no extra read cyclesto query the number of actual nodes for which reader sendsread cycles should be (2119862tag minus 2 minus 119862tag) = 03922 on averageThe reader sends at most 1 read cycle in every node so thenumber of read cycles in every binary tree recursive processis almost 03922 Considering that the expected number ofcollision slots is119866(119899)119871(119899)119875coll the total number of read cyclesin all binary tree recursive processes is 03922119866(119899)119871(119899)119875collLet119877bits be the string length of one read cycle and let IDReqbits
be the string length of IDReq sent by the reader respectivelyBits119877can be finally expressed as follows
Bits119877asymp 2 (119866bits + 119871bits)
+ [119866ini119871 ini + 119866 (119899) 119871 (119899)]QueryRepbits + 119899
sdot IDReqbits + 03922119866 (119899) 119871 (119899) 119875coll119877bits
(16)
43 Communication Complexity on Tag Here we take Bits119879
for consideration to indicate the average amount of datatransmitted by single tag Because of the randomness of tagidentification the average bits of data sent by single tag aredifficult to observe exactly so the lower bound and the upperbound are introduced for reference
(a) The Lower Bound If one lets lev(119894) be the level of the 119894thleaf node in a strict binary tree with 119899 leaf nodes where 119894
varies from 1 to 119899 according to the property of strict binarytree the following equation can be easily derived
119899
sum119894=1
1
2lev(119894)= 1 (17)
Since sum119899
119894=1(12lev(119894)) = 119899 sdot (1119899)sum
119899
119894=1(12lev(119894)) ge 119899 sdot
119899radic(12)sum119899
119894=1lev(119894) we can obtain
119899
sum119894=1
lev (119894) ge 119899log2119899 (18)
Expression (18) shows that the sum of levels of all leaf nodesin a strict binary tree with 119899 leaf nodes is no less than 119899log
2119899
Because the level of node indicates that the collision timestags allocated in it have experienced and the colliding timesin a strict binary tree with 119899 tags become minimal only whenthe number of leaf nodes is equal to 119899 the total colliding timesin a strict binary tree with 119899 tags are no less than 119899log
2119899 Let
119875col and 119875suc denote the expected possibility of colliding slotsand singleton slots respectively according to Assumption 3the amount of data transmitted by tags in all colliding timeslots satisfies
BitsCS ge 119866 (119899) sdot 119871 (119899) 119875col sdot (23922 sdot log223922
sdot IDTestbits + 23922 sdot IDbits) (19)
The total amount of data sent by all tags represented byBitsTA is composed of two parts data sent by the tags incolliding time slots and data sent by the tags in singleton slotsThe former is expressed by (19) Since every tag allocated inthe singleton slot transmits IDTest as well as tagrsquos ID onlyonce and there are 119866(119899)119871(119899)119875suc singleton slots with only 1tag BitsTA can be derived as the following expression
BitsTA = BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc
sdot (IDTestbits + IDbits)
ge 119866 (119899) sdot 119871 (119899)
sdot (23922 sdot 119875col sdot log223922 + 119875succ)
sdot IDTestbits + 119899 sdot IDbits
(20)
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
8 International Journal of Distributed Sensor Networks
Finally the lower bound of Bits119879can be obtained as follows
Bits119879
ge119866 (119899) sdot 119871 (119899)
119899
sdot [(23922 sdot 119875col sdot log223922 + 119875suc) sdot IDTestbits]
+ IDbits
(21)
(b) The Upper Bound In order to measure the largest amountof data sent by tags we must take the worst condition intoaccount Consider the following extreme situation Let 119901
119904be
the probability of all colliding tags falling into the same childnode simultaneously after splitting current collision nodeand 120582 is the probability of only one tag falling into one childnode Obviously 119901
119904is much large than 120582 at the beginning
of the binary tree recursive process which means collidingtags will fall into the same child node after splitting As thesplitting process is ongoing recursively 119901
119904is decreasing and
approaching 120582 If and only if 119901119904becomes not great than 120582
for the first time the splitting of current collision node willresult in one child node with only 1 tag and the other childnode with the remainder tags which separates 1 tag fromthe colliding tags and identifies it successfully The splittingprocess will repeat recursively for the remaining tags in thecolliding child node until there is no more than 1 tag fallinginto every node or we can say the leaf node has been reachedAssuming that the 119894th identified tag has experienced 119896
119894times
of collision before being identified successfully and119898 denotesthe total number of colliding tags in the binary tree we canget
[(1
2)119898+1minus119894
]
1198961015840
119894
le 120582
where 1198961015840
119894is an integer 119896
119894= min (119896
1015840
119894)
997904rArr 119896119894= lceil
1
119898 + 1 minus 119894log12
120582rceil
lt1
119898 + 1 minus 119894log12
120582 + 1
(22)
So the amount of data sent by119898 tags in the binary tree can beconsidered as
BitsCS le
119898minus1
sum119894=1
119896119894sdot IDTestbits + 119898 sdot IDbits
= (
119898minus1
sum119894=1
lceil1
119898 + 1 minus 119894log12
120582rceil) sdot IDTestbits + 119898
sdot IDbits
(23)
In the expression above the fact that the range of 119894 doesnot include 119898 is because the 119898th tag will be identifiedundoubtedly in the next read frame if the (119898 minus 1)th tag has
been identified Therefore by expressions (22) and (23) weget the following expression
BitsCS lt [(
119898
sum119894=1
1
119894) minus 1] sdot log
12120582 + (119898 minus 1)
sdot IDTestbits + 119898 sdot IDbits
(24)
Seeing that sum119898119894=1
(1119894) is the sum of the first 119898 terms of theharmonic series and its upper bound is (log
2119898 + 1) [16]
expression (24) can be rewritten as
BitsCS lt [(log2119898 + 1 minus 1) sdot log
12120582 + (119898 minus 1)]
sdot IDTestbits + 119898 sdot IDbits
= [log2119898 sdot log
2120582minus1
+ (119898 minus 1)] sdot IDTestbits + 119898
sdot IDbits
(25)
Considering 119898 = 23922 so the total amount of data sent byall tags is
BitsTA
= BitsCS + 119866 (119899) sdot 119871 (119899) sdot 119875suc sdot (IDTestbits + IDbits)
lt 119866 (119899) sdot 119871 (119899)
sdot [119875col sdot (log223922 sdot log2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + 119899 sdot IDbits
(26)
And the average amount of data sent by single tag is shown asfollows
Bits119879=BitsTA
119899lt
119866 (119899) 119871 (119899)
119899[119875col (log223922
sdot log2120582minus1
+ 05820) + 119875suc] IDTestbits + IDbits
(27)
Thus the final expression of Bits119879can be deduced form
expressions (21) and (27) which is expressed as an inequationwith a lower bound and an upper bound as follows
119866 (119899) sdot 119871 (119899)
119899sdot [(23922 sdot 119875col sdot log223922 + 119875suc)
sdot IDTestbits] + IDbits le Bits119879lt
119866 (119899) sdot 119871 (119899)
119899[119875col
sdot (log223922 sdot log
2120582minus1
+ 05820) + 119875suc]
sdot IDTestbits + IDbits
(28)
5 Simulation
Next we need to verify how close the mathematic formulaspresented in Section 4 match the reality As the key factorsinfluencing application for anticollision algorithms includethe system throughput and the communication complexitieswhich indicate how fast tags can be identified (especially
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of Distributed Sensor Networks 9
important for mobile tags) and how low the energy isconsumed the comparisons for both of them between ouralgorithm and traditional ones should be made So we pro-gram onMatlab71 and the simulations include (1) comparingtheoretical values calculated by the mathematic formulasmentioned above with the simulative results acquired fromsimulations (2) comparing the complexity of T-GDFSA withthat of traditional algorithms including DFSA EDFSA BSQT and QTI and (3) comparing the system throughput of T-GDFSA when the length of tagrsquos ID varies in a large range orthe initial estimation of tag population becomes inaccurateSystem throughput denoted by 119878 is defined as the ratio ofthe number of tags to the sum of all time slots used in theread frames and all read cycles produced for querying thenodes of binary trees and can be obtained from the formula119878 = 119899119879cycle119879 where 119879cycle is the duration of one time slot aswell as the duration of one read cycle
Before simulation some parameters need to be set prop-erly The parameters are set as follows 119901
119904= 1119871 119871bits = 14
119866bits = 5 Levbits = 4 119877bits = 23 (119871bits + 119866bits + Levbits)IDTestbits = 8 IDReqbits = 8 QueryRepbits = 4 and 119871max =
256 Considering that the possibility that each tag falls in a slotis 1119871 when the frame size is 119871 we set 119901
119904to 1119871 119871bits set to 14
means themaximal time slots in a read frame can be 214119866bitsset to 5 indicates that the maximal grouping size is 25 Levbitsis set to 4 which refers to the fact that the maximal depth ofthe binary tree in recursive process is 24 Obviously 119877bits canbe set to 23 as a sum of 119871bits + 119866bits + Levbits IDTestbits andIDReqbits set to 8means the reader and tags use a 1-byte stringto achieve the strategy of slot test The value of QueryRepbitsis decided by the encoding method of commands and set to 4in our simulations which means each command sent by thereader is represented by a 4-bit binary string As 119871max themaximal frame size refers to the memory used in tags whichis usually very limited in reality it is just set to 256 in oursimulations which means 1-byte memory is required in tagsBesides the following parameters are tuned
(i) 119899 the number of tags to be identified It is increasedby 50 in each trial in the range [50 1000]
(ii) 119871 ini the initial estimated number of unidentified tagsThis value is used to set the initial read frame size It isset to 05119899 15119899 2119899 and 5119899 for inaccurate estimation
(iii) IDbits the length of tagrsquos ID It is assigned to the value48 64 96 128 sequentially
(iv) Running times the times each simulation runs It isset to be 100 times and the average result is taken foranalysis
In Figures 3ndash5 performance comparison of T-GDFSAbetween theoretical values and simulative results is shownIn Figure 3 the theoretical curve of 119878 appears as a zigzag linesurrounding the curve of simulative resultsThe points of thewave crest of the theoretical curve correspond to the increaseof grouping size which reduces tags per group drasticallyand deteriorates 119878 significantly because of more extra idleslots Figure 4 shows that the theoretical Bits
119877matches well
the simulative one In Figure 5 simulative values of Bits119877are
mostly 69 bits and the lower bound of theoretical values is
0 200 400 600 800 1000015
02
025
03
035
04
045
05
055
06
Simulative resultsTheoretical values
Figure 3 The comparison of 119878
0 200 400 600 800 10000
02
04
06
08
1
12
14
16
18
2
22
n
Simulative resultsTheoretical values
times104
BitsR
Figure 4 The comparison of Bits119877
near 58 bits with the length of tagrsquos ID set to 48 bits Noticethat the upper bound of theoretical values is very close tosimulative results when 120582 is set to 001
In Figure 6 compared with other traditional anticollisionalgorithms T-GDFSA has the highest 119878 about 041 when tagrsquosID is set to 48 bits long and uniformly distributed Figure 7shows that T-GDFSA has agreeable Bit
119877which is reduced by
at least half of that of tree-based algorithms and nearly equalto that of ALOHA-based algorithms In Figure 8 T-GDFSAhas the lowest Bits
119879whichmeans more power is saved in tags
compared with other traditional algorithmsFigure 9 shows the variation of 119878 with inaccurate initial
tag estimation When the estimated number is varying from05119899 to 15119899 119878 is still higher than 038 which indicates that
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
10 International Journal of Distributed Sensor Networks
0 200 400 600 800 10000
10
20
30
40
50
60
70
80
90
100
n
Simulative resultsLower bound
BitsT
Upper bound (P = 001)
Figure 5 The comparison of Bits119879 with IDbits = 48 and tagrsquos ID
uniformly distributed
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
T-GDFSADFSAEDFSA
BSQTQTI
Figure 6 The comparison of 119878 with 119871 ini = 119899 and IDbits = 48
T-GDFSA has great tolerance for the inaccuracy of initial tagestimation We also notice that T-GDFSA performs better inunderestimation than overestimationThis is because smallerframe size in underestimation causes more tags to fall intocolliding time slots which can make full use of the advan-tages of T-GDFSA while in the case of overestimation theidentification process is more like an EDFSA identificationwithmore 1-tag time slots and idle time slots Figure 10 showsthat length variation of tagrsquos ID has little influence on 119878Whentag population exceeds 450 this effect can be approximatelyignored
0 200 400 600 800 10000
05
1
15
2
25
3
35
4
45
5
55
n
T-GDFSADFSAEDFSA
BSQTQTI
Bits R
times104
Figure 7 The comparison of Bits119877 with 119871 ini = 119899 and IDbits = 48
0 200 400 600 800 10000
20
40
60
80
100
120
140
160
n
T-GDFSADFSAEDFSA
BSQTQTI
BitsT
Figure 8 The comparison of Bits119879 with 119871 ini = 119899 and IDbits = 48
The simulations above reflect the following (1) Ourmathematic formulas of the main metrics match well thereality (2) Compared with traditional algorithms T-GDFSAachieves higher system throughput while maintaining lowercomputing complexities which is not available for traditionalalgorithms shown above This significant advantage makesour algorithm easier to be realized in end-user applications
6 Conclusion
In this paper we firstly make a summary of traditional RFIDanticollision algorithms and then propose a novel hybrid
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of Distributed Sensor Networks 11
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
L ini = 02n
L ini = 05n
L ini = n
L ini = 15n
L ini = 2n
Figure 9 119878 versus 119899 when IDbits = 48 with the inaccuracy of initialestimation of tag population
0 200 400 600 800 1000
03
032
034
036
038
04
042
044
n
S
IDbits = 48
IDbits = 64
IDbits = 96
IDbits = 128
Figure 10 119878 versus 119899 under the condition of 119871 ini = 119899 and the lengthvariation of tagrsquos ID
anticollision algorithm called T-GDFSA to improve theperformance of RFID tag identification T-GDFSA which isbased on grouped dynamic frame-slottedALOHAand binarytree recursive process has optimal group size and optimalread frame size and solves colliding time slots by introducingthe binary tree recursive process System model and mathe-matics formulas are present and theoretical values of metricsshow great agreement with the simulative results obtainedfrom simulations Compared with traditional ALOHA-basedand tree-based anticollision algorithms T-GDFSA exhibitsexcellent comprehensive performance with preferable system
throughput around 041 and lower communication complex-ity which is similar to EDFSA but at least half less than that oftree-based algorithms Furthermore T-GDFSA has tolerancefor the inaccuracy of initial tag estimation and the lengthvariation of tagrsquos ID
As we can see an accurate estimation of actual tagpopulation in T-GDFSA is very significant The estimationis used to set the optimal grouping size and frame sizewhich ensures the performance Meanwhile the computingcomplexity of estimation cannot be very high to ensure thereader to identify tags promptly However the estimationin T-GDFSA follows TEM (ie Vogtrsquos method) which maynot be optimal in both of time and accuracy so one ofthe possible directions of our next work is to find a wayto improve the estimation method for T-GDFSA to achievebetter performance of RFID tag identification
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was sponsored by the National Natural ScienceFoundation of China (Grant nos 61102034 61172156 and61071038) the Doctoral Fund of Guangdong University ofTechnology (Grant no 113002) and Shenzhen ApplicationFoundation key project (Grant no JCYJ20130401095559824)
References
[1] S S Kim YH Kim andK S Ahn ldquoAn enhanced slotted binarytree algorithm with intelligent separation in RFID Systemsrdquoin Proceedings of the IEEE Symposium on Computers andCommunications (ISCC rsquo09) pp 237ndash242 Sousse Tunisia July2009
[2] X Luo Z Xu J Yu and X Chen ldquoBuilding association linknetwork for semantic link on web resourcesrdquo IEEE Transactionson Automation Science and Engineering vol 8 no 3 pp 482ndash494 2011
[3] JM ZhaoWT Li andD-A Li ldquoIdentifying themissing tags incategorized RFID systemsrdquo International Journal of DistributedSensor Networks vol 2014 Article ID 582951 12 pages 2014
[4] G Bagnato G Maselli C Petrioli and C Vicari ldquoPerformanceanalysis of anti-collision protocols for RFID systemsrdquo in Pro-ceedings of the 69th Vehicular Technology Conference (VTC rsquo09)pp 1ndash5 IEEE Barcelona Spain April 2009
[5] W Zhang Y-J Guo X-M Tang G-H Cui L-K Wu andY Mei ldquoAn efficient adaptive anticollision algorithm based on4-ary pruning query treerdquo International Journal of DistributedSensor Networks vol 2013 Article ID 848746 7 pages 2013
[6] X-Q Yan Y Liu B Li and X-M Liu ldquoNumeric evaluation onthe system efficiency of the EPC Gen-2 UHF RFID tag collisionresolution protocol in error prone air interfacerdquo InternationalJournal of Distributed Sensor Networks vol 2014 Article ID716232 9 pages 2014
[7] V Namboodiri M Desilva K Deegala and S RamamoorthyldquoAn extensive study of slotted Aloha-based RFID anti-collision
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
12 International Journal of Distributed Sensor Networks
protocolsrdquo Computer Communications vol 35 no 16 pp 1955ndash1966 2012
[8] C S Keat and L N Shyan ldquoDynamic framed slotted ALOHAalgorithm for RFID systems with enhanced tag estimationtechniquerdquo in Proceedings of the IEEE International Conferenceon RFID-Technologies and Applications (RFID-TA rsquo13) pp 1ndash4Johor Bahru Malaysia September 2013
[9] J R Cha and J H Kim ldquoDynamic framed slotted ALOHAalgorithms using fast tag estimation method for RFID systemrdquoin Proceedings of the 3rd IEEE Consumer Communications andNetworking Conference (CCNC rsquo06) pp 768ndash772 Las VegasNev USA 2006
[10] S-R Lee S-D Joo and C-W Lee ldquoAn enhanced dynamicframed slotted ALOHA algorithm for RFID tag identificationrdquoin Proceedings of the 2nd International Conference onMobile andUbiquitous Systems Networking and Services (MobiQuitous rsquo05)pp 166ndash172 San Diego Calif USA July 2005
[11] D R Hush and C Wood ldquoAnalysis of tree algorithms for RFIDarbitrationrdquo in Proceedings of the IEEE International Symposiumon InformationTheory (ISIT rsquo98) pp 107ndash114 IEEE CambridgeMass USA August 1998
[12] C Law K Lee andK-Y Siu ldquoEfficientmemoryless protocol fortag identificationrdquo in Proceedings of the 4th International Work-shop on Discrete Algorithms and Methods for Mobile Computingand Communications (DIALM rsquo00) pp 75ndash84 Boston MassUSA August 2000
[13] J Myung W Lee J Srivastava and T K Shih ldquoTag-splittingadaptive collision arbitration protocols for RFID tag identifica-tionrdquo IEEETransactions on Parallel andDistributed Systems vol18 no 6 pp 763ndash775 2007
[14] H Vogt ldquoMultiple object identification with passive RFID tagsrdquoin Proceedings of the IEEE International Conference on SystemsMan and Cybernetics (SMC rsquo02) pp 6ndash9 Hammamet Tunisia2002
[15] M A Bonuccelli F Lonetti and F Martelli ldquoInstant collisionresolution for tag identification in RFID networksrdquo Ad HocNetworks vol 5 no 8 pp 1220ndash1232 2007
[16] Y Langsam M J Augenstein and A M Tenenbaum DataStructure Using C and C++ (2nd Edition) Prentice Hall Engle-wood Cliffs NJ USA 2nd edition 1995
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of