## Efficient energy management in sensor networks

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

P. BERMAN? , G. CALINESCU? , C. SHAH? , AND A. ZELIKOVSKY? Abstract. Optimizing the energy consumption in wireless sensor networks has recently become the most important performance objective. We assume the sensor network model in which sensors can interchange idle and active modes. Given monitoring regions, battery life and energy consumption rate for each of n sensors, we formulate the problem of maximizing sensor network lifetime, i.e., time during which the monitored area is (partially or fully) covered. We give the ?rst provably good algorithm for ?nding monitoring schedule with the approximation ratio 1 + logn. Our contributions also include (1) an e?cient data structure to represent the monitored area with at most n2 points guaranteeing the full coverage which is superior to the previously used approach based on grid points, (2) e?cient provably good centralized algorithms for sensor monitoring schedule maximizing the total lifetime for the case when a q-portion of the monitored area is required to cover, e.g., for the 90% area coverage our schedule guarantees to be at most 3.3 times shorter than the best full coverage lifetime, (3) e?cient provably good approximation algorithm for sensor network lifetime problem which takes in account the (partial) monitoring and communication cost in case when the communication range is at least twice larger than monitoring range, (4) a family of e?cient distributed protocols with trade-o? between communication and monitoring power consumption, (5) extensive experimental study of the proposed algorithms showing signi?cant advantage in quality, scalability and ?exibility. Key words. Sensor networks, energy e?cient scheduling, packing linear programs.

1. Introduction. Wireless sensor networks have been the focus of considerable research during the past few years. The research issues currently addressed in wireless sensor networks are hardware constraints, communication and routing issues, data management problems, and software engineering principles. One of the most important issue apart from the above mentioned ones is energy optimization in wireless sensor networks. A sensor network is composed of a large number of sensor nodes that are densely deployed either inside the environment or close to it. The position of sensor nodes need not be engineered or predetermined. This allows random deployment in inaccessible terrains or hazardous environments. Some of the most important application areas of sensor networks include military, natural calamities, health, and home. When compared to traditional ad hoc networks, the most noticeable point about sensor networks is that, they are limited in power, computational capacities, and memory. Hence optimizing the energy consumption in wireless sensor networks has recently become the most important performance objective. The wireless sensor node, being a microelectronic device, can only be equipped with a limited power source. In some application scenarios, replenishment of power resources might be impossible. As noted in [3], the energy density of batteries has only doubled every 5 to 20 years, depending on the particular chemistry, and prolonged re?nement of any chemistry yields diminishing returns. This shows that power management will be as critical in future sensor networks as it now. The main task of a sensor node in a sensor network is to monitor events, i.e.,

? Department of Computer Science and Engineering, Pennsylvania State University, University Park, PA 16802-6106, E-mail: berman@cse.psu.edu ? Department of Computer Science, Illinois Institute of Technology, Chicago, IL 60616. E-mail: calinesc@cs.iit.edu ? Department of Computer Science, Georgia State University, Atlanta, GA 30303. E-mail: chintan@alla.cs.gsu.edu, alexz@cs.gsu.edu

1

2

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

collect data, perform quick local data aggregation, and then transmit the data. Power consumption can hence be divided into three domains: sensing, aggregation, and communication. In this paper we mostly concentrate on minimizing energy for sensing by using smart monitoring schedules. The energy for data aggregation is practically not a?ected by monitoring schedules but for distributed, self-organizing schedules it is necessary to take in account associated energy loss due to increase in communication for establishing better schedules [9]. Our model of a sensor network is close to one described in [8, 9]. We assume that sensors are sprayed over the region R which is required to monitor, and each sensor pi has its own monitored region Ri which it covers, i.e., pi can collect the trustful data from Ri without help of any other sensor. Although we assume that the monitored region are convex (for the clarity of presentation we will use disks of the same radius r), our algorithms can be generalized to arbitrary region shape. We also assume that each sensor pi has also a certain initial energy supply bi which will be measured in time during which pi can collect information from Ri . We also assume that the number of sensors largely exceeds the amount necessary to monitor the required region R. Therefore, it is possible to turn some sensors in the idle mode saving their energy and prolonging the network lifetime. Sensors can interchange their mode multiple times and possible energy loss can be taken in account. The main constraint is that the monitored region R should be completely (or partially with speci?ed portion of R) covered at any moment by active sensors. This assumption agrees with [7], where an OS-directed power management technique to improve the power e?ciency of sensor nodes is proposed. Below we give a formal de?nition of the energy preserving scheduling problem. A set of sensors C covering R will be called sensor cover. Then a monitoring schedule is the set of pairs (C1 , t1 ), . . . , (Ck , tk ), where Ci is a sensor cover and ti is time during which Ci is active. Sensor Network Life Problem (SNLP). Given a monitored region R, a set of sensors p1 , . . . , pn and monitored region Ri and energy supply bi for each sensor, ?nd a monitoring schedule (C1 , t1 ), . . . , (Ck , tk ) with the maximum length t1 + . . . + tk , such that for any sensor pi the total active time does not exceed bi . Note that this formulation has never been clearly stated in the previous literature. In [8] (see also [1, 5]) the problem has been reduced to so called disjoint set cover problem. There it is assumed that any sensor cannot participate in di?erent sensor covers, i.e., it can be only once change its mode from sleeping to active. Then all sensor covers should be disjoint. A di?erent model assumes that the most of energy consumption of wireless networks comes from routing the tra?c, rather than monitoring [10] and the task is to ?nd the best tra?c ?ow routes for a given set of tra?c demands, e.g., using concurrent ?ow approaches [4]. The advantage of the introduced formulation is unbounded. Indeed, if one sensor has n units of energy while n other sensors have 1 unit of energy and any 2 sensors can monitor the region, then using the same sensor in di?erent sensor covers increases the lifetime by factor n. On the other hand, it is much more complicated to ?nd the maximum possible advantage of multiple mode interchange over disjoint sensor cover when the original energy supply is the same for all sensors. Figure 1.1 gives an example showing advantage of multiple mode interchange in case of the same initial energy supply. In this example there are 3 sensors with disc monitored regions which are supposed to monitor a dark square region R inside. Assume that each sensor has

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

3

R3

monitored region R

R1 R2

sensor regions

Fig. 1.1. 3 sensors with the disc monitored regions R1 , R2 and R3 cover the dark square of the monitored region R. Any two sensors can cover R but any single sensor cannot cover R.

2 units of energy supply. Then there exists only a single disjoint sensor cover which can last for 2 units of time. On the other hand, the schedule ({p1 , p2 }, 1), ({p2 , p3 }, 1), ({p3 , p1 }, 1) is clearly feasible and lasts for 3 units of time. We conjecture that for the case when the monitored regions are convex this advantage cannot exceed 50%, i.e., Figure 1.1 gives the worst-case example, and, in general case this advantage cannot exceed 100%.1 The SNLP can be formulated as a packing linear program (see section 3) – one should pack maximum number of schedules into a multidimensional knapsack with dimensions de?ned by the number of energy units assigned to sensors. For solving SNLP we use the primal-dual approach. This approach requires to solve the following dual covering problem. Minimum Weight Sensor Cover Problem (MWSCP). Given a monitored region R, a set of sensors p1 , . . . , pn and monitored region Ri and the weight wi for each sensor, ?nd sensor cover with the minimum total weight. Using approximate solutions for MWSCP we give ?rst provably good approximation algorithms for SNLP based on approximation algorithm for MWCP. Other contributions of our paper include: ? an e?cient data structure to represent the monitored area with at most n2 points guaranteeing the full coverage which is superior to the previously used approach based on grid points, ? e?cient provably good centralized algorithms for sensor monitoring schedule maximizing the total lifetime for the case when a q-portion of the monitored area is required to cover ? e?cient provably good approximation algorithm for sensor network lifetime problem which takes in account the (partial) monitoring and communication cost in case when the communication range is at least twice larger than monitoring range,

1 We have constructed a series of instances with the limit advantage of 100% based on involved combinatorics.

4

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

? a family of e?cient distributed protocols with trade-o? between communication and monitoring power consumption ? extensive experimental study of the proposed algorithms showing signi?cant advantage in quality, scalability and ?exibility. The rest of the paper is organized as follows. In Section 2 we give an e?cient data structure for representation of the monitored area with at most n2 points guaranteeing the full coverage which is superior to the previously used approach based on grid points [8]. This data structure allows e?ciently reduce the Minimum Weight Sensor Cover problem to the standard weighted set cover problem. This problem cannot be e?ciently solved with guarantee better than O(log k), where k is the size of the largest set and it is not known to have any better algorithm for the case of planar sets. Anyway, our primal-dual solution is the ?rst algorithm guaranteeing solution which is at most O(logn) worse than the optimum, where n is the number of sensors. In Section 3 we explain Garg-K¨nemann algorithm [2] for solving packing linear o programs, which allows to solve the Maximum Sensor Network Life problem with almost the same guarantee with which one can solve the dual problem, i.e., Minimum Weight Sensor Cover problem. We also give a practical enhancement of their approach resulted in fast improvement of the quality of obtained solutions. In many cases, it can be required to cover su?ciently large portion of the monitored region R rather than the entire R. In Section 3.1 we formulate the respective problem when only q · area(R) for a given q ∈ [0, 1]. We then give an approximation algorithm which ?nds the solution at most (1 + ln(1 ? q)?1 ) times heavier than the optimum full coverage. For instance, when q = 0.9, i.e., when we wish to cover 90% of the region R, this implies an algorithm guaranteeing ?nding sensor 0.9-cover at most 3.3 times heavier than the the optimum full cover and a monitoring schedule always covering at least 90% of monitored region and at most 3.3 times shorter than the optimal sensor schedule. In Section 3.2, we show how to take in account communication costs – if the communication radius is at least twice the monitoring radius then we can guarantee constant-factor approximation. In Section 4, we present a series of distributed algorithms based on our new data structure which are superior to the previous approaches (see [9]) since they account for each node energy supply. We have implemented all the suggested algorithms and present our simulation results in Section 5. 2. E?cient Data Structure Representing Sensor Coverage. In [8] a grid data structure is used to express sensor node coverage over an area. They establish a set of grid points that form a g × g-array to discretize the area. Then they determine for each point the subset of covering sensors disks. Next they partition all grid points into ?elds, where a ?eld is de?ned as a subset of grid points covered by the same set of sensors. Similar idea has been suggested in [3]. The main advantage of this coverage model is ease of implementation if the covering area does not have to be delineated very precisely. If there are few points in the grid, then the area to be covered is not well de?ned. On the other hand, if the grid is very ?ne, then the calculation overhead for this model becomes quite large. Another challenging computation task is partitioning into ?elds since potentially O(2n×n ) possible ?elds may exist only ?elds which are present should be extracted. In this paper we present a superior data structure which overcomes the above disadvantages. The monitored region is represented by a planar graph P = (V, E) with

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

5

face 1

face 2

face 3

face 11 face 8 face 5 face 9 face 13 face 7 face 10 face 6

face 4

face 12

Fig. 2.1. The data structure for four sensors with disk monitored regions. The planar graph P = (V, E) with vertices corresponding to points of intersections and edges connecting adjacent points. There are 10 vertices, 21 edges and 13 faces.

intersection of 3 region boundaries

new face

Fig. 2.2. The left example contains a triple intersection (the vertex is ?lled). On the right, there is a modi?ed example with one circle slightly moved up. As a result a new dotted face appears.

vertices V corresponding to the points of intersections of boundaries of all sensor’s coverage regions (e.g., circles) and edges E connect pairs of adjacent intersection points along the boundaries of sensor circles (see Figure 2.1). It is easy to see that the faces of the graph P , i.e., the parts of the plane bounded by edges, are regions covered by the same set of sensor disks. Therefore, if we would identify all the faces of the graph P we would e?ectively enumerate all ?elds and moreover, this will be a complete and accurate representation of all ?elds since we do not use grid points and do not rely on an assumption that we have su?cient amount of grid points to nail each face. One can e?ciently ?nd all faces since the number of such faces is comparatively small. Indeed, the following simple fact bounds the number of faces. Theorem 2.1. Let m be the number of points of intersection of boundaries of the monitored regions of all sensors, then the number of faces in the graph P is at most m + 2. Proof. The proof is based on Euler’s formula for planar graphs. Since P = (V, E)

6

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

traversing face boundary

sorting outgoing edges

Fig. 2.3. Solid arcs show how the edges outgoing from the ?lled vertex are traversed, the dotted arcs show the order in which a face boundary is traversed.

is a planar graph, |V | ? |E| + |F | = 2, where V , E and F are the sets of vertices, edges and faces of P , respectively. If several boundaries intersect at the same point, then by slightly changing boundaries, one can increase the number of faces (see Figure 2.2). Thus, for counting purposes, we can assume that each point can be intersection of boundaries of at most two monitored regions. Then each vertex of the graph P has degree 4. If we sum up degrees of all vertices, then we count each edge twice, therefore, |E| = 2|V |. Thus, |V | ? 2|V | + |F | = 2 and the number of faces equals |F | = |V | + 2. If the monitored regions are convex, then any two boundaries can intersect at most twice, i.e., there are at most n(n ? 1) intersection points. Corollary 2.2. Given n sensors each with convex monitored region, the number of faces of the graph P is at most n(n ? 1) + 2. Below we describe an e?cient implementation of our data structure when each monitored region is a disk (or in general a convex region) (see Figure 2.3). The graph P is considered to be directed with each edge represented by two opposite arcs and each arc belongs to the boundary of exactly one face. For each vertex all outgoing arcs are sorted in a counterclockwise order. The faces are identi?ed by walking along the arcs, if we come to the node using arc e, then we should follow the arc next to the next arc which opposite to e. Finally, determining which sensors cover which faces is accomplished by measuring the distances of the face vertices to the sensors. If monitored regions are not convex then we suggest to partition them into convex subregions and apply the planar graph data structure afterwards. This may happened in case of obstacles when collecting visual information (see Figure 2.4). If the monitored regions are given implicitly, then ?nding intersection points may be a challenging task and we may need to reuse the grid point representation. In this case, ?nding ?elds can be done e?ciently using hash functions. 3. Centralized Maximization of Sensor Network Lifetime. In this section we formulate the Sensor Network Lifetime problem as a packing linear program, give the (1 + log n)-approximation algorithm for SNLP, show how to modify our algorithm in case when only partial coverage is required and, ?nally show how to take in account

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

7

partition into convex regions sensor obstacle

no access

Fig. 2.4. An example of a sensor with nonconvex monitored region caused by a solid obstacle. The region is partitioned by a dashed line into the convex regions.

communication cost. After ?nding di?erent sensor covers which satis?es sensor network constraint, we have to maximize the network lifetime by assigning the active time stretch for each sensor cover. Formally, for each sensor cover cj from a family SC = {c1 , . . . cm }, we need to ?nd the time variable tj . We can generate a matrix Cij with rows i = 1, . . . , m representing each sensor, and columns j = 1, . . . , m representing each sensor cover. The linear program corresponding to SNLP can be formulated as follows.

m

Maximize :

j=1

tj

m

Subject to

j=1

Cij tj ≤ bi

where bi is energy supply of the sensor i and Cij = 0 1 if sensor i is not in set cover j if sensor i is in disk cover j

The linear program above is a packing LP. In general, a packing LP is de?ned as (3.1) max{cT x|Ax ≤ b, x ≥ 0}

where A, b, and c have positive entries; we denote the dimensions of A as mxn. In our case the number of columns of A is prohibitively large (exponential in number of sensors) and we will use the (1+ )-approximation Garg-K¨nemann algorithm [2]. The o algorithm assumes that the LP is implicitly given by a vector b ∈ Rm and an algorithm which ?nds the column of A minimizing so-called length. The length of column j with respect to LP in Equation (3.1) is de?ned as lengthy (j) = Σi A(i,j)y(i) for any c(j)

8

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

Input: A vector b ∈ Rm , > 0, and an f -approximation algorithm F for the problem of ?nding the minimum length column Aq(y) of a packing LP {max cT x|Ax ≤ b, x ≥ 0} Output: A set of columns {Aj }k each supplied with the value of the corresponding j=1 variable xj , such that (x1 , . . . , xk ) correspond to all non-zero variables in a nearoptimal feasible solution of the packing LP {max cT x|Ax ≤ b, x ≥ 0}

δ (1) Initialize: δ = (1 + )((1 + )m)?1/ , for i = 1, . . . , m y(i) ← b(i) , j=0 (2) While D < 1 Find the column Aq using the f -approximation F . b(i) Compute p, the index of the row with the minimum Aq (i)

D ← mδ,

j ← j + 1, (3) Output {(Aj , log

xj ←

xj

1+

b(p) Aq (p) ,

Aj ← Aq

b(p) b(i) Aq (p) / Aq (i)

For i = 1, . . . , m, y(i) ← y(i) 1 +

1+ δ

,

D ← bT y.

)}k j=1

Fig. 3.1. The Garg-K¨nemann Algorithm with f -approximate minimum length columns o

positive vector y. The Garg-K¨nemann algorithm with f -approximate minimum o length columns is presented in Figure 3.1. When applied to our LP (3.1), the Garg-K¨nemann algorithm can use an (apo proximation) algorithm F solving the Minimum Weight Sensor Cover problem with weights proportional to the elements of vector y, i.e., for each node i = 1, . . . , m, w(i) = 1/yi . This implies the following general result. Theorem 3.1. The Network Lifetime problem can be approximated within a factor of (1 + )f , for any > 0, using Algorithm on Figure 3.1 with f being the approximation ratio of the algorithm F for the Minimum Weight Sensor Cover problem. From section 2 follows that the Minimum Weight Sensor Cover problem is equivalent to the classical Minimum Weight Set Cover problem with k = O(n2 ) elements (i.e., faces) to cover. Using standard greedy algorithm for this problem with the approximation ratio 1 + ln k = 1 + 2 ln n, we obtain the following Corollary 3.2. The Network Lifetime problem can be approximated within a factor of (1 + )(1 + 2 ln n), for any > 0, using Algorithm on Figure 3.1 with the algorithm F being the greedy (1 + 2 ln n)-approximation algorithm for the Minimum Weight Sensor Cover problem. 3.1. Partial Sensor Coverage . In this subsection we consider the problem of ?nding the minimum weighted sensor set partially covering the monitored area. Partial q-Coverage problem. Given a constant q ∈ [0, 1], the monitored region R with area M and a set of sensors Sensors ?nd subset p1 , p2 , . . . , pt of Sensors such that Minimize :

t

w(pi )

Subject to

Area

i=0

Si

≥ qM,

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

9

where M is the total monitored area and Si is the monitored region of sensor pi . This problem can be reformulated as follows. Set q-Cover problem. Given a ?nite set X of elements each having cost2 cost : X → R+ and family of F of subsets Si ? X, each having weight w : Si → R+ , and q ∈ [0, 1], ?nd minimum weight subfamily C ? F covering subsets of X, such that total cost of elements covered by sets in C is at least q · cost(X), where cost(X) = x∈X x. The greedy algorithm for Set q-Cover problem iteratively chooses the set Si ∈ C, w(Si with minimum cost(S) ) , where cost(Si ) = x∈Si cost(x). It stops when the area i covered is at least q · cost(X). Due to space limitations we omit the proof of the following Theorem 3.3. The greedy algorithm for Set q-Cover problem ?nds a cover with 1 weight at most 1 + ln 1?q times the weight of optimal cover of the entire X. Proof. Let Xi be the set of elements of X which are uncovered after selecting set S1 , S2 , . . . , Si , and cost of Xi , cost : Si → R+ is total cost of elements of Xi . The cost(X0 ) is cost of elements of X before selecting any set Si , so that cost(X0 ) = cost(X) and, (3.2) cost(Xi ) = cost(Xi?1 ) ? cost(Si )

? ? ? Let S1 , S2 , . . . , Sk be sets selected in optimal solution covering entire X, so that,

OP T ≥ cost(Si )

? w(Sj ) ? cost(Sj )

(3.3) From (3.2),

w(Sj ) cost(Sj ) w(Si ) ≥ cost(Si ) ≥ min

cost(Xi ) ≤ cost(Xi?1 ) 1 ?

w(Si ) OP T

Let m be the maximum number such that remaining cost cost(Xm ) is at least (1 ? q)cost(X). So that, (3.4) cost(Xm+1 ) < (1 ? q)cost(X) ≤ cost(Xm )

From inequality ln(1 + x) ≤ x, ln cost(X0 ) ≥ ? ln cost(Xm ) w(Si ) OP T w(Si ) =? ln 1 ? OP T w(Si ) ≥ OP T 1?

(3.5)

2 The

cost of an element corresponds to the area of a face.

10

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

m+1 i=0

The cost of solution by Greedy method is equal to approximation ratio is, AP R =

m i=0

w(Si ), so using (3.4),(3.5)

w(Si ) + (w(Sm+1 )) OP T m w(Si ) w(Sm+1 ) = i=0 + OP T OP T cost(X0 ) ≤ ln +1 cost(Xm ) 1 ≤ ln +1 (1 ? q)

Because, from (3.3), w(Sm+1 ) cost(Si+1 ) ≤ ≤1 OP T cost(Xi+1 ) Corollary 3.4. When q-portion of the monitored region R is allowed to cover, the SNLP can be approximated within a factor of (1+ )(1+ln(1?q)?1 ), for any > 0, using Algorithm on Figure 3.1 with the algorithm F being the greedy (1 + ln(1 ? q)?1 )approximation algorithm for the Minimum Weight Sensor q-Cover problem. 3.2. Taking in Account Communication Cost. In this section we show that our approach for monitoring schedule can be generalized to take in account communication cost (assuming that the communication range of nodes is at least twice the monitoring range). In this section we adopt a model where each sensor can be in one of the following four states: monitoring, relaying, linking to the base station, and idle. Each state has a di?erent energy consumption per unit of time, which is respectively Cmonitor , Crelay , Clink , and 0. In practice, Crelay ≤ Cmonitor ≤ Clink , as the sensors necessarily relay their own data, and linking to the satellite uses the most energy. While in monitoring schedule we need to specify only which nodes are active and which are inactive, here we also need to specify relaying nodes as well as nodes linked to the base. Formally, an assignment triple Q = (M, R, L) consists of the following three sets of sensors: monitoring nodes M = M (Q), relaying nodes R = R(Q) and nodes linked to the base L = L(Q). A triple is feasible if the set M is a (partial) set cover, and each node in M is either belong to L (i.e., linked to the base) or is connected in the communication graph to at least one node in L via nodes in R (i.e., relaying nodes). In this context, SNLP becomes the following packing linear program with exponentially many variables t(Q) denoting the time stretch of a feasible assignment triple Q: Maximize :

Q

t(Q)

Subject to

Cmonitor

Q | i∈M (Q)

t(Q)+Crelay

Q | i∈R(Q)

t(Q)+Clink

Q | i∈L(Q)

t(Q) ≤ bi

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

11

where Q = (M (Q), R(Q), L(Q)) are feasible assignment triples and bi is the energy supply of node i. In order to apply the Garg-K¨nemann algorithm, we need to (approximately) o solve the dual problem formulated as follows: Weighted Linked Coverage Problem. Given arbitrary weights yi , ?nd the feasible assignment triple Q = (M, R, L) which minimizes Cmonitor i∈M yi +Crelay i∈R yi + Clink i∈L yi . Below we give an approximation algorithm for Weighted Linked Coverage when M is required to be a partial cover. A minor adaptation of the algorithm can be used for the case when M is required to be a complete cover, having approximation ratio O(log n). In the ?rst stage, the algorithm computes an approximate partial cover M . Using the results from the Subsection 3.1 we deduce that Cmonitor i∈M yi is within a constant c1 of the optimum solution for full coverage. In the following, we construct an instance G = (V, E, c, M ) of the classical Steiner tree problem which asks for minimum cost tree in the graph G = (V, E, c) which spans all given terminals from M . The set of vertices V coincides with the set of sensors plus one node s corresponding to the base. The subset M of given terminals is de?ned as M = M ∪{s}. We connect each sensor i and the base s with an edge of cost yi Clink . We also connect each pair of sensors i and j which are able to communicate in one hop, the corresponding edge has cost Crelay (yi +yj ). An arbitrary constant-factor approximation algorithm for the Steiner Tree problem (see for example [6]) can be used for obtaining an approximate solution T of this Steiner Tree instance. Then the feasible assignment triple Q consists of M , the set of relay nodes R coincides with the set of Steiner nodes in the tree T , and, ?nally, the set L consists of nodes in T adjacent to the base node s. 4. Distributed Algorithms for Lifetime Maximization. Distributed algorithms for SNLP have been previously considered in [9]. It has been shown that the sensor network lifetime can be substantially increased by using smart self-organizing monitoring schedules. Our approach below has the following advantages: (1) the superior monitored area representation, (2) dynamic accounting for energy supply of each sensor, (3) minimization of the set of active sensors. We further assume that each sensor s can communicate with all sensors sharing faces with s, otherwise, we can, e.g., increase for this purpose communication range. The data structure from Section 2 can be easily built in the distributed manner as follows: (1) each sensor broadcast to its neighbors its id and geographical position, (2) each sensor determines all the faces in its monitored area and associate with each face the id’s of all sensors covering this face. As pointed in [9], there are two main questions which should be answered by any self-organizing monitoring scheduling: (1) What are the rules for each node to decide whether turn itself on or o?? and (2) When should nodes make such decision? We ?rst describe the states of each node and transition rules. In the proposed generic distributed algorithm, each sensor at any moment is in one of the following three states: active, i.e., the sensor monitors its monitoring region; idle, i.e., the sensor listens to other sensors, but does not monitor its region; and intermediate vulnerable state, i.e., the sensor monitors its region but should as soon as possible change its state to either active or idle. Each sensor knows in which state all its neighbors –

12

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

any state transition is immediately broadcasted to the neighbors together with the current energy (battery) supply. The state transitions are described by the following rules: A. When a sensor is in the vulnerable state, then it should change its state into active state if there is a face which is not covered by any other active or vulnerable sensor and B. When a sensor is in the vulnerable state, then it should change its state into idle state if all its faces are covered by one of two types of sensors: active or vulnerable sensors with a larger energy supply. C-D. When a sensor is in an active or idle state, then it should go into the vulnerable state if any neighboring sensor becomes vulnerable. As soon as any sensor becomes vulnerable, the vulnerable state propagates over the entire network and eventually each sensor settles down in either idle or active state. We call this process a global reshu?e. An extended state diagram corresponding to the proposed distributed algorithm is illustrated on Figure 4.1. Two extra states correspond to the case when a single alive sensor can monitor a region (permanent state) and when a sensor exhaust its energy supply (terminated state). Once the sensor node becomes active, it will be permanently active till it exhausts all its batteries. When a sensor node near-completely exhausts its energy supply, it will broadcast about that to its neighbors. A minimal subset of idle sensors will become active in order to cover the faces which will be soon abandoned by the exhausted sensor. For the purpose of comparison of our protocol with the protocol from [9], we have implemented the protocol without any reshu?e. Now we will show that the proposed distributed algorithm is deadlock-free and needs only constant number (per sensor) of broadcasts to the neighbors. Lemma 4.1. The distributed algorithm is deadlock-free, i.e., among vulnerable sensors there is always one that either should become active or idle. Proof. Toward contradiction, assume that each vulnerable sensor covers at least one face non-covered by any active/permanent sensor and does not have an individual face, i.e. a face which is not covered by any other vulnerable sensor. Then there is always a vulnerable sensor which is not a champion (has a largest energy supply) for any of its faces, i.e., a sensor eligible for transition into the idle state. Indeed, the sensor with the globally largest energy supply among all vulnerable sensors is such a sensor. Theorem 4.2. Each global reshu?e needs 2 broadcasts (to the neighbors) from each sensor and the resulted set of all active sensors form a minimal sensor cover. Proof. Assume that each sensor knows the coordinates of all its neighbors and, therefore, all the faces. For each reshu?e there is one broadcast informing neighbors that a sensor goes into vulnerable state and also announcing the available energy supply. The second broadcast inform the neighbors that a sensor change it state to one of 4 non-vulnerable states. The resulted set of active/permanent sensors covers all faces since a sensor cannot go to idle state if it has individual face. Finally, the resulted set of active/permannet sensors is minimal since any active sensor has individual face which is not covered by any other active/permannet sensor. Now all node states and transition rules are described and we should decide when the global reshu?e should happened. De?nitely, a near-complete exhaustion of energy supply should be one of such triggering events. A more accurate schedule needs more frequent reshu?es implying increase in communication cost. We suggest to initiate a reshu?e when the energy supply of a sensor drops by a certain prede?ned threshold

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

13

G Permanent E Vulnerable A C D B F Terminated

Active

Idle

Fig. 4.1. State diagram of the proposed distributed algorithm for lifetime maximization. A single sensor among vulnerable and active sensors covering a certain face uses transition A, a sensor which does not have maximum energy supply among sensors covering any face uses transition B, transitions C and D are used by neighbors of vulnerable sensors, transition E is a variation of transition A when a sensor is the only alive sensor covering certain face, transitions F and G are used by sensors which exhausted their energy supply.

value H. The smaller reshu?e-triggering threshold H, the more frequent reshu?es are performed which will result in a more balanced schedule. If communicating needs much more energy than sensing, we suggest optional local reshu?es with vulnerable state propagation limited to a certain neighborhood (e.g., 3-neighborhood) of the sensor which triggers the reshu?e. 5. Experimental Study. All algorithms were implemented in C++. The heuristics were compiled using gpp with -O2 optimization, and run on a Sun workstation Ultra-60. The experiments were run on randomly generated testcases. For experiments we have taken sensor area as 1000m×1000m, monitored area as 800m×800m. We experimented with 100, 200, 300, 400, 500, and 1000 sensor nodes, sensing range of 100m and 150m, coverage area of 100% (q=1) and 90%(q=0.9). The position of sensor node is randomly distributed in sensor area. We ran our experiments with uniformly assigned batteries (10) to each sensor node and randomly assigned batteries between 10 to 20 to each sensor node. We have taken value of equals to 0.1, which decides the quality of Garg-K¨nemann solution. We primarily o report lifetime of the network for Garg-K¨nemann, Tight, CPLEX and distributed o algorithm. We also report the trade-o? between communication overhead and lifetime for distributed algorithm with di?erent reshu?e-triggering threshold. After ?nding sensor covers from Garg-K¨nemann solution, we can ?nd the optimal o schedule by assigning the best times for each sensor cover by CPLEX, with constraint to satisfy battery requirement of Sensor Nodes and to maximize the total life time. Garg-K¨nemann’s solution does not guarantee that there is a tight energy constraint, o i.e., there is a sensor which completely exhausts its energy supply. The ”Tight” solution is obtained from Garg-K¨nemann solution by ?nding the tightest energy o constraint and making it tight by scaling up the timespans for each sensor cover. Table 5.1 shows test cases and average runtime to ?nd di?erent solution for different number of nodes with sensing range of 100m and 150m. The largest scenario we have considered is with 1000 nodes and 100m sensing range. The number of faces increases as the number of nodes and/or the sensing range increases. The runtime for Tight algorithm is higher than Garg-K¨nemann, and CPLEX runtime is higher than o

14

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

Test Case No. of Nodes Sensor Range No. of Faces Runtimes Find Faces Garg-K¨nemann o Tight CPLEX

Parameter Interval 100-500 100-150 861-43160 8.96s - 886s 3.55s - 2487.94s 5.06s - 2589.94s 9.75s - 3462.32s

Maximum 1000 100 81845 1840s 3605.45s 3758.17s 7887.53s

Table 5.1 Number of faces and runtime to ?nd faces, Garg-K¨nemann solution, Tight solution and o CPLEX solution for di?erent number of nodes with di?erent sensing range.

# of sensors 100 200 300 400 500

Reshu?e-Triggering Threshold Value 1 2 3 5 10 31.33 30.33 29.66 28.66 26.00 3503 1732 1194 735 416 54.00 53.33 52.66 53.33 52.33 11220 5591 3799 2396 1377 120.00 116.00 112.00 111.33 105.33 35981 17431 11582 7888 4991 169.66 167.33 164.66 159.0 155.0 66765 33457 22551 14381.7 9393 211.43 210.33 206.33 199.66 182.33 93650 52114 35285 22578.0 13040

Table 5.2 Lifetime and communication overhead for the distributed algorithm with sensing range 150m, and randomly assigned batteries between 10 and 20. Bold data are based on a single instance.

for the Tight. Figures 6.1, 6.2 and 6.3 show the life time of network for CPLEX, Tight, GargK¨nemann and distributed algorithms for di?erent number of nodes. Fig. 6.1 shows o the results for, sensor range of 100m, uniformly assigned batteries (10) and 100% coverage of monitored area (q=1). Fig. 6.2 shows the results for sensor range of 150m, randomly assigned batteries between 10 and 20, and 100% coverage of monitored area. Fig. 6.3 shows the results for sensor range of 100m, uniformly assigned batteries 10, and 90% coverage of monitored area. The Tight solution is always better than GargK¨nemann’s, and CPLEX solution is always better than Tight solution. When we o should cover the entire monitored region (q=1) (Fig. 6.1, 6.2), distributed solution is very near to centralized solution (GK and REAL), but when constraint is to cover only 90% of monitored area (Fig. 6.3), distributed solution is signi?cantly worse than that of centralized solution. Table 5.2 shows trade-o? between life time and communication overhead for distributed algorithm with di?erent reshu?e-triggering threshold. Sensing range of 100m is used for this experiment. Increasing the reshu?e-triggering threshold reduces the communication overhead but decreases the lifetime. 6. Conclusions. In this paper, we have formulated Maximum Sensor Network Life Problem and suggested centralized and distributed algorithms for solving this

EFFICIENT ENERGY MANAGEMENT IN SENSOR NETWORKS

Range 100 & Battery 10-10 q=1 50 CPLEX Real GK Distributed 1 Distributed (Permanent)

15

45

40 Life Time of Network

35

30

25

20

15

10 100

200

300 No. of Nodes

400

500

Fig. 6.1. Lifetime for CPLEX, Tight, GK and the distributed algorithm with reshu?e threshold 1 and Permanent. The sensing range is 100m, battery supply 10, and q=1.

Range 150 & Battery 10-20 q=1 250 CPLEX Real GK Distributed 1 Distributed (Permanent) 200

Life Time of Network

150

100

50

0 100

200

300 No. of Nodes

400

500

Fig. 6.2. Lifetime for CPLEX, Tight, GK and the distributed algorithm with reshu?e threshold 1 and Permanent. The sensing range is 150m, battery supply between 10 and 20, and q=1.

problem. We have explored the case when the monitored area is required to partially covered. We experimentally have checked the quality of our distributed algorithms comparing them with the centralized solution. We are going to simulate our algorithms within the LEACH protocol.

REFERENCES [1] M. Cardei and D.-Z. Du, “Improving wireless sensor network lifetime through power aware organization,” to appear in ACM Wireless Networks. o [2] N. Garg and J. K¨nemann, “Faster and simpler algorithms for multicommodity ?ow and other fractional packing problems”, Proc. 39th Annual Symposium on Foundations of Computer Science, 1998, pp. 300–309. [3] R. Hahn and H. Reichl, “Batteries and power supplies for wearable and ubiquitous computing,” in Proc. 3rd Int. Symp. Wearable Computers, 1999. [4] F. Leighton and S.Rao, “Multicommodity max-?ow min-cut theorems and their use in designing approximation algorithms,” Journal of the ACM, vol. 6, 1989, pp. 787–832.

16

BERMAN, CALINESCU, SHAH AND ZELIKOVSKY

Range 100 & Battery 10-10 q=0.9 160 CPLEX Real GK Distributed 1 Distributed (Permanent)

140

120 Life Time of Network

100

80

60

40

20 100

200

300 No. of Nodes

400

500

Fig. 6.3. Lifetime for CPLEX, Tight, GK and the distributed algorithm with reshu?e threshold 1 and Permanent. The sensing range is 100m, the battery supply 10, and q=0.9.

[5] R. J. Marks II, A. K. Das, M. El-Sharkawi, P. Arabshahi, and A. Gray, “Maximizing lifetime in energy constrained wireless sensor array using team optimization of cooperating systems,” in Proc. IEEE World Conference on Computational Inteligence 2002, 2002. [6] G. Robins and A. Zelikovsky, “Improved Steiner tree approximation in graphs,” in Proceedings of the 11th ACM-SIAM Annual Symposium on Discrete Algorithms, 2000, pp. 770–779. [7] A. Sinha and A. Chandrakasan, “Dynamic power management in wireless networks,” IEEE Design & Test of Computers, pp. 62–74, 2001. [8] S. Slijepcevic and M. Potkonjak, “Power e?cient organization of wireless sensor networks,” in Proc. IEEE International Conference on Communications (ICC), 2001, pp. 472–476. [9] D. Tian and N. D. Georganas, “A coverage-preserving node scheduling scheme for large wireless sensor networks,” in Proc. ACM WSNA02, 2002. [10] G. Zussman and A. Segall, “Energy e?cient routing in ad hoc disaster recovery networks,” in Proc. IEEE INFOCOM’03, 2003.

### 相关推荐

- Energy efficient routing in wireless sensor networks
- Power management in energy harvesting sensor networks
- Energy Efficient Residual Energy Monitoring in Wireless Sensor Networks
- Energy-Efficient Data Management for Sensor Networks A Work-In-Progress Report
- Energy-efficient target coverage in wireless sensor networks
- Energy-efficient link assessment in wireless sensor networks
- Energy-Efficient Routing Protocols in Wireless Sensor Networks - A Survey
- Adaptive data fusion for energy efficient routing in wireless sensor networks
- Energy-Efficient Routing in Wireless Sensor Networks based on Data Reduction
- Set K-Cover Algorithms for Energy Efficient Monitoring in Wireless Sensor Networks

### 最新更新

- Efficient energy management in sensor networks
- 青年教师2017年教学能力培训工作计划***2***
- 新轨道运输安全技术措施
- 描写人物动作的精彩句子
- 武汉泽迪建材有限责任公司企业信用报告-天眼查
- 绍兴的河作文400字
- 【JS】获取扫码设备的数据，并输出在页面
- Android图片压缩，自己编译libjpeg
- J2ME概述(转)
- 岁月沉淀的美丽
- springBoot + Elasticsearch简单案例实现
- 使用python写了个9/9乘法表
- 最美微网格长事迹材料
- 北京公务员考试常识试题及答案
- 家长写给老师的信
- 大学生珍爱生命演讲5篇

### 猜你喜欢

- 深圳市万宝兴实业有限公司(企业信用报告)- 天眼查
- 维修部燃料机务专业检修滚动计划表
- 【精选计划】2019年幼儿园后勤工作计划
- 四等水准测量外业记录表
- 【人教版】2020年春六年级下册数学：导学案设计-第4单元-第11课时 图形的放大与缩小(例4)
- 怎么把字加到上
- 绘本阅读活动中幼儿有效观察的指导策略
- 2020高中语文 第五单元 佛理禅趣 5.2《百喻经》六则课时训练 新人教版选修《中国文化经典研读》
- 2018-2019学年湖北省孝感市高二下学期期中考试地理试卷
- 2018-2024年中国劳动防护手套市场调查与市场年度调研报告(目录)
- 高中历史 第一单元 古代东方 第1课《古代两河流域》教案 华东师大版第一册
- 《风娃娃》公开课教案优质课教学设计反思
- 七年级英语上册 Unit 5 Family and Home Lesson 28 A Family Picnic教案 (新版)冀教版
- 冰心现代诗歌大全
- 最新2019-基因的连锁互换规律第2课时-PPT课件
- 2021年扬州大学兽医学院829生物化学(自)考研仿真模拟五套题
- 小学学校领导班子述职报告
- 摄影选宽屏变色
- 【免费下载】学校工作总结0304下
- 玄幻小说主角的人生目标有哪些类型
- 2019《装在套子里的人》课堂教学实录精品教育.doc
- 自然收束法
- 苏州市水晶宫美食林企业信息报告-天眼查
- 保定白沟新城憨豆包装制造有限公司企业信用报告-天眼查
- 新人教版六年级单元测验双向细目表
- 移动式焊烟净化处理器
- 二年级作文：有趣的科学课作文350字
- 2017-2018学年安徽省宿州市?桥区七年级上学期第三次(12月)质量检测数学试题及答案
- 双城某公司年度销售工作总结
- 浅谈中日贸易1
- 预防硫化氢中毒安全措施
- Servlet生命周期及运行原理总结
- 二维气固两相混合层中固粒对流场影响的研究
- 2015年广东工业会计硕士(mpacc)难度如何
- 2015年职称英语a级考试技巧
- 八年级语文上册教案
- 年一级建造师《建设工程经济》压轴试题 超值版资料
- 简单的说两个路由器怎么连接
- 2019年积累试题精选六年级下学期数学期末模拟试卷
- 企业安全消防年度工作计划
- 金融技术风险管理
- 一期IK525型长杆吹灰器检修工艺卡