Patent Publication Number: US-8115602-B2

Title: Tag estimation method and tag identification method for RFID system

Description:
The present application claims priority under 35 U.S.C. 119 to Korean Patent Application No. 10-2007-0120468 (filed on Nov. 23, 2007), which is hereby incorporated by reference in its entirety. 
     TECHNICAL FIELD 
     Embodiments relates to a tag estimation method and a tag identification method using the same in a RFID system and, particularly to, a method for identifying tags at a high speed by dividing tags in an identifiable area into a plurality of groups, estimating the number of tags in a high speed, and effectively preventing collision of tags based on the estimated tag number. 
     BACKGROUND 
     Radio frequency identification (RFID) is one of core technologies of a ubiquitous computing generation. RFID systems are a non-contact system for identifying many objects in wide range through wireless communication between readers and tags. Particularly, the RFID system has been receiving attention as alternative of barcodes which have been widely used in physical distribution and financial service because the RFID system does not require direct contact and scanning unlike barcodes. 
     When a reader requests tags in an identifiable area to transmit identification numbers thereof in order to read information stored in tags in the RFID system, the tags transmit own identification number to the reader as a response for the request. However, when a plurality of tags transmit identification number to a reader at the same time, tag collision occurs. That is, when a tag transmits its information to a reader, tag collision occurs if other tags transmit their information to the same reader at the same time. 
     Tag collision causes a reader not to identify tags correctly and rapidly, thereby deteriorating the efficiency of a system. However, passive tags do not have abilities to solve it for themselves, because of a limited function and low cost. Thus, how to solve the program efficiently is one of the most important issues in RFID system. 
     Tag anti-collision protocols were separated into ALOHA based protocols and tree-based protocols. 
     One of the best known and the most popular tag anti-collision protocols is Framed-Slotted ALOHA (FSA). 
     As shown in  FIG. 1   a , basic framed slotted ALOHA (BFSA) identifies tags using a fixed frame size. When a reader provides necessary information such as a frame size and a random number to tags, tags receive the provided information and transmit ID numbers thereof at a calculated time slot in a frame. Here, if tag-collision occurs in one time slot, collided tags retransmit ID numbers at a next reading frame. Because of the fixed frame size of BFSA, implementation is rather easy. If, however, there are too many tags, most of timeslots experience collisions, and none of tags may be identified during long time. And many timeslots may be wasted by idle slots if the number of timeslots in the frame is much larger than that of tags. 
     A dynamic framed-slotted ALOHA (DFSA) algorithm can actively deal with the problem of BFSA by estimating the number of tags before tag identification and changing the frame size for efficient tag identification. The simplest DFSA algorithm changes the frame size based on the number of timeslots collided. That is, if the number of timeslots collided is larger than a threshold, a reader increases the frame size at the next frame. On the contrary, if the number of collisions is smaller than a threshold, a reader decreases the frame size at the next frame. The DFSA algorithm provides the optimal performance when the frame size is equal to the number of tags. However, the DFSA algorithm cannot accurately estimate the number of tags because the probability of collision increases when the number of tags is larger than an initial frame size. 
     In a tree based RFID protocol, binary tree algorithms are mostly used.  FIG. 1   b  illustrates a binary tree algorithm. In the binary tree algorithm, if a collision occurs at one time slot, collided tags are randomly separated into two subgroups until all the tags are successfully identified by a reader. The binary tree algorithm is very efficient when the number of tags is small. When the number of tags is large, many collisions occur at the early state. Therefore, many time slots are wasted. 
     As a compromise of DFSA and binary tree algorithm, a framed-slotted ALOHA with tag estimation and binary splitting (EBFSA) was introduced in an article entitled “Identification of RFID Tags in Framed-Slotted ALOHA with Robust Estimation and Binary Selection” IEEE Communication Letters, vol. 11, no. 5, pp. 452-454, 2007.  FIG. 1   c  illustrates an EBFSA algorithm according to the related art. As shown, EBFSA algorithm is divided into estimation phase and identification phase. A reader performs tag estimation using a fixed frame size L est  in the estimation phase. Since it is difficult to accurately estimate the number of tags if a collision probability exceeds a threshold, a reader decreases the number of tags using a bit mask. This process is repeated until the probability of collision is lower than a threshold. After the estimation phase, the identification phase starts. The initial frame size of identification phase is determined by the tag estimation. In the identification phase, when the tags are collided in a timeslot, a reader resolves the collision by binary tree algorithm. The EBFSA algorithm may improve performance by taking the advantages of the DFSA algorithm and a tree based protocol. However, the EBFSA still needs additional time slots to estimate the number of tags. 
     SUMMARY 
     Embodiments have been proposed in order to provide a method for estimating the number of tags and a method for identifying tags using the same in a RFID system, which can identify tags at a high speed by minimizing the number of time slots for identifying tags through estimating the number of tags by dividing tags in an identifiable area into a plurality of groups and effectively preventing tag collision based on the estimated number. 
     In embodiments, a method for estimating the number of tags in a RFID system includes the steps of: a) at a reader, dividing tags in an identifiable area into a predetermined number of groups; b) identifying tags by applying a pilot frame L p  to a first group among the divided groups in the step a); c) at a reader, calculating a collision probability P coll  of tags after the pilot frame ends; and d) identifying unidentified tags of the first group, which are not identified for the pilot frame, by allocating an additional pilot slot Ladd at an end of the pilot frame or generating a new frame L 1  according to the collision probability P coll . 
     In the step a), the reader may use a bit mask to divide tags into a predetermined number of groups. 
     In the step b), when tags collide during the pilot frame L p , random counters of collided tags may be changed according to the number of remaining time slots in the pilot frame and a collision order in the pilot frame and an identification number of a tag is transmitted at a time slot where the random counter become 0. 
     The step d) may include the step of comparing the collision probability P coll  with a predetermined threshold P th . If the collision probability P coll  is smaller than the predetermined threshold P th , an additional time slot L add  may be allocated at an end of the pilot frame, and unidentified tags in the first group are identified. If the collision probability P coll  is larger than the predetermined threshold P th , unidentified tags in the first group may be identified by generating a new frame after the pilot frame. 
     In the additional time slot L add , tags may transmit identification numbers thereof to a reader when random counters of the tags, which continuously decrease from the pilot frame L p , become 0, and collided tags in the additional time slot L add  select 0 or 1 as a random counter, remaining unidentified tags increase random counters by 1, each of tags decreases a random counter sequentially, and each of tags transmits an identification unit at a time slot where a random counter becomes 0. 
     In the new frame L 1 , unidentified tags, which are not identified in the pilot frame L p , may begin counting a new random counter and transmit an identification number to a reader when the new random counter become 0, and collided tags in the new frame L 1  may select 0 or 1 as a random counter, remaining unidentified tags increase random counters by 1, each of tags sequentially decreases a random counter, and each of tags transmits an identification number at a time slot where a random counter becomes 0. 
     In another embodiments, a method for identifying tags in a RFID system, includes the steps of: a) at a reader, dividing tags in an identifiable area into a predetermined number of groups; b) identifying tags by applying a pilot frame L p  to a first group among the divided groups in the step a); c) at a reader, calculating a collision probability P coll  of tags after the pilot frame ends; d) identifying unidentified tags of the first group, which are not identified for the pilot frame, by allocating an additional pilot slot L add  at an end of the pilot frame or generating a new frame L 1  according to the collision probability P coll ; e) deciding an optimal frame size L opt  based on the number of tags of the first group, which are estimated through the steps a) to d); f) identifying tags in a second group by applying the decided optimal frame size L opt ; and g) identifying tags of a current group by applying an optimal frame size L opt  decided based on the number of identified tags in a previously group, and repeating the step g) for identifying tags in remaining groups after the second group. 
     The optimal frame size L opt  may be decided by differentiating an equation for the number n of tags identified in a previously groups, where the equation is: 
     
       
         
           
             
               T 
               = 
               
                 
                   ∑ 
                   
                     k 
                     = 
                     0 
                   
                   n 
                 
                 ⁢ 
                 
                   
                     
                       
                         C 
                         k 
                           
                           
                         n 
                           
                       
                       ⁡ 
                       
                         ( 
                         
                           1 
                           
                             L 
                             opt 
                           
                         
                         ) 
                       
                     
                     k 
                   
                   ⁢ 
                   
                     
                       ( 
                       
                         1 
                         - 
                         
                           1 
                           
                             L 
                             opt 
                           
                         
                       
                       ) 
                     
                     
                       n 
                       - 
                       k 
                     
                   
                   ⁢ 
                   
                     
                       
                         L 
                         opt 
                       
                       ⁡ 
                       
                         ( 
                         
                           
                             α 
                             k 
                           
                           + 
                           1 
                         
                         ) 
                       
                     
                     . 
                   
                 
               
             
             , 
           
         
       
     
     wherein T denotes the total number of time slots for identifying tags, n is the number of identified tags in a previous group. k is the number of tags transmitted in one time slot, and αk is the average number of time slots used for a binary tree algorithm when collision occurs. 
     The optimal frame size may be 0.88n where n is the number of identified tags in a previous group. 
     In the steps f) and g), each of tags may transmit an identification number to a reader when a random counter becomes 0, tags collided in a corresponding frame may select 0 or 1 as a random counter, each of remaining unidentified tags may increase a random counter by 1, each of tags sequentially may decrease a random counter, and each of tags may transmit an identification number at a time slot where a random counter becomes 0. 
    
    
     
       DRAWINGS 
         FIGS. 1   a  to  1   c  illustrate a BFSA algorithm, a binary tree algorithm, and an EB-FSA algorithm for preventing tag collision in accordance with the related art. 
         FIG. 2  is a flowchart of a method for estimating the number of tags in a RFID system in accordance with an embodiment of the present invention. 
         FIG. 3  is a flowchart of a method for identifying tags in a RFID system in accordance with an embodiment of the present invention. 
         FIGS. 4   a  and  4   b  are diagrams for describing a method for estimating the number of tags in a RFID system in accordance with an embodiment of the present invention. 
         FIG. 5   a  is a graph showing frame sizes according to the number of time slots when the number of tags is 100 in a RFID system where the present invention is applied. 
         FIG. 5   b  is a graph showing 1/L opt  values according to the number of tags in a RFID system where the present invention is applied. 
         FIG. 6   a  is a graph showing the number of time slots wasted for estimating the number of tags according to the number of tags in order to compare a performance of a tag estimation method according to the present invention with that of EB-FSA algorithm. 
         FIG. 6   b  is a graph showing the number of time slots used for identifying tags according to the number of tags in order to compare the performance of a tag identification method according to the present invention with that of a tag identification method according to the related art. 
     
    
    
     DESCRIPTION 
     Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The present invention relates to a method for identifying tags by estimating the number of tags in a pilot frame to prevent tag collision and identifying tags using a DFSA algorithm and a binary tree algorithm according to the estimated number of tags. Therefore, a tag estimation method and a tag identification method according to the present invention are referred as Framed-Slotted ALOHA with Estimation by Pilot Frame and Identification by Binary Selection (FSAPB). 
     The tag estimation method for estimating the number of tags in a RFID system in accordance with an embodiment of the present invention will be described with reference to a flowchart of  FIG. 2  and diagrams of  FIGS. 4   a  and  4   b.    
     As shown in  FIG. 2 , the method for estimating the number of tags according to the present embodiment includes dividing tags into a predetermined number of groups at step S 10 , reading tags by applying a pilot frame L p  to a first group among the divided groups at step S 20 , calculating a collision probability P coll  of tags at a reader after the pilot frame ends at step S 30 , and identifying tags of a first group which are not identified for a pilot frame according to the collision probability P coll . 
     In the step S 10 , a reader may divide tags in an identifiable area into M groups using a bit mask. The reason of dividing the tags into M groups in the present embodiment is to prevent time slots from being wasted due to tag collision that may occur when estimation is progressed for too many tags. 
     Furthermore, if the number of tags in a predetermined group is estimated using a bit mask that can uniformly divide tags, the number of tags in the other groups can be estimated under an assumption that all of remaining groups have the uniform random distribution. Although the bit mask may not have perfect uniform random distribution, the significant number of time slots for estimating the number of tags can be advantageously reduced. Meanwhile, if the tags are divided into too many groups in the step S 10 , the tags may not uniformly distributed in each of groups. Therefore, it is prefer to carefully decide the number M of groups through simulations. 
     In the step S 20 , the reader identifies tags in the first group by applying a pilot frame L p  to the first group among the groups divided in the step S 10 . Referring to  FIGS. 4   a  and  4   b , all of tags in the first group transmit their identification numbers during the pilot frame in response to a request of a reader. That is, each of tags transmits an identification number at a time slot where a random counter thereof becomes 0, thereby being identified by a reader. 
     If a reader fails to identify a tag because tag collision occurs during a pilot frame L p , a random counter of a collided tag is changed according to the number of remaining time slots in a pilot frame and an collision order in a pilot frame. Then, the tags retransmit identification numbers at a time slot where the random counter becomes 0. For example, a random counter of a collided tag may be decided by Eq. 1.
 
Counter=the number of time slots remained remaining in  L   p +2×(collision order−1)+rand(0 or 1)  Eq. 1
 
     After the tag identification process is finished in the pilot frame, a reader calculates a collision probability of collision P coll  at step S 30 . The collision probability P coll  may be calculated by dividing the number of time slots where collision occurs in a pilot frame by the number of total time slot of the pilot frame. 
     Then, unidentified tags in the first group, which are not identified for a pilot frame due to tag collision, are identified at the step S 40 . In the step S 40 , the calculated collision probability P coll  is compared with a predetermined threshold P th  after the pilot frame. If the collision probability P coll  is smaller than the predetermined threshold P th , tags are identified by allocating an additional time slot L add  at the end of the pilot frame. If the collision probability Pcoll is larger than the predetermined threshold P th , tag identification is performed by generating a new frame L 1  after a pilot frame. 
     The collision probability P coll  smaller than the predetermined threshold P th  means that the number of collided tags in one time slot is comparatively small. Therefore, a reader allocates an additional time slot L add  at the end of a pilot frame in order to solve tag collision problem in a pilot frame. In the additional time slot L add , tags transmit identification numbers to a reader until random counters of tags become 0, which are continuously subtracted in the pilot frame L p . In this process, tags collided in the additional time slot L add  select 0 or 1 as a random counter thereof, and unidentified tags increase the random counter by 1. Then, the random counters of the tags sequentially decrease. Each of the tags transmits the identification number thereof at a time slot where the counter becomes 0, thereby being identified by the reader. 
     The tag identification process in an additional time slot L add  will be described with reference to  FIG. 4   a.    
     As shown in  FIG. 4   a , a reader can identify Tag  1  and Tag  7  during a pilot frame L p . Tag  2 , Tag  3 , and Tag  5  collide at the pilot frame. Tag 4  and Tag 6  collide in a pilot frame. Therefore, random counters of the collided tags are changed according to Eq. 1 in order to identify the collided tags at an additional time slot L add  allocated at the end of the pilot frame. 
     Then, tags are identified at the additional time slot L add  based on a binary tree algorithm. That is, Tag  2  and Tag  5  collide at the first slot of the additional time slot L add  select 0 or 1 as a random counter. Due to the collision, remaining other tags increase the counter values thereof by 1. Also, Tag 4  and Tag 6  collided in the additional time slot Ladd select 0 or 1 as a random counter and transmit the identification number thereof when the random counter thereof becomes 0. 
     If the collision probability P coll  is larger than a predetermined threshold P th , collisions occur most of time slots in a pilot frame. In this case, a reader applies a new frame L 1  to identify unidentified tags in a first group instead of allocating an additional time slot L add  at the end of the pilot frame. In the new frame L 1 , the unidentified tags transmit identification numbers thereof to a reader until random counters thereof become 0 by discounting the new random counters. Here, collided tags in the new frame L 1  select 0 or 1 as the random counters thereof, and remaining unidentified tags increase the random counters thereof by 1. Then, the random counter of each tag sequentially decreases and each tag transmits an identification number thereof to a reader at a time slot where the counter value becomes 0. 
     In the FSAPB algorithm according to the present invention, the number of tags can be estimated by applying an equation used for estimating the number of tags in a DFSA algorithm into a pilot frame L p . That is, the number of tags is estimated using Eq. 2 in the present embodiment. 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           P 
                           coll 
                         
                         = 
                         
                           1 
                           - 
                           
                             P 
                             idle 
                           
                           - 
                           
                             P 
                             succ 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                         
                           1 
                           - 
                           
                             
                               ( 
                               
                                 1 
                                 - 
                                 
                                   1 
                                   
                                     L 
                                     P 
                                   
                                 
                               
                               ) 
                             
                             n 
                           
                           - 
                           
                             n 
                             ⁢ 
                             
                                 
                             
                             ⁢ 
                             
                               1 
                               
                                 L 
                                 P 
                               
                             
                             ⁢ 
                             
                               
                                 
                                   ( 
                                   
                                     1 
                                     - 
                                     
                                       1 
                                       
                                         L 
                                         P 
                                       
                                     
                                   
                                   ) 
                                 
                                 
                                   n 
                                   - 
                                   1 
                                 
                               
                               . 
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   Eq 
                   . 
                   
                       
                   
                   ⁢ 
                   2 
                 
               
             
           
         
       
     
     In Eq. 2, n denotes the number of tags, L p  denotes a size of a pilot frame, P coll , denotes a collision probability, P idle  denotes a valid probability, and P succ  is a success probability. 
     Meanwhile, a new frame size of the step S 40  may be determined by replacing the number of tags n with a new frame size L 1  in Eq. 2. That is, a new frame size can be obtained by applying a size of a pilot frame L p  applied to a first group and the collision probability P coll  calculated at the step S 30  into Eq. 2 and replacing the number of tags with the new frame size L 1  (n=L 1 ). It is not necessary to accurately estimate the number n of tags to optimally set a size of a new frame L 1 . It is because more time slots may be wasted to accurately estimate the number of tags. Preferably, the size of a new frame is set as a minimum value of n that satisfy Eq. 2 in consideration of successfully identified tags in a pilot frame and an optimal frame size. 
     Tag identification in a new frame L 1  will be described when the collision probability P coll  is larger than a predetermined threshold P th  with reference to  FIG. 4   b.    
     Referring to  FIG. 4   b , a reader can identify Tag  1  during a pilot frame L p  at first. With exception of Tag 1 , remaining tags collide and retransmit identification numbers thereof in the new frame L 1 . 
     In the tag identification process of the new frame L 1 , Tag 4  collides with a sixth tag Tag 6  in a third time slot. The collided fourth tag Tag 4  and sixth tag Tag 6  select 0 or 1 as a random counter thereof, and other unidentified tags increase their random counters by 1. Tags transmit their identification numbers until random counters thereof become 0. 
     As described above, in the method for estimating the number of tags based on FSAPB algorithm according to the present embodiment, a reader divides tags in an identifiable area using a bit mask, performs tag identification by applying a pilot frame only to a predetermined divided group. Therefore, the number of time slots used for estimating the number of tags is minimized. That is, a reader can quickly identify all of tags in a first group and estimate the number of tags in following groups based on the estimated number of tags through the steps S 10  to S 40 . 
     Hereinafter, a method of identifying tags using the method of estimating the number of tags in accordance with an embodiment of the present invention will be described with reference to  FIG. 3 . 
     As shown in  FIG. 3 , the tag identifying method according to the present embodiment includes dividing tags into a predetermined number of groups at step S 100 , reading tags by applying a pilot frame L p  to a first group among the divided groups at step S 200 , after the pilot frame ends, calculating a probability of tag collision by a reader at step S 300 , identifying unidentified tags, which are not identified for a pilot frame, based on the probability of tag collision at step S 400 , deciding an optimal frame size L opt  based on the estimated number of tags in the first group at step S 500 , identifying tags in a second group by applying the optimal frame size L opt  at step S 600 , and identifying tags in a current group by applying an optimal frame size L opt  that is decided based on an identified number of tags in a previous group, and repeatedly performing tag identification until all tags in all groups are identified at step S 700 . 
     As described above, the tag identification method according to the present embodiment uses the tag estimation method according to an embodiment of the present invention which was described above. Since the steps S 100  to S 400  are identical to processes for estimating the number of tags, detail descriptions thereof are omitted. 
     In the step S 500 , a reader decides an optimal frame size L opt  based on the number of tags in the first group, which is estimated through the steps S 200  to S 400 . It has been known that a DFSA algorithm provides the optimal performance when a frame size is equal to the number of tags. However,  FIG. 5   a  shows that the optimal frame size is not equal to the number of tags although the tag identification method according to the present embodiment partially uses the DFSA algorithm. Here,  FIG. 5   a  is a graph showing the necessary number of time slots according to a frame size when the number of tags is 100. In the present embodiment, the optimal frame size L opt  is decided using Eq. 3 which is introduced in an article entitled “Analysis of contention Tree Algorithms”, IEEE Trans. on Information Theory, vol. 46, no. 6 pp. 2163-2172, September 2000. 
     
       
         
           
             
               
                 
                   T 
                   = 
                   
                     
                       ∑ 
                       
                         k 
                         = 
                         0 
                       
                       n 
                     
                     ⁢ 
                     
                       
                         
                           
                             C 
                             k 
                               
                               
                             n 
                               
                           
                           ⁡ 
                           
                             ( 
                             
                               1 
                               
                                 L 
                                 opt 
                               
                             
                             ) 
                           
                         
                         k 
                       
                       ⁢ 
                       
                         
                           ( 
                           
                             1 
                             - 
                             
                               1 
                               
                                 L 
                                 opt 
                               
                             
                           
                           ) 
                         
                         
                           n 
                           - 
                           k 
                         
                       
                       ⁢ 
                       
                         
                           
                             L 
                             opt 
                           
                           ⁡ 
                           
                             ( 
                             
                               
                                 α 
                                 k 
                               
                               + 
                               1 
                             
                             ) 
                           
                         
                         . 
                       
                     
                   
                 
               
               
                 
                   Eq 
                   . 
                   
                       
                   
                   ⁢ 
                   3 
                 
               
             
           
         
       
     
     In Eq. 3, T denotes the total number of time slots for identifying tags, n is the number of identified tags in a previous group. k is the number of tags transmitted in one time slot, and αk is the average number of time slots used for a binary tree algorithm when collision occurs. 
     In Eq. 3, the optimal frame size L opt  is a value that returns 0 after differentiating Eq. 3. It is very difficult to differentiate Eq. 3 for various n. However,  FIG. 5   b  shows that the optimal frame size Lopt is about 0.88n where n denotes the number of identified tags in a previous group.  FIG. 5   b  is a graph showing 1/L opt  according to the number n of tags. As shown in the graph of  FIG. 5   b,  1/L opt  is not influenced by n if k becomes larger. Therefore, it is possible to differentiate Eq. 3 for a predetermined range of k. Accordingly, the optimal frame size Lopt can be calculated by multiplying a predetermined constant (γ=0.88) with the number of tags n in the present embodiment. 
     After deciding the optimal frame size Lopt based on the number of identified tags in the first group through the step S 500 , tags in a following group which is a second group are identified by applying the decided optimal frame size L opt  at step S 600 . 
     Since it is assumed that a bit mask divides tags at uniform distribution in the present embodiment, it is not necessary to perform a process of estimating the number tags by applying a pilot frame after a reader identifies all of tags in a first group. That is, it is assumed that a second group has the same number of tags of the first group. Tags in the second group are identified by applying the optimal frame size L opt  decided based on the number of identification tags in the first group. Also, tags in a following group, which is a third group, are identified by applying the optimal frame size L opt  decided based on the number of identification tags in the second group. 
     As described above, an optimal frame size L opt  of a current group is decided based on the number of identified tags in a previous group. In the step S 700 , the tag identification process is repeated by applying an optimal frame size until all of tags in remaining groups are identified. 
     After an optimal frame size is decided, tag identification is performed based on a binary tree algorithm for remaining groups including a second group. That is, tags in each of groups transmit identification numbers to a reader until random counters thereof become 0 in a frame with the binary tree algorithm applied. In a corresponding frame, collided tags select 0 or 1 as a random counter and unidentified tags increase random counter thereof by 1. Then, each of tags decreases a random counter thereof sequentially, and transmits an identification number in a time slot where the random counter becomes 0. 
     As described above, after the first group, the tag identification method according to the present embodiment estimates the number of tags in a current group based on the number of identified tags in a previous group without wasting time slots using the tag estimation method that estimates the number of tags at high speed using a pilot frame. Then, an optimal frame size is calculated from the estimated number of tags, and tag identification is performed by changing a frame size based on the calculated optimal frame size. Thus, tag collision is effectively prevented, and the overall number of time slots for tag identification is minimized, thereby identifying tags at a high speed. 
     Following simulation results clearly show that the tag estimation method and the tag identification method according to the present embodiment provide better performance than an anti-collision method according to the related art. Based on the simulation results, the performance of a system employing the FSAPM algorithm according to the present embodiment is compared with the performances of systems employing a DFSA algorithm, a binary tree algorithm, and an EB-FSA algorithm. The simulations were performed under following conditions. A reader identifies all tags. The number of tags increases from 100 to 1000. In the system employing the FSAPB algorithm according to the present embodiment, parameters set as L.sub.p=36, P.sub.th=0.6, and M=4. The system employing the EB-FSA algorithm was simulated based on conditions described in an article entitled “Identification of RFID Tags in Framed-Slotted ALOHA with Robust Estimation and Binary Selection”, IEEE Communication Letters, vol. 11, no. 5, pp. 452-454, 2007. The system employing the DFSA algorithm was simulated under an assumption that the initial number of tags is known and the estimated number of tags is very accurate. 
       FIG. 6   a  is a graph showing the number of time slots used for estimating the number of tags according to the number of tags based on the simulation results. As shown in  FIG. 6   a , the FSAPM based system according to the present embodiment uses much less time slots for estimating the number of tag compared to the EB-FSA based system. In the graph of the FSAPM based system according to the present invention, discontinuity is shown where the number of tags n is 200 (n=200). It is because the FSAPM based system uses an additional time slot L add  when the number of tags is smaller than 200 and uses a new frame L 1  when the number of tags is larger than 300. That is, the FSAPM based system identifies remaining tags using an additional time slot L add  because a collision probability P coll  is smaller than a predetermined threshold P th  in a pilot frame L p  when the number of tags is smaller than 200. However, when the number of tags is from 300 to 1000, many tag collisions occur in the pilot frame L p . Thus, the FSAPM based algorithm applies a new frame L 1  to identify remaining frames. Furthermore, the size of a pilot frame of the FSAPB based system is comparatively small (L p =36) in an entire process of changing the number of tags changes from 100 to 1000. However, the graph shows that the EB-FSA based system uses much more time slots for estimating the number of tags as the number of tags increases. For example, the EB-FSA based system uses time slots 5.5 times than the FSAPB based system according to the present embodiment. 
       FIG. 6   b  shows the number of time slots used for identifying tags according to the number of tag in order to compare a FSAPB algorithm according to the present invention, an EB-FSA algorithm, a DFSA algorithm, and a binary tree algorithm in performance. As shown in  FIG. 6   b , those algorithms provide similar performances when the number of tags is small. However, the graph clearly shows that the FSAPB algorithm according to the present invention is much more efficient when the number of tags is large. For example, the EB-FSA algorithm, the DFSA algorithm, and the binary tree algorithm use 7.3%, 14.7%, 21.9% of more time slots than the FSAPB algorithm according to the present invention. 
     As described above, the method for estimating the number of tags in a RFID system according to the present embodiment divides tags into a plurality of groups using a bit mask and applies a pilot frame. Therefore, the number of time slots for estimating the number of tags is significantly reduced, thereby estimating the number of tags at a high speed. 
     As described above, the method for identification tags in a RFID system decides an optimal frame size based on the estimated tag number and applies the optimal frame size to identify tags in following groups, thereby effectively preventing tag collision. Therefore, the method for identification tags according to the present invention can identify tags at a high speed. 
     It will be apparent to those skilled in the art that various modifications and variations can be made to embodiments without departing from the spirit or scope of the disclosed embodiments. Thus, it is intended that the present invention covers modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.