2 \documentclass[conference]{IEEEtran}
10 \hyphenation{op-tical net-works semi-conduc-tor}
15 \usepackage{times,amssymb,amsmath,latexsym}
20 \usepackage{algorithmic}
21 \usepackage[T1]{fontenc}
23 %\usepackage{algorithm}
24 %\usepackage{algpseudocode}
25 %\usepackage{algorithmwh}
26 \usepackage{subfigure}
29 \usepackage[linesnumbered,ruled,vlined,commentsnumbered]{algorithm2e}
37 \title{Energy-Efficient Activity Scheduling in Heterogeneous Energy Wireless Sensor Networks}
40 % author names and affiliations
41 % use a multiple column layout for up to three different
43 \author{\IEEEauthorblockN{Ali Kadhum Idrees, Karine Deschinkel, Michel Salomon, and Raphael Couturier }
44 \IEEEauthorblockA{FEMTO-ST Institute, UMR CNRS, University of Franche-Comte, Belfort, France \\
45 Email:$\lbrace$ali.idness, karine.deschinkel, michel.salomon,raphael.couturier$\rbrace$@femto-st.fr}
46 %\email{\{ali.idness, karine.deschinkel, michel.salomon, raphael.couturier\}@univ-fcomte.fr}
48 %\IEEEauthorblockN{Homer Simpson}
49 %\IEEEauthorblockA{FEMTO-ST Institute, UMR CNRS, University of Franche-Comte, Belfort, France}
51 %\IEEEauthorblockN{James Kirk\\ and Montgomery Scott}
52 %\IEEEauthorblockA{FEMTO-ST Institute, UMR CNRS, University of Franche-Comte, Belfort, France}
58 One of the fundamental challenges in Wireless Sensor Networks (WSNs)
59 is coverage preservation and extension of the network lifetime
60 continuously and effectively when monitoring a certain area (or
61 region) of interest. In this paper a coverage optimization protocol to
62 improve the lifetime in heterogeneous energy wireless sensor networks
63 is proposed. The area of interest is first divided into subregions
64 using a divide-and-conquer method and then scheduling of sensor node
65 activity is planned for each subregion. The proposed scheduling
66 considers rounds during which a small number of nodes, remaining
67 active for sensing, is selected to ensure coverage. Each round
68 consists of four phases: (i)~Information Exchange, (ii)~Leader
69 Election, (iii)~Decision, and (iv)~Sensing. The decision process is
70 carried out by a leader node which solves an integer program.
71 Simulation results show that the proposed approach can prolong the
72 network lifetime and improve the coverage performance.
75 %\keywords{Area Coverage, Wireless Sensor Networks, lifetime Optimization, Distributed Protocol.}
77 \IEEEpeerreviewmaketitle
79 \section{Introduction}
80 \noindent Recent years have witnessed significant advances in wireless
81 communications and embedded micro-sensing MEMS technologies which have
82 made emerge wireless sensor networks as one of the most promising
83 technologies~\cite{asc02}. In fact, they present huge potential in
84 several domains ranging from health care applications to military
85 applications. A sensor network is composed of a large number of tiny
86 sensing devices deployed in a region of interest. Each device has
87 processing and wireless communication capabilities, which enable to
88 sense its environment, to compute, to store information and to deliver
89 report messages to a base station.
90 %These sensor nodes run on batteries with limited capacities. To achieve a long life of the network, it is important to conserve battery power. Therefore, lifetime optimisation is one of the most critical issues in wireless sensor networks.
91 One of the main design issues in Wireless Sensor Networks (WSNs) is to
92 prolong the network lifetime, while achieving acceptable quality of
93 service for applications. Indeed, sensor nodes have limited resources
94 in terms of memory, energy and computational power.
96 Since sensor nodes have limited battery life and without being able to
97 replace batteries, especially in remote and hostile environments, it
98 is desirable that a WSN should be deployed with high density because
99 spatial redundancy can then be exploited to increase the lifetime of
100 the network. In such a high density network, if all sensor nodes were
101 to be activated at the same time, the lifetime would be reduced. To
102 extend the lifetime of the network, the main idea is to take benefit
103 from the overlapping sensing regions of some sensor nodes to save
104 energy by turning off some of them during the sensing phase.
105 Obviously, the deactivation of nodes is only relevant if the coverage
106 of the monitored area is not affected. Consequently, future software
107 may need to adapt appropriately to achieve acceptable quality of
108 service for applications. In this paper we concentrate on area
109 coverage problem, with the objective of maximizing the network
110 lifetime by using an adaptive scheduling. The area of interest is
111 divided into subregions and an activity scheduling for sensor nodes is
112 planned for each subregion. Our scheduling scheme considers rounds,
113 where a round starts with a discovery phase to exchange information
114 between sensors of the subregion, in order to choose in suitable
115 manner a sensor node to carry out a coverage strategy. This coverage
116 strategy involves the resolution of an integer program which provides
117 the activation of the sensors for the sensing phase of the current
120 The remainder of the paper is organized as follows. The next section
122 reviews the related work in the field. Section~\ref{pd} is devoted to
123 the scheduling strategy for energy-efficient coverage.
124 Section~\ref{cp} gives the coverage model formulation which is used to
125 schedule the activation of sensors. Section~\ref{exp} shows the
126 simulation results obtained using the discrete event simulator on
127 OMNET++ \cite{varga}. They fully demonstrate the usefulness of the
128 proposed approach. Finally, we give concluding remarks and some
129 suggestions for future works in Section~\ref{sec:conclusion}.
131 \section{\uppercase{Related work}}
134 This section is dedicated to the various approaches proposed in the
135 literature for the coverage lifetime maximization problem, where the
136 objective is to optimally schedule sensors' activities in order to
137 extend network lifetime in a randomly deployed network. As this
138 problem is subject to a wide range of interpretations, we suggest to
139 recall main definitions and assumptions related to our work.
142 %\item Area Coverage: The main objective is to cover an area. The area coverage requires
143 %that the sensing range of working Active nodes cover the whole targeting area, which means any
144 %point in target area can be covered~\cite{Mihaela02,Raymond03}.
146 %\item Target Coverage: The objective is to cover a set of targets. Target coverage means that the discrete target points can be covered in any time. The sensing range of working Active nodes only monitors a finite number of discrete points in targeting area~\cite{Mihaela02,Raymond03}.
148 %\item Barrier Coverage An objective to determine the maximal support/breach paths that traverse a sensor field. Barrier coverage is expressed as finding one or more routes with starting position and ending position when the targets pass through the area deployed with sensor nodes~\cite{Santosh04,Ai05}.
152 The most discussed coverage problems in literature can be classified
153 into two types \cite{ma10}: area coverage (also called full or blanket
154 coverage) and target coverage. An area coverage problem is to find a
155 minimum number of sensors to work such that each physical point in the
156 area is within the sensing range of at least one working sensor node.
157 Target coverage problem is to cover only a finite number of discrete
158 points called targets. This type of coverage has mainly military
159 applications. Our work will concentrate on the area coverage by design
160 and implementation of a strategy which efficiently selects the active
161 nodes that must maintain both sensing coverage and network
162 connectivity and in the same time improve the lifetime of the wireless
163 sensor network. But requiring that all physical points of the
164 considered region are covered may be too strict, especially where the
165 sensor network is not dense. Our approach represents an area covered
166 by a sensor as a set of primary points and tries to maximize the total
167 number of primary points that are covered in each round, while
168 minimizing overcoverage (points covered by multiple active sensors
175 Various definitions exist for the lifetime of a sensor
176 network~\cite{die09}. Main definitions proposed in the literature are
177 related to the remaining energy of the nodes or to the percentage of
178 coverage. The lifetime of the network is mainly defined as the amount
179 of time that the network can satisfy its coverage objective (the
180 amount of time that the network can cover a given percentage of its
181 area or targets of interest). In this work, we assume that the network
182 is alive until all nodes have been drained of their energy or the
183 sensor network becomes disconnected, and we measure the coverage ratio
184 during the WSN lifetime. Network connectivity is important because an
185 active sensor node without connectivity towards a base station cannot
186 transmit information on an event in the area that it monitor.
188 {\bf Activity scheduling}
190 Activity scheduling is to schedule the activation and deactivation of
191 sensor nodes. The basic objective is to decide which sensors are in
192 what states (active or sleeping mode) and for how long, such that the
193 application coverage requirement can be guaranteed and the network
194 lifetime can be prolonged. Various approaches, including centralized,
195 distributed, and localized algorithms, have been proposed for activity
196 scheduling. In the distributed algorithms, each node in the network
197 autonomously makes decisions on whether to turn on or turn off itself
198 only using local neighbor information. In centralized algorithms, a
199 central controller (a node or base station) informs every sensor of
200 the time intervals to be activated.
202 {\bf Distributed approaches}
204 Some distributed algorithms have been developed
205 in~\cite{Gallais06,Tian02,Ye03,Zhang05,HeinzelmanCB02}. Distributed
206 algorithms typically operate in rounds for predetermined duration. At
207 the beginning of each round, a sensor exchange information with its
208 neighbors and makes a decision to either remain turned on or to go to
209 sleep for the round. This decision is basically based on simple greedy
210 criteria like the largest uncovered area
211 \cite{Berman05efficientenergy}, maximum uncovered targets
212 \cite{1240799}. In \cite{Tian02}, the scheduling scheme is divided
213 into rounds, where each round has a self-scheduling phase followed by
214 a sensing phase. Each sensor broadcasts a message containing node ID
215 and node location to its neighbors at the beginning of each round. A
216 sensor determines its status by a rule named off-duty eligible rule
217 which tells him to turn off if its sensing area is covered by its
218 neighbors. A back-off scheme is introduced to let each sensor delay
219 the decision process with a random period of time, in order to avoid
220 that nodes make conflicting decisions simultaneously and that a part
221 of the area is no longer covered.
222 \cite{Prasad:2007:DAL:1782174.1782218} defines a model for capturing
223 the dependencies between different cover sets and proposes localized
224 heuristic based on this dependency. The algorithm consists of two
225 phases, an initial setup phase during which each sensor calculates and
226 prioritize the covers and a sensing phase during which each sensor
227 first decides its on/off status, and then remains on or off for the
228 rest of the duration. Authors in \cite{chin2007} propose a novel
229 distributed heuristic named Distributed Energy-efficient Scheduling
230 for k-coverage (DESK) so that the energy consumption among all the
231 sensors is balanced, and network lifetime is maximized while the
232 coverage requirements is being maintained. This algorithm works in
233 round, requires only 1-sensing-hop-neighbor information, and a sensor
234 decides its status (active/sleep) based on its perimeter coverage
235 computed through the k-Non-Unit-disk coverage algorithm proposed in
236 \cite{Huang:2003:CPW:941350.941367}.
238 Some others approaches do not consider synchronized and predetermined
239 period of time where the sensors are active or not. Indeed, each
240 sensor maintains its own timer and its time wake-up is randomized
241 \cite{Ye03} or regulated \cite{cardei05} over time.
242 %A ecrire \cite{Abrams:2004:SKA:984622.984684}p33
244 %The scheduling information is disseminated throughout the network and only sensors in the active state are responsible
245 %for monitoring all targets, while all other nodes are in a low-energy sleep mode. The nodes decide cooperatively which of them will remain in sleep mode for a certain
248 %one way of increasing lifeteime is by turning off redundant nodes to sleep mode to conserve energy while active nodes provide essential coverage, which improves fault tolerance.
250 %In this paper we focus on centralized algorithms because distributed algorithms are outside the scope of our work. Note that centralized coverage algorithms have the advantage of requiring very low processing power from the sensor nodes which have usually limited processing capabilities. Moreover, a recent study conducted in \cite{pc10} concludes that there is a threshold in terms of network size to switch from a localized to a centralized algorithm. Indeed the exchange of messages in large networks may consume a considerable amount of energy in a localized approach compared to a centralized one.
252 {\bf Centralized approaches}
254 Power efficient centralized schemes differ according to several
255 criteria \cite{Cardei:2006:ECP:1646656.1646898}, such as the coverage
256 objective (target coverage or area coverage), the node deployment
257 method (random or deterministic) and the heterogeneity of sensor nodes
258 (common sensing range, common battery lifetime). The major approach is
259 to divide/organize the sensors into a suitable number of set covers
260 where each set completely covers an interest region and to activate
261 these set covers successively.
263 First algorithms proposed in the literature consider that the cover
264 sets are disjoint: a sensor node appears in exactly one of the
265 generated cover sets. For instance Slijepcevic and Potkonjak
266 \cite{Slijepcevic01powerefficient} propose an algorithm which
267 allocates sensor nodes in mutually independent sets to monitor an area
268 divided into several fields. Their algorithm constructs a cover set by
269 including in priority the sensor nodes which cover critical fields,
270 that is to say fields that are covered by the smallest number of
271 sensors. The time complexity of their heuristic is $O(n^2)$ where $n$
272 is the number of sensors. \cite{cardei02}~describes a graph coloring
273 technique to achieve energy savings by organizing the sensor nodes
274 into a maximum number of disjoint dominating sets which are activated
275 successively. The dominating sets do not guarantee the coverage of the
276 whole region of interest. Abrams et
277 al.~\cite{Abrams:2004:SKA:984622.984684} design three approximation
278 algorithms for a variation of the set k-cover problem, where the
279 objective is to partition the sensors into covers such that the number
280 of covers that include an area, summed over all areas, is maximized.
281 Their work builds upon previous work
282 in~\cite{Slijepcevic01powerefficient} and the generated cover sets do
283 not provide complete coverage of the monitoring zone.
285 %examine the target coverage problem by disjoint cover sets but relax the requirement that every cover set monitor all the targets and try to maximize the number of times the targets are covered by the partition. They propose various algorithms and establish approximation ratio.
287 In~\cite{Cardei:2005:IWS:1160086.1160098}, the authors propose a
288 heuristic to compute the disjoint set covers (DSC). In order to
289 compute the maximum number of covers, they first transform DSC into a
290 maximum-flow problem, which is then formulated as a mixed integer
291 programming problem (MIP). Based on the solution of the MIP, they
292 design a heuristic to compute the final number of covers. The results
293 show a slight performance improvement in terms of the number of
294 produced DSC in comparison to~\cite{Slijepcevic01powerefficient}, but
295 it incurs higher execution time due to the complexity of the mixed
296 integer programming resolution. %Cardei and Du
297 \cite{Cardei:2005:IWS:1160086.1160098} propose a method to efficiently
298 compute the maximum number of disjoint set covers such that each set
299 can monitor all targets. They first transform the problem into a
300 maximum flow problem which is formulated as a mixed integer
301 programming (MIP). Then their heuristic uses the output of the MIP to
302 compute disjoint set covers. Results show that these heuristic
303 provides a number of set covers slightly larger compared to
304 \cite{Slijepcevic01powerefficient} but with a larger execution time
305 due to the complexity of the mixed integer programming resolution.
306 Zorbas et al. \cite{Zorbas2007} present B\{GOP\}, a centralized
307 coverage algorithm introducing sensor candidate categorization
308 depending on their coverage status and the notion of critical target
309 to call targets that are associated with a small number of
310 sensors. The total running time of their heuristic is $0(m n^2)$ where
311 $n$ is the number of sensors, and $m$ the number of targets. Compared
312 to algorithm's results of Slijepcevic and Potkonjak
313 \cite{Slijepcevic01powerefficient}, their heuristic produces more
314 cover sets with a slight growth rate in execution time.
315 %More recently Manju and Pujari\cite{Manju2011}
317 In the case of non-disjoint algorithms \cite{Manju2011}, sensors may
318 participate in more than one cover set. In some cases this may
319 prolong the lifetime of the network in comparison to the disjoint
320 cover set algorithms, but designing algorithms for non-disjoint cover
321 sets generally induces a higher order of complexity. Moreover, in
322 case of a sensor's failure, non-disjoint scheduling policies are less
323 resilient and less reliable because a sensor may be involved in more
324 than one cover sets. For instance, Cardei et al.~\cite{cardei05bis}
325 present a linear programming (LP) solution and a greedy approach to
326 extend the sensor network lifetime by organizing the sensors into a
327 maximal number of non-disjoint cover sets. Simulation results show
328 that by allowing sensors to participate in multiple sets, the network
329 lifetime increases compared with related
330 work~\cite{Cardei:2005:IWS:1160086.1160098}. In~\cite{berman04}, the
331 authors have formulated the lifetime problem and suggested another
332 (LP) technique to solve this problem. A centralized provably near
333 optimal solution based on the Garg-K\"{o}nemann
334 algorithm~\cite{garg98} is also proposed.
336 {\bf Our contribution}
338 There are three main questions which should be addressed to build a
339 scheduling strategy. We give a brief answer to these three questions
340 to describe our approach before going into details in the subsequent
343 \item {\bf How must be planned the phases for information exchange,
344 decision and sensing over time?} Our algorithm divides the time
345 line into a number of rounds. Each round contains 4 phases:
346 Information Exchange, Leader Election, Decision, and Sensing.
348 \item {\bf What are the rules to decide which node has to be turned on
349 or off?} Our algorithm tends to limit the overcoverage of points of
350 interest to avoid turning on too much sensors covering the same
351 areas at the same time, and tries to prevent undercoverage. The
352 decision is a good compromise between these two conflicting
355 \item {\bf Which node should make such decision?} As mentioned in
356 \cite{pc10}, both centralized and distributed algorithms have their
357 own advantages and disadvantages. Centralized coverage algorithms
358 have the advantage of requiring very low processing power from the
359 sensor nodes which have usually limited processing capabilities.
360 Distributed algorithms are very adaptable to the dynamic and
361 scalable nature of sensors network. Authors in \cite{pc10} conclude
362 that there is a threshold in terms of network size to switch from a
363 localized to a centralized algorithm. Indeed the exchange of
364 messages in large networks may consume a considerable amount of
365 energy in a localized approach compared to a centralized one. Our
366 work does not consider only one leader to compute and to broadcast
367 the schedule decision to all the sensors. When the network size
368 increases, the network is divided in many subregions and the
369 decision is made by a leader in each subregion.
372 \section{\uppercase{Activity scheduling}}
375 We consider a randomly and uniformly deployed network consisting of
376 static wireless sensors. The wireless sensors are deployed in high
377 density to ensure initially a full coverage of the interested area. We
378 assume that all nodes are homogeneous in terms of communication and
379 processing capabilities and heterogeneous in term of energy provision.
380 The location information is available to the sensor node either
381 through hardware such as embedded GPS or through location discovery
382 algorithms. The area of interest can be divided using the
383 divide-and-conquer strategy into smaller areas called subregions and
384 then our coverage protocol will be implemented in each subregion
385 simultaneously. Our protocol works in rounds fashion as shown in
388 %Given the interested Area $A$, the wireless sensor nodes set $S=\lbrace s_1,\ldots,s_N \rbrace $ that are deployed randomly and uniformly in this area such that they are ensure a full coverage for A. The Area A is divided into regions $A=\lbrace A^1,\ldots,A^k,\ldots, A^{N_R} \rbrace$. We suppose that each sensor node $s_i$ know its location and its region. We will have a subset $SSET^k =\lbrace s_1,...,s_j,...,s_{N^k} \rbrace $ , where $s_N = s_{N^1} + s_{N^2} +,\ldots,+ s_{N^k} +,\ldots,+s_{N^R}$. Each sensor node $s_i$ has the same initial energy $IE_i$ in the first time and the current residual energy $RE_i$ equal to $IE_i$ in the first time for each $s_i$ in A. \\
392 \includegraphics[width=85mm]{FirstModel.eps} % 70mm
393 \caption{Multi-round coverage protocol}
397 Each round is divided into 4 phases : Information (INFO) Exchange,
398 Leader Election, Decision, and Sensing. For each round there is
399 exactly one set cover responsible for sensing task. This protocol is
400 more reliable against the unexpectedly node failure because it works
401 in rounds. On the one hand, if a node failure is detected before
402 taking the decision, the node will not participate to this phase, and,
403 on the other hand, if the node failure occurs after the decision, the
404 sensing task of the network will be affected temporarily: only during
405 the period of sensing until a new round starts, since a new set cover
406 will take charge of the sensing task in the next round. The energy
407 consumption and some other constraints can easily be taken into
408 account since the sensors can update and then exchange their
409 information (including their residual energy) at the beginning of each
410 round. However, the pre-sensing phases (INFO Exchange, Leader
411 Election, Decision) are energy consuming for some nodes, even when
412 they do not join the network to monitor the area. Below, we describe
413 each phase in more detail.
415 \subsection{\textbf INFOrmation Exchange Phase}
417 Each sensor node $j$ sends its position, remaining energy $RE_j$, and
418 the number of local neighbors $NBR_j$ to all wireless sensor nodes in
419 its subregion by using an INFO packet and then listens to the packets
420 sent from other nodes. After that, each node will have information
421 about all the sensor nodes in the subregion. In our model, the
422 remaining energy corresponds to the time that a sensor can live in the
425 %\subsection{\textbf Working Phase:}
427 %The working phase works in rounding fashion. Each round include 3 steps described as follow :
429 \subsection{\textbf Leader Election Phase}
430 This step includes choosing the Wireless Sensor Node Leader (WSNL)
431 which will be responsible of executing coverage algorithm. Each
432 subregion in the area of interest will select its own WSNL
433 independently for each round. All the sensor nodes cooperates to
434 select WSNL. The nodes in the same subregion will select the leader
435 based on the received information from all other nodes in the same
436 subregion. The selection criteria in order of priority are: larger
437 number of neighbors, larger remaining energy, and then in case of
438 equality, larger index.
440 \subsection{\textbf Decision Phase}
441 The WSNL will solve an integer program (see section~\ref{cp}) to
442 select which sensors will be activated in the following sensing phase
443 to cover the subregion. WSNL will send Active-Sleep packet to each
444 sensor in the subregion based on algorithm's results.
445 %The main goal in this step after choosing the WSNL is to produce the best representative active nodes set that will take the responsibility of covering the whole region $A^k$ with minimum number of sensor nodes to prolong the lifetime in the wireless sensor network. For our problem, in each round we need to select the minimum set of sensor nodes to improve the lifetime of the network and in the same time taking into account covering the region $A^k$ . We need an optimal solution with tradeoff between our two conflicting objectives.
446 %The above region coverage problem can be formulated as a Multi-objective optimization problem and we can use the Binary Particle Swarm Optimization technique to solve it.
448 \subsection{\textbf Sensing Phase}
449 Active sensors in the round will execute their sensing task to
450 preserve maximal coverage in the region of interest. We will assume
451 that the cost of keeping a node awake (or sleep) for sensing task is
452 the same for all wireless sensor nodes in the network. Each sensor
453 will receive an Active-Sleep packet from WSNL telling him to stay
454 awake or go sleep for a time equal to the period of sensing until
455 starting a new round.
457 %\subsection{Sensing coverage model}
460 %\noindent We try to produce an adaptive scheduling which allows sensors to operate alternatively so as to prolong the network lifetime. For convenience, the notations and assumptions are described first.
461 %The wireless sensor node use the binary disk sensing model by which each sensor node will has a certain sensing range is reserved within a circular disk called radius $R_s$.
462 \noindent We consider a boolean disk coverage model which is the most
463 widely used sensor coverage model in the literature. Each sensor has a
464 constant sensing range $R_s$. All space points within a disk centered
465 at the sensor with the radius of the sensing range is said to be
466 covered by this sensor. We also assume that the communication range is
467 at least twice of the sensing range. In fact, Zhang and
468 Zhou~\cite{Zhang05} prove that if the transmission range fulfills the
469 previous hypothesis, a complete coverage of a convex area implies
470 connectivity among the working nodes in the active mode.
471 %To calculate the coverage ratio for the area of interest, we can propose the following coverage model which is called Wireless Sensor Node Area Coverage Model to ensure that all the area within each node sensing range are covered. We can calculate the positions of the points in the circle disc of the sensing range of wireless sensor node based on the Unit Circle in figure~\ref{fig:cluster1}:
476 %%\includegraphics[scale=0.25]{fig1.pdf}\\ %& \includegraphics[scale=0.10]{1.pdf} \\
477 %%(A) Figure 1 & (B) Figure 2
479 %\caption{Unit Circle in radians. }
480 %\label{fig:cluster1}
483 %By using the Unit Circle in figure~\ref{fig:cluster1},
484 %We choose to representEach wireless sensor node will be represented into a selected number of primary points by which we can know if the sensor node is covered or not.
485 % Figure ~\ref{fig:cluster2} shows the selected primary points that represents the area of the sensor node and according to the sensing range of the wireless sensor node.
487 \noindent Instead of working with area coverage, we consider for each
488 sensor a set of points called primary points. We also assume that the
489 sensing disk defined by a sensor is covered if all primary points of
490 this sensor are covered.
494 %%\includegraphics[scale=0.25]{fig2.pdf}\\ %& \includegraphics[scale=0.10]{1.pdf} \\
495 %%(A) Figure 1 & (B) Figure 2
497 %\caption{Wireless Sensor Node Area Coverage Model.}
498 %\label{fig:cluster2}
500 By knowing the position (point center: ($p_x,p_y$)) of a wireless
501 sensor node and its $R_s$, we calculate the primary points directly
502 based on the proposed model. We use these primary points (that can be
503 increased or decreased if necessary) as references to ensure that the
504 monitored region of interest is covered by the selected set of
505 sensors, instead of using all points in the area.
507 \noindent We can calculate the positions of the selected primary
508 points in the circle disk of the sensing range of a wireless sensor
509 node (see figure~\ref{fig2}) as follows:\\
510 $(p_x,p_y)$ = point center of wireless sensor node\\
512 $X_2=( p_x + R_s * (1), p_y + R_s * (0) )$\\
513 $X_3=( p_x + R_s * (-1), p_y + R_s * (0)) $\\
514 $X_4=( p_x + R_s * (0), p_y + R_s * (1) )$\\
515 $X_5=( p_x + R_s * (0), p_y + R_s * (-1 )) $\\
516 $X_6= ( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (0)) $\\
517 $X_7=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (0))$\\
518 $X_8=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
519 $X_9=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
520 $X_{10}=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
521 $X_{11}=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
522 $X_{12}=( p_x + R_s * (0), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
523 $X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $.
527 % \begin{multicols}{6}
529 %\includegraphics[scale=0.10]{fig21.pdf}\\~ ~ ~(a)
530 %\includegraphics[scale=0.10]{fig22.pdf}\\~ ~ ~(b)
531 \includegraphics[scale=0.25]{principles13.eps}
532 %\includegraphics[scale=0.10]{fig25.pdf}\\~ ~ ~(d)
533 %\includegraphics[scale=0.10]{fig26.pdf}\\~ ~ ~(e)
534 %\includegraphics[scale=0.10]{fig27.pdf}\\~ ~ ~(f)
536 \caption{Wireless sensor node represented by 13 primary points}
540 \section{\uppercase{Coverage problem formulation}}
542 %We can formulate our optimization problem as energy cost minimization by minimize the number of active sensor nodes and maximizing the coverage rate at the same time in each $A^k$ . This optimization problem can be formulated as follow: Since that we use a homogeneous wireless sensor network, we will assume that the cost of keeping a node awake is the same for all wireless sensor nodes in the network. We can define the decision parameter $X_j$ as in \eqref{eq11}:\\
545 %To satisfy the coverage requirement, the set of the principal points that will represent all the sensor nodes in the monitored region as $PSET= \lbrace P_1,\ldots ,P_p, \ldots , P_{N_P^k} \rbrace $, where $N_P^k = N_{sp} * N^k $ and according to the proposed model in figure ~\ref{fig:cluster2}. These points can be used by the wireless sensor node leader which will be chosen in each region in A to build a new parameter $\alpha_{jp}$ that represents the coverage possibility for each principal point $P_p$ of each wireless sensor node $s_j$ in $A^k$ as in \eqref{eq12}:\\
547 \noindent Our model is based on the model proposed by
548 \cite{pedraza2006} where the objective is to find a maximum number of
549 disjoint cover sets. To accomplish this goal, authors propose an
550 integer program which forces undercoverage and overcoverage of targets
551 to become minimal at the same time. They use binary variables
552 $x_{jl}$ to indicate if sensor $j$ belongs to cover set $l$. In our
553 model, we consider binary variables $X_{j}$ which determine the
554 activation of sensor $j$ in the sensing phase of the round. We also
555 consider primary points as targets. The set of primary points is
556 denoted by $P$ and the set of sensors by $J$.
558 \noindent For a primary point $p$, let $\alpha_{jp}$ denote the
559 indicator function of whether the point $p$ is covered, that is:
561 \alpha_{jp} = \left \{
563 1 & \mbox{if the primary point $p$ is covered} \\
564 & \mbox{by sensor node $j$}, \\
565 0 & \mbox{otherwise.}\\
569 The number of sensors that are covering point $p$ is equal to
570 $\sum_{j \in J} \alpha_{jp} * X_{j}$ where:
574 1& \mbox{if sensor $j$ is active,} \\
575 0 & \mbox{otherwise.}\\
579 We define the Overcoverage variable $\Theta_{p}$ as:
581 \Theta_{p} = \left \{
583 0 & \mbox{if point $p$ is not covered,}\\
584 \left( \sum_{j \in J} \alpha_{jp} * X_{j} \right)- 1 & \mbox{otherwise.}\\
588 \noindent More precisely, $\Theta_{p}$ represents the number of active
589 sensor nodes minus one that cover the primary point $p$.\\
590 The Undercoverage variable $U_{p}$ of the primary point $p$ is defined
595 1 &\mbox{if point $p$ is not covered,} \\
596 0 & \mbox{otherwise.}\\
601 \noindent Our coverage optimization problem can then be formulated as follows\\
602 \begin{equation} \label{eq:ip2r}
605 \min \sum_{p \in P} (w_{\theta} \Theta_{p} + w_{U} U_{p})&\\
606 \textrm{subject to :}&\\
607 \sum_{j \in J} \alpha_{jp} X_{j} - \Theta_{p}+ U_{p} =1, &\forall p \in P\\
609 %\sum_{t \in T} X_{j,t} \leq \frac{RE_j}{e_t} &\forall j \in J \\
611 \Theta_{p}\in \mathbb{N} , &\forall p \in P\\
612 U_{p} \in \{0,1\}, &\forall p \in P \\
613 X_{j} \in \{0,1\}, &\forall j \in J
618 \item $X_{j}$ : indicates whether or not sensor $j$ is actively
619 sensing in the round (1 if yes and 0 if not);
620 \item $\Theta_{p}$ : {\it overcoverage}, the number of sensors minus
621 one that are covering point $p$;
622 \item $U_{p}$ : {\it undercoverage}, indicates whether or not point
623 $p$ is being covered (1 if not covered and 0 if covered).
626 The first group of constraints indicates that some point $p$ should be
627 covered by at least one sensor and, if it is not always the case,
628 overcoverage and undercoverage variables help balance the restriction
629 equation by taking positive values. There are two main objectives.
630 First we limit overcoverage of primary points in order to activate a
631 minimum number of sensors. Second we prevent that parts of the
632 subregion are not monitored by minimizing undercoverage. The weights
633 $w_\theta$ and $w_U$ must be properly chosen so as to guarantee that
634 the maximum number of points are covered during each round.
636 %In equation \eqref{eq15}, there are two main objectives: the first one using the Overcoverage parameter to minimize the number of active sensor nodes in the produced final solution vector $X$ which leads to improve the life time of wireless sensor network. The second goal by using the Undercoverage parameter to maximize the coverage in the region by means of covering each primary point in $SSET^k$.The two objectives are achieved at the same time. The constraint which represented in equation \eqref{eq16} refer to the coverage function for each primary point $P_p$ in $SSET^k$ , where each $P_p$ should be covered by
637 %at least one sensor node in $A^k$. The objective function in \eqref{eq15} involving two main objectives to be optimized simultaneously, where optimal decisions need to be taken in the presence of trade-offs between the two conflicting main objectives in \eqref{eq15} and this refer to that our coverage optimization problem is a multi-objective optimization problem and we can use the BPSO to solve it. The concept of Overcoverage and Undercoverage inspired from ~\cite{Fernan12} but we use it with our model as stated in subsection \ref{Sensing Coverage Model} with some modification to be applied later by BPSO.
638 %\subsection{Notations and assumptions}
641 %\item $m$ : the number of targets
642 %\item $n$ : the number of sensors
643 %\item $K$ : maximal number of cover sets
644 %\item $i$ : index of target ($i=1..m$)
645 %\item $j$ : index of sensor ($j=1..n$)
646 %\item $k$ : index of cover set ($k=1..K$)
647 %\item $T_0$ : initial set of targets
648 %\item $S_0$ : initial set of sensors
649 %\item $T $ : set of targets which are not covered by at least one cover set
650 %\item $S$ : set of available sensors
651 %\item $S_0(i)$ : set of sensors which cover the target $i$
652 %\item $T_0(j)$ : set of targets covered by sensor $j$
653 %\item $C_k$ : cover set of index $k$
654 %\item $T(C_k)$ : set of targets covered by the cover set $k$
655 %\item $NS(i)$ : set of available sensors which cover the target $i$
656 %\item $NC(i)$ : set of cover sets which do not cover the target $i$
657 %\item $|.|$ : cardinality of the set
661 \section{\uppercase{Simulation Results}}
664 In this section, we conducted a series of simulations, to evaluate the
665 efficiency and relevance of our approach, using the discrete event
666 simulator OMNeT++ \cite{varga}. We performed simulations for five
667 different densities varying from 50 to 250~nodes. Experimental results
668 were obtained from randomly generated networks in which nodes are
669 deployed over a $(50 \times 25)~m^2 $ sensing field. For each network
670 deployment, we assume that the deployed nodes can fully cover the
671 sensing field with the given sensing range. 10 simulation runs are
672 performed with different network topologies for each node density.
673 The results presented hereafter are the average of these 10 runs. A
674 simulation ends when all the nodes are dead or the sensor network
675 becomes disconnected (some nodes may not be able to sent to a base
676 station an event they sense).
678 Our proposed coverage protocol uses the radio energy dissipation model
679 defined by~\cite{HeinzelmanCB02} as energy consumption model for each
680 wireless sensor node when transmitting or receiving packets. The
681 energy of each node in a network is initialized randomly within the
682 range 24-60~joules, and each sensor node will consume 0.2 watts during
683 the sensing period which will have a duration of 60 seconds. Thus, an
684 active node will consume 12~joules during sensing phase, while a
685 sleeping node will use 0.002 joules. Each sensor node will not
686 participate in the next round if it's remaining energy is less than 12
687 joules. In all experiments the parameters are set as follows:
688 $R_s=5m$, $w_{\Theta}=1$, and $w_{U}=|P^2|$.
690 We evaluate the efficiency of our approach using some performance
691 metrics such as: coverage ratio, number of active nodes ratio, energy
692 saving ratio, energy consumption, network lifetime, execution time,
693 and number of stopped simulation runs. Our approach called Strategy~2
694 (with Two Leaders) works with two subregions, each one having a size
695 of $(25 \times 25)~m^2$. Our strategy will be compared with two other
696 approaches. The first one, called Strategy~1 (with One Leader), works
697 as Strategy~2, but considers only one region of $(50 \times 25)$ $m^2$
698 with only one leader. The other approach, called Simple Heuristic,
699 consists in dividing uniformly the region into squares of $(5 \times
700 5)~m^2$. During the decision phase, in each square, a sensor is
701 randomly chosen, it will remain turned on for the coming sensing
704 \subsection{The impact of the Number of Rounds on Coverage Ratio}
706 In this experiment, the coverage ratio measures how much the area of a
707 sensor field is covered. In our case, the coverage ratio is regarded
708 as the number of primary points covered among the set of all primary
709 points within the field. Figure~\ref{fig3} shows the impact of the
710 number of rounds on the average coverage ratio for 150 deployed nodes
711 for the three approaches. It can be seen that the three approaches
712 give similar coverage ratios during the first rounds. From the
713 9th~round the coverage ratio decreases continuously with the simple
714 heuristic, while the other two strategies provide superior coverage to
715 $90\%$ for five more rounds. Coverage ratio decreases when the number
716 of rounds increases due to dead nodes. Although some nodes are dead,
717 thanks to strategy~1 or~2, other nodes are preserved to ensure the
718 coverage. Moreover, when we have a dense sensor network, it leads to
719 maintain the full coverage for larger number of rounds. Strategy~2 is
720 slightly more efficient that strategy 1, because strategy~2 subdivides
721 the region into 2~subregions and if one of the two subregions becomes
722 disconnected, coverage may be still ensured in the remaining
728 \includegraphics[scale=0.55]{TheCoverageRatio150.eps} %\\~ ~ ~(a)
729 \caption{The impact of the Number of Rounds on Coverage Ratio for 150 deployed nodes}
733 \subsection{The impact of the Number of Rounds on Active Sensors Ratio}
735 It is important to have as few active nodes as possible in each round,
736 in order to minimize the communication overhead and maximize the
737 network lifetime. This point is assessed through the Active Sensors
738 Ratio, which is defined as follows:
741 \mbox{ASR}(\%) = \frac{\mbox{Number of active sensors
742 during the current sensing phase}}{\mbox{Total number of sensors in the network
743 for the region}} \times 100.
745 Figure~\ref{fig4} shows the average active nodes ratio versus rounds
746 for 150 deployed nodes.
750 \includegraphics[scale=0.55]{TheActiveSensorRatio150.eps} %\\~ ~ ~(a)
751 \caption{The impact of the Number of Rounds on Active Sensors Ratio for 150 deployed nodes }
755 The results presented in figure~\ref{fig4} show the superiority of
756 both proposed strategies, the Strategy with Two Leaders and the one
757 with a single Leader, in comparison with the Simple Heuristic. The
758 Strategy with One Leader uses less active nodes than the Strategy with
759 Two Leaders until the last rounds, because it uses central control on
760 the whole sensing field. The advantage of the Strategy~2 approach is
761 that even if a network is disconnected in one subregion, the other one
762 usually continues the optimization process, and this extends the
763 lifetime of the network.
765 \subsection{The impact of the Number of Rounds on Energy Saving Ratio}
767 In this experiment, we consider a performance metric linked to energy.
768 This metric, called Energy Saving Ratio, is defined by:
771 \mbox{ESR}(\%) = \frac{\mbox{Number of alive sensors during this round}}
772 {\mbox{Total number of sensors in the network for the region}} \times 100.
774 The longer the ratio is high, the more redundant sensor nodes are
775 switched off, and consequently the longer the network may be alive.
776 Figure~\ref{fig5} shows the average Energy Saving Ratio versus rounds
777 for all three approaches and for 150 deployed nodes.
781 % \begin{multicols}{6}
783 \includegraphics[scale=0.55]{TheEnergySavingRatio150.eps} %\\~ ~ ~(a)
784 \caption{The impact of the Number of Rounds on Energy Saving Ratio for 150 deployed nodes}
788 The simulation results show that our strategies allow to efficiently
789 save energy by turning off some sensors during the sensing phase. As
790 expected, the Strategy with One Leader is usually slightly better than
791 the second strategy, because the global optimization permit to turn
792 off more sensors. Indeed, when there are two subregions more nodes
793 remain awake near the border shared by them. Note that again as the
794 number of rounds increase the two leader strategy becomes the most
795 performing, since its takes longer to have the two subregion networks
796 simultaneously disconnected.
798 \subsection{The Network Lifetime}
800 We have defined the network lifetime as the time until all nodes have
801 been drained of their energy or each sensor network monitoring a area
802 becomes disconnected. In figure~\ref{fig6}, the network lifetime for
803 different network sizes and for the three approaches is illustrated.
807 % \begin{multicols}{6}
809 \includegraphics[scale=0.5]{TheNetworkLifetime.eps} %\\~ ~ ~(a)
810 \caption{The Network Lifetime }
814 As highlighted by figure~\ref{fig6}, the network lifetime obviously
815 increases when the size of the network increase, with our approaches
816 that lead to the larger lifetime improvement. By choosing for each
817 round the well suited nodes to cover the region of interest and by
818 leaving sleep the other ones to be used later in next rounds, both
819 proposed strategies efficiently prolong the lifetime. Comparison shows
820 that the larger the sensor number, the more our strategies outperform
821 the heuristic. Strategy~2, which uses two leaders, is the best one
822 because it is robust to network disconnection in one subregion. It
823 also means that distributing the algorithm in each node and
824 subdividing the sensing field into many subregions, which are managed
825 independently and simultaneously, is the most relevant way to maximize
826 the lifetime of a network.
828 \subsection{The Energy Consumption}
830 In this experiment, we study the effect of the multi-hop communication
831 protocol on the performance of the Strategy with Two Leaders and
832 compare it with the other two approaches. The average energy
833 consumption resulting from wireless communications is calculated
834 considering the energy spent by all the nodes when transmitting and
835 receiving packets during the network lifetime. This average value,
836 which is obtained for 10~simulation runs, is then divided by the
837 average number of rounds to define a metric allowing a fair comparison
838 between networks having different densities.
840 Figure~\ref{fig7} illustrates the Energy Consumption for the different
841 network sizes and the three approaches. The results show that the
842 Strategy with Two Leaders is the most competitive from energy
843 consumption point of view. A centralized method, like the Strategy
844 with One Leader, has a high energy consumption due to the many
845 communications. In fact, a distributed method greatly reduces the
846 number of communications thanks to the partitioning of the initial
847 network in several independent subnetworks. Let us notice that even if
848 a centralized method consumes far more energy than the simple
849 heuristic, since the energy cost of communications during a round is a
850 small part of the energy spent in the sensing phase, the
851 communications have a small impact on the lifetime.
855 \includegraphics[scale=0.55]{TheEnergyConsumption.eps}
856 \caption{The Energy Consumption }
860 \subsection{The impact of Number of Sensors on Execution Time}
862 A sensor node has limited energy resources and computing power,
863 therefore it is important that the proposed algorithm has the shortest
864 possible execution time. The energy of a sensor node must be mainly
865 used for the sensing phase, not for the pre-sensing ones.
866 Table~\ref{table1} gives the average execution times on a laptop of
867 the decision phase during one round. They are given for the different
868 approaches and various numbers of sensors. The lack of any
869 optimization explains why the heuristic has very low execution times.
870 Conversely, the Strategy with One Leader which requires to solve an
871 optimization problem considering all the nodes presents redhibitory
872 execution times. Moreover, increasing of 50~nodes the network size
873 multiplies the time by almost a factor of 10. The Strategy with Two
874 Leaders has more suitable times. We think that in distributed fashion
875 the solving of the optimization problem in a subregion can be tackled
876 by sensor nodes. Overall, to be able deal with very large networks a
877 distributed method is clearly required.
880 \caption{The Execution Time(s) vs The Number of Sensors }
884 % used for centering table
885 \begin{tabular}{|c|c|c|c|}
886 % centered columns (4 columns)
888 %inserts double horizontal lines
889 Sensors Number & Strategy & Strategy & Simple Heuristic \\ [0.5ex]
890 & (with Two Leaders) & (with One Leader) & \\ [0.5ex]
891 %Case & Strategy (with Two Leaders) & Strategy (with One Leader) & Simple Heuristic \\ [0.5ex]
895 % inserts single horizontal line
896 50 & 0.097 & 0.189 & 0.001 \\
897 % inserting body of the table
899 100 & 0.419 & 1.972 & 0.0032 \\
901 150 & 1.295 & 13.098 & 0.0032 \\
903 200 & 4.54 & 169.469 & 0.0046 \\
905 250 & 12.252 & 1581.163 & 0.0056 \\
906 % [1ex] adds vertical space
911 % is used to refer this table in the text
914 \subsection{The Number of Stopped Simulation Runs}
916 Finally, we will study the number of simulation which stopped due to
917 network disconnection, per round for each of the three approaches.
918 Figure~\ref{fig8} illustrates the number of stopped simulation runs
919 per round for 150 deployed nodes. It can be observed that the
920 heuristic is the approach which stops the earlier because the nodes
921 are chosen randomly. Among the two proposed strategies, the
922 centralized one first exhibits network disconnection. Thus, as
923 explained previously, in case of the strategy with several subregions
924 the optimization effectively continues as long as a network in a
925 subregion is still connected. This longer partial coverage
926 optimization participates in extending the lifetime.
930 \includegraphics[scale=0.55]{TheNumberofStoppedSimulationRuns150.eps}
931 \caption{The Number of Stopped Simulation Runs against Rounds for 150 deployed nodes }
935 \section{\uppercase{Conclusions and Future Works}}
936 \label{sec:conclusion}
938 In this paper, we have addressed the problem of coverage and lifetime
939 optimization in wireless sensor networks. This is a key issue as
940 sensor nodes have limited resources in terms of memory, energy and
941 computational power. To cope with this problem, the field of sensing
942 is divided into smaller subregions using the concept of
943 divide-and-conquer method, and then a multi-rounds coverage protocol
944 will optimize coverage and lifetime performances in each subregion.
945 The proposed protocol combines two efficient techniques: network
946 Leader Election and sensor activity scheduling, where the challenges
947 include how to select the most efficient leader in each subregion and
948 the best representative active nodes that will optimize the lifetime
949 while taking the responsibility of covering the corresponding
950 subregion. The network lifetime in each subregion is divided into
951 rounds, each round consists of four phases: (i) Information Exchange,
952 (ii) Leader Election, (iii) an optimization-based Decision in order to
953 select the nodes remaining active for the last phase, and (iv)
954 Sensing. The simulations results show the relevance of the proposed
955 protocol in terms of lifetime, coverage ratio, active sensors Ratio,
956 energy saving, energy consumption, execution time, and the number of
957 stopped simulation runs due to network disconnection. Indeed, when
958 dealing with large and dense wireless sensor networks, a distributed
959 approach like the one we propose allows to reduce the difficulty of a
960 single global optimization problem by partitioning it in many smaller
961 problems, one per subregion, that can be solved more easily. In
962 future, we plan to study and propose a coverage protocol which
963 computes all active sensor schedules in a single round, using
964 optimization methods such as swarms optimization or evolutionary
965 algorithms. The computation of all cover sets in one round is far more
966 difficult, but will reduce the communication overhead.
968 % use section* for acknowledgement
969 %\section*{Acknowledgment}
971 \bibliographystyle{IEEEtran}
972 \bibliography{bare_conf}