VRAC: Simulation Results #1
VVRAC: Simulation Results
Florian Huc and Aubin Jarry
Computer Science DepartmentUniversity of Geneva1211 Geneva 4,Switzerlandfi[email protected]
Abstract
In order to make full use of geographic routing techniques developed forlarge scale networks, nodes must be localized. However, localization andvirtual localization techniques in sensor networks are dependent either onexpensive and sometimes unavailable hardware (e.g. GPS) or on sophisti-cated localization calculus (e.g. triangulation) which are both error-proneand with a costly overhead.Instead of localizing nodes in a traditional 2-dimensional space, weuse directly the raw distance to a set of anchors to route messages ina multi-dimensional space. This should enable us to use any geographicrouting protocol in a robust and efficient manner in a very large rangeof scenarios. We test this technique for two different geographic routingalgorithms, namely GRIC and ROAM. The simulation results show thatusing the raw coordinates does not decrease their efficiency.
Key words:
Sensor Networks, Routing, Anchors, Virtual Coordinates a r X i v : . [ c s . N I] O c t Introduction, State of the Art
Sensor networks can be used in a wide range of applications. A prominentapplication is to make measurements on a wide area and to gather all thismeasures at one or several sinks. One can also consider scenarios in whichany pair of sensors may want to communicate [ASSC02].Although, in wired networks each node is equipped with substantialcomputation and storage resources, and can maintain routing tables, thisis far too costly in sensor networks which are made of small and cheap de-vices. Indeed, the computation phase requires energy (which is a limitedresource) and the storage of data requires energy and space (also a lim-ited resource). Instead of using routing tables, local routing techniqueshave been developed. A compelling technique consists in using nodes’coordinates. Many algorithms have been devised such as GPSR [KK00]and OAFR [KWZ08] which use greedy routing and face routing on aplanarized connectivity graph. One can also cite GRIC [PN07] a greedyrouting algorithm following the sides of an obstacle when one is met, andwhich introduces some inertia in the direction followed by the message.If one authorizes the use of a bit of memory at each node, then earlyobstacle detection algorithms have been proposed [MLNR08,HJL + + Given a node at location X , we define the multi-dimensional coordi-nates f ( X ) of this node as its distance to some anchors at location A , A , . . . A n : f : X → d ( X, A ) d ( X, A ) . . .d ( X, A n ) . Observe that any continuous distance d on the plane will produce acontinuous surface in R n and that any distance function d may be used.In this paper, we consider both the Euclidean distance and the distancein terms of hops. Euclidean distance
In the plane with Euclidean distance, a node at loca-tion X has a pair of absolute coordinates ( x, y ). If the anchor at location A i has for absolute coordinates ( x i , y i ) then f is a function from R → R n defined by f : ( x, y ) → (cid:112) ( x − x ) + ( y − y ) (cid:112) ( x − x ) + ( y − y ) . . . (cid:112) ( x − x n ) + ( y − y n ) . ig. 1. Representation of the distance to three anchors.Since the functions f i : ( x, y ) → (cid:112) ( x − x i ) + ( y − y i ) are continuousand in C ∞ except in ( x i , y i ), the image f ( R ) in R n is a continuoussurface with singularities at the image of anchors.Figure 1 represents the image of f , when there are three anchors atlocation (0 , ,
1) and (1 , Hop distance
The distance in terms of hops between two nodes u and v isthe minimum number k of edges in a path from u to v : u, v , . . . , v k − , v .We note it d hop ( u, v ) = k .This defines correctly a distance function since one can easily verifythat: – for all pairs of nodes u, v , we have d h op ( u, v ) = 0 iff u = v – given three nodes u, v, w , d hop ( u, v ) ≤ d hop ( u, w ) + d hop ( w, v ) – the hop distance is symmetric and positive. .2 Anchors distance From the function f , we define a new distance function which we call anchors distance : given two nodes u, v , d anchor ( u, v ) = || f ( u ) − f ( v ) || = (cid:112)(cid:80) ni =1 ( f i ( u ) − f i ( v )) To check that d anchor is a distance function, notice that: – d anchor is positive. – d anchor satisfies the triangular inequality. Indeed, for any 1 ≤ i ≤ n and any three nodes u, v, w , (cid:112) f i ( u ) − f i ( v ) ≤ (cid:112) f i ( u ) − f i ( w ) + (cid:112) f i ( w ) − f i ( v ) . – d anchor is symmetric.It only remains to check that when d anchor ( u, v ) = 0 ⇒ u = v . Indeed,it is not always true, in particular if there are one or two anchors, twonodes in a plane may satisfy d anchor ( u, v ) = 0 and u (cid:54) = v . This question isanswered by Lemma 1 for the case of the Euclidean distance. In the caseof hopdistance the problem was studied in [CCDU05]. The authors showthat with anchors forming an equilateral triangle, nodes that share thesame coordinates inside the triangle form ambiguity zones whose diame-ters are bounded by the communication radius of nodes at high density. Definition 1.
Given a k dimensional space, we say that k + 1 points arein a general setting if no k − subspace contains all points. Lemma 1.
Given a k dimensional space with the Euclidean distance d ,if there are k + 1 anchors in a general setting, then d anchor is a distance.Proof. We need to check that given two nodes u, v of a k dimensionalspace, d anchor ( u, v ) = 0 ⇒ u = v if we have at least k + 1 anchors in ageneral setting.If u and v are two different points, then the subspace of points equidis-tant to them defined as { x : d ( u, x ) = d ( v, x ) } is a hyperplane, hence itcannot contain all anchors by hypothesis. So we have u = v . Remark 1. If d anchor is defined using d hop , the previous lemma may notbe verified. Indeed, two points which are close one to another may haveexactly the same coordinates in terms of hop. As long as they are neigh-bors one of another, this is not a problem. Giving them a different identitymakes it possible to recognize them when the message reaches its desti-nation in terms of coordinates. This problem did not occur during theexperiments. A Y
Fig. 2.
Anchor in the middle problem
Anchor in the middle problem
The surface singularities near anchors is aconsequence of the more general anchor-in-the-middle problem. Supposethat there are three locations
A, X, Y in the Euclidean plane such that XY = 3 × XA (see Figure 2). While trying to route from point X topoint Y , a coordinate related to A will tell X to send the message awayfrom A , since X is closer to A then Y , which is exactly the wrong thingto do in this context. This problem is independent from the choice of thedistance function, but is not without solutions. An escape solution wouldbe to have only anchors on the boundary of the network. This is a commonstrategy with virtual coordinates, used for instance in [CCDU05,RPSS03].A second solution would be to have enough anchors so that the problemis mitigated. A third solution would be to wisely select anchors whilerouting, ignoring anchors whose distance to the sender is less than thedistance to the destination and less than half the distance to the farthestanchor. Nevertheless, our experiments show that choosing only six anchorsat random in the whole network is sufficient to solve the problem. Curve
The surface f ( R ) has a curve . If we use the Euclidean distance, thesurface will be almost flat far away from the anchors, but the curve will bemore pronounced near the anchors (see Figure 1). The curve will probablylead to somewhat sub-optimal curved paths in the original R , howeverit does not prevent from finding a path. As an illustration, ships do notfollow constant latitude paths, which may be up to π times longer thanwanted near the north or south pole. This means that some geographicproperties may not be preserved, however properties such as connectivityand subgraphs properties are preserved. Computation cost
While saving on initialization overhead, multi-dimensionalrouting causes some additional computation costs when sending messages.First, we point out that these computation costs are not communicationcosts and should be lower in terms of energy consumption by some orderof magnitude. Then, we believe that the added costs are most likely thatof multi-dimensional scalar products, which are just some added additionsnd multiplications, while the expensive operations (square root extrac-tion, divisions) stay the same as in traditional 2-dimensional routing.
We propose several scenarios for which our technique should be used.There are two main types. In the first one, the anchors are special nodesof the network which can advertise their distance in hop to the othernodes, for example via a flooding. We suppose that this nodes are chosenat random between all nodes of the network.The second type of scenario is when the signal is emitted by someexternal entities, as a plane or a robot which deploy the network. Justafter it would deliver a powerful signal at different positions which playthe role of anchors. Another option is to have special devices, which canbe seen as signal bombs, and whose only purpose is to emit a strong signaland to be an anchor. In these cases, the nodes will know the Euclideandistance to the anchors.
Our objective is to adapt geographic routing techniques that use Eu-clidean coordinates ( x, y ) so that they work using the anchors coordi-nates.
The greedy routing scheme consist in, given a current node u and a desti-nation v , choosing among the neighbors of v the one which is the closestto the destination. If we use the greedy routing scheme to route a mes-sage using a distance function, the message will reach the destinationgiven that there are no local minimum. This is easy to do with multidi-mensional coordinates. Hence it is possible to directly use any geographicrouting algorithm using greedy routing scheme. ROAM is a geographic routing algorithm based on the greedy routingscheme. It has been introduced in [HJL + Algorithm 1
VROAM
Input : A node, a message and a destination.Output : A node to which to forward the message.The current node proceeds to a dead-end evaluation process; if The current node is not marked then it chooses the next node using a greedy routing scheme among its unmarkedneighbors; else it chooses the next node using an escape mode. dead-end evaluation process
This process aims at marking nodes leadingto a local minima. The current node checks if there are nodes closer tothe destination than itself that are not already marked. If not, it marksitself and all its neighbors recursively execute a dead-end process. A nodewhich is not marked as a dead-end during the process advertises itself asa possible exit to its neighbors. A node which is marked and does notknow a possible exit and receives such a message stores the sender as apossible exit and recursively advertises itself as a possible exit. escape mode
In escape mode, a marked node forwards the message to anode which is a possible exit.In Section 4, we compare the efficiency of VROAM against ROAM.
If it is possible to adapt algorithms based on the greedy routing scheme,we also want to adapt other algorithms. Since the nodes of the networkare still in a surface, even with the new coordinate system, it is possible touse this surface and to define rotation. Using this, we can define a variantof GRIC using the anchors coordinates, we call it VGRIC.
How GRIC works
For more details, refer to the original paper [PN07].GRIC aims at sending a message towards an ideal direction −−−→ d ideal com-puted from the direction of the last hop −−→ d last and the direction of thedestination −−−−−→ d direction . If the previous direction −−→ d last was almost the direc-tion of the destination −−−−−→ d direction , then −−−→ d ideal = −−−−−→ d direction . Otherwise, −−−→ d ideal s computed by rotating −−→ d last , consistently with the previous hops (to en-sure that while going around an obstacle we do not change the way wego around it). VGRIC
This protocol is an adaptation of GRIC so that it uses the anchorscoordinates. We use an oriented plane tangent to the surface on whichwe make the rotation. In VGRIC, this plane is defined by two vectors −−−→ v north and −−→ v east . Algorithm 2
VGRIC
Input : A node and the destination of its message v dest , −−→ d last , −−→ p east .Output : A node to which to forward the message, −−→ v east .Computes −−−→ v north and −−→ v east Computes −−−→ d ideal Choose the best neighbor
Computation of the vectors
We set −→ Γ = { −→ uvd ( u,v ) : v ∈ Γ ( u ) } the set ofnormalized vectors defined using the current node and its neighbors.We set −−−−−→ d direction = −−−→ uv dest , and we choose among −→ Γ the vector −→ i min-imising the scalar product (taking the absolute value) with −−−−−→ d direction . Wethen set −−−→ v north = −−−−−→ d direction . −−→ d last ∗ −−→ d last + −−−−−→ d direction . −→ i ∗ −→ i and −−→ v east = −−−−−→ d direction . −→ i ∗ −−→ d last − −−−−−→ d direction . −−→ d last ∗ −→ i We then normalize both −−−→ v north and −−→ v east and check if −−→ v east . −−→ p east ≥
0. Ifnot, we negate −−→ v east . Computation of the ideal direction
We use the previous direction −−→ d last .We set x = −−→ d last . −−→ v east and y = −−→ d last . −−−→ v north . If x <
0, we negate it x = − x .We then make a rotation of the vector x ∗ −−→ v east + y ∗ −−−→ v north in the planedefined by −−−→ v north and −−→ v east of a predefined angle α (we took α = 0 . π inour experiments): −−−→ d ideal = (cos( α ) ∗ y + sin( α ) ∗ x ) ∗ −−−→ v north + (cos( α ) ∗ x − sin( α ) ∗ y ) ∗ −−→ v east . If the rotation was to important, i.e. −−−→ d ideal . −−→ v east < −−−→ d ideal . −−−→ v north >
0, then we set −−−→ d ideal = −−−→ v north . Best neighbor
It is the neighbor used to define −→ i ∈ −→ Γ which maximizes −→ i . −−−→ d ideal . ources Destinations Fig. 3.
Simulation settings.
We experimented the proposed techniques for both ROAM and GRIC.The implementations were made using AlgoSensim [Alg]. We compare theresults with the traditional ROAM and GRIC implementations.
Settings
We tested the techniques with six anchors, positioned at random.The distance to the anchors is either the exact distance (VROAM andVGRIC) or the distance in terms of hop (VROAMhop and VGRIChop).The scenario used is the following: a 50 ∗
50 area is covered by 2000to 8000 nodes which have communication radius 2. An obstacle withcrescent shape is positioned in between a zone from which are emitted themessages and a zone towards which the messages are aimed, as displayedon Figure 3.
Results
Concerning ROAM, the experiments show that the use of rawcoordinates to run routing algorithms give more than satisfactory results.Indeed the two modified algorithms perform as well as the original algo-rithm using real 2D coordinates. The path found by the three variantsof ROAM have similar stretch. However, whereas ROAM and VROAMmark dead-end zones of similar surface areas, VROAMhop’s dead-endzones tend to be smaller.In [RPSS03], the authors argue that using the distance in terms ofhops to the anchors often yields better results than using Euclidean dis-tance. We share this opinion: indeed, the hop-count contains in itselfinformation about the topology of the network, as it increases if there
10 20 30 4011.11.21.31.41.51.61.7 ROAMVROAMVROAMhop
Fig. 4.
Simulation results: average stretch of paths function of averagenumber of neighbors.is an obstacle between a node and an anchor. This is supported by theexperimental results concerning the size of dead-end zones.The fact that the three variants of ROAM compute paths of similarlength does not contradict this. Indeed ROAM marks node leading tolocal minima and hence obtains information similar to the hop-count.This explains that all three variants perform as efficiently.Concerning GRIC, with the Euclidean distance to the anchors, therouting paths are just slightly longer in average than with the normal co-ordinates, whereas with the hop distance, they are slightly shorter. Again,this is due to the fact that the hop distance contains more informationthan the Euclidean distance. Indeed, it is influenced by the obstacles andhelps in avoiding them.
We have seen that routing directly using as coordinates the distance toanchors gives very good results and avoids heavy computations. The over-head is completely avoided in some scenarios, for instance when the dis-tance to anchors is known through signal bombs. To further weaken local-ization assumptions, nodes may know their hop distance to only a subsetof all anchors. This may correspond to the case when nodes are inside abuilding and hence cannot receive the signal from an anchor in a differentroom. In any case, it would imply to select wisely a subset of anchors,on which to route the message at each step. Finally another planed de-velopment is to test this technique for routing algorithms with mobilenodes. eferences
Alg. AlgoSensim simulator. http://tcs.unige.ch/code/algosensim/overview.ASSC02. IF Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci. Wirelesssensor networks: a survey.
Computer networks , 38(4):393–422, 2002.BBS +
07. F. Barsi, A.A. Bertossi, F. Betti Sorbelli, R. Ciotti, S. Olariu, and M.C.Pinotti. Asynchronous Training in Wireless Sensor Networks. In
Workshopon Algorithmic Aspects of Wireless Sensor Networks (ALGOSENSORS) ,2007.BGJ05. J. Bruck, J. Gao, and A.A. Jiang. Localization and routing in sensor net-works by local angle information.
International Symposium on Mobile AdHoc Networking & Computing: Proceedings of the 6 th ACM internationalsymposium on Mobile ad hoc networking and computing , 2005.BNP +
08. F. Barsi, A. Navarra, M.C. Pinotti, C. Lavault, V. Ravelomanana, S. Olariu,and A. Bertossi. Efficient binary schemes for training heterogeneous sensorand actor networks. In , 2008.CCDU05. A. Caruso, S. Chessa, S. De, and A. Urpi. GPS free coordinate assignmentand routing in wireless sensor networks. In
Proceedings IEEE INFOCOM2005. 24th Annual Joint Conference of the IEEE Computer and Commu-nications Societies , volume 1, 2005.DSGS03. G. Di Stefano, F. Graziosi, and F. Santucci. Distributed positioning algo-rithm for ad-hoc networks. In
International Workshop on Ultra WidebandSystems (IWUWBS) , 2003.DSP08. G. Di Stefano and A. Petricola. A Distributed AOA Based LocalizationAlgorithm for Wireless Sensor Networks.
JOURNAL OF COMPUTERS ,3(4):1, 2008.HJL +
09. F. Huc, A. Jarry, P. Leone, L. Moraru, S. Nikoletseas, and J. Rolim. Earlyobstacle detection and avoidance for all to all traffic pattern in wirelesssen-sor networks. In
AlgoSensor , 2009.Hot96. S.M. Hotz. Routing information organization to support scalable interdo-main routing with heterogeneous path requirements PhD Thesis.
Universityof Southern California, Los Angeles, CA , 1996.KK00. B. Karp and HT Kung. GPSR: greedy perimeter stateless routing for wire-less networks. In
Proceedings of the 6th annual international conference onMobile computing and networking , pages 243–254. ACM New York, NY,USA, 2000.KSW04. Jon Kleinberg, Aleksandrs Slivkins, and Tom Wexler. Triangulation andembedding using small sets of beacons. In 45 th Annual IEEE Symposium onFoundations of Computer Science (FOCS) , pages 444–453. IEEE ComputerSociety Press, October 2004.KWZ08. F. Kuhn, R. Wattenhofer, and A. Zollinger. An algorithmic approach togeographic routing in ad hoc and sensor networks.
IEEE/ACM Transactionson Networking , 16(1):51–62, 2008.LKHL06. H. Lim, L. Kung, J. Hou, and H. Luo. Zero-configuration, robust indoorlocalization:Theory and experimentation. pages 1–12, 2006.LR03. Koen Langendoen and Niels Reijers. Distributed localization in wirelesssensor networks: a quantitative comparison.
Computer Networks , 43(4):499– 518, 2003. Wireless Sensor Networks.LNR08. L. Moraru, P. Leone, S. Nikoletseas, and J. Rolim. Geographic Routingwith Early Obstacles Detection and Avoidance in Dense Wireless SensorNetworks.
Lecture Notes in Computer Science , 5198:148–161, 2008.MLRT04. D. Moore, J. Leonard, D. Rus, and S. Teller. Robust distributed networklocalization with noisy range measurements. In
Proceedings of the 2nd in-ternational conference on Embedded networked sensor systems , pages 50–61.ACM New York, NY, USA, 2004.Nic04. Dragos Niculescu. Positioning in ad hoc sensor networks.
IEEE Network ,pages 24–29, 2004.NZ02. T.S.E. Ng and H. Zhang. Predicting Internet network distance withcoordinates-based approaches. In
IEEE INFOCOM , volume 1, pages 170–179. Citeseer, 2002.PBDT05. Nissanka B. Priyantha, Hari Balakrishnan, Erik D. Demaine, and SethTeller. Mobile-assisted localization in wireless sensor networks. In
Pro-ceedings of the 24th Annual Joint Conference of the IEEE CommunicationsSociety on Computer Communications (INFOCOM 2005) , volume 1, pages172–183, Miami, Florida, March 13–17 2005.PN07. O. Powell and S. Nikoletseas. Simple and efficient geographic routing aroundobstacles for wireless sensor networks.
Lecture Notes in Computer Science ,4525:161, 2007.R¨03. Kay R¨omer. The lighthouse location system for smart dust. In
MobiSys’03: Proceedings of the 1st international conference on Mobile systems, ap-plications and services , pages 15–30, New York, NY, USA, 2003. ACM.RPSS03. Ananth Rao, Christos H. Papadimitriou, Scott Shenker, and Ion Stoica.Geographic routing without location information. In David B. Johnson,Anthony D. Joseph, and Nitin H. Vaidya, editors,
MOBICOM , pages 96–108. ACM, 2003.SBK08. C. Saad, A. Benslimane, and J.C. K¨onig. AT-DIST: A Distributed Methodfor Localization with high accuracy in Sensor Networks. Technical Reportlirmm-00270283, lirmm, 2008.SP08. G. Di Stefano and A. Petricola. A distributed AOA based localizationalgorithm for wireless sensor networks.
Journal of Computers , 3(4):1–8,2008.SY07. A.M.C. So and Y. Ye. Theory of semidefinite programming for sensor net-work localization.