practical virtual coordinates for large wireless sensor
play

Practical Virtual Coordinates for Large Wireless Sensor Networks - PowerPoint PPT Presentation

Practical Virtual Coordinates for Large Wireless Sensor Networks Jiangwei Zhou*, Yu Chen + , Ben Leong , Boqin Feng* *Xian Jiaotong University + Duke University National University of Singapore Practical Virtual Coordinates for Large


  1. 3, 3,200 200-node ode Ne Network ork w with ith Obs Obstacles es Actual PSVC NoGeo Coordinate assignment + Spring relaxation ⇒ increase convexity

  2. Gre Greedy f forw orwarding ng s suc uccess rate rate vs. I Ite terat ations (for 3, or 3,200 200-node node 2D 2D ne netw twor orks) PSVC relaxation unstable NoGeo

  3. Ove Overh rhead d pe per n r node ode vs vs. Ne Network ork size ize NoGeo Cost from propagation of reference PSVC node hop counts

  4. Limitations/Future Work • PSVC fits in 48 KB TelosB executable memory • NoGeo, PSVC/GDSTR cannot fit • Improve memory footprint • Evaluation for incremental growth and node failures

  5. More details in paper • PSO Algorithm • Details of PSVC • PSVC easily extensible to 3D • Comparison of storage costs • Two-hop greedy forwarding can improve performance significantly • Evaluations on 1 20-node Indriya TelosB testbed

  6. TinyOS Source Code Available here: https://sites.google.com/site/geographicrouting

  7. Conclusion • Routing stretch – Lower than NoGeo – Comparable to actual physical coordinates – Superior for networks with obstacles • Converges fast (~1 0 iterations) • Works for 3D networks (!) • Practical : implemented in TinyOS and evaluated in TelosB testbed Q UESTI UESTIONS? S?

  8. THANK YOU

  9. Background • Geographic routing is a promising approach for wireless networks – Achieve close to optimal routing stretch – Scale well – Routing states is dependent on local network density and not on network size • Nodes need location information while no location information is useful at hand – Employ virtual coordinates

  10. Case for Virtual Coordinates • Not feasible to manually configure coordinates for each node • GPS does not work always • Virtual coordinates are sometimes better, e.g. sensornet on ship • Actual physical locations are not required (Rao et al., 2003) • Previous work: good for dense networks and focused on 2D networks • Know: greedy forwarding is efficient • Challenge: can we assign coordinates so that greedy forwarding always works even for 3D networks?

  11. Related Work • Routing algorithms based non- Euclidean coordinate systems – VPCR (Newsome et al., 2003) – BVR(Fonseca et al., 2005) – S4(Mao et al., 2007) • Do not scale as well as geographic routing for large (3,200 node) networks (SenSys 201 0)

  12. GSpring (Leong et al., 2007) reference node

  13. GSpring (Leong et al., 2007) p 1 maximum hops

  14. GSpring (Leong et al., 2007) p 1 maximum hops p 2

  15. GSpring (Leong et al., 2007) p 1 h p 2 1 h 2 p 3

  16. GSpring (Leong et al., 2007) p 4 p 1 h 1 h 2 h 3 p 2 p 3

  17. GSpring (Leong et al., 2007) p 6 p 4 p 8 p 1 Each will know of the hop counts between every pair of perimeter nodes p 2 p 7 p 5 p 3

  18. Projection onto Circle p 4 p 6 p 8 p 1 Circumference = spring rest length x total hop count p 2 p 7 p 5 p 3

  19. Projection onto Circle p 4 p 6 p 8 p 1 Arc proportional to hop count p 2 p 7 p 5 p 3

  20. Particle Swarm Virtual Coordinates (PSVC) • Based on hop count • Reference nodes are elected to compute initial coordinates for all nodes • Using PSO algorithm to minimize the error when computing initial coordinates • Running a iterative relaxation procedure to make the virtual topology more convex • PSVC can be trivially extended to 3D coordinates

  21. Determining Initial Coordinates • Select reference nodes • Initialization of reference nodes • Coordinates for Non-reference nodes

  22. Determining Initial Coordinates • Select reference nodes • Initialization of reference nodes • Coordinates for Non-reference nodes

  23. Initialization of reference nodes p 1  (0, 0,0) 0) p 2  (100 100 h 12 12 ,0 ,0) ) // h ij is the hop count from p i to p j p 3  ( x 3 , y 3 ) // x 3 and y 3 are computed with triangle equalities using 1 00 h 31 and 1 00 h 32 , while error function is as − 1 k ∑ = − − 2 (| | 100 ) E x x h k i ik = 1 i

  24. Determining Initial Coordinates • Select reference nodes • Initialization of reference nodes • Coordinates for Non-reference nodes

  25. Coordinates for Non-reference nodes • Hop counts to all the reference nodes • The coordinates of all the reference nodes • Use PSO to minimize the error of objective function that maps the assigned virtual coordinates for each node to their hop counts to the reference nodes

  26. PSO equation and parameters   = + − + − ( ) ( ) v w v c r l x c r G x 1 1 2 2 i i i i i i   = +  x x v i i i  k  = − − ( ) w w w w  max max min  k max Parameters: = = = = = = 10 , 1 . 2 , 0 . 1 , 100 , 1 . 8 , POPSIZE w w k c c max min max 1 2 ∈ , 2 [ 0 , 1 ] r r 1 Notes: To prevent floating point overflow, all inputs are normalized by dividing them by 1 00 h 12

  27. Algorithm1 : Compute initial coordinates for non-reference nods with PSO Given: =  , 1 , , p i i p Initialize ∈ − ∈ − = =  [ 1 , 1 ], [ 1 , 1 ], 0 , 1 , , x v l i POPSIZE i i i = ∞ = = = ∞ , 1 ,  , , 0 , Lerror i POPSIZE G Gerror i i for k =0 to k max do k = − − ( ) w w w w max max min k max for i =0 to POPSIZE do ← + − + − ( ) ( ) v w v c r l x c r G x // where p is the number of the current 1 1 2 2 i i i i i i ← + x x v node to the reference node j , is the i i i ∑ = = p − − 2 p (| | ) error x p h h position for reference node j . j i j j ij j 1 error < if then Lerror i ← l x i i = Lerror error i end if error < if then Gerror ← G x i = Gerror error end if end for end for

  28. Relaxation after initialization • Spring force: = κ × − − × − ( | |) ( ) F l x x u x x ij ij i j i j (Hooke ’ s Law) • Net force: ∑ = F F i ij ≠ j i • Update rule: α min(| |, ) F i t = + x x F i i i | | F i

  29. Node joins after Convergence • Listens to the stayalive beacons of its neighbors to obtain their coordinates • If all its neighbors have stabilized, it computes its coordinates as a weighted sum of the coordinates of its neighbors’ coordinates 1 ∑ = x r x ∑ i ij j r j ij j 1 ∑ = y r y ∑ i ij j r j ij j

  30. Performance • Evaluation – Testbed – TinyOS Simulator • Measured metrics: – Greedy forwarding success rate – Hop Stretch – Storage cost – Overhead • Simulation topologies – range of network densities (average node degree) – larger networks up to 3,200 nodes • low/high density • obstacles

  31. Performance • Routing algorithm: GDSTR • Compare with –actual coordinates –NoGeo (Rao et al., 2003)

  32. Ave Averag age hop s hop stre tretch f h for GDS or GDSTR agai against ne netw twor ork de k dens nsity

  33. Two wo-hop hop gre greedy for orwar arding suc uccess rate rate against ne agai netw twor ork k size ize in 2D ne in 2D netw twor orks

  34. Ave Averag age hop s hop stre tretch h agai against ne netw twor ork k size ize in 2D ne in 2D netw twor orks

Recommend


More recommend