• 沒有找到結果。

Mobility management algorithms and applications for mobile sensor networks

N/A
N/A
Protected

Academic year: 2021

Share "Mobility management algorithms and applications for mobile sensor networks"

Copied!
15
0
0

加載中.... (立即查看全文)

全文

(1)

Published online 8 January 2010 in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/wcm.886

SPECIAL ISSUE PAPER

Mobility management algorithms and applications

for mobile sensor networks

You-Chiun Wang, Fang-Jing Wu and Yu-Chee Tseng∗

Department of Computer Science, National Chiao-Tung University, Hsin-Chu 30010, Taiwan, ROC

ABSTRACT

Wireless sensor networks (WSNs) offer a convenient way to monitor physical environments. In the past, WSNs are all considered static to continuously collect information from the environment. Today, by introducing intentional mobility to WSNs, we can further improve the network capability on many aspects, such as automatic node deployment, flexible topology adjustment, and rapid event reaction. In this paper, we survey recent progress in mobile WSNs and compare works in this field in terms of their models and mobility management methodologies. The discussion includes three aspects. Firstly, we discuss mobility management of mobile sensors for the purposes of forming a better WSN, enhancing network coverage and connectivity, and relocating some sensors. Secondly, we introduce path-planning methods for data ferries to relay data between isolated sensors and to extend a WSN’s lifetime. Finally, we review some existing platforms and discuss several interesting applications of mobile WSNs. Copyright © 2010 John Wiley & Sons, Ltd.

KEYWORDS

mobility management; path planning; sensor applications; topology adjustment; wireless sensor networks

*Correspondence

Yu-Chee Tseng, Department of Computer Science, National Chiao-Tung University, Hsin-Chu 30010, Taiwan, ROC. E-mail: yctseng@cs.nctu.edu.tw

1. INTRODUCTION

The development of wireless technologies and micro-sensing MEMS has triggered the success of wireless sensor networks (WSNs). A WSN is composed of one or multiple remote sinks and many tiny, low-power sensors, each equipped with actuators, sensing devices, and wireless transceivers [1]. These sensors are massively deployed in a region of interest (ROI) to continuously collect and report surrounding data. WSNs offer a convenient way to monitor physical environments. Many applications such as object tracking, health monitoring, security surveillance, and intelligent transportation [2--5] have been proposed.

A WSN is usually deployed with static sensors to perform monitoring missions. However, due to the dynamics of events or environments, a purely static WSN could face these challenges: (1) Sensors are often scattered in a ROI by aircrafts or robots [6]. These randomly scattered sensors could not guarantee complete coverage of the ROI and may be partitioned into disconnected subnetworks. The existence of obstacles could even worsen the problem. (2) Sensors are usually powered by batteries. As some sensors exhaust their energy, holes could appear and the network could be broken. However, in many scenarios, it is quite difficult to recharge sensors or redeploy nodes. (3)

A WSN may need to support multiple missions or have multiple types of sensors [7]. Sometimes, we may need to send a certain type of sensors to particular locations to support particular needs. Without mobility, this is difficult to achieve. (4) While most efforts assume that sensors are cheap, some types of sensors may be expensive. Dispatching of those expensive ones from locations to locations may be necessary.

By introducing mobility to a WSN, we can enhance its capability to handle the above problems. Nevertheless, mobile WSN and mobile ad hoc network (MANET) are essentially different. Mobility in a MANET is often arbitrary, whereas mobility in a mobile WSN should be ‘intentional’, in the sense that we can control their movement to achieve our missions. In this paper, we give a comprehensive survey of recent progress in mobile WSNs. Our discussion focus on two types of nodes: mobile sensors and data ferries. With the former, one may change the network topology by moving these mobile sensors. With the latter, one may maneuver these data ferries to collect or relay sensing data. We will cover three topics:

r

Mobility management of mobile sensors: First, we introduce deployment methods to organize a WSN. Second, we present relocation methods to improve the

(2)

coverage and connectivity of a WSN. Third, we discuss how to assign mobile sensors to desired locations.

r

Path planning of data ferries: We first introduce

path-planning methods to maneuver data ferries in a sparse WSN, and then discuss how to use data ferries to extend a WSN’s lifetime.

r

Platforms and Applications of mobile WSNs: Some mobile platforms and applications will be introduced.

2. MOBILITY MANAGEMENT OF

MOBILE SENSORS

2.1. Solutions to Deploying Mobile Sensors

Sensor deployment is a basic issue since it decides a WSN’s detection ability. A good deployment should satisfy both coverage and connectivity [8,9]. Coverage requires that each location in the ROI be monitored by sensors, and connectivity requires that the network remain not partitioned. With mobile sensors, the deployment job becomes ‘automatic’. We introduce three deployment methods: The force-based deployment images that virtual forces will drive sensors to move. The graph-based deployment identifies uncovered holes and moves sensors to cover them. The assignment-based deployment computes the locations to be placed with sensors and then dispatches them in an energy-efficient way.

2.1.1. Force-based deployment.

The work [10] considers moving sensors by virtual forces. Each sensor si is exerted by a compound force −

F

i = −→FiA+ −→FiR+

n

j=1,j=i−→Fij, where −FiAis an attractive force by the ROI, −FiR is the overall repulsive force by obstacles, −→Fijis the force produced by sensorsj, andn is the total number of sensors. Each force −Fijis denoted by (rij, θij) in a polar coordinate, whererij is the magnitude andθijis the orientation. −Fijis expressed as

−→ Fij=      (wA· (dij− dth), θij) ifdij> dth (wR·d1ij, π+ θij) ifdij< dth 0 otherwise,

wherewA/wRis the measure of an attractive/repulsive force, dijis the distance betweensiandsj, anddthis a threshold

distance to decide the force type. Figure 1(a) gives an example, wheredth= d14. We see thats2exerts an attractive

force −F→12, s3 exerts a repulsive force −F→13, and s4 exerts

no force ons1becaused12> dth,d13< dth, andd14= dth, respectively. Sensors1is thus moved by the compound force

− →F

1.

In Reference [11], each sensor is viewed as an electron and is repulsed by other sensors. The force from a higher sensor density area is greater than that from a lower density area, and the force from a nearer sensor is greater than that from a farther sensor. Specifically, the force functionF (·)

F13

(a)

(b)

s1 s2 s3 s4 s4 F12 repulsive force attractive force compound force s1 s2 s3 F1 compound forceF1 F14 F12 F13

Figure 1. Examples of force-based deployment: (a) hybrid forces and (b) repulsive forces.

should satisfy three rules: (1)F (dij)≥ F(dik) ifdij≤ dik. (2)F (0+)= Fmax. This gives an upper bound on forces.

(3)F (dij)= 0 if dij> rc (communication distance). This means that only neighboring sensors will generate forces.

Sensors are moved step by step. In each step, the repulsive force on sensor si exerted by a neighboring sensorsj is −→

Fij= Dµ2i(rc|pi− pj|)|pj−pi|pj−pi, whereDi is the local sensor density seen bysi,µ is the expected sensor density after the final deployment, andpi/pjis the position ofsi/sj. The expected sensor density is computed byµ= n·πr2c

|A| , where

|A| is the ROI’s area. Figure 1(b) shows an example, where s2,s3, ands4all exert repulsive forces ons1.

In the above two methods, oscillation check and stability check are performed to examine whether a sensor has reached its final destination. When a sensorsimoves back and forth inside a small region many times, it has entered the oscillation state. On the other hand, whensimoves less than a threshold distance in a fixed duration, it has entered the stable state. In both cases,siwill stop moving.

Reference [12] considers that sensors work under a probability sensing model. The goal is to deploy a minimum number of sensors such that the detection probability of the ROI is above a predefined threshold. To achieve this, we can first deploy sufficient sensors to satisfy the detection probability. Then, sensors can exert repulsive forces on each other. In this way, the number of sensors may be reduced since some sensors may be pushed outside the ROI.

2.1.2. Graph-based deployment.

The work [13] adopts a Voronoi diagram to search uncovered holes and moves sensors to cover these holes. Given a set of sensors on a 2D plane, the Voronoi diagram [14] consists of a number of Voronoi polygons such that each polygon contains one sensor and the points in the polygon are closer to the interior sensor than to other exterior sensors. When the sensing range of a sensor cannot completely cover its Voronoi polygon, there could be an uncovered hole in that polygon. In Reference [13], it proposes the following methods to cover this hole:

Voronoi-based (VOR) method: A sensor should move

toward the farthest vertex of its current polygon. Figure 2(b) gives an example, where the dotted polygon is sensorsi’s

(3)

u

v1

r

s

v2

s

i

s

i Voronoi polygon sensor Voronoi polygon farthest vertex minimaxpoint

(a)

(b)

(c)

Figure 2. The VOR and minimax methods: (a) a Voroni diagram, (b) VOR method, and (c) minimax method.

current polygon andu is the farthest vertex. Sensor siwill move along the direction −siu and stop at v1, where|uv1| =

rs.

Minimax method: A sensor should move to the minimax

point of its current polygon, where the minimax point of a polygon is the center of the circle with the minimum radius that can cover the whole polygon (refer to Reference [13] for details about finding the circle). Figure 2(c) gives an example, wherev2is the minimax point ofsi’s current polygon.

2.1.3. Assignment-based deployment.

Reference [15] focuses on deployment in ROIs with obstacles. It considers two related problems: sensor placement and sensor dispatch. The former asks how to use the minimum number of sensors in a ROI to guarantee coverage and connectivity. The latter asks how to dispatch mobile sensors to the designated locations computed by the placement result such that their moving energy is minimized.

To solve the placement problem, [15] partitions a ROIA into single-row and multi-row regions. A single-row region requires one row of sensors to cover it, and a multi-row region requires multiple rows of sensors to cover it. To partitionA, we first identify all single-row regions, which is achieved by expanding A’s boundaries inward and obstacles’ perimeters outward by a distance of √3rmin,

where rmin= min{rc, rs}. When the expanded line cuts off an obstacle with an area, we take a project from that area to identify a single-row region. Figure 3(a) gives an example, where five single-row regions (with numbers) are identified. Other regions will be multi-row ones. Then, we place sensors in each region as follows:

obstacle

(a)

(b)

(c)

3 c s r r D bisector min r B A obstacle cut-off areas expanded line C E 3rmin 3rmin 3rmin 3rmin 1 2 3 4 5 case rc rs rc 2 2 4 c r s s r r 3 c s r r case rs rc rs

Figure 3. The sensor placement solution proposed in Reference [15]: (a) partition a ROI, (b) place sensors in a single-row region,

and (c) place sensors in a multi-row region.

Single-row region: We place a sequence of sensors along

the region’s bisector, each separated by a distance ofrmin.

Figure 3(b) gives an example.

Multi-row region: Two cases are considered, as

Figure 3(c) shows. Whenrc≥ √

3rs, adjacent sensors are regularly separated by a distance of√3rs. Whenrc<

√ 3rs, sensors in each row are separated by a distance of rc. Adjacent rows are separated by a distance ofrs+

 r2 sr2 c 4

and shifted by a distance ofrc

2. To connect adjacent rows,

we add a column of sensors between them, each separated by a distance not larger thanrc.

Given a set of mobile sensorsS and a set of locations L computed by the placement result, [15] considers dispatchingS to L such that the energy consumption of sensors is minimized. Assuming|S| ≥ |L|, we construct a weighted complete bipartite graphG = (S ∪ L, S × L), where the weight of each edge (si, lj), si∈ S, lj∈ L, is calculated by−(em× d(si, lj)), whereemis the energy cost to move a sensor in one step andd(si, lj) is the shortest distance betweensi andlj. Then, we find a matchingM inG with the maximum edge weights, which can be solved by the Hungarian method [16]. For each edge (si, lj)∈ M, we move sensorsito locationljthrough the shortest path (refer to Reference [15] for details about finding the shortest path).

(4)

Reference [17] focuses on deployment with multilevel coverage. It considers two related problems: k-coverage sensor placement and sensor dispatch. The former asks how to use the minimum number of sensors in a ROI to guarantee k-level coverage. The latter asks how to dispatch mobile sensors to the designated locations computed by the placement result such that their moving energy is minimized.

To solve the k-coverage placement problem, [17] proposes an interpolating placement method based on the placement in Figure 3(c) (rc<

3rscase). Specifically, we see that a large amount of regions in each row are more than 1-covered. So, we can reuse these regions and place the least number of sensors to cover those insufficiently covered regions. Three cases are considered:

Case of rc

√ 3

2 rs: In Figure 3(c), we see that the

insufficiently covered regions (marked by gray) are located between adjacent rows. If we place a newNirow above each originalOirow by a distance ofrs, as Figure 4(a) shows, the ROI becomes 3-covered. Here, sensors in eachNirow are separated by a distance ofrc. Fork > 3, we can apply k

3 times of this 3-coverage placement and apply (k mod 3)

times of the 1-coverage placement.

Case of √3

2 rs< rc≤ 2+√3

3 rs: We can add one extraN i row between eachNiandOirows to construct a 3-coverage placement, as Figure 4(b) shows. TheseNi rows are shifted by a distance of rc

2 and sensors are separated by a distance

of 2rc. Fork > 3, we can apply k3 times of this 3-coverage

placement and apply (k mod 3) times of the 1-coverage placement.

Case ofrc> 2+

√ 3

3 rs: We can duplicate k sensors on each

location in Figure 3(c).

Given a set of mobile sensorsS and a set of locations L = {(l1, n1), (l2, n2), . . . , (lm, nm)} computed by the placement result, where each locationljwill be placed withnjsensors, [17] proposes a distributed method to dispatchS to L as follows:

(1) Each sensor si maintains a OCCi[1..m] table, where each OCCi[j]= {(sj1, dj1), (sj2, dj2), . . . ,

(sjα, djα)}, α ≤ nj, contains the set of sensorssjβthat

selectljas their destinations and their distancesdjβ

rs rs rc rc , , ,

(a)

(b)

Figure 4. The interpolating placement method: (a)rc√3 2 rscase and (b) √ 3 2 rs< rc≤ 2+ √ 3 3 rscase.

tolj. Initially, OCCi[j]= ∅, ∀j. Then, siselects the nearest locationlj such that|OCCi[j]| < nj as its destination, adds (si, d(si, lj)) in OCCi[j], and moves tolj.

(2) Sensor si periodically updates and exchanges its table with 1-hop neighbors. Whensihears the OCCk table from a neighborsk, si combines OCCi with OCCk as follows: For each j, we calculate a union Uj= OCCi[j]∪ OCCk[j]. If|Uj| > nj, we remove the records inUjthat have longer moving distances, until|Uj| = nj. Then, we replace OCCi[j] by Uj. If siwas in the original OCCi[j] entry, but is not in the new OCCi[j] entry, it means that si is replaced by other sensors with a shorter distance tolj. Thus,si should reselect another destination.

(3) Aftersireaches lj, it still exchanges its table with neighbors. Since the sink will eventually observe that all locations are covered, it can notify all sensors to exit from the dispatch method.

2.2. Solutions to Enhancing Coverage and Connectivity of a WSN

After deploying a WSN, some sensors may be broken or may exhaust their energy. These failed sensors may disconnect the network or cause uncovered holes. One can move some mobile sensors to relieve this problem. We introduce two such solutions for enhancing connectivity and coverage of a WSN.

2.2.1. Connectivity enhancement.

Reference [18] considers a static WSN with several isolated groups, called islands. To help these islands communicate with each other, we can add some mobile sensors between them. For two islands IG and IH, the minimum number of mobile sensors required to connect them isMG,H= dG,Hrc − 1, where dG,H = min

si∈IG,sj∈IH{di,j}

is the shortest distance betweenIGandIH. LetN(IG) be the number of sensors in islandIGandW (IG, m) be the optimal set of islands that can be connected by m mobile sensors starting from islandIG. It can be derived thatW (IG, m)= max{W(IG∪ IH, m− MG,H)+ N(IG∪ IH)}, where IH is an island to be directly connected byIGandN(IG∪ IH)= N(IG)+ N(IH)+ MG,H. However, for an islandIG, if the

v B1 B5 B3 B2 B4 c1 c2 root

(b)

(a)

Figure 5. An example of the block movement method: (a) initial network topology and (b) final network topology.

(5)

remaining m mobile sensors cannot connect to any other island, we setW (IG, m)= 0. Using dynamic programming, the minimum m to connect all islands can be found.

The work [19] considers strengthening the topology of a WSN to be biconnected. First, each cut-vertex is identified. For example, in Figure 5(a),c1andc2are cut-vertices. By

removing cut-vertices, the network is divided into several biconnected components (called blocks). Actually, we can ‘pull’ two neighboring blocks together to eliminate the cut-vertex between them. With this observation, a block movement method is proposed as follows: Given a network topology, we first identify all blocks along with their cut-vertices. A block can have zero, one, or multiple sensors. If two cut-vertices are directly connected, an empty block is established. Then, we can translate the network into a block tree, whose nodes contain blocks and cut-vertices. The block with the maximum number of sensors is the root. In Figure 5(a), there are five blocks (including the empty blockB4) and two cut-verticesc1andc2. BlockB1is the root

and blocksB2,B3, andB5are leaves. The method executes

in two iterations until the network becomes biconnected: (1) Move each leaf block toward the nearest sensor of its parent block, until a new edge appears. (2) If its parent block is empty, we further move it to the upstream cut-vertex of its parent block. Figure 5(a) gives an example, whereB5moves

towardv of its parent block B1, andB2andB3move toward

the cut-vertexc1since their parent blockB4is empty. The

final topology is shown in Figure 5(b).

2.2.2. Coverage enhancement.

The work [20] proposes a bidding protocol to enhance the coverage of a hybrid WSN composed of static and mobile sensors. Static sensors detect uncovered holes locally and bid for mobile sensors by the sizes of holes. It involves the following steps:

(1) Each mobile sensor is assigned with a base price, which is an estimation of the hole size when it leaves its current position. Initially, the base price is zero for all mobile sensors. Then, mobile sensors broadcast their positions and base prices in their local areas. (2) Static sensors exchange their positions with their

neighbors in two hops to construct a Voronoi diagram. If a static sensorsidetects an uncovered hole in its Voronoi polygon, it calculates a bid asπ× (d− rs)2, where d is the distance betweensiand its farthest polygon vertex andrsis the sensing distance. Here, the bid is an estimation of the uncovered hole size. Then, si sends its bid to the nearest mobile sensor whose base price is lower than the bid. (3) On receiving bids, a mobile sensor selects the highest

bid and moves to cover that hole. Then, it replaces its base price by the selected bid.

The bidding protocol repeats the above steps until no static sensor can give a bid higher than the base price of any mobile sensor.

Reference [21] considers moving sensors close to locations where events could appear. Given a set of event locations, sensors are moved such that their positions can eventually approximate the event distribution. Two moving methods are proposed. In the history-free method, each sensor siat position pki−1 reacts to the appearance of an event at location lk by moving to a new position pki = pk−1

i + fm(d(pki−1, lk)), where function fm(·) prohibits a sensor from passing another along the same vector in response to the same event. The history-based method requires sensors to maintain event history to approximate the event distribution. To maintain maximal coverage of the ROI, a sensor is not allowed to move if its movement will leave an uncovered hole.

2.3. Solutions to Assigning Mobile Sensors to Desired Locations

This may involves several issues: sensor relocation, sensor navigation, and sensor dispatch.

2.3.1. Sensor relocation.

Reference [22] divides a ROI into grids and moves sensors from high-density grids to low-density grids. It proposes grid-quorum to move sensors such that the number of exchanged messages are reduced. Specifically, a grid head is selected in each grid to maintain its information. A gridGiwith more sensors sends an advertisement (ADV) to its row to announce that it has extra sensors. On the other hand, a gridGjwith fewer sensors sends a request (REQ) message to its column to ask for extra sensors. These ADV and REQ will meet at a common grid. Figure 6(a) shows an example, where grid (1, 3) sends ADV to its row and grid (3, 1) sends REQ to its column. They will meet at grid (1, 1). This can reduce the message overhead significantly.

After identifying the targets, sensors are moved by cascaded movement rather than direct movement to prevent a single sensor from consuming too much energy. Figure 6(b) is a direct movement, wheresjneeds to travel a long distance. Figure 6(c) is a cascaded movement, where

(0,0) (1,0) (2,0) (3,0) (0,1) (1,1) (0,2) (1,2) (2,2) (3,2) (0,3) (2,3) (3,3) gridhead sensor (2,1) REQ (3,1) (0,3) (3) Sj Sk Si target (2) (1) target Sj Sk Si ADV (1,3) (a) (b) (c)

Figure 6. The grid-quorum and cascade movement methods: (a) grid-quorum, (b) direct movement, and (c) cascade movement.

(6)

C1 ADV navigationfield si mj ADV ADV C2 C2 C2 C3 C3 C3 C4

Figure 7. Navigate a mobile sensor by credits, whereC1> C2> C3> C4.

sk first moves to the target, thensimoves tosk’s original position, and thensjmoves tosi’s original position.

2.3.2. Sensor navigation.

The work [23] considers navigating mobile sensors in a hybrid WSN. It assumes that all sensors do not know their own locations in the ROI. When a static sensorsidetects an event, it will broadcast a weight request (WREQ) packet to search mobile sensors. On receiving WREQ, a mobile sensormjwill bid for the event by replying its weightwj=

Aj×h(si,mj)

ej , whereAjis the area of Voronoi polygon ofmj,

h(si, mj) is the hop count betweensiandmj, andejis the energy ofmj. A mobile sensor with a smaller weight will win the bidding.

Static sensors will then guidemjtosi’s location. An ADV packet is sent along the path fromsitomjto build up a navigation field, as Figure 7 shows. In particular,sisets the highest creditC1for itself. For each rebroadcast of ADV, a

lower credit value will be set. Then,mjwill try to move to siby repeatedly searching higher credit values.

2.3.3. Sensor dispatch.

Given a set of mobile sensorsS and a set of event locations L, the work [24] considers dispatching S to L with a concept of load balance. Assuming|S| ≥ |L|, we first calculate the energy costw(si, lj)= em× d(si, lj) for each sensorsi∈ S to reach each locationlj∈ L, where emis the energy cost to move a sensor in one step. The scheme tries to find a matchingM between sensors and locations by allowing a boundBjfor eachlj∈ L as follows:

(1) For each lj∈ L, we use a bound Bj to limit the candidate sensors thatlj can match with. A sensor siis said aslj’s candidate ifw(si, lj)≤ Bj. Since a larger bound may lead a sensor to select a farther location,Bj will be increased gradually. Initially, eachBj= |L|1

|L|

j=1∀i,(simin,lj)∈S×L{w(si, lj)}.

(2) For each unmatched lj∈ L, we find a candidate sensorsiwith the minimumw(si, lj) to match with. Ifsi is still unmatched, we add the pair (si, lj) in M. Otherwise, si must be matched with another location lo. In this case, lj will compete with lo forsi by three rules: (1) IfBj> Bo, we match si withlj to avoid expandingBj. (2) IfBj= Bo and

cost l2 l1 l3 s4 97 147 94 s3 153 238 177 s2 133 79 233 s1 219 105 181 l2 s3 s1 l3 s2 s4 l1 B3(160) l2 s3 s1 l1 l3 s2 s4 B2(160) l2 s3 s1 l1 l3 s2 s4 B1(160) (90) l2 s3 s1 l1 l3 s2 s4 B1 B2(160)

(a)

(b)

(d)

(e)

(c)

Figure 8. An example of finding the matching M: (a) energy costs of mobile sensors, (b) M = {(s2, l1), (s4, l2)}, (c) M = {(s2, l1), (s4, l3)}, (d) M = {(s2, l2), (s4, l3)}, and (e) M =

{(s1, l1), (s2, l2), (s4, l3)}.

w(si, lj)< w(si, lo), we match si withlj to reduce its energy consumption. (3) IfBj= Boandsiis the only candidate oflj but is not that oflo, we match si withlj. Whenlj wins the competition, the pair (si, lo) is replaced by the new pair (si, lj) inM, and lo becomes unmatched. Otherwise,lj checks other candidate sensors, until there is no candidate. (3) Ifljcannot find any match, we increaseBjbyB

and go to step 2, until a match is found.

(4) We repeat steps 2 and 3, until eachlj∈ L can find a sensor to match with.

Figure 8 gives an example, whereB= 70. The initial bound is 79+97+943 = 90. In Figure 8(b), l1matches withs2

with boundB1= 90 and l2 matches withs4 with bound

B2= 90 + 70 = 160. Then, after expanding B3, l3 finds

that its candidates4has been matched withl2, so it competes

with l2 for s4. Since B3= B2 and w(s4, l3)< w(s4, l2),

(s4, l2) is replaced by (s4, l3) in Figure 8(c). Similarly,l2

obtains s2 from l1 in Figure 8(d) and thus l1 selects an

unmatched sensors1. Figure 8(e) shows the final result.

When|S| < |L|, a clustering approach is proposed and then the similar matching steps are executed (we omit the details).

Reference [25] considers a mobile WSN as a multi-robot system and addresses the cooperation among robots. Each robot is regarded as a resource and may be required by multiple concurrent missions. It points out that deadlock may happen when some missions never finish executing and resources are tied up, preventing other missions from starting. Then, a deadlock avoidance policy based on the Petri nets is proposed.

(7)

Table I. Comparison of mobility management methods for mobile sensors.

References Category Hybrid Probabilistic Coverage Connectivity Energy

WSN sensing issue issue issue

Virtual force [10] Deployment √ √ √

Repulsive force [11] Deployment √ √

Gradient [12] Deployment √ √

Voronoi [13] Deployment √ √

1-coverage [15] Deployment √ √ √ √

k-coverage [17] Deployment √ √ √ √

Island [18] Enhancement √ √

Block tree [19] Enhancement √

Bidding [20] Enhancement √ √

Event motion [21] Enhancement √

Relocation [22] Dispatch √ √

Navigation [23] Dispatch √ √

Load balance [24] Dispatch √ √

Deadlock [25] Dispatch √

2.4. Summary of Mobility Management

Table I summarizes the mobility management methods for mobile sensors. While most methods consider a purely mobile WSN, [18,20,23--25] consider a hybrid WSN. References [18,20] use mobile sensors to improve the topology of a static WSN, and References [23,24] use static sensors to detect events and send mobile sensors to event locations. For sensors’ detection, References [10,12,15,17] consider the probabilistic sensing model. For coverage and connectivity, most deployment methods [10,11,13,15,17] address both issues, but the work [12] addresses only the coverage issue. References [20--22] move sensors to improve a WSN’s coverage, while references [18,19] move sensors to improve the network connectivity. For energy concern, the dispatch solutions in References [15,17,23] try to minimize the energy consumption of mobile sensors. Balance of energy consumption is addressed in References [22,24].

3. PATH PLANNING OF DATA

FERRIES

3.1. Solutions to Relaying Messages by Data Ferries

Data ferries are a type of mobile sensors that are mainly designed for carrying data. For example, they can travel between isolated sensors to relay information. So, path planning is a critical issue for data ferries to minimize message delay and meet bandwidth requirements. We will discuss two types of path planning: The adaptive planning considers that all sensors are isolated and the final path is adjusted from the initial TSP solution. The probabilistic planning considers that sensors may arbitrarily roam around a ROI and ferries may meet them by a probability model.

3.1.1. Adaptive planning.

Given a data ferryF and a set of isolated sensors S = {s1, s2, . . . , sn}, the work [26] considers how to schedule a path forF to visit S. The goal is to exchange data between sensors such that the average message delay is minimized and the bandwidth requirement of each sensor is satisfied. To solve this problem, a 4-step algorithm is proposed:

(1) We first calculate an initial path p by any TSP solution. The message delay between two sensors siand sj on p is defined byTijp= |p|2v +

dijp v, where |p| is p’s total length, v is F’s speed, and dp

ijis the distance betweensiandsjon p. It is assumed thatF will repeatedly travel along p. Here,|p|2vis the average waiting time forsibe visited byF, and

dpij

v is the time forF to deliver si’s data tosj. So, the average delay incurred by p isTp=  1≤i,j≤nbijTijp  1≤i,j≤nbij , wherebijis the average amount of data to be sent fromsitosj. (2) Next, we try to improve p by two operations:

• Edge Replacement: Let sisjandslsmbe two edges in p. Let p be the path modified from p by replacingsisjandslsmwithsislandsjsm. IfTp < Tp, then we replace p byp .

• Sequence Reordering: We construct a new path p

by moving anysiin p from its original position to another position. IfTp < Tp, then we replace p byp .

The above operations are repeated until no better path can be found.

(3) Since the communication ranges of sensors may overlap, a time allocation policy p is needed to assignF’s communication time with sensors. Specif-ically, we cut p into m segments 1, ξ2, . . . , ξm} as F enters or leaves a sensor’s communication range, and definep(si, ξj) as the portion ofF’s

(8)

communication time withsiwhenF moves along segmentξj. Figure 9(a) gives an example, where the subpath from u tov is cut into four segments ξ1,ξ2,

ξ3, andξ4.p(·, ξ1)= 0 since F cannot communicate

with any sensor.p(s2, ξ2)= p(s1, ξ4)= 1 since F

can only communicate with one sensor.p(s2, ξ3)=

p(s1, ξ3)= 12sinceF should share its time to s1and

s2.

(4) To meet the bandwidth requirement of eachsi, F should spend sufficient time to communicate with si. If there is no sufficient time, the segments for si should be extended properly. For example, in Figure 9(a), segmentξ2may be extended to the dotted

curve to increase the communication time withs2. Let

xjbe the extra communication time ofF to extend ξjandtibe the original communication time ofF for si. A linear programming is formulated to minimize the total extra communication time ofF:

min m  j=1 xj, subject to (ti+ m j=1p(si, ξj)xj)· R |p| v + m j=1xj ≥ bi (1)

where R isF’s data rate and bi is the bandwidth requirement of si. Here, the numerator and denominator are the expected amount of data that can be sent and received bysiand the total moving time ofF after extension, respectively. The path p after extension isF’s traveling path.

The work [27] further considers multiple data ferries. Given n sensors and m data ferries, the goal is to find a set of paths for data ferries to visit all sensors such that the average message delay is minimized and the bandwidth requirement of each sensor is met. Four types of solutions are proposed.

Single-route algorithm (SIRA): All data ferries will

move along the same path and there is no communication between them. Figure 9(a) gives an example with two ferries. This algorithm directly extends that of Reference [26]. For any path p, the delay to deliver data fromsito sj on p isTijp= 2|p|mv+

dpij

v. So, the average delay of p is Tp=



1≤i,j≤nwijTijp 

1≤i,j≤nwij

, wherewij is the weight assigned to eachTijp. Still, edge replacement and sequence reordering are applied to improve p. Finally, the linear programming in Equation(1) can be rewritten as:

min n  i=1 yi, subject to R· (2rc+ yi) |p| +n j=1yjbi m (2)

Fdata ferry sensor path of a data ferry

F F contact point G4 F F F F c r F F 1 s 2 s 1 2 3 4 v u relaying sensor G (a) (c) (d) (b) 3 G1 G2 F F extending path

Figure 9. Path-planning examples for data ferries: (a) SIRA, (b) MURA, (c) NRA, and (d) FRA.

whereyiis the extra moving length of data ferries in the communication range ofsi. In Equation (2), the left-hand term is the product of data ferries’ data rate and the ratio of data ferries’ communication time allocated tosi, and the right-hand term means thatsi’s bandwidth requirementbi is shared by m data ferries.

Multi-route algorithm (MURA): Each data ferry will

move along a different path and there is no communication between them. Figure 9(b) gives an example. In this algorithm, given a set of paths P, we use a 2-tuple (E1(P), E2(P)) as the cost function to evaluate the quality

ofP, where E1(P) is the estimated total overload of data

ferries in P and E2(P) is the estimated total message

delay incurred byP (refer to Reference [27] for details). Intuitively, overload is the amount of data that newly appear and cannot be delivered over a time interval. Initially, we assume that each sensor has a ferry. LetP be the current path set andnibe number of ferries inpi∈ P. We adopt four operations to reduce the number of ferries and to refine the path setP: (1) overlap(pi, pj): We extend pathpj∈ P by including one sensor in pathpi∈ P, pi= pjsuch that the cost is minimized. (2) merge(pi, pj): We combinepiand pjinto one new path, and put allni+ njferries on the new path. (3) merge−(pi, pj): This is the same as merge(pi, pj), except that we decrease the number of ferries by one. (4) reduce(pi): We decrease ni by one for pi if ni> 1. We iteratively select one operation in a greedy manner to minimize the cost, until there are only m paths. After obtaining m paths, we can apply SIRA to optimize each path.

Node replying algorithm (NRA): In this scheme, each

data ferry will move along a different path and static sensors will serve as relay nodes to propagate data from paths to paths. First, the ROI is divided intoc1× c2 grids, where

(9)

travels on a path constructed by SIRA. Among all possible combinations of c1 and c2, we select the one with the

minimum cost (as defined in MURA). Suppose that gridsGs andGdwant to exchange data. To relay data between them, we will try to connectGsandGddirectly or indirectly. Two grids can be connected using the overlap(pi, pj) operation in MURA to find a relaying node. Figure 9(c) gives an example, where there are four grids and four paths. Then, these paths will be connected by extending one to another.

Ferry relaying algorithm (FRA): Like NRA, the ROI is

divided into grids, each to be served by one data ferry. Data ferries may exchange their data when they meet with each other. Contact points are designated along grid boundaries for this purpose, as shown in Figure 9(d). These contact points are separated by a distance of one half of the grid boundary, so each ferry have up to eight contact points to communicate with other ferries. Data ferries of any two adjacent grids will move in reverse directions of each other. To guarantee that data ferries can meet at contact points, Reference [27] suggests extending the path in each grid by connecting to the contact points and also extending paths such that they have the same lengths.

The work [28] considers that sensors may have different communication ranges. A data ferry only needs to touch any point within the communication range of each sensor to collect its data. Thus, the moving path of the ferry can be further reduced. Figure 10 shows an example, where the ferry is initially placed at l0. We can observe that

the pathl0→ l1→ l2→ l0 is shorter than the pathl0→

s1→ s2→ l0. Here,l1andl2are called touching points of

sensorss1ands2, respectively. Based on this observation,

Reference [28] adopts evolutionary algorithms to calculate the touching points of sensors.

3.1.2. Probabilistic planning.

Given a set of mobile sensors and a data ferry F, Reference [29] considers planningF’s path such that the overall probability thatF can meet each mobile sensor is larger than a predefined thresholdτ and the path length is minimized. It is assumed that these mobile sensors may move following a predefined mobility model. It is also assumed thatF will stop at a few points for some periods of time when moving along the path. A 3-step solution is proposed: s1's communication range starting point s2 s1 l1 l2 l0 s2's communication range

Figure 10. An example of touching points of sensors.

F data ferry mobile sensor path of a data ferry way-point not in L way-point in L rc li ci F

o

, ,

Figure 11. An example of the probabilistic planning method.

(1) We divide a ROI into grids. LetL be the set of the central point of each grid, called way-point, as shown in Figure 11. For each li∈ L, let ci be the circle centered at li and with a radius rc. We define g(ci, sj) as the instantaneous contact probability thatF can meet sensor sj insideciat a time instance, andh(ci, ti, sj) as the time-cumulative contact probability thatF can meet sensor sjinside ci when F stays at li for a time period ti. These probabilities depend on the mobility model of mobile sensors. In Reference [29], these probability are developed for both a periodic mobility model and a random way-point mobility model.

(2) We then select a subsetL ⊆ L and determine the timetiforF to stay in each way-point li∈ L with the following objective:

min  li∈L ti+ βd(li, O) (3) subject to ∀sj,  li∈L h(ci, ti, sj)+ max li∈L {g(ci, sj)} ≥ τ (4)

In Equation (3), O is the ROI’s center,d(li, O) is the distance betweenli and O, andβ is a constant to measure the quality of the path yet to be constructed for F. In Equation (4), maxli∈L {g(ci, sj)} is an estimation of the meeting probability betweenF and sj.

(3) After calculatingL and the staying timetifor each li∈ L , we then adopt any TSP solution to construct a path to visit all way-points inL .

3.2. Solutions to Prolonging a WSN’s Lifetime by Data Ferries

The previous section mainly focuses on using data ferries to relay data between isolated sensors. Nevertheless, with richer energy, data ferries can also help prolong the lifetime

(10)

of a connected WSN. It is widely known that sensors nearby the sink could exhaust their energy faster. By scheduling data ferries to collect data from sensors, the energy consumption of sensors can be balanced and thus the network lifetime can be prolonged. We will introduce four path-planning solutions for data ferries in a connected WSN: The recursive planning uses a divide-and-conquer scheme to plan a ferry’s path. The tree-based planning uses a tree structure to plan ferries’ paths. The single-hop collection allows a ferry to directly contact each sensor. While the above solutions are centralized, the distributed navigation considers guiding data ferries by sensors in a distributed manner.

3.2.1. Recursive planning.

Given a set of sensorsS and a data ferry F, Reference [30] considers planningF’s path to visit some sensors in S such that theF’s moving distance (or time) can be bounded by a pre-defined threshold, and the network lifetime is maximized. Suppose that F will move from a location la= (xa, ya) to another locationlb= (xb, yb). The idea is to recursively pick a turning point betweenlaandlb, until we can find a pathla→ l1→ · · · → lm→ lbsuch that the distance (or time) bounded can be meet, and the network lifetime is maximized whenF moves along the path, where l1, l2, . . . , lmare the turning points. A divide-and-conquer scheme is proposed as follows:

(1) Given two locations la and lb, we select a set of possible turning points such that each point locates at (xa+xb2 , ky), where k is an integer and y is a constant such that every turning point will be inside the ROI. Among these turning points, we select the pointlvand construct a pathla→ lv→ lbsuch that the network lifetime can be maximized when F moves along that path (refer to Reference [30] for the details about calculating the network lifetime). Figure 12(a) gives an example, where there are four turning point and a pathla→ lv2→ lbis constructed.

(2) We divide sensors into two groups according to their distances to the line segmentsla→ lvand lv→ lb (a sensor will favor the closer line segment). For example, in Figure 12(b), sensorss1,s2, ands3are in

one group, whiles4ands5are in another group.

(3) For each cluster of sensors, we recursively execute the above two steps, until the distance (or time) bounded is reached. Figure 12(c) shows the final result, where there are two iterations.

3.2.2. Tree-based planning.

Given a data ferryF and a routing tree T = (V, E) rooted a sink, whereV contains all sensors S and the sink B, and E contains all tree edges, Reference [31] considers scheduling a cyclic path forF to visit a subset of nodes V ⊆ V, such thatB∈ V , the path length is not longer thanLmax, and the

overall hop count alongT from each sensor to a node in V is minimized. We denote byδTSP(V ) the length of a path

y

1 v

l

y

y

2 v

l

3 v

l

4 v

l

turning point sensor a

l

l

b

y

y

y

2 v

l

sensor a

l

s

1

l

b 2

s

3

s

4

s

s

5

y

y

y

l

a

l

b F

cluster1 cluster2 cluster3 cluster4

y) , 2

(a)

(b)

(c)

x x ( a b y) -, 2 x x ( a b

Figure 12. An example of the recursive planning method for a data ferry: (a) iteration 1: select one turning point, (b) iteration 1:

clustering, and (c) result of iteration 2.

calculated by any TSP solution to traverse all nodes inV . This algorithm involves five following steps:

(1) Initially,V = {B}.

(2) Then, we construct a candidate setW as follows: For eachv∈ V − V , we addv toW if δTSP(V ∪ {v}) ≤

Lmax. IfW = ∅, the algorithm is terminated.

(3) For eachv∈ W, we calculate its utility by

U(v)=  si∈SdT(si,V ) si∈SdT(si,V ∪ {v}) δTSP(V ∪ {v}) − δTSP(V )

wheredT(si,V ) is the hop count alongT from sito a node inV . Here, the utility ofv is the ratio of the reduction of total hop count that data has to be relayed alongT to the increase of F’s length after adding v. We then add the node with the maximum utility toV . (4) After adding a new node, we recalculate the utility of each si∈ V . If any si∈ V has U(si)= 0, we remove it fromV .

(5) If all sensors are included inV , the algorithm is terminated. Otherwise, we go to step 2.

Figure 13 gives an example. We will includes1ands2

intoV in the first two iterations. In the third iteration,s3is

added. SinceU(s1) becomes zero, we removes1 fromV .

(11)

iteration 1: iteration 2: iteration 3: S1 S2 S3 S4 S5 S6 S7 } {s {B} V' } ,s ,s {s W 1 3 2 1 } {s } s {B, V' } ,s {s W 2 1 3 2 } {s } ,s s {B, V' } {s W 3 2 1 3 S1 S2 S 3 S4 S5 S6 S7 S1 S2 S3 S4 S5 S6 S7

Figure 13. An example of the tree-based planning method for a data ferry.

Reference [32] considers that sensors may aggregate their data before sending to a data ferry. It discusses how to schedule a ferry’s path such that the path length is not longer thanLmaxand the total amount of data sent to the ferry can

be minimized. The work suggests planning a ferry’s path by adopting a steiner tree [33] to aggregate sensing data.

3.2.3. Single-hop collection.

The work [34] considers planning a ferry’s path to travel in a WSN such that each sensor can directly communicate with the ferry. LetL = {l1, l2, . . . , lk} be a set of candidate polling points which contains all sensor locations and some predefined locations. LetN(li) be the set of sensors that the ferry can directly communicate with when it arrives at point li∈ L. The goal is to find a subset of polling pointsL ⊆ L such that each sensor belongs to at least one N(li),li∈ L , and the total length is minimized. Initially, we set L = {B}, where B is the base station. Then, a greedy solution is proposed to iteratively add a polling pointliin L with the minimum covering cost τ(i), until all sensors belongs to at least oneN(li),li∈ L . Here, we defineτ(i)= min{d(li,lj)|lj∈L }

|N(li)∩U| , whereU is the set of sensors

that are not in anyN(li),li∈ L andd(li, lj) is the distance between two polling pointsliandlj. Then, a TSP scheme can be applied for the data ferry to visit all points inL .

Reference [35] extends the above work by assuming that each sensor is equipped with one antenna and the data ferry is equipped with two antennas such that the dada ferry may communicate with two sensors simultaneously by a space division multiple access (SDMA) technology. It redefines the service coverage when the ferry stays at a location and then a similar path planning scheme in Reference [34] is adopted.

3.2.4. Distributed navigation.

Unlike the previous centralized approaches, some efforts focus on designing a fully distributed protocol to navigate a data ferry for data collection. Given a set of sensors without location information and a data ferry with an antenna system which can accurately compute the direction of arrival (DOA) for received signals, Reference [36] proposes a distributed navigation protocol to visit some representative sensors. These representative sensors are called navigation agents (NAs). Then, the data ferry is

intermediate navigator

navigation agent communication link moving path F N E Y M X Z L C G W H B A I

Figure 14. An example of distributed navigation by sensors.

navigated by the intermediate sensors between these NAs, called intermediate navigators (INs). Figure 14 shows an example. A 3-phase protocol is proposed:

(1) Identification of NAs and INs: The set of NAs should be a dominating set of this network. The heuristic in Reference [37] is adopted. First, a spanning tree rooted at any sensor is formed. Second, nodes mark themselves as NAs as follows:

• The root declares itself as a NA by broadcasting a Declare-NA message.

• When a sensor receives a Declare-NA, it will give up becoming a NA by broadcasting an Accept-NA message.

• When a sensor receives Accept-NA from all lower-depth neighbors, it will declare itself as a NA by broadcasting a Declare-NA message.

This process is repeated until each sensor is either a NA or a 1-hop neighbor of a NA. Then, for each pair of NAs, the nodes passed by the shortest path (in terms of hop count) between these two NAs are marked as INs.

(2) Path computation: A pathP is formed to visit each NA. The work proposes adopting the ant colony optimization-TSP solution [38].

(3) Navigation: Finally, the data ferry travels alongP with the assistance of INs based on a DOA model. When visiting a NA, both NA and those sensors dominated by NA will send their data to the ferry. Reference [39] extends the above protocol to the k-hop data collection scheme where sensors that are within k hops from a NA can send their data to the NA (and thus the ferry). To reduce the latency to deliver data to a NA, a sensor can pre-transmit its data to a sensor that is 1-hop away from a NA.

3.3. Summary of Path Planning

Table II summarizes the path-planning methods for data ferries. While most methods consider centralized

(12)

Table II. Comparison of path-planning methods for data ferries.

References Category Distributed Multi-hop Communication Energy Path

scheme collection time issue constraint

Single ferry [26] Data relaying √

Multiple ferries [27] Data relaying √

Touching points [28] Data relaying

Probability [29] Data relaying √

Recursive [30] Network longevity √ √ √

Routing tree [31] Network longevity √ √ √

Aggregation [32] Network longevity √ √ √

1-hop collection [34] Network longevity √

SDMA [35] Network longevity √ √

1-hop navigation [36] Network longevity √ √

k-hop navigation [39] Network longevity √ √ √

approaches, References [36,39] use sensors to navigate a data ferry in a distributed manner. References [30--32,39] consider that data sent from sensors to a data ferry can be multi-hop transmission; other work [26--29,34--36] consider that ferries should directly communicate with each sensor. For the issue of communication time, References [26,27] extend the communication time of sensors to meet their bandwidth requirements, Reference [29] minimizes the total waiting time of a ferry at each point along the path, and Reference [35] adopts an physical layer technology to help a ferry quickly collect data from sensors. For energy concern, Reference [30] balances the traffic loads among sensors, while References [31,32,34--36,39] reduce the total energy consumption of sensors. For the length concern, References [30--32] give constraints on path lengths, while References [26--29,34--36,39] try to minimize path lengths.

4. PLATFORMS AND

APPLICATIONS OF MOBILE WSNS

Below, we review some interesting platforms and applications. Mobile Emulab [40] is a robotic testbed developed for mobile WSNs. Mobile sensors are robots that carry single-board computers and sensing devices. Remote users can control these mobile sensors in a real-time and interactive way, or through a script. Figure 15 shows its system architecture. The video cameras will overlook the ROI and track mobile sensors. Snapshots are periodically reported to the vision system. Through image processing, the positions of mobile sensors are determined. The robot system can send motion commands to mobile sensors, which can report their sensing data to the robot system. On the other hand, the robot system can query the current positions of mobile sensors via the robot-backend system. Remote users can send motion requests to control mobile sensors, or send event requests to obtain the ROI’s status.

Visual surveillance systems typically collect a large amount of images from video cameras, which require a huge computation cost to analyze. Introducing the intelligence of mobile WSNs can help reduce such

overheads while supporting more advanced, context-rich services. The iMouse system [41] is proposed to integrate static sensors and mobile sensors, as Figure 16(a) shows. Static sensors continuously monitor the ROI and notify the server when detecting abnormal events. Once receiving such notifications, the server will dispatch mobile sensors to take snapshots at event locations. Thus, iMouse can avoid recording unnecessary images when nothing happens. Figure 16(b) shows the components of a mobile sensor, which consists of a LEGO car carrying a MICAz mote, a webcam, an 802.11 WLAN card, and a Stargate. Figure 16(c) shows an experimental grid-link deployment. Robomote [42] is a mobile platform with MICA2 motes and some infrared sensors to detect obstacles. Two case studies have been tested on this platform. Based on the sensor-based path-planning scheme [43], it uses one Robomote to move along a desired contour constructed by querying neighboring sensor readings. The second case is to implement a tracking algorithm proposed in Reference [44] to locate the light source by a Robomote.

The work in Reference [45] uses a WSN to implement the pursuer-evader game. There is a moving object (called evader) and a data ferry (called pursuer). The evader roams around arbitrarily and the pursuer tries to intercept the

Emulab interface motion requests event requests position data event reports position data vision system user video cameras motion requests

position data position queries event reports

mobile sensors

robot-backend system

snapshots

robot system

motion commands sensing data

(13)

static sensor (mote) mobile sensor

event

WLAN card mote

Stargate

light detector Lego car webcam

intersection road (1) collect data & report events (2) dispatch

(3) move to event locations & conduct advanced analysis

(4) move back & report detailed data mobile sensors

event location

user & server

static sensor

(b)

(a)

(c)

Figure 16. The iMouse system: (a) system architecture, (b) platform of a mobile sensor, and (c) a grid-based sensing field.

evader based on the data reported by static sensors. One challenge for static sensors is how to quickly tell the pursuer where the evader is. To address this issue, static sensors detecting the evader will elect a leader to report to the pursuer. Such reports are sent to the moving pursuer through a landmark routing [46], which operates over a tree-building mechanism. Finally, the pursuer will determine the interception path to chase the evader. The platform is developed based on MICA2 motes, an 802.11 WLAN card, and high-precision differential GPS devices.

The work in Reference [47] proposes an implementation of data ferries. Two critical issues are addressed: (1) how to reduce the speed of a data ferry when its MAC layer encounters interference and collision, and (2) how to construct the relaying path from each sensor to a data ferry’s moving path. To address the first issue, this work designs an adaptive speed control algorithm to determine whether a data ferry should slow down depending on its current data deliver rate. Specifically, a data ferry has three speeds: SLOW, STOP, and FAST. A sensor can indicate how much data that it wishes to transfer in a packet header. Then, the data ferry can select a speed accordingly. To address the second issue, a data ferry can broadcast an interest message to help sensors learn their distances to the data ferry’s moving path.

5. CONCLUSIONS

Static WSNs have limitations on supporting multiple missions and handling different situations when network conditions change. Introducing mobility to WSNs can improve the network capability and thus relieve the above limitations. This paper provides a comprehensive survey of current works on mobile WSNs. Various mobility management and path-planning schemes have

been discussed. Also, several mobile platforms and applications have introduced.

ACKNOWLEDGMENT

Y.-C. Tseng’s research is co-sponsored by MoE ATU Plan; NSC grants 96-2218-E-009-004, 97-3114-E-009-001, 97-2221-E-009-142-MY3, and 98-2219-E-009-005; MOEA 98-EC-17-A-02-S2-0048 and 98-EC-17-A-19-S2-0052; and ITRI, Taiwan.

REFERENCES

1. Akyildiz IF, Su W, Sankarasubramaniam Y, Cayirci E. A survey on sensor networks. IEEE Communications Magazine 2002; 40(8): 102–114.

2. Rapaka A, Madria S. Two energy efficient algorithms for tracking objects in a sensor network. Wireless Communications and Mobile Computing 2007; 7(6): 809–819.

3. Hu F, Xiao Y, Hao Q. Congestion-aware, loss-resilient bio-monitoring sensor networking for mobile health applications. IEEE Journal Selected Areas in Communications 2009; 27(4): 450–465.

4. Liu H, Wan P, Jia X. Maximal lifetime scheduling for sensor surveillance systems with k sensors to one target. IEEE Transactions on Parallel and Distributed Systems 2006; 17(12): 1526–1536.

5. Tubaishat M, Zhuang P, Qi Q, Shang Y. Wireless sensor networks in intelligent transportation systems. Wireless Communications and Mobile Computing 2009; 9(3): 287–302.

6. Dhillon SS, Chakrabarty K. Sensor placement for effective coverage and surveillance in distributed sensor networks. Proceedings of IEEE Wireless Communica-tions and Networking Conference, 2003; 1609–1614. 7. Cao G, Kesidis G, Porta TFL, Yao B, Phoha S. Purposeful

mobility in tactical sensor networks. Sensor Network Operations. Wiley-IEEE Press: USA, 2006; 113–126. 8. Tian D, Georganas ND. A coverage-preserving node

scheduling scheme for large wireless sensor networks. Proceedings of ACM International Workshop Wireless Sensor Networks and Applications, 2002; 32–41. 9. Wang YC, Hu CC, Tseng YC. Efficient deployment

algorithms for ensuring coverage and connectivity of wireless sensor networks. Proceedings of IEEE International Conference on Wireless Internet, 2005; 114–121.

10. Zou Y, Chakrabarty K. Sensor deployment and target localization in distributed sensor networks. ACM Transactions in Embedded Computing Systems 2004;

(14)

11. Heo N, Varshney PK. Energy-efficient deployment of intelligent mobile sensor networks. IEEE Transactions on Systems, Man, and Cybernetics–Part A 2005; 35(1): 78–92.

12. Aitsaadi N, Achir N, Boussetta K, Gavish B. A gradient approach for differentiated wireless sensor network deployment. Proceedings of IFIP Wireless Days Conference, 2008.

13. Wang G, Cao G, Porta TFL. Movement-assisted sensor deployment. IEEE Transactions on Mobile Computing 2006; 5(6): 640–652.

14. Aurenhammer F. Voronoi diagrams–a survey of a fundamental geometric data structure. ACM Computing Surveys 1991; 23(3): 345–405.

15. Wang YC, Hu CC, Tseng YC. Efficient placement and dispatch of sensors in a wireless sensor network. IEEE Transactions on Mobile Computing 2008; 7(2): 262–274. 16. Kuhn HW. The Hungarian method for the assignment problem. Naval Research Logistics Quarterly 1955; 2: 83–97.

17. Wang YC, Tseng YC. Distributed deployment schemes for mobile wireless sensor networks to ensure multilevel coverage. IEEE Transactions on Parallel and Distributed Systems 2008; 19(9): 1280–1294.

18. Zhou S, Wu MY, Shu W. Finding optimal placements for mobile sensors: wireless sensor network topology adjustment. Proceedings of IEEE Circuits and Systems Symposium on Emerging Technologies: Frontiers of Mobile and Wireless Communication, 2004; 529–532. 19. Basu P, Redi J. Movement control algorithms for

realization of fault-tolerant ad hoc robot networks. IEEE Network 2004; 18(4): 36–44.

20. Wang G, Cao G, Berman P, Porta TFL. Bidding protocols for deploying mobile sensors. IEEE Transactions on Mobile Computing 2007; 6(5): 515–528.

21. Butler Z, Rus D. Event-based motion control for mobile-sensor networks. IEEE Pervasive Computing 2003; 2(4): 34–42.

22. Wang G, Cao G, Porta TFL, Zhang W. Sensor relocation in mobile sensor networks. Proceedings of IEEE INFOCOM, 2005; 2302–2312.

23. Verma A, Sawant H, Tan J. Selection and navigation of mobile sensor nodes using a sensor network. Pervasive and Mobile Computing 2006; 2(1): 65–84.

24. Wang YC, Peng WC, Chang MH, Tseng YC. Exploring load-balance to dispatch mobile sensors in wireless sensor networks. Proceedings of IEEE International Conference on Computer Communications and Networks, 2007; 669–674.

25. Ballal P, Trivedi A, Lewis F. Deadlock avoidance policy in mobile wireless sensor networks with free choice resource routing. International Journal of Advanced Robotic Systems 2008; 5(3): 279–290.

26. Zhao W, Ammar MH. Message ferrying: proactive routing in highly-partitioned wireless ad hoc networks. Proceedings of IEEE Workshop Future Trends of Distributed Computing Systems, 2003; 308–314. 27. Zhao W, Ammar M, Zegura E. Controlling the mobility

of multiple data transport ferries in a delay-tolerant network. Proceedings of IEEE INFOCOM, 2005; 1407– 1418.

28. Yuan B, Orlowska M, Sadiq S. On the optimal robot routing problem in wireless sensor networks. IEEE Transactions on Knowledge and Data Engineering 2007;

19(9): 1252–1261.

29. Tariq MMB, Ammar M, Zegura E. Message ferry route design for sparse ad hoc networks with mobile nodes. Proceedings of ACM International Symposium on Mobile Ad hoc Networking and Computing, 2006; 37–48. 30. Ma M, Yang Y. SenCar: an energy-efficient data gathering

mechanism for large-scale multihop sensor networks. IEEE Transactions on Parallel and Distributed Systems 2007; 18(10): 1476–1488.

31. Xing G, Wang T, Xie Z, Jia W. Rendezvous planning in wireless sensor networks with mobile elements. IEEE Transactions on Mobile Computing 2008; 7(12): 1430– 1443.

32. Xing G, Wang T, Jia W, Li M. Rendezvous design algo-rithms for wireless sensor networks with a mobile base station. Proceedings of ACM International Symposium on Mobile Ad hoc Networking and Computing, 2008; 231– 240.

33. Vazirani V. Approximation Algorithms. Springer-Verlag: Berlin, 2001.

34. Ma M, Yang Y. Data gathering in wireless sensor networks with mobile collectors. Proceedings of IEEE International Parallel and Distributed Processing Symposium, 2008; 1–9.

35. Zhao M, Ma M, Yang Y. Mobile data gathering with space-division multiple access in wireless sensor networks. Proceedings of IEEE INFOCOM, 2008; 1283– 1291.

36. Rao J, Wu T, Biswas S. Network-assisted sink navigation protocols for data harvesting in sensor networks. Proceedings of IEEE Wireless Commnications and Networking Conference, 2008; 2887–2892.

37. Han B, Fu H, Lin L, Jia W. Efficient construction of connected dominating set in wireless ad hoc networks. Proceedings of IEEE International Conference on Mobile Ad hoc and Sensor Systems, 2004; 570–572.

38. Bonabeau E, Dorigo M, Theraulaz G. Swarm Intelli-gence. Oxford university press: USA, 1999.

39. Rao J, Biswas S. Joint routing and navigation protocols for data harvesting in sensor networks. Proceedings of IEEE International Conference on Mobile Ad hoc and Sensor Systems, 2008; 143–152.

數據

Figure 1. Examples of force-based deployment: (a) hybrid forces and (b) repulsive forces.
Figure 2. The VOR and minimax methods: (a) a Voroni diagram, (b) VOR method, and (c) minimax method.
Figure 4. The interpolating placement method: (a) r c ≤ √ 3 2 r s case and (b) √ 3 2 r s &lt; r c ≤ 2+ √ 33 r s case.
Figure 6. The grid-quorum and cascade movement methods: (a) grid-quorum, (b) direct movement, and (c) cascade movement.
+7

參考文獻

相關文件

Suppose that E is bounded, open interval and that each f k.. is differentiable

• Metropolis sampling can efficiently generate a set of samples from any non negative function f set of samples from any non-negative function f requiring only the ability to

Then g is defined on [a, b], satifies (11), and is continuous on [a, b] by the Sequential Characterization of Limits.. Thus, f

bility of the mobile system is the same as the call blocking For example, for a hexagonal planar layout with reuse dis- probability in a cell, Because traffic in

1、曾擔任以國家、重要城市為名,至少以二個版面以上刊登國際 新聞,且發行對象以全國或全球讀者為目標之平面媒體或通訊 社(例如:《美國新聞與世界報導》(U.S. News

Given a connected graph G together with a coloring f from the edge set of G to a set of colors, where adjacent edges may be colored the same, a u-v path P in G is said to be a

Data larger than memory but smaller than disk Design algorithms so that disk access is less frequent An example (Yu et al., 2010): a decomposition method to load a block at a time

For the data sets used in this thesis we find that F-score performs well when the number of features is large, and for small data the two methods using the gradient of the