2016 2 nd International Conference on Energy, Materials and Manufacturing Engineering (EMME 2016) ISBN: 978-1-60595-441-7 An Improved DFSA Anti-collision Algorithm Based on the RFID-based Internet of Vehicles Chao Yang & Jun Bi Beijing Jiaotong University, Beijing, China ABSTRACT: In the progress of getting information in the Internet-of-Vehicles, Radio Frequency Identification (RFID) is always used because it can provide a safe, rapid, and environmentally compatible travel for people. We can t avoid the RFID tags collision while a certain amount of Vehicle-tags information is uploaded simultaneously. It is necessary to analyze the anti-collision to minimize the error between the actual and estimated number of the tags. By combining with the practical application of the Internet of Vehicles and comparing the performance of the proposed method with those of existing methods, we introduced a suitable anti-collision algorithm based on dynamic frame-slot-aloha (DFSA) algorithm. By using MATLAB software to simulate the acquisition process, the effect of anti-collision algorithm is verified, which provides a better way to solve the collision in the application of the Internet of Vehicles. Keywords: Internet of Vehicles; anti-collision algorithm; traffic information collection 1 INTRODUCTION While getting information in the Internet-of-Vehicles [1], RFID readers [2] send wireless carrier signal with encrypted data in a certain frequency to car tags in their sphere of action and form electromagnetic field in a certain area. When the car tags go into the range of electromagnetic field, they can get energy from induced current and send a message to the reader. To obtain the comprehensive vehicle information, it needs to place a reader in each corner of the intersection. When the range of two readers overlap, a car tag will be identified by both readers simultaneously. This is the reader collision shown in Figure 1, where the "Crimson" vehicle is in the range of reader 1 and reader 2. When multiple vehicles send messages to readers simutalously, the electronic tags will compete for communication channel, which will lead to readers not being able to identify the tags correctly. Because of the limited communication channels between the RFID readers and the electronic tags, we can t avoid the tag collision in practical application. It is necessary to apply certain mechanism or algorithm to reduce the tag collision. On the basis of existing methods, we proposed a suitable tag anti-collision algorithm for the features of Internet-of-Vehicles to avoid mutual interference during collecting tags information. So readers can fastly and accurately read vehicle information. Figure 1. Reader collision model in the Internet of Vehicles. 2 EXISTING ANTI-COLLISION ALGORITHM Nowadays, various anti-collision algorithms have been proposed and they are classified into two categories: tree-based [3] and ALOHA-based [5-10]. Both of them are most widely used and based on TDMA method [4]. Tree-based algorithms resolve a collision by splitting colliding tags into subsets iteratively until all the tags are identified. But it requires relatively long identification delays, especially when the number 185
of tags is large. In ALOHA-based algorithms, the time is divided into several slots, and the tags are sequentially identified at different time slots. So it can be easily implemented. Moreover, we used ALO- HA-based algorithms frequently in RFID system. Currently, the algorithms include Pure ALOHA algorithm, Slotted ALOHA (SA) algorithm, Frame Slotted ALOHA (FSA) algorithm, and Dynamic Framed Slotted ALOHA (DFSA) algorithm. 2.1 Pure ALOHA Pure ALOHA algorithm is a random access algorithm. When RFID reader sends a request command to cars within its range, the electronic tags of the cars will immediately respond and send the self-id to the RFID reader. At this point, if there is only one electronic tag responds and sends ID, the tag will be read correctly; if two or more electronic tags respond simultaneously, then the overlapping signals will lead to part of conflicts or complete conflict. And once the reader detects the signal conflict and it will send a command to stop the electronic tag from sending ID and randomly waiting for resending to prevent collisions. The model of pure ALOHA algorithm is shown in Figure 2: Compared with pure ALOHA algorithm, Slot ALOHA algorithm doubles the channel utilization as shown in Figure 4. The maximum theoretical throughput of slotted ALOHA algorithm can achieve 36.8%, while Pure ALOHA algorithm only have 18.4%. But when the number of the tags is too large, the efficiency will be getting low and the throughput will drop sharply. And then the tags may be sent repeatedly, thus causing collision and the tags can never be read correctly. Figure 4. The comparison between the throughput of pure ALOH algorithm and the slotted ALOHA algorithm. 2.3 Framed slotted ALOHA Figure 2. Model of pure ALOHA algorithm. 2.2 Slotted ALOHA SA algorithm is to improve the recognition efficiency on the basis of pure ALOHA algorithm. The time is equally divided into a number of slots, and it s stipulated that tags can only send data at the beginning of each time slot and this can realize successful sending or complete collision, thus avoiding partly collision and improving the channel utilization of the RFID reader. FSA algorithm can avoid some of the tags collision and only exists in complete collision situation, thus greatly reducing the chance of tags collision. In FSA algorithm, one frame consists of several slots. Tags randomly select a slot to send data in each frame and the model of frame slotted Aloha algorithm is shown in Figure 5. But when the number of tags is getting larger, the tags collision occurs frequently and that will result in slots being wasted and channel utilization being reduced. On the other side, when the number of tags is small, the slots number in one frame should also be reduced correspondingly to avoid the waste of unoccupied slots. Figure 5. Model of frame slotted ALOHA algorithm. 2.4 Dynamic framed slotted ALOHA Figure 3. Model of slotted ALOHA algorithm. Compared with FSA algorithm, the DFSA algorithm can pre-estimate the number of tags to dynamically adjust the slots number F in each frame and the model 186
is shown in Figure 5. We set two thresholds with a lower and an upper limit respectively in each frame when the algorithm is in process. When the collision rate is lower than the lower threshold, the reader will reduce the slots number F in the next frame. When the collision rate is higher than the upper limit threshold, the reader will increase the value of F. Beyond all that the value of F can remain unchanged. Figure 6. Model of dynamic frame slotted ALOHA algorithm. DFSA algorithm can dynamically adjust the slots number in the next frame according to tag numbers, effectively reducing the tag collision and maintaining a high system throughput. In theory, the optimal value of F should be equal to the tags number. But in practical application, due to the hardware limitations, the slot number is usually typically set to several fixed values as 8, 16, 32, 64, 128, 256. The relationship between tags number with the matching slots is shown in Table 1. Table 1. Relationship between tag numbers with the matching slots. Tags number 1~11 12~22 23~45 46~89 90~176 >176 Slots number 8 16 32 64 128 256 DFSA algorithm has more advantages over other ALOHA-based algorithms, so it is most widely used. 3.1 The idea of the modified algorithm The simulation analysis shows that when the tags number is equal to the slots number in each frame and the RFID reader system has the highest throughput rate. Therefore, we can know that the efficiency of DFSA algorithm depends on whether the slots number is close to the unrecognized tags number. If we adjust the slots number in the frame too much, it will be a waste of the slots. Conversely, if we adjust the slots number too little, it will increase the chance of the tags collision which will lead to reduction of the recognition efficiency. Therefore, we need to choose a suitable algorithm to dynamically adjust the slots number to make it close the recognized number and finally can improve the efficiency of the RFID reader system. Currently, the DFSA algorithm can work in three methods: threshold comparison of the collision rate/idle rate, the chart contrast and estimation of unrecognized tags. 3.1.1 Threshold comparison of the collision rate/idle rate This method sets a lower threshold value I1 and an upper threshold value I2, and then gathers the number of idle slots and collision slots after the recognition phase in each frame. After that the idle rate Ck and the collision rate Ps is calculated and the slot length in the next frame can be dynamically adjusted by comparing them with a threshold value. In the comparison of the idle rate with the threshold values, the slots number Fi in the i-th frame is: 2* Fi 1, P0 I1 Fi F, I P I Fi 1 2, P0 I2 i1 1 0 2 (1) By using MATLAB simulation, the relationship between the idle rate, the collision rate and throughput and input is as shown in Figure 7. 3 IMPROVED DFSA ANTI-COLLISION ALGORITHM In the Internet of Vehicles system, the range of the reader is less than 200 meters. For example, the readers can only read a maximum of 200 high moving vehicles in the bidirectional eight-lane. Also, the number of the tags read by the reader is continuous changing. Although the anti-collision algorithm based on ALOHA is at large random, it s quite applicable to solve anti-collision problems in the Internet of Vehicles as it can be easily implemented and it is suitable for RFID reader system with small tags number which can fully adapt to the dynamic changes of the tags number. Figure 7. The relationship between the idle rate, collision rate and throughput rate. 187
Figure 7 shows that, with the input load increasing, the idle rate decreases and the collision rate increases monotonically. When the idle rate is smaller than 0.37, the throughput increases at first and then decreases monotonically. Therefore, we can dynamically adjust the slots number by setting an appropriate threshold range for the idle rate or the collision rate, thus keeping the REIK system with a high throughput rate. However, this method has a very poor accuracy and it is not suitable for the situation when the tags number is larger or smaller than the current slots number. The idle rate value can be used to determine the number of tags. When the input load is 1 and the idle rate is 0.37, the tags number is close to the slot number F. When the input load is 2 and the idle rate is 0.14, the number of tags is close to 2F. 3.1.2 Chart contrast In a fixed slots number, the idle rate decreases monotonically with the tags number increasing. So it is possible to accurately estimate the tags number by reference to the correlations between the idle rate and the tags number in different slots number. Then we can obtain the unrecognized tags number by subtracting the recognized number from the tags number. Table 2. Correlations between the idle rate and the tags number in one frame with different DFSA slots number. Number Number of slots in one frame of tags 8 16 32 64 128 256 10 0.263 0.524 0.728 0.854 0.924 0.961 20 0.069 0.275 0.529 0.729 0.854 0.924 30 0.018 0.144 0.385 0.623 0.790 0.889 40 0.004 0.075 0.280 0.532 0.730 0.855 50 0.001 0.039 0.204 0.455 0.675 0.822 60 0.000 0.020 0.148 0.388 0.624 0.790 70 0.000 0.010 0.108 0.332 0.577 0.760 80 0 0.005 0.078 0.283 0.533 0.731 90 0 0.003 0.057 0.242 0.493 0.703 100 0 0.001 0.041 0.207 0.456 0.676 110 0 0.000 0.030 0.176 0.422 0.650 120 0 0.000 0.022 0.151 0.390 0.625 130 0 0.000 0.016 0.129 0.360 0.601 140 0 0.000 0.011 0.110 0.333 0.578 150 0 0.000 0.008 0.094 0.308 0.555 160 0 0 0.006 0.080 0.285 0.534 170 0 0 0.004 0.068 0.263 0.514 180 0 0 0.003 0.058 0.243 0.494 190 0 0 0.002 0.050 0.225 0.475 200 0 0 0.001 0.042 0.208 0.457 Table 2 shows that the idle rate decreases when the tags number increases with the same slots number and it increases when the slots number increases with the same tags number. Therefore, we can look up Table 2 to accurately estimate the tags number based on the current slots number and the idle rate, and then calculate the number of unrecognized tags. However, when the tags number is much larger than the slots number, the idle rate is 0 and the tags number at this time cannot be confirmed. The method requires additional memory to store a large amount of data and it will also increase the hardware cost of the reader. So it s not applicable to solve the problem of anti-collision in the Internet of Vehicles. 3.1.3 Estimation of unrecognized tags This method is mainly based on the number of conflicted tags in pre-recognition to estimate the unrecognized tags number and dynamically adjust the slots number in the next frame according to the relationship between the tags number and the slots number in one frame. Tags number is unknown in the recognition, so it is very important to choose the appropriate estimation algorithm of the tags. 3.2 Estimation algorithm of the tags The accuracy of the estimation algorithm will directly affect the performance of DFSA algorithm. The more accurate the estimation is, the higher efficiency the anti-collision has. Assumed that the initial number of the slots in a frame is F, and after tags recognition in the frame, the number of idle slots C0, the successfully recognized slots Cs and the conflicted slots Ck can be known. The estimation algorithm is based on the statistical value of C0, Cs and Ck to estimate the unrecognized tags number. Currently, the estimation algorithm includes Lower Bound, Vogt and Schoute algorithm. 3.2.1 Lower Bound algorithm Lower bound algorithm considers that it has at least two tags conflicted in each collision slot and the number of unrecognized tags is expressed as: N (2) 2* C k The algorithm only considers the situation that there are two tags failing to be recognized due to their collision. Clearly, when the tags number is getting larger, the chance of estimation error will increase. 3.2.2 The Schoute algorithm The Schoute algorithm sets the condition that the collision slots are with more than 3 unrecognized tags. In an ideal situation, it is assumed that the tags number obeys Poisson distribution with the average value of 1. The probability that time slot I having k tags which simultaneously send data to the reader is: P P e k tags choose slot i 1 k! 1 k (3) And the conditional probability distribution of the tag collision is: 188
0, k 0 or 1 Pk tags choose slot i collided Pk (4), k 2 1 P0 Ps And the expected value of the unrecognized tags number is: N (5) 2.3922* C k 3.2.3 The Vogt algorithm The Vogt algorithm is developed on the basis of the Chebyshev inequality, which means the output of a random variable in a random test is probably close to the expected value. The output is estimated by the shortest distance between the actual value and the expected value. The corresponding tags number N of the shortest distance d which consists of the vectors (C0, Cs, Ck) and the vectors (F0, Fs, Fk) are used to estimate the unrecognized tags number. The vectors (C0, Cs, Ck) are composed of the idle slots number C0, the recognized idle slots number Cs and the collision slots number Ck, and they are obtained from the readers. The vectors (F0, Fs, Fk) are composed of the idle slots number F0, the idle slots number Fs and collision slots number Fk, the calculation is: F0 C0 d N, C0, Cs, Ckmin Fs Cs n F k C k (6) The algorithm first calculates the absolute difference values between F0 and C0, Fs and Cs, Fk and Ck. And then the parameter with the minimum absolute difference value is combined with formula (4), formula (5) and formula (6) to get the number of unrecognized tags number N. The estimation algorithms also have errors. This paper used MATLAB to simulate the recognition process of the tags for many times based on the calculation of the number of different tags. The estimation error rates of the three algorithms are shown in Figure 8: Figure 8. The estimation error rates of the three algorithms. It can be seen from Figure 8 that when the number of the tags is smaller than 2F. The Schoute algorithm and the Lower Bound algorithm have less estimation errors, and the Vogt algorithm has more estimation errors and the error rate is even higher than 40%. With the increase of tags number, although the Schoute algorithm performs better than the Lower Bound algorithm, both algorithms have many estimation errors. Moreover, the estimation errors of the Vogt algorithm are less and the algorithm behaves relatively stable. When the tags number is smaller than 200, the average estimation error rates of the Schoute algorithm, the Lower Bound algorithm and the Vogt algorithm are 38.8%, 37.7% and 12.9% respectively. 3.3 Improved DFSA algorithm Based on above research, we can know that it s impossible to simply rely on one estimation algorithm especially in the system of the Internet of Vehicle system which requires high accuracy in the recognition process. To more accurately estimate the number of unrecognized tags, we proposed an improved anti-collision algorithm. In the improved algorithm, the Schoute algorithm and Vogt algorithm are used to estimate the number of unrecognized tags. When the tags number is smaller than 2F and the idle rate is higher than 0.14, we use Schoute algorithm to estimate the number of unrecognized tags. When the idle rate is lower than 0.14, we choose the Vogt algorithm for estimation. In order to implement the proposed algorithm, the following notations are adopted: F: The initial slots number in the frame at the reader side. C0: The idle slots number after the recognition at the reader side. Cs: The recognized slots number at the reader side. Ck: The collision slots number at the reader side. P0: The idle rate at the reader side. N1: The unrecognized tags number with the use of the Schoute algorithm. N2: The number of unrecognized tags with the use of the Vogt algorithm. N: The estimated number of the tags. The implementation steps of the improved DFSA algorithm are as follows: Step 1. Set the initial slots number as F=16 according to the real traffic volume; Step 2. The reader sends instructions which contain the slots number F to the range of the recognition area, and then wait for response of the tags and start a new recognition process; Step 3. After the receipt of the instruction, all the tags randomly send self-information to one slot from 1~ F. If the tag is successfully recognized, it will stay in a dormant state and no longer respond to the instruction from the reader; 189
Step 4. After the recognition, count the idle slots numberc0, the number of successfully recognized slots Cs, the number of collision slots Ck, and calculate the idle rate P0; Step 5. Chech whether the idle rate P0 is smaller than 0.14, and if yes, then go to Step 6; otherwise, go to Step 7. Step 6. Use the Schoute algorithm to estimate the unrecognized tags number N1, and go to Step 8; Step 7. Use the Vogt algorithm to estimate the unrecognized tags number N2, and go to Step 8; Step 8. Dynamically adjust the slots number F in the next frame according to the estimated tags number N and Table 1, and go into the next recognition process. To verify the effect of the algorithm, we use MATLAB to simulate the recognition process of the tags. Assuming that the tags are uniformly distributed, and then the probability of the data being sent out in slot 0~F is the same without considering the noise jamming, the error rate of channel bit, the cost of redundancy check and the controlling cost. We selected 16 initial slots and performed a simulation calculation of 0~200 tags. The relations between the throughput and the tags number in the improved DFSA algorithm, Schoute DFSA algorithm and Vogt DFSA algorithm are shown in Figure 9. Figure 9. The relations between the throughput rate of the three algorithms and tags numbers. It can be seen from Figure 9 that, for the Schoute algorithm, when the number of tags is small, it has greater throughput rate. When the tags number is far larger than that in the initial frame length, there is a sharp decline in the throughput rate, and it s even lower than 10%; for the Vogt algorithm, when the number of tags is large, the throughput rate is higher than that of Schoute algorithm. But when the number of tags is small, the throughput rate is low; for the improved DFSA algorithm, it has a relatively stable throughput rate and it is barely influenced by the number of tags, and the throughput rate can be maintained at 30% ~ 40%. Therefore, the improved DFSA algorithm is more applicable to solve the problem of tags collision in the Internet of Vehicle system. 4 CONCLUSION This article researched the problem of anti-collision in the Internet-of-Vehicles and made simulation analysis on the existed ALOHA anti-collision algorithm. With comparison, we chose the DFSA algorithm to solve the problem of anti-collision. Finally, combined with the characteristics of traffic capture in the Internet-of-Vehicle system, we proposed an improved DFSA algorithm to solved the problems of anti-collision tags on the basis of the original dynamic frame-slot-aloha (DFSA) algorithm and used MATLAB software to simulate the acquisition process, and it s verified that the improved DFSA algorithm is a better solution for the tags anti-collision problem in the Internet of Vehicles system. 5 REFERENCES [1] Zhang, W.W & Xi, X.Q. 2016. The innovation and development of Internet of Vehicles. China Inst Communications, 13(5): 122-127. [2] Want R. 2006. An introduction to RFID technology. IEEE Pervasive Computing, 5(1): 25-33. [3] Ding, Z.G, Guo L, Zhu, X.Y & Wang Z.H. 2009. An adaptive anti-collision algorithm based on binary-tree disassembly. Journal of Electronics & Information Technology, 31(6): 1395-1398. [4] Zhu L. & T. S.P. Yum. 2011. A critical survey and analysis of RFID anti-collision mechanisms. IEEE Communications magazine, 49(5): 214-21. [5] Xu Y. & Chen Y. 2015. An improved dynamic framed slotted ALOHA anti-collision algorithm based on estimation method for RFID systems. IEEE International Conference on Rfid. [6] Lee S.R, Joo S.D & Lee C.W. 2005. An enhanced dynamic framed slotted ALOHA algorithm for RFID tag identification. Proceedings of the 2nd Annual International Conference on Mobile and Ubiquitous Systems: Networking and Services, pp: 72-166. [7] Chen W.T. 2009. An accurate tag estimate method for improving the performance of an RFID anticollision algorithm based on dynamic frame length Aloha. IEEE Trans. Automation Sci. and Eng, 6(1): 9-15. [8] Schoute F.C. 1983. Dynamic frame length ALOHA. IEEE Transp. Commun, 31(4): 68-565. [9] Vogt H. 2002. Efficient object identification with passive RFID tags. Pervasive Computing, pp: 98-113. [10] Lin C.F & Lin F.Y.S. 2010. Efficient estimation and collision-group-based anticollision algorithms for dynamic frame-slotted ALOHA in RFID networks. IEEE Trans. Automation Sci. and Eng, 7(4): 48-840. 190