IEEE TRANSACTIONS ON COMPUTERS,
VOL. 58, NO. 5,
MAY 2009
677
An Efficient Directed Localization Recursion Protocol for Wireless Sensor Networks Horacio Antonio Braga Fernandes de Oliveira, Azzedine Boukerche, Eduardo Freire Nakamura, and Antonio Alfredo Ferreira Loureiro Abstract—The establishment of a localization system is an important task in wireless sensor networks. Due to the geographical correlation between sensed data, location information is commonly used to name the gathered data and address nodes and regions in data dissemination protocols. In general, to estimate its location, a node needs the position information of at least three reference points (neighbors that know their positions). In this work, we propose a different scheme in which only two reference points are required in order to estimate a position. To choose between the two possible solutions of an estimate, we use the known direction of the recursion. This approach leads to a recursive localization system that works with low-density networks (increasing by 40 percent the number of nodes with estimates in some cases), reduces the position error by almost 30 percent, requires 37 percent less processor resources to estimate a position, uses fewer beacon nodes, and also indicates the node position error based on its distance to the recursion origin. No GPS-enabled node is required, since the recursion origin can be used as a relative coordinate system. The algorithm’s evaluation is performed by comparing it with a similar localization system; also, experiments are made to evaluate the impact of both systems in geographic algorithms. Index Terms—Network architecture and design, algorithm/protocol design and analysis, wireless sensor networks, localization, GPS free.
Ç 1
INTRODUCTION
W
IRELESS sensor networks (WSNs) [1], [2], [3], [4], [5] are composed of a large number of sensor nodes used to monitor an area of interest. This type of network has become popular due to its applicability in several areas such as the environmental, medical, industrial, and military fields. Despite the fact that the main goal of a WSN is to monitor an area of interest, several secondary objectives or prerequisites have to be achieved in order to reach the main objective (Fig. 1). To cite a few, these prerequisites include data dissemination [6], [7], time synchronization [8], [9], [10],
. H.A.B.F. de Oliveira is with the PARADISE Research Laboratory, School of Information Technology and Engineering (Site), University of Ottawa, 800 King Edward Avenue, Ottawa, ON K1N 6N5, Canada, and also with the Department of Computer Science, Federal University of Minas Gerais, Av. Antonio Carlos, 6627, Pampulha, 30123-970, Belo Horizonte, MG, Brazil, and the Department of Computer Science, Federal University of Amazonas, Av. Gen. Rodrigo Octavio, 3000, Coroado, 69077-000, Manaus, AM, Brazil. E-mail:
[email protected],
[email protected]. . A. Boukerche is with the PARADISE Research Laboratory, School of Information Technology and Engineering (Site), University of Ottawa, 800 King Edward Avenue, Ottawa, ON K1N 6N5, Canada. E-mail:
[email protected]. . E.F. Nakamura is with the Department of Computer Science, Federal University of Amazonas, Av. Gen. Rodrigo Octavio, 3000, Coroado, 69077-000, Manaus, AM, Brazil, and Center of Analysis, Research and Technological Innovation Foundation (FUCAPI), Av. Gov. Danilo de Matos Areosa, 381, Distrito Industrial, 69075-351, Manaus, AM, Brazil. E-mail:
[email protected]. . A.A.F. Loureiro is with the Department of Computer Science, Federal University of Minas Gerais, Av. Antonio Carlos, 6627, Pampulha, 30123-970, Belo Horizonte, MG, Brazil. E-mail:
[email protected]. Manuscript received 31 May 2007; revised 8 May 2008; accepted 20 May 2008; published online 11 Dec. 2008. Recommended for acceptance by G. Constantinides. For information on obtaining reprints of this article, please send e-mail to:
[email protected], and reference IEEECS Log Number TC-2007-05-0194. Digital Object Identifier no. 10.1109/TC.2008.221. 0018-9340/09/$25.00 ß 2009 IEEE
[11], mobile location management [12], media access control [13], security [14], and density control [15]. The definition of a localization system for sensor nodes [16], [17], [18], [19], [20], [21], [22], [23], [24], [25] is also one of the prerequisites needed in order for many applications of WSNs to become viable. The localization problem consists of identifying the physical location (e.g., latitude, longitude, and altitude) of the sensor nodes. The importance of this problem arises from the need to name the gathered data [26] and associate events with their location of occurrence [27]. In addition, some routing algorithms use location information to improve their performance, an example of which is the Geographical and Energy-Aware Routing (GEAR) algorithm [28] that optimizes the process of finding sources by using geographically scoped queries. However, depending on the accuracy of location information, such queries may not reach the correct nodes. In a recursive localization system, such as Recursive Position Estimation (RPE) [21] or the Ad Hoc Localization System (AHLoS) [18], a node estimates its location based on the position information of three reference nodes (neighbors that know their positions). Once its position is estimated, the node becomes a reference and broadcasts its own location information to assist other nodes in estimating their positions. In this work, we propose a different recursive localization system: Directed Position Estimation (DPE). The main idea of DPE is to make the recursion of such systems follow a determined and known direction. In this way, a node can estimate its position using only two reference neighbors. This approach leads to a localization system that can work in a low-density sensor network. In addition, the controlled way in which the recursion is made also leads to a system with fewer errors that are also more predictable. This method requires fewer resources than the triangulation, trilateration, or multilateration methods. Published by the IEEE Computer Society
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
678
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
MAY 2009
Fig. 1. Several areas of the WSNs that work together in order to achieve one common goal: to monitor an area of interest.
In the proposed scheme, GPS-enabled nodes may or may not be used. If no GPS is available, the recursion origin can be used as a relative coordinate system. This approach can be useful for routing algorithms that use location information. Some GPS-enabled beacons can be used to transform the relative coordinate system into a global one when events need to be associated with their geographic location. This work makes three contributions to the area of localization systems in WSNs. The main contribution is the proposal and empirical evaluation of DPE. Second, we propose the division of localization systems into three distinct components. We show how each of these components can affect the final localization error and conclude that they should be studied and analyzed separately. Third, the effects of the localization errors on geographic algorithms are analyzed. We simulate two known geographic algorithms [29], [15] that have not been analyzed in the presence of real localization errors (i.e., using the positions resulting from a proposed localization algorithm). The rest of this work is organized as follows: Section 2 presents an overview of the localization systems for WSNs and shows how these systems can be divided into components. Section 3 describes the proposed schema, DPE, which is evaluated though simulations in Section 4. In Section 5, we discuss other solutions that are available for the localization problem. Section 6 presents our conclusions and future directions.
2
MAIN COMPONENTS OF LOCALIZATION SYSTEMS IN WIRELESS SENSOR NETWORKS
The localization problem consists in finding the geographic location of nodes in a WSN. The location of a node can be computed by a central unit (the sink node) [17] or in a distributed manner [20], [21], [18], [22], the latter of which is more common in WSNs. In the next section, we will briefly define our network model, as well as the localization problem in WSNs, while in Section 2.2, we will show the components on which localization systems are based.
2.1 Problem Statement A WSN can be composed of n nodes, with a communication range of r, that are distributed in a two-dimensional squared sensor field Q ¼ ½0; s ½0; s. For the sake of simplification, we consider symmetric communication links, i.e., for any two nodes u and v, u reaches v if and only if (iff) v reaches u with the same signal strength w. Thus, we represent the network by the euclidean graph G ¼ ðV ; EÞ with the following properties: V ¼ fv1 ; v2 ; . . . ; vn g is the set of sensor nodes. hi; ji 2 E iff vi reaches vj , i.e., the distance between vi and vj is less than r. . wðeÞ r is the weight of edge e ¼ hi; ji, i.e., the distance between vi and vj . In this paper, the term broadcast is used to indicate a node sending a message to all of its neighbors in a single packet, while the term flooding is used to indicate the case where all nodes receiving a packet retransmit it once to all of their neighbors (using broadcast). Thus, the communication cost of a broadcast is only Oð1Þ, while the communication cost of flooding is OðnÞ. Some terms can be used to designate the state of a node. . .
Definition 1 (unknown nodes—U). Also known as free or dumb nodes, this term refers to the nodes in the network that do not know their localization information. To allow these nodes to estimate their positions is the main goal of a localization system. Definition 2 (settled nodes—S). These nodes were initially unknown nodes that have managed to estimate their positions by using the localization system. The number of settled nodes and the estimated position error of these nodes are the main parameters for determining the quality of a localization system. Definition 3 (beacon nodes—B). Also known as landmarks or anchors, these are nodes that do not need a localization system in order to estimate their physical positions. Their localization is obtained by manual placement or by external means such as GPS. These nodes form the basis of most localization systems for WSNs.
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
679
2.2.1 Distance Estimation This component is responsible for estimating the distances between two nodes. This information is used by the other components of the localization system. Some techniques used to estimate distances include RSSI (Fig. 3a) [30], [31], Time of Arrival (ToA—Fig. 3b) [32], and TDoA (Fig. 3c) [33], [34], [35]. 2.2.2 Position Computation This component is responsible for computing a node’s position based on the information available (e.g., distances and positions of neighbors). Some of the techniques used to compute positions include trilateration (Fig. 4a), multilateration (Fig. 4b), and triangulation (Fig. 4b).
Fig. 2. The division of localization systems into three distinct components: distance estimation, position computation, and localization algorithm. The arrows indicate the dependency relations, i.e., the information flow from one component to another.
Definition 4 (reference nodes—R). These are the nodes from which localization information will be used by unknown nodes to estimate their locations. A reference node must also be a beacon or settled node. The localization problem can then be defined as follows: Definition 5 (localization problem). Given a multihop network G ¼ ðV ; EÞ and a set of beacon nodes B and their positions ðxb ; yb Þ, for all b 2 B, we want to find the position ðxu ; yu Þ of as many u 2 U as possible, transforming these unknown nodes into settled nodes—S.
2.2 The Basic Components of Localization Systems In this work, we propose the division of localization systems into three distinct components (Fig. 2): distance estimation, position computation, and localization algorithm. Each of these components can affect the final error of a localization system separately. For example, a localization system should achieve better results if the Time Difference of Arrival (TDoA) method is used instead of the Received Signal Strength Indicator (RSSI) method to estimate distances. The same principle applies to the other components. These components can be seen as subareas of the localization problem that need to be studied separately. The following sections define these components.
2.2.3 Localization Algorithm This is the main component of a localization system. It defines how the available information is manipulated in order to allow the nodes in the sensor network to estimate their positions. Some algorithms include the Ad Hoc Positioning System (APS) [20], RPE [21], and the DPE scheme proposed in this work. A recursive localization algorithm is an algorithm that extends position estimation throughout the sensor network. A node that has at least three reference neighbors can estimate its own location through trilateration. Then, this node becomes a reference by broadcasting its location and helping other nodes to estimate their own locations. To start the recursion, usually, a fraction of all nodes (e.g., 5 percent) can determine their positions (e.g., GPS-enabled nodes). An example of such a system is RPE. The RPE algorithm can be divided into four phases, as depicted in Fig. 5. In the first phase, beacon nodes start broadcasting their position information so that they can be used as reference nodes. In the second phase, a node estimates its distance to the reference nodes by using, for example, the RSSI. In the third phase, the node computes its position by using, for example, trilateration and becomes a settled node. In the final phase, the node becomes a reference and broadcasts its estimated position to assist its neighbors with their position estimations.
3
THE DIRECTED POSITION ESTIMATION ALGORITHM
By adding some restrictions to a recursive localization system, we can make the localization recursion start from a single point and follow a determined and known direction (Fig. 6a).
Fig. 3. Distance estimation methods. Some methods like RSSI provide very inaccurate distance estimation, while others like TDoA provide accurate estimation but require extra hardware in order to work. (a) RSSI: the signal is sent with a determined strength that decreases as the distance to the receptor increases. (b) ToA: the time that the signal takes to leave the sender and reach the receptor is estimated. The distance is derived from this time. (c) TDoA: the difference of the time of arrival of two signals sent simultaneously is estimated to derive the distance. Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
680
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
MAY 2009
Fig. 4. Position computation methods. The method used depends on the information and processor resources available. (a) Trilateration: the position is the intersection of three circles formed by the positions and the estimated distances to three reference nodes. (b) Multilateration: uses the same principle as trilateration, but more than three references points can be used, and an overdetermined system is computed. (c) Triangulation: the angle of arrival of the received signal is estimated, and the node position is computed through trigonometrical relations.
Fig. 5. Example and phases of RPE.
Once this behavior is guaranteed, it is possible to estimate a node’s position using only two reference neighbors. When a node has the position information of only two reference neighbors, a pair of possible points results from the position computation procedure: one is the correct position of the unknown node, and the other is a wrong estimate (Fig. 6b). The decision of which point to use is a crucial factor of the proposed scheme. A wrong choice may lead to an error of almost twice the communication range.
Once the direction of the localization recursion is kept stable, it is easy to choose between the two possible solutions: the most distant point from the recursion origin is the right position of the unknown node.
3.1 The DPE Algorithm In this section, we will show how the proposed scheme operates. The algorithm is divided into four phases (Fig. 7). In the first phase, the beacon nodes start the recursion. In
Fig. 6. (a) The beacon structure doing a directed localization recursion. (b) A position estimate using only two reference neighbors. A pair of possible solution result from the system. The right position of the node is the most distant point from the recursion origin. Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
681
Fig. 7. Phases of DPE. (a) First, the beacon structure starts the recursion by broadcasting the position information of the beacon nodes. (b) A node chooses its two reference points and estimate the distances to these points. (c) The position computation is done. (d) This node broadcasts its newly estimated position in order to help the other nodes in estimating their own positions.
the second phase, a node determines its (two) reference points. In the third phase, the node estimates its position and then becomes a reference by sending this information to its neighbors (fourth phase).
3.1.1 Phase 1—Starting the Recursion from a Single Point First, we need to ensure that the recursion starts from a single location. To accomplish this task, we use the beacon structure depicted in Fig. 6a in which four beacons are at a given distance (e.g., 5 m) from a central point (the recursion origin) and the angle between each pair of neighbor beacons is known (e.g., 90 degrees). Then, the base of the relative coordinate system is formed by the positions of the recursion origin (0, 0), the first beacon node (5, 0), and the second beacon node (0, 5). To start the recursion, the beacon nodes send a packet containing their position information, as depicted in Fig. 7a and shown in Algorithm 1 in lines 3-7. Algorithm 1. DPE Localization Algorithm . Variables: 1: positionsi ¼ ; {Set of received positions.} {Set of reference nodes.} 2: referencesi ¼ ; . Input: 3: msgi ¼ nil. Action: {If this node is a beacon node.} 4: If ni 2 B then 5: ðxi ; yi Þ :¼ getGpsP ositionðÞ; 6: Send positionðxi ; yi Þ to all nj 2 Neigi . {Start the recursion.} 7: end if . Input: 8: msgi ¼ positionðxk ; yk Þ such that distk ¼ distanceEstimationðmsgi Þ. Action: {If this node is an unknown node.} 9: if ni 2 U then 10: positionsi :¼ positionsi [ fðxk ; yk ; distk Þg;
11: [Re]Start waitT imer. 12: end if . Input: 13: waitT imer timeout. Action: 14: if sizeðpositionsi Þ >¼ 2 then {If there is enough positions.} 15: referencesi :¼ chooseT woBestP ositionsðpositionsi Þ {Select pair of References.} 16: ðxi ; yi Þ :¼ mostDistantF romOrigin ðintersectCirclesðreferencesi ÞÞ; {Compute Position.} 17: Send positionðxi ; yi Þ to all nj 2 Neigi . {Become a reference node.} 18: end if
3.1.2 Phase 2—Selecting Which Pair of References to Use Unknown nodes receiving positioning packets store the received data (lines 8-12) and wait for a determined time (waitT imer in Algorithm 1) for more localization packets. When a node has received location information from two or more reference neighbors (beacons or settled nodes), it can estimate its own position (Fig. 7b). The choice of which pair of nodes to use (when there are more than two references) is also an important issue in the DPE algorithm. We are interested in the pair of references that leads to the right solution. Thus, instead of merely selecting the nodes with lower residual errors (see the next section), we select the pair of nodes with the largest distance between them and that is closest to the recursion origin (line 15). This selection can be done easily by comparing the distances between the received positions of the reference nodes and the known recursion origin (0, 0 in this case). It is important to choose distant reference nodes to facilitate the process of estimating the position, which is the next phase of the DPE algorithm. 3.1.3 Phase 3—Estimating the Position The third phase is to estimate the position of the node, as depicted in Fig. 7c and shown in line 16 of Algorithm 1. This
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
682
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
MAY 2009
Fig. 8. Scenarios that could lead to wrong position estimates or to the loss of the recursion direction. (a) An unknown node computing its position when one of the two reference nodes is more distant to the recursion origin than this node. (b) An unknown node computing its position when the two reference nodes are aligned to the line of the recursion origin.
position is estimated, as shown in Fig. 6b, by intersecting the two circles and choosing the most distant point from the recursion origin (which has the position 0, 0). This is an advantage of the DPE algorithm, as it uses fewer processor resources (about 20 flops) than other methods like the least squares method (about 32 flops for three references). In this phase, we need to determine whether the solution is consistent enough to ensure that we choose the right position (as explained in “Avoiding the Wrong Solution” further in this section). When a node has the position information of only two beacons and no other position information about any other reference nodes (e.g., other beacons or settled nodes), it is not possible to guarantee which solution is correct since the node could be either inside or outside the beacon structure. In these cases, we cannot simply accept the most distant solution; instead, we wait for more information from another beacon or from a newly settled node (which will be used as a reference node) and then use the residual error (see the next section) to choose the correct position. This shows the importance of having a consistent beacon structure.
3.1.4 Phase 4—Becoming a Reference Node When a node estimates its position, it can become a reference node by sending a broadcast packet with its position and its residual error. This phase, depicted in Fig. 7c and shown in line 17 of Algorithm 1, characterizes the recursive behavior of the system. Quantifying the Position Error. The residual error can be used as a measure of confidence in the estimated position. The residual error for an estimated position ð^ x; y^Þ is defined as 2 X qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ðxi x^Þ2 þ ðyi y^Þ2 di ; ð1Þ residual ¼ i 2 refset
where ðxi ; yi Þ is the ith reference position, and di is the distance measured by means of the RSSI. In other words, the residual error is the sum of the squared differences between the distance using the estimated position and the distance acquired using the RSSI measurement. Beacon nodes have no residual errors associated with their positions.
Avoiding the Wrong Solution. Even though the recursion starts from a single point, the direction of the recursion can still become wrong, resulting in an erroneous position estimate. To assure the correct estimation and maintain the right direction of the recursion, we need to avoid two possible scenarios: 1.
2.
when one of the two reference nodes is more distant to the recursion origin than the unknown node (Fig. 8a) and when the two reference nodes are aligned to the line of the recursion origin (Fig. 8b).
In both cases, we cannot guarantee which of the two possible solutions of the estimation is correct, and scenarios like these indicate that the direction of the recursion has become incorrect. In these cases, the unknown node may wait for other reference nodes and then use this new information to estimate its position. To detect these two scenarios using only local information, we need to compare the distances from the two possible solutions to the recursion origin to the distances from the reference nodes to the recursion origin. In the first scenario (Fig. 8a), we can see that the distances from the two possible solutions to the recursion origin are smaller than the distance from Reference Node 2 to the same point. In the second scenario (Fig. 8b), the distances from the two possible solutions are greater than the distance from the reference nodes. Thus, to avoid both scenarios, we need to check two conditions: 1) whether the distance to the recursion origin of one of the possible solutions is greater than the distance of the most distant reference node and 2) whether the distance of the other possible solution is smaller than the distance of the most distant reference node, as shown in Fig. 6b. In other words, we want the most distant reference node to be between the two possible solutions. When an unknown node has more than two reference neighbors, it can use the residual error to check the position estimate. A node can detect an inconsistency when one of the possible solutions has the larger distance to the recursion origin but it also has a higher residual error when compared to the other possible solution. The ideal
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
case is that the most distant solution, which is considered the right position of the node, has the lower residual error.
3.2 Complexity Analysis In this section, we will briefly analyze the complexity of our algorithm in terms of communication requirements, processor resources, and time consumption: .
.
.
4
Communication complexity. In the DPE algorithm, beacon nodes (from the beacon structure) start the recursion by broadcasting their localization packets. Neighboring nodes that were able to estimate their positions broadcast packets containing their estimated positions in order to be used as references by the unknown nodes. This recursion continues until all nodes have estimated their positions. In this scheme, each node will send only one packet during the whole algorithm execution. Thus, the communication complexity of our algorithm is only OðnÞ, where n is the number of nodes in the network. We can see the DPE algorithm as single directed flooding from the recursion origin toward the network borders. Computational complexity. As mentioned before and shown in Fig. 6b, in the DPE algorithm, a position is computed by intersecting the two circles formed by two references and choosing the most distant solution from the recursion origin. These procedures are quite simple and can be done using a fixed number of only 20 flops in each node. Time complexity. The execution time of our algorithm is proportional to the network size and to the time that a node waits for more packets from its neighbors (waitT imer in Algorithm 1). In our experiments, which will be presented in the next section, we use a waitT imer of 0.5 second. We also implement a random transmission time of half this waitT imer in order to avoid collisions. Even with all of these relative superestimated timers, we have a time complexity of about 1.7 seconds per hop, which shows that the algorithm can finish quickly even in large-scale networks.
PERFORMANCE EVALUATION
In this section, we evaluate our proposed scheme, DPE, and compare it to RPE [21], a similar recursive scheme that uses random distributed beacons and at least three reference neighbors to estimate a position.
4.1 Methodology The evaluation is performed through simulations using the Ns-2 simulator [36]. The communication range is fixed at 15 m for all nodes. For RPE, 5 percent of the nodes are beacons, while for DPE, we have only four beacons, as depicted in Fig. 6a. Two scenarios are evaluated for DPE: In the first scenario, the beacon structure is deployed at the center of the sensor field, while in the second scenario, it is deployed at the border. We can see these scenarios as the best and worst cases of deployment. A random deployment of the beacon structure generates intermediate results between the two scenarios. To simulate the RSSI inaccuracy, each
683
range sample is disturbed by a normal distribution with the actual distance as the mean and 10 percent of this distance as the standard deviation. Each point in the graphs represents the average of 33 random topologies of 150 sensor nodes in a 70 70 m2 sensor field. The error bars represent the confidence interval for 95 percent of confidence.
4.2 Geographic Distribution of the Error An illustration of how the position errors are distributed along the sensor field is provided in Fig. 9. Fig. 9a depicts the error distribution resulting from RPE, where the peaks indicate nodes that are distant from their real position. Compared to the original RPE algorithm, Figs. 9c and 9e show that DPE reduces the number of peaks and also maintains a controlled increase in the error, so that the more distant from the recursion origin a node is, the greater is its position error. Therefore, the distance to the recursion origin can be used as an indication of the position error. This behavior occurs as a consequence of the directed recursion and the method used to choose the reference nodes in the second phase of DPE. 4.3 Error Directions and Correlations The two points obtained by the real position of a node and its estimated position can define an error vector with a magnitude and a direction. Basically, the correlation between the errors of two nodes is the level of linear dependence of their error vectors. Therefore, an error is not defined only by the distance between the calculated and actual position of a node. This error is also defined by its direction. Analyzing and knowing the correlation between the errors’ directions obtained by the localization algorithms can be very useful, especially in algorithms like the geographic routing algorithms that can be influenced by the error correlation levels. Figs. 9b, 9d, and 9f depict the true location of nodes with an error vector pointing to the estimated position for RPE and DPE (scenarios 1 and 2). These results use the same information used by those explained in the previous section. Squared points indicate the beacon nodes. A behavior can be observed in these graphics: nodes that are close to each other have correlated errors. This information is very important since it shows that a node’s localization error cannot be simulated only by using, for example, a normal distribution with random directions. Even a localization scheme with a GPS receiver at each sensor node results in correlated errors [31], and ignoring these correlations can result in inconsistent experiments, especially in routing algorithms. This behavior shows the importance of using real localization systems to simulate geographic algorithms, as is done in this work. 4.4 The Error Distribution The distribution of position errors among the sensor nodes depicted in Figs. 10a and 10b. Fig. 10a depicts the probability distribution of the nodes’ position error. The cumulative error, depicted in Fig. 10b, identifies the percentage of nodes (y-axis) with an error smaller than a parameterized value (x-axis). A sharp curve means that the majority of nodes has a small error.
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
684
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
MAY 2009
Fig. 9. Geographic distribution of the error (a) using the RPE algorithm, (c) using DPE in the first scenario, and (e) using DPE in the second scenario. Also, the corresponding correlation of the error (b) using the RPE algorithm, (d) using DPE in the first scenario, and (f) using DPE in the second scenario.
We can see that the best results are achieved by the DPE algorithm with controlled recursion and its choice of references (RPE chooses the references with smaller residual errors). Another aspect that decreases the localization error in comparison to the RPE algorithm is the fact that the DPE algorithm requires fewer reference nodes and, thus, fewer RSSI estimations, making this algorithm less susceptible to these inaccurate distance estimations. From the graph, it is also possible to see how the position of the beacon structure (scenarios 1 and 2) can affect the position error of the nodes.
4.5 The Impact of the Network Density The impact of the network density is evaluated by increasing the network density from 0.005 to 0.1 nodes=m2 . The increase in this value results in more neighbors and, potentially, more reference points for estimating a node’s position. In low-density networks, the number of settled nodes (nodes that have estimated their positions) decreases since the nodes do not have enough reference neighbors to estimate their own position (and thus, they do not become references). Fig. 11a shows that DPE can work in lower density networks compared to RPE. In low densities such as
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
685
Fig. 10. Simulation results. (a) Probability distribution of the error. (b) Cumulative error.
0.01 and 0.015 nodes=m2 , the number of settled nodes increases by almost 40 percent. In Fig. 11b, we can see the position error decreasing as the network density increases.
4.6 The Impact of the RSSI Inaccuracy The distance estimated using RSSI measurements is not accurate. Depending on the environment, such an inaccuracy may lead to greater errors in the estimated positions.
We evaluate this impact by adding some noise to the real distances. This noise is generated by a normal distribution with the actual distance as the mean and a percentage of this distance as the standard deviation [37], [21]. Fig. 11c compares the increase in the standard deviation of the normal distribution (used to simulate the noise) from 0 to 25 percent of the actual distance in the RPE and DPE algorithms. This figure shows that the DPE algorithm
Fig. 11. Simulation results. (a) Impact of the network density in the error. (b) Impact of the network density in the number of settled nodes. (c) Impact of the RSSI inaccuracy. Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
686
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
MAY 2009
Fig. 12. Simulation results. (a) Impact of the network scale using only one beacon structure. (b) Impact of the network scale using more than one beacon structure.
seems to be more influenced by the RSSI inaccuracy, although it still has better results in most cases.
4.7 The Impact of the Network Scale Scalability is evaluated by varying the network size from 100 to 350 nodes with a constant density of 0.03 nodes=m2 . Thus, the sensor field is resized according to the number of sensor nodes. The number of beacons in the RPE algorithm is always 5 percent of the nodes. Thus, this number increases as the number of nodes is increased. Fig. 12a compares the RPE algorithm to the DPE algorithm when only one beacon structure (with four beacons) is used by the DPE method. We can see the error increasing more quickly in the DPE algorithm when the number of beacons remains constant but the number of nodes increases. On the other side, when we add another beacon structure (with four beacons) for each group of 100 nodes (e.g., two structures for 200 nodes), the error remains almost constant as depicted in Fig. 12b. In this last case, we can see that the DPE algorithm decreases the error by at least 30 percent. 4.8
Deducing a Node’s Position Error by Its Distance to the Recursion Origin As previously mentioned (and shown in Figs. 9c and 9e), in the DPE algorithm, we can estimate the position error of a node by knowing its distance to the recursion origin. This error is depicted in Fig. 13a using 0.05, 0.10, and 0.15 of the distance as the standard deviation of the RSSI noise. A similar result, depicted in Fig. 13b, shows the positioning error with reference to the number of hops to the recursion origin, which seems to be a more reliable source for deducing the nodes’ positioning error. It is important to note that it is not possible to make this deduction in RPE since the beacon nodes are deployed randomly and there is no recursion origin. 4.9 The Influence of the Beacon Structure Some features of the beacon structure, like the number of beacons and their distance to the center, can affect the final localization error of the DPE algorithm. Fig. 13c depicts the localization error by varying the number of beacons in the beacon structure, showing that having fewer than four
nodes can increase this error, while having more than four does not help in decreasing it. One of the main problems in the existing geographic algorithms is that most of them do not consider localization inaccuracies, which are present even in the simplest solutions such as using GPS receivers. This section has two main goals: 1) to compare the performance of the geographical algorithms when using our proposed DPE algorithm and RPE as the source for localization information and 2) to show the effect of inaccurate position information on the geographic algorithms. The next section shows the effect of the localization systems on the routing algorithms, while Section 4.11 shows the effect on density control algorithms. Fig. 13d shows the localization error in relation to beacons’ distance to the center of the beacon structure. The more distant the beacons are, the less recursion the system will have, thereby decreasing the localization error. However, a large structure may not be feasible.
4.10 The Effect on Geographic Routing Algorithms Geographic algorithms have become more popular, especially in sensor networks, due to their ability to use the known positions of nodes to reduce communication. An example of this class of algorithms is the geographic routing algorithms [29], [38], [39]. These algorithms have low route discovery overhead, and basically, a node only needs to store information about its neighbors. For these reasons, geographic routing is the protocol of choice for many emerging applications in sensor networks [40]. One of the main drawbacks of the proposed geographic algorithms is that most of them do not consider the localization inaccuracy, which is present even when we use a GPS receiver at each sensor node. In this work, we analyze the effects of the localization errors in two types of geographic algorithms: the geographic routing and density control algorithms (next section). To analyze the effects of the localization inaccuracy on the geographic routing algorithms, we simulated the GEAR algorithm [29] using the node position provided by the localization systems RPE and DPE (scenarios 1 and 2).
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
687
Fig. 13. Simulation results. Error in relation to changes in (a) the distance to the recursion origin, (b) the number of hops to the recursion origin, (c) the number of beacons, and (d) the distance of the beacons to the recursion origin.
GEAR is an example of the algorithm Greedy Forward [41]1 that uses an associated cost for each node to allow the packet to be forwarded around holes and also to distribute the routing work among the nodes. GEAR uses geographic regions to disseminate the sink’s interests [41]. Furthermore, this interest is received not by only one node but by a set of nodes in a certain region. A node decides whether it should receive a packet depending on whether it is inside or outside the region. Depending on the localization error, the routing algorithm can make a right or wrong decision: Right decision. A node that should receive the packet has received it, or a node that should not receive the packet did not receive it. . Wrong decision. A node that should receive the packet did not receive it, or a node that should not receive a packet did receive it. Fig. 14a depicts the difference between the right decisions and the wrong decisions taken by the GEAR algorithm using the RPE and DPE (scenarios 1 and 2) algorithms. This graphic shows how a simple procedure like a node deciding whether it is inside or outside a region can become erroneous in the presence of localization errors. As we can see, in many cases, the precision of the packet delivery is less than 50 percent. .
1. In this routing algorithm, the packet is forwarded to the neighbor nearest to the destination node.
In the Greedy Forward mechanism, each node chooses the nearest neighbor to the destination node. In the presence of localization errors, these choices can be wrong. Fig. 14b depicts the fraction of wrong choices made by the GEAR when using the localization algorithms. This graphic shows how the choices at each node can be wrong in the presence of localization errors. This effect results in larger paths from the sink to the region of interest.
4.11 The Effect on Density Control Algorithms Another class of algorithms that can use node position information to increase its performance is the density control algorithm [15]. These algorithms are also important to sensor networks since they allow redundant nodes to be turned off. To analyze the effects of the localization inaccuracy on density control algorithms, we simulated the Geographical Adaptive Fidelity (GAF) algorithm [15], a known protocol that uses the positions of nodes to decide whether a node should be awake or turned off. We also used the node position information provided by the localization systems RPE and DPE (scenarios 1 and 2). GAF divides the sensor field into grids so that every node in one grid can reach every node in the neighboring grids. In this way, only one node needs to stay awake in each grid. To compute its grid, a node uses its known position. The computation of this grid can become wrong in the presence of localization errors. Fig. 15a depicts the
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
688
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
MAY 2009
Fig. 14. Simulation results of the GEAR experiments. (a) Precision of the interest delivery. (b) Precision of the hop selection.
fraction of nodes that computed their grids correctly in the presence of localization errors. As we can see, a localization algorithm with fewer errors is capable of providing better performance to the GAF algorithm. Two problems arise from the wrong grid calculation. First, nodes that should be sleeping remain awake. Second, nodes that should be awake are turned off. The last problem seems to be more critical, since part of the sensor field could become uncovered by sensor nodes. Fig. 15b depicts the fraction of grids that become uncovered by nodes after the execution of the GAF algorithm. As we can see, in many cases, more than 30 percent of the grids were uncovered by a sensor node, which is impractical in most scenarios.
5
RELATED WORK
Cricket [33] combines active beacons and passive ultrasonic receivers to provide a localization system. Cricket is designed for mobile nodes in an indoor environment, but it may be used with static nodes. The active beacons broadcast their location information over a radio frequency channel together with ultrasonic pulses. The other nodes use the TDoA method to estimate the distance to a beacon. In the Cricket solution, beacon nodes need to be placed statically to cover all of the sensor field, i.e., a beacon grid is built to cover
the whole sensor field. In the DPE algorithm, the beacon structure can be strategically placed or deployed with the regular nodes. Thus, the DPE algorithm is more suitable for outdoor environments. TDoA, used by Cricket, can also be used by DPE to enhance its distance measurements resulting in better position estimates. GPS-less localization [42] uses a fixed number of beacons with overlapping regions of coverage. The beacon nodes broadcast radio signals periodically. The other nodes use connectivity information to determine their proximity to a subset of beacon nodes and localize themselves to the centroid of the selected beacons. The principal drawbacks of a GPS-less localization is that regular nodes must be in the communication range of at least three beacon nodes, just like in the Cricket solution, and that it requires a beacon grid that covers the whole sensor field. This approach leads to a larger number of beacon nodes compared to the DPE algorithm. APS [20] is a distributed hop-by-hop positioning algorithm that works as an extension of distance vector routing and GPS positioning to provide a localization system in which a limited fraction of nodes have the self-location capability. In APS, each beacon broadcasts a correction factor to help other nodes deal with the propagated errors. These correction factors indicate the difference between multihop distances that a beacon obtains using its own
Fig. 15. Simulation results of the GAF experiments. (a) Wrong grid allocation. (b) Grid coverage. Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
known position. This technique needs a similar number of beacon nodes compared to DPE, but the localization error is larger because APS uses the number of hops (or the sum of RSSI) to estimate the distances from the beacons. RPE [21] recursively computes the node location information without the need for strategic beacon placement. A similar algorithm is the Localization using Sweeps [43]. These approaches are very similar to DPE, but it uses beacons that are randomly deployed. A number of beacons (usually 5 percent of the nodes) must be deployed to ensure that at least in one place, an unknown node will have three or more beacon neighbors so that the recursion can start. Since there is no known direction to the recursion, an unknown node needs at least three reference nodes to estimate its own location using trilateration. Both RPE and DPE have the problem of propagating the position error throughout the network. However, in DPE, this error is reduced by selecting the best reference neighbors, and it can also be somewhat indicated by the distance of the node from the recursion origin. AHLoS [18] is designed to provide a localization system to a special node, called Medusa, that requires four ultrasound transmitters and four receivers. Although AHLoS works both indoors and outdoors, the additional hardware increases the network cost. This system also has a recursive behavior and can thus take advantage of the proposed DPE scheme. GPS-free positioning [44] proposes a distributed infrastructure-free localization algorithm that does not rely on GPS. The key point of the algorithm is to show that it is possible to build a relative coordinate system without centralized knowledge of the network topology. The DPE algorithm also uses a relative coordinate system that is automatically known by all of the settled nodes to be the recursion origin. No extra packets are needed to discover or elect a coordinate system in DPE. Some experiments with geographic routing algorithms in the presence of localization errors have been presented in [45] and [40]. In [45], the Target Estimation and Object Tracking algorithms are also analyzed with localization errors. However, in both cases, the localization error is simulated only by disturbing the real positions of the nodes with a fraction of the localization range. One contribution of this work is to show that this type of error simulation is not realistic, since it does not consider the correlation and distribution of the error. Furthermore, to the best of our knowledge, this paper is the first to evaluate these geographic algorithms using real proposed localization systems. An approach to divide localization systems into phases has been proposed by Langendoen and Reijers [37], who identified three distinct phases in localization systems: determine the distances to beacons, derive positions, and refine positions. In this work, we do not divide the localization systems into phases but rather into components, which, we believe, can be more widely applied to a greater number of proposed localization systems. While the phase classification proposed in [37] can only be applied to distributed localization systems, we believe that the component classification proposed in this work can be used in almost any localization system.
6
689
FINAL REMARKS
This work has presented the DPE algorithm, a directed recursive localization system for WSNs. We have shown how this method allows an unknown node to correctly estimate its position based on the location information of only two reference neighbors and the direction of the recursion. The simulation experiments have shown that compared to RPE [21], the DPE algorithm works in lower density sensor networks, reduces location errors due to its reference selection phase, requires fewer processor resources, uses fewer beacon nodes, and also indicates the node location error based on the node’s distance to the recursion origin. The use of the beacon structure does have some implications on its applicability, but we believe that the possibility of the random deployment of this structure makes this scheme very applicable. This work has also proposed a more generic way to divide localization systems into three distinct components: the distance estimation, the position calculation, and the localization algorithm. We have shown how each of these components can affect the final localization error and, thus, that they should be studied and analyzed separately. Finally, the effects of the localization errors on geographic algorithms have been analyzed using real localization systems. We simulated two geographic algorithms that have not been studied in the presence of real localization errors: GEAR, a geographic routing algorithm, and GAF, a density control algorithm. The results show the importance of having more accurate localization systems and also the importance of proposing geographic algorithms that consider the localization inaccuracy.
ACKNOWLEDGMENTS This work was partially supported by NSERC Grants, the Canada Research Chairs Program, the Early Researcher Award, the Ontario Distinguished Researcher Award, the Brazilian Research Council (CAPES), and the Brazilian National Council for Scientific and Technological Development (CNPq) under processes 55.4087/2006-5, 47.4194/ 2007-8, and 57.5808/2008-0.
REFERENCES [1] [2] [3] [4]
[5] [6] [7]
I.F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cyirci, “Wireless Sensor Networks: A Survey,” Computer Networks, vol. 38, no. 4, pp. 393-422, Mar. 2002. A. Boukerche, “Algorithms and Protocols for Wireless Sensor Networks,” Wiley & Sons, 2008. A. Boukerche, Handbook of Algorithms for Wireless Networking and Mobile Computing. Chapman & Hall/CRC, 2005. S. Nikoletseas, “Models and Algorithms for Wireless Sensor Networks (Smart Dust),” Proc. 32nd Conf. Current Trends in Theory and Practice of Computer Science (SOFSEM ’06), pp. 64-83, 2006. M. Ilyas and I. Mahgoub, Handbook of Sensor Networks: Compact Wireless and Wired Sensing Systems, chapter 20, CRC Press LLC, 2004. A. Boukerche, S. Nikoletseas, “Protocols for Data Propagation in Wireless Sensor Networks,” Wireless Communication Systems and Networks, M. Guizani, eds., Plenum Press, 2004. S. Nikoletseas and P.G. Spirakis, “Efficient Information Propagation Algorithms in Smart Dust and Nanopeer Networks,” Proc. IST/FET Int’l Workshop Global Computing (GC ’04), pp. 127-145, Mar. 2004.
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
690
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15] [16]
[17] [18]
[19] [20]
[21] [22]
[23]
[24] [25] [26]
[27] [28]
[29]
IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 5,
A. Sekhar, B.S. Manoj, and C.S.R. Murthy, “A Novel Solution for Time Synchronization in Wireless Ad Hoc and Sensor Networks,” Proc. 12th Int’l Conf. High Performance Computing (HiPC ’05), pp. 333-342, Dec. 2005. A. Boukerche and D. Turgut, “Secure Time Synchronization Protocols for Wireless Sensor Networks,” IEEE Wireless Comm., vol. 14, no. 5, pp. 64-69, Oct. 2007. A. Boukerche, H.A.B.F. de Oliveira, E.F. Nakamura, and A.A.F. Loureiro, “A Novel Location-Free Greedy Forward Algorithm for Wireless Sensor Networks,” Proc. IEEE Int’l Conf. Comm., pp. 2096-2102, May 2008. A. Boukerche, H.A.B.F. de Oliveira, E.F. Nakamura, and A.A.F. Loureiro, “A Novel Lightweight Algorithm for Time-Space Localization in Wireless Sensor Networks,” Proc. 10th ACM-IEEE Int’l Symp. Modeling, Analysis and Simulation of Wireless and Mobile Systems (MSWiM ’07), pp. 336-343, Oct. 2007. A.Y. Zomaya, M. Haydock, and S. Olariu, “Some Observations on Using Meta-Heuristics for Efficient Location Management in Mobile Computing Networks,” J. Parallel and Distributed Computing, vol. 63, no. 1, pp. 33-44, 2003. S. Jayashree, B.S. Manoj, and C.S.R. Murthy, “A Novel Battery Aware MAC Protocol for Ad Hoc Wireless Networks,” Proc. 11th Int’l Conf. High Performance Computing (HiPC ’04), pp. 19-29, Dec. 2004. T. Zia and A.Y. Zomaya, “Security Issues in Wireless Sensor Networks,” Proc. Int’l Conf. Systems and Networks Comm. (ICSNC ’06), p. 40, Oct. 2006. Y. Xu, J.S. Heidemann, and D. Estrin, “Geography-Informed Energy Conservation for Ad Hoc Routing,” Proc. ACM MobiCom ’01, pp. 70-84, 2001. A. Boukerche, H.A.B.F. de Oliveira, E.F. Nakamura, and A.A.F. Loureiro, “Localization Systems for Wireless Sensor Networks,” IEEE Wireless Comm., special issue on wireless sensor networks, vol. 14, no. 6, Dec. 2007. L. Doherty, K.S. Pister, and L.E. Ghaoui, “Convex Position Estimation in Wireless Sensor Networks,” Proc. IEEE INFOCOM ’01, vol. 3, pp. 1655-1663, Apr. 2001. A. Savvides, C.-C. Han, and M.B. Strivastava, “Dynamic FineGrained Localization in Ad-Hoc Networks of Sensors,” Proc. ACM MobiCom ’01, pp. 166-179, 2001. Y. Shang, W. Ruml, Y. Zhang, and M.P. Fromherz, “Localization from Mere Connectivity,” Proc. ACM MobiHoc ’03, pp. 201-212, 2003. D. Niculescu and B. Nath, “Ad Hoc Positioning System (APS),” Proc. IEEE Global Telecomm. Conf. (GLOBECOM ’01), pp. 2926-2931, Nov. 2001. J. Albowicz, A. Chen, and L. Zhang, “Recursive Position Estimation in Sensor Networks,” Proc. Ninth Int’l Conf. Network Protocols (ICNP ’01), pp. 35-41, Nov. 2001. N. Bulusu, J. Heidemann, D. Estrin, and T. Tran, “SelfConfiguring Localization Systems: Design and Experimental Evaluation,” ACM Trans. Embedded Computing Systems, vol. 3, no. 1, pp. 24-60, Feb. 2004. A. Boukerche, H.A.B.F. de Oliveira, E.F. Nakamura, and A.A.F Loureiro, “A Voronoi Approach for Scalable and Robust DV-Hop Localization System for Sensor Networks,” Proc. 16th Int’l Conf. Computer Comm. and Networks (ICCCN ’07), pp. 497-502, 2007. L. Hu and D. Evans, “Localization for Mobile Sensor Networks,” Proc. ACM MobiCom ’04, pp. 45-57, 2004. M. Rudafshani and S. Datta, “Localization in Wireless Sensor Networks,” Proc. Sixth Int’l Conf. Information Processing in Sensor Networks (IPSN ’07), pp. 51-60, 2007. J. Heidemann, F. Silva, C. Intanagonwiwat, R. Govindan, D. Estrin, and D. Ganesan, “Building Efficient Wireless Sensor Networks with Low-Level Naming,” Proc. 18th ACM Symp. Operating Systems Principles (SOSP ’01), pp. 146-159, 2001. C. Intanagonwiwat, R. Govindan, and D. Estrin, “Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks,” Proc. ACM MobiCom ’00, pp. 56-67, Aug. 2000. J. Heidemann, F. Silva, and D. Estrin, “Matching Data Dissemination Algorithms to Application Requirements,” Proc. First Int’l Conf. Embedded Networked Sensor Systems, pp. 218-229, Nov. 2003. Y. Yu, R. Govindan, and D. Estrin, “Geographical and Energy Aware Routing: A Recursive Data Dissemination Protocol for Wireless Sensor Networks,” Technical Report CSD-TR-01-0023, UCLA Computer Science Dept., 2001.
MAY 2009
[30] V. Ramadurai and M.L. Sichitiu, “Localization in Wireless Sensor Networks: A Probabilistic Approach,” Proc. Int’l Conf. Wireless Networks (ICWN ’03), pp. 275-281, June 2003. [31] M.L. Sichitiu and V. Ramadurai, “Localization of Wireless Sensor Networks with a Mobile Beacon,” Proc. First IEEE Int’l Conf. Mobile Ad Hoc and Sensor Systems (MASS ’04), pp. 174-183, Oct. 2004. [32] B. Hofmann-Wellenho, H. Lichtenegger, and J. Collins, Global Positioning System: Theory and Practice, fourth ed. Springer, 1997. [33] N.B. Priyantha, A. Chakraborty, and H. Balakrishnan, “The Cricket Location-Support System,” Proc. ACM MobiCom ’00, pp. 32-43, Aug. 2000. [34] L. Girod and D. Estrin, “Robust Range Estimation Using Acoustic and Multimodal Sensing,” Proc. IEEE/RSJ Int’l Conf. Intelligent Robots and Systems (IROS ’01), vol. 3, pp. 1312-1320, Oct./Nov. 2001. [35] K. Whitehouse, “The Design of Calamari: An Ad-Hoc Localization System for Sensor Networks,” master’s thesis, Univ. of California at Berkeley, 2002. [36] K. Fall and K. Varadhan, The NS Manual—Notes and Documentation, The VINT Project, http://www.isi.edu/nsnam/ns/ ns-documentation.html, Dec. 2003. [37] K. Langendoen and N. Reijers, “Distributed Localization Algorithms,” Embedded Systems Handbook, R. Zurawski, ed. CRC press, Aug. 2005. [38] B. Karp and H.T. Kung, “GPSR: Greedy Perimeter Stateless Routing for Wireless Networks,” Proc. ACM MobiCom ’00, pp. 243-254, 2000. [39] A. Boukerche, H.A.B.F. de Oliveira, E.F. Nakamura, and A.A.F. Loureiro, “Towards an Integrated Solution for Node Localization and Data Routing in Sensor Networks,” Proc. 12th IEEE Symp. Computers and Comm. (ISCC ’07), July 2007. [40] K. Seada, A. Helmy, and R. Govindan, “On the Effect of Localization Errors on Geographic Face Routing in Sensor Networks,” Proc. Third Int’l Symp. Information Processing in Sensor Networks (IPSN ’04), pp. 71-80, 2004. [41] J.C. Navas and T. Imielinski, “Geocast—Geographic Addressing and Routing,” Proc. ACM MobiCom ’97, pp. 66-76, 1997. [42] N. Bulusu, J. Heidemann, and D. Estrin, “GPS-Less Low Cost Outdoor Localization for Very Small Devices,” IEEE Personal Comm. Magazine, vol. 7, no. 5, pp. 28-34, Oct. 2000. [43] D.K. Goldenberg, P. Bihler, M. Cao, J. Fang, B.D.O. Anderson, A.S. Morse, and Y.R. Yang, “Localization in Sparse Networks Using Sweeps,” Proc. ACM MobiCom ’06, pp. 110-121, 2006. [44] S. Capkun, M. Hamdi, and J.-P. Hubaux, “GPS-Free Positioning in Mobile Ad Hoc Networks,” Cluster Computing, vol. 5, no. 2, pp. 157-167, 2002. [45] T. He, C. Huang, B.M. Blum, J.A. Stankovic, and T. Abdelzaher, “Range-Free Localization Schemes for Large Scale Sensor Networks,” Proc. ACM MobiCom ’03, pp. 81-95, 2003. Horacio Antonio Braga Fernandes de Oliveira received the PhD degree in Computer Science from the Federal University of Minas Gerais, Brazil, with a partial doctoral fellowship at University of Ottawa, Canada, in 2007 and 2008. He is currently an associate professor of computer science in the Department of Computer Science, Federal University of Amazonas (UFAM), Manaus, Brazil. He is also with the PARADISE Research Laboratory, School of Information Technology and Engineering (SITE), University of Ottawa, and with the Department of Computer Science, Federal University of Minas Gerais, Belo Horizonte, Brazil. His research interests include localization and synchronization algorithms, distributed algorithms, and wireless ad hoc, vehicular, and sensor networks. He is the author of several papers in the different areas of his research interests. He was the corecipient of the Best Paper Award at ICC 2008.
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.
DE OLIVEIRA ET AL.: AN EFFICIENT DIRECTED LOCALIZATION RECURSION PROTOCOL FOR WIRELESS SENSOR NETWORKS
Azzedine Boukerche is a full professor and holds a Canada Research Chair position at the University of Ottawa (uOttawa). He is the founding director of the PARADISE Research Laboratory, School of Information Technology and Engineering (SITE), Ottawa. Prior to this, he held a faculty position at the University of North Texas, and he was a senior scientist at the Simulation Sciences Division, Metron Corp., San Diego. He was also employed as a faculty member in the School of Computer Science, McGill University, and taught at the Polytechnic of Montreal. He spent a year at the JPL/NASACalifornia Institute of Technology, where he contributed to a project centered about the specification and verification of the software used to control interplanetary spacecraft operated by JPL/NASA Laboratory. His current research interests include wireless ad hoc and sensor networks, wireless networks, mobile and pervasive computing, wireless multimedia, QoS service provisioning, performance evaluation and modeling of large-scale distributed systems, distributed computing, large-scale distributed interactive simulation, and parallel discrete-event simulation. He has published several research papers in these areas. He served as a guest editor for the Journal of Parallel and Distributed Computing (special issue for routing for mobile ad hoc, special issue for wireless communication and mobile computing, and special issue for mobile ad hoc networking and computing), ACM/Kluwer Wireless Networks, ACM/Kluwer Mobile Networks Applications, and Journal of Wireless Communication and Mobile Computing. He serves as an Associate Editor of IEEE Transactions on Parallel and Distributed systems, IEEE Transactions on Vehicular Technology, Elsevier Ad Hoc Networks, Wiley International Journal of Wireless Communication and Mobile Computing, Wiley’s Security and Communication Network Journal, Elsevier Pervasive and Mobile Computing Journal, IEEE Wireless Communication Magazine, Elsevier’s Journal of Parallel and Distributed Computing, and SCS Transactions on Simulation. He was the recipient of the Best Research Paper Award at IEEE/ACM PADS 1997 and ACM MobiWac 2006, ICC 2008, and the recipient of the Third National Award for Telecommunication Software in 1999 for his work on a distributed security systems on mobile phone operations. He has been nominated for the Best Paper Award at the IEEE/ACM PADS 1999 and ACM MSWiM 2001. He is a recipient of an Ontario Early Research Excellence Award (previously known as Premier of Ontario Research Excellence Award), Ontario Distinguished Researcher Award, and Glinski Research Excellence Award. He is a cofounder of the QShine International Conference on Quality of Service for Wireless/Wired Heterogeneous Networks (QShine 2004). He served as the general chair for the Eighth ACM/IEEE Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems, and the Ninth ACM/IEEE Symposium on Distributed Simulation and Real-Time Application (DS-RT), the program chair for the ACM Workshop on QoS and Security for Wireless and Mobile Networks, ACM/IFIPS Europar 2002 Conference, IEEE/SCS Annual Simulation Symposium (ANNS 2002), ACM WWW 2002, IEEE MWCN 2002, IEEE/ACM MASCOTS 2002, IEEE Wireless Local Networks WLN 03-04; IEEE WMAN 04-05, and ACM MSWiM 98-99, and a TPC member of numerous IEEE and ACM sponsored conferences. He served as the vice general chair for the Third IEEE Distributed Computing for Sensor Networks (DCOSS) Conference in 2007, as the program cochair for GLOBECOM 2007-2008 Symposium on Wireless Ad Hoc and Sensor Networks, and for the 14th IEEE ISCC 2009 Symposium on Computer and Commmunication Symposium, and as the finance chair for ACM Multimedia 2008. He also serves as a Steering Committee chair for the ACM Modeling, Analysis and Simulation for Wireless and Mobile Systems Conference, the ACM Symposium on Performance Evaluation of Wireless Ad Hoc, Sensor, and Ubiquitous Networks, and IEEE/ACM DS-RT.
691
Eduardo Freire Nakamura received the PhD degree in computer science from the Federal University of Minas Gerais, Brazil, in 2007. He is currently a researcher and a full professor with the Center of Analysis, Research and Technological Innovation Foundation (FUCAPI), Manaus, Brazil. His research interests include data/information fusion, distributed algorithms, localization algorithms, wireless ad hoc and sensor networks, mobile and pervasive computing. He has published several papers in the area of wireless sensor networks, and has served as a TPC member of the Second Latin American Autonomic Computing Symposium, supported by the IEEE Computer Society. He was the co-recipient of the Best Research Paper Award at ICC 2008 Antonio Alfredo Ferreira Loureiro received the BSc and MSc degrees in computer science from the Federal University of Minas Gerais (UFMG), Belo Horizonte, Brazil, and the PhD degree in computer science from the University of British Columbia, Canada. Currently, he is a full professor of computer science at UFMG, where he leads the research group in wireless sensor networks. His main research areas are wireless sensor networks, mobile computing, and distributed algorithms. He was the co-recipient of the Best Research Paper Award at ICC 2008
. For more information on this or any other computing topic, please visit our Digital Library at www.computer.org/publications/dlib.
Authorized licensed use limited to: Mochamad Hariadi. Downloaded on July 14, 2009 at 23:01 from IEEE Xplore. Restrictions apply.