{'fraction_non_alphanumeric': 0.03926762592977177, 'fraction_numerical': 0.01580876899277374, 'mean_word_length': 4.645412130637636, 'pattern_counts': {'":': 0, '<': 1, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Geometric Distribution-Based Readers Scheduling Optimization Algorithm Using Artificial Immune System

In the multiple-reader environment (MRE) of radio frequency identification (RFID) system, multiple readers are often scheduled to interrogate the randomized tags via operating at different time slots or frequency channels to decrease the signal interferences. Based on this, a Geometric Distribution-based Multiple-reader Scheduling Optimization Algorithm using Artificial Immune System (GD-MRSOA-AIS) is proposed to fairly and optimally schedule the readers operating from the viewpoint of resource allocations. GD-MRSOA-AIS is composed of two parts, where a geometric distribution function combined with the fairness consideration is first introduced to generate the feasible scheduling schemes for reader operation. After that, artificial immune system (including immune clone, immune mutation and immune suppression) quickly optimize these feasible ones as the optimal scheduling scheme to ensure that readers are fairly operating with larger effective interrogation range and lower interferences. Compared with the state-of-the-art algorithm, the simulation results indicate that GD-MRSOA-AIS could efficiently schedules the multiple readers operating with a fairer resource allocation scheme, performing in larger effective interrogation range.


Introduction
Radio Frequency Identification (RFID) is one of the Auto Identification and Data Capture (AIDC) techniques, which enable objects to be automatically identified. With the advantages such as automation, no-contract, easy-to-implement and enough-durability, passive RFID is widely applied in various applications such as supply chain management [1], manufacturing management [2] and warehouse management [3] with objects localization [4].
According to most applications, a single reader cannot totally cover a specific area (i.e., in a warehouse, every product has a tag attached to by automatically taking stock). Correspondingly, a classical RFID scenario is usually composed of multiple readers and large quantity of passive tags: the so-called Multiple-reader Environment (MRE). In classical MRE, multiple readers are deployed in different densities with known positions to interrogate the randomized tags with fixed positions under the same RFID system. To dynamically allocate the operating resources (i.e., available time slots and frequency channels) and manage readers, centralized mechanism is usually designed to be executed by a coordinator device (i.e., polling server), which is connected to the readers through a wired or wireless network [5,6]. During this process, signal interference problem degrades the operating performance in efficiency and reliability, which is caused by multiple readers operating at the same time. Correspondingly, the multiple-reader interference avoidance algorithms are proposed to help coordinator device to schedule the readers operating non-simultaneously or simultaneously but at different frequency channels, which could be clustered in two categories: the control-mechanism-based ones and the scheduling-based ones.
Control-mechanism-based algorithms [7][8][9] allow each reader to detect the status of other readers in order to avoid the simultaneous operating. For example, Neighbor Friendly Reader Interference Avoidance Algorithm (NFRIA) utilized readers with two bistatic antennas, where one antenna is for data transmitting and the other one is for continuously receiving to detect if other readers are using the same channel when they are operating. However, NFRIA did not take full advantage of centralized mechanism and, meanwhile, it is based on a hardware assumption that makes it hard to implement in real MRE.
Scheduling-based algorithms transform the multiple-reader interference problem into an optimization problem with respect to the allocation of operating resources (e.g., [10,11]). Based on this, the number of time slots, the number of frequency channels and the position of readers are optimally allocated by using some heuristic algorithms such as genetic algorithm [12], swarm optimization algorithm [13] and artificial immune algorithms [14][15][16][17]. Among these, the artificial immune algorithms output the best performance when compared with other heuristic ones, the advantage of which is mainly embodied in outputting a larger interrogation range. In [14][15][16][17], the author introduced a reader-to-reader avoidance model formulizing from the signal-to-interference-plus-noise (SINR) view, which could perfectly describe the interference process. However, the author did not consider the non-uniformity distribution of multiple readers deployment in MRE, resulting in the unfairness of scheduling schemes since the readers with no interferences are always operating while the ones dramatically affected by interferences are almost never operating. Therefore, part of the interrogation range is actually thriftless and, meanwhile, the interfering readers are not effectively scheduled to operate as well.
In the view of scheduling-based mechanism, a Geometric Distribution-based Multiple-reader Scheduling Optimization Algorithm using Artificial Immune System (GD-MRSOA-AIS) is proposed as a resource allocation algorithm to fairly schedule the readers operating with low interferences and large effective interrogation ranges in centralized MRE. GD-MRSOA-AIS first produces several fair feasible scheduling schemes using geometric probability distribution to allocate the operating time slot and frequency channel, which could minimize the collisions among the readers contending for operating resources and therefore maximize the probability that one reader successfully gains the opportunity to operate. To optimize these feasible scheduling schemes with the objective of maximizing the total effective interrogation range, the artificial immune system optimization with immune clone, immune mutation and immune suppression is further introduced. During the mutation process in artificial immune system optimization, there are two alternative mutation operators for different cloned antibodies, where the single-bit mutation is suitable for the superior ones and the region-bits mutation is appropriate for the regular ones.
Summarizing, the contributions of this paper are as follows: • By using signal-to-interference-plus-noise (SINR) to explain the reduction in interrogation range, a resource allocation model is constructed with two constraint conditions which are used to decrease the multiple-reader interference. • A geometric probability function is introduced to replace the uniform probability function to produce the feasible scheduling schemes, which ensures that readers could operate in a fair way. • Artificial immune system with clone operator, mutation operator and suppression operator is introduced to optimize the feasible scheduling schemes. In mutation process, both of the single-bit mutation operator and the region-bits mutation operator are imported to deal with the different cloned antibodies to accelerate the optimization process and convergence speed.
The remainder of this paper is organized as follows. In Section 2, the formulized resource allocation model is constructed in the view of signal-to-interference-plus-noise (SINR) to efficiently avoid the multiple-reader interference in MRE. The structure of GD-MRSOA-AIS is introduced in details in Section 3, where a geometric distribution probability is first utilized to generate the feasible scheduling schemes and then an artificial immune system is designed to optimize these feasible scheduling schemes as optimal ones. Simulation results for GD-MRSOA-AIS are provided in Section 4 as well as a series of comparative results between the proposed one and the state-of-the-art algorithm (i.e., LIs [14]). Finally, the conclusions and future works are drawn in Section 5.

General Description with Assumptions
In MRE, each reader transmits electromagnetic wave to create the interrogation range, where the size and shape of interrogation range depends on many factors [5,18] such as the antennas design (radiation pattern, gain, polarization and impedance), tag parameters (e.g., gain, matching features, and IC sensitivity), external factors (ambient conditions and noise) and readers output power suited. In most literatures [5,[14][15][16][17]19], the interrogation range is defined as a perfect circumstance where the radius only depends on the reader's output power. In this paper, we also follow this assumption as UHF RFID readers with known positions and passive RFID tags with fixed positions in centralized MRE: • Readers are randomly distributed over an area in two dimensions. • Any reader has only two states, active and inactive, where only the readers in active operate and interfere with other active ones.

•
The interference power from multiple interfering readers seen by the desired reader is additive.

Multiple-Reader Interference Problem in Centralized MRE
A simple centralized MRE is illustrated as Figure 1 according to the above assumptions, which is composed of one polling server, four readers in the same rated power and two target tags. Suppose that R 1 is the desired reader, R 1 could reach to the red circle as its maximum interrogation radius of r max,1 without any interference. When R 1 attempts to detect the target tag A, if the signal is masked by the interfering reader R 2 and R 3 (the interfering range is represented by the black circle), the effective interrogation range r 1 (blue circle) of R 1 will decrease from r max,1 . If r 1 is smaller than the distance x between R 1 and tag A, R 1 could not detect this target tag A. Moreover, target tag B located in the overlapped range of r 1 and r 3 is hardly detected due to the multiple electromagnetic waves from R 1 and R 3 simultaneously operating.
The maximum interrogation radius r max,i of R i is related to the hardware design [20], which is obtained by Equation (1), where λ i is the wavelength of R i , P min is the minimum power required for the tag to operate, P i is the signal transmission power of R i , M d is the modulation depth, and G T and G R are the gains of the transmit antenna and the receive antenna, respectively.
However, the effective interrogation radius r i of R i is variable as a function of signal interfering. For reader R i interrogating the target tag at a given time slot (i.e., at the kth time slot), R i receives the backscatter signal from the tag and, meanwhile, it is also interfered by other simultaneous operating readers signal among N Reader readers, where a 0-1 function ω j (k) (as Equation (3)) is to indicate if the reader R j is operating at the kth slot or not. To ensure that R i could successfully detect the target tag in distance of x, Signal-to-Interference-Plus-Noise ratio (SINR) [21] has to exceed the minimum one of SINR min as Equation (2) where No i represents the noise power of R i , BP i (x) represents backscatter signal power from the target tag as a function of the distance x between the desired reader and the target tag, I j (d j,i ) represents the interference from any other R j as a function of the relative distance d i,j (as Equation (6)) between the desired reader R i and the other interfering reader R j . The function [19] of BP i (x) and I j (d j,i ) are defined as Equations (4) and (5), respectively.
where α bw is the normalized spectrum power, E tag is the effective power reflection coefficient of the tag, P i denotes the signal transmission power of R i , G T and G R are the gains of the transmit antenna and the receive antenna, respectively, P 0 is the referenced path loss at the distance of 1 m, γ is the path loss exponent, x is the distance between R i and the target tag, h is a fading coefficient in the channel between R i and R j , β mask (·) is the function of a spectrum mask defined in EPCGlobal Class1 Generation2 standard [22], ∆CH j,i (k) is the frequency channel interval between R i (CH i (k) denotes the frequency channel numbers selected by R i at the kth time slot) and R j (CH j (k) denotes the frequency channel numbers selected by R j at the kth time slot) selected, and d j,i is the relative distance between R i and R j . However, the effective interrogation radius ri of Ri is variable as a function of signal interfering. For reader Ri interrogating the target tag at a given time slot (i.e., at the kth time slot), Ri receives the backscatter signal from the tag and, meanwhile, it is also interfered by other simultaneous operating readers signal among NReader readers, where a 0-1 function j(k) (as Equation (3)) is to indicate if the reader Rj is operating at the kth slot or not. To ensure that Ri could successfully detect the target tag in distance of x, Signal-to-Interference-Plus-Noise ratio (SINR) [21] has to exceed the minimum one of SINRmin as Equation (2): By Equations (1)-(6), the effective interrogation range r i (i.e., blue circle in Figure 1) of R i could be finally obtained by solving Equation (7) to ensure that the backscatter signal from target tag could be correctly recovered.
According to d j,i and r i (i, j∈[1, N Reader ]), R i may face two kinds of interference scenarios [23] at one time slot when it tries to detect the target tags:

•
Multiple readers are simultaneously operating at the same frequency channel, which leads to the signals generated by multiple readers interfere with the reception system of the desired reader. In Figure 1, R 1 suffers from this kind of interference if R 2 and R 3 are simultaneously operating with R 1 at the same frequency channel. As a result, r 1 is smaller than the distance x between R 1 and the target tag A, R 1 could not successfully detect A. To ensure that R 1 could operate with a larger interrogation range to cover tag A, R 1 with R 2 and R 3 should be scheduled to operate at different frequency channels and/or at different times by polling server.

•
Multiple readers operating at independently frequency channels try to simultaneously detect the same tag located in the overlapped area of their effective interrogation ranges. In Figure 1, tag B locates in the overlapped interrogation area of R 1 and R 3 , where B receives electromagnetic waves from both R 1 and R 3 simultaneously, it is not able to select a particular reader to communicate even if R 1 and R 3 are operating at the different frequency channels. To avoid this scenario, R 1 and R 3 should operate asynchronously which are scheduled by polling server as well.

The Proposed Resource Allocation Model in Centralized MRE
In order to construct the resource allocation model for a centralized MRE, it is necessary to efficiently decrease the above two interference scenarios. Accordingly, Table 1 summarizes the restrictions set for any R i and R j operating in MRE, where d f-min represents the threshold of reader-to-reader range for selecting different operating frequency channel, d s-min (∆CH j,i (k)) is the threshold of reader-to-reader range for selecting different operating time slot which depends on the selected frequency channel.
Based on Table 1, two constraint conditions are proposed to restrict the resource allocation for readers operating as: Based on the relative distance d j,i between R j and R i , every R i exists a neighbor set (denoted as to mark the readers located in the range of d f-min , where R i is suffered from the first kind interference if the readers from IS Ri are simultaneously operating at the same frequency channel with R i (i.e., R 1 and R 2 in Figure 1). According to LIs [14], d f-min is set as 16.79 m (the transmitting signal power of reader is 1 W, and the frequency is 902-928 MHz) for any two R i and R j . Therefore, R i with any R j in its IS Ri (j = i) should be operating at different frequency channels as: CH i (k) = CH j (k) if j∈IS Ri and j = i, where CH i (k) denotes the frequency channel numbers selected by R i at the kth time slot.
Further, in d f-min , another smaller distance denoted as d s-min exists, where R i is suffered from the second kind interference if readers located in d s-min are operating simultaneously even if they are at different frequency channels because they are overlapped in the effective interrogation range (i.e., R 1 and R 3 in Figure 1). Usually, d s-min for R i and R j is variable along with the correspondingly selected frequency channels interval ∆CH j,i (k), which is listed in Table 2. The calculation process is attached in Appendix A. Therefore, R i with R j in d s-min should be operating non-simultaneously as: Constricted by the constraint conditions, the resource allocation model is finally constructed as Equation (8) with the objective of maximizing the total effective interrogation range (denoted as S) to schedule N Reader readers operating with N Slot time slots and N Freq frequency channels. Note that

Geometric Distribution-Based Multiple-Reader Scheduling Optimization Algorithm Using Artificial Immune System (GD-MRSOA-AIS)
According to the proposed resource allocation model, GD-MRSOA-AIS is proposed to fairly allocate the operating resources with lower reader interference and larger effective interrogation range. In GD-MRSOA-AIS, it is composed of two parts: • GD: Geometric distribution function (GD) combined with the fairness consideration is introduced to randomize the feasible scheduling schemes with lower interferences which satisfy the constraint conditions in Equation (8). Details are described in Section 3.1; • AIS: Artificial immune system optimization (AIS) is to optimize these feasible scheduling schemes as the optimal scheduling scheme for readers fairly operating with larger effective interrogation range. Details are presented in Section 3.2.

Feasible Scheduling by Geometric Distribution Function
According to the constraint conditions in Equation (8), GD-MRSOA-AIS will first produce several feasible solutions as the feasible scheduling schemes to ensure that readers could fairly operate with low signal interference.
In centralized MRE, both the interference-reader (i.e., R 1 , R 2 and R 3 in Figure 1) and the isolation-reader (i.e., R 4 in Figure 1) exist, where the isolated readers could operate at any time while the interfering readers have to be scheduled by polling server to decrease the interferences as much as possible. On the other hand, it is obvious that the isolated readers keeping on operating is thriftless since the number of deployed tags in the interrogation range is constant. Therefore, it is unfair to allocate the interfering readers and isolated readers with same opportunities to operate. To enhance the fairness, the interfering readers should gain more opportunities to operate.
To efficiently and fairly allocate the available operating time slots, a geometric probability distribution function called Sift [24,25] is imported to replace the typical uniform distribution. Based on the character of Sift distribution, it could increase the probability that one contender selects one resource in a low position, winning the contention quickly. Therefore, if R i contends for the operating time slot with large quantity of neighbor readers simultaneously, most neighbors will tend to select the last few time slots, and only the minority will contend for the first few time slots, decreasing the probability of collision in slots selection and increasing the probability that R i successfully selects one of the first few time slots. On the contrary, if R j contends for the operating time slots with small quantity of neighbor readers, the probability of selecting one slot almost obeys uniform distribution.
For Sift_Function, the probability that the ith reader gains the opportunity to operate at the kth time slot from N Slot time slots is denoted as Equation (9). Here, N Neighbor (i) is the cardinality of IS Ri for R i , where N Neighbor (i) = 1 denotes that there is no neighbors located around R i and therefore R i is an isolated reader without any possible interference.
Note that when N Neighbor (i) = 1, then α i = 1, and lim α→1 p (k) i = 1/N Slot , becoming the uniform probability distribution. Consequently, R i with bigger N Neighbor (i) could easily wins the kth time slot as a higher p(k) i while R j with smaller N Neighbor (j) has to select the operating time slot like uniform distribution as a lower p(k) j . By using Sift_Function, it generates several feasible scheduling schemes for readers operating with the allocated time slots and frequency channels, where the feasible scheduling schemes are restricted by the constraint conditions in Equation (8). Therefore, each feasible scheduling scheme produced by Sift_Function is actually a feasible solution for Equation (8), where the pseudocode is summarized as Algorithm 1.  For each feasible solution of Equation (8), the total effective interrogation range might be not large enough. Therefore, this feasible scheduling scheme might be not the optimal one to maximize the global effective interrogation range. To optimize these feasible scheduling schemes, the artificial immune system optimization is introduced in the following section.

Optimal Scheduling by Artificial Immune System Optimization
For the produced feasible scheduling schemes, they could be optimized by using artificial immune system optimization, where each candidate antibody corresponds to one feasible solution of Equation (8) produced by Sift_Function and the antigen corresponds to the objective function of Equation (8) with the constraint conditions. According to this, the affinity function could be formulated as Equation (10), where the process for optimizing the feasible solutions of Equation (8) is transformed to find the maximum affinity value of Equation (10) and its corresponding optimum antibody.
The proposed artificial immune system optimization is predefined to iterate N Gen generations, where it exists three phases in every iterative generation as: immune clone, immune mutation and immune suppression/recruitment. In the clone phase, each antibody is acted as a parent to be correspondingly cloned for a fixed number of N Clone children antibodies, and all children antibodies go through the mutation process but only one child antibody with the highest affinity-value among the children antibodies is selected to compare with its parent antibody. If this selected child antibody is superior to its parent antibody in affinity value, it will replace its parent antibody as a new generation. Once the affinity value of this new generation is not significantly different from that of the previous generation, the suppression will be triggered, where the P S antibodies with lowest affinity-values are suppressed. Then, the corresponding numbers of antibodies produced by Sift_Function are recruited. This process is repeated until N Gen iteration is met. The related symbols and their descriptions are listed in Table 3. Table 3. Symbol and description in artificial immune system optimization.

AB
The candidate antibody population Ab(u) The uth antibody ab(u) i The ith antibody segment in Ab(u) AB Remain The set for remained antibodies Ab(u) Clone The clone pool for Ab(u) Affinity(·) Affinity function Aff_old The mean affinity value of the previous generation Aff_new The mean affinity value of the current generation CH i (k) The kth bit in ab(u) i N Ini The population size of AB N Clone The cloned multiplier N Gen The generation multiplier L Region-bits mutation length P S The suppression percentage

Initialization
To initialize the optimizing process by using artificial immune system, N Ini antibodies (feasible solutions) are randomized by repeatedly run Sift_Function in N Ini times to construct the candidate antibody population set as AB = {Ab(u)|u∈[1, N Ini ]}. For each antibody Ab(u) in AB, it is encoded as integer type since both frequency channels and time slots are discrete distribution as integer type. Seen from Figure 2a, Ab(u) consists of N Reader segments as ab(u) 1 , ab(u) 2 , ab(u) 3 , . . . , ab(u) NReader , where each ab(u) i is actually corresponding to a reader R i and it includes a sequence of bits as CH i (1), CH i (2), CH i (3), . . . , CH i (N Slot ) where each CH i (k) is denoted as the selected frequency channel of reader R i at the kth time slot. CH i (k) = 0 means that reader R i does not operate at this kth slot.
Sensors 2016, 16, 1924 9 of 19 For each antibody Ab(u) in AB, it is encoded as integer type since both frequency channels and time slots are discrete distribution as integer type. Seen from Figure 2a, Ab(u) consists of NReader segments as ab(u)1, ab(u)2, ab(u)3,…, ab(u)NReader, where each ab(u)i is actually corresponding to a reader Ri and it includes a sequence of bits as CHi (1)

Clone Operation
After producing the candidate antibody population set as AB = {Ab(u)|u[1, NIni]}, each Ab(u) is regarded as an parent antibody. For each parent antibody Ab(u), NClone cloned antibodies with the same encodings are produced as its children antibodies, in which these children antibodies will go through the mutation operation to increase the diversity and therefore they have more potential to evolve as excellent individuals. Here, NClone is required to be predefined as the cloned multiplier, and each Ab(u) has a clone pool as AB(u)Clone = {Abc(c)|c [1,NClone]} to store its children antibodies, where each Abc(c) in AB(u)Clone is encoded as Figure 2b.
Note that each child antibody Abc(c) from the clone pool AB(u)Clone is totally the same as its parent antibody Ab(u) in every bit before the mutation operation.

Mutation Operation
For each child antibody Abc(c) (i.e., Figure 2b) from the clone pool AB(u)Clone = {Abc(c)|c[1, NClone]} of its parent Ab(u), there are two optional mutation operators as: single-bit mutation operator is applied for the ones with higher affinity values and region-bits mutation operator is applied for the ones with lower affinity values.
For single-bit mutation operator, only one bit CHi(k) is randomly selected as a hotspot to be mutated following the constraint conditions, which belongs to a reader Ri (i.e., Figure 2b). As a result, this mutated Abc(c) is also a feasible scheduling scheme as well.
For region-bits mutation operator, a contiguous region bits are selected to be mutated starting from a hotspot of CHi(k) increasing L-bit length, note that L is less than NSlot minus k to guarantee the mutation is happened in one reader Ri (i.e., Figure 2b). In addition, this mutation is restricted by the constraint conditions. As a result, this mutated Abc(c) is also a feasible scheduling scheme.
By single-bit mutation, the children antibody could extremely inherit the superior bits of the parent antibody while the children antibody would have more potential to mutate as the superior ones by region-bits mutation. Both of them could fast the convergence and quickly reach to the global optimization.

Clone Operation
After producing the candidate antibody population set as AB = {Ab(u)|u∈[1, N Ini ]}, each Ab(u) is regarded as an parent antibody. For each parent antibody Ab(u), N Clone cloned antibodies with the same encodings are produced as its children antibodies, in which these children antibodies will go through the mutation operation to increase the diversity and therefore they have more potential to evolve as excellent individuals. Here, N Clone is required to be predefined as the cloned multiplier, and each Ab(u) has a clone pool as AB(u) Clone = {Abc(c)|c∈[1, N Clone ]} to store its children antibodies, where each Abc(c) in AB(u) Clone is encoded as Figure 2b.
Note that each child antibody Abc(c) from the clone pool AB(u) Clone is totally the same as its parent antibody Ab(u) in every bit before the mutation operation.

Mutation Operation
For each child antibody Abc(c) (i.e., Figure 2b) from the clone pool AB(u) Clone = {Abc(c)|c∈[1, N Clone ]} of its parent Ab(u), there are two optional mutation operators as: single-bit mutation operator is applied for the ones with higher affinity values and region-bits mutation operator is applied for the ones with lower affinity values.
For single-bit mutation operator, only one bit CH i (k) is randomly selected as a hotspot to be mutated following the constraint conditions, which belongs to a reader R i (i.e., Figure 2b). As a result, this mutated Abc(c) is also a feasible scheduling scheme as well.
For region-bits mutation operator, a contiguous region bits are selected to be mutated starting from a hotspot of CH i (k) increasing L-bit length, note that L is less than N Slot minus k to guarantee the mutation is happened in one reader R i (i.e., Figure 2b). In addition, this mutation is restricted by the constraint conditions. As a result, this mutated Abc(c) is also a feasible scheduling scheme.
By single-bit mutation, the children antibody could extremely inherit the superior bits of the parent antibody while the children antibody would have more potential to mutate as the superior ones by region-bits mutation. Both of them could fast the convergence and quickly reach to the global optimization.
The single-bit and region-bit mutation operator run as in Algorithms 2 and 3 respectively. After the mutation operations, for each parent antibody Ab(u) (u∈[1, N Ini ]), its children antibodies Abc(c) from the clone pool AB(u) Clone = {Abc(c)|c∈[1, N Clone ]} are totally different: some Abc(c) surpasses Ab(u) in affinity value while some of Abc(c) are identical or inferior to Ab(u). To distinguish them, all Abc(c) (c∈[1, N Clone ]) should be sorted by affinity value. Select the Abc(c) with highest affinity value and compare it with its parent antibody Ab(u): if this Abc(c) is superior to its parent antibody Ab(u), it will replace its parent antibody as a new candidate antibody in AB.

Algorithm 2: Pseudocode for Single-bit Mutation
Single-bit _Operator () 1 Randomly determine a bit CH i (k) of R i from Abc(c) to be mutated; 2 for j = 1 to N Reader and j = i

Algorithm 3: Pseudocode for Region-bits Mutation
Region-bits _Operator () 1 Randomly determine a bit CH i (k) of R i from Abc(c) to be mutated; 2 for(q = k; q ≤ k + L; q++) 3 for j = 1 to N Reader and j = i 4 if IS Rj ∩IS Ri = ∅ 5 CH = CH-{CH j (q)}; 6 end if 7 end for 8 if CH = ∅ 9 Randomize CH i (q) from CH; 10 else 11 CH i (q) = 0; 12 end if 13 end for

Suppression Operation
After the mutation operation, the candidate antibodies are changed. If the affinity value of new candidate antibody population set AB is significantly increased, this AB will be directly regarded as a new generation and go through the same immune process via clone operation, mutation operation and suppression operation.
On the contrary, the candidate antibodies with highest affinity values should be promoted while the antibodies with lowest affinity values should be suppressed. Sorted by the affinity value, it will suppress P S percentage of antibodies with lowest affinity values. After that, P S of N Ini antibodies (feasible solutions) are produced by Sift_Function, where these fresh candidate antibodies are recruited in AB to compose a new generation population. In addition, this new generation population will go through the same immune process via clone operation, mutation operation and suppression operation.
When the iteration reaches the predefined maximum generations N gen , GD-MRSOA-AIS terminates. Finally, the pseudocode for proposed artificial immune system (proposed-AIS) optimization in GD-MRSOA-AIS is listed as Algorithm 4, where the corresponding flowchart is shown in Figure 3.

Simulations and Results
In this section, the total effective interrogation range using the proposed-AIS optimization with Sift_Function (denoted as GD-MRSOA-AIS) and without Sift_Function (denoted as MRSOA-AIS) will be simulated and compared with the state-of-the-art algorithm (LIs [14]) in two scenarios:

Algorithm 4: Pseudocode for Optimal Scheme Generation by using proposed-AIS Optimization
AIS_Optimization 1 Set N Ini , N Clone , N Gen , P S ; 2 int t, u, c; 3 float aff_old, aff_new; 4 Initialization: Run Sift_Function in N Ini times to construct set AB; 5 Evaluate the affinity value of all elements in AB and average them as aff_old; 6 while t< N Gen do 7 for(u = 1; u ≤ N Ini ; u++) 8 Produce N Clone clones for uth antibody as its children antibodies; // Clone Operation 9 for(c = 1; c ≤ N Clone ; c++) 10 Mutate cth child antibody following the Mutation Operation; 11 end for 12 Evaluate the affinity value of all children antibodies and their parent antibody; 13 Remain the antibody with the highest affinity value; 14 Evaluate the affinity value of all candidate antibodies and average them as aff_new; 15 end for 16 if(aff_new is not significantly bigger than aff_old) // Suppression Operation 17 Sort the candidate antibodies by their affinity values; 18 Suppress P S antibodies with lowest affinity values; 19 Produce P S new recruited antibodies by Sift_Function satisfying the constraint conditions; 20 end if 21 end while

Simulations and Results
In this section, the total effective interrogation range using the proposed-AIS optimization with Sift_Function (denoted as GD-MRSOA-AIS) and without Sift_Function (denoted as MRSOA-AIS) will be simulated and compared with the state-of-the-art algorithm (LIs [14]) in two scenarios: During the simulations, readers are randomly distributed over an area in two dimensions with 100 × 100 m 2 (i.e., L x = 100 m, L y = 100 m). As readers communicate with tags by means of EPCGlobal C1G2, the parameter settings are same with the ones listed in Table A1 in Appendix A.
Given a certain number of readers, as the number of available time slots increases, the readers have more options to avoid simultaneously operation. In other words, for a specific number of time slots, as the number of readers increases, the total effective interrogation range will be smaller, which is caused by the heavy interferences. Without the loss of generality, N Slot is finally assigned as 5 in the following simulations. In addition, as the number of available frequency channels increases, the total effective interrogation range always increases since each reader has more options for selecting an available frequency channel to simultaneously operate with other readers at different frequency channels. Usually, the number of available frequency channels is set to no more than 10. Consequently, N Freq is assigned as 10 in the simulation. The parameters setting of proposed-AIS optimization in simulation are listed in Table 4. Table 4. Parameter settings of proposed AIS optimization process.

Parameter Value
The  Figure 5 shows the graphical representation of effective interrogation range for each reader with its corresponding operation time slots (where the five time slots are represented by Green, Red, Blue, Cyan and Magenta) under the operating scheduling scheme. Correspondingly, the operating scheduling scheme for each algorithm is listed in Table 5, where CH i (k) = 0 means that the ith reader does not operate at this kth time slot. At the first time slot (TS 1 ) as green circles in Figure 5a-c, {R 7 , R 9 , R 14 , R 15 } are operating at the frequency channel of {CH 7 (1) = 5, CH 9 (1) = 7, CH 14 (1) = 1, CH 15 (1) = 10} using GD-MRSOA-AIS as in Table 5; {R 11 , R 13 , R 14 , R 15 } are operating at the frequency channel of {CH 11 (1) = 9, CH 13 (1) = 7, CH 14 (1) = 1, CH 15 (1) = 5} using MRSOA-AIS; and {R 1 , R 4 , R 13 , R 15 } are operating at the frequency channel of {CH 1 (1) = 7, CH 4 (1) = 1, CH 13 (1) = 10, CH 15 (1) = 3} using LIs algorithm. Take {R 4 , R 7 } as an example, IS R4 ∩IS R7 = {4, 7}. According to Table 5, R 4 is scheduled to operate at TS 3 with the frequency channel of CH 4 (3) = 10 and R 7 is scheduled to operate at TS 1 with the frequency channel of CH 7 (1) = 5 by GD-MRSOA-AIS while R 4 is scheduled to operate at every time slot as {CH 4 (1) = 1, CH 4 (2) = 3, CH 4 (3) = 1, CH 4 (4) = 1, CH 4 (5) = 3} and R 7 is scheduled to be inactive at every time slot by LIs. Therefore in LIs, R 4 is actually operating in uselessness especially for the last few time slots and it is unfair for R 7 . On the contrary, GD-MRSOA-AIS schedules R 4 and R 7 corporately operating in a fair way. The same scenario is also happened in {R 12 , R 13 }.    operate at TS3 with the frequency channel of CH4(3) = 10 and R7 is scheduled to operate at TS1 with the frequency channel of CH7(1) = 5 by GD-MRSOA-AIS while R4 is scheduled to operate at every time slot as {CH4(1) = 1, CH4(2) = 3, CH4(3) = 1, CH4(4) = 1, CH4(5) = 3} and R7 is scheduled to be inactive at every time slot by LIs. Therefore in LIs, R4 is actually operating in uselessness especially for the last few time slots and it is unfair for R7. On the contrary, GD-MRSOA-AIS schedules R4 and R7 corporately operating in a fair way. The same scenario is also happened in {R12, R13}.  On average, the effective interrogation radius using GD-MRSOA-AIS is 2.142 m, 2.0881 m using MRSOA-AIS and 1.909 m using LIs algorithm. It seems like that the effective interrogation ranges of these three algorithms are similar. However, by introducing Sift_Function, GD-MRSOA-AIS is obviously fairer since almost all readers (except for R 1 ) are scheduled to operate at different time slots and frequency channels while both of MRSOA-AIS and LIs could not. For example, {R 4 , R 5 , R 6 , R 7 , R 8 , R 10 , R 12 } are always inactive in MRSOA-AIS and {R 6 , R 7 , R 11 , R 12 } are inactive in LIs (shown in Table 5 and Figure 5b,c), especially that R 6 , R 10 , R 11 are posited in crowed with more neighbors (shown in Figure 4).
To evaluate the fairness of readers during the operating scheduling, a general purpose quantitative measure of fairness called Jain Index [26] is imported as Equation (11), where N Reader denotes the number of readers, ω i is the 0-1 function to indicate whether the reader R i operates at least once at these N Slot time slots or not, and N Neighbor (i) is the cardinality of IS Ri . The I Jain ranges from 0 to 1: the higher I Jain means that the corresponding optimal scheduling scheme is fairer. Obviously, R i with larger N Neighbor (i) will make more contribution to obtain a bigger I Jain . Therefore, the Jain Index could express the fairness of an optimal scheduling scheme.
As a result, GD-MRSOA-AIS becomes the fairest one with highest Jain Index of I Jain = 18.22%, while the I Jain of MRSOA-AIS is 8.89% and the I Jain of LIs is 14.67% in the same scenario.
In Figure 6, the initial average affinity value of GD-MRSOA-AIS starts from 450, which is much higher than that of the other two from 200. This obvious difference is owing to the contending mechanism of Sift_Function for time slots selection. Additionally, the average affinity value of both GD-MRSOA-AIS and MRSOA-AIS are much higher than LIs, where MRSOA-AIS rockets up to a high affinity value and then it stabilizes in the similar average affinity value like GD-MRSOA-AIS, which dues to the multiple mutation operations in the proposed-AIS. To achieve the average affinity value of 600, with GD-MRSOA-AIS and MRSOA-AIS, it costs around 50 generations while with LIs it is more than 150 generations. Therefore, the proposed-AIS also reduces the time consumption of optimization process.

Variable NReader with Fixed NSlot = 5 and NFreq = 10 in Randomized Positions
For a given NReader readers with NSlot = 5 and NFreq = 10 in the area of 100 × 100 m 2 , the position of each reader is randomly located. To ensure the convergence of the results, all the simulations are repeated for 50 times with 50 randomly positions. For an easier understanding, the results are listed in five indices (the best, the worst, and the mean of total effective interrogation area, the average radius and Jain Index) among GD-MRSOA-AIS, MRSOA-AIS and LIs algorithm, which are represented in Table 6.
When NReader = 4 with NSlot = 5 available time slots and NFreq = 10 frequency channels, readers are easily scheduled to operate at different time slots and frequency channels. Additionally, they could be deployed so sparsely that they are hardly interfered each other in such a large zone (100 × 100 m 2 ). Therefore, the Jain Index is failed to measure the fairness. However, limited by the self-rated-power, the interrogation range is also finite. As a result, the total effective interrogation range is not large enough. As the number of readers increases, such as NReader = 24 and NReader = 28, positions of readers become much denser, the readers could not make full use of the frequency channels and the time slots, and then the individual effective interrogation range is declining and the total effective interrogation range relies on the cooperation among readers operating.

Variable N Reader with Fixed N Slot = 5 and N Freq = 10 in Randomized Positions
For a given N Reader readers with N Slot = 5 and N Freq = 10 in the area of 100 × 100 m 2 , the position of each reader is randomly located. To ensure the convergence of the results, all the simulations are repeated for 50 times with 50 randomly positions. For an easier understanding, the results are listed in five indices (the best, the worst, and the mean of total effective interrogation area, the average radius and Jain Index) among GD-MRSOA-AIS, MRSOA-AIS and LIs algorithm, which are represented in Table 6.
When N Reader = 4 with N Slot = 5 available time slots and N Freq = 10 frequency channels, readers are easily scheduled to operate at different time slots and frequency channels. Additionally, they could be deployed so sparsely that they are hardly interfered each other in such a large zone (100 × 100 m 2 ). Therefore, the Jain Index is failed to measure the fairness. However, limited by the self-rated-power, the interrogation range is also finite. As a result, the total effective interrogation range is not large enough. As the number of readers increases, such as N Reader = 24 and N Reader = 28, positions of readers become much denser, the readers could not make full use of the frequency channels and the time slots, and then the individual effective interrogation range is declining and the total effective interrogation range relies on the cooperation among readers operating.
From Table 6, we can see that the Jain Index is fluctuated up and down. For the former situations (i.e., N Reader = 8, N Reader = 12, N Reader = 16), each reader has fewer neighbors since they are sparsely distributed, which declines the Jain Index value even if all of the readers are scheduled to operate at least once. For the latter situations (i.e., N Reader = 24, N Reader = 28), readers are located in denser positions and so each reader has more neighbors, but some readers might be not scheduled to operate even once (ω i = 0) which also decreases the Jain Index value. Even so, the Jain Index value of GD-MRSOA-AIS is also higher than MRSOA-AIS and LIs with the same number of readers. In addition, Table 6 shows that the best, the worst and the mean of total effective interrogation range between GD-MRSOA-AIS and MRSOA-AIS are similar but larger than the ones of LIs; meanwhile, the average radius of effective interrogation range for each operating readers with GD-MRSOA-AIS and MRSOA-AIS is also larger than that with LIs. The total effective interrogation range is declined fast by using LIs when the number of readers increases while it is much slower by using both GD-MRSOA-AIS and MRSOA-AIS. For example, when N Reader = 20, the mean effective interrogation range with GD-MRSOA-AIS is 3133.686 m 2 , the best one as 3331.845 m 2 and the worst one as 2935.414 m 2 ; the mean value with LIs is only 2528.864 m 2 , the best one as 2869.225 m 2 and the worst one as 2297.590 m 2 . When N Reader = 28, with GD-MRSOA-AIS, the mean value is glided down to 2737.177 m 2 , the best one as 3068.395 m 2 and the worst one as 2436.688 m 2 ; with LIs, the mean value is slumped down as 1670.742 m 2 , the best one as 1859.409 m 2 and the worst one as 1532.377 m 2 .
In conclusion, GD-MRSOA-AIS could schedule multiple readers operating in fairness with lower multiple-reader interfering and large effective interrogation range, where the fairness with lower multiple-reader interfering dues to the geometric distribution of Sift_Function and the large effective interrogation range dues to the proposed-AIS optimization process. As a result, the deployment of eight readers with five available time slots and 10 available frequency channels is the most economical way to maximize the total effective interrogation range in 100 × 100 m 2 , especially using GD-MRSOA-AIS.

Conclusions
This paper refers to the multiple-reader interference problem in the multiple-reader environment (MRE) and formulates a resource allocation model with the consideration of interference avoidance in SINR under EPCGlobal C1G2 standard, where the allocable resources include available time slots and frequency channels. Based on this resource allocation model, GD-MRSOA-AIS is further proposed. In GD-MRSOA-AIS, geometric distribution replaces the uniform distribution to produce the feasible scheduling schemes, where the reader, which is interfered by large quantity of readers, has more opportunities to be allocated in an operating time slot. To optimize these feasible scheduling schemes, the artificial immune system optimization including immune clone, immune mutation and immune suppression is further introduced. During the mutation operation for antibodies, there are two optional mutation operators depending on the affinity values. According to the simulation results, GD-MRSOA-AIS could obtain an optimal and fairer readers collaboratively operating scheduling scheme, and it could output a larger total effective interrogation range with higher convergence than the state-of-the-art one.
Although GD-MRSOA-AIS indeed enhances the effective interrogation range with lower interferences by fairer operating scheme, it still has shortcomings: • It only focuses on the scenario of multiple readers in known position with randomized tags in fixed positions, and ignores the new entrancing tags with variable population. • It only solves the resource allocation problem for multiple readers scheduling to interrogate the tags in centralized MRE, but ignores the identification problem (i.e., tag-to-tag collision) in data transmission process.
Therefore, the next work will reconstruct a resource allocation model by considering the variable population of tags and identification problem with an enhanced scheduling-based algorithm.

Conflicts of Interest:
The authors declare no conflict of interest.

Appendix A
Assume that readers with the rated power of 30 dB m (1 W) are operating at the frequency of 902-928 MHz with the bandwidth of 500 KHz and noise power of −90 dB m according to EPCGlobal C1G2 [22]. The corresponding parameters are listed in Table A1. For any R i and R j , the effective interrogation range might be overlapped if the distance between these two readers is close enough. For this scenario, readers are not preferred to operate simultaneously