Research Article

Reader Scheduling for Tag Population Estimation in Multicategory and Multireader RFID Systems

Algorithm 1

The coloring region division.
Input: Number of monitoring units: m; Number of colors: M≤m; The relationship matrix between units: X; Initialize the color of regions: Y [0: m−1]=−1; flag=0;
Output: One scheme of graph coloring Y;
  Function UNCOLLISION(int k)
   for each i ∈ [0, k−1) do
    if X[k][i] == 1∧Y [k] == Y [i] then
     return false;
    else
     return true;
  function GRAPHCOLOR(int t)
   p=0;
   if t>= m then
    flag=1;
   while!flag ∧ p<M do
     Y [t]=p;
     p=p+1;
     if UNCOLLISION(t) then
      GRAPHCOLOR(t+1);
   if t == 0 then
    return null;
  GRAPHCOLOR(0);