1 \documentclass[conference]{IEEEtran}
9 \hyphenation{op-tical net-works semi-conduc-tor}
14 \usepackage{times,amssymb,amsmath,latexsym}
19 \usepackage{algorithmic}
20 \usepackage[T1]{fontenc}
22 %\usepackage{algorithm}
23 %\usepackage{algpseudocode}
24 %\usepackage{algorithmwh}
25 \usepackage{subfigure}
28 \usepackage[linesnumbered,ruled,vlined,commentsnumbered]{algorithm2e}
33 \usepackage{graphicx,epstopdf}
34 \epstopdfsetup{suffix=}
35 \DeclareGraphicsExtensions{.ps}
36 \DeclareGraphicsRule{.ps}{pdf}{.pdf}{`ps2pdf -dEPSCrop -dNOSAFER #1 \noexpand\OutputFile}
40 %\title{ Coverage and Lifetime Optimization in Heterogeneous Energy Wireless Sensor Networks}
41 \title{Coverage and Lifetime Optimization in Heterogeneous Energy Wireless Sensor Networks}
42 %Activity Scheduling for Coverage and Lifetime Optimization in Wireless Sensor Networks}
44 % author names and affiliations
45 % use a multiple column layout for up to three different
47 \author{\IEEEauthorblockN{Ali Kadhum Idrees, Karine Deschinkel, Michel Salomon, and Rapha\"el Couturier}
48 \IEEEauthorblockA{FEMTO-ST Institute, UMR 6174 CNRS \\
49 University of Franche-Comt\'e, Belfort, France \\
50 Email: ali.idness@edu.univ-fcomte.fr, $\lbrace$karine.deschinkel, michel.salomon, raphael.couturier$\rbrace$@univ-fcomte.fr}
51 %\email{\{ali.idness, karine.deschinkel, michel.salomon, raphael.couturier\}@univ-fcomte.fr}
53 %\IEEEauthorblockN{Homer Simpson}
54 %\IEEEauthorblockA{FEMTO-ST Institute, UMR CNRS, University of Franche-Comte, Belfort, France}
56 %\IEEEauthorblockN{James Kirk\\ and Montgomery Scott}
57 %\IEEEauthorblockA{FEMTO-ST Institute, UMR CNRS, University of Franche-Comte, Belfort, France}
63 One of the fundamental challenges in Wireless Sensor Networks (WSNs)
64 is the coverage preservation and the extension of the network lifetime
65 continuously and effectively when monitoring a certain area (or
66 region) of interest. In this paper, a coverage optimization protocol to
67 improve the lifetime in heterogeneous energy wireless sensor networks
68 is proposed. The area of interest is first divided into subregions
69 using a divide-and-conquer method and then the scheduling of sensor node
70 activity is planned for each subregion. The proposed scheduling
71 considers rounds during which a small number of nodes, remaining
72 active for sensing, is selected to ensure coverage. Each round
73 consists of four phases: (i)~Information Exchange, (ii)~Leader
74 Election, (iii)~Decision, and (iv)~Sensing. The decision process is
75 carried out by a leader node, which solves an integer program.
76 Simulation results show that the proposed approach can prolong the
77 network lifetime and improve the coverage performance.
81 Area Coverage, Network lifetime, Optimization, Scheduling, Distributed Protocol.
83 %\keywords{Area Coverage, Network lifetime, Optimization, Distributed Protocol}
85 \IEEEpeerreviewmaketitle
87 \section{Introduction}
89 \noindent The fast developments in the low-cost sensor devices and wireless communications have allowed the emergence the WSNs. WSN includes a large number of small , limited-power sensors that can sense, process and transmit
90 data over a wireless communication . They communicate with each other by using multi-hop wireless communications , cooperate together to monitor the area of interest, and the measured data can be reported
91 to a monitoring center
92 called, sink, for analysis it~\cite{Ammari01, Sudip03}. There are several applications used the WSN including health, home, environmental, military,and industrial applications~\cite{Akyildiz02}.
93 The coverage problem is one of the fundamental challenges in WSNs~\cite{Nayak04} that consists in monitoring efficiently and continuously the area of interest. The limited energy of sensors represents the main challenge in the WSNs design~\cite{Ammari01}, where it is difficult to replace and/or
94 recharge their batteries because the the area of interest nature (such as hostile environments) and the cost. So, it is necessary that a WSN deployed with high density because spatial redundancy can then be exploited to increase the lifetime of the network . However, turn on all the sensor nodes, which monitor the same region at the same time leads to decrease the lifetime of the network. To extend the lifetime of the network, the main idea is to take advantage of the overlapping sensing regions of some sensor nodes to save energy by turning off some of them during the sensing phase~\cite{Misra05}. WSNs require energy-efficient solutions to improve the network lifetime that is constrained by the limited power of each sensor node ~\cite{Akyildiz02}.
95 In this paper, we concentrate on the area
96 coverage problem, with the objective of maximizing the network
97 lifetime by using an adaptive scheduling. The area of interest is
98 divided into subregions and an activity scheduling for sensor nodes is
99 planned for each subregion.
100 In fact, the nodes in a subregion can be seen as a cluster where
101 each node sends sensing data to the cluster head or the sink node.
102 Furthermore, the activities in a subregion/cluster can continue even
103 if another cluster stops due to too many node failures.
104 Our scheduling scheme considers rounds, where a round starts with a
105 discovery phase to exchange information between sensors of the
106 subregion, in order to choose in a suitable manner a sensor node to
107 carry out a coverage strategy. This coverage strategy involves the
108 solving of an integer program, which provides the activation of the
109 sensors for the sensing phase of the current round.
111 The remainder of the paper is organized as follows. The next section
113 reviews the related work in the field. Section~\ref{pd} is devoted to
114 the scheduling strategy for energy-efficient coverage.
115 Section~\ref{cp} gives the coverage model formulation, which is used to
116 schedule the activation of sensors. Section~\ref{exp} shows the
117 simulation results obtained using the discrete event simulator OMNeT++ \cite{varga}. They fully demonstrate the usefulness of the
118 proposed approach. Finally, we give concluding remarks and some
119 suggestions for future works in Section~\ref{sec:conclusion}.
121 \section{Related works}
124 \noindent This section is dedicated to the various approaches proposed
125 in the literature for the coverage lifetime maximization problem,
126 where the objective is to optimally schedule sensors' activities in
127 order to extend network lifetime in a randomly deployed network. As
128 this problem is subject to a wide range of interpretations, we have chosen
129 to recall the main definitions and assumptions related to our work.
132 %\item Area Coverage: The main objective is to cover an area. The area coverage requires
133 %that the sensing range of working Active nodes cover the whole targeting area, which means any
134 %point in target area can be covered~\cite{Mihaela02,Raymond03}.
136 %\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}.
138 %\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}.
140 \subsection{Coverage}
143 The most discussed coverage problems in literature can be classified
144 into two types \cite{ma10}: area coverage (also called full or blanket
145 coverage) and target coverage. An area coverage problem is to find a
146 minimum number of sensors to work, such that each physical point in the
147 area is within the sensing range of at least one working sensor node.
148 Target coverage problem is to cover only a finite number of discrete
149 points called targets. This type of coverage has mainly military
150 applications. Our work will concentrate on the area coverage by design
151 and implementation of a strategy, which efficiently selects the active
152 nodes that must maintain both sensing coverage and network
153 connectivity and at the same time improve the lifetime of the wireless
154 sensor network. But, requiring that all physical points of the
155 considered region are covered may be too strict, especially where the
156 sensor network is not dense. Our approach represents an area covered
157 by a sensor as a set of primary points and tries to maximize the total
158 number of primary points that are covered in each round, while
159 minimizing overcoverage (points covered by multiple active sensors
162 \subsection{Lifetime}
165 Various definitions exist for the lifetime of a sensor
166 network~\cite{die09}. The main definitions proposed in the literature are
167 related to the remaining energy of the nodes or to the coverage percentage.
168 The lifetime of the network is mainly defined as the amount
169 of time during which the network can satisfy its coverage objective (the
170 amount of time that the network can cover a given percentage of its
171 area or targets of interest). In this work, we assume that the network
172 is alive until all nodes have been drained of their energy or the
173 sensor network becomes disconnected, and we measure the coverage ratio
174 during the WSN lifetime. Network connectivity is important because an
175 active sensor node without connectivity towards a base station cannot
176 transmit information on an event in the area that it monitors.
178 \subsection{Activity scheduling}
179 %{\bf Activity scheduling}
181 Activity scheduling is to schedule the activation and deactivation of
182 sensor nodes. The basic objective is to decide which sensors are in
183 what states (active or sleeping mode) and for how long, so that the
184 application coverage requirement can be guaranteed and the network
185 lifetime can be prolonged. Various approaches, including centralized,
186 distributed, and localized algorithms, have been proposed for activity
187 scheduling. In distributed algorithms, each node in the network
188 autonomously makes decisions on whether to turn on or turn off itself
189 only using local neighbor information. In centralized algorithms, a
190 central controller (a node or base station) informs every sensors of
191 the time intervals to be activated.
193 \subsection{Distributed approaches}
194 %{\bf Distributed approaches}
196 Some distributed algorithms have been developed
197 in~\cite{Gallais06,Tian02,Ye03,Zhang05,HeinzelmanCB02} to perform the
198 scheduling. Distributed algorithms typically operate in rounds for
199 a predetermined duration. At the beginning of each round, a sensor
200 exchanges information with its neighbors and makes a decision to either
201 remain turned on or to go to sleep for the round. This decision is
202 basically made on simple greedy criteria like the largest uncovered
203 area \cite{Berman05efficientenergy}, maximum uncovered targets
204 \cite{1240799}. In \cite{Tian02}, the scheduling scheme is divided
205 into rounds, where each round has a self-scheduling phase followed by
206 a sensing phase. Each sensor broadcasts a message containing the node ID
207 and the node location to its neighbors at the beginning of each round. A
208 sensor determines its status by a rule named off-duty eligible rule,
209 which tells him to turn off if its sensing area is covered by its
210 neighbors. A back-off scheme is introduced to let each sensor delay
211 the decision process with a random period of time, in order to avoid
212 simultaneous conflicting decisions between nodes and lack of coverage on any area.
213 \cite{Prasad:2007:DAL:1782174.1782218} defines a model for capturing
214 the dependencies between different cover sets and proposes localized
215 heuristic based on this dependency. The algorithm consists of two
216 phases, an initial setup phase during which each sensor computes and
217 prioritizes the covers and a sensing phase during which each sensor
218 first decides its on/off status, and then remains on or off for the
219 rest of the duration. Authors in \cite{chin2007} propose a novel
220 distributed heuristic named Distributed Energy-efficient Scheduling
221 for k-coverage (DESK) so that the energy consumption among all the
222 sensors is balanced, and network lifetime is maximized while the
223 coverage requirement is being maintained. This algorithm works in
224 round, requires only 1-sensing-hop-neighbor information, and a sensor
225 decides its status (active/sleep) based on its perimeter coverage
226 computed through the k-Non-Unit-disk coverage algorithm proposed in
227 \cite{Huang:2003:CPW:941350.941367}.
229 Some other approaches do not consider a synchronized and predetermined
230 period of time where the sensors are active or not. Indeed, each
231 sensor maintains its own timer and its wake-up time is randomized
232 \cite{Ye03} or regulated \cite{cardei05} over time.
233 %A ecrire \cite{Abrams:2004:SKA:984622.984684}p33
235 %The scheduling information is disseminated throughout the network and only sensors in the active state are responsible
236 %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
239 %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.
241 %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.
243 \subsection{Centralized approaches}
244 %{\bf Centralized approaches}
246 Power efficient centralized schemes differ according to several
247 criteria \cite{Cardei:2006:ECP:1646656.1646898}, such as the coverage
248 objective (target coverage or area coverage), the node deployment
249 method (random or deterministic) and the heterogeneity of sensor nodes
250 (common sensing range, common battery lifetime). The major approach is
251 to divide/organize the sensors into a suitable number of set covers
252 where each set completely covers an interest region and to activate
253 these set covers successively.
255 The first algorithms proposed in the literature consider that the cover
256 sets are disjoint: a sensor node appears in exactly one of the
257 generated cover sets. For instance, Slijepcevic and Potkonjak
258 \cite{Slijepcevic01powerefficient} propose an algorithm, which
259 allocates sensor nodes in mutually independent sets to monitor an area
260 divided into several fields. Their algorithm builds a cover set by
261 including in priority the sensor nodes, which cover critical fields,
262 that is to say fields that are covered by the smallest number of
263 sensors. The time complexity of their heuristic is $O(n^2)$ where $n$
264 is the number of sensors. In~\cite{cardei02}, a graph coloring
265 technique is described to achieve energy savings by organizing the sensor nodes
266 into a maximum number of disjoint dominating sets, which are activated
267 successively. The dominating sets do not guarantee the coverage of the
268 whole region of interest. Abrams et
269 al.~\cite{Abrams:2004:SKA:984622.984684} design three approximation
270 algorithms for a variation of the set k-cover problem, where the
271 objective is to partition the sensors into covers such that the number
272 of covers that includes an area, summed over all areas, is maximized.
273 Their work builds upon previous work
274 in~\cite{Slijepcevic01powerefficient} and the generated cover sets do
275 not provide complete coverage of the monitoring zone.
277 %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.
279 In~\cite{Cardei:2005:IWS:1160086.1160098}, the authors propose a
280 heuristic to compute the disjoint set covers (DSC). In order to
281 compute the maximum number of covers, they first transform DSC into a
282 maximum-flow problem, which is then formulated as a mixed integer
283 programming problem (MIP). Based on the solution of the MIP, they
284 design a heuristic to compute the final number of covers. The results
285 show a slight performance improvement in terms of the number of
286 produced DSC in comparison to~\cite{Slijepcevic01powerefficient}, but
287 it incurs higher execution time due to the complexity of the mixed
288 integer programming solving. %Cardei and Du
289 \cite{Cardei:2005:IWS:1160086.1160098} propose a method to efficiently
290 compute the maximum number of disjoint set covers such that each set
291 can monitor all targets. They first transform the problem into a
292 maximum flow problem, which is formulated as a mixed integer
293 programming (MIP). Then their heuristic uses the output of the MIP to
294 compute disjoint set covers. Results show that this heuristic
295 provides a number of set covers slightly larger compared to
296 \cite{Slijepcevic01powerefficient} but with a larger execution time
297 due to the complexity of the mixed integer programming resolution.
298 Zorbas et al. \cite{Zorbas2007} present B\{GOP\}, a centralized
299 coverage algorithm introducing sensor candidate categorization
300 depending on their coverage status and the notion of critical target
301 to call targets that are associated with a small number of
302 sensors. The total running time of their heuristic is $0(m n^2)$ where
303 $n$ is the number of sensors, and $m$ the number of targets. Compared
304 to algorithm's results of Slijepcevic and Potkonjak
305 \cite{Slijepcevic01powerefficient}, their heuristic produces more
306 cover sets with a slight growth rate in execution time.
307 %More recently Manju and Pujari\cite{Manju2011}
309 In the case of non-disjoint algorithms \cite{Manju2011}, sensors may
310 participate in more than one cover set. In some cases, this may
311 prolong the lifetime of the network in comparison to the disjoint
312 cover set algorithms, but designing algorithms for non-disjoint cover
313 sets generally induces a higher order of complexity. Moreover, in
314 case of a sensor's failure, non-disjoint scheduling policies are less
315 resilient and less reliable because a sensor may be involved in more
316 than one cover sets. For instance, Cardei et al.~\cite{cardei05bis}
317 present a linear programming (LP) solution and a greedy approach to
318 extend the sensor network lifetime by organizing the sensors into a
319 maximal number of non-disjoint cover sets. Simulation results show
320 that by allowing sensors to participate in multiple sets, the network
321 lifetime increases compared with related
322 work~\cite{Cardei:2005:IWS:1160086.1160098}. In~\cite{berman04}, the
323 authors have formulated the lifetime problem and suggested another
324 (LP) technique to solve this problem. A centralized solution based on the Garg-K\"{o}nemann
325 algorithm~\cite{garg98}, provably near
326 the optimal solution, is also proposed.
328 \subsection{Our contribution}
329 %{\bf Our contribution}
331 There are three main questions, which should be addressed to build a
332 scheduling strategy. We give a brief answer to these three questions
333 to describe our approach before going into details in the subsequent
336 \item {\bf How must the phases for information exchange, decision and
337 sensing be planned over time?} Our algorithm divides the time line
338 into a number of rounds. Each round contains 4 phases: Information
339 Exchange, Leader Election, Decision, and Sensing.
341 \item {\bf What are the rules to decide which node has to be turned on
342 or off?} Our algorithm tends to limit the overcoverage of points of
343 interest to avoid turning on too many sensors covering the same
344 areas at the same time, and tries to prevent undercoverage. The
345 decision is a good compromise between these two conflicting
348 \item {\bf Which node should make such a decision?} As mentioned in
349 \cite{pc10}, both centralized and distributed algorithms have their
350 own advantages and disadvantages. Centralized coverage algorithms
351 have the advantage of requiring very low processing power from the
352 sensor nodes, which have usually limited processing capabilities.
353 Distributed algorithms are very adaptable to the dynamic and
354 scalable nature of sensors network. Authors in \cite{pc10} conclude
355 that there is a threshold in terms of network size to switch from a
356 localized to a centralized algorithm. Indeed, the exchange of
357 messages in large networks may consume a considerable amount of
358 energy in a centralized approach compared to a distributed one. Our
359 work does not consider only one leader to compute and to broadcast
360 the scheduling decision to all the sensors. When the network size
361 increases, the network is divided into many subregions and the
362 decision is made by a leader in each subregion.
365 \section{Activity scheduling}
368 We consider a randomly and uniformly deployed network consisting of
369 static wireless sensors. The wireless sensors are deployed in high
370 density to ensure initially a full coverage of the interested area. We
371 assume that all nodes are homogeneous in terms of communication and
372 processing capabilities and heterogeneous in term of energy provision.
373 The location information is available to the sensor node either
374 through hardware such as embedded GPS or through location discovery
375 algorithms. The area of interest can be divided using the
376 divide-and-conquer strategy into smaller areas called subregions and
377 then our coverage protocol will be implemented in each subregion
378 simultaneously. Our protocol works in rounds fashion as shown in
381 %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. \\
385 \includegraphics[width=85mm]{FirstModel.eps} % 70mm
386 \caption{Multi-round coverage protocol}
390 Each round is divided into 4 phases : Information (INFO) Exchange,
391 Leader Election, Decision, and Sensing. For each round there is
392 exactly one set cover responsible for the sensing task. This protocol is
393 more reliable against an unexpected node failure because it works
394 in rounds. On the one hand, if a node failure is detected before
395 making the decision, the node will not participate to this phase, and,
396 on the other hand, if the node failure occurs after the decision, the
397 sensing task of the network will be temporarily affected: only during
398 the period of sensing until a new round starts, since a new set cover
399 will take charge of the sensing task in the next round. The energy
400 consumption and some other constraints can easily be taken into
401 account since the sensors can update and then exchange their
402 information (including their residual energy) at the beginning of each
403 round. However, the pre-sensing phases (INFO Exchange, Leader
404 Election, Decision) are energy consuming for some nodes, even when
405 they do not join the network to monitor the area. Below, we describe
406 each phase in more details.
408 \subsection{Information exchange phase}
410 Each sensor node $j$ sends its position, remaining energy $RE_j$, and
411 the number of local neighbours $NBR_j$ to all wireless sensor nodes in
412 its subregion by using an INFO packet and then listens to the packets
413 sent from other nodes. After that, each node will have information
414 about all the sensor nodes in the subregion. In our model, the
415 remaining energy corresponds to the time that a sensor can live in the
418 %\subsection{\textbf Working Phase:}
420 %The working phase works in rounding fashion. Each round include 3 steps described as follow :
422 \subsection{Leader election phase}
423 This step includes choosing the Wireless Sensor Node Leader (WSNL),
424 which will be responsible for executing the coverage algorithm. Each
425 subregion in the area of interest will select its own WSNL
426 independently for each round. All the sensor nodes cooperate to
427 select WSNL. The nodes in the same subregion will select the leader
428 based on the received information from all other nodes in the same
429 subregion. The selection criteria in order of priority are: larger
430 number of neighbours, larger remaining energy, and then in case of
431 equality, larger index.
433 \subsection{Decision phase}
434 The WSNL will solve an integer program (see section~\ref{cp}) to
435 select which sensors will be activated in the following sensing phase
436 to cover the subregion. WSNL will send Active-Sleep packet to each
437 sensor in the subregion based on the algorithm's results.
438 %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.
439 %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.
441 \subsection{Sensing phase}
442 Active sensors in the round will execute their sensing task to
443 preserve maximal coverage in the region of interest. We will assume
444 that the cost of keeping a node awake (or asleep) for sensing task is
445 the same for all wireless sensor nodes in the network. Each sensor
446 will receive an Active-Sleep packet from WSNL informing it to stay
447 awake or to go to sleep for a time equal to the period of sensing until
448 starting a new round.
450 %\subsection{Sensing coverage model}
453 %\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.
454 %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$.
455 \indent We consider a boolean disk coverage model which is the most
456 widely used sensor coverage model in the literature. Each sensor has a
457 constant sensing range $R_s$. All space points within a disk centered
458 at the sensor with the radius of the sensing range is said to be
459 covered by this sensor. We also assume that the communication range is
460 at least twice the size of the sensing range. In fact, Zhang and
461 Zhou~\cite{Zhang05} proved that if the transmission range fulfills the
462 previous hypothesis, a complete coverage of a convex area implies
463 connectivity among the working nodes in the active mode.
464 %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}:
469 %%\includegraphics[scale=0.25]{fig1.pdf}\\ %& \includegraphics[scale=0.10]{1.pdf} \\
470 %%(A) Figure 1 & (B) Figure 2
472 %\caption{Unit Circle in radians. }
473 %\label{fig:cluster1}
476 %By using the Unit Circle in figure~\ref{fig:cluster1},
477 %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.
478 % 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.
480 \indent Instead of working with the coverage area, we consider for each
481 sensor a set of points called primary points. We also assume that the
482 sensing disk defined by a sensor is covered if all the primary points of
483 this sensor are covered.
487 %%\includegraphics[scale=0.25]{fig2.pdf}\\ %& \includegraphics[scale=0.10]{1.pdf} \\
488 %%(A) Figure 1 & (B) Figure 2
490 %\caption{Wireless Sensor Node Area Coverage Model.}
491 %\label{fig:cluster2}
493 By knowing the position (point center: ($p_x,p_y$)) of a wireless
494 sensor node and its $R_s$, we calculate the primary points directly
495 based on the proposed model. We use these primary points (that can be
496 increased or decreased if necessary) as references to ensure that the
497 monitored region of interest is covered by the selected set of
498 sensors, instead of using all the points in the area.
500 \indent We can calculate the positions of the selected primary
501 points in the circle disk of the sensing range of a wireless sensor
502 node (see figure~\ref{fig2}) as follows:\\
503 $(p_x,p_y)$ = point center of wireless sensor node\\
505 $X_2=( p_x + R_s * (1), p_y + R_s * (0) )$\\
506 $X_3=( p_x + R_s * (-1), p_y + R_s * (0)) $\\
507 $X_4=( p_x + R_s * (0), p_y + R_s * (1) )$\\
508 $X_5=( p_x + R_s * (0), p_y + R_s * (-1 )) $\\
509 $X_6= ( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (0)) $\\
510 $X_7=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (0))$\\
511 $X_8=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
512 $X_9=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
513 $X_{10}=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
514 $X_{11}=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
515 $X_{12}=( p_x + R_s * (0), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
516 $X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $.
520 % \begin{multicols}{6}
522 %\includegraphics[scale=0.10]{fig21.pdf}\\~ ~ ~(a)
523 %\includegraphics[scale=0.10]{fig22.pdf}\\~ ~ ~(b)
524 \includegraphics[scale=0.25]{principles13.eps}
525 %\includegraphics[scale=0.10]{fig25.pdf}\\~ ~ ~(d)
526 %\includegraphics[scale=0.10]{fig26.pdf}\\~ ~ ~(e)
527 %\includegraphics[scale=0.10]{fig27.pdf}\\~ ~ ~(f)
529 \caption{Wireless sensor node represented by 13 primary points}
533 \section{Coverage problem formulation}
535 %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}:\\
538 %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}:\\
540 \indent Our model is based on the model proposed by
541 \cite{pedraza2006} where the objective is to find a maximum number of
542 disjoint cover sets. To accomplish this goal, authors proposed an
543 integer program, which forces undercoverage and overcoverage of targets
544 to become minimal at the same time. They use binary variables
545 $x_{jl}$ to indicate if sensor $j$ belongs to cover set $l$. In our
546 model, we consider binary variables $X_{j}$, which determine the
547 activation of sensor $j$ in the sensing phase of the round. We also
548 consider primary points as targets. The set of primary points is
549 denoted by $P$ and the set of sensors by $J$.
551 \noindent For a primary point $p$, let $\alpha_{jp}$ denote the
552 indicator function of whether the point $p$ is covered, that is:
554 \alpha_{jp} = \left \{
556 1 & \mbox{if the primary point $p$ is covered} \\
557 & \mbox{by sensor node $j$}, \\
558 0 & \mbox{otherwise.}\\
562 The number of active sensors that cover the primary point $p$ is equal
563 to $\sum_{j \in J} \alpha_{jp} * X_{j}$ where:
567 1& \mbox{if sensor $j$ is active,} \\
568 0 & \mbox{otherwise.}\\
572 We define the Overcoverage variable $\Theta_{p}$ as:
574 \Theta_{p} = \left \{
576 0 & \mbox{if the primary point}\\
577 & \mbox{$p$ is not covered,}\\
578 \left( \sum_{j \in J} \alpha_{jp} * X_{j} \right)- 1 & \mbox{otherwise.}\\
582 \noindent More precisely, $\Theta_{p}$ represents the number of active
583 sensor nodes minus one that cover the primary point $p$.\\
584 The Undercoverage variable $U_{p}$ of the primary point $p$ is defined
589 1 &\mbox{if the primary point $p$ is not covered,} \\
590 0 & \mbox{otherwise.}\\
595 \noindent Our coverage optimization problem can then be formulated as follows\\
596 \begin{equation} \label{eq:ip2r}
599 \min \sum_{p \in P} (w_{\theta} \Theta_{p} + w_{U} U_{p})&\\
600 \textrm{subject to :}&\\
601 \sum_{j \in J} \alpha_{jp} X_{j} - \Theta_{p}+ U_{p} =1, &\forall p \in P\\
603 %\sum_{t \in T} X_{j,t} \leq \frac{RE_j}{e_t} &\forall j \in J \\
605 \Theta_{p}\in \mathbb{N} , &\forall p \in P\\
606 U_{p} \in \{0,1\}, &\forall p \in P \\
607 X_{j} \in \{0,1\}, &\forall j \in J
612 \item $X_{j}$ : indicates whether or not the sensor $j$ is actively
613 sensing in the round (1 if yes and 0 if not);
614 \item $\Theta_{p}$ : {\it overcoverage}, the number of sensors minus
615 one that are covering the primary point $p$;
616 \item $U_{p}$ : {\it undercoverage}, indicates whether or not the primary point
617 $p$ is being covered (1 if not covered and 0 if covered).
620 The first group of constraints indicates that some primary point $p$
621 should be covered by at least one sensor and, if it is not always the
622 case, overcoverage and undercoverage variables help balancing the
623 restriction equations by taking positive values. There are two main
624 objectives. First, we limit the overcoverage of primary points in order to
625 activate a minimum number of sensors. Second we prevent the absence of monitoring on
626 some parts of the subregion by minimizing the undercoverage. The
627 weights $w_\theta$ and $w_U$ must be properly chosen so as to
628 guarantee that the maximum number of points are covered during each
631 %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
632 %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.
633 %\subsection{Notations and assumptions}
636 %\item $m$ : the number of targets
637 %\item $n$ : the number of sensors
638 %\item $K$ : maximal number of cover sets
639 %\item $i$ : index of target ($i=1..m$)
640 %\item $j$ : index of sensor ($j=1..n$)
641 %\item $k$ : index of cover set ($k=1..K$)
642 %\item $T_0$ : initial set of targets
643 %\item $S_0$ : initial set of sensors
644 %\item $T $ : set of targets which are not covered by at least one cover set
645 %\item $S$ : set of available sensors
646 %\item $S_0(i)$ : set of sensors which cover the target $i$
647 %\item $T_0(j)$ : set of targets covered by sensor $j$
648 %\item $C_k$ : cover set of index $k$
649 %\item $T(C_k)$ : set of targets covered by the cover set $k$
650 %\item $NS(i)$ : set of available sensors which cover the target $i$
651 %\item $NC(i)$ : set of cover sets which do not cover the target $i$
652 %\item $|.|$ : cardinality of the set
656 \section{Simulation results}
659 In this section, we conducted a series of simulations to evaluate the
660 efficiency and the relevance of our approach, using the discrete event
661 simulator OMNeT++ \cite{varga}. We performed simulations for five
662 different densities varying from 50 to 250~nodes. Experimental results
663 were obtained from randomly generated networks in which nodes are
664 deployed over a $(50 \times 25)~m^2 $ sensing field.
665 More precisely, the deployment is controlled at a coarse scale in
666 order to ensure that the deployed nodes can fully cover the sensing
667 field with the given sensing range.
668 10~simulation runs are performed with
669 different network topologies for each node density. The results
670 presented hereafter are the average of these 10 runs. A simulation
671 ends when all the nodes are dead or the sensor network becomes
672 disconnected (some nodes may not be able to send, to a base station, an
675 Our proposed coverage protocol uses the radio energy dissipation model
676 defined by~\cite{HeinzelmanCB02} as energy consumption model for each
677 wireless sensor node when transmitting or receiving packets. The
678 energy of each node in a network is initialized randomly within the
679 range 24-60~joules, and each sensor node will consume 0.2 watts during
680 the sensing period, which will last 60 seconds. Thus, an
681 active node will consume 12~joules during the sensing phase, while a
682 sleeping node will use 0.002 joules. Each sensor node will not
683 participate in the next round if its remaining energy is less than 12
684 joules. In all experiments, the parameters are set as follows:
685 $R_s=5~m$, $w_{\Theta}=1$, and $w_{U}=|P^2|$.
687 We evaluate the efficiency of our approach by using some performance
688 metrics such as: coverage ratio, number of active nodes ratio, energy
689 saving ratio, energy consumption, network lifetime, execution time,
690 and number of stopped simulation runs. Our approach called strategy~2
691 (with two leaders) works with two subregions, each one having a size
692 of $(25 \times 25)~m^2$. Our strategy will be compared with two other
693 approaches. The first one, called strategy~1 (with one leader), works
694 as strategy~2, but considers only one region of $(50 \times 25)$ $m^2$
695 with only one leader. The other approach, called Simple Heuristic,
696 consists in uniformly dividing the region into squares of $(5 \times
697 5)~m^2$. During the decision phase, in each square, a sensor is
698 randomly chosen, it will remain turned on for the coming sensing
701 \subsection{The impact of the number of rounds on the coverage ratio}
703 In this experiment, the coverage ratio measures how much the area of a
704 sensor field is covered. In our case, the coverage ratio is regarded
705 as the number of primary points covered among the set of all primary
706 points within the field. Figure~\ref{fig3} shows the impact of the
707 number of rounds on the average coverage ratio for 150 deployed nodes
708 for the three approaches. It can be seen that the three approaches
709 give similar coverage ratios during the first rounds. From the
710 9th~round the coverage ratio decreases continuously with the simple
711 heuristic, while the two other strategies provide superior coverage to
712 $90\%$ for five more rounds. Coverage ratio decreases when the number
713 of rounds increases due to dead nodes. Although some nodes are dead,
714 thanks to strategy~1 or~2, other nodes are preserved to ensure the
715 coverage. Moreover, when we have a dense sensor network, it leads to
716 maintain the full coverage for a larger number of rounds. Strategy~2 is
717 slightly more efficient than strategy 1, because strategy~2 subdivides
718 the region into 2~subregions and if one of the two subregions becomes
719 disconnected, the coverage may be still ensured in the remaining
725 \includegraphics[scale=0.5]{TheCoverageRatio150g.eps} %\\~ ~ ~(a)
726 \caption{The impact of the number of rounds on the coverage ratio for 150 deployed nodes}
730 \subsection{The impact of the number of rounds on the active sensors ratio}
732 It is important to have as few active nodes as possible in each round,
733 in order to minimize the communication overhead and maximize the
734 network lifetime. This point is assessed through the Active Sensors
735 Ratio (ASR), which is defined as follows:
738 \mbox{ASR}(\%) = \frac{\mbox{Number of active sensors
739 during the current sensing phase}}{\mbox{Total number of sensors in the network
740 for the region}} \times 100.
742 Figure~\ref{fig4} shows the average active nodes ratio versus rounds
743 for 150 deployed nodes.
747 \includegraphics[scale=0.5]{TheActiveSensorRatio150g.eps} %\\~ ~ ~(a)
748 \caption{The impact of the number of rounds on the active sensors ratio for 150 deployed nodes }
752 The results presented in figure~\ref{fig4} show the superiority of
753 both proposed strategies, the strategy with two leaders and the one
754 with a single leader, in comparison with the simple heuristic. The
755 strategy with one leader uses less active nodes than the strategy with
756 two leaders until the last rounds, because it uses central control on
757 the whole sensing field. The advantage of the strategy~2 approach is
758 that even if a network is disconnected in one subregion, the other one
759 usually continues the optimization process, and this extends the
760 lifetime of the network.
762 \subsection{The impact of the number of rounds on the energy saving ratio}
764 In this experiment, we consider a performance metric linked to energy.
765 This metric, called Energy Saving Ratio (ESR), is defined by:
768 \mbox{ESR}(\%) = \frac{\mbox{Number of alive sensors during this round}}
769 {\mbox{Total number of sensors in the network for the region}} \times 100.
771 The longer the ratio is, the more redundant sensor nodes are
772 switched off, and consequently the longer the network may live.
773 Figure~\ref{fig5} shows the average Energy Saving Ratio versus rounds
774 for all three approaches and for 150 deployed nodes.
778 % \begin{multicols}{6}
780 \includegraphics[scale=0.5]{TheEnergySavingRatio150g.eps} %\\~ ~ ~(a)
781 \caption{The impact of the number of rounds on the energy saving ratio for 150 deployed nodes}
785 The simulation results show that our strategies allow to efficiently
786 save energy by turning off some sensors during the sensing phase. As
787 expected, the strategy with one leader is usually slightly better than
788 the second strategy, because the global optimization permits to turn
789 off more sensors. Indeed, when there are two subregions more nodes
790 remain awake near the border shared by them. Note that again as the
791 number of rounds increases the two leaders' strategy becomes the most
792 performing one, since it takes longer to have the two subregion networks
793 simultaneously disconnected.
795 \subsection{The percentage of stopped simulation runs}
797 We will now study the percentage of simulations, which stopped due to
798 network disconnections per round for each of the three approaches.
799 Figure~\ref{fig6} illustrates the percentage of stopped simulation
800 runs per round for 150 deployed nodes. It can be observed that the
801 simple heuristic is the approach, which stops first because the nodes
802 are randomly chosen. Among the two proposed strategies, the
803 centralized one first exhibits network disconnections. Thus, as
804 explained previously, in case of the strategy with several subregions
805 the optimization effectively continues as long as a network in a
806 subregion is still connected. This longer partial coverage
807 optimization participates in extending the network lifetime.
811 \includegraphics[scale=0.5]{TheNumberofStoppedSimulationRuns150g.eps}
812 \caption{The percentage of stopped simulation runs compared to the number of rounds for 150 deployed nodes }
816 \subsection{The energy consumption}
818 In this experiment, we study the effect of the multi-hop communication
819 protocol on the performance of the strategy with two leaders and
820 compare it with the other two approaches. The average energy
821 consumption resulting from wireless communications is calculated
822 by taking into account the energy spent by all the nodes when transmitting and
823 receiving packets during the network lifetime. This average value,
824 which is obtained for 10~simulation runs, is then divided by the
825 average number of rounds to define a metric allowing a fair comparison
826 between networks having different densities.
828 Figure~\ref{fig7} illustrates the energy consumption for the different
829 network sizes and the three approaches. The results show that the
830 strategy with two leaders is the most competitive from the energy
831 consumption point of view. A centralized method, like the strategy
832 with one leader, has a high energy consumption due to many
833 communications. In fact, a distributed method greatly reduces the
834 number of communications thanks to the partitioning of the initial
835 network in several independent subnetworks. Let us notice that even if
836 a centralized method consumes far more energy than the simple
837 heuristic, since the energy cost of communications during a round is a
838 small part of the energy spent in the sensing phase, the
839 communications have a small impact on the network lifetime.
843 \includegraphics[scale=0.5]{TheEnergyConsumptiong.eps}
844 \caption{The energy consumption}
848 \subsection{The impact of the number of sensors on execution time}
850 A sensor node has limited energy resources and computing power,
851 therefore it is important that the proposed algorithm has the shortest
852 possible execution time. The energy of a sensor node must be mainly
853 used for the sensing phase, not for the pre-sensing ones.
854 Table~\ref{table1} gives the average execution times in seconds
855 on a laptop of the decision phase (solving of the optimization problem)
856 during one round. They are given for the different approaches and
857 various numbers of sensors. The lack of any optimization explains why
858 the heuristic has very low execution times. Conversely, the strategy
859 with one leader, which requires to solve an optimization problem
860 considering all the nodes presents redhibitory execution times.
861 Moreover, increasing the network size by 50~nodes multiplies the time
862 by almost a factor of 10. The strategy with two leaders has more
863 suitable times. We think that in distributed fashion the solving of
864 the optimization problem in a subregion can be tackled by sensor
865 nodes. Overall, to be able to deal with very large networks, a
866 distributed method is clearly required.
869 \caption{THE EXECUTION TIME(S) VS THE NUMBER OF SENSORS}
873 % used for centering table
874 \begin{tabular}{|c|c|c|c|}
875 % centered columns (4 columns)
877 %inserts double horizontal lines
878 Sensors number & Strategy~2 & Strategy~1 & Simple heuristic \\ [0.5ex]
879 & (with two leaders) & (with one leader) & \\ [0.5ex]
880 %Case & Strategy (with Two Leaders) & Strategy (with One Leader) & Simple Heuristic \\ [0.5ex]
884 % inserts single horizontal line
885 50 & 0.097 & 0.189 & 0.001 \\
886 % inserting body of the table
888 100 & 0.419 & 1.972 & 0.0032 \\
890 150 & 1.295 & 13.098 & 0.0032 \\
892 200 & 4.54 & 169.469 & 0.0046 \\
894 250 & 12.252 & 1581.163 & 0.0056 \\
895 % [1ex] adds vertical space
900 % is used to refer this table in the text
903 \subsection{The network lifetime}
905 Finally, we have defined the network lifetime as the time until all
906 nodes have been drained of their energy or each sensor network
907 monitoring an area has become disconnected. In figure~\ref{fig8}, the
908 network lifetime for different network sizes and for both strategy
909 with two leaders and the simple heuristic is illustrated.
910 We do not consider anymore the centralized strategy with one
911 leader, because, as shown above, this strategy results in execution
912 times that quickly become unsuitable for a sensor network.
916 % \begin{multicols}{6}
918 \includegraphics[scale=0.5]{TheNetworkLifetimeg.eps} %\\~ ~ ~(a)
919 \caption{The network lifetime }
923 As highlighted by figure~\ref{fig8}, the network lifetime obviously
924 increases when the size of the network increases, with our approach
925 that leads to the larger lifetime improvement. By choosing the best
926 suited nodes, for each round, to cover the region of interest and by
927 letting the other ones sleep in order to be used later in next rounds,
928 our strategy efficiently prolonges the network lifetime. Comparison shows that
929 the larger the sensor number is, the more our strategies outperform
930 the simple heuristic. Strategy~2, which uses two leaders, is the best
931 one because it is robust to network disconnection in one subregion. It
932 also means that distributing the algorithm in each node and
933 subdividing the sensing field into many subregions, which are managed
934 independently and simultaneously, is the most relevant way to maximize
935 the lifetime of a network.
937 \section{Conclusion and future works}
938 \label{sec:conclusion}
940 In this paper, we have addressed the problem of the coverage and the lifetime
941 optimization in wireless sensor networks. This is a key issue as
942 sensor nodes have limited resources in terms of memory, energy and
943 computational power. To cope with this problem, the field of sensing
944 is divided into smaller subregions using the concept of
945 divide-and-conquer method, and then a multi-rounds coverage protocol
946 will optimize coverage and lifetime performances in each subregion.
947 The proposed protocol combines two efficient techniques: network
948 leader election and sensor activity scheduling, where the challenges
949 include how to select the most efficient leader in each subregion and
950 the best representative active nodes that will optimize the network lifetime
951 while taking the responsibility of covering the corresponding
952 subregion. The network lifetime in each subregion is divided into
953 rounds, each round consists of four phases: (i) Information Exchange,
954 (ii) Leader Election, (iii) an optimization-based Decision in order to
955 select the nodes remaining active for the last phase, and (iv)
956 Sensing. The simulations show the relevance of the proposed
957 protocol in terms of lifetime, coverage ratio, active sensors ratio,
958 energy saving, energy consumption, execution time, and the number of
959 stopped simulation runs due to network disconnection. Indeed, when
960 dealing with large and dense wireless sensor networks, a distributed
961 approach like the one we propose allows to reduce the difficulty of a
962 single global optimization problem by partitioning it in many smaller
963 problems, one per subregion, that can be solved more easily.
965 In future work, we plan to study and propose a coverage protocol, which
966 computes all active sensor schedules in one time, using
967 optimization methods such as swarms optimization or evolutionary
968 algorithms. The round will still consist of 4 phases, but the
969 decision phase will compute the schedules for several sensing phases,
970 which aggregated together, define a kind of meta-sensing phase.
971 The computation of all cover sets in one time is far more
972 difficult, but will reduce the communication overhead.
973 % use section* for acknowledgement
974 %\section*{Acknowledgment}
976 \bibliographystyle{IEEEtran}
977 \bibliography{bare_conf}