**6. Relative merits**

The lack of customized antenna design for tags and readers and the reader collision problem seriously affects the performance of our prototype. Our DAIT prototype uses only tags with directional antennae. (Again, the reason is that such tags are readily available.) When the an‐ tennae of tags and readers are directional, the read performance of agents depends on the orientation of the antennae. Clearly, tagged objects may be placed in arbitrary orientations. As a consequence, it is impossible to ensure optimal or near optimal alignment of the tag antennae towards the agents covering their locations. This is the reason that tags in a DAIT object locator should have omni-directional antennae. Agents with omni-directional anten‐ nae can be simply set on furniture as shown in Figure 11(a). Agents with directional anten‐ nae should be attached to the ceiling as shown in Figure 11(b). This arrangement requires a read range of 2-3 meters. With readers of a sufficiently large read range, RAIT locators can

(a) (b)

(a) (b)

Close proximity of readers (i.e., agents) is necessary in order to avoid blind regions. Our DAIT prototype is no exception. When RFID readers have overlap coverage areas, signals sent at the same time from them to tags in the overlap region interfere with each other. This is called the *reader collision problem* [10]. Fortunately, only the broadcast scheme suffers this

use tags with directional antennae without performance concern.

210 Radio Frequency Identification from System to Applications

**Figure 10.** Agent and interrogator

**Figure 11.** Arrangement of agents

We use search time and energy consumption of a single query to measure the relative merits of object locator designs. Search time and energy consumption per query depend on many factors including the number of agents, search scheme, search sequence and locations of misplaced objects.

#### **6.1. Search time and energy consumption**

The expressions of energy consumption and search time per query according to broadcast, relay and polling schemes are listed in Table 1. The expressions assume that agents and in‐ terrogator(s) are battery powered and communicate in the manners described in Section 4. The notations used in the expression are defined in Table 2.

The total energy consumed by the object locator for processing a Query operation according to the broadcast scheme is the sum of the three terms in the first row of Table 1. In this case, the interrogator transmits only one query message per Query operation. The energy it con‐ sumes is *EIA*. The energy consumed by each agent in the search is *EArfid*. The total energy con‐ sumed by all agents is *NA*(*x, y, r*)*EArfid*, where *NA*(*x, y, r*) is the number of agents with range *r* in a rectangular space of dimensions *x* and *y*. The agent finding the queried tag consumes *EAI* to send a response back to the interrogator.

In the expressions, *pAi* denotes the probability that the *i*-th agent in the search sequence finds the queried tag. In general, this probability is a function of the number and location distribution of objects (i.e., tags) in the house. (To keep the expressions simple, our notations do not show this dependency.)

The expression of the expected time taken by the locator using the broadcast scheme to respond to a Query operation assumes that agents search the queried tag in sequence in order to avoid the reader collision problem. The first term in the expression is the time taken by the query message from the interrogator to reach all the agents. If the first agent finds the queried tag, which occurs with probability *pA1*, the addition delay is *DArfid* + *DAI*. This is the reason for the second term in the expression of *Tavg*. In general, the probability

the other agents spends *DArfid* amount of time to search for the queried tag before the *i*-th

The average search time of an object locator that uses the relay and polling scheme are es‐ timated by the expressions in the fourth and sixth rows in Table 1, respectively. Relay and polling scheme also lets all agents search the queried tag in sequence. This is why the co‐ efficients in these expressions are the same as the coefficients in the expression of *Tavg* for the broadcast scheme. The expressions of the average energy consumption can be derived from the expressions of the average search time by substituting energy consumption for message transmission delay because sending a message cause both transmission delay

As stated earlier, Table 1 is based on the assumption that agents and the interrogator are battery powered. Hence, the total energy consumption includes energy consumptions of agents and an interrogator. However, agents can be connected to wall plugs, especially when the number of agents is small, as in the case of RAIT locators. The interrogator us‐ ing relay and broadcast scheme consumes exactly *EIA* to search a queried tag. The inter‐ rogator using polling scheme consumes at least *EIA* to search a queried tag. Therefore, the polling scheme is suitable for stationary interrogator(s) and the relay and broadcast scheme are suitable for portable interrogator(s) if we do not need to account for the ener‐

The probability *pAi* of that an agent *Ai* finds the queried tag, and hence the misplaced ob‐ ject, depends on where the object is at the time. To calculate this probability, we use a lo‐ cality model of tracked objects. The model gives the spatial probability density of the locations of each object. For the sake of simplicity and without noticeable lose of accuracy, we partitions the space in the search area into unit squares, rather than treating the coor‐ dinates of a location as continuous variables. (Except for where it is stated otherwise, the dimension of a unit square is 1 cm by 1 cm.) This allows us to model a house as a finite, discrete and planar search space. We denote the space by*Z* ={*Zx*,*y*}⊆ *N* × *N* . Each element *Zx,y* of the space is a unit square; its location is given by the coordinate (*x, y*) where both *x* and *y* are integers. All agents are at fixed and known locations. A misplaced object may

*k*=1 *i*−1

(1− *pAk* )*pAi*

. When this occurs, each of

http://dx.doi.org/10.5772/53576

213

Design and Implementation of RFID-Based Object Locators

that the queried tag is found by the *i*-th agent is∏

and energy consumption.

gy consumption of agents.

**6.2. Model of object locality**

be placed anywhere within the search space.

agent can respond to the interrogator. Hence, the delay is *iDArfid* + *DAI*.


**Table 1.** Expressions for search time and energy consumption


The expression of the expected time taken by the locator using the broadcast scheme to respond to a Query operation assumes that agents search the queried tag in sequence in order to avoid the reader collision problem. The first term in the expression is the time taken by the query message from the interrogator to reach all the agents. If the first agent finds the queried tag, which occurs with probability *pA1*, the addition delay is *DArfid* + *DAI*. This is the reason for the second term in the expression of *Tavg*. In general, the probability that the queried tag is found by the *i*-th agent is∏ *k*=1 *i*−1 (1− *pAk* )*pAi* . When this occurs, each of the other agents spends *DArfid* amount of time to search for the queried tag before the *i*-th agent can respond to the interrogator. Hence, the delay is *iDArfid* + *DAI*.

The average search time of an object locator that uses the relay and polling scheme are es‐ timated by the expressions in the fourth and sixth rows in Table 1, respectively. Relay and polling scheme also lets all agents search the queried tag in sequence. This is why the co‐ efficients in these expressions are the same as the coefficients in the expression of *Tavg* for the broadcast scheme. The expressions of the average energy consumption can be derived from the expressions of the average search time by substituting energy consumption for message transmission delay because sending a message cause both transmission delay and energy consumption.

As stated earlier, Table 1 is based on the assumption that agents and the interrogator are battery powered. Hence, the total energy consumption includes energy consumptions of agents and an interrogator. However, agents can be connected to wall plugs, especially when the number of agents is small, as in the case of RAIT locators. The interrogator us‐ ing relay and broadcast scheme consumes exactly *EIA* to search a queried tag. The inter‐ rogator using polling scheme consumes at least *EIA* to search a queried tag. Therefore, the polling scheme is suitable for stationary interrogator(s) and the relay and broadcast scheme are suitable for portable interrogator(s) if we do not need to account for the ener‐ gy consumption of agents.

#### **6.2. Model of object locality**

distribution of objects (i.e., tags) in the house. (To keep the expressions simple, our notations

do not show this dependency.)

212 Radio Frequency Identification from System to Applications

**Table 1.** Expressions for search time and energy consumption

**Table 2.** Notations

The probability *pAi* of that an agent *Ai* finds the queried tag, and hence the misplaced ob‐ ject, depends on where the object is at the time. To calculate this probability, we use a lo‐ cality model of tracked objects. The model gives the spatial probability density of the locations of each object. For the sake of simplicity and without noticeable lose of accuracy, we partitions the space in the search area into unit squares, rather than treating the coor‐ dinates of a location as continuous variables. (Except for where it is stated otherwise, the dimension of a unit square is 1 cm by 1 cm.) This allows us to model a house as a finite, discrete and planar search space. We denote the space by*Z* ={*Zx*,*y*}⊆ *N* × *N* . Each element *Zx,y* of the space is a unit square; its location is given by the coordinate (*x, y*) where both *x* and *y* are integers. All agents are at fixed and known locations. A misplaced object may be placed anywhere within the search space.

We call the probability of finding a queried object at *Zx,y* the (*existence*) *probability* of the object at *Zx,y*. (For example, if we find an object at *Zx,y* on the average 10 times in 100 searches for the object, the (existence) probability of the object at *Zx,y* is approximately 0.10. We use *pZx,y*(*j*) to denote the existence probability of an object with a tag of id = *j* at *Zx,y*. We do not consider the situation where someone has taken some registered object shopping, for example, while someone else is searching for it in the house. Hence, for every object being searched, the sum of the probabilities of it being at all locations in the search space equals to 1.

We call the area where a misplaced object might be placed an *object region*. The size of an object region is the total area of the region in number of unit squares. We characterize the locality of a misplaced object by the size and shape of its object region and its existence probabilities of being at each unit square within the region. Once we know the locality pa‐

ed. We can then calculate the average search time and energy consumption of the object

The environment we used to evaluate the relative performance of our designs has a 10m by 10m search space, containing 1000 × 1000 unit squares of size 1 cm by 1 cm. Agents are placed according to the arrangement in Figure 13(a). The number of agents is *NA*(*1000, 1000, r*). Again, *r* is the read range of an agent. The ranges of desk-level and room-level agents are 100 and 350, respectively, the typical number of room-level agents in a RAIT locator is *NA*(*1000,1000,350*) = 6, and the typical number of agents in a DAIT locator is equal to

(a) (b) (c)

In Section 4, we said that the agent with the smallest network address is the first agent and the other agents are asked one by one in order of agent ids to search for the queried object. We call this search order *sequential*. Alternatively, we can ask the agents in non-increasing order of their empirical existence probabilities. This search sequence is called *profiling*.

Our evaluation program assumes that object regions are circular for the sake of simplicity. The center and radius of an object region are randomly generated. The variables *DIA*, *DAA* and *DAI* in Table 2 have the same values because both interrogators and agents use the same kind of RF transceiver. For the same reason, *EIA*, *EAA* and *EAI* have the same value. For con‐ venience, we use *DArfid* and *EArfid* as base units of delay and energy consumption. The ratio of *DIA/DArfid* (*DAI/DArfid* and *DAA/DArfid*) is called *DRatio* and the ratio of *EIA/EArfid* is called *ERatio*.

Figure 14(a) and (b) show the average search time for broadcast scheme, relay scheme, and polling scheme (i.e., polling in sequential order), as well as polling scheme with profiling. The search time of relay and polling schemes is higher than broadcast scheme for all values

The evaluation program needs only these two parameters rather than all variables.

, the terms *pAi*

Design and Implementation of RFID-Based Object Locators

can easily be calculat‐

http://dx.doi.org/10.5772/53576

215

rameters of an object and coverage area of each agent *Ai*

for all agents.

based on the probability *pAi*

*NA*(*1000,1000,100*) = 42.

**Figure 13.** Possible arrangement of agents

**6.3. Evaluation environment and results**

Figure 12 gives an illustrative example. The figure is not drawn scale, and each unit square in this example is 10 cm by 10 cm in dimension. Two agents *A1* and *A2* are at their locations. The id of *A1* is 1 and the id of *A2* is 2. The rectangle models a desk. It contains 15 unit squares. The number in each square gives the probability of a queried object being at the lo‐ cation. Since the numbers add up to 1, they tell us that the object is surely somewhere in the rectangle. We want to calculate *pAi* , the probability that the agent with id = *i* can find the queried tag. Using Figure 12 as an illustrative example, we see that *pA1* equals to the sum of all existence probabilities within the read range of the agent *A1*; in other words, *pA1* is about 0.87. Similarly, we find that *pA2* is about 0.68.

**Figure 12.** Locality model

We call the area where a misplaced object might be placed an *object region*. The size of an object region is the total area of the region in number of unit squares. We characterize the locality of a misplaced object by the size and shape of its object region and its existence probabilities of being at each unit square within the region. Once we know the locality pa‐ rameters of an object and coverage area of each agent *Ai* , the terms *pAi* can easily be calculat‐ ed. We can then calculate the average search time and energy consumption of the object based on the probability *pAi* for all agents.

#### **6.3. Evaluation environment and results**

We call the probability of finding a queried object at *Zx,y* the (*existence*) *probability* of the object at *Zx,y*. (For example, if we find an object at *Zx,y* on the average 10 times in 100 searches for the object, the (existence) probability of the object at *Zx,y* is approximately 0.10. We use *pZx,y*(*j*) to denote the existence probability of an object with a tag of id = *j* at *Zx,y*. We do not consider the situation where someone has taken some registered object shopping, for example, while someone else is searching for it in the house. Hence, for every object being searched, the sum

Figure 12 gives an illustrative example. The figure is not drawn scale, and each unit square in this example is 10 cm by 10 cm in dimension. Two agents *A1* and *A2* are at their locations. The id of *A1* is 1 and the id of *A2* is 2. The rectangle models a desk. It contains 15 unit squares. The number in each square gives the probability of a queried object being at the lo‐ cation. Since the numbers add up to 1, they tell us that the object is surely somewhere in the

queried tag. Using Figure 12 as an illustrative example, we see that *pA1* equals to the sum of all existence probabilities within the read range of the agent *A1*; in other words, *pA1* is about

*Z1,1 Z2,1 Z100,1*

*0.05*

*0.05 0.05* *0.03*

*0.05 0.05*

*A1*

*0.05 0.02*

*0.05 0.05*

*0.05*

*0.05*

*0.1*

*0.1 0.2*

*Z1,100 Z100,100*

*A2*

, the probability that the agent with id = *i* can find the

of the probabilities of it being at all locations in the search space equals to 1.

rectangle. We want to calculate *pAi*

214 Radio Frequency Identification from System to Applications

*Z1,2*

**Figure 12.** Locality model

0.87. Similarly, we find that *pA2* is about 0.68.

The environment we used to evaluate the relative performance of our designs has a 10m by 10m search space, containing 1000 × 1000 unit squares of size 1 cm by 1 cm. Agents are placed according to the arrangement in Figure 13(a). The number of agents is *NA*(*1000, 1000, r*). Again, *r* is the read range of an agent. The ranges of desk-level and room-level agents are 100 and 350, respectively, the typical number of room-level agents in a RAIT locator is *NA*(*1000,1000,350*) = 6, and the typical number of agents in a DAIT locator is equal to *NA*(*1000,1000,100*) = 42.

**Figure 13.** Possible arrangement of agents

In Section 4, we said that the agent with the smallest network address is the first agent and the other agents are asked one by one in order of agent ids to search for the queried object. We call this search order *sequential*. Alternatively, we can ask the agents in non-increasing order of their empirical existence probabilities. This search sequence is called *profiling*.

Our evaluation program assumes that object regions are circular for the sake of simplicity. The center and radius of an object region are randomly generated. The variables *DIA*, *DAA* and *DAI* in Table 2 have the same values because both interrogators and agents use the same kind of RF transceiver. For the same reason, *EIA*, *EAA* and *EAI* have the same value. For con‐ venience, we use *DArfid* and *EArfid* as base units of delay and energy consumption. The ratio of *DIA/DArfid* (*DAI/DArfid* and *DAA/DArfid*) is called *DRatio* and the ratio of *EIA/EArfid* is called *ERatio*. The evaluation program needs only these two parameters rather than all variables.

Figure 14(a) and (b) show the average search time for broadcast scheme, relay scheme, and polling scheme (i.e., polling in sequential order), as well as polling scheme with profiling. The search time of relay and polling schemes is higher than broadcast scheme for all values of DRatio. The search time of polling scheme with profiling is less than that of broadcast scheme when DRatio is less than about 1 (100 ) for *NA* = 42 and 1.25 (100.1) for *NA* = 6.

less than that of broadcast scheme when ERatio is less than 1.99 (100.3) and 7.94 (100.9), re‐ spectively. Values of ERatio at the intersections of the curves in Figure 15(b) are about 3.16

Design and Implementation of RFID-Based Object Locators

http://dx.doi.org/10.5772/53576

217

**Figure 15.** Energy consumption of agents Vs ERatio: (a) top NA = 42; (b) bottom NA = 6

(100.5) and 15.85(101.2).

**Figure 14.** Search time Vs DRatio: (a) top NA = 42; (b) bottom NA = 6

Figure 15 shows the average energy consumption consumed by agents when *NA* is 42 and 6. The energy consumption consumed by agents is the same, when the relay and polling scheme is used. As Figure 15(a) depicts, the energy consumption of relay scheme and poll‐ ing scheme are the same. Their consumptions and that of polling scheme with profiling is less than that of broadcast scheme when ERatio is less than 1.99 (100.3) and 7.94 (100.9), re‐ spectively. Values of ERatio at the intersections of the curves in Figure 15(b) are about 3.16 (100.5) and 15.85(101.2).

of DRatio. The search time of polling scheme with profiling is less than that of broadcast

) for *NA* = 42 and 1.25 (100.1) for *NA* = 6.

scheme when DRatio is less than about 1 (100

216 Radio Frequency Identification from System to Applications

**Figure 14.** Search time Vs DRatio: (a) top NA = 42; (b) bottom NA = 6

Figure 15 shows the average energy consumption consumed by agents when *NA* is 42 and 6. The energy consumption consumed by agents is the same, when the relay and polling scheme is used. As Figure 15(a) depicts, the energy consumption of relay scheme and poll‐ ing scheme are the same. Their consumptions and that of polling scheme with profiling is

**Figure 15.** Energy consumption of agents Vs ERatio: (a) top NA = 42; (b) bottom NA = 6

Table 3 gives a summary. The table suggests the broadcast scheme when DRatio is high and search time is more important than energy consumption. When DRatio is low, the differen‐ ces among the search times of all search schemes are small. Energy consumption becomes the dominant factor for comparison. It is possible for agents in a RAIT locator to connect to power source. For energy saving on interrogators, we suggest polling scheme with profiling for stationary interrogators and relay or broadcast scheme for portable interrogators. As for DAIT locators, we consider energy consumption of an interrogator and agents. We suggest polling scheme with profiling when ERatio is low and the same suggestions as that for a RAIT locator if ERatio is high.

of agents required to fully cover a house depends on dimensions *x* and *y* of the house, the read range of the agents and the way agents are placed. To get a rough estimate, we assume that the coverage area of each agent is a circle. Figure 13 depicts three ways to place agents. Putting agents further apart than locations shown in Figure 13(a) can create blind regions. Putting more agents closer than those indicated in Figure 13(c) is not necessary since the space is covered by at least two agents. We need six room-level agents to cover a 10m x 10m space even when we place agents as shown in Figure 13(a) (i.e., as far as possible without creating blind regions). The existing object locator costs \$ 50 US. A RAIT locator is not com‐ petitive to the existing locator unless the cost per room-level agent is about \$ 10 US. As for DAIT locator, the cost per desk-level agent must be much lower. We are optimistic that the cost of agents will become sufficiently lower in the coming decade as the need for more and more products (e.g., Smart pantry [1], dispenser in [4]) containing RFID readers are devel‐

Design and Implementation of RFID-Based Object Locators

http://dx.doi.org/10.5772/53576

219

This work is partially supported by the Taiwan Academia Sinica thematic project SISARL (Sensor Information System for Active Retirees and Assisted Living (http://www.sisarl.org).

1 Computer Science Department, University of California at Irvine, Irvine, CA, USA

[1] Hsu CF., Liao HY., Hsiu PC., Lin YS., Shih CS., Kuo TW., Liu JWS., Smart Pantries for Homes: Proceedings of IEEE International Conference on Systems, Man and Cy‐

[2] Yeh HC., Hsiu PC., Tsai PH., Shih CS. and Liu JWS. APAMAT: A Prescription Alge‐ bra for Medication Authoring Tool: Proceedings of IEEE International Conference on Systems, Man and Cybernetics, SMC2006, 8-11 October 2006, Taipei, Taiwan; 2006.

[3] Hsu YT., Hsiao SF., Chiang CE, Chien YH., Tseng HW., Pang AC., Kuo TW., Chiang KH. Walker's Buddy: An Ultrasonic Dangerous Terrain Detection System: Proceed‐

bernetics, SMC2006, 8-11 October 2006, Taipei, Taiwan; 2006. p4276-4283.

2 Institute of Information Science, Academia Sinica, Nangang, Taipei, Taiwan

oped to take advantage of this technology.

and J. W. S. Liu2

**Acknowledgment**

**Author details**

T. S. Chou1

**References**

p3676-3681.


PI: portable interrogator; SI: stationary interrogator

**Table 3.** Summary of suggested search schemes
