# An Advanced Dynamic Framed-Slotted ALOHA Algorithm Based on Bayesian Estimation and Probability Response

Authors: Chaowei Wang; Menglong Li; Juyi Qiao; Weidong Wang; Xiuhua Li
Journal: International Journal of Antennas and Propagation
 (2013)

---

## Abstract

This paper proposes an advanced dynamic framed-slotted ALOHA algorithm based on Bayesian estimation and probability response (BE-PDFSA) to improve the performance of radio frequency identification (RFID) system. The Bayesian estimation is introduced to improve the accuracy of the estimation algorithm for lacking a large number of observations in one query. The probability response is used to adjust responsive probability of the unrecognized tags to make the responsive tag number equal to the frame length. In this way, we can solve the problem of high collision rate with the increase of tag number and improve the throughput of the whole system. From the simulation results, we can see that the algorithm we proposed can greatly improve the stability of RFID system compared with DFSA and other commonly used algorithms.


---

## Body

## 1. Introduction

In recent years, radio frequency identification (RFID) technology has been widely used in projects on internet of things (IOT) around the world. People try to use RFID technology to improve the efficiency of the processes in the supply chain. According to the market research analyst IDTechEx (Das, 2005), the cumulative sales of RFID tags for the 60 years up to the beginning of 2006 reached 2.4 billion, with 600 million tags being sold in 2005 alone [1]. With the exponential growth of needs for RF tags, more of them would be needed in a range of areas, such as retailing, logistics, animals and farming, library services, and military equipment [2].A RFID system consists of readers and tags. Each tag has a unique ID, and a reader has its own operational range. When a tag comes into the identification scope of the reader, it will send its ID combined with other information such as manufacturer and product type to the reader. Besides, it can even measure environmental factors such as temperature which can bring a lot of convenience to the related industries [3]. However, as the number of tags grows in one place, more and more tags will communicate with the reader at the same time and interfere with each other. As a result, the reader will not get the correct information from each tag. This is called the tag collision, and it along with the reader collision constitutes the collision problem of RFID system which is demonstrated in Figure 1.Figure 1
Tag collision problem.To solve the tag collision problem, lots of related researches have been carried out, and many algorithms have been proposed. The most widely used anticollision algorithms are ALOHA method and Binary Search method [4]. ALOHA algorithm is based on the thought of ALOHA [5] and combined with the characteristics of RFID system. Its core idea is to separate the response time of tags and to make them respond in different time slots in order to avoid collision. Once the collision occurs, the related tags take time-backoff mechanism and wait for next round to respond [6]. However, the channel utilization of this algorithm is not as high as people expect. Its throughput is only 18.4%. Therefore, framed-slotted ALOHA (FSA) was proposed on the basic of ALOHA algorithm. Frame is a kind of time length, and it is divided into several slots. Tags randomly pick one slot to respond, and it can only respond at the beginning of the slot [7]. If two or more tags select the same slot, the collision would happen. Then they all quit this round and wait for the next frame. By computing, FSA can improve theoretical maximum throughput up to 36.8%. But it is still not very ideal in the case of heavy load conditions.Dynamic framed-slotted ALOHA (DFSA) is an advanced FSA. This algorithm can adjust the   size of frame (the number of slots in one frame) dynamically according to the estimation of the tags [8]. As we know, the throughput of the system can reach the maximum when the number of tags is equal to the frame length [9]. So it is really important to find an estimation algorithm of high accuracy. At present, the primary estimation algorithms are minimum tag number estimation algorithm [10], Jae-Ryong Cha algorithm [11], and Harald Vogt algorithm [12]. Although these estimation algorithms play an important role in the way of improving the efficiency of DFSA, they still have two obvious problems. The first one is that it is hard to guarantee the reliability of the algorithm. Currently, the primary estimation algorithms are all traditional statistical methods. Their accuracy is on the basis of a large number of observations. However, in a real RFID system, the reader needs to estimate the number of tags immediately according to the observations in one frame. It is impossible to inquire the tags again and again to get numerous data. As a result, there would be a large error between the actual value and the estimated value. The second problem is the “landslide problem” on identification rate of the tags. When the number of tags is far more than the maximum of frame length (256) [13], the throughput of the system would decline rapidly. We call this phenomenon “landslide problem”. To improve the reliability of the whole algorithm, we proposed an advanced estimation algorithm based on the Bayesian estimation and probability response. The advanced algorithm can use a small amount of observations getting a relatively accurate estimation of the tag number. In the case of large tag number, the tags can modify their responsive probability dynamically to make the calculated number of the responsive tags equal to the frame length. In this way, we can improve the throughput of the whole system and solve the two problems mentioned above to a great extent.The remainder of the paper is organized as follows: in Section2, a brief description of Bayesian estimation is presented. In Section 3, firstly, the general steps to estimate the tag number are introduced, and then an improved ALOHA algorithm is proposed on two sides (the estimation algorithm based on Bayesian estimation and the mechanism of probability response proposed to further improve the performance of the algorithm). In Section 4, the proposed algorithm is compared with DFSA on several aspects and finally some conclusions are drawn in Section 5.


## 2. The Bayesian Estimation

Bayesian method is a series of theories proposed by British scholar Bayesian in statistics for inductive inference. With the development for centuries, the theory is widely used in different areas for mathematical analysis. Its basic idea can be expressed as the following example. Assume thatA1,A2,…,An are incompatible events and they are of an event set. Their prior probability is given as {P[Ai],i=1,2,…,n} (prior distribution). After the event B happens, we can reassess the probability of A1,A2,…,An by the following equation:
(1)p(Ai∣B)=p(B∣Ai)p(Ai)p(B)=p(B∣Ai)p(Ai)∑ip(B∣Ai)p(Ai).From (1), we can see that Bayesian formula takes both prior information and new information from the test into account which reflects the transformation from prior distribution to posterior distribution. Therefore, compared with those algorithms that only consider a part of information, Bayesian estimation can make our estimation more accurate in the case without a large amount of statistical data.The most important issue in Bayesian estimation is how to determine the prior distribution. Many Bayesian scholars have proposed several different methods, but they still have not found a general way for all the cases.  For tag collision problem, as the probability of the tags to select time slots is constant and it is only decided by the size of frame, we can calculate prior probability of different cases in advance. So we can use taking Bayesian estimation into our tag number estimation algorithm without a large number of calculations to get prior distribution and can obtain a relatively accurate result.Assume that distribution density of populationX is p(x,θ),θ∈Θ. Because θis a random variable and prior distribution of θ is already known, p(x,θ) needs to be changed as p(x∣θ). If X=(X1,…,Xn)T is the sample selected from population X and the sample value is x=(x1,…,xn)T, the joint probability density of sample X is
(2)q(x1,…,xn∣θ)=∏i=1np(xi∣θ).
So, the joint probability density of sample X and θ is
(3)f(x,θ)=q(x∣θ)π(θ)=m(x)h(θ∣x).Then, we can get(4)m(x)=∑Θq(x1…,xn∣θ)π(θ).We callh(θ∣x) the posterior distribution of θ when sample X=x. In (4), m(x) is the boundary distribution of (X,θ) about sample X. If θ is the continuous random variable, then we can get
(5)m(x)=∫Θq(x1,…,xn∣θ)π(θ)dθ.


## 3. The Advanced DFSA Based on Bayesian Estimation and Probability Response

### 3.1. General Steps to Estimate Tag Number and Frame Length

In DFSA, suppose that the number of slots in one frame isL, the number of tags is n, and each tag has the same probability to select each slot in one frame (p=1/L). According to the statistical principles, the probability that r tags select the same slot can be expressed as
(6)Bn,1/L(r)=(nr)(1L)r(1-1L)n-r.After one frame, the mathematical expectation of successful identification slot (r=1, only one tag selects the slot), empty slot (r=0, no tag selects the slot), and collision slot (r≥2, more than one tag select the slot) can be expressed as:
(7)a1L,n=L×Bn,1/L(1)=n(1-1L)n-1,a0L,n=L×Bn,1/L(0)=L(1-1L)n,akL,n=L-a0L,n-a1L,n.Therefore, if we know the frame length and tag number, we can calculate the number of slots in different statuses. In turn, if we can get the result[a0,a1,ak] inquired by the reader after one frame, the tag number can be estimated by (7). So, the efficiency of the system is
(8)S=a1L,nL=nL(1-1L)n-1.To get the maximum ofS, we take derivation of (8):
(9)dSdn=1L(1-1L)n-1+nL(1-1L)n-1ln(1-1L)=1L(1-1L)n-1[1+nln(1-1L)]=0,L=11-e1/n.Whenn is large enough, we can get:
(10)L≈1+1/n1+1/n-1=n+1So, on one side, when the size of frame is approximately equal to the tag number, the throughput of the system will reach its maximum. On the other side, considering the size of frame can only beL=2i,i=1,2,…8, we should set L closest to our estimated value to get the maximum of throughput.


### 3.2. The Advanced Estimation Algorithm Based on Bayesian Estimation

The advantage of the Bayesian estimation is that it can get a relatively accurate statistical result without a large number of observations. As we cannot get much data from one query in the process of tag number estimation, the accuracy of estimation result always has large errors. So we bring the Bayesian estimation into our estimation algorithm. The results from the simulation show that our advanced algorithm can improve the performance of the system to a great extent. The details of the algorithm will be introduced in the following paragraphs.In DFSA, the tag number has some randomness. So the tag number can be regarded as a random variable instead of an uncertain constant. That is to say, the tag number meets the requirements of random variables, and it is a discrete random variable.Suppose the tag number isn  and the initial length of the frame is L. When the read cycle begins, tags start to select slot from the frame. This process obeys binomial distribution of  B(n,1/L). So the probability of one slot in a frame to be an empty slot, readable slot, or collision slot is
(11)pe=(1-1L)n,ps=nL(1-1L)n-1,pc=1-(1-1L)n-nL(1-1L)n-1.In the definition process,p(n) is the priori probability density of tag number to be estimated, and n is from the sample set which is the observations of the number of slots in different statuses. We use J={j(0),j(1),…,j(M)} to express the sample set. j(m)=〈je,js,jc〉 is the observations of the number of empty slots, readable slots, and collision slots after the initial frame length of the system. The sample value space is Ed, and the value space of tag number to be estimated is Θ. λ(n~,n) is the loss function when n~ is the estimation of n. In the RFID system, we take λ(n~,n)=(n~-n)2.Then, the total expected risk is(12)R=∑Ed∑Θλ(n~,n)p(n∣j)p(j).We are definite that the conditional risk under the samplej is
(13)R(n~∣j)=∑Θλ(n~,n)p(n|j).ForR(n~∣j)≥0, the minimal R(n~∣j) is the minimum of R according to Bayesian decision. That is to say,
(14)n*=argminR(n~∣j).
The way to get the minimum of  R(n~∣j) is derived as follows:
(15)R(n~∣j)=∑Θλ(n~,n)p(n∣j)=∑Θ(n~-n)2p(n∣j)=∑Θ[n~-E(n∣j)+E(n∣j)-n]2p(n∣j)=∑Θ[n~-E(n∣j)]2p(n∣j)+∑Θ[E(n∣j)-n]2p(n∣j)+2∑Θ[E(n∣j)-n][n~-E(n∣j)]p(n∣j).
In (15),
(16)E(n∣j)=∑Θnp(n∣j).
So,
(17)2∑Θ[E(n∣j)-n][n~-E(n∣j)]p(n∣j)=2∑Θ[E(n∣j)-n]p(n∣j)[n~-E(n∣j)]=[E(n∣j)-E(n∣j)][n~-E(n∣j)]=0.
Then,
(18)R(n~∣j)=∑Θλ(n~,n)p(n∣j)=∑Θ[n~-E(n∣j)]2p(n∣j)+∑Θ[E(n∣j)-n]2p(n∣j).
Because ∑Θ[E(n∣j)-n]2p(n∣j) has nothing to do with n~, the minimum of R(n~∣j) is only decided by ∑Θ[n~-E(n∣j)]2p(n∣j). Only when n~=E(n∣j), ∑Θ[n~-E(n∣j)]2p(n∣j)=0, and we can get the minimum of R(n~∣j). Therefore, the optimal estimation is
(19)n*=∑Θnp(n∣j).The conditional probability under the observation ofj(m)=〈je,js,jc〉 [14] is
(20)p(n∣j)=CLjepeje·CL-jejspsjs·CL-je-jsjcpcjc=L!(L-je)!je!·(L-je)!(L-je-js)!js!·(L-je-js)!(L-je-js-jc)!jc!pejepsjspcjc=L!je!js!jc!(1-1L)n·je(nL)js(1-1L)(n-1)·js·[1-(1-1L)n-nL(1-1L)n-1]jc.Suppose that the value space of tag numbern is n∈[1,N]. After normalization processing of  (20), we can get
(21)p-(n∣j)=(L!/je!js!jc!)pejepsjspcjc∑n=1N(L!/je!js!jc!)pejepsjspcjc.From (19) and (21), the optimal estimation of tag number is
(22)n*=∑n=1Nnp-(n∣j)=∑n=1N(n·(L!/je!js!jc!)pejepsjspcjc∑n=1N(L!/je!js!jc!)pejepsjspcjc).


### 3.3. The Mechanism of Probability Response

The advanced DFSA based on Bayesian estimation and probability response (BE-PDFSA) can effectively solve the general problem in process of tag identification. By importing the Bayesian estimation, we can estimate the tag number accurately. On the basis of accurate estimation, we can adjust the frame length rationally according to (10). However, the frame length can only be selected from {2,4,8,16,32,64,128,256} because of the limitation of the reader. So we bring in the mechanism of probability response to change the responsive probability of the tags dynamically according to the estimated tag number and frame length which can be selected.What is more, in the case of large tag number, the throughput of the system would drop rapidly with the increase of tag number which is called the “landslide problem”. The mechanism of probability response can also solve this problem by adjusting the responsive probability of the tags dynamically.The specific process can be described as follows.Since we have defined the estimated tag number asn*, therefore the number of unrecognized tags is denoted as n# in the rest of paper, which can be calculated by n#=n*-js. If the frame length which is closest to n# is di, we set the responsive probability of the unrecognized tags to be di/n#. If di≥n#, the responsive probability will be higher than 1 which means the number of slots is more than the tag number. In this case, the collision rate will not be so high. However, the responsive probability can only be no higher than 1, so we set the responsive probability to be 1 which means all the tags will respond in this frame. If di<n#, the tag number will be more than the number of slots in one frame. The collision rate will increase with the increase of the tag number. By importing the mechanism of probability response, the number of responsive tags will be di in theory instead of n#, and the throughput of the system will be increased. In the case of large tag number, the inequality will change to di≪n#. The max frame length of the reader is 256 (dmax), and the collision rate will increase rapidly. However, the mechanism of probability response can effectively solve the “landslide problem” by decreasing the number of responsive tags to the frame length. The tags which are not selected will wait for the next frame and repeat the upper process.


### 3.4. Working Process of the Whole Algorithm

By importing the Bayesian estimation and the mechanism of probability response, BE-PDFSA can improve the performance of the whole system significantly. Bayesian estimation is mainly used in the process of tag estimation to get an accurate estimation of the tag number. The mechanism of probability response is used in the process of response to further reduce the collision rate of the system especially in the case of large tag number. In this way, we can try our best to make the number of tags to respond in one frame equal to the frame length we select in order to maximize the throughput of the whole system and minimize the collision rate. In order to let everyone have a clearer understanding of the whole process, the proposed algorithm procedure can be divided into the following four steps.Step 1.
Setting the initial frame lengthL and sending the request command to tags asking for their information.Step 2.
All the tags randomly select one slot to respond and finish the identification of one frame.Step 3.
Count the result of this frame(je,js,jc) and use the result to estimate the tag number (n*) through our estimation algorithm.Step 4.
Calculate the number of unrecognized tagsn# (n#=n*-js). Select the value of frame length di from {2,4,8,16,32,64,128,256} which is the closest to the unrecognized tag number n# and adjust the responsive probability of the tags to be di/n#. Then, turn to Step 2.If the query result from the reader is〈je=di,js=0,jc=0〉 for continuously three times, the algorithm will judge that all the tags are recognized and quit the cycle.We can see it more clearly from Figure2.Figure 2
Process of the whole algorithm.


## 3.1. General Steps to Estimate Tag Number and Frame Length

In DFSA, suppose that the number of slots in one frame isL, the number of tags is n, and each tag has the same probability to select each slot in one frame (p=1/L). According to the statistical principles, the probability that r tags select the same slot can be expressed as
(6)Bn,1/L(r)=(nr)(1L)r(1-1L)n-r.After one frame, the mathematical expectation of successful identification slot (r=1, only one tag selects the slot), empty slot (r=0, no tag selects the slot), and collision slot (r≥2, more than one tag select the slot) can be expressed as:
(7)a1L,n=L×Bn,1/L(1)=n(1-1L)n-1,a0L,n=L×Bn,1/L(0)=L(1-1L)n,akL,n=L-a0L,n-a1L,n.Therefore, if we know the frame length and tag number, we can calculate the number of slots in different statuses. In turn, if we can get the result[a0,a1,ak] inquired by the reader after one frame, the tag number can be estimated by (7). So, the efficiency of the system is
(8)S=a1L,nL=nL(1-1L)n-1.To get the maximum ofS, we take derivation of (8):
(9)dSdn=1L(1-1L)n-1+nL(1-1L)n-1ln(1-1L)=1L(1-1L)n-1[1+nln(1-1L)]=0,L=11-e1/n.Whenn is large enough, we can get:
(10)L≈1+1/n1+1/n-1=n+1So, on one side, when the size of frame is approximately equal to the tag number, the throughput of the system will reach its maximum. On the other side, considering the size of frame can only beL=2i,i=1,2,…8, we should set L closest to our estimated value to get the maximum of throughput.


## 3.2. The Advanced Estimation Algorithm Based on Bayesian Estimation

The advantage of the Bayesian estimation is that it can get a relatively accurate statistical result without a large number of observations. As we cannot get much data from one query in the process of tag number estimation, the accuracy of estimation result always has large errors. So we bring the Bayesian estimation into our estimation algorithm. The results from the simulation show that our advanced algorithm can improve the performance of the system to a great extent. The details of the algorithm will be introduced in the following paragraphs.In DFSA, the tag number has some randomness. So the tag number can be regarded as a random variable instead of an uncertain constant. That is to say, the tag number meets the requirements of random variables, and it is a discrete random variable.Suppose the tag number isn  and the initial length of the frame is L. When the read cycle begins, tags start to select slot from the frame. This process obeys binomial distribution of  B(n,1/L). So the probability of one slot in a frame to be an empty slot, readable slot, or collision slot is
(11)pe=(1-1L)n,ps=nL(1-1L)n-1,pc=1-(1-1L)n-nL(1-1L)n-1.In the definition process,p(n) is the priori probability density of tag number to be estimated, and n is from the sample set which is the observations of the number of slots in different statuses. We use J={j(0),j(1),…,j(M)} to express the sample set. j(m)=〈je,js,jc〉 is the observations of the number of empty slots, readable slots, and collision slots after the initial frame length of the system. The sample value space is Ed, and the value space of tag number to be estimated is Θ. λ(n~,n) is the loss function when n~ is the estimation of n. In the RFID system, we take λ(n~,n)=(n~-n)2.Then, the total expected risk is(12)R=∑Ed∑Θλ(n~,n)p(n∣j)p(j).We are definite that the conditional risk under the samplej is
(13)R(n~∣j)=∑Θλ(n~,n)p(n|j).ForR(n~∣j)≥0, the minimal R(n~∣j) is the minimum of R according to Bayesian decision. That is to say,
(14)n*=argminR(n~∣j).
The way to get the minimum of  R(n~∣j) is derived as follows:
(15)R(n~∣j)=∑Θλ(n~,n)p(n∣j)=∑Θ(n~-n)2p(n∣j)=∑Θ[n~-E(n∣j)+E(n∣j)-n]2p(n∣j)=∑Θ[n~-E(n∣j)]2p(n∣j)+∑Θ[E(n∣j)-n]2p(n∣j)+2∑Θ[E(n∣j)-n][n~-E(n∣j)]p(n∣j).
In (15),
(16)E(n∣j)=∑Θnp(n∣j).
So,
(17)2∑Θ[E(n∣j)-n][n~-E(n∣j)]p(n∣j)=2∑Θ[E(n∣j)-n]p(n∣j)[n~-E(n∣j)]=[E(n∣j)-E(n∣j)][n~-E(n∣j)]=0.
Then,
(18)R(n~∣j)=∑Θλ(n~,n)p(n∣j)=∑Θ[n~-E(n∣j)]2p(n∣j)+∑Θ[E(n∣j)-n]2p(n∣j).
Because ∑Θ[E(n∣j)-n]2p(n∣j) has nothing to do with n~, the minimum of R(n~∣j) is only decided by ∑Θ[n~-E(n∣j)]2p(n∣j). Only when n~=E(n∣j), ∑Θ[n~-E(n∣j)]2p(n∣j)=0, and we can get the minimum of R(n~∣j). Therefore, the optimal estimation is
(19)n*=∑Θnp(n∣j).The conditional probability under the observation ofj(m)=〈je,js,jc〉 [14] is
(20)p(n∣j)=CLjepeje·CL-jejspsjs·CL-je-jsjcpcjc=L!(L-je)!je!·(L-je)!(L-je-js)!js!·(L-je-js)!(L-je-js-jc)!jc!pejepsjspcjc=L!je!js!jc!(1-1L)n·je(nL)js(1-1L)(n-1)·js·[1-(1-1L)n-nL(1-1L)n-1]jc.Suppose that the value space of tag numbern is n∈[1,N]. After normalization processing of  (20), we can get
(21)p-(n∣j)=(L!/je!js!jc!)pejepsjspcjc∑n=1N(L!/je!js!jc!)pejepsjspcjc.From (19) and (21), the optimal estimation of tag number is
(22)n*=∑n=1Nnp-(n∣j)=∑n=1N(n·(L!/je!js!jc!)pejepsjspcjc∑n=1N(L!/je!js!jc!)pejepsjspcjc).


## 3.3. The Mechanism of Probability Response

The advanced DFSA based on Bayesian estimation and probability response (BE-PDFSA) can effectively solve the general problem in process of tag identification. By importing the Bayesian estimation, we can estimate the tag number accurately. On the basis of accurate estimation, we can adjust the frame length rationally according to (10). However, the frame length can only be selected from {2,4,8,16,32,64,128,256} because of the limitation of the reader. So we bring in the mechanism of probability response to change the responsive probability of the tags dynamically according to the estimated tag number and frame length which can be selected.What is more, in the case of large tag number, the throughput of the system would drop rapidly with the increase of tag number which is called the “landslide problem”. The mechanism of probability response can also solve this problem by adjusting the responsive probability of the tags dynamically.The specific process can be described as follows.Since we have defined the estimated tag number asn*, therefore the number of unrecognized tags is denoted as n# in the rest of paper, which can be calculated by n#=n*-js. If the frame length which is closest to n# is di, we set the responsive probability of the unrecognized tags to be di/n#. If di≥n#, the responsive probability will be higher than 1 which means the number of slots is more than the tag number. In this case, the collision rate will not be so high. However, the responsive probability can only be no higher than 1, so we set the responsive probability to be 1 which means all the tags will respond in this frame. If di<n#, the tag number will be more than the number of slots in one frame. The collision rate will increase with the increase of the tag number. By importing the mechanism of probability response, the number of responsive tags will be di in theory instead of n#, and the throughput of the system will be increased. In the case of large tag number, the inequality will change to di≪n#. The max frame length of the reader is 256 (dmax), and the collision rate will increase rapidly. However, the mechanism of probability response can effectively solve the “landslide problem” by decreasing the number of responsive tags to the frame length. The tags which are not selected will wait for the next frame and repeat the upper process.


## 3.4. Working Process of the Whole Algorithm

By importing the Bayesian estimation and the mechanism of probability response, BE-PDFSA can improve the performance of the whole system significantly. Bayesian estimation is mainly used in the process of tag estimation to get an accurate estimation of the tag number. The mechanism of probability response is used in the process of response to further reduce the collision rate of the system especially in the case of large tag number. In this way, we can try our best to make the number of tags to respond in one frame equal to the frame length we select in order to maximize the throughput of the whole system and minimize the collision rate. In order to let everyone have a clearer understanding of the whole process, the proposed algorithm procedure can be divided into the following four steps.Step 1.
Setting the initial frame lengthL and sending the request command to tags asking for their information.Step 2.
All the tags randomly select one slot to respond and finish the identification of one frame.Step 3.
Count the result of this frame(je,js,jc) and use the result to estimate the tag number (n*) through our estimation algorithm.Step 4.
Calculate the number of unrecognized tagsn# (n#=n*-js). Select the value of frame length di from {2,4,8,16,32,64,128,256} which is the closest to the unrecognized tag number n# and adjust the responsive probability of the tags to be di/n#. Then, turn to Step 2.If the query result from the reader is〈je=di,js=0,jc=0〉 for continuously three times, the algorithm will judge that all the tags are recognized and quit the cycle.We can see it more clearly from Figure2.Figure 2
Process of the whole algorithm.


## 4. Simulation Results and Analysis

### 4.1. Settings of the Simulation Scene

In RFID system, the aim of using anticollision algorithm is to improve the recognition rate of the tags, to reduce resource consumption, and most importantly to improve the efficiency of the whole system. For the key steps of DFSA, the accuracy of the estimation algorithm is the most important. Here, we introduce error rate to measure the performance of the algorithm. Suppose the tag number isn and the estimated tag number is n*, then the error rate can be expressed as
(23)e=|n*-n|n.After the tag estimation process, the algorithm adjusts the responsive probability of the unrecognized tags and the frame length based on the estimated tag number. For the whole system, the resource consumption and the throughput of the system are important parameters. So in the simulation, the total number of slots used in the system is defined as the resource consumption, and the throughput of the system has been given as in (8).In addition, the slot collision rate and slot idle rate also reflect the degree of the utilization of system resources. Suppose that the value space of tag number in the communication range of the reader isn∈[1,1000], the max frame length of the reader is 256, and the value space of optional frame length is A={Ni,Ni=2i}(i≤8).Because we still use the dynamic framed-slotted ALOHA algorithm (DFSA) in the main identification procedure of the system, DFSA adjusts the frame length of the next frame dynamically based on the current collision rate, idle rate, and the successful identification rate of the slot. The relevant configurations of the simulation is same as that in [15].The specific settings of the simulation parameters are given in Table1.Table 1
Settings of the simulation parameters.
Parameters
Tag anticollision algorithm
Reader number
1
Tag number
1–1000
Data transmission rate (Kb/s)
100
Data channel frequency (MHz)
915
Initial frame length
L
ini
=
{
16,32,64,128
}
Number of slots occupied for identification
1
Frame length doubled threshold
Collision rateps∈[0.5,1]
Frame length half threshold
Collision rateps∈[0,0.5] & idle rate pi∈[0.5,1]
Frame length hold threshold
Collision rateps∈[0,0.5] & idle rate pi∈[0,0.5]
Antenna polarity
Omni


### 4.2. Simulation Results and Analysis

The algorithm can be divided into two parts: tag number estimation and tag identification. So we also compare the algorithm in two sides. We will compare the algorithm we proposed with the minimum tag number estimation algorithm and Jae-Ryong Cha algorithm on the side of error rate. For the tag identification algorithm, we will compare Bayesian estimation probability DFSA (BE-PDFSA) with DFSA algorithm in resource consumption, system throughput, system collision rate, and system idle rate.From Figure3, we can see that with the same initial frame length, the performance of Minimum tag number estimation is the worst, considering the least factors. When the tag number reaches 1000, its error rate is nearly 70%. However, the performance of BE-PDFSA is far better than other algorithms. Especially when the frame length is longer than 128, the error rate of the other two algorithms gradually increases with the increase of tag number, and its value is basically higher than 0.3. On the contrary, the Bayesian estimation algorithm is relatively stable, and its error rate stays around 0.1 mostly. So the estimation algorithm we proposed shows the characteristic of high robustness.Figure 3
Comparison of error rate for algorithms.From Figure4, we can see that as the tag number increases, the total source consumption of DFSA and BE-PDFSA all has the upward trend. However, the source consumption of BE-PDFSA is less than that of DFSA, and there will be a growing gap in consumption between the two algorithms with the increase of tag number. When the tag number reaches 1000, the source consumption of BE-PDFSA is about 1/7 of DFSA. According to (10), in the view of source consumption, the performance of BE-PDFSA is far better than DFSA especially in the case of large tag number.Figure 4
Comparison of total source consumption in identification process.In Figure5, the trend of throughput of the two algorithms is almost the same. The throughput of BE-PDFSA reaches a maximum when the tag number is about 100. The number of tags when DFSA reaches its maximum is about 200, but it is still less than that of BE-PDFSA. After reaching the maximum, the throughput of DFSA decreases sharply, though our algorithm decreases relatively slowly and becomes stable. When the tag number is 1000, the throughput of BE-PDFSA can stay around 0.25 which is much larger than that of DFSA. We can see the stability and reliability of our algorithm.Figure 5
Comparison of throughput for algorithms.Figure6 shows the comparison of probability of failure in identification process. Figure 6(a) is the comparison of collision rate for BE-PDFSA and DFSA. With the increase of tag number, the collision rate of DFSA grows nearly in linear. However, BE-PDFSA shows a better performance. Although its collision rate also increases with the increase of tag number, the slope of the curve is smaller than that of DFSA, and the curve becomes stable in the end. That is because with the increase of tag number, more and more tags will respond to the reader at the same time which will cause the increase in collision rate. After using the Bayesian estimation and probability response, the number of tags to respond and the number of slots are as close as they can which slows down the increase of collision rate. On the other side, from Figure 6(b), BE-PDFSA also shows better performance in idle rate. So combined with Figure 6(a), we can see our algorithm improving the stability of DFSA after importing Bayesian estimation and probability response.(a) Comparison of collision rate for algorithms in identification process. (b) Comparison of idle rate for algorithms in identification process.
(a)
(b)


## 4.1. Settings of the Simulation Scene

In RFID system, the aim of using anticollision algorithm is to improve the recognition rate of the tags, to reduce resource consumption, and most importantly to improve the efficiency of the whole system. For the key steps of DFSA, the accuracy of the estimation algorithm is the most important. Here, we introduce error rate to measure the performance of the algorithm. Suppose the tag number isn and the estimated tag number is n*, then the error rate can be expressed as
(23)e=|n*-n|n.After the tag estimation process, the algorithm adjusts the responsive probability of the unrecognized tags and the frame length based on the estimated tag number. For the whole system, the resource consumption and the throughput of the system are important parameters. So in the simulation, the total number of slots used in the system is defined as the resource consumption, and the throughput of the system has been given as in (8).In addition, the slot collision rate and slot idle rate also reflect the degree of the utilization of system resources. Suppose that the value space of tag number in the communication range of the reader isn∈[1,1000], the max frame length of the reader is 256, and the value space of optional frame length is A={Ni,Ni=2i}(i≤8).Because we still use the dynamic framed-slotted ALOHA algorithm (DFSA) in the main identification procedure of the system, DFSA adjusts the frame length of the next frame dynamically based on the current collision rate, idle rate, and the successful identification rate of the slot. The relevant configurations of the simulation is same as that in [15].The specific settings of the simulation parameters are given in Table1.Table 1
Settings of the simulation parameters.
Parameters
Tag anticollision algorithm
Reader number
1
Tag number
1–1000
Data transmission rate (Kb/s)
100
Data channel frequency (MHz)
915
Initial frame length
L
ini
=
{
16,32,64,128
}
Number of slots occupied for identification
1
Frame length doubled threshold
Collision rateps∈[0.5,1]
Frame length half threshold
Collision rateps∈[0,0.5] & idle rate pi∈[0.5,1]
Frame length hold threshold
Collision rateps∈[0,0.5] & idle rate pi∈[0,0.5]
Antenna polarity
Omni


## 4.2. Simulation Results and Analysis

The algorithm can be divided into two parts: tag number estimation and tag identification. So we also compare the algorithm in two sides. We will compare the algorithm we proposed with the minimum tag number estimation algorithm and Jae-Ryong Cha algorithm on the side of error rate. For the tag identification algorithm, we will compare Bayesian estimation probability DFSA (BE-PDFSA) with DFSA algorithm in resource consumption, system throughput, system collision rate, and system idle rate.From Figure3, we can see that with the same initial frame length, the performance of Minimum tag number estimation is the worst, considering the least factors. When the tag number reaches 1000, its error rate is nearly 70%. However, the performance of BE-PDFSA is far better than other algorithms. Especially when the frame length is longer than 128, the error rate of the other two algorithms gradually increases with the increase of tag number, and its value is basically higher than 0.3. On the contrary, the Bayesian estimation algorithm is relatively stable, and its error rate stays around 0.1 mostly. So the estimation algorithm we proposed shows the characteristic of high robustness.Figure 3
Comparison of error rate for algorithms.From Figure4, we can see that as the tag number increases, the total source consumption of DFSA and BE-PDFSA all has the upward trend. However, the source consumption of BE-PDFSA is less than that of DFSA, and there will be a growing gap in consumption between the two algorithms with the increase of tag number. When the tag number reaches 1000, the source consumption of BE-PDFSA is about 1/7 of DFSA. According to (10), in the view of source consumption, the performance of BE-PDFSA is far better than DFSA especially in the case of large tag number.Figure 4
Comparison of total source consumption in identification process.In Figure5, the trend of throughput of the two algorithms is almost the same. The throughput of BE-PDFSA reaches a maximum when the tag number is about 100. The number of tags when DFSA reaches its maximum is about 200, but it is still less than that of BE-PDFSA. After reaching the maximum, the throughput of DFSA decreases sharply, though our algorithm decreases relatively slowly and becomes stable. When the tag number is 1000, the throughput of BE-PDFSA can stay around 0.25 which is much larger than that of DFSA. We can see the stability and reliability of our algorithm.Figure 5
Comparison of throughput for algorithms.Figure6 shows the comparison of probability of failure in identification process. Figure 6(a) is the comparison of collision rate for BE-PDFSA and DFSA. With the increase of tag number, the collision rate of DFSA grows nearly in linear. However, BE-PDFSA shows a better performance. Although its collision rate also increases with the increase of tag number, the slope of the curve is smaller than that of DFSA, and the curve becomes stable in the end. That is because with the increase of tag number, more and more tags will respond to the reader at the same time which will cause the increase in collision rate. After using the Bayesian estimation and probability response, the number of tags to respond and the number of slots are as close as they can which slows down the increase of collision rate. On the other side, from Figure 6(b), BE-PDFSA also shows better performance in idle rate. So combined with Figure 6(a), we can see our algorithm improving the stability of DFSA after importing Bayesian estimation and probability response.(a) Comparison of collision rate for algorithms in identification process. (b) Comparison of idle rate for algorithms in identification process.
(a)
(b)


## 5. Conclusion

In this paper, we propose an improved dynamic framed-slotted ALOHA algorithm based on Bayesian estimation and probability response. The Bayesian estimation can improve the accuracy of estimation algorithm by taking advantage of statistical properties in identification process of tags. The mechanism of probability response can adjust the responsive probability of tags especially when the tag number is larger than the max frame length to reduce collision rate and improve the throughput of the whole system.In general, this algorithm solves the problem that there would be a big error in traditional process of tag estimation because of lacking observations. At the same time, by using the optimal conditions of system throughput, we propose the mechanism of probability response to make the theoretical number of tags to respond be the same as the frame length to improve the efficiency of the system and save the source of the whole system. Finally, the simulation results show the stability of our algorithm and prove the improvement in the performance of the algorithm.



---

*Source: 743468-2013-08-18.xml*