Post on 19-Dec-2015
transcript
CS 546: Intelligent Embedded Systems
Gaurav S. Sukhatme
Robotic Embedded Systems LabCenter for Robotics and Embedded Systems
Computer Science DepartmentUniversity of Southern California
gaurav@usc.eduhttp://robotics.usc.edu/~gaurav/CS546
• Last time– HW3– Time synchronization basics– Firefly paper– RBS paper
• Today– Aevena updates (Richard)– HW4 (Karthik)– Localization overview– Localization papers
Today
Memory
Processor
Interface
Sensor and actuator suite
Energy supply
External communication
•Platform•OS and SW architecture•Tools•User interface•Application
Figure adapted from [Pottie and Kaiser 2005]
1/24, 4/18: Cyclops
1/31: Networking
2/21: Energy management4/18: Cyclops
2/7,14 and 28: Time synch, localization and data management3/21,28 and 4/11:Environmental monitoring
What is localization ?
• The process of identifying the absolute or relative spatial location of nodes
Why is it difficult ?• Sensor measurements are noisy, delayed,
intermittent, and often unavailable
Why Localize?
• To location-stamp sensor measurements• To locate and track objects in the environment• To monitor the spatial evolution of a diffuse
phenomenon• To determine the extent and quality of sensing
coverage• To load balance in topology control
mechanims• To form clusters for hierarchical processing• To perform routing• To facilitate efficient spatial querying
Key Issues: What to localize ?
• One model in networked localization is to assume that some nodes are already localized (anchors or references)
• How many anchors ?• Can (should) the anchors move ?• Are the non-anchored nodes
cooperative ?
Key Issues: When to localize ?
• Often: all nodes need to be localized at the beginning of operation
• One shot vs. repeated
Key Issues: How well to localize ?
• Absolute vs. relative• Symbolic (topological)• Accuracy, reliability and
computation efficiency tradeoff
Key Issues: Where to localize ?
• Central vs. distributed• If distributed – in anchor nodes or
in the non-anchor nodes• Security considerations may play a
role
Key Issues: How to localize ?
• Measurements– Relative: Signal strength, range
(acoustic, RF, laser, IR etc.), angular dispersion of neighbors
– Absolute: GPS, comparison to a global map
• Techniques– Proximity, centroids, constraints,
ranging, angulation, pattern recognition, filtering, scaling, potential fields….
Two broad approaches in networked systems
• Coarse-grained– Small set of discrete measurements (e.g.
binary proximity)
• Fine-grained– Large numbers of finer measurements (RF
ranging, signal waveform, angulation, timing etc.)
• In addition if nodes move and rate information is available then filtering techniques from robotics can be used
Coarse-grained Node Localization: Binary Proximity• Set of anchors placed in the environment• Either anchors emit beacon signals or a node
beacons when it needs to be localized• Nodes can localize themselves coarsely to the
beacon location (or resolve conflicts)• Canonical example is the Active Badge system
(indoor office environment)– Badges beacon periodically– Infrastructure responds with localization information– Room level localization
• Modern variants using RFID tags
Coarse-grained Node Localization: Centroids
• Higher density set of anchors • If unknown node hears n beacons
it localizes itself to their centroid • Simple calculation, distributed
across all nodes• Extensions: weighted centroids,
stochastic combinations
Coarse-grained Node Localization: Geometric
constraints• If geometric extent of (say) radio signal
is r; Rmin < r < Rmax • When multiple anchor beacons are
heard at a node, it must solve an area intersection problem
• Area is determined by range boundaries and angular boundaries (if any)
• Size and shape of intersection regions provides an error bound on location accuracy
Coarse-grained Node Localization: Identifying codes• Careful anchor placement to
guarantee that each point is covered by a unique set of anchors
• General problem of a minimal ID code is NP-complete, but there are decent polynomial time heuristics
Fine-grained Node Localization: RSS
• Radio signal strength diminishes with distance
• Received power should be an indicator of distance from transmitter
Xd
ddPdP
00 log10)()(
Path loss exponent – can be experimentally determined for some environments
Noise – often high variance
Fine-grained Node Localization: TDoA
• Combine acoustic and RF techniques• Simultaneously transmit radio and
acoustic signals; measure respective arrival times Ts and Tr at receiver
• Distance is (Ts – Tr )/Vs
• Issues– Works well in close proximity– Acoustic signals show multipath– Higher cost
Fine-grained Node Localization: Triangulation
• Location of unknown node determined by n measurements of distance to reference nodes
• Formulate as a least squares problem
2/120
20 )()( yyxxd iii Correct distance between
node o and anchor i
iii dd ˆ Difference between measured and actual distance
• Determine (xo,yo) that minimizes
n
ii
1
2
Fine-grained Node Localization: Angle of Arrival• Location of unknown node determined by
n measurements of angle to reference nodes
• Can (again) formulate as a least squares problem
Fine-grained Node Localization: Pattern Matching• Develop signal strength map of signal
coverage from multiple transmitters and perform pattern matching on measurements at run time
Network-wide Localization
• Ideally, simply decompose this into individual node localization techniques
• In practice, this is often hard (why ?)– Either collect all data centrally– Or attempt a distributed technique
Constraint-based
• Express geometric constraints as inequalities (range, annulus, angular range)
• Select an objective function (minimize total error say)
• Solve using standard semi-definite programming techniques (some of which have distributed iterative formulations)
• One can also pose this problem stochastically and solve for the maximum likelihood location estimate
Iterative Multilateration
• Assume inter-node distances are available between all neighboring nodes
• Pick node with most anchor neighbors and perform triangulation to locate it
• Add this node to the list of anchors, pick next node with largest number of anchor neighbors, and repeat
• In a distributed version, any node with a sufficient number of anchor neighbors can start the process
Iterative Multilateration: Issues
• Nodes w/o sufficient anchor density in neighborhood remain unlocalized– One solution is collaborative
multilateration (Savvides paper)
• The order of the selected nodes affects accuracy
Collaborative Multilateration
• Determine collaborative subgraphs within the network that contain reference and unknown nodes such that there is a unique solution for the location of the unknown nodes
• Combine with iterative multilateration
Multi-hop Distance Estimation
• Used if anchors are several hops away• DV-hop: distance from anchor is
obtained by multiplying number of hops on shortest path by an (estimated) average distance per hop
• DV distance: If inter-node distances are known then use those instead of the above estimate
• Euclidean propagation on quadrilaterals
Force/Potential Approaches
• Use difference between actual and estimated position to generate a restoring ‘force’ that change the position estimate along the gradient of the force