managing cohort movement of mobile sensors via gps-free and compass-free node localization

15
J. Parallel Distrib. Comput. 70 (2010) 743–757 Contents lists available at ScienceDirect J. Parallel Distrib. Comput. journal homepage: www.elsevier.com/locate/jpdc Managing cohort movement of mobile sensors via GPS-free and compass-free node localization Hüseyin Akcan a , Vassil Kriakov b , Hervé Brönnimann b , Alex Delis c,* a Izmir University of Economics, 35330, Balçova, Izmir, Turkey b Polytechnic Institute of New York University, Brooklyn, NY 11201, United States c University of Athens, Athens 15784, Greece article info Article history: Received 8 April 2009 Received in revised form 1 December 2009 Accepted 10 March 2010 Available online 31 March 2010 Keywords: Localization Wireless sensor networks Mobility abstract A critical problem in mobile ad hoc wireless sensor networks is each node’s awareness of its position relative to the network. This problem is known as localization. In this paper, we introduce a variant of this problem, directional localization, where each node must be aware of both its position and orientation relative to its neighbors. Directional localization is relevant for applications that require uniform area coverage and coherent movement. Using global positioning systems for localization in large scale sensor networks may be impractical in enclosed spaces, and might not be cost effective. In addition, a set of pre- existing anchors with globally known positions may not always be available. In this context, we propose two distributed algorithms based on directional localization that facilitate the collaborative movement of nodes in a sensor network without the need for global positioning systems, seed nodes or a pre- existing infrastructure such as anchors with known positions. Our first algorithm, GPS-free Directed Localization (GDL) assumes the availability of a simple digital compass on each sensor node. We relax this requirement in our second algorithm termed GPS- and Compass-free Directed Localization (GCDL). Through experimentation, we demonstrate that our algorithms scale well for large numbers of nodes and provide convergent localization over time, despite errors introduced by motion actuators and distance measurements. In addition, we introduce mechanisms to preserve swarm formation during directed sensor network mobility. Our simulations confirm that, in a number of realistic scenarios, our algorithms provide for a mobile sensor network that preserves its formation over time, irrespective of speed and distance traveled. We also present our method to organize the sensor nodes in a polygonal geometric shape of our choice even in noisy environments, and investigate the possible uses of this approach in search-and-rescue type of missions. © 2010 Elsevier Inc. All rights reserved. 1. Introduction Wireless sensor networks are composed of hundreds, possibly thousands, of low-cost sensor nodes that are capable of making en- vironmental measurements, performing computations, and com- municating with one another. Most importantly, through small motors or motion actuators, these devices are capable of physically organizing themselves in order to cooperatively achieve a desired task [43]. An important problem in mobile sensor networks is each sen- sor’s awareness of its position and direction of movement relative to the entire network. This problem is commonly known as local- ization [17]. In general, such location awareness empowers rout- ing algorithms to determine the most efficient message paths [21], * Corresponding author. E-mail addresses: [email protected] (H. Akcan), [email protected] (V. Kriakov), [email protected] (H. Brönnimann), [email protected] (A. Delis). achieve goals such as optimal area coverage [31], or in mission crit- ical applications [39]. For example, in aggregation networks [9], node localization is needed in order to construct topology-aware routing overlays that will reduce message transmission time, in- crease reliability, and reduce power consumption. In routing ap- plications, it is sufficient for nodes to be aware of the coordinates of their neighbors relative to a local coordinate system common to the entire network [7]. We call this relative localization since each node’s position is relative to the local coordinate system. To support mobility applications, a node must move in a specific di- rection in a manner that is related to its neighbors. To achieve this, in addition to knowing its neighbors’ positions relative to a com- mon coordinate axis, a node must be aware of the positions of its neighbors relative to its own direction of movement. This is the node’s orientation. We call directional localization the problem of determining the position and the orientation of each sensor in the common coordinate system. In the remainder of the paper we may refer to ‘‘directional localization’’ as simply ‘‘localization’’, unless otherwise stated. 0743-7315/$ – see front matter © 2010 Elsevier Inc. All rights reserved. doi:10.1016/j.jpdc.2010.03.007

Upload: hueseyin-akcan

Post on 26-Jun-2016

219 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

J. Parallel Distrib. Comput. 70 (2010) 743–757

Contents lists available at ScienceDirect

J. Parallel Distrib. Comput.

journal homepage: www.elsevier.com/locate/jpdc

Managing cohort movement of mobile sensors via GPS-free and compass-freenode localizationHüseyin Akcan a, Vassil Kriakov b, Hervé Brönnimann b, Alex Delis c,∗a Izmir University of Economics, 35330, Balçova, Izmir, Turkeyb Polytechnic Institute of New York University, Brooklyn, NY 11201, United Statesc University of Athens, Athens 15784, Greece

a r t i c l e i n f o

Article history:Received 8 April 2009Received in revised form1 December 2009Accepted 10 March 2010Available online 31 March 2010

Keywords:LocalizationWireless sensor networksMobility

a b s t r a c t

A critical problem in mobile ad hoc wireless sensor networks is each node’s awareness of its positionrelative to the network. This problem is known as localization. In this paper, we introduce a variant ofthis problem, directional localization, where each node must be aware of both its position and orientationrelative to its neighbors. Directional localization is relevant for applications that require uniform areacoverage and coherent movement. Using global positioning systems for localization in large scale sensornetworks may be impractical in enclosed spaces, and might not be cost effective. In addition, a set of pre-existing anchors with globally known positions may not always be available. In this context, we proposetwo distributed algorithms based on directional localization that facilitate the collaborative movementof nodes in a sensor network without the need for global positioning systems, seed nodes or a pre-existing infrastructure such as anchors with known positions. Our first algorithm, GPS-free DirectedLocalization (GDL) assumes the availability of a simple digital compass on each sensor node. We relaxthis requirement in our second algorithm termed GPS- and Compass-free Directed Localization (GCDL).Through experimentation, we demonstrate that our algorithms scale well for large numbers of nodes andprovide convergent localization over time, despite errors introduced by motion actuators and distancemeasurements. In addition, we introduce mechanisms to preserve swarm formation during directedsensor network mobility. Our simulations confirm that, in a number of realistic scenarios, our algorithmsprovide for a mobile sensor network that preserves its formation over time, irrespective of speed anddistance traveled. We also present our method to organize the sensor nodes in a polygonal geometricshape of our choice even in noisy environments, and investigate the possible uses of this approach insearch-and-rescue type of missions.

© 2010 Elsevier Inc. All rights reserved.

1. Introduction

Wireless sensor networks are composed of hundreds, possiblythousands, of low-cost sensor nodes that are capable of making en-vironmental measurements, performing computations, and com-municating with one another. Most importantly, through smallmotors ormotion actuators, these devices are capable of physicallyorganizing themselves in order to cooperatively achieve a desiredtask [43].An important problem in mobile sensor networks is each sen-

sor’s awareness of its position and direction of movement relativeto the entire network. This problem is commonly known as local-ization [17]. In general, such location awareness empowers rout-ing algorithms to determine themost efficient message paths [21],

∗ Corresponding author.E-mail addresses: [email protected] (H. Akcan), [email protected]

(V. Kriakov), [email protected] (H. Brönnimann), [email protected] (A. Delis).

0743-7315/$ – see front matter© 2010 Elsevier Inc. All rights reserved.doi:10.1016/j.jpdc.2010.03.007

achieve goals such as optimal area coverage [31], or inmission crit-ical applications [39]. For example, in aggregation networks [9],node localization is needed in order to construct topology-awarerouting overlays that will reduce message transmission time, in-crease reliability, and reduce power consumption. In routing ap-plications, it is sufficient for nodes to be aware of the coordinatesof their neighbors relative to a local coordinate system commonto the entire network [7]. We call this relative localization sinceeach node’s position is relative to the local coordinate system. Tosupport mobility applications, a node must move in a specific di-rection in a manner that is related to its neighbors. To achieve this,in addition to knowing its neighbors’ positions relative to a com-mon coordinate axis, a node must be aware of the positions of itsneighbors relative to its own direction of movement. This is thenode’s orientation. We call directional localization the problem ofdetermining the position and the orientation of each sensor in thecommon coordinate system. In the remainder of the paper wemayrefer to ‘‘directional localization’’ as simply ‘‘localization’’, unlessotherwise stated.

Page 2: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

744 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

Providing support for directional localization in mobile sensornetworks is a difficult task. Traditional solutions rely on informa-tion supplied externally in one of two forms: (1) via global po-sitioning systems (GPS)—which requires additional hardware atadditional costs, or (2) via fixed-point reference nodes, or anchors,whose global locations are known a-priori [8]. Such methods aremost commonly used in static networks [32]. Recent efforts onmo-bile networks assume that only a small subset of themoving nodes(seeds) use GPS [19].Many applications require sensor network mobility in environ-

ments where GPS signals may not be available and pre-existing in-frastructures donot exist. Consider a fire search-and-rescuemissioninside a building where a set of mobile nodes explore a floor withthe goal to locate the source of fire. The nodesmove collaboratively,in a semi-rigid swarm, taking temperature measurements whilefollowing a path that covers the area. Additional factors may ex-acerbate the problem further. Environmental errors must be takeninto consideration, otherwise due to nodemobility the additive er-ror in the estimated location can accrue, rendering any algorithmimpractical. This is a consequence of mechanical errors in evalu-ating the direction and distance of movement, which may occurin-between individual measurements. This type of errors can bedue to manufacturing defects or fluctuations in the environment(e.g. surface friction). Thus, as the movement of the networkevolves, the uncertainty of the position and direction of a nodeincreases.Our main contributions are distributed algorithms for solving

the problem of directional localization in sensor networks withmobile GPS-free nodes. We introduce novel, motion-based algo-rithms for node position and direction calculation with respect toeach individual node’s local coordinate system in mobile ad hocsensor networks, without global positioning information. Our firstalgorithm, GPS-free Directed Localization (GDL), assumes theavailability of a digital compass on each node, and calculates anode’s directional localization froma single-stepmovement. In oursecond algorithm, GPS- and Compass-free Directed Localization(GCDL), we relax the compass requirement and compute direc-tional localization with a 2-step motion algorithm. Our algorithmsperform localization in a few steps of movement and are mem-oryless; in addition, they are not affected by cumulative positionerrors. More specifically, our proposed algorithms:• provide directional neighbor localization in a network-widecoordinate system,• can function under fairly large motion and distance measure-ment errors,• are unaffected by the speed of nodes,• support a stable network in mobility problems,• help organize the sensor network in any polygonal shape of ourchoice.To experimentally validate our algorithms, we built a simu-

lation framework tailored to handle the mobility aspects of ouralgorithms. We analyzed the impact of the direction and distanceerrors on the location estimation errors, and our experiments indiverse operational scenarios demonstrated that the average local-ization errors of our algorithms are near constant throughout themovement.We showhowour algorithms can be utilized to create astable and structured swarm of sensors without an underlying in-frastructure or global positioning devices. We also effectively or-ganize nodes in any geometric shape of our choice even in thepresence of localization errors.The remainder of this paper is structured as follows. Our lo-

calization algorithms are described in Section 2, while Section 3outlines their use in coherent mobility scenarios. In Section 4 wesketch out methods to organize the sensor network in any polyg-onal shape by the use of our localization algorithms. The main re-sults of our experimentation are presented in Section 5. Section 6discusses related work, and Section 7 provides the concludingremarks.

d1

v2

v1

d2

x y1

,1

x y0

,0

x3

y,3

n1

n2 x ,y

2 2

a b

Fig. 1. Two-step movement where (a) nodes can be localized and (b) in the non-rigid geometry exceptional configuration.

2. Localization algorithms

In this section, we present our GPS-free localization algorithms.Our first algorithm, GDL, works under the following assumptions:

• Each node has a compass pointing North (or any other commonreference direction).• Nodes can measure the distance to their neighbors using aknown range measurement method, such as Time of Arrival(TOA) [5], Time Difference of Arrival (TDOA) [14], or Ultra-Wideband radios [12].• Motion actuators allow each node tomove a specific distance ina specific direction (with respect to North).• Actuator, compass and distance measurements are subject toerrors caused by various real world disturbances such as wind,rough terrain, equipment failures etc.• Other than the above, no additional positioning equipment orinfrastructure is required.

We give details of our first algorithm in Section 2.1. In Sec-tion 2.2 we present our second algorithm, GCDL, which has the ex-act same assumptions listed above but does not require a compass.

2.1. GPS-free Directed Localization (GDL)

The GDL algorithmmakes use of a digital compass and achieveslocalization in a 3-stage process termed epoch. GDL consists of twosub-algorithms; Core localization and Verification. The core local-ization algorithmgenerates twopossible relative positions for eachneighbor that participates in the localization, and the verificationalgorithm uses a third neighbor to yield the correct final solutionfrom these two relative positions. Below, we provide a detaileddescription of these two algorithms.

2.1.1. Core localization algorithmThe core localization algorithm works with variable length

epochs, where each epoch involves three distinct stages:

1. distance measurement between neighbors,2. individual movement of the nodes,3. exchange of direction and distance values for that epoch be-tween neighbors.

Epochs are initiated by nodes whenever they need localization.Possible causes of localization are sudden increase or decrease inthe number of neighbors, which hints clustering or partitioning inthe network, and may require re-positioning of the nodes. We donot require any other continuity or pattern between epochs. Wealso do not assume anything about the temporal duration of theepochs. However, we assume that the nodes do not change theirdirection of movement within an epoch.A typicalmovement of twonodesn1 andn2 in an epoch is shown

in Fig. 1(a). At time t1, n1 is at position (x0, y0) and n2 at (x2, y2),

Page 3: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 745

Fig. 2. The core localization algorithm calculates two possible positions. Theverification algorithm determines the exact positions between neighbors.

and the nodes measure the initial inter-distance d1. Between timet1 and t2, each node {ni | i = 1, 2} moves in a direction αi andcovers a distance vi. At time t2, the nodes, now at positions (x1, y1)and (x3, y3), calculate their inter-distance d2 and exchange vi andαi information. After receiving this information, each node selectsitself as the origin and calculates the position and direction of theother node, in its local coordinate system. To solve the equations inthe local system of n1, we choose the position (x0, y0) of n1 as theorigin and write:x1 = v1 cosα1, y1 = v1 sinα1, (1)x3 = x2 + v2 cosα2, y3 = y2 + v2 sinα2, (2)

(x3 − x1)2 + (y3 − y1)2 = d22, x22 + y22 = d

21. (3)

Substituting Eqs. (1) and (2) into Eq. (3), we get:x2A+ y2B = C, (4)with the appropriate definitions:A = v2 cosα2 − v1 cosα1, B = v2 sinα2 − v1 sinα1,

C =12

(d22 − d

21 − v

21 − v

22 + 2v1v2 cos(α1 − α2)

).

Substituting x2 = (C − y2B)/A and y2 = (C − x2A)/B intox22 + y

22 = d

21, we get:

x22D− 2x2E + F = 0, y22D− 2y2G+ H = 0, (5)again with the appropriate definitions:D = A2 + B2, E = AC, F = C2 − d21B

2,

G = BC, H = C2 − d21A2.

Note that the coefficient of x22 and y22 is the same in both Eqs. (5),

namely, D.Using (5), each variable solves independently to

x2 =E ±√E2 − DFD

, y2 =G±√G2 − DHD

(6)

and solutions can be paired up by using Eq. (4), as long as D 6= 0. Inpractice, one would compute either x2 or y2 using (5) and deducethe other variable using (4). When A = 0 but B 6= 0, one wouldcompute x2 using (6), and when A 6= 0 but B = 0, one would com-pute y2 using (6) instead. If both A = B = 0, then D = 0 and sub-sequently an exceptional configuration is formed; we discuss thiscase later in exceptional configurations.The core localization algorithm to calculate the position of n2

fromn1 is presented in Fig. 2. Solving the equations, eachnode findstwo possible positions for each of its neighbors. Since only one ofthese solutions is realistic (the other one is due to ‘‘symmetry’’),each node has to complete a verification step, this time using anadditional common neighbor (n3).

2.1.2. Verification algorithmIn Fig. 2, we provide an algorithm that verifies a node’s position

using a third neighbor. This step is required to solve the ambiguityof two possible positions per neighbor calculated in core localiza-tion algorithm. After solving Eqs. (4) and (6) in the previous sec-tion, node n1 has two position estimates {n

1,2j | j = 2, 3} for each

of its neighbors n2 and n3. In order to find the positions and direc-tion, n1 retrieves the distance between n2 and n3 (d2,3) from eitherone of these nodes, and simply finds the correct pair of positions{n1,2j | j = 2, 3} that has a matching distance.For rigid geometries and configurations without errors, there

can only be one pair verified. However, for configurations witherrors, we relax the algorithm to select the pair with the closestdistance value to d2,3.

2.1.3. Exceptional configurationsThe above localization algorithm works for rigid geometries

where two possible positions per neighbor are estimated. Due tovarious real world disturbances and equipment errors, nodes donot always get a rigid geometry from their measurements. In thiscase Eqs. (4) and (6) have no use. Any time the core algorithm can-not find meaningful results we reach what we term exceptionalmovement configurations.We distinguish two such configurationsnamed equal parallel movement and excessive error configurationsthat we discuss below.

• Equal parallel movement configurations occur when D is equalto zero in Eq. (6). This also implies that A = 0 and B = 0 sinceD = A2+ B2. An example of equal parallel movement configura-tion is shown in Fig. 1(b). In this case, the nodesmove in paralleland keep the exact same distances (d and v) between them, sothat node n2 can be anywhere on a circle at a distance d awayfrom node n1, and vice verse. The geometry is not rigid and in-finitely many possible solutions exist for both neighbors.• The second exceptional configuration is that of excessive error.The main sources of error in our algorithm occur due to dis-tance, actuator and compass measurement inaccuracies. Whenhighly erroneous d, v and α values create a non-rigid geometry,such that E2 − DF < 0 or G2 − DH < 0 in Eq. (6), our corealgorithm cannot localize n1 and n2.

Although we cannot entirely avoid the above exceptional con-figurations, the core localization part of GDL algorithm can read-ily detect them. Once detection takes place, nodes can skip thatepoch and can make necessary adjustments (e.g. random changes)to their speed and direction to avoid the same ill-configuration inthe next epoch.

2.2. GPS- and Compass-free Directed Localization (GCDL)

Additional cost on hardware and unfavourable physical condi-tions altering magnetic field restrict the use of compass in certainhostile environments such as disaster areas. To enhance versatility,we relax the requirement for a compass and achieve localizationusing our algorithm that controls the mobility of the nodes. Themain idea is to divide the nodes into two groups, blue (dark) andred (light), and move each group in a stepwise manner while theother remains stationary. We show that, through the use of geo-metric properties, we can localize the neighbors in such a 2-stepmotion for each group. After localization, nodes can agree on acommon virtual north, which essentially has the same effect ashaving a compass. This common north resolution also enables thenodes to perform coherent movement as a network, which is oneof our main goals. Furthermore, by relaxing the requirement for acompass,we relieve ourGCDL algorithm fromcompass related fail-ures such as measurement or equipment errors, and improve therobustness of our approach.

Page 4: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

746 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

C1C2

C3

r3

r1

r2

Fig. 3. The dark node remains fixedwhile the light nodemakes two steps, allowingit to localize the dark node.

We outline our 2-step motion algorithm (Fig. 3) using a blue(dark) and a red (light) node. The blue node is stationary, and thered node performs a 2-step motion to localize the exact positionof the blue node. Each time the red node communicates with theblue node, a virtual communication circle is formed, and the dis-tance between the two nodes are measured using a known rangemeasurement method. As shown in Fig. 3, the first virtual commu-nication circle (C1) results in infinite possibilities for the positionof the blue node. The red node can reduce the possible positionsto two by calculating the intersection of the first and the second(C2) virtual communication circles. After the second step of the rednode, the third (C3) virtual communication circle is formed, allow-ing the red node to calculate the exact location of the blue node.Therefore, in order to exactly find the position of the blue node,three virtual communication circles are needed. By keeping trackof its ownmovement distance, in theworst case, the red node gath-ers enough data to localize the blue node only after 2-step motion.Note that if the movement of the red node is directly towards (oraway from) the blue node, one step of the motion is sufficientfor localization, since in this case the geometry forms two mutu-ally tangent circles within each other, which intersect at the exactlocation of the blue node.In order to outline the geometric calculations necessary for lo-

calization after 2-step motion we assume the blue node in Fig. 4is stationary at position (x3, y3), and the red node moves to posi-tions (x1, y1), (x0, y0), and (x2, y2) respectively. We also assumethat each node has a local coordinate system, based on an arbi-trary north, and nodes can mechanically track their movementsrelative to this local coordinate system. For example nodes canmechanically turn 90° based on their local north without requir-ing a compass. The movement of the red node is represented by a〈distance, angle〉 pair, where the angle is relative to the local co-ordinate system of the red node. The first movement from position(x1, y1) to (x0, y0) is represented as 〈v1, θ1〉, and the secondmove-ment from position (x0, y0) to (x2, y2) is represented by 〈v2, θ2〉pair. For each position of the red node, we write the following for-mulas:

(x3 − x1)2 + (y3 − y1)2 = d21, (7)

(x3 − x2)2 + (y3 − y2)2 = d22, (8)

x23 + y23 = d

20. (9)

We write the first (x1, y1) and last positions (x2, y2) of the rednode as:

x1 = v1 cos(θ1 − π), (10)y1 = v1 sin(θ1 − π), (11)x2 = v2 cos θ2, (12)y2 = v2 sin θ2. (13)

d2

x1,y1v1

v2 d1d0 θ1

θ2

x0,y0

x2,y2

x3,y3

Fig. 4. GCDL geometry: the light nodemoves from x1, y1 to x0, y0 and x2, y2 in orderto determine x3, y3 , the position of the stationary dark node.

Rewriting Eq. (7) and substituting Eqs. (9)–(11) we get:

(x3 − x1)2 + (y3 − y1)2 = d21,

x23 − 2x1x3 + x21 + y

23 − 2y2y3 + y

21 = d

21,

observing that x21 + y21 = v

21 ,

d20 − y23 − 2v1x3 cos(θ1 − π)+ v

21 + y

23 − 2v1y3 sin(θ1 − π) = d

21,

we calculate x3 as:

x3 =d20 + v

21 − 2v1y3 sin(θ1 − π)− d

21

2v1 cos(θ1 − π). (14)

Using x3 in Eq. (8), and substituting Eqs. (12) and (13) we get:

(x3 − x2)2 + (y3 − y2)2 = d22,

x23 − 2x2x3 + x22 + y

23 − 2y2y3 + y

22 = d

22.

Again observing that x22 + y22 = v

22 ,

d20 −d20 + v

21 − d

21 − 2v1y3 sin(θ1 − π)

v1 cos(θ1 − π)v2 cos θ2

+ v22 − 2v2y3 sin θ2 = d22. (15)

We can now calculate y3 from Eq. (15). To ease the presentation inEq. (15), we define B as:

B =v2 cos θ2cos(θ1 − π)

2 sin(θ1 − π)− 2v2 sin θ2,

if we simplify, B becomes:

B =2v2 sin(θ1 − (π + θ2))

cos(θ1 − π). (16)

Again, to ease the presentation in Eq. (15), we define A as:

A = d22 − d20 − v

22 +

v2 cos θ2v1 cos(θ1 − π)

(d20 + v21 − d

21), (17)

where using Eqs. (16) and (17) y3 becomes:

y3 =AB. (18)

The red node can localize the blue node by solving Eqs. (14)and (18). Next, the red and the blue nodes switch roles, and theblue node moves while the red node remains stationary, which isoutlined in Lock-step Movement section below. After both groupsof nodes complete their 2-step motion, they agree on a commonnorth for the entire network, which is described in Selecting aCommon North section below.

Page 5: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 747

Movement direction

Fig. 5. Zig-zag motion of nodes towards movement direction.

2.2.1. Lock-step movementFor applications where the mobile sensor nodes are required

to move as a cohort, we configure our GCDL algorithm to performdirectional movement. We randomly assign red and blue colors tonodes at each iteration to uniformly color the nodes in the swarm.Once the direction of movement is known by all nodes, each groupperforms a zig-zag movement following the direction, as shown inFig. 5. A zig-zagmovement fitswith our algorithm’s requirement ofthe 2-stepmotion, while still allowing the node to move towards acertain direction. We would like to highlight here that the zig-zagmovement can be performedwith different stepmovement angles.For simplicity of presentation, we use orthogonal movements asshown in Fig. 5.

2.2.2. Selecting a common northIn GCDL, nodes coordinate their movement based on a pseudo-

north, since no compass is used. As the pseudo-north is selectedarbitrarily by each node, and altered by the localization errorsthroughout the movement, nodes have to agree on a commonnorthwith their neighbors in order tomove as a cohort.When bothgroup of nodes complete their lock-step motion, neighbor nodescan further communicate to agree on a common north for the en-tire swarm. In order to achieve this, each node exchanges calcu-lated position information of each of its one-hop neighbors, basedon its local coordinate system. Each node, by cross examining itsneighbor’s position relative to itself (6 a in Fig. 6) and its own po-sition relative to that specific neighbor (6 b), calculates the skew inlocal coordinate systems (6 α in Fig. 6). Once the skew between lo-cal coordinate systems is calculated, the nodes can use two meth-ods in order to agree on a common coordinate system: (1) use aproactive approach and force the entire swarm to agree on a sin-gle coordinate system by using a hierarchy (e.g. TAG tree [25]), or(2) use a reactive method and store only the variance (α) for eachneighbor, and initiate a local correction each time a direction infor-mation is received from neighbors. The use of the proactive or thereactive approach is specific to the characteristic of the networkand the application. Both approaches can be used with our GCDLalgorithm.In this section, we presented our localization algorithms. GDL

performs localization in single step of the motion through the useof a compass on each node,while GCDL performs localizationwith-out the use of a compass, following a 2-step motion.

3. Cohort sensor network mobility

Our algorithms are most useful in mobile applications wherethe entire networkmust move in a specific path in order to accom-plish a goal. To analyze the behavior of our localization algorithmsin a realisticmobility scenario, we adapt amobilitymodel based onthe Reference Point Group Mobility (RPGM) model [18]. Althoughwe considered a range of mobility models [6], we decided to baseour analysis on RPGMdue to its generality and simplicity. Here, the

Fig. 6. When the relative positions of two nodes are a and b, the skew in their localcoordinate systems is α.

Fig. 7. The mobility algorithm for directed motion.

random motion of the individual nodes is modeled in relation to arandomly chosen directionalmotion of the entire group. Each nodein the group moves randomly around a fixed reference point andthe entire group of reference pointsmoves along the group’s logicalcenter. Our localization algorithms computes locations and orien-tations for nodes and their neighbors. In that respect, we furthergeneralize the RPGM model so as to make individual sensors in-dependent of the reference points. Furthermore, because our sen-sor network can maintain a semi-rigid structure based solely onlocal positioning, it is unnecessary for nodes to be aware of thegroup’s center and only the destination point must be specified.It is possible to remove the reference points because the individualrandommotion within the group is contextualized by the randommotion of a node’s immediate (one-hop) neighbors. In that sense,the neighbors represent the reference points of motion.Themobility algorithmwe use for directedmotion is presented

in Fig. 7. The network moves with respect to a direction vector ED.Tomaintain a semi-rigid formationwithout disconnecting the net-work, we impose a minimum neighbor count k that each nodestrives to attain. This is a best-effort algorithm where nodes at-tempt to maintain a neighbor distance that is a fraction of theirwireless range. The neighbor distance is adjusted dynamicallywiththe number of neighbors so that nodes with fewer than k neigh-bors stay closer while still moving with the network, which avoidsnetwork partitioning especially at the perimeter of the network.Localization of the one-hop neighbors is a pre-requisite for themo-bility algorithm to run efficiently. However, the algorithm does notstrictly require all neighbors to be localized, it considers only thelocalized neighbors and performs the necessary calculations basedon these neighbors. The range (Node N) function returns the wire-less range of node N in terms of distance. When a boundary isreached, a new direction of movementmust be chosen. In our sim-ulations, we implement this as a ricochet off the boundary surface.The benefit of our approach is that while an initial direction of

motion is specified for the group, the structure of the network re-mains cohesive but independent. An example application of this

Page 6: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

748 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

a b

Fig. 8. Two configurations of a mobile sensor network using temperature sensors to locate a fire.

approach is a swarm of mobile sensors which move in a generalpattern with a specific goal. For example, a swarm of mobile sen-sors may move in a zig-zag pattern, with the goal to discover anoil spill and cover the contaminated area once this spill is found.In this example, only a virtual boundary must be specified and thenetwork of sensors will maintain sufficient proximity to commu-nicate, while covering the area.The mobility algorithm presented in this section is a general

network movement algorithm that requires only local positioninformation. Our localization algorithms require each node to com-municate only with its one-hop neighbors thus avoiding flood-ing of the network. In this respect, other mobility algorithmscan be plugged in to perform various tasks using our localizationalgorithms.

4. Organizing sensor nodes in a geometric shape

In this section, we present a method to arrange nodes in a cer-tain geometric shape controlled by a specific coordinator node inthe network. In search-and-rescue type of scenarios nodes moveon unknown territory, and explore the area through the help oftheir sensors. These can be temperature, noise, infrared, or similarsensors and can be used collectively to help guide the node move-ment in unknown or hostile territories. As amotivational example,assume that we are interested in a network of mobile sensor nodeswith temperature sensors, exploring an unknown territory on amission to detect the source of a fire. In this scenario, mobile nodesoften have tomake a decision onwhich direction they shouldmoveto achieve their objective. In order to do so, nodes process thetemperature readings obtained from the boundary nodes of thenetwork, and move towards the direction with the highest tem-perature readings, as shown in Fig. 8.We investigate the idea of ar-ranging the nodes in a connected polygonal shape of our choice, sothat nodes can gather data more efficiently from diverse fronts ofthe territory. The size and shape of the polygon depends on the ap-plication or the physical properties of the territory. Fig. 8(a) showsa sensor network organized in a 4× 4 square, trying to determinethe region of the fire. As the figure shows, the square shape is notthe best choice for this case compared to the L-shape shown inFig. 8(b). Even though the L-shape uses the same number of nodesas the square shape, it can expand further into both directions in-creasing the chances of detecting the correct region of the fire.In order to organize nodes in a spanning polygonal form, we

use one of our nodes as the coordinator. The coordinator functioncan be performed by any of the nodes in the swarm, or a speciallyequipped node depending on the application. Ourmethod does nothave particular requirements on the coordinator, other than that itdefines the origin point for the polygon and it remains stationary

Fig. 9. FormPolygon determines the geometric shape of the entire network.FillPolygon is used by each node to rearrange its position.

during polygon formation. Nodes accept the coordinator as theorigin (0, 0) and the polygon coordinates are defined relative tothe coordinator. Whenever there is a requirement for polygonalnetwork formation, the constraints regarding the size and shapeof the polygon is broadcast by the coordinator to the rest of thenetwork. The polygon is expressed as a list of point coordinatesthat define the boundary lines relative to the origin. The algorithmfor arranging the network into polygonal formation is presentedin Fig. 9 (FormPolygon). The area of the polygon should be chosenproperly based on the number of nodes. Nodes should fill the entirearea evenly without segmentation, while still maintaining amulti-hop path to the coordinator node necessary to receive furtherupdates.Nodes have two fundamental tasks during polygon formation;

area coverage within the polygon, and boundary detection. The lo-calization steps essential to determine the boundary of the polygonand the neighbor positions are handled by our available localiza-tion algorithms. Using our localization algorithms, each node canmeasure the relative positions of each of its neighbors. Upon re-ceiving the request for the polygonal network formation, nodeswithin one-hop distance of the coordinator will update their posi-tions relative to the origin (coordinator), and re-broadcast the re-quest by including these relative positions. Iteratively, each nodei receiving the request from its neighbor j receives the polygon

Page 7: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 749

information, and the position of node j relative to the origin.Combining this information with the inter-distance of nodes i andj obtained from our localization algorithms, each node i can calcu-late its ownposition relative to the origin (coordinator). By the timethe request is received by the entire network, each node receivesthe polygon border coordinates, and can calculate its own positionrelative to the polygon. Nodes use the ray casting algorithm [38]to test whether they are inside the polygon or not. Nodes use thealgorithm presented in Fig. 9 (FillPolygon) in this stage of the poly-gon formation. Nodes that are outside the polygon border calculatethe position of the closest line segment of the polygon and movetowards that line segment’s coordinate to cross the boundary ofthe polygon. Once the nodes are inside the polygon area, they dofollow the regular area coverage algorithm previously described inFig. 7. There are two exceptions to this algorithm; (1) nodes forcethemselves to stay inside the polygon, (2) nodes that are close tothe boundary of the polygon reduce their movement capability toestablish a physical boundary of nodes near the border for the restof the network. These exceptions reduce the unnecessary back andforthmovement of the nodes close to the boundary (especially cor-ners of the polygon) and form a layer around the boundary muchlike the effect of surface tension in liquids.

5. Experimental evaluation

In this section, we evaluate our algorithms in three differenttypes of experimental settings. First, in Section 5.1 we evaluateproperties specific to our GDL algorithm under various simulatederror settings, and show that even significant environment errorsdo not dominate the performance of our algorithm. Later, in Sec-tion 5.2 we evaluate our GCDL algorithm under various errors andobserve how the errors affect the accuracy of the localization andcommon north resolution algorithms. In Section 5.3 we compareGDL and GCDL with an Absolute Positioning algorithm that usesdead reckoning in various random and directedmobility scenarios,and observe the effects of cumulative errors on the localizationalgorithms. Section 5.4 compares the behavior of our algorithmswith the Absolute Positioning algorithm during coherent move-ment of the swarm. Finally, in Section 5.5 we evaluate our polygo-nal network formation method for various polygonal shapes.

5.1. Evaluation of the GDL algorithm

Initially, we present results from the GDL algorithm under idealconditions, without measurement errors. Subsequently, we intro-duce independent errors on angle and distance measurements tosimulate real world disturbances.

5.1.1. Experiments under ideal conditionsIn this experiment we simulate nodes randomly placed in a

100 × 100 area under a uniform spacial distribution. Each simu-lation is run for 100 epochs, and the results are averaged. At eachepoch, nodes perform a random walk with random speed [0, 5),random angle [0, 2π) and fixed radio range of 6. The speed andangle are selected using a uniform random distribution. Node den-sity represents the number of nodes over the total deploymentarea. GDL requires two neighbors to accurately find each other’spositions. Fig. 10 displays the percentage of nodes, whose positionsare not calculated accurately for different node densities. For smallnode densities, we observe that not all nodes can be localized. Thereason is that nodes do not have neighbors to calculate positions, ordonot have commonneighbors. Aswe can see fromFig. 10, the per-cent of non-localized nodes approaches zero for densities greaterthan 0.02. From this graphwe can conclude that our algorithm cal-culates node positions for dense networks, and introduces minornode localization failures, less than as 3%, for sparse networks.

% N

ode

non-

loca

lized

Node density

-0.5

0

0.5

1

1.5

2

2.5

3

0.02 0.04 0.06 0.08 0.1

Fig. 10. Percent of non-localized nodes for different node densities.

5.1.2. Introducing measurement errorsWe now relax the ideal condition assumption and introduce

errors on distance and angle measurements. In the real world,measurements may be quite inaccurate due to weather, terrainconditions and equipment failures. To simulate these errors, weadd uniform random noise to all our measurements. For distancemeasures we add percent error relative to themeasured value, andfor angle measures we add absolute percent error (percent of 2π )to themeasured value. The reason for introducing absolute percenterror for angle measures is to simulate large errors that may occurdue to mechanical part inaccuracies or failures during rotations.These errors change our algorithm’s behavior in one of two ways:(1) the algorithm calculates the positions with limited accuracy;or (2) excessive error configurations, defined in Section 2, preventthe algorithm from localizing some of the nodes. Fig. 11(a) showsthe average position error of our algorithm for different values ofnoise on angle and distance measurements. The effects of exces-sive error configurations on our algorithm appear in Fig. 11(b). Wepostulate that 30% noise on angle and distance measurements is asignificant error rate for real world conditions. Even so, Fig. 11(b)shows that the portion of non-localized nodes remains below 16%at all times, and drops below 10% for errors lower than 10%. Theseresults indicate that our GDL algorithm provides node localizationfor the larger proportion of the swarm, even in the face of extrememeasurement deviations.We further corroborate this claimby car-rying out tests in random and directed movement scenarios inSection 5.3.In order to evaluate the effects ofmovement speed andwireless

range we tested our GDL algorithm under high noise, with a fixedwireless range (10 units) and variable speed values for nodes.1We apply an upper limit to the speed, such that the nodes do notmove a distance greater than their wireless range per epoch. Inany sensor network scenario, if a nodemoves by a distance greaterthan its wireless range in one epoch, it is highly probable thatits neighborhood will change at each step, which would make itimpossible to localize. We can see in Fig. 12 that the localizationerror of our algorithm is nearly constant for increasing speed. Themaximum speed supported by our algorithm is the wireless rangedistance traveled throughout an epoch. In our experiments, this is10 units of distance traveled per epoch.

5.2. Evaluation of the GCDL algorithm

In this section, we evaluate the effects of various environmenterrors on the common north resolution method of our GCDL

1 As our GCDL algorithmperforms a lock-stepmotion, we exclude GCDL from thismovement speed experiment.

Page 8: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

750 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

0 0.05 0.1 0.15 0.2 0.25 0.3

Angle error 0

0.05 0.1

0.15 0.2

0.25 0.3

Distance error

Avg. Position Error

0 0.05 0.1 0.15 0.2 0.25 0.3

Angle error 0

0.05 0.1

0.15 0.2

0.25 0.3

Distance error

% Nodes non-localized

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

02468

10 12 14 16

a b

Fig. 11. Effects of angle and distance measurement noise on position error (a), and percent of non-localized nodes (b), for GDL.

Loca

tion

Err

or (

Mea

n)

Speed Speed

Loca

tion

Err

or (

Sta

ndar

d D

evia

tion)

0

0.2

0.4

0.6

0.8

1

1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1

1 2 3 4 5 6 7 8 9 10

Fig. 12. Mean and standard deviation of position error of GDL vs. speed of nodes with a wireless range of 10 units and speed measured in units per epoch.

Com

mon

Nor

th E

rror

(D

egre

es)

No of rounds

Com

mon

Nor

th E

rror

(D

egre

es)

No of rounds

0

5

10

15

20

25

30

35

40

45

0 500 1000 1500 20000

2

4

6

8

10

12

14

16

1000 2000 3000 4000

a bHigh noise Low noise

High noise Low noise

Fig. 13. Effect of number of epochs on selected common north angle, (a) randommotion, and (b) directed motion, for GCDL.

algorithm. As the metric to measure the common north error ofthe swarm, we use the average difference between the real and thecalculated norths of each neighbor per epoch.We first evaluatewhether the duration of themovement affects

the common north error. We simulate 100 nodes in a 100 × 100area. In random motion, nodes can cover at most 5 units and havea fixed radio range of 15 units. We assume that in directed motionnodes move at a maximum speed of 3 units per epoch and theradio range is set to 5 units. All experiments are performed 100times, and the average values are reported. We test our algorithmfor twodifferent uniform randomnoise levels: high and lowaswellas in random motion and directed motion scenarios. High noiselevel is up to ±30% of distance measurements and up to ±2π/10of angle measurements. Low noise level is up to ±3% of distancemeasurements and up to±2π/100 of angle measurements. In thisexperiment, after each epoch, nodes resolve the common north

variance with their neighbors and the average error per nodeis calculated. Fig. 13 shows that for both random and directedmovement scenarios, the average error on common north remainsconstant throughout the total number of epochs. This is expectedas we do not store any information other than the current motionper epoch. All calculations are performed from scratch based onthe new neighborhood after the 2-step motion. Thus, GCDL is freefrom incremental errors.Having established that the common north error is not affected

by the number of epochs, we vary the distance and angle mea-surement noise and see how it affects the common north error inFig. 14. In this figure, we can observe that the amount of noise onthe angle and the distance measurements both affect the commonnorth error of the GCDL algorithm. The common north error is zerofor environments free of error, and the error increases linearlywiththe angle and distance errors when they are introduced. For a low

Page 9: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 751

0 0.1

0.2 0.3

Angle error 0

0.1

0.2

0.3

Distance error

Common north error

0 0.1

0.2 0.3

Angle error 0

0.1

0.2

0.3

Distance error

Common north error

0 10 20 30 40 50

0

5

10

15

20a b

Fig. 14. Percent error of angle and distance measurement noise on selected common north error in degrees, (a) randommotion, and (b) directed motion, for GCDL.

Loca

tion

Err

or (

Mea

n)

No of rounds

Loca

tion

Err

or (

Sta

ndar

d D

evia

tion)

No of rounds

0

2

4

6

8

10

12 High noise: Abs. pos. alg.High noise: GDL

High noise: GCDLLow noise: Abs. pos. alg.

Low noise: GDLLow noise: GCDL.

0 500 1000 1500 2000

0

2

4

6

8

10

12High noise: Abs. pos. alg.

High noise: GDLHigh noise: GCDL

Low noise: Abs. pos. alg.Low noise: GDL

Low noise: GCDL

0 500 1000 1500 2000

Fig. 15. Mean and standard deviation of position error vs. number of epochs for ouralgorithms and the absolute positioning algorithm performing randommovement.

noise level, the common north errors are approximately 10° and2° respectively for random and directed motion. For a high noiselevel, the errors become approximately 34° and 14°, respectively.The common north errors are quite reasonable considering thatwe assume±2π/100 (±3.6°) and±2π/10 (±36°) errors on anglemeasurements caused by node actuators, respectively for low andhigh noise levels.

5.3. Comparison with an absolute positioning algorithm

In this section, we compare our algorithms with an AbsolutePositioning algorithm. In this algorithm, we assume that nodesknow their initial positions in the deployment area, thanks to ananchor point or another type of global positioning infrastructure.We also assume that once nodes receive their initial position, theydo not receive any additional positioning information, relative orabsolute. To this effect, nodes keep track of their own movements.

Loca

tion

Err

or (

Mea

n)

No of rounds

Loca

tion

Err

or (

Sta

ndar

d D

evia

tion)

No of rounds

High noise: Abs. pos. alg.High noise: GDL

High noise: GCDLLow noise: Abs. pos. alg.

Low noise: GDLLow noise: GCDL

0

1

2

3

4

5 High noise: Abs. pos. alg.High noise: GDL

High noise: GCDLLow noise: Abs. pos. alg.

Low noise: GDLLow noise: GCDL

1000 2000 3000 4000

0

0.5

1

1.5

2

2.5

3

3.5

4

1000 2000 3000 4000

Fig. 16. Mean and standard deviation of position error vs. number of epochs for ouralgorithms and the absolute positioning algorithm performing directedmovement.

By exchanging location information with immediate neighbors,each node is able to keep track of the positions of others. This sce-nario occurs when nodes are deployed from a known position andasked to explore a possibly remote area where they cannot main-tain communication with the anchor at the deployment position.We simulate two different mobility scenarios. The first is based

on random movement, where 100 nodes with fixed radio rangeof 15 units can cover a distance of at most 5 units per epoch. Thesecond scenario is the directed movement described in Section 3.Nodes sweep the area in a zig-zag manner, with radio range of 5units andmaximumper-epoch distance of 3 units. An example tra-jectory of the nodes in the directed movement scenario is shownin Fig. 20. There is no global path information available. Rather, thenodes detect the boundaries of the environment and make move-ment decisions as a response to these environmental readings.In Figs. 15 and 16, we show the average errors for all algorithms

over the progression of up to 4000 epochs, for two different uni-form randomnoise levels: high and low, in randommotion (Fig. 15)

Page 10: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

752 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

Max

Noi

se (

dist

ance

)

Movement Distance

0

1

2

3

4

5

6

7

8

SQRLinearSQRT

0 1 2 3 4 5

Fig. 17. Various distributions of high noise levels used in our experiments.

Loca

tion

Err

or (

Mea

n)

Number of rounds

2000

Loca

tion

Err

or (

Sta

ndar

d D

evia

tion)

Number of rounds

0

5

10

15

20

25

30

35

40

45

0 500 1000 1500 2000

SQR: Abs. pos. alg.SQR: GDL

SQR: GCDLSQRT: Abs. pos. alg.

SQRT: GDLSQRT: GCDL

0

5

10

15

20

25

30

0 500 1000 1500

SQR: Abs. pos. alg.SQR: GDL

SQR: GCDLSQRT: Abs. pos. alg.

SQRT: GDLSQRT: GCDL

Fig. 18. Mean and standard deviation of position error vs. number of epochs for ouralgorithms and the absolute positioning algorithm performing randommovement.

and directed motion (Fig. 16) scenarios. Since our algorithms cal-culate distances within each epoch and do not use any cumulativedata, the errors of our algorithms are nearly constant over the num-ber of epochs, for both scenarios. Although the absolute positioningalgorithm starts with a low error value, small measurement errorsaccumulate over each epoch and cause a continuously increasingerror. Themean error of theGDL is asmuch as 2 times and themeanerror of the GCDL is as much as 10 times lower than the mean er-ror of the absolute positioning algorithm. The high error values inthe absolute positioning algorithm reflect on the effects of cumu-lative errors and show that it is not a robust solution for high noisescenarios. On the other hand, our localization algorithms provideconsistent behavior in the above-mentioned scenarios.In order to further evaluate the effects of the noise level on the

performance of our algorithms, we create three different noise dis-tributions, all based on high noise level. In Fig. 17 we present these

GDL GCDL

Random 1.95 ms 1.08 ms

Directed 2.06 ms 1.12 ms

Movement

Fig. 19. Average time in milliseconds (ms) spent for localization calculations incore GDL and GCDL algorithms.

100

80

60

40

20

00 20 40 60 80 100

Fig. 20. Directed trajectory of nodes performing zig-zag movement.

distributions. Linear distribution is the high noise level alreadyused in previous experiments (see Figs. 15 and16). The SQRT repre-sents a scenario where the random noise increases with the squareroot of the distance. Similarly, the SQR represents that the randomnoise increases with the square of the distance. For example, if anode performs a movement of 5 units in SQR noise distribution,the noise level will be ±30% ∗ 52 = ±7.5, which means the nodewill move a distance in the range of between−2.5 and 12.5 units.Since we already presented the results of the Linear noise distribu-tion, herewe only test our algorithmswith the SQRT and SQR noisedistributions performing random motion, and present the resultsin Fig. 18. In both noise distributions our algorithms outperformthe absolute positioning algorithm. In SQRT noise distribution, themean error of GDL is as much as 2 times, and the mean error ofGCDL is as much as 18 times lower than the mean error of the ab-solute positioning algorithm. In SQR noise distribution, the meanerror of GDL andGCDL are respectively 3.5 and 11 times lower thanthe mean error of the absolute positioning algorithm. For all algo-rithms, the errors in SQRT noise distribution is less than the er-rors in SQR distribution. We also observe that even in SQR noisedistribution, the errors of our algorithms are almost constant forincreased number of epochs, which again is a feature of the mem-oryless design of our algorithms. As a cross examination of the be-havior of the algorithms in Linear and SQR noise distributions, weobserve that although the error of absolute positioning algorithmincreases by a factor of 3, the errors of our algorithms increase by afactor of less than 2.We can conclude that our algorithms aremoreimmune to noise than the absolute positioning algorithm.Fig. 19 presents the average CPU time each node spent calculat-

ing Eqs. (4) and (6) in GDL and Eqs. (14) and (18) in GCDL, for bothrandom and directed mobility scenarios. Since we do not have ac-cess to real sensor hardware, we ran the experiments on a PentiumIV 3 GHz machine and present the average time spent per local-ization in order to compare the performance of our algorithms. Asshown in the figure, the CPU overhead is less for GCDL compared toGDL, which is a direct result of the number of calculations requiredby each algorithm.

Page 11: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 753

0 20 40 60 80 1000

100

80

60

40

20

0 20 40 60 80 1000

100

80

60

40

20

0 20 40 60 80 100

0

100

80

60

40

20

0 20 40 60 80 1000

100

80

60

40

20

0 20 40 60 80 1000

100

80

60

40

20

0 20 40 60 80 100

0

100

80

60

40

20

Fig. 21. Snapshots of absolute positioning algorithm performing directed motion in Fig. 20.

0

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 100

0

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 100

Fig. 22. Snapshots of GDL algorithm performing directed motion in Fig. 20.

5.4. Observing cohort movement of mobile nodes

In Figs. 21–23 we present the snapshots of the simulationsof the absolute positioning algorithm, our GDL and GCDL algo-rithms, respectively, performing a zig-zag directed movement (asin Fig. 20) under high noise. All simulations use the same move-ment algorithm as described in Section 3. Because of the cumu-lative errors, the absolute positioning algorithm is not capable of

maintaining the topology of the network and becomes discon-nected (Fig. 21). On the other hand, our algorithms maintain con-nectivity at all times while forming a nice semi-rigid topology,which complies with one of our main goals to enable coherentmovement of nodes as a swarm even under high noise. The swarmorganization for GCDL algorithm is more ‘‘packed’’ than its GDLcounterpart. This behavior is caused by the separation of nodes intotwo groups, red and blue. Nodes can only localize their neighbors

Page 12: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

754 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

0

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 100

0

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 1000

20

40

60

80

100

0 20 40 60 80 100

Fig. 23. Snapshots of the GCDL algorithm performing directed motion in Fig. 20.

in the opposite group, and not the ones in their own group. Themovement algorithm instructs thenodes to keep a specific distancebetween localized neighbors. This works for the opposite groupnodes, since they are localized, but the nodes in the same groupcannot localize each other and for this reason theymight stay closeto each other. Even in this case, GCDL succeeds to maintain theconnectivity and semi-rigid topology of the swarm. The results inFigs. 15, 16, 22 and 23 also support our claim that even underhigh noise settings, environmental errors do not deteriorate ouralgorithm’s behavior; effects of these errors are constant throughepochs. As seen in Fig. 22, occasionally a few nodes (two in thiscase) disconnect from the network. This happens when nodes nearthe network’s perimeter cannot be localized. Although the numberof these nodes is small, they can be further controlled by forcingstricter k-neighborhood rules in the mobility algorithm.

5.5. Forming geometric shapes

In previous sections, we observe in general that if area cover-age and cohort movement algorithms are applied, sensor networkacquires an oval or circular shape. As we presented in Section 4,there might be cases which require the sensor network to be or-ganized in a predefined geometric shape. In this section we applyour algorithms presented in Section 4 for various geometric shapesand present the results. Fig. 24 shows a sensor network of 100nodes organizing themselves in various geometric shapes (triangle,rectangle, octagon and L-shape). The red node in the middle is thecoordinator node, and the circle around the coordinator node rep-resents the wireless range of each sensor. The blue nodes assumethey are on the inside and the purple nodes are on the outside ofthe geometric shape. The top row shows the sensor locationswhenthere are no measurement errors. The nodes can organize them-selves quite well. With some exceptions in the corner cases theshapes are quite accurate. We can see the surface tension effectnear the borders (especially in the triangle shape), and how thistension effect helps the inner nodes perform area coverage. The

middle row shows a simulation in low noise scenario. Again in thislow noise environment, nodes can organize themselves quite well.Compared to the ideal case without errors, the shapes have somedeformations, and somemiss-located nodes. Nevertheless, the ob-served shapes visually resemblewell the expected shapes. The bot-tom row shows a simulation in a high noise scenario in which theerror level is too high in order for the nodes to be able to preciselyorganize themselves in a geometric shape. The nodes cannot formthe border lines in this case because of the large errors, and oncethe borders are not established, the rest of the nodes cannot or-ganize themselves. Even in this case resemblances to the originalshape in triangle and partly in L-shape can be observed.

6. Related work

Hightower et al. [16] has a survey on location systems. Earlyresearch on sensor localization problems have primarily focusedon static sensor networks [32,36,27,28,37,26,10,35,13,15,20].Recently, however, more attention has been given to mobile en-vironments. Problems in mobile sensor networks have been in-vestigated mainly in conjunction with a particular positioninginfrastructure (anchors, seed nodes, beacons) or under randommovement scenarios [7].Low precision for close range and limited coverage (especially

indoors) of GPS systems led to the investigation of GPS-free local-ization formobile nodes. One common technique used is to exploitwireless communication. Bulusu et al. [4] use known referencepoints to send periodic beacon messages. By receiving beaconsfrom these reference points, nodes can localize themselves. Theaccuracy of the localization depends on the distance to the refer-ence points. Priyantha et al. [32] also use beacons for localization,but they assume the real locations of the reference points areunknown. The problem of calculating global geometry from lo-cal information is proved to be NP-hard [41]. For static nodes,and only using Euclidean distances, Bădoiu et al. [2] propose aconstant factor, quasipolynomial-time approximation algorithm.

Page 13: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 755

Fig. 24. Snapshots of geometric shape formation. Top row: without noise. Middle row: under low noise. Bottom row: under high noise.

The algorithm requires complete graph information, which resultsin substantial communication overheads [2] in mobile wirelessnetworks. Priyantha et al. [33] propose assisting the static networkin distancemeasurementswith amobile node to achieve the globalrigidity required for accurate localization.In [7], relative localization in mobile sensor networks is accom-

plished through triangulation of neighbor nodes using a commonone-hop neighbor. The authors propose algorithms for buildinga relative coordinate system based on a central node, or a densegroup of nodes called Location Reference Group. Although thiswork is similar to ours in that it estimates positioning in a mobileenvironment without seed nodes, its primary focus is on negotiat-ing a relative coordinate system for the entire network. While thissolution finds applications in routing protocols, it is not applicablein mobility scenarios where directed motion is required, becausethe relative coordinate system used does not map to the real nodepositions.Infrastructure-free localization is also pursued in the robotics.

Kurazume et al. [23] uses a lock-step motion similar to the oneused in our GCDL algorithm, but assumes the initial locations of therobots are known, and robots can measure angles between eachother, which are extra constraints that we are able to avoid byintroducing the zig-zag motion. Franceschini et al. [11] andLangendoen et al. [24] have side by side comparisons of some ofthe existing localization algorithms.In [19], a sequential Monte Carlo method is used to probabilis-

tically estimate the locations of nodes in a network with a fewseeds. Seeds are those nodes which know their precise location,through the use of GPS, for example. Due to the model’s depen-dence on the prior estimates, the location errors are cumulativeand a re-sampling step must be introduced. The re-sampling pro-cess requires each node to collect as much as fifty samples before agood estimate can be made. Rudafshani et al. [34] again use MonteCarlomethod in bothmobile and static sensor networks to achievelocalization. A method based on predictions is presented in [22],

where nodes in the network use a dead reckoning model to es-timate the movements of all other nodes. Position information isadjusted for granularity so that distant pairs of nodesmaintain lessaccurate position information than pairs which are closer to eachother. Dead reckoning is also used in [42] to localize nodes in sparsemobile sensor networks. Xu et al. [40] use accelerometers to de-tect mobility in wireless sensor networks and efficiently updatethe neighborhood information based on the mobility. Since no di-rectional localization is used, the method is not suitable for groupmobility.Concerning distance and motion detection error, Rayleigh fad-

ing may introduce significant errors due to the motion of the sen-sor in cases where signal strength is used for neighbor distanceestimation. This problem is studied in [3], where the location es-timation is based on power measurement of signals received fromtwo anchored beacons with known locations. The authors explorehow the speed of mobile nodes detrimentally affects their local-ization accuracy. The mechanisms introduced in [3] can comple-ment our work to improve the neighbor distance measurementerror for high speed sensors. Distance measurement methods aresurveyed in [5,30]. The Time of Arrival (TOA) method finds the dis-tance between a transmitter and a receiver through the use of onewaypropagation time. TimeDifference of Arrival (TDOA) is anothermethod to estimate the distance [14]. The TDOA method uses RFand ultrasound signals to estimate the distance accurately, at theexpense of additional ultrasound transmitters and receivers. Ultra-Wideband radios enable accurate ranging for sensor networks.Gezici et al. [12] surveys the recent advances in the standardiza-tion of Ultra-Wideband radios, and possible applications to sensorlocalization. Recently, Park et al. [29] combined the rangingfeatures of Ultra-Wideband radios with hyperbola fitting toperform neighbor localization without using any infrastructure.

7. Conclusions

We propose two distributed algorithms to address the direc-tional node localization problem in wireless sensor networks: GDL

Page 14: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

756 H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757

where each node has a digital compass, and GCDL which does notrequire a compass. Both of our directional localization algorithmsenable nodes to coordinate their movement relative to their one-hop neighbors, andmaintain a semi-rigid structure that results in acoherent movement of the swarm. During mobility, measurementerrors or real world disturbances tend to accumulate over time andaffect the structure of the swarm, eventually disorganizing it. Toavoid this undesirable effect, our algorithms perform localizationin a few epochs of the nodemovement andwork onlywith the datagatheredwithin that time frame.Wedesign our algorithms toworkwith local knowledge only, without the use of any global position-ing infrastructure such as GPS, anchor points, and seed nodes.We also propose amethod to dynamically organizemobile sen-

sor nodes into various polygonal network formations in order toguide their movement especially in search-and-rescue type of mis-sions. We tested our algorithmswith various simulated real-worlderrors, in both random and directional mobility scenarios and ob-served that they perform coherent movement even in high noisesettings. In addition, we have compared our algorithms with anabsolute positioning approach and observed that our techniquesare superior both in terms of localization errors and inmaintainingcoherent swarm movement in diverse mobility scenarios.

Acknowledgments

A preliminary version of this work appeared in the Proceedingsof the 5th ACM International Workshop on Data Engineering forWireless and Mobile Access (MobiDE’06), in June 2006 [1]. Thiswork is partially supported by NSF CAREER Grant CCR-0133599and the University of Athens Research Foundation.The authors also wish to thank Leonidas Guibas of Stanford

University for the insightful discussion leading to 2-step motion,and Goce Trajcevski of Northwestern University for his commentsand suggestions.

References

[1] H. Akcan, V. Kriakov, H. Brönnimann, A. Delis, GPS-free node localization inmobilewireless sensor networks, in: Proceedings of the 5th ACM InternationalWorkshop on Data Engineering for Wireless and Mobile Access, MobiDE’06,Chicago, Illinois, USA, June 2006, pp. 35–42.

[2] M. Badoiu, E.D. Demaine, M.T. Hajiaghayi, P. Indyk, Low-dimensionalembedding with extra information, in: Symposium on ComputationalGeometry, Brooklyn, New York, USA, 2004, pp. 320–329.

[3] P. Bergamo, G. Mazzini, Localization in sensor networks with fading andmobility, in: Personal, Indoor and Mobile Radio Communications, 2002,pp. 750–754.

[4] N. Bulusu, J. Heidemann, D. Estrin, GPS-less low cost outdoor localizationfor very small devices, IEEE Personal Communications Magazine 7 (5) (2000)28–34.

[5] J. Caffery, G. Stüber, Overview of radiolocation in CDMA cellular systems, IEEECommunications Magazine 36 (4) (1998) 38–45.

[6] T. Camp, J. Boleng, V. Davies, A survey of mobility models for ad hoc networkresearch, Wireless Communications and Mobile Computing 2 (5) (2002)483–502.

[7] S. Capkun, M. Hamdi, J.-P. Hubaux, GPS-free positioning in mobile ad hocnetworks, Cluster Computing 5 (2) (2002) 157–167.

[8] K. Chintalapudi, R. Govindan, G. Sukhatme, A. Dhariwal, Ad-hoc localizationusing ranging and sectoring, in: INFOCOM, Hong Kong, China, 2004,pp. 2662–2672.

[9] J. Considine, F. Li, G. Kollios, J.W. Byers, Approximate aggregation techniquesfor sensor databases, in: ICDE, Boston, MA, USA, 2004, pp. 449–460.

[10] L. Doherty, K. Pister, L. El Ghaoui, Convex position estimation inwireless sensornetworks, in: INFOCOM, Anchorage, AK, USA, 2001, pp. 1655–1663.

[11] F. Franceschini, M. Galetto, D. Maisano, L. Mastrogiacomo, A reviewof localization algorithms for distributed wireless sensor networks inmanufacturing, International Journal of Computer Integrated Manufacturing(2007) 1–19.

[12] S. Gezici, Z. Tian, G. Giannakis, H. Kobayashi, A. Molisch, H. Poor, Z. Sahinoglu,Localization via ultra-wideband radios: a look at positioning aspects for futuresensor networks, Signal Processing Magazine, IEEE 22 (4) (2005) 70–84.

[13] G. Giorgetti, S.K.S. Gupta, G. Manes,Wireless localization using self-organizingmaps, in: Proceedings of the 6th International Conference on InformationProcessing in Sensor Networks, IPSN’07, Cambridge, MA, USA, April 2007,pp. 293–302.

[14] L. Girod, D. Estrin, Robust range estimation using acoustic and multimodalsensing, in: IEEE/RSI Int. Conf. on Intelligent Robots and Systems, IROS, Maui,HI, USA, 2001, pp. 1312–1320.

[15] T. He, C. Huang, B.M. Blum, J.A. Stankovic, T. Abdelzaher, Range-freelocalization schemes for large scale sensor networks, in: Proceedings of the9th Annual International Conference on Mobile Computing and Networking,MobiCom’03, San Diego, CA, USA, September 2003, pp. 81–95.

[16] J. Hightower, G. Borriello, Location systems for ubiquitous computing, IEEEComputer 34 (8) (2001) 57–66.

[17] J. Hill, R. Szewczyk, A. Woo, S. Hollar, D.E. Culler, K.S.J. Pister, Systemarchitecture directions for networked sensors, in: Architectural Support forProgramming Languages and Operating Systems, Cambridge, MA, USA, 2000,pp. 93–104.

[18] X. Hong, M. Gerla, G. Pei, C.-C. Chiang, A group mobility model for adhoc wireless networks. in: Proceedings of the International Workshop onModeling Analysis and Simulation ofWireless andMobile System,MSWiM’99,Seattle, WA, USA, 1999, pp. 53–60.

[19] L. Hu, D. Evans, Localization for mobile sensor networks, in: Proceedingsof the International Conference on Mobile Computing and Networking,MOBICOM’04, Philadelphia, PA, USA, 2004, pp. 45–57.

[20] R. Iyengar, B. Sikdar, Scalable and distributed GPS free positioning forsensor networks, in: Proceedings of the IEEE International Conference onCommunications, ICC’03, Anchorage, AK, USA, May 2003, pp. 338–342.

[21] Y.-B. Ko, N.H. Vaidya, Location-aided routing (LAR) in mobile ad hoc networks,Wireless Networks 6 (4) (2000) 307–321.

[22] V. Kumar, S.R. Das, Performance of dead reckoning-based location service formobile ad hoc networks, Wireless Communications and Mobile Computing 4(2) (2004) 189–202.

[23] R. Kurazume, S. Nagata, S. Hirose, Cooperative positioning with multiplerobots, in: IEEE International Conference on Robotics and Automation, vol. 2,San Diego, CA, USA, May 1994, pp. 1250–1257.

[24] K. Langendoen, N. Reijers, Distributed localization in wireless sensornetworks: a quantitative comparison, Computer Networks 43 (4) (2003)499–518.

[25] S. Madden, M.J. Franklin, J.M. Hellerstein, W. Hong, Tag: a tiny aggregationservice for ad-hoc sensor networks, in: Proceedings of the 5th Symposium onOperating Systems Design and Implementation, OSDI, Boston, MA, USA, 2002.

[26] D. Moore, J. Leonard, D. Rus, S. Teller, Robust distributed network localizationwith noisy range measurements, in: Proceedings of the 2nd InternationalConference on Embedded Networked Sensor Systems, SenSys’04, Baltimore,MD, USA, 2004, pp. 50–61.

[27] R.L. Moses, D. Krishnamurthy, R.M. Patterson, A self-localization method forwireless sensor networks, EURASIP Journal on Applied Signal Processing 2003(4) (2003) 348–358.

[28] R. Nagpal, H.E. Shrobe, Bachrach J., Organizing a global coordinate systemfrom local information on an ad hoc sensor network, in: Proceedings of the2nd International Conference on Information Processing in Sensor Networks,IPSN’03, Palo Alto, California, USA, 2003, pp. 333–348.

[29] J. Park, E.D. Demaine, S.J. Teller, Moving-baseline localization, in: Proceedingsof the 7th International Conference on Information Processing in SensorNetworks, IPSN’08, St. Louis, Missouri, USA, April 2008, pp. 15–26.

[30] N. Patwari, J.N. Ash, S. Kyperountas, A.O. Hero III, R.L. Moses, N.S. Correal,Locating the nodes: cooperative localization in wireless sensor networks,Signal Processing Magazine, IEEE 22 (4) (2005) 54–69.

[31] S. Poduri, G.S. Sukhatme, Constrained coverage formobile sensor networks. in:Proceedings of the IEEE International Conference on Robotics and Automation,ICRA, New Orleans, LA, USA, 2004, pp. 165–171.

[32] N.B. Priyantha, H. Balakrishnan, E. Demaine, S. Teller, Anchor-free distributedlocalization in sensor networks, in: Proceedings of the First InternationalConference on Embedded Networked Sensor Systems, SenSys’03, Los Angeles,CA, USA, 2003, pp. 340–341.

[33] N.B. Priyantha, H. Balakrishnan, E.D. Demaine, S.J. Teller, Mobile-assistedlocalization in wireless sensor networks, in: INFOCOM, Miami, FL, USA, March2005, pp. 172–183.

[34] M. Rudafshani, S. Datta, Localization in wireless sensor networks, in:Proceedings of the 6th International Conference on Information Processingin Sensor Networks, IPSN’07, Cambridge, Massachusetts, USA, April 2007,pp. 51–60.

[35] C. Savarese, J.M. Rabaey, K. Langendoen, Robust positioning algorithms fordistributed ad-hoc wireless sensor networks, in: USENIX, Monterey, CA, USA,2002, pp. 317–327.

[36] A. Savvides, C.-C. Han, M.B. Strivastava, Dynamic fine-grained localization inad-hoc networks of sensors, in: Proceedings of the 7th Annual InternationalConference on Mobile Computing and Networking, MobiCom’01, ACM Press,New York, NY, USA, 2001, pp. 166–179.

[37] Y. Shang, W. Ruml, Y. Zhang, M.P.J. Fromherz, Localization from mereconnectivity, in: Proceedings of the 4th ACM International Symposium onMobile Ad Hoc Networking & Computing, MobiHoc’03, Annapolis, Maryland,USA, 2003, pp. 201–212.

[38] I.E. Sutherland, R.F. Sproull, R.A. Schumacker, A characterization of ten hidden-surface algorithms, ACM Computing Surveys 6 (1) (1974) 1–55.

[39] G. Trajcevski, P. Scheuermann, H. Brönnimann, Mission-critical managementof mobile sensors: or, how to guide a flock of sensors, in: Proceedings ofthe First International Workshop on Data Management for Sensor Networks,DMSN’04, Toronto, Canada, 2004, pp. 111–118.

[40] Y. Xu, Y. Ouyang, Z. Le, J. Ford, F. Makedon, Mobile anchor-free localizationfor wireless sensor networks, in: Proceedings of the Third IEEE InternationalConference on Distributed Computing in Sensor Systems, DCOSS’07, Santa Fe,NM, USA, June 2007, pp. 96–109.

[41] Y. Yemini, Some theoretical aspects of position–location problems, in: 20thAnnual Symposium on Foundations of Computer Science, FOCS, San Juan,Puerto Rico, 1979, pp. 1–8.

[42] P. Zhang,M.Martonosi, Locale: collaborative localization estimation for sparsemobile sensor networks, in: IPSN ’08: Proceedings of the 7th InternationalConference on Information Processing in Sensor Networks, St. Louis, Missouri,USA, April 2008, pp. 195–206.

Page 15: Managing cohort movement of mobile sensors via GPS-free and compass-free node localization

H. Akcan et al. / J. Parallel Distrib. Comput. 70 (2010) 743–757 757

[43] F. Zhao, L. Guibas, Wireless Sensor Networks: An Information ProcessingApproach, Morgan Kaufmann, 2004.

Hüseyin Akcan received his BS in Control and ComputerEngineering from Istanbul Technical University and hisMS and Ph.D. in Computer Science from PolytechnicInstitute of NYU in 2008. He is currently an AssistantProfessor of Software Engineering at Izmir University ofEconomics in Izmir, Turkey. His research interests aredata aggregation and sampling, sensor networks andcomputational geometry.

Vassil Kriakov received his BS/MS degree from Polytech-nic University in 2003 and in January 2009 was awardeda Ph.D. in Computer Science from Polytechnic Institute ofNYU. He is now the Chief Technical Architect for Trini-tas Capital Ltd. in the Isle of Man, United Kingdom. Hisresearch interests are in distributed indexing for spatio-temporal applications, databases, sensor networks, peer-to-peer computing.

Hervé Brönnimann is an Associate Professor of ComputerScience and Engineering at Polytechnic Institute of NYU.Currently, he is on leave in the Research and DevelopmentDivision at Bloomberg L.P. Herve holds a PhD in ComputerScience from Princeton University and an MS from EcoleNormale Superieure de Paris. He has held positions at Inriaand NEC Research Institute. His research interests are ingeometric algorithms and their efficient implementation.Herve has received an NSF-CAREER Award and has been aOthmer Institute Junior Fellow.

Alex Delis is currently a Professor of Computer Scienceat the University of Athens in Athens, Greece. He hasbeen a Lecturer and Senior Lecturer of Computing Systemsat Queensland Univ. of Technology in Brisbane, Australiaas well as an Assistant and an Associate Professor ofComputer Science at Polytechnic Institute of NYU. Hisresearch interests are in distributed data managementand computing systems. He holds a Ph.D. and an MS inComputer Science from the Univ. of Maryland in CollegePark as well as a Diploma in Computer Engineering fromthe Univ. of Patras. He has been the recipient of the

NSF-CAREER Award, an outstanding paper in the IEEE Int. Conf. on DistributedComputing Systems, the Maurice V. Wilkes Medal of the British Computer Societyand has been a Fulbright Fellow.