Coverage and latency aware actor placement mechanisms in WSANs

14
1 Coverage and Latency Aware Actor Placement Mechanisms in Wireless Sensor and Actor Networks Kemal Akkaya* Department of Computer Science Southern Illinois University Carbondale, Carbondale, IL 62901, USA E-mail: [email protected] *Corresponding author Mohamed Younis Department of Computer Science and Electrical Engineering, University of Maryland Baltimore County, Baltimore, MD 21250, USA E-mail: [email protected] Abstract: In addition to the miniaturized sensor nodes, Wireless Sensor and Actor Networks (WSANs) employ significantly more capable actor nodes that can perform application specific actions to deal with events detected and reported by the sensors. In such networks responsiveness to serious events is of utmost importance and thus minimal latency should be experienced in both data gathering and action completion. In addition, since these actions are often taken at or close to where events are detected, which can be any spot within the monitored area, the actors should strive to provide maximal coverage of the area. In this paper, we propose two actor placement mechanisms for WSANs, namely COLA and COCOLA that consider both the delay requirements of data collection and the coverage of the area. COLA first evenly distributes the actors in the region for maximized coverage. Actors then collaboratively partition the sensors among themselves, forming clusters. An actor plays the role of the cluster-head for the assigned set of sensors; receiving and processing the sensed data. Each individual actor then repositions itself at a location that enables minimal latency in collecting the sensor reports in its cluster. COCOLA is an extension to COLA which additionally enforces connectivity among the actors by assigning appropriate locations to each actor for improved coverage and reduced latency. The effectiveness of both approaches is evaluated through extensive simulation experiments. Keywords: Area coverage, energy awareness, sensor networks, actors, data latency, network connectivity.

Transcript of Coverage and latency aware actor placement mechanisms in WSANs

1

Coverage and Latency Aware Actor Placement Mechanisms in Wireless Sensor and Actor Networks Kemal Akkaya* Department of Computer Science Southern Illinois University Carbondale, Carbondale, IL 62901, USA E-mail: [email protected] *Corresponding author

Mohamed Younis Department of Computer Science and Electrical Engineering, University of Maryland Baltimore County, Baltimore, MD 21250, USA E-mail: [email protected]

Abstract: In addition to the miniaturized sensor nodes, Wireless Sensor and Actor Networks (WSANs) employ significantly more capable actor nodes that can perform application specific actions to deal with events detected and reported by the sensors. In such networks responsiveness to serious events is of utmost importance and thus minimal latency should be experienced in both data gathering and action completion. In addition, since these actions are often taken at or close to where events are detected, which can be any spot within the monitored area, the actors should strive to provide maximal coverage of the area. In this paper, we propose two actor placement mechanisms for WSANs, namely COLA and COCOLA that consider both the delay requirements of data collection and the coverage of the area. COLA first evenly distributes the actors in the region for maximized coverage. Actors then collaboratively partition the sensors among themselves, forming clusters. An actor plays the role of the cluster-head for the assigned set of sensors; receiving and processing the sensed data. Each individual actor then repositions itself at a location that enables minimal latency in collecting the sensor reports in its cluster. COCOLA is an extension to COLA which additionally enforces connectivity among the actors by assigning appropriate locations to each actor for improved coverage and reduced latency. The effectiveness of both approaches is evaluated through extensive simulation experiments.

Keywords: Area coverage, energy awareness, sensor networks, actors, data latency, network connectivity.

2

1 INTRODUCTION

In recent years, wireless sensor and actor (actuator) networks (WSANs) have started to receive a growing attention due to their potential in many real-life applications [1]. Such networks include miniaturized low-cost sensing nodes that are responsible for measuring ambient conditions and reporting such measurements to some actor nodes over wireless communication links. Actors have the capability for processing the sensed data, making decisions and then performing the appropriate actions. Robotic Mule [2], an autonomous robot designed for the Army to detect mines in the battlefield and the NASA JPL miniaturized rover [3], are some examples of possible actor nodes. Typical applications of WSANs include urban search and rescue (USAR), battlefield and seashore surveillance, lunar and planetary exploration, detecting and countering pollution in coastal areas, monitoring and guarding the environment against unusually high-level of radiation and suspiciously active chemical/biological agents, etc.

ActorSensor

Figure 1 Undesired WSAN topology

In these applications, one of the most important issues is being able to provide services at every part of the deployment region. This is known as the coverage problem [4]. However, these services often require actors’ responsiveness in order to provide the desired effects. The solution to this problem requires a careful placement of actors in the area so that they get quickly notified and respond appropriately while meeting application-level constraints on the overall response time. For example in forest monitoring applications, actors such as fire trucks and flying aircrafts need to be engaged as rapidly as possible to control a fire and prevent it from spreading. Similarly for scientific studies or space applications actors should respond instantaneously to record rare phenomena, e.g. capture an image or record a weird behavior of a habitat.

Maximizing the actor coverage and minimizing data latency may be conflicting objectives and thus warrant a trade-off. In practice, the distribution of sensor nodes may not be uniform throughout the event area. Therefore, placing the actors for increased coverage may lead to an inefficient network topology and/or extend the data paths from sensors to actors. For example, if the sensors are densely populated close to the center of the deployment region, either close-by actors will be overloaded or data will be routed to far actors over long paths as seen in Figure 1.

Both of these scenarios are not acceptable. Actor overload may lead to data loss and an inability to process data robustly and promptly, which will negatively impact the application. On the other hand, routing data over long paths will increase the end-to-end delay, again limiting the actor responsiveness and

will unnecessarily boost the energy consumed by the resource-constrained sensors.

In this paper, we present COLA, a COverage and Latency aware Actor placement scheme for WSANs. COLA considers the actor coverage and data gathering latency, when determining the location of the actor nodes. Initially, we aim to nominate positions that maximize the actor coverage and then move the actor nodes to these positions. At their initial locations, the actors will start a discovery process to establish contact with nearby sensors and then will collaboratively partition the discovered sensors among themselves forming clusters. Note that for each cluster, an actor is designated as a cluster-head which gathers and processes the data from the sensors within that cluster. Each individual actor will then compute the best position that will provide minimum end-to-end packet delay for all the sensors within its cluster. This location is computed by modeling the problem as an absolute 1-center vertex problem which has been used as an optimization technique for many real-life applications [5]. Finally each actor will relocate to the computed position.

While COLA can improve the coverage in addition to reducing the end-to-end delay, it may make some of the actors inaccessible to others due to their newly designated positions. However, a connected network of actors is required in many real-life applications for which actors may need to collaboratively make decisions on the best response. For instance, in a forest monitoring application, some actor nodes may request from other actors to come to a certain location in order to help in extinguishing a fire. In such a network each actor should be able to reach any of the other actors. Therefore, inter-actor connectivity should be maintained when determining the new location of the actors.

To deal with inter-actor connectivity goals we present COCOLA (COnnected COLA). COCOLA utilizes COLA as the base approach for determining actors' location. However, COCOLA restricts the

3

actor’s movement to the designated location by considering the transmission range of the neighboring actor nodes. In other words, each actor in the network tries to move as close as it can to its 1-center vertex position in order to improve the delay performance while maintaining communication links to neighboring actors. We present a simple distributed heuristic to perform such relocations in the network.

Actor /cluster-head

Active sensor

Inter-actor communication Communication with the command node

Command Node

This paper is organized as follows. Next section describes the system model that we consider throughout the paper. In section 3, we compare our approach to previous research. Section 4 introduces COLA for actor placement. In section 5, COCOLA is introduced to further ensure inter-actor connectivity. The performance of COLA and COCOLA are evaluated in section 6. Section 7 concludes the paper with a summary and a highlight of our planned future work.

2 SYSTEM MODEL Figure 2 Multi-cluster sensor-actor

network A set of sensors and actor nodes are spread throughout an area of interest to detect and track events and take necessary actions in this area. The sensors are battery-operated with diverse capabilities and types and are empowered with limited data processing engines. While sensors are deployed in abundance, the number of actor nodes is limited since robot-like nodes are usually used and they tend to be very expensive. The actors are both less-energy constrained and have larger transmission range than the sensors. We considered two models for the transmission range of the actors. The first model assumes significantly large enough transmission range for actors to communicate. In the second model the transmission range is restricted. The action range of an actor, which is defined as the maximum distance it can cover, is limited and assumed to be equal for all actors.

We use all the actors as data collector points (sinks) as seen in Figure 2 and each actor will be responsible for a cluster where it can gather data from the sensors and act (e.g. destroy targets) based on the gathered data. We also assume that the actors can move on demand in order to act on larger areas or to enhance the network operation.

3 RELATED WORK

The coverage problem has been studied in the literature in the context of multi-robot systems. The network in these systems consists of robots which have sensing, vision and motion capabilities. The issue is how to locate the robots so that every point in the

region will be under the shadow of a particular robot [6]. If the region is very large and the number of robots is limited, dynamic coverage and exploration can be considered [7]. In this case, the robots will continuously move and patrol the region for complete coverage. However, since the area of WSANs is fairly new, there is not much work on coverage problems in WSANs.

Quite recently, the characteristics and research challenges of WSANs have started to draw attention [1]. One of the few projects that address specific problems for WSANs is reported in [8]. The authors mainly tackle the problem of picking appropriate actors for responding to an event in a particular region. Again the network is clustered around actors. However, it was assumed that multiple actors are available to serve the individual clusters; one of which stay stationary to collect data while the other designated actors stand by to get engaged when need arises. The paper focused on the problem of actor assignment to overlapping areas with the least amount of energy and packet delay. An integer programming formulation was proposed to solve this problem.

Our work is similar to that work in the sense that we aim to provide best network performance in terms of packet delay. However, we mainly focus on another metric which is the coverage of the region; basically trying to achieve maximum actor coverage. We argue that employing large number of actor nodes will not be practical for most of applications since sophisticated and often expensive robots are being used as actor nodes. In other words, we consider a different problem in which maximum coverage with a given number of

4

actors is an objective. We also assume that actors can move around in order to extend the coverage as needed. However, since the movement imposes overhead, especially for robots, in terms of energy and delay, we strive to avoid it unless the coverage in a cluster is insufficient. Furthermore, unlike [8] we consider inter-actor connectivity in addition to coverage and latency metrics. To the best of our knowledge, this connectivity problem has not been studied in the literature with the aim of maximizing coverage and minimizing latency.

4 COLA: COVERAGE AND LATENCY AWARE ACTOR PLACEMENT

One of the fundamental design issues in WSANs is where to place the actors. The location of an actor may affect the fulfillment of the system’s requirements and impact multiple network performance metrics. For example, it is desirable in many setups to have good actor coverage in the area of interest. Therefore, it may be required to have the actors uniformly distributed in the area as much as possible. Moreover, in many applications it is important to achieve high level of responsiveness to emerging events whether by executing specific tasks, performing sophisticated experiments to collect more accurate data or even moving closer to where the event is happening. Thus, in addition to actor’s coverage, we focus our attention on the number of hops a data packet travel till reaching an actor node. In the next subsection we give a more precise description of the problem.

4.1 Problem Definition Our problem can be defined as follows: “Given an area of interest with known boundaries and a set of sensors and actors initially deployed randomly in this area, what is the best layout for the actor nodes which will provide maximum coverage of the area and minimize the data collection latency and action completion time while also considering the energy constraints of sensors”. Since energy savings can usually be done through pursuing multi-hop routes, the problem can be named as “Max-coverage Min-delay Actor Placement” where data collection latency is to be minimized.

There are two variants of the actor placement problem depending on the transmission range of the onboard radio. When actors are able to communicate over a long haul link, the placement problem becomes less constrained. In this case, the concern will be on the delay of packet delivery from a sensor to any actor. However, if the actor’s reachable range is not long enough to guarantee connectivity with all other actors, the inter-actor topology has to be included in the

formulation of the actor placement optimization problem. In this section, we only consider the former case. The later case will be discussed in section 5.

Given the infinite solution space and the uncertainty about the quality of wireless links, finding optimal locations for the actor nodes is a very complex problem which has been proven to be NP-hard through reduction to the P-center problem [9]. For example, even if we assume that an optimal position for an actor node could be identified; there is no guarantee that the actor will be in fact reachable to the nearby sensor nodes. Therefore, we pursue heuristics. The basic idea of COLA is to consider both the topology of the sensor network and the boundaries of the deployment region. To address the requirement of maximum actor’s coverage, we strive to assign position to actors that minimize the overlap among their acting range. COLA is divided into two phases; network bootstrapping and actor relocation.

4.2 Network Bootstrapping The network bootstrapping phase includes the initial placement of actors and grouping sensors into clusters.

Initial Actor Placement: The coverage problem is defined as the maximization of the total area covered by actors. This can be achieved either statically or dynamically [4]. Static coverage is the problem of deploying actors in a static configuration, such that every point in the area is under the actors’ shadow (i.e. covered) at every instant of time. Clearly, for complete static coverage of an area the number of actors should be large enough. Dynamic coverage, on the other hand, is addressed by algorithms which explore and hence cover the area with constant motion and stick to neither a specific configuration, nor a particular pattern of traversal [4]. In this paper, we consider an on demand and partially dynamic coverage where actors only move whenever deemed necessary based on the received sensor data. That is, the actor will move when its action range does not cover the whole area it is responsible for and there is a need to act out of its action range. Note that this is different from the transmission range which depends on the radio.

In COLA, initial placement of actor nodes is done by dividing the region into equal sized cells whose number matches the number of actors and then repositioning the actors at the center of these cells. Figure 3 illustrates the idea, where the circles represent the action range of the actors. Such placement will provide the maximal possible coverage by preventing overlaps among the various action ranges. In order to calculate these actor locations, a distributed algorithm is used. Let n be the number of actors, Ai denote the actor with ID i and posi denote its location. The steps of the algorithm are as follows:

5

1. /* Each actor broadcasts its ID and location */ ∀i Ai do Broadcast (i, posi)

2. /* By using the number of actors, the location of each actor and the coordinates of the corners of the event region, each actor node employs a recursive algorithm which determines the cells as follows: */

Divide (Region, n) { if ( n ==1) then /* Insert the vertices of the cell and its center point into a binary tree */

InsertTree(CellTree,Region Center(Region)); else /* Recursively divide the region into cells */

Compute(Region, Cell1, Cell2); Divide (Cell1, ); ⎡ ⎤2/n Divide (Cell2, ); ⎣ ⎦2/n

}

3. /* Finally, each actor node computes the closest cell to move to by comparing their initial locations to the centers positions stored in the binary tree. Given that the movement is both energy and time consuming, this approach will reduce the total travel distance of all actor nodes and the total travel time. */ ∀i Ai do {

/*Search CellTree for the closest unvisited cell to actor i */

min FindClosest(i, posi, CellTree); /* Store the location for the closest cell in to a list along with the actor ID */

NewLoc (i) = min; /* Mark the cell as visited. */ MarkVisited (min); }

4. /* Upon retrieving the closest location from the list, the actor node starts moving to that location.*/ Move (i, NewLoc (i))

Next, we prove that this algorithm is conflict-free and thus each actor concludes the same result.

Theorem: COLA is conflict-free.

Proof: Since all actors will have the same information and follow the same order of assigning new locations to actors based on the actor ID, each actor will produce the same assignment list. Thus, no location can be assigned more than one actor at the same time.

Forming Clusters: After positioning the actor nodes, the next step is to group sensors into distinct clusters; each is headed by an actor node. An actor will be responsible for collecting the data of the sensors in its cluster. There are numerous published techniques, e.g. [10] that can be applied for assigning sensors to clusters. In its simplest form, each actor broadcasts a message with its ID and location. A sensor node when receiving this message, estimates its proximity to that actor node. The sensor waits to hear from other actors and then picks the closest actor. Finally the sensor replies back to the selected actor to join its cluster.

3 actors 4 actors

Figure 3 Illustration of initial placement of actors

4.3 Actor Relocation for Minimum Latency While the actors are now positioned for maximum coverage, this does not mean that it is the best layout for minimizing the data collection delay. The location of the actor should be selected in order to minimize the maximum delay a packet will experience from any sensor source to the corresponding actor (cluster head). That is actually to minimize the number of hops on the longest path from a sensor to the actor of the cluster. Therefore, COLA relocates the actor nodes from the center of the cells to new locations where significant reduction in path delay can be achieved. This relocation also helps in getting the actor closer to data sources and hence may reduce the number of sensor’s transmissions which extends the sensors’ lifetime as well.

While this relocation may negatively affect the performance in terms of coverage, we argue that this new location would not be very far away from the initial location since the relocation is restricted within the boundary of the individual clusters as we describe next. Picking the new location: Given that one of the factors that affect actors’ responsiveness is the amount of time they wait to receive the data from sensors, it is very crucial that this time is minimized in order to speedup the decision making process for actors. This can be achieved by determining a location for the actor node which ensures that even the farthest sensor node can transmit its data to the actor within an acceptable time. Finding the optimal position that fulfills these goals is a classical 1-center problem; which is known

6

to be NP-hard. Therefore, COLA pursues a vertex 1-center formulation which has a polynomial time solution [5]. The vertex 1-center problem has many applications such as urban planning. When placing service centers like hospitals in a city, it is desired that an ambulance can be dispatched responsively to patients or accident scenes no matter where they are located. In our context, such formulation means that the new position for an actor node is to be searched among the locations of sensor nodes which serve as vertices. Solving the vertex 1-center model will result in a new location for an actor node which guarantees that the maximum possible delay in terms of hop counts from sensor sources to the actor node is minimized.

The pseudo code for computing the vertex 1-center of a cluster is shown below in Figure 4. The main idea is first to create the minimum distance matrix of all the sensor nodes within the cluster (line 1). d[i, j] basically denotes the number of hops for the minimum possible path from sensor i to j. Then for each node, we pick the longest path from that node to any of the other nodes, among the values which are listed in the corresponding row of the matrix (line 2-3). These values are stored into a list (denoted as MaxList) and among them the smallest value is picked in line 4-5. The vertex 1-center will be the location of the node which has this smallest value in its row (line 6). The actor node is hence relocated to that location as shown in line 7.

In this algorithm, once the minimum distance matrix M is computed, the complexity of the remaining part is in the order of number of sensors. M can be computed in polynomial time using the Floyd-Warshall’s all pair shortest-path algorithm [17]. It should be noted that every individual actor will use the above algorithm and identify the best location to serve its cluster independent of the other actors. Since the vertex 1-center is in fact the position of one of the sensor nodes

in the cluster, the actor remains within the boundary of the cluster and the overlap among the actors’ coverage stay at minimal. We validate this property through simulation in section 6.

5 COCOLA: CONNECTED COLA

The actor nodes in WSANs are not only responsible for gathering data from the sensors, but also responding with some actions when deemed necessary. The decision for performing these actions is often made collaboratively among the actor nodes. Since each actor has a portion of the sensed information, they can communicate to decide how to act, which actor to call for help or which actor to designate for leading the effort if multiple of them cover the event area [1]. An example of this scenario is in oceanic studies and coaster monitor applications where a number of mobile Unmanned Surface Vehicles (USVs) are deployed to detect and clean oil spills from ships, measure tide, study fish migration, etc. In such setup these USVs would continually coordinate among themselves to avoid collisions and exchange their collected data in order to decide on travel direction and worthy investigation spots [18]. This requires some message exchanges among the actors which necessitates a connected network. Thus, each of the actors should be accessible, either directly or indirectly by other actors within the network, for efficient and on-time data exchange and decision making.

1 The actor node computes the minimum distance matrix for the cluster:

M = d[i, j] for all i, j ∈ Sensors in the cluster 2 for each row k of M do

/* Find the longest path for this node to all others */

3 Find Max(row(k)); 4 MaxList Max(row(k)); /* Pick shortest entry in the set of longest paths*/ 5 MinCost Min(MaxList); 6 VertexCenter Position(First node on

Path(MinCost)); 7 Relocate the actor to VertexCenter

In the previous section, we assumed that in COLA any two actor nodes can communicate with each other if needed. If actors have limited communication range, the problem becomes more challenging. In that case, in addition to the coverage and latency metrics, inter-actor connectivity should be also considered as a constraint. In other words, while selecting their positions actors should avoid making themselves isolated or causing the inter-actor network to be partitioned. In this section, we define this new problem and present our solution.

5.1 Problem Definition Figure 4 Pseudo code for vertex 1-center algorithmThe new actor positioning problem can be considered as an extension to COLA. In this case, the algorithm described in section 4.2 is assumed to create a connected network of actors. Based on this, the new problem can be defined as follows: “Given a set of actors and sensors placed in an area of interest with known boundaries such that the actors form a connected network among them, determine the best layout for the actors which will provide the least end-to-end delay for sensors’ data without violating the connectivity of the actor network.”

7

Optimal placement of multiple actors can be formulated as a p-center problem, with p denoting the number of actors. However, this problem has been proven to be NP-complete [16], Therefore, we extend the COLA bootstrapping heuristics presented in section 4.2. Initially, the actors can determine their new locations which will maximize the coverage of the monitored region. Given that the transmission range of the actor nodes is known a priori, we argue that the uniform layout as an outcome of this algorithm can form a connected graph if a sufficient number of actors is deployed. Thus, there are two tasks before data gathering operation starts: First, each actor will determine the best location in terms of latency for itself by computing the vertex 1-center location in its cluster. Second, it will consider moving to that location without losing connectivity with its neighboring actors.

Given the collaborative nature of actor’s operation and the lack of centralized management infrastructure in WSANs, distributed actor repositioning approaches are more suited. In such case, if multiple actor relocation is simultaneously performed, a violation of the inter-actor connectivity can be triggered. For example, two actors Ai and Aj that are in range of each other may decide on positions that require them to move away from each other. Ai would see its move acceptable since it would assume that Aj’s position has not changed. Meanwhile Aj would assume that same about Ai. Therefore, the individual actors need to coordinate (synchronize) among themselves before moving to the location of their choice in order to ensure that the inter-actor network is not partitioned. In the next subsection, we present COCOLA and describe how it addresses the inter-actor synchronization.

5.2 Distributed Relocation Approach Since simultaneous relocations of actors may lead to violating the inter-actor network connectivity constraints, COCOLA strives to maintain a global order of the relocation of the individual actors. COCOLA still allows some actors to move at the same time if no conflicting (no exactly same) views of the state of the inter-actor network are used. The idea is to localize the decision making process for determining which actor to move first. In the context of COCOLA an actor would only coordinate with its immediate neighbors, which are directly reachable to it. This takes the form of a competition among the neighboring actors before the relocation is performed. Each actor node winning this competition can relocate to its new position, i.e. the vertex 1-center of its cluster, while ensuring that its neighbors do not move since they lost the competition.

For the competition, actors can use the node ID again. In other words, the node with the highest ID among its neighbors will go ahead and relocate and then the second highest ID and so on. Alternatively, the arbitration can be based on a priority, derived independently by each actor. The priority function can be based on application and network level metrics. For example, high priority can be given to actors in largely populated clusters or to those that would travel the shortest distance from their current positions (since most probably they would not cause any link to break). Unlike the use of actor IDs, care need to be taken to ensure the assignment of unique priority values among actors in order to avoid ties among competing actors. In the balance of this section, we use Φ to refer to the base of the competition whether it is actor ID or priority.

Our distributed relocation heuristic works as follows: Each actor upon computing Φ, broadcasts it to its neighbors. Thus, each actor compares its Φ value to those of its neighbors. If an actor has the largest Φ, it assumes that it has the right to relocate and the others would stay stationary. Once the actor reaches its new position, it informs its neighbors so that each of them decides on whether it will relocate next or wait. One attractive feature of COCOLA is that it allows simultaneous actor relocation which speeds up the process. For example, if an actor Ai is not a neighbor to Aj and both of them have the highest Φ among their neighbors, then both Ai and Aj can concurrently relocate. We later prove that COCOLA converges allowing all actors to reposition, and prevents conflicting actor’s moves that cause an inter-actor link to break.

An example is depicted in Figure 5 to illustrate how COCOLA works in a 9-node actor network. The number at each node denotes the Φ value of the actor. In the first iteration, nodes 7 and 9 win the competition since they have highest priority among their respective neighbors and thus would relocate. It should be noted that nodes 1, 2, 3, 4, 6 and 8 have to remain stationary. While node 5 is not affecting 7 and 9, it did not win over 6 and thus will stay still till actor 6 completes its repositioning at a later stage. In the second round, both actors 6 and 8 move. Nodes 5, 4 and 3 follow in the third iteration while keeping node 1 and 2 stationary. Finally nodes 1 and 2 would go ahead and move. It is worth noting that the maximum node degree is 4 for this network which matches the number of rounds. We later will come back to analyze the algorithm performance. We also like to note that the order of relocation does not match the global priority order. COCOLA strives to expedite the relocation process and limit the overhead and inter-actor dependency. If a

8

global order is required, COCOLA would take N iterations to complete.

Upon winning the competition, an actor node Ai will move towards its vertex 1-center while preserving its connection to its neighbors. The neighbors of Ai will stay still while Ai is moving and will thus simplify the relocation process. Since it is a constrained move, the goal in this case is to get as close as possible to the vertex 1-center of the cluster without breaking any links to neighbors. Computational geometry can be employed to find the furthest point that Ai can reach (closest point to the 1-center vertex). The idea is determine the function of the line passing through the current and new location of Ai. The sought point will be somewhere on this line and its distance to both neighbors should be less than the given actor radio transmission range. A simple scenario involving 2 neighbors is depicted in Figure 6. In Figure 6, A2 is connected to A1 and A3. It computes the vertex 1-center location in its cluster as depicted in Figure 6a. However, moving to that location will make A2 out of range of A3. Thus, a new location which will maintain connectivity should be computed as seen in Figure 6b. This new location for A2 is computed based on the following notation and equations:

Location of A2: (a2, b2) Location of 1-center of A2 : (a2’, b2’) Location of A1: (a1, b1) Location of A3 : (a3, b3) New location of A2: (a2new, b2new) Actor communication range: r

The equation of the line passing through (a2, b2) and (a2’, b2’) can be determined by using y = mx + n (1)

The slope 22

22

''

aabbm−−

= (2)

7

8

9

4

3

65

2

1

Figure 5: The numbers denote the Φ values of each actor. The order of relocation is (7||9, 6||8, 3||4||5, 1||2)

and n can be computed by applying one of the points to the equation y = mx + n.

From (1), 22

22

mabnnmab

−=⇒+=

(3)

Applying (a2new, b2new) to (1) we get

nma new += 22newb (4)

A1 A2 A3

1-center

(a)

Figure 6 a) 1-center of A2. A2 will be out of range of A3 if relocated to its 1-center. b) A2 is relocated close to 1-center so that it will keep connectivity with A1

and A3.

A1 A2 A3

A2’

1-center

(b)

9

The distance between (a2new, b2new) and (a1, b1) should be less than the Actor range.

2212

212 )()( rbbaa newnew <=−+− (5)

The distance between (a2new, b2new) and (a3, b3) should also be less than the Actor range.

2232

232 )()( rbbaa newnew <=−+− (6)

(a, b) can easily be computed by using the equations (4), (5) and (6). A pictorial illustration is provided in Figure 7.

Note that the same approach can easily be

extended for a larger number of neighbors. Once A2 complete this procedure, it informs A1 and A3 about its new location and that it has reached there.

5.3 Pseudo Code and Algorithm Analysis The pseudo code for the COCOLA algorithm is shown in Figure 8. The algorithm is to be executed independently by the individual actors. Each actor computes Φ, unless the actor ID is used, broadcasts it in lines 1-2 and waits to hear from its neighbors (line 3). Then, each actor checks to see if it is eligible to move by comparing its Φ value to that of its neighbors in line 4. If an actor Ai is eligible to move, it computes the vertex 1-center position in its cluster in line 5. The determination of new position and moving to that

position is done in lines 6-7. Otherwise, Ai awaits the higher-priority actors among its neighbors to complete their relocation processes before it starts moving (lines 9-11). After the locations of the actors are determined, the next steps determining the routes within the cluster is performed as mentioned in section 4.4.

COCOLA introduces very little message overhead. All message exchange takes place among neighbors. Every actor will broadcast only 2 messages; the first to announce its Φ value and the second to inform its neighbors that it has reached its new position. Therefore, the message overhead is linear in the number of actors N. In addition, each node would only wait for its neighbors regardless its order in the overall priority list. Assuming a maximum node degree of d in the inter-actor network, each actor will wait for at most d other actors, which will speed up the relocation process (In the worst case, d becomes N if the inter-actor network is a compete graph).

(a2’, b2’)

We next prove correctness and convergence properties for COCOLA.

Theorem 1: In COCOLA the relocation of the individual actors are not conflicting. Proof: According to COCOLA, moving Ai implies that all neighbors of Ai have less priority than Ai and thus will stay stationary till Ai reaches its new position. An actor Aj, where i ≠ j, will be able only to relocate concurrently with Ai, iff Aj is not a neighbor of Ai and thus will not affect the links between Ai and its neighbors.

Theorem 2: COCOLA is guaranteed to terminate in a maximum of N iterations, where N is the number of actors. Proof: After an actor A determines its order among the neighbors, depending on the order, A either relocates first or waits for the neighbors that have higher priorities. If A has the least Φ and is connected to all other actors, it will be able to move after all the (N-1) actors complete their relocation.

6 EXPERIMENTAL EVALUATION

The effectiveness of COLA and COCOLA is validated through simulation. This section describes the simulation environment, performance metrics, and experimental results.

6.1 Network Operation and Experiment Setup We assessed the performance of the presented approaches in a simulated target tracking application environment. Sensors detect targets and relay information about the location of the targets to the actor nodes which can take certain actions on the

1 Each actor Ai computes Φi (Φi = IDi, if ID is not used). 2 Broadcast (i, Φi ) to the neighbors 3 Wait until receiving Φ from all Neighbors(Ai) 4 if (Φi is max among Neighbors(Ai)) then 5 1centeri = Compute_1center(i); //No other actor can be relocated 6 ComputeNewLoc(newloci, Ai, 1centeri, Neighbor(Ai)); 7 Relocate; // Ai Move to new location 8 else 9 wait until (∀j Aj ∈ Neighbors(Ai) and Φj > Φi) 10 Message from Aj is received 11 Relocate; // Ai Move to new location

Figure 8 Pseudo code for the connectivity based multi-

actor relocation algorithm.

y = mx + n (a2new, b2new)

r r

(a1, b1) (a3, b3) (a2, b2)

Figure 7 Computation of the closest location to 1-center.

10

detected targets (e.g. shoot at them). We have adapted the node parameters and network operational model of [11]. The sensing circuitry of the sensor nodes is usually off and gets turned on when a target becomes in range. For a sensor node in the sensing state, packets are generated at a constant rate of 1 packet/sec. This value is consistent with the specifications of the Acoustic Ballistic Module from SenTech Inc. [13]. Each data packet is time-stamped when it is generated to allow the calculation of average delay per packet. In addition, each packet has an energy field that is updated during the packet transmission to calculate the average energy per packet.

In the experiments, the network consists of varying number of sensor nodes randomly placed in an area of size 1000m by 600m. Each sensor node is assumed to have an initial energy of 5 joules. A node is considered non-functional if its energy level reaches zero. The maximum transmission range for a sensor node is assumed to be 100 meters [15]. A free space propagation channel model is assumed [14] with the capacity set to 2Mbps. The number of actors is an input to the simulator and does not change during a run. The initial positions for the actors are determined randomly. We assume that the actor nodes can communicate with each other anytime, i.e. actors form a connected graph in COLA. However, this assumption is dropped when validating for COCOLA. We assume a transmission range of 300m for the actors unless stated otherwise. In addition, we assume an action range of 100m for each actor which is the circular area where it can perform certain actions (e.g. its shooting range). Targets are characterized by having a constant speed chosen uniformly from the range 2 m/s to 4 m/s and a constant direction chosen uniformly depending on the initial target position in order for the target to cross the convex hull region. Any target remains active until it leaves the deployment region area.

6.2 Performance Metrics and Results In this section we present some performance results obtained through simulations. We use the following metrics to capture the performance: • Average energy per packet: This metric represents

the average energy consumed in transmitting, and receiving a data packet to an actor node. It is an indication of the energy consumption at the sensor nodes which impact network longevity.

• Average delay per packet: Defined as the average time a packet takes from a sensor node to the actor node. Recall that minimal latency is an objective for both COLA and COCOLA.

• Actor Coverage: Defined as percentage of the total area under the coverage of the individual actors relative to the area of the deployment region. Basically, this is indicative to the degree of overlap among the action ranges of actors which may be caused by caring for the length of communication paths from sensors to actors.

The routing protocol described in [11] has been

used in each cluster. We varied the number of actors and observed the average delay and average energy per sensor packet to reach to an actor. We would like to note that the main concern was to improve the end-to-end delay for the packets in order to help reduce the decision times of actors. We also note that we are not reporting the energy cost of deciding on the new locations and moving the actors to those locations since actors are assumed to have significantly more onboard energy when compared to sensor nodes and such a relocation process is performed only once. In the experiments, we applied 5 distinct seeds in order to generate random network topologies. Separate simulation runs were performed for each topology. We observed that with 90% confidence level, the simulation results stay within 6%-10% of the sample mean.

6.2.1 Performance Evaluation of COLA In the experiments, we compared COLA with two other approaches which we named as Uniform and Random in the graphs reflecting the distribution of actors in the monitored area. In each experiment 600 sensors are used with varying number of actors. Delay and Energy Performance: The simulations results depicted in Figures 9a and 9b demonstrate that COLA provides significant positive impact on packet latency when compared to that achieved by random and uniform deployment of actors. This is more evident when the actor density is low (small number of actors). This is because, when the actors need to serve a very large area, the number of hops to reach to the actor from a sensor increases, leading to more delay. If the locations of actors are carefully selected through COLA, the delay can significantly be reduced. Similar observations can be made for the average energy per packet, since it also depends on the number of hops, where sensors consumes the least amount of energy with COLA when compared to random and uniform actor placement.

Furthermore, in order to evaluate the effect of sensor to actor ratio on the delay performance, we conducted some experiments whose results are shown in Figure 10. While we can make the similar conclusions as we did for Figure 9, additionally we

11

observe that with the increased ratio (increased number of sensors), the average delay per packet also increases. This is due to the fact that with the increased number of available sensors in the cluster, the routing protocol can find paths with more number of hops in order to save energy. However, increased number of hops will also increase the end-to-end packet delay from a sensor to an actor node.

Coverage Performance: We also compared the actor coverage under the different placement strategies. Obviously uniform distribution of actors can achieve the most coverage. The essence of this set of experiments is to capture the potential actor range overlap that random placement can result in and how close COLA gets to the coverage achieved by uniform distribution of actors. We report on a sample configuration with 15 actors and 600 sensors deployed in an area of 1000m by 600m. Figure 11 demonstrates the coverage for each approach both visually and computationally relative to the deployment area. Note that the gray areas indicate the covered areas by the actors. The results in Figures 11a to 11d show that COLA achieves significant improvements (about 30%) compared to random placement with a coverage that almost matches that of uniform distribution of actors. We like to note that COLA sustained such good coverage in all experiments.

0.6

0.8

1

1.2

1.4

1.6

1.8

2

4 6 8 10# of Actors

Ave

rage

Del

ay (s

ec)

RandomUniformCOLA

(a)

0

0.002

0.004

0.0060.008

0.01

0.012

0.014

0.016

4 6 8 10# of Actors

Ave

rage

Ene

rgy

(joul

e)

RandomUniformCOLA

(b) Figure 9 a) Comparison of the average delay per packet

with varying number of actors. b) Average energy per packet with varying number of actors.

6.2.2 Performance Evaluation of COCOLA The coverage and latency performance of COCOLA is compared to both COLA and uniform actor placement where actors are connected. While we varied the number of actors, the number of sensors is fixed to 600 and the transmission range of an actor is assumed to be 300m in these set of experiments. Note that COLA does not provide any network connectivity here but it is included as a baseline in order to see how COCOLA performs in comparison to it. Delay and Energy Performance: When comparing the average delay per packet, we have observed that COCOLA could reduce the average end-to-end delay by 20% in comparison to uniform placement of actors (Figure 12). Again this is due to the fact that the average number of hops to reach an actor is decreased through relocation. The delay improvement is more obvious when the sizes of the clusters are large (fewer actors). However, with the increasing number of actors, the cluster size gets smaller and hence delay improvement is comparatively reduced. Despite the constrained actor relocation, COCOLA could sustain most of the gain in packet delay achievable by COLA.

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

Random Uniform COLA

Ave

rage

Del

ay (s

ec)

Ratio = 150 Ratio = 100Ratio = 66.6 Ratio = 50

Figure 10 Average delay comparison for varying sensor/actor ratio.

On the other hand the average energy per packet was very close for both COCOLA and uniform placement, as seen in Figure 12. While there was some improvement on average energy in the case of COLA, this time due to restricted movement COCOLA provides very little energy savings which is more evident in large clusters. However, given the fact that our focus is to improve the latency, it is important to observe that COCOLA achieves such improvement without any negative impact on the energy consumption of sensor nodes.

12

0.5

0.7

0.9

1.1

1.3

1.5

1.7

1.9

4 6 8 10# of Actors

Avg

. Del

ay (s

ec)

UniformCOCOLACOLA

0.004

0.0055

0.007

0.0085

0.01

0.0115

0.013

4 6 8 10# of Actors

Avg

. Ene

rgy

(joul

e)UniformCOCOLACOLA

Figure 12 Average delay and energy comparison of uniform actor placement and COCOLA.

Coverage Performance: We assessed the coverage performance of COCOLA by trying different radio transmission ranges for the actors. We tried transmission ranges of 150, 300 and 400m for a network with 15 actors. The results are depicted both visually and computationally in Figure 13. The results have shown that COCOLA can provide very close coverage to uniform placement, especially with small transmission range such as 150m. For 300m of transmission range, COCOLA performs close to COLA when comparing Figures 13a and 13b to Figures 11a and 11d respectively. The uniform placement outperformed COCOLA by only 7% in this case. We also note that COCOLA behaves almost like COLA for 400m of transmission range. This is due to the fact that with the increasing transmission range, there will be very less connectivity restriction among the actors and each of them will be able to be relocated to its vertex 1-center location. This will definitely increase the chance of more overlapping among the action ranges of actors. Thus, COCOLA-400m provides less coverage with respect to uniform placement and COCOLA-150m as observed in Figure 13b.

(d)

(b)

(a)

(c)

0%

10%

20%

30%

40%

50%

60%

70%

80%

Random Uniform COLA

Cov

erag

e

Coverage w ith15 actors

Figure 11 a) COLA b) Random Actor Placement c) Uniform Actor Placement d) Comparison of the area coverage of three

approaches.

13

connectivity constraints. This is achieved by moving an actor close to the vertex 1-center of its cluster as much as possible without violating the actor’s connectivity to its neighbors.

We evaluated both COLA and COCOLA in a simulated target tracking environment and compared their performance to both random and uniform actor placements. The simulation results indicated that COLA achieved about 30% increase in coverage and up to 40% delay reduction in comparison to the random actor deployment. In addition, COLA improved the lifetime of the network by reducing the average energy per packet. These improvements are achieved while almost matching the coverage achieved by uniform actor distribution. We also observed that COCOLA provided almost 20% of delay reduction without negatively affecting the energy consumption. COCOLA still performed very close to uniform placement in terms of coverage.

REFERENCES

[1] I. F. Akyildiz and I. H. Kasimoglu, “Wireless Sensor and actor networks: Research Challenges,” Elsevier Ad hoc Network Journal, Vol. 2, pp. 351-367, 2004.

[2] H.R. Everett and D.W. Gage, “A third generation security robot,” SPIE Mobile Robot and Automated Vehicle Control Systems, vol. 2903, Boston, MA November, 1996.

[3] http://robotics.jpl.nasa.gov/tasks/nrover/ [4] Maxim Batalin, Gaurav Sukhatme, “The Analysis of an

Efficient Algorithm for Robot Coverage and

(a)

40%45%50%55%60%65%70%75%80%

Uniform

COCOLA-1

50m

COCOLA-3

00m

COCOLA-4

00m

COLA

Are

a C

over

age

Coverage w ith 15 actors

(b)

Figure 13 a) Visual coverage of COCOLA with restricted transmission range of 300m. b) Comparing the

coverage of COCOLA to COLA and uniform actor placement for varying radio transmission range.

7 CONCLUSIONS

WSANs is a new research area with many technical challenges. In this paper, we proposed two novel distributed algorithms that tackle the problem of maximizing area coverage in WSANs while minimizing the end-to-end delay for packet delivery. We considered two cases depending on the network connectivity. The first approach, COLA, assumes that actors have sufficient radio transmission ranges to reach each other. COLA initially places the deployed actors such that the area coverage is maximized. Sensors are then grouped around the actors to form non-overlapping clusters. COLA repositions the individual actors in order to minimize the data collection delay within each cluster. We have formulated the relocation problem of actors as an absolute vertex 1-center optimization problem and presented heuristics to identify the best location of each actor. The second approach COCOLA further extended COLA by considering inter-actor

Exploration based on Sensor Network Deployment “, in the Proceedings of IEEE International Conference on Robotics and Automation, Barcelona, Spain, Apr 2005.

[5] D.B. Shmoys, ' E. Tardos, and K. Aardal, “Approximation algorithms for facility location problems,” in the Proceedings of the 29 ACM Symposium on Theory of Computing, pp. 265--274,

th

El Paso, TX, May 1997.

[6] Maxim Batalin and Gaurav S. Sukhatme, "Spreading Out: A Local Approach to Multi-robot Coverage," in the Proceedings of the International Symposium on Distributed Autonomous Robotic Systems, pp. 373-382, Fukuoka, Japan, Jun 2002.

[7] Maxim Batalin and Gaurav S. Sukhatme, "Coverage, Exploration and Deployment by a Mobile Robot and Communication Network," in the Proceedings of the International Workshop on Information Processing in Sensor Networks, pp. 376-391, Palo Alto Research Center (PARC), Palo Alto, Apr 2003.

[8] Melodia, D. Pompili, V. C. Gungor, I. F. Akyildiz, "A Distributed Coordination Framework for Wireless Sensor and Actor Networks," in the Proceedings of ACM Mobihoc 2005.

[9] A. Efrat, S. Har-Peled, J. S. B. Mitchell, “Approximation Algorithms for Two Optimal Location Problems in Sensor Networks” in the Proceedings of

14

the 3rd International Conference on Broadband Communications, Networks and Systems (Broadnets 2005), Boston, Massachusetts , October 2005.

[10] G. Gupta, M. Younis, “Load-Balanced Clustering in Wireless Sensor Networks,” in the Proceedings of the IEEE International Conference on Communication (ICC 2003), Anchorage, Alaska, May 2003.

[11] M. Younis et al., “Energy-Aware Routing in Cluster-Based Sensor Networks”, in the Proceedings of the 10th IEEE/ACM International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS2002), Fort Worth, Texas, October 2002.

[12] K. Akkaya and M. Younis, "Sink Repositioning for Enhanced Performance in Wireless Sensor Networks, Elsevier Computer Networks Journal, Vol. 49/4, pp. 512-534, 2005.

[13] "Data sheet for the Acoustic Ballistic Module", SenTech Inc., http://www.sentech-acoustic.com/

[14] J.B. Andresen et al., “Propagation Measurements and Models for Wireless Communications Channels,” IEEE Communications Magazine, Vol. 33, No. 1, January 1995.

[15] B. Atwood, B. Warneke, KS Pister, "Preliminary circuits for Smart Dust," in the Proceedings of SSMS D'00: IEEE Southwest Symposium on Mixed-Signal Design, San Diego, CA, February 2000.

[16] O. Kariv and S. L. Hakimi, “An Algorithmic approach to network location problems”, Part 1: The p-centers, SIAM J. appl. Math. 37 (1979) 513-538.

[17] Thomas H. Cormen, Charles E. Leiserson and Ronald L. Rivest: Introduction to Algorithms, Cambridge: MIT Press, 1990.

[18] The NASA Adptive Sensor Fleet Project, http://aaaprod.gsfc.nasa.gov/Website/ViewPage.cfm?selectedPage=64&selectedType=Project