You are on page 1of 33

Wireless Sensor Node Localization by Multisequence Processing

ZIGUO ZHONG and TIAN HE, University of Minnesota, Twin Cities

Wireless Sensor Networks have been proposed for use in many location-dependent applications. Most of these need to identify the locations of sensor nodes, a challenging task because of severe constraints on cost, energy and effective range of sensor devices. To overcome limitations in existing solutions, we present a Multi-Sequence Positioning (MSP) method for large-scale stationary sensor node localization in outdoor environments. The novel idea behind MSP is to reconstruct and estimate two-dimensional location information for each sensor node by processing multiple one-dimensional node sequences, easily obtained through loosely guided event distribution. Starting from a basic MSP design, we propose four optimizations that work together to increase localization accuracy. We address several interesting issues such as incomplete (partial) node sequences and sequence ip, found in the Mirage test-bed we built. We have evaluated the MSP system through theoretical analysis, extensive simulation as well as two physical systems (an indoor version with 46 MICAz motes and an outdoor version with 20 MICAz motes). Evaluation demonstrates that MSP can achieve an accuracy within one foot, requiring neither additional costly hardware on sensor nodes nor precise event distribution. In fact, it provides a nice tradeoff between physical cost (anchors) and soft cost (events) while maintaining localization accuracy. Categories and Subject Descriptors: C.2.4 [Computer Communication Networks]: Distributed Systems General Terms: Algorithms, Measurement, Design, Performance, Experimentation Additional Key Words and Phrases: Wireless sensor networks, localization, multi-sequence processing ACM Reference Format: Zhong, Z. and He, T. 2012. Wireless sensor node localization by multi-sequence processing. ACM Trans. Embedd. Comput. Syst. 11, 1, Article 3 (March 2012), 33 pages. DOI = 10.1145/2146417.2146420 http://doi.acm.org/10.1145/2146417.2146420

1. INTRODUCTION

Wireless sensor network (WSN) shows more and more popularity for both military and civil applications [Culler et al. 2004; Simon et al. 2004; Terzis et al. 2006; Werner-allen et al. 2005; He et al. 2006]. The geographical location information of each sensor node in the network is critical for many applications because users need to know not only what happened, but also where interested events happened. In addition, some routing protocols [Karp and Kung 2000; Kim et al. 2005] are built under the assumption that geographic parameters of sensor nodes are available. However, sensor node localization is still one of the challenging problems because of extremely demanding requirements for low-cost, tiny-size and high-energy efciency at the sensor node side. Previous research on node localization falls into two categories: range-based localization and range-free localization. Range-based approaches [Moore et al. 2004; Priyantha et al. 2000; Savvides et al. 2001; Whitehouse 2002] compute per-node location
This research was supported in part by NSF grants CNS-0626609, CNS-0626614, and CRI-0708344. Authors address: Computer Science and Engineering, University of Minnesota, 200 Union Street SE, Minneapolis, MN 55455; email: {zhong, tianhe}@cs.umn.edu. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for prot or commercial advantage and that copies show this notice on the rst page or initial screen of a display along with the full citation. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, to redistribute to lists, or to use any component of this work in other works requires prior specic permission and/or a fee. Permissions may be requested from Publications Dept., ACM, Inc., 2 Penn Plaza, Suite 701, New York, NY 10121-0701 USA, fax +1 (212) 869-0481, or permissions@acm.org. c 2012 ACM 1539-9087/2012/03-ART3 $10.00 DOI 10.1145/2146417.2146420 http://doi.acm.org/10.1145/2146417.2146420
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:2

Z. Zhong and T. He

information iteratively or recursively based on measured distances or angles among nodes and a few anchors that already know their locations; These approaches generally require costly hardware (e.g., GPS) and have limited effective range due to energy constraints (e.g., ultrasound-based TDOA [Broxton 2005; Priyantha et al. 2000]). Although range-based solutions can be suitably used in small-scale indoor environments, they are considered less cost-effective for large-scale deployments. On the other hand, range-free approaches [Bulusu et al. 2000; He et al. 2003; Lazos and Poovendran 2005; Moore et al. 2004; Nagpal and Coore 1998; Niculescu and Nath 2001] require no accurate distance measurements, instead localizing a node based on network connectivity (proximity) information. Unfortunately, since wireless connectivity is highly inuenced by environments and hardware calibration, existing solutions fail to deliver encouraging empirical results, or require substantial environment survey [Bahl et al. 2000] and calibration [Whitehouse 2002] on a case-by-case basis. Realizing the impracticality of existing solutions for large-scale outdoor environment, researchers have recently proposed solutions (e.g., spotlight [Stoleru et al. 2005] and lighthouse [R mer 2003]) for sensor node localization using the spatio-temporal o correlation of controlled events (i.e., inferring the location of a node based on its detection time of controlled events). These solutions demonstrate that long range and highly accurate localization can be achieved simultaneously with little additional cost at sensor nodes. These benets, however, come along with an implicit assumption that localization events can be precisely controlled and distributed to a specied location at a specied time. We argue that precise event distribution is difcult to achieve, especially when the terrain is uneven or the event distribution device is not well calibrated and its position is difcult to maintain (e.g., the helicopter-mounted scenario in Stoleru et al. [2005]). To address these limitations in current approaches, in this article we present a multisequence positioning (MSP) method for large-scale stationary sensor node localization in deployments where an event source has line-of-sight to all sensors. The novel idea behind MSP is to estimate each sensor nodes two-dimensional location by processing multiple easy-to-get one-dimensional node sequences obtained through loosely-guided event distribution. This design offers several benets. First, compared to a rangebased approach, MSP does not require additional costly hardware. It works using sensors typically used by WSN applications such as light and acoustic sensors which we specically consider in this work. Second, compared to a range-free approach, MSP needs only a small number of anchors (theoretically as few as two), so high accuracy can be achieved economically by introducing more events instead of more anchors. And third, compared to Spotlight [Stoleru et al. 2005], MSP does not require precise and sophisticated event distribution, an advantage that signicantly simplies the system design and reduces calibration cost. Besides these high-level advantages of MSP, the intellectual contributions of this article are the following. We are the rst to localize sensor nodes using Multi-Sequence Processing. Each sequence is an ordered list of sensor nodes, sorted by the detection time of a disseminated event. We demonstrate that making full use of the information embedded in one-dimensional node sequences can signicantly improve localization accuracy. Interestingly, we discover that repeated reprocessing of one-dimensional node sequences can further enhance localization accuracy. We propose a distribution-based location estimation strategy that obtains the nal location of sensor nodes using marginal probability of joint distribution among adjacent nodes within a sequence. This new algorithm outperforms the widely adopted Centroid method [Bulusu et al. 2000; He et al. 2003].
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP

3:3

To the best of our knowledge, this is the rst work to improve the localization accuracy by introducing adaptive events. The generation of later events is guided by localization results from early events. We evaluate line-based MSP on our indoor Mirage test-bed that can support as many as 360 nodes working simultaneously, and wave-based MSP in outdoor environments. Through system implementation, we discover and address several interesting issues such as partial sequence and sequence ips. To reveal the performance of MSP at scale, we also provide analytic results as well as extensive simulation study. The rest of the article is organized as follows. Section 2 briey surveys related work. Section 3 presents an overview of the MSP localization system. In section 4 and section 5, basic MSP and four advanced processing methods are introduced, respectively. Section 6 describes how MSP can be applied in a wave propagation scenario. Section 7 discusses several practical issues. Section 8 presents simulation results, and Section 9 reports implementation and evaluation of MSP on the Mirage test-bed and an outdoor test-bed. Section 10 concludes the whole article.
2. RELATED WORK

Many methods have been proposed to localize wireless sensor devices in the open air. Most of these can be classied into two categories: range-based localization and range-free localization. Range-based localization systems, such as GPS [Wellenhoff et al. 1997], Cricket [Priyantha et al. 2000], AHLoS [Savvides et al. 2001], AOA [Niculescu and Nath 2003], Robust Quadrilaterals [Moore et al. 2004], and Sweeps [Goldenberg et al. 2006], are based on ne-grained point-to-point distance estimation or angle measurement to identify per-node location. Limitations on the cost, energy and hardware footprint of individual sensor node make most of the range-based methods undesirable for massive outdoor deployment. In addition, ranging signals generated by sensor nodes have a very limited effective range because of energy and form factor concerns. For example, ultrasound signals usually only effectively propagate 20-30 feet with an on-board transmitter [Priyantha et al. 2000]. Consequently, these range-based solutions require an undesirably high deployment density. Many range-based methods tried to eliminate expensive or energy hungry ranging devices, for example, ultrasound, infrared emitter/receiver, laser beam scanner, by assuming and using RSSI (Receive Signal Strength Indicator) [Bahl et al. 2000; Yedavalli et al. 2005; Shang et al. 2003; Whitehouse and Culler 2002] with noise ltering. However, recent empirical study [Whitehouse and Culler 2002; Whitehouse et al. 2005, 2007] concluded that unless careful calibration and environment proling were accomplished, radio ranging irregularity [Zhou et al. 2004; Whitehouse et al. 2005] is detrimental to the system accuracy. The recently pro- posed RIPS localization system [Mar ti et al. 2005; Kusy et al. 2006] superimposes two RF waves together to create o a low-frequency envelope that can be accurately measured. This ranging technique performs very well as long as antennas are well oriented and environmental factors such as multi-path effects and background noise are sufciently addressed. Range-free methods dont need to estimate or meter accurate distance or angles. Instead, anchors or controlled-event distributions are utilized for node localization. Range-free methods can be generally classied into two types: anchor-based and anchor-free solutions. For anchor-based solutions such as Centroid [Bulusu et al. 2000], APIT [He et al. 2003], SeRLoc [Lazos and Poovendran 2005], Gradient [Moore et al. 2004] , and APS [Niculescu and Nath 2001], the main idea is that the localization of each node can be estimated based on the known locations of anchor nodes. Different anchor
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:4
Event 2 2 B 1 3 A 5 Event 1 Event 3 (a) Anchor node 2 1 3 5 (d) (c) 4 4 Event 4 Node sequence from event 1 A 1 5 3 2 4 B Node sequence from event 2 1 2 A 3 A 5 4 Node sequence from event 3 4 B 3 5 2 A 1 Node sequence from event 4 B 2 4 3 1 5 A (b) Target node

Z. Zhong and T. He

Fig. 1. The MSP System Overview.

combinations narrow the areas in which the target nodes would be possibly located. Anchor-based solutions normally require a high density of anchor nodes [Bulusu et al. 2000; He et al. 2003; Lazos and Poovendran 2005; Niculescu and Nath 2001] so as to achieve a good accuracy. In practice, it is desirable to have as few anchor nodes as possible to lower the system cost. Anchor-free solutions require no anchor nodes. Instead, external event generators and data processing platforms are used. The main idea is to correlate the event detection time at a sensor node with the known space-time relationship of controlled events at the generator so that detection timestamps can be mapped to the locations of sensors. Spotlight [Stoleru et al. 2005] and Lighthouse [R mer 2003] work in this o fashion. In Spotlight [Stoleru et al. 2005], the event distribution needs to be precise in both time and space. Precise event distribution is difcult to achieve without careful calibration, especially when the event-generating devices require certain mechanical maneuver (e.g., the telescope mount used in Spotlight). All these increase system cost and reduce localization speed. StarDust [Stoleru et al. 2006], which works much faster, uses label relaxation algorithms to match light spots reected by cornercube retro-reectors (CCR) with corresponding sensor nodes using various kinds of constraints. Label relaxation algorithms converges only when a sufcient number of robust constraints are obtained. Due to the environmental impact on RF connectivity constraints, however, StarDust is less accurate than Spotlight. In this article, we propose a balanced solution that avoids the limitations of both anchor-based and anchor-free solutions. Unlike anchor-based solutions [Bulusu et al. 2000; He et al. 2003], MSP allows a exible tradeoff between the physical cost (anchor nodes) and the soft cost (localization events). MSP uses only a small number of anchors (theoretically, as few as two). Unlike anchor-free solutions, MSP doesnt need to maintain rigid time-space relationships while distributing an event, which makes system design simple, more exible and robust to calibration errors, compared to Spotlight [Stoleru et al. 2005] and Lighthouse [R mer 2003]. o
3. SYSTEM OVERVIEW

MSP works by extracting relative location information from multiple simple onedimensional orderings of nodes. Figure 1(a) shows the layout of a sensor network with anchor nodes and target nodes. Target nodes are dened as nodes to be
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP

3:5

localized. Briey, the MSP system works as follows. First, events are generated one at a time in the network area (e.g., ultrasound propagations from different locations, laser scans with diverse angles). As each event propagates, as shown in Figure 1(a), nodes detect the event sequentially at different time instances. For a single event, we call the ordering of nodes based on their sequential event detections a node sequence. Each node sequence includes both target nodes and anchor nodes as shown in Figure 1(b). Second, a multi-sequence processing algorithm helps to narrow the possible location of each node to a small area depicted in Figure 1(c). Finally, a distributionbased estimation method estimates the exact location of each sensor node, as shown in Figure 1(d). As previously explained, we can see that node sequences can be obtained more economically than accurate pairwise distance measurements in traditional range-based approaches. In addition, this system does not require a rigid time-space relationship during localization event distribution, which is critical but hard to achieve in state-ofthe-art event driven solutions (e.g., Spotlight [Stoleru et al. 2005]). In fact, using node sequence instead of absolute sensing results owns several extra benets: (i) node ordering in a sequence features better robustness to sensing noise; (ii) node sequence recording the timing relationship among detections at different nodes signicantly alleviates the requirement of network-level time synchronization (detailed in Section 7.2); (iii) node sequence is more resistant to irregular event propagation velocity. For example, in some situations, the time interval between two nodes event detections may not be monotonic with the distance between them, which violates the assumptions made in some works [Kwon and Agha 2008], while node ordering in this case remains correct. In the following, for the sake of clarity, we present the system design in two cases. Ideal Case, in which all the node sequences obtained from the network are complete and correct, and nodes are time-synchronized [Mar ti et al. 2004]. o Nonideal Case, in which, (i) node sequences can be partial (incomplete), (ii) the elements in the sequences could ip (i.e. the order obtained is reversed from reality), and (iii) nodes are not time synchronized. In the following, to introduce the MSP algorithm, we rst consider a simple straightline scan scenario. Then, we describe how to implement straight-line scans as well as other types of event, such as sound wave propagation.
4. BASIC MSP

The top-level idea of basic MSP is to split the whole area where nodes deployed into small pieces by processing node sequences. Given knowledge of anchors and localization events, a target nodes rankings in node sequences can determine where it is possibly located. Figure 2 gives an example showing the concepts in basic MSP. In Figure 2, we use numbered circles to denote target nodes and numbered hexagons to denote anchor nodes. Suppose that two straight lines scan the area from different directions one by one, treating each scan as an event. All the nodes react to the event and generates two node sequences: for vertical scan 1, the node sequence is (8, 1, 5, A, 6, C, 4, 3, 7, 2, B, 9); for horizontal scan 2, the node sequence is (3, 1, C, 5, 9, 2, A, 4, 6, B, 7, 8), as shown in the gure. Given locations of anchors and the scan angles, the whole area can be vertically and horizontally divided into totally 16 parts. And the rankings of a target node in both sequences actually indicate which small part this node is located. For example, in the node sequence from event 1, node 8 ranks in front of anchor A, meaning that it detected the vertical scan event earlier than anchor A did. This indicates that node 8 locates above node A in the map. Similarly, from the node sequence for scan 2, node 8 detected scan 2 later than Anchor B did, meaning that
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:6
Straight-line Scan 1

Z. Zhong and T. He

1 5 A 6 C

Straight-line Scan 2

4 3 7

2 9

Target node Anchor node

Node Sequence Obtained From Scan 1: 8 1 5 A 6 C 4 3 7 2 B 9 Node Sequence Obtained From Scan 2: 3 1 C 5 9 2 A 4 6 B 7 8

Fig. 2. Obtaining multiple node sequences.

ALGORITHM 1: Basic MSP Process input : Node sequences from events output: Estimated location of each node
1 2 3 4 5 6 7 8 9 10 11 12

repeat GetOneUnprocessedSequence() ; repeat GetOneNodeFromSequenceInOrder() ; GetBoundaries() ; UpdateMap() ; until all target nodes are updated ; until all node sequences are processed ; repeat GetOneUnestimatedNode() ; CentroidEstimation() ; until all target nodes are estimated ;

node 8 should be on the right of anchor B. Combine above, node 8 can be localized to be in the top-right rectangle in Figure 2. To extend this process, suppose that we have M anchor nodes and perform d times of scan from different angles, obtaining d node sequences and dividing the area into many small parts. Obviously, the number of parts is a function of the number of anchors M, the number of scans d, anchors locations and the slope k of each scan. According to the pie-cutting theorem [Weisstein], an area can be divided into O(M2 d2 ) parts. When M and d are appropriately large, the polygon for each node could be sufciently small and as a result accurate localization can be achieved. We emphasize that the accuracy is affected not only by the number of anchors M, but also by the number of events d. In other words, MSP provides a tradeoff between the physical cost of anchors and the soft cost of events. Algorithm 1 depicts the processing architecture of basic MSP. Each node sequence is processed within line 1 to line 8. For each node, GetBoundaries () in line 5 searches for the predecessor and successor anchors in the sequence so as to determine the boundaries of this nodes location area. Then, in line 6, UpdateMap () shrink the location area of this node according to the newly obtained boundaries. After processing all the
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Lower boundary of 1 Event Propagation
1 2 1 2

3:7
Upper boundary of 1 New upper boundary of 1
1 2

Lower boundary of 2

Upper boundary of 2

New Lower boundary of 2

New sequence

Fig. 3. Elimination rule in sequence based MSP.

sequence, Centroid Estimation (Line 11) set the center of gravity of the nal polygon as the estimated location of a sensor node. Basic MSP only makes use of the order information between a target node and anchors in each sequence. In fact, we can extract much more information from node sequence. Section 5 introduces the design of advanced MSP including four novel optimizations that signicantly improve localization performance.
5. ADVANCED MSP

Four improvements to basic MSP are proposed in this section. The rst three improvements do not need additional sensing and communication in the networks but require only slightly more ofine computation. The objective of all these improvements is to make full use of the information embedded in the node sequences. The results we have obtained empirically indicate that the implementation of the rst two methods can dramatically reduce localization error, and that the third and fourth methods are helpful for some system deployments.
5.1. Sequence-Based MSP

We note that in the basic MSP design, only the anchors are used to narrow down the polygon (location area) of each node, although there is more information in the node sequence that can be utilized. Lets rst look at a simple example shown in Figure 3. Suppose that previous scans narrow the locations of target node 1 and node 2 to two dashed rectangles as shown in the left part of the gure. Then a new scan obtains an additional sequence (1, 2). With knowledge of the scan direction, it is easy to tell that node 1 is located to the left of node 2. Thus, we can further narrow the location area of node 2 by eliminating the shadowed part in node 2s rectangle. This is because node 2 is located on the right of node 1 while the shadowed area is out of the left boundary of node 1. Similarly, the location area of node 1 can be narrowed by eliminating the shadowed part to the right of node 2s right boundary. We call this processing progress sequence-based MSP meaning that the whole node sequence needs to be processed node by node in order. Specically, sequence-based MSP follows the following processing rule: Elimination Rule. Along a scan direction, the lower boundary of the successors area shall be equal or larger than the lower boundary of predecessors area, and the upper boundary of predecessors area shall be equal or smaller than the upper boundary of successors area. In the case of Figure 3 for example, along the scan direction, node 2 is the successor of node 1 and node 1 is the predecessor of node 2. According to the elimination rule, node 2s lower boundary (i.e., the left boundary in this specic example) cannot be smaller than node 1s lower boundary and node 1s upper boundary (i.e., the right boundary in this example) cannot exceed node 2s upper boundary. Algorithm 2 gives the pseudo code of the sequence-based MSP. Each node sequence is processed within line 3 and 12 with two steps:
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:8

Z. Zhong and T. He

Step 1 (line 3 to 7). Compute the lower boundary of each target node by increasing order in the node sequence. Each nodes lower boundary is determined by the lower boundary of its predecessor node in the sequence. Thus, the processing must start from the rst node in the sequence and by increasing order. Then, update the map according to the newly obtained lower boundary. Step 2 (line 8 to 12). Compute the upper boundary of each target node by decreasing order in the node sequence. Each nodes upper boundary is determined by the upper boundary of its successor node in the sequence. Thus, the processing must start from the last node in the sequence and by decreasing order. Then update the map according to the newly obtained upper boundary. After processing all node sequences, for each target node, a polygon bounding its possible location area has been found. Then, center-of-gravity-based estimation is applied to compute the exact location of each node (line 14 to 17).
ALGORITHM 2: Sequence-Based MSP Process input : Node sequences from events output: Estimated location of each node
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

repeat GetOneUnprocessedSequence() ; repeat GetOneNodeByIncreasingOrder() ; ComputeLowbound() ; UpdateMap() ; until all target nodes are updated ; repeat GetOneNodeByDecreasingOrder() ; ComputeUpbound() ; UpdateMap() ; until all target nodes are updated ; until all node sequences are processed ; repeat GetOneUnestimatedNode() ; CentroidEstimation() ; until all target nodes are estimated ;

An example of this process is shown in Figure 4, a third scan generates node sequence (B, 9, 2, 7, 4, 6, 3, 8, C, A, 5, 1). In addition to the anchor split lines, because nodes 4 and 7 is ranked after node 2 in the sequence, polygons of node 4 and node 7 can be narrowed according to the lower boundary of node 2 (the lower right-shaded area); similarly, the shaded area in node 2s rectangle could be eliminated since this part is beyond node 7s upper boundary. Similar eliminating can be performed for node 3 as shown in the gure. As previously stated, we can see that sequence-based MSP makes use of the information embedded in every sequential node pair in the node sequence. The polygon boundaries of target nodes obtained in prior could be used to further split other target nodes areas. Our evaluation in Sections 8 and 9 shows that sequence-based MSP can considerably enhances system accuracy.
5.2. Iterative MSP

Sequence-based MSP is preferable to basic MSP because it extracts more information from the node sequence. Actually, additional information is still available! In
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Straight-line Scan 1

3:9

1 5 A 6 C 4 3

Node 2's area cut by node 7's boundary

Straight-line Scan 2

Node 4 and node 7's areas cut by node 2's boundary


Target node Anchor node

2 9

Node 3's area cut by node 6's boundary

Straight-line Scan 3

Node Sequence Obtained From Scan 3: B 9 2 7 4 6 3 8 C A 5 1

Fig. 4. Sequence-based MSP example.


Straight-line Scan 1 Virtually Perform Scan 1 Again

1 5 A 6 C

Straight-line Scan 2

4 3 7

Node 4 area cut by node 7's boundary

2 9

Target node Anchor node

Node 3's area cut by node 7's boundary Straight-line Scan 3

Reprocess Sequence From Scan 1: 8 1 5 A 6 C 4 3 7 2 B 9

Fig. 5. Iterative MSP: Reprocessing the node sequence from scan 1.

sequence-based MSP, a sequence processed later benets from information produced by previously processed sequences. However, the rst several sequences can hardly benet from other scans in this way. Inspired by this phenomenon, we propose iterative MSP. The basic idea of iterative MSP is to process all the sequences iteratively several times so that the processing of each single sequence can benet from the results of other sequences. To illustrate the idea more clearly, Figure 4 shows the results of three scans that have provided three sequences. Now if we process the sequence (8, 1, 5, A, 6, C, 4, 3, 7, 2, B, 9) obtained from scan 1 again, we can get new information as depicted in Figure 5. The reprocessing of node sequence 1 provides information in the way an additional vertical scan would. From the sequence-based MSP, we know that the bottom boundaries of node 3 and 4 along the scan direction must not beyond the bottom boundary of node 7,
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:10
1 2 1 1 1 2

Z. Zhong and T. He

1 2

(a) Center of Gravity

(b) Joint Distribution

Fig. 6. Example of joint distribution estimation.


vm a vm p[0 a ] vm p[1 a ] v m p[2 ap ] [3 ]

Combine

Fig. 7. Idea of DBE MSP for each node.

and therefore we can eliminate the grid part of node 3 and node 4 as shown in Figure 5. From this example, we can see that iterative processing of sequences could help further shrink the polygon of target nodes, and thus enhance localization accuracy. The implementation of iterative MSP is straightforward: process all the sequences multiple times with sequence-based MSP. Like sequence-based MSP, iterative MSP introduces no additional event cost. In other words, reprocessing does not actually repeat the scan physically. Evaluation results in Section 8 will show that iterative MSP contributes noticeably to a lower localization error. Further empirical results show that after 5 iterations, improvements become less signicant. In summary, iterative processing can achieve better performance with only a little computation overhead.
5.3. Distribution-Based Estimation (DBE MSP)

After determining the location area polygon for each node, estimation is needed for a nal decision. Previous research mostly applied the Center of Gravity (COG) method [Bulusu et al. 2000; He et al. 2003; Lazos and Poovendran 2005] which minimizes average error. If every node is independent with each other, COG is statistically the optimal solution. In MSP, however, each node may not be independent. For example, two neighboring nodes in a sequence could have overlapping polygon areas. In this case, if the marginal probability of joint distribution is used for estimation, better statistic results can be achieved. Figure 6 shows an example in which node 1 and node 2 are located in the same polygon. If COG is used, both nodes are localized at the same position (as shown in Figure 6(a)). However, the node sequences obtained from two scans indicate that node 1 should be to the left and above node 2 (as shown in Figure 6(b)). The high-level idea of distribution-based estimation proposed for MSP, which we call DBE MSP, is illustrated in Figure 7. The distributions of each node under the ith scan (for the ith node sequence) is estimated in node.vmap[i] that is a data structure for remembering the marginal distribution over scan i. Then, all the vmaps are combined to get a single map and weighted estimation is used to obtain the nal location. For each scan, all the nodes are sorted according to their gap, which is dened as the diameter of the location area polygon along the direction of the scan, to produce a second gap-based node sequence. Then, nal location estimation starts from the node with the smallest gap. This is because it is statistically more accurate to assume a
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

m ap

Wireless Sensor Node Localization by MSP


Pre nodes area

3:11

Alone: Uniformly Distributed

Predecessor node exists: conditional distribution based on predecessor nodes area Pre nodes area Suc nodes area

Suc nodes area

Successor node exists: Both predecessor and successor conditional distribution based nodes exist: conditional on successor nodes area distribution based on both of them

Fig. 8. Four cases for each node in DBE process.

uniform distribution of the node with smaller gap. For each node processed in order from the gap-based node sequence, there are four cases as illustrated and interpreted in Figure 8). Specically, either if no neighbor node in the original event-based node sequence shares an overlapping area, or if neighbors have not been processed yet due to bigger gaps, a uniform distribution is applied to this isolated node (the Alone case in Figure 8). If the distribution of its neighbors with overlapped areas has been processed, we calculate the joint distribution for the node as the other three possible cases, depending on whether the distribution of the overlapping predecessor and/or successor nodes have/has already been estimated. In the gure, the darkness of each position point in the location area depicts the probability of the sensor nodes being at the corresponding position. The estimations strategy of starting from the most accurate node (with smallest gap) reduces the problem of estimation error propagation. The results in the evaluation section indicate that applying distribution-based estimation gives statistically better results than the traditional COG method.
5.4. Adaptive MSP

So far, all the enhancements to basic MSP focus on improving the multi-sequence processing algorithm given a xed set of scan directions. All these enhancements require only more computing time without any overhead at sensor nodes. In fact, it is also possible to optimize how events are generated. For example, in military situations, artillery or rocket-launched mini ultrasound bombs can be used for event generation at some selected locations. In adaptive MSP, we carefully generate each new localization event so as to maximize the contribution of a new event to the renement of localization, based on feedback from previous events. Figure 9 depicts the basic architecture of adaptive MSP. Through previous localization events, the whole map has been partitioned into many small location areas. The idea of adaptive MSP is to generate the next localization event to achieve best effort elimination that ideally could shrink the location area of individual node as much as possible. We use a weighted voting mechanism to evaluate candidate localization events. Every node wants the next event to split its area evenly that would shrink the area fast. Therefore, every node votes for the parameters of the next event (e.g., the scan angle k of the straight-line scan event). Since the area map is maintained centrally, the vote can be done virtually without real nodes participation. After gathering all the voting
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:12
Candidate Localization Events Evaluation Diameter of Each Area Trigger Next Localization Evet

Z. Zhong and T. He

Map Partitioned by Previous Localization Events

Fig. 9. Basic architecture of adaptive MSP.


6 5 k3opt1 k3 k 3 4 k3 3 k3

k32
1 k3

Node 3's area

Weight
6 5 1 3 k 3 k32 k3 k34 k3 k3

Target node Anchor node Gravity Center

Diameter D3

Weight(ki j ) = f ( Di , (ki j , kiopt ) = Di

S small Slarge

Fig. 10. Candidate slops for Node 3 at Anchor 1.

results, event parameters with the most votes win the election. There are two factors that determine the weight of each vote. The vote for each candidate event is weighted according to the diameter D of the voter nodes location area. Nodes with larger location areas speak louder in the voting, since overall system error is reduced mostly by splitting larger areas. The vote for each candidate event is also weighted according to their elimination efciency for a location area, which is dened as how equally in size (or in diameter) an event can cut an area. In other words, an optimal scan event cuts an area evenly in size, since this cut shrinks the area quickly and thus effectively reduces localization uncertainty. Combining these factors, the weight for each voting is computed as follows: Weight ki = f Di ,
j j

ki , ki

opt

(1)

where ki is node is jth supporting parameter for next event generation; Di is the diamj opt j eter of node is location area; (ki , ki ) is the distance between ki and the optimal paopt j opt rameter ki for node i. Note that (ki , ki ) should be dened to t specic applications. Figure 10 presents an example for node 3s voting for the slops of the next straightline scan. In the system, there are a xed number of candidate slopes for each scan (e.g., k1 , k2 , k3 , k4 ...). The location area of target node 3 is shown in the gure. Candidates 3 5 6 1 2 4 events k3 , k3 , k3 , k3 , k3 , k3 are evaluated according to their effectiveness for area cutting opt comparing with the optimal event k3 shown as a dotted line. For this specic example,
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP

3:13
j opt

as is illustrated in the right part of Figure 10, f (Di , (ki , ki )) is dened as Weight ki = f Di ,
j

ki , ki

opt

= Di

Ssmall , Slarge

(2)

where Ssmall and Slarge are the sizes of the smaller part and larger part of the area cut by a candidate line, respectively. In this case, node 3 votes 0 for candidate lines that do not across its location area, because Ssmall = 0. We show later that adaptive MSP improves localization accuracy in WSNs with irregularly shaped deployment areas.
5.5. Overhead and Complexity Analysis

This section provides a complexity analysis of the MSP design. We emphasize that MSP adopts an asymmetric design in which sensor nodes only need to detect and report the events. They are blissfully oblivious to the processing methods proposed in previous sections. About the total time needed for localization, one major factor may relate to the speed of event dissemination in the network, which essentially is dependent on specic applications. In terms of communication cost, the slim footprint of node sequence allow it to be efciently piggybacked on normal trafc in the network. And considering that localization usually is only a one-time job, we did not expand more along this direction. Instead, in this section, we analyze the computational complexity of the MSP algoirthms. According to Algorithm 1, the computing complexity of basic MSP is O(d N S); the memory space required is O(N S), where d is the number of events, N is the number of target nodes and S is the area size. In Algorithm 2, the computing complexity of sequence-based MSP and iterative MSP can be expressed as O(c d N S) where c is the number of iterations and c = 1 for sequence-based MSP; the memory space required is O(N S). Both the computing complexity and the memory cost is equal to or within a constant factor of basic MSP. The computation complexity of distribution-based estimation (DBE MSP) is higher. The major overhead comes from joint distribution computation when both predecessor and successor nodes exist. In order to calculate the marginal probability, MSP needs to enumerate all possible locations of the predecessor node and the successor node. For example, node A has predecessor node B and successor node C, then the marginal probability PA(x, y) of node As being at location (x, y) is: PA(x, y) =
i j m n

1 NB,A,C

PB(i, j) PC (m, n) ,

(3)

where NB,A,C is the number of valid locations for node Asatisfying the sequence (B, A, C) when B is at (i, j) and C is at (m, n); PB(i, j) is the available probability of node Bs being located at (i, j); PC (m, n) is the available probability of node Cs being located at (m, n). A naive algorithm to compute Eq. (3) has a complexity of O(d N S3 ). However, since the marginal probability indeed comes from only one dimension along the scanning direction (e.g., a line), the complexity can be reduced to O(d N S1.5 ) after algorithm optimization. In addition, the nal location areas for every node are much smaller than the original eld S, therefore, in practice, DBE MSP can be computed much faster than O(d N S1.5 ).
6. WAVE PROPAGATION EXAMPLE

So far, the description of MSP has been solely in the context of straight-line scan events. However, we note that MSP is conceptually independent of how the event is propagated as long as node sequences can be obtained. Clearly, we can also support
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:14

Z. Zhong and T. He

1 5 A 6 C 4 3 7

B 9

A line of preferred locations for next event


Target node Anchor node Pervious Event location Gravity Center

Fig. 11. Example of wave propagation situation.

wave-propagation-based events (e.g., ultrasound propagation, air blast propagation), which are polar coordinate equivalences of the straight-line scan in the Cartesian coordinate system. This section illustrates the implementation of MSP in the wave propagation-based situation. For easy modeling, we have made the following assumptions. The wave propagates uniformly in all directions, therefore the propagation has a circular frontier. Since MSP does not rely on an accurate space-time relationship, a certain distortion in wave propagation is tolerable. If any directional wave is used, the propagation frontier can be modied accordingly. Under the situation of line-of-sight, we allow obstacles to reect or deect the wave. Reection and deection are not problems because each node reacts only to the rst detected event. Those reected or deected waves come later than the line-of-sight waves. The only thing the system needs to maintain is an appropriate time interval between two successive localization events. We assume that background noise exists, and therefore we run a band-pass lter to listen to a particular wave frequency. This reduces the chances of false detection. The parameter that affects localization event generation here is the source location of the event. The different distances between each node and the event source determine the rank of each node in the node sequence. Using the node sequences, the MSP algorithm divides the whole area into many nonrectangle areas as shown in Figure 11. In this gure, stars represent the source locations of two events triggered. Previous event propagations split the whole map into many of areas by those dashed circles that pass one of the anchors. Each node is located in one of the small areas. Since sequencebased MSP, iterative MSP and DBE MSP make no assumption about the type of location events and the shape of location area, all three optimization algorithms can be applied for the wave propagation scenario. However, adaptive MSP needs more explanation. Figure 11 shows an example of nodes voting for next event source location. Unlike the straight-line scan, the critical parameter in this situation is the location of the event source, because the distance between each node and the event source determines the rank of the node in the sequence. In Figure 11, if the next event breaks out along or close to the solid thick gray line that perpendicularly bisects the solid dark line between anchor C and the center of node
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP

3:15

9s area (the gray area), the wave would reach anchor C and the center of gravity of node 9s area at roughly the same time, which would lead to a relatively equal division of node 9s area. Thus, node 9 prefers to vote for the positions around the thick gray line. Note that there are totally three such gray lines for node 9 and each of them corresponding to one anchor in eld. For clarity, we did not draw all three lines in the gure.
7. PRACTICAL DEPLOYMENT ISSUES

For the sake of clarity, until now we have described MSP in an ideal case where complete node sequences can be obtained with accurate time synchronization. In this section, we describe how to make MSP work well under more realistic conditions.
7.1. Incomplete Node Sequence

For diverse reasons, such as sensor malfunction or natural obstacles, nodes in the network could fail to detect the localization events. In such cases, node sequences will not be complete but partial. This problem has two versions. Anchor nodes are missing from a sequence. If some anchor nodes fail to respond to localization events, then the system has fewer anchors. In this case, the solution is to generate more events to compensate for the loss of anchors for desired accuracy. Target nodes are missing from a sequence. There are two consequences when target nodes are missing. First, if these nodes are still be useful to sensing applications, they need to use other backup localization approaches (e.g., Centroid [Bulusu et al. 2000]) to localize themselves with help from their neighbors who have already learned their locations from MSP. Secondly, since in advanced MSP each node in the sequence may contribute to the overall system accuracy, dropping target nodes from sequences could also reduce localization accuracy. Thus, proper compensation procedures such as adding more localization events need to be launched.
7.2. Localization without Time Synchronization

In a sensor network without time synchronization support, nodes cannot be ordered into a sequence using timestamps. For such cases, we can either apply the post-facto timing strategy [Kusy et al. 2006] or follow a listen-detect-assemble-report protocol proposed in the following that is able to function independently without time synchronization. listen-detect-assemble-report requires that every node listen to the channel for the node sequence transmitted from its neighbors. Then when a node detects a localization event, it assembles itself into the newest node sequence it has heard and reports the updated sequence to other nodes. Figure 12 (a) illustrates an example of the listendetect-assemble-report protocol. For simplicity, in this gure, we did not differentiate target nodes from anchor nodes. A solid line between two nodes stands for a communication link. Suppose that a straight line scans from left to right. Node 1 detects the event and it broadcasts a sequence (1) into the network. Node 2 and node 3 receive this sequence. When node 2 detects the event, node 2 adds itself into the sequence and broadcast (1, 2). The sequence propagates in the same direction as the scan, shown in Figure 12(a). Finally, node 6 obtains a complete sequence (1, 2, 3, 5, 7, 4, 6). In the case of ultrasound propagation, because the event propagation speed is much slower than that of radio, the listen-detect-assemble-report protocol can work well in a situation where node density is not high. For instance, if the distance between two nodes along one direction is 10 meters, the 340m/s sound needs 29.4ms to propagate between them. While the normally the communication data rate is 250Kbps in the WSN
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:16
Event Prorogation
1 1 1 2 1,2 3 1,3

Z. Zhong and T. He

1,3 7 1,2,3,5 5 1,2,3,5 1,2,3,5,7 4 1,2,3,5,7,4,6 6 1,2,3,5,7,4

(a)
Event Prorogation
1 1 2 1,2 5 1,2,5 1 3 1,3 7 1,3,7 4 1,3,7,4 1,2,5,4 1,2,5,4,6 1,3,7,4,6 6

(b)
Event Prorogation
1 1 2 1 3 1,3 1,2 1,3 7 1,3,2,5 5 1,3,2,5 1,3,2,5,7 4 1,3,2,5,7,4,6 6 1,3,2,5,7,4

(c)
Fig. 12. Node sequence without time synchronization.

(e.g., CC2420 [Texas Instruments 2007]), it takes only about 2 3 ms to transmit an assembled packet. One problem that may occur with the listen-detect-assemble-report protocol is multiple partial sequences as shown in Figure 12(b). Two separate paths in the network may result in two sequences that could not be further combined. In this case, two sequences can only be processed separately for one event. As a result some ordering information is lost and localization performance could decrease. The other problem is the sequence ip issue. As shown in Figure 12(c), because node 2 and node 3 are too close to each other along the scan direction, they detect the scan almost simultaneously. Due to the uncertainty in media access delay, two messages could transmit out of order. For example, if node 3 sends out its report message rst, then the order of node 2 and node 3 gets ipped in the nal node sequence. In fact, sequence ip could show up even in an accurately synchronized system due to random jitter in node detection and processing delay, when an event arrives at multiple nodes almost simultaneously. A method addressing the sequence ip problem is presented in the following.
7.3. Sequence Flip and Protection Band

The problem of sequence ip can be solved with and without time synchronization. We start with a scenario applying time synchronization. Existing solutions for time synchronization [Mar ti et al. 2004; Elson et al. 2002] can easily achieve sub-millisecond o accuracy. For example, FTSP [Mar ti et al. 2004] achieves 16.9s (microsecond) avero age error for a two-node single-hop case. Therefore, we can comfortably assume that the network is synchronized with maximum error of 1ms (millisecond). However, when multiple nodes are located close to each other along the event propagation direction, even when accurate time synchronization is achieved in the network, sequence ip may still occur. For example, in the wave propagation case, if two nodes are less than 0.34 meters apart, the time interval between their detections would be less than 1ms. We nd that sequence ip could not only damage system accuracy, but also might cause a fatal error in the MSP algorithm. Figure 13 illustrates both detrimental results. In the left side of Figure 13, suppose that node 1 and node 2 are so close to each other that it costs less than 0.5ms for the localization event to propagate from node 1 to node 2. Unfortunately, node sequence is mistaken to be (2, 1). So node 1 is expected to be
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Lower boundary of 1 Event Propagation 1 2 2 1 Flipped Sequence Fatal Elimination Error 1 Upper boundary of 1 Fatal Error 1 1

3:17

Fig. 13. Sequence ip.


Lower boundary of 1 Event Propagation Upper boundary of 1 New lower boundary of 1

2 2 1

B: Protection band Safe Elimination

Flipped Sequence

Fig. 14. Protection band.

located to the left of node 2 such as at the position of the dashed node 1. According to the eliminating rule in sequence-based MSP, the left part of node 1s location area is cut off as shown in the right part of Figure 13. This is a potentially fatal error, because the real position of node 1 has been eliminated by mistake. During the subsequent eliminations introduced by other events, node 1s area might be cut off completely, and as a result node 1 could consequently be erased from the map! Even in cases where node 1 still survives, its location area actually does not cover its true position. Another problem is not fatal but lowers the localization accuracy. If we get the right node sequence (1, 2), node 1 has a new upper boundary that can narrow the area of node 1. However, due to the sequence ip, node 1 loses this new upper boundary. In order to address the sequence ip problem, especially to prevent nodes from being erased from the map, we propose a protection band compensation approach. The basic idea of protection band is to extend the boundary of the location area a little bit so as to make sure that the node will never be erased from the map. This solution is based on the fact that nodes have a high probability of ipping in the sequence if they are near to each other along the event propagation direction. If two nodes are apart from each other more than some distance, saying B, they rarely ip unless nodes are faulty. The width of a protection band B is largely determined by the maximum time synchronization error and the propagation speed of localization events. Figure 14 presents the application of the protection band. In stead of eliminating the dashed part in Figure 13 for node 1, the new lower boundary of node 1 is set by shifting the original lower boundary of node 2 to the left by a distance of B. In this case, node 1 is still in its location area and protected from being erased. In a practical implementation, suppose that ultrasound localization events are used. If the maximum error of time synchronization is 1ms, two nodes might get ipped if the time interval between their detections is smaller or equal to 1ms. Accordingly, we set the protection band B as 0.34m (the distance sound can propagate within 1ms). By adding the protection band, we reduce the chances of fatal errors, although at the cost of localization accuracy. Empirical results obtained from our physical test-bed veried this conclusion. In the case of applying the listen-detect-assemble-report protocol, the only change is to select the protection band according to the maximum delay uncertainty introduced by the MAC operation and the event propagation speed. To bound MAC delay at the node side, a node can drop its report message if it experiences excessive MAC delay.
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:18
Table I. Default Simulation Congurations Parameter Field Area S Scan Type Number of Anchors Number of Scans Number of Target Nodes Statistics Random Seeds Description 200200 (in grid unit) Regular(default)/Random Scan 3(default) 6(default) 100 Error Mean/Max 50 runs

Z. Zhong and T. He

This converts the sequence ip problem to the incomplete sequence problem that can be addressed by methods proposed in Section 7.1.
8. SIMULATION EVALUATION

Our evaluation of MSP was conducted on three platforms: (i) an indoor MSP system with 46 MICAz motes using straight-line scan, (ii) an outdoor MSP system with 20 MICAz motes using sound wave propagation, and (iii) an extensive simulation under various settings. In order to understand the behavior of MSP under numerous situations, we start our evaluation with simulations. System evaluation is presented later in Section 9. In simulation, we assume that all the node sequences are perfect so as to reveal the achievable performance of MSP in the absence of incomplete node sequences or sequence ips. In our simulations, all anchor nodes and target nodes are assumed to be deployed at random following uniform distribution. The mean and maximum localization errors are averaged over 50 runs to obtain high condence (the localization error of each node is dened as the distance between the estimated location and the real position). For legibility reasons, we do not plot the condence intervals in this article. All the simulations are based on the straight-line scan example. We implement three scan strategies. Random Scan. The slope of the scan line is randomly chosen each time. Regular Scan. The slope is predetermined to rotate uniformly from 0 to 180 . For example, if the system scans 6 times, then the scan angle would be: 0 , 30 , 60 , 90 , 120 , and 150 respectively. Adaptive Scan. The slope of each scan is determined based on the localization results from previous scans (i.e., adaptive MSP). We start with basic MSP and then demonstrate the performance improvements one step at a time by adding (i) sequence-based MSP, (ii) iterative MSP, (iii) distributedbased estimation, namely DBE MSP, and (iv) adaptive MSP.
8.1. Performance of Basic MSP

The evaluation starts with basic MSP, where we compare the performance of random scan and regular scan under different congurations. We intend to illustrate the impact of the number of anchors M , the number of scans d, and target node density (number of target nodes N in a xed-size region) on the localization error. Table I shows the default simulation parameters. We note that by default we only use three anchors, which is considerably fewer than existing range-free solutions [He et al. 2003; Bulusu et al. 2000].
8.1.1. Impact of the Number of Anchors. In this experiment, we compare the regular scans with random scans under different number of anchors from 3 to 30 in steps of 3. The results shown in Figure 15 indicate that (i) as the number of anchor nodes increases,
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Mean Error and Max Error vs. Number of Anchors
60 Max Error of Random Scan Max Error of Regular Scan Mean Error of Random Scan Mean Error of Regular Scan

3:19

50

Error (in grid unit)

40

30

20

10

10

15

20

25

30

Number of Anchors

Fig. 15. Basic MSP under random and regular Scans: Error vs. number of anchors.
Mean Error and Max Error vs. Number of Events
90 80 70 Max Error of Random Scan Max Error of Regular Scan Mean Error of Random Scan Mean Error of Regular Scan

Error (in grid unit)

60 50 40 30 20 10 0

10

15

20

25

30

Number of Scan Events

Fig. 16. Basic MSP under random and regular Scans: Error vs. number of scans.

localization error decreases, and (ii) statistically, regular scans obtains better results than random scans with the same number of anchors.
8.1.2. Impact of the Number of Scans. In this experiment, we compare regular scan with random scan under different number of scans from 3 to 30 in steps of 3. The number of anchors is 3 by default. Results in Figure 16 indicates that: (i) as the number of scans increases, localization error decreases signicantly. For example, localization errors drop more than 60% from 3 scans to 30 scans. (ii) statistically, regular scans achieve better performance than random scans with identical number of scans. However, the performance gap reduces when the the number of scan increases. This is expected since a large number of random numbers converge to a uniform distribution. Figure 16 also demonstrates that MSP requires only a small number of anchors to perform very well, compared to existing range-free solutions [He et al. 2003; Bulusu et al. 2000]. By combining Figure 16 and Figure 15, we can conclude that MSP allows a exible tradeoff between physical costs (anchor nodes) and soft costs (localization events). 8.1.3. Impact of the Number of Target Nodes. In this experiment, we conrm that the density of target nodes has no impact on the accuracy for basic MSP, which motivated the design of sequence-based MSP. In this experiment, we compare the regular scan with random scans under different number of target nodes from 10 to 190 in steps of 20, while maintaining 3 anchors. Results in Figure 17 show that mean localization errors remain constant across different node densities. However, when the number of target nodes increases, the maximum error increases.
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:20
Mean Error and Max Error vs. Number of Target Nodes
70

Z. Zhong and T. He

60

Error (in grid unit)

50

40

30

Max Error of Random Scan Max Error of Regular Scan Mean Error of Random Scan Mean Error of Regular Scan

20

10

50

100

150

200

Number of Target Nodes

Fig. 17. Basic MSP under random and regular scans: Error vs. number of target nodes.
Basic MSP vs. Sequence Based MSP I
50 45 40 Max Error of Basic MSP Max Error of Seq MSP Mean Error of Basic MSP Mean Error of Seq MSP

Error (in grid unit)

35 30 25 20 15 10 5 0 0 5 10 15 20 25 30

Number of Anchors

Fig. 18. Improvements of sequence-based MSP: Error vs. number of anchors.

8.1.4. Basic MSP Simulation Summary. From these experiments, we can conclude that in basic MSP (i) increasing either anchor nodes or localization events can enhance the localization performance; (ii) for square shaped map, regular scan are better than random scan under different numbers of anchors and scan events. This is because regular scans uniformly cut the map from different directions, while random scans would obtain sequences with redundant overlapping information when two scans choose similar scan slopes.
8.2. Improvements of Sequence Based MSP over Basic MSP

This section evaluates the benets of exploiting the order information among target nodes by comparing sequence-based MSP with basic MSP. In this and the following sections, regular scan is used for straight-line scan event generation. The purpose of using regular scan is to keep the scan events and the node sequences identical for both sequence-based MSP and basic MSP, so that the only difference between them is the sequence processing procedure.
8.2.1. Impact of the Number of Anchors. In this experiment, we use different number of anchors from 3 to 30 in steps of 3. As shown in Figure 18, the mean error and maximum error of sequence-based MSP is much smaller than that of basic MSP. Especially when there is limited number of anchors in the system. For example, for 3 anchors, the errors were almost halved by using sequence-based MSP. This phenomenon has an interesting explanation: the cutting lines created by anchor nodes are exploited by both basic MSP and sequence-based MSP, so as the number of anchor nodes increases, anchors tend to
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Basic MSP vs. Sequence Based MSP II
70 Max Error of Basic MSP Max Error of Seq MSP Mean Error of Basic MSP Mean Error of Seq MSP

3:21

60

Error (in grid unit)

50

40

30

20

10

10

15

20

25

30

Number of Scans

Fig. 19. Improvements of sequence-based MSP over basic MSP: Error vs. number of scans.
Basic MSP vs. Sequence Based MSP III
55 50 45

Error (in grid unit)

40 35 30 25 20 15 10 5 0 50 100

Max Error of Basic MSP Max Error of Seq MSP Mean Error of Basic MSP Mean Error of Seq MSP

150

200

Number of Target Nodes

Fig. 20. Improvements of sequence-based MSP: Error vs. number of target nodes.

dominate the contribution. Therefore, the performance gap lessens when more anchors are available in the system.
8.2.2. Impact of the Number of Scans. In this experiment, we compare sequence-based MSP with basic MSP under different number of scans from 3 to 30 in steps of 3. Figure 19 indicates signicant performance improvement in sequence-based MSP over basic MSP across all scan settings, especially when the number of scans is large. For example, when the number of scans is 30, errors in sequence-based MSP are only about 20% of that of basic MSP. We conclude that sequence-based MSP performs extremely well when there are many scan events 8.2.3. Impact of the Number of Target Nodes. Figure 20 demonstrates the benets of exploiting order information regarding target nodes. Since sequence-based MSP makes use of the information among target nodes in sequence, more target nodes contributes to the overall system accuracy. As a result, with increasing number of target nodes, localization error decreases for sequence-based MSP. 8.2.4. Sequence-based MSP Simulation Summary. From these experiments, we can conclude that exploiting ordering information among target nodes can signicantly improve localization accuracy, especially in the situations when we have abundant events but limited anchor nodes.
8.3. Improvements of Iterative MSP over Sequence-Based MSP

In this experiment, the same node sequences were processed iteratively multiple times. In Figure 21, two single marks are results from basic MSP, since basic MSP doesnt
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:22
Basic MSP vs. Iterative MSP
50 45 40 Max Error of Iterative Seq MSP Mean Error of Iterative Seq MSP Max Error of Basic MSP Mean Error of Basic MSP

Z. Zhong and T. He

Error (in grid unit)

35 30 25 20 15 10 5 0 0 2 4 6 8 10

Number of Iterative Processing

Fig. 21. Improvements of iterative MSP.


DBE vs. NonDBE Cumulative Distrubutioin Functions (CDF)
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 2 4 6 8 Mean Error CDF of DBE MSP Mean Error CDF of NonDBE MSP Max Error CDF of DBE MSP Max Error CDF of NonDBE MSP 10 12 14 16

Error

Fig. 22. Improvements of DBE MSP.

perform iterations. Two curves present the performance of iterative MSP under different number of iterations, that is, c. We note that when c = 1, iterative MSP degrades to sequence-based MSP. Therefore, Figure 21 compares the three methods together to one another. Figure 21 shows that the second iteration can reduce localization error signicantly. Applying iterative MSP, the maximum and mean error can be reduced by approximately 83% and 80% from those of basic MSP, respectively. However, the performance gain reduces dramatically over iterations, for example, when c > 5, there is almost no gain for further iterative processing. This is because the second iteration allows earlier scans to exploit the new boundaries created by later scans in the rst iteration, while such exploitation decays quickly over iterations.
8.4. Distribution-Based Estimation over Iterative MSP

Figure 22, in which we augment the iterative MSP with distribution-based estimation, shows that distribution-based estimation (DBE) can bring in statistically better performance. Figure 22 presents the cumulative distribution of localization errors. In general, two curves of DBE MSP lay slightly to the left of that of non-DBE MSP, indicating that DBE MSP has a smaller statistical mean error and averaged maximum error than non-DBE MSP. We note that because DBE is augmented on top of the best solution so far, the performance improvement is not signicant. When we apply DBE on basic MSP methods, the improvement would be much more signicant. We omit these results because of space constraints.
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Adaptive MSP for 200by200
25 Max Error of Regular Scan Max Error of Adaptive Scan Mean Error of Regular Scan Mean Error of Adaptive Scan

3:23

20

Error (in grid unit)

15

10

20

40

60

80

100

Number of Target Nodes

Fig. 23. Adaptive MSP for 200 by 200 eld.


Adaptive MSP for 500by80
70 Max Error of Regular Scan Max Error of Adaptive Scan Mean Error of Regular Scan Mean Error of Adaptive Scan

60

Error (in grid unit)

50

40

30

20

10

20

40

60

80

100

Number of Target Nodes

Fig. 24. Adaptive MSP for 500 by 80 eld.

8.5. Improvements of Adaptive MSP

This section illustrates the performance of adaptive MSP over nonadaptive MSP. We note that the feedback-based adaptation can be applied to all MSP methods, since it only affects how events are generated but not sequence processing. In this experiment, we evaluated how adaptive MSP can improve the best solution so far (regular scans in iterative MSP with DBE). The default angle granularity (i.e., step) for adaptive searching is set to be 5 in the simulation.
8.5.1. The Impact of Area Shape. First, if system settings are regular, the adaptive method can hardly contributes to the results. For a square-shaped area (regular), the performance of adaptive MSP and regular scans are very close and almost overlapping with each other as shown in Figure 23. However, if the shape of the area is not regular, for example, not a square, adaptive MSP helps to choose the appropriate localization events to compensate. Therefore, adaptive MSP can achieve a better mean error and maximum error as shown in Figure 24. For example, adaptive MSP improves localization accuracy by 30% when the number of target nodes is 10. 8.5.2. The Impact of Target Nodes Number. Figure 24 shows that when node density is low, adaptive MSP brings more benet than when node density is high. This phenomenon makes statistical sense since the law of large numbers tells us that node placement approaches a uniform distribution as the number of nodes increases. Adaptive MSP has an edge when network layout is not uniform.
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:24
Mean Error CDF at Different Angle Steps in Adaptive Scan Cumulative Distrubutioin Functions (CDF)
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 10 20 30 40 50 5 Degree Angle Step Adaptive 10 Degree Angle Step Adaptive 20 Degree Angle Step Adaptive 30 Degree Step Regular Scan

Z. Zhong and T. He

Mean Error

Fig. 25. Impact of the number of candidate events.

Fig. 26. The 360-node mirage test-bed (light beam scan).

8.5.3. The Impact of Number of Candidate Events. Figure 25 shows that smaller adaptive searching step gives better statistical performance in terms of mean localization error. The rational is clear: more candidate scan angles provide MSP more opportunity to choose the best one approaching the optimal angle.
8.6. Simulation Summary

Starting from the basic MSP, we have demonstrated step-by-step how four optimizations can be applied on top of each other to improve the localization performance. In other words, these optimizations are compatible with each other and can jointly improve the overall performance. We note that our simulation was done under assumption that complete node sequences can be obtained without sequence ips. In the next section, we present two versions of system implementation that reveal and address practical issues.
9. SYSTEM EVALUATION

In this section, we present system implementation of MSP on two test-beds. The rst one is called Mirage, a large indoor test-bed we built over a six-month period that can support up to 360 nodes working simultaneously under multiple voltages. The whole test-bed is composed of six 4-feet by 8-feet boards, illustrated in Figure 26. Each board in the system can be used as an individual sub-system that be powered, controlled and metered separately. We use three high-end HITACHI CP-X1250 projectors, connected through a MATROX Triplehead2go graphics expansion box, to create an ultra-wide integrated display on six boards. Figure 26 shows that a long tilted line is generated
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP

3:25

Fig. 27. The 20-node outdoor experiments (sound wave propagation).

by the projects. We have implemented all ve versions of MSP on the Mirage test-bed, running 46 MICAz motes. In the outdoor system, a DELL A525 SPEAKER is used to generate a 4700 Hz beep as shown in Figure 27. We place 20 MICAz motes in the backyard of a house. Since the location is not completely open, sound wave are reected, scattered and absorbed by various objects in the vicinity, causing a multipath effect. Due to the limitation of experimental hardware, we tested the design with a relatively small scale outdoor system. For networks deployed in a large outdoor area, we consider that rstly MSP can work by using more powerful event generators [Stoleru et al. 2005]; and in addition, regional localization results for different parts of the network could be obtained individually and then merged easily.
9.1. Indoor System Evaluation

During indoor experiments, we encountered several real-world problems that are not revealed in the simulation. First, sequences obtained were partial due to sensing errors and message losses. Second, elements in the sequences could ip due to detection delay, uncertainty in media access or time synchronization error. We show that these issues can be addressed by using the protection band method described in Section 7. In the following, unless mentioned otherwise, the default setting of the system is three anchors and six scan events with scanning line speed of 8.6 feet/s.
9.1.1. On Scanning Speed and Protection Band. In this experiment, we studied the impact of the scanning speed and the length of the protection band on the performance of the localization. In general, with increasing scanning speed, nodes have less time to respond to the event and the time gap between two adjacent nodes shrinks, leading to an increasing number of partial sequences and sequence ips. Figure 28 shows the node ip situations for six scans with distinct angles under different scan speeds. The X-axis shows the distance in terms of rank between the ipped nodes in a correct node sequence (obtained from the true locations of all nodes). Y-axis shows the total number of ips in six scans. This gure tells that faster scan brings in not only increasing number of ips, but also long distance ips that require bigger protection band to prevent fatal elimination errors. Figure 29 shows the effectiveness of the protection band in terms of reducing the number of unlocalized nodes. When we use a moderate scan speed (4.3 feet/s), the chance of ipping is rare, therefore we can achieve 0.45 feet mean accuracy (Figure 30) with 1.6 feet maximum error (Figure 31). With increasing scan line speed, the protection band needs to be set to a larger value to deal with ipping. An interesting phenomenon can be observed in Figure 29, 30, and 31: on the one hand, applying protection band can sharply reduce the number of unlocalized nodes; on the other hand, protection band
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:26

Z. Zhong and T. He

(1) Flip Distribution for 6 Scans at Line Speed of 4.3feet/s 40 Flips 20 0

5 10 15 (2) Flip Distribution for 6 Scans at Line Speed of 8.6feet/s

20

40 Flips 20 0

5 10 15 (3) Flip Distribution for 6 Scans at Line Speed of 14.6feet/s

20

40 Flips 20 0

5 10 15 Node Distance in the Ideal Node Sequence

20

Fig. 28. Number of Flips for Different Scan Speed.

Unlocalized Nodes vs. Protection Band


20 18 16 Scan Line Speed: 14.6feet/s Scan Line Speed: 8.6feet/s Scan Line Speed: 4.3feet/s

Unlocalized Nodes

14 12 10 8 6 4 2 0 0 0.2 0.4 0.6 0.8 1

Protection Band (in feet)

Fig. 29. Impact of the scanning speed and protection band: Number of unlocalized nodes.

Mean Error(Line Scan at Different Speed)


1.1

0.9

Error (in feet)

0.8

0.7

0.6 Scan Line Speed:14.6feet/s Scan Line Speed: 8.6feet/s Scan Line Speed: 4.3feet/s

0.5

0.4

0.2

0.4

0.6

0.8

Protection Band (in feet)

Fig. 30. Impact of the scanning speed and protection band: Mean localization error.

ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Max Error(Line Scan at Different Speed)
4 Scan Line Speed: 14.6feet/s Scan Line Speed: 8.6feet/s Scan Line Speed: 4.3feet/s 3.5

3:27

Error (in feet)

2.5

1.5

0.2

0.4

0.6

0.8

Protection Band (in feet)

Fig. 31. Impact of the scanning speed and protection band: Maximum localization error.
Unlocalized Nodes (Scan Line Speed 8.57feet/s)
20 18 Unlocalized node of Basic MSP Unlocalized node of Sequence Based MSP Unlocalized node of Iterative MSP

Unlocalized nodes out of 46

16 14 12 10 8 6 4 2 0 0 0.2 0.4 0.6 0.8 1

Protection Band (in feet)

Fig. 32. Impact of MSP methods and protection band: Number of unlocalized nodes.
Mean Error (Scan Line Speed 8.57feet/s)
1.4 1.3 1.2 Mean Error of Basic MSP Mean Error of Sequence Based MSP Mean Error of Iterative MSP

Error (in feet)

1.1 1 0.9 0.8 0.7

0.2

0.4

0.6

0.8

Protection Band (in feet)

Fig. 33. Impact of MSP methods and protection band: Mean localization error.

enlarges the location area where a target would potentially reside, introducing more uncertainty. Thus, there is a concave curve for both mean and maximum error when the scan speed is at 8.6 feet/s.
9.1.2. On MSP Methods and Protection Band. In this experiment, we show improvements resulting from three different methods. Figure 32 shows that a protection band of 0.35 feet is sufcient for the scan speed 8.57 feet/s. Figure 33 and Figure 34 show
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:28
Max Error (Scan Line Speed 8.57feet/s)
4

Z. Zhong and T. He

3.5

Error (in feet)

2.5

Max Error of Basic MSP Max Error of Sequence Based MSP Max Error of Iterative MSP

1.5

0.2

0.4

0.6

0.8

Protection Band (in feet)

Fig. 34. Impact of MSP methods and protection band: Maximum localization error.
Unlocalized Nodes (Protection Band: 0.35 feet)
2.5 4 Scan Events at Speed 8.75feet/s 6 Scan Events at Speed 8.75feet/s 8 Scan Events at Speed 8.75feet/s

Unlocalized Nodes

1.5

0.5

10

11

Number of Anchors

Fig. 35. Impact of the number of anchors and scans: Number of unlocalized nodes.

clearly that iterative MSP (with adaptation) achieves best performance. For example, Figure 33 shows that when we set the protection band to be 0.05 feet, iterative MSP achieves 0.7 feet accuracy that is 42% more accurate than the basic design. Similarly, Figure 33 and Figure 34 show the double-side effects of protection band on the localization accuracy. In addition, by comparing Figure 32, Figure 33, and Figure 34, we can see an interesting phenomenon: although advanced MSP (e.g., sequenced-based MSP and iterative MSP) owns better performance in terms of localization accuracy, it might leave slightly more nodes unlocalized. This result is expected since advanced MSP aggressively shrink the localization area of each node and thus with higher probability of erasing the node from the map.
9.1.3. On Number of Anchors and Scans. In this experiment, we show a tradeoff between hardware cost (anchors) with soft cost (events). Figure 35 shows that with more cutting lines created by anchors, the chance of unlocalized nodes increases slightly. We note that with a 0.35 feet protection band, the percentage of unlocalized nodes is very small, for example, in the worst-case with 11 anchors, only 2 out of 46 nodes are not localized due to ipping. Figure 36 and Figure 37 show a tradeoff between number of anchors and the number of scan events. Obviously, with the increasing number of anchors, localization error drops signicantly. With 11 anchors we can achieve an accuracy as low as 0.25 0.35 feet, which is nearly a 60% improvement. Similarly, with increasing number of scans, localization error drops signicantly as well. We can observe about a 30% performance gain across all anchor settings when we increase the number of scans
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


Mean Error (Protection Band: 0.35 feet)
1 0.9 0.8 Mean Error of 4 Scan Events at Speed 8.75feet/s Mean Error of 6 Scan Events at Speed 8.75feet/s Mean Error of 8 Scan Events at Speed 8.75feet/s

3:29

Error (in feet)

0.7 0.6 0.5 0.4 0.3 0.2

10

11

Number of Anchors

Fig. 36. Impact of the number of anchors and scans: Mean localization error.
Max Error (Protection Band: 0.35 feet)
2.8 2.6 2.4 2.2 Max Error of 4 Scan Events at Speed 8.75feet/s Max Error of 6 Scan Events at Speed 8.75feet/s Max Error of 8 Scan Events at Speed 8.75feet/s

Error (in feet)

2 1.8 1.6 1.4 1.2 1 0.8 3 4 5 6 7 8 9 10 11

Number of Anchors

Fig. 37. Impact of the number of anchors and scans: Maximum localization error.

from 4 to 8. For example, with only three anchors, we can achieve 0.6-foot accuracy with 8 scans.
9.2. Outdoor System Evaluation

The outdoor system evaluation contains two parts: (i) effective detection ordering evaluation, which shows that sequences can be readily obtained, and (ii) sound propagation based localization, which veries propagation-based localization.
9.2.1. Detection Ordering Evaluation. We evaluate the sequence ip phenomenon in wave propagation. As shown in Figure 38, 20 motes were placed as ve groups in front of the speaker (four nodes in each group at roughly the same distance to the speaker). The gap between each group is tested with 2, 3, 4 and 5 feet respectively in four experiments. Figure 39 shows the detection results. The X-axis in each subgraph indicates the group index and four nodes in each group are depicted with 4 bars. The Y-axis shows the detection rank of each node in corresponding node sequence. We can see from the gure: as the distance between each group increases, the number of ips in the resulting node sequence decreases. For example, in 2 feet subgraph, there are quite a few ips among nodes in adjacent and even nonadjacent groups, while in 5 feet subgraph, ips between different groups almost disappear. 9.2.2. Sound Propagation Based Localization. As shown in Figure 27, 20 motes are placed as a grid including 5 rows with 5 feet between each row and 4 columns with 4 feet between each column. Six 4700-Hz beep events are generated around the mote grid
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:30

Z. Zhong and T. He

Fig. 38. Wave detection.


2 feet group distance 20 15 Rank 10 5 0 Rank 20 15 10 5 0 3 feet group distance

2 3 4 5 Group Index 4 feet group distance

2 3 4 5 Group Index 5 feet group distance

20 15 Rank 10 5 0 Rank 1 2 3 4 Group Index 5

20 15 10 5 0

2 3 4 Group Index

Fig. 39. Ranks vs. distances.

by a speaker. Figure 40 shows the localization results with iterative MSP (3 times of iterative processing) with protection band of 3 feet. The average error of the localization results is 3 feet and the maximum error is 5 feet with one unlocalized node. We found that sequence ip in wave propagation is more severe than that in the indoor line-based test. This is expected due to (i) the high-propagation speed of sound; and (ii) random detection delays at the acoustic sensor of each node. In addition, the speaker we use is not a perfect omnidirectional acoustic source, which causes many partial node sequences. Currently, we use MICAz mote equipped with a low-quality microphone. We believe that if use a better speaker with more events, the system can yield better accuracy. Despite the hardware constrains, the MSP algorithm still successfully localized most of the nodes with good accuracy.
10. CONCLUSIONS

In this article, we present the rst work that exploits the concept of Multi-Sequence Processing to localize sensor nodes. We demonstrated that we could signicantly improve localization accuracy by making full use of the information embedded in multiple easy-to-get one-dimensional node sequences. We proposed four novel optimization methods for exploiting order and marginal distribution among nonanchor nodes as
ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP


24 22 20 18 Y-Dimension (feet) 16 14 12 10 8 6 4 2 Anchor 0 0 2 4 6 8 10 X-Dimension (feet) 12 14 Node

3:31

Fig. 40. Localization error (sound wave propagation).

well as the feedback information from available localization results. Importantly, these optimization methods can be used together and improve accuracy additively. Practical issues of partial node sequence and sequence ip were identied in two test-beds and addressed in the article. We also evaluated performance at scale through analysis as well as extensive simulations. Evaluation results demonstrate that requiring neither costly hardware on sensor nodes nor precise event distribution, MSP can achieve a sub-foot accuracy with very few anchor nodes provided sufcient events. In fact, MSP offers an optional trade-off between hardware cost (anchor nodes) and soft cost (localizaiton events). When anchors are scarce, more events can be used for compensation, vice-versa. Therefore, MSP is able to provides nice exibility among diverse applications.
REFERENCES
BAHL, P., BAHL, P., AND PADMANABHAN, V. N. 2000. Radar: An in-building RF-based user location and tracking system. In Proceedings of IEEE INFOCOM. 775784. BROXTON, M. 2005. Localizing a sensor network via collaborative processing of global stimuli. In Proceedings of EWSN. 321332. BULUSU, N., HEIDEMANN, J., AND ESTRIN, D. 2000. GPS-less low cost outdoor localization for very small devices. IEEE Personal Comm. Mag. 7, 2834. CULLER, D., ESTRIN, D., AND SRIVASTAVA, M. 2004. Overview of sensor networks. IEEE Computer Mag. 37, 4149. ELSON, J., GIROD, L., AND ESTRIN, D. 2002. Fine-grained network time synchronization using reference broadcasts. SIGOPS Oper. Syst. Rev. 36, 147163. GOLDENBERG, D. K., BIHLER, P., CAO, M., FANG, J., ANDERSON, B. D. O., MORSE, A. S., AND YANG, Y. R. 2006. Localization in sparse networks using sweeps. In Proceedings of the 12th Annual International Conference on Mobile Computing and Networking (MobiCom). 110121. HE, T., HUANG, C., BLUM, B. M., STANKOVIC, J. A., AND ABDELZAHER, T. 2003. Range-free localization schemes for large scale sensor networks. In Proceedings of the 9th Annual International Conference on Mobile Computing and Networking (MobiCom). 8195. HE, T., KRISHNAMURTHY, S., LUO, L., YAN, T., GU, L., STOLERU, R., ZHOU, G., CAO, Q., VICAIRE, P., STANKOVIC, J. A., ABDELZAHER, T. F., HUI, J., AND KROGH, B. 2006. Vigilnet: An integrated sensor network system for energy-efcient surveillance. ACM Trans. Sen. Netw. 2, 1. KARP, B. AND KUNG, H. T. 2000. GPSR: Greedy perimeter stateless routing for wireless networks. In Proceedings of the 6th Annual International Conference on Mobile Computing and Networking (MobiCom). 243254.

ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

3:32

Z. Zhong and T. He

KIM, Y.-J., GOVINDAN, R., KARP, B., AND SHENKER, S. 2005. Geographic routing made practical. In Proceedings of the 2nd Conference on Symposium on Networked Systems Design & Implementation (NSDI). 217230. KUSY, B., DUTTA, P., LEVIS, P., MAROTI, M., LEDECZI, A., AND CULLER, D. 2006. Elapsed time on arrival: A simple and versatile primitive for canonical time synchronisation services. Int. J. Ad Hoc Ubiquitous Comput. 1, 4, 239251. KWON, Y. AND AGHA, G. 2008. Passive localization: Large size sensor network localization based on environmental events. In Proceedings of the 7th International Conference on Information Processing in Sensor Networks (IPSN). 314. LAZOS, L., AND POOVENDRAN, R. 2005. SERLOC: Robust localization for wireless sensor networks. ACM Trans. Sen. Netw. 1, 1, 73100. E MAROTI, M., KUSY, B., SIMON, G., AND L DECZI, A. 2004. The ooding time synchronization protocol. In Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems (SenSys). 3949. A E MAROTI, M., VOLGYESI, P., DORA, S., KUSY, B., N DAS, A., L DECZI, A., BALOGH, G., AND MOLNAR, K. 2005. Radio interferometric geolocation. In Proceedings of the 3rd International Conference on Embedded Networked Sensor Systems (SenSys). 112. MOORE, D., LEONARD, J., RUS, D., AND TELLER, S. 2004. Robust distributed network localization with noise range measurements. In Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems (SenSys). 5061. NAGPAL, R. AND COORE, D. 1998. An algorithm for group formation in an amorphous computer. In Proceedings of the 10th International Conference on Parallel and Distributed Systems (PDCS). NICULESCU, D. AND NATH, B. 2001. Ad-hoc positioning system. In Proceedings of IEEE GLOBECOM. NICULESCU, D. AND NATH, B. 2003. Ad hoc positioning system (APS) using AOA. In Proceedings of IEEE INFOCOM. PRIYANTHA, N. B., CHAKRABORTY, A., AND BALAKRISHNAN, H. 2000. The cricket location-support system. In Proceedings of the 6th Annual International Conference on Mobile Computing and Networking (MobiCom). 3243. ROMER, K. 2003. The lighthouse location system for smart dust. In Proceedings of the 1st International Conference on Mobile Systems, Applications and Services (MobiSys). 1530. SAVVIDES, A., HAN, C.-C., AND STRIVASTAVA, M. B. 2001. Dynamic ne-grained localization in ad-hoc networks of sensors. In Proceedings of the 7th Annual International Conference on Mobile Computing and Networking (MobiCom). 166179. SHANG, Y., RUML, W., ZHANG, Y., AND FROMHERZ, M. P. J. 2003. Localization from mere connectivity. In Proceedings of the 4th ACM International Symposium on Mobile ad hoc Networking & Computing (MobiHoc). 201212. E A SIMON, G., MAROTI, M., L DECZI, A., BALOGH, G., KUSY, B., N DAS, A., PAP, G., SALLAI, J., AND FRAMPTON, K. 2004. Sensor network-based countersniper system. In Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems (SenSys). 112. STOLERU, R., HE, T., STANKOVIC, J. A., AND LUEBKE, D. 2005. A high-accuracy, low-cost localization system for wireless sensor networks. In Proceedings of the 3rd International Conference on Embedded Networked Sensor Systems (SenSys). 1326. STOLERU, R., VICAIRE, P., HE, T., AND STANKOVIC, J. A. 2006. Stardust: a exible architecture for passive localization in wireless sensor networks. In Proceedings of the 4th International Conference on Embedded Networked Sensor Systems (SenSys). 5770. TERZIS, A., ANANDARAJAH, A., MOORE, K., AND WANG, I.-J. 2006. Slip surface localization in wireless sensor networks for landslide prediction. In Proceedings of the 5th International Conference on Information Processing in Sensor Networks (IPSN). 109116. TEXAS INSTRUMENTS 2007. 2.4 GHz IEEE 802.15.4 / ZigBee-Ready RF Transceiver CC2420 (Rev. B). Texas Instruments. WEISSTEIN, E. W. Plane division by lines. mathworld.wolfram.com/PlaneDivisionbyLines.html. WELLENHOFF, B. H., LICHTENEGGER, H., AND COLLINS, J. 1997. Global Positions System: Theory and Practice. Springer Verlag. WERNER-ALLEN, G., JOHNSON, J., RUIZ, M., LEES, J., AND WELSH, M. 2005. Monitoring volcanic eruptions with a wireless sensor network. In Proceedings of the 2nd European Workshop on Wireless Sensor Networks (EWSN). WHITEHOUSE, K. 2002. The design of calamari: an ad-hoc localization system for sensor networks. In Master Thesis, University of California at Berkeley. WHITEHOUSE, K. AND CULLER, D. 2002. Calibration as parameter estimation in sensor networks. In Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications (WSNA). 5967.

ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

Wireless Sensor Node Localization by MSP

3:33

WHITEHOUSE, K., KARLOF, C., AND CULLER, D. 2007. A practical evaluation of radio signal strength for rangingbased localization. SIGMOBILE Mob. Comput. Commun. Rev. 11, 1, 4152. WHITEHOUSE, K., KARLOF, C., WOO, A., JIANG, F., AND CULLER, D. 2005. The effects of ranging noise on multihop localization: An empirical study. In Proceedings of the 4th International Symposium on Information Processing in Sensor Networks (IPSN). 10. YEDAVALLI, K., KRISHNAMACHARI, B., RAVULA, S., AND SRINIVASAN, B. 2005. Ecolocation: a sequence based technique for RF localization in wireless sensor networks. In Proceedings of the 4th International Symposium on Information Processing in Sensor Networks (IPSN). 38. ZHOU, G., HE, T., KRISHNAMURTHY, S., AND STANKOVIC, J. A. 2004. Impact of radio irregularity on wireless sensor networks. In Proceedings of the 2nd International Conference on Mobile Systems, Applications, and Services (MobiSys). 125138. Received February 2008; revised August 2009; accepted Janurary 2010

ACM Transactions on Embedded Computing Systems, Vol. 11, No. 1, Article 3, Publication date: March 2012.

You might also like