X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/Sensornets15.git/blobdiff_plain/91bc2e81f592252c7d007665a2d6a29b30c87861..8b80452d5111e437e7929c9beb82f9d4a7983557:/Example.tex?ds=inline diff --git a/Example.tex b/Example.tex index dbc4580..02ee54e 100644 --- a/Example.tex +++ b/Example.tex @@ -42,22 +42,22 @@ Optimization, Scheduling.} as possible a network failure due to battery-depleted nodes. In this paper we propose a protocol, called Distributed Lifetime Coverage Optimization protocol (DiLCO), which maintains the coverage and improves the lifetime of a wireless - sensor network. As a first step we partition the area of interest into - subregions using a classical divide-and-conquer method. Our DiLCO protocol is - then distributed on the sensor nodes in each subregion in a second step. To - fulfill our objective, the proposed protocol combines two effective - techniques: a leader election in each subregion, followed by an - optimization-based node activity scheduling performed by each elected leader. - This two-step process takes place periodically, in order to choose a small set - of nodes remaining active for sensing during a time slot. Each set is built - to ensure coverage at a low energy cost, allowing to optimize the network - lifetime. More precisely, a period consists of four phases: (i)~Information - Exchange, (ii)~Leader Election, (iii)~Decision, and (iv)~Sensing. The - decision process, which results in an activity scheduling vector, is carried - out by a leader node through the solving of an integer program. In comparison - with some other protocols, the simulations done using the discrete event - simulator OMNeT++ show that our approach is able to increase the WSN lifetime - and provides improved coverage performance. } + sensor network. First, we partition the area of interest into subregions using + a classical divide-and-conquer method. Our DiLCO protocol is then distributed + on the sensor nodes in each subregion in a second step. To fulfill our + objective, the proposed protocol combines two effective techniques: a leader + election in each subregion, followed by an optimization-based node activity + scheduling performed by each elected leader. This two-step process takes + place periodically, in order to choose a small set of nodes remaining active + for sensing during a time slot. Each set is built to ensure coverage at a low + energy cost, allowing to optimize the network lifetime. More precisely, a + period consists of four phases: (i)~Information Exchange, (ii)~Leader + Election, (iii)~Decision, and (iv)~Sensing. The decision process, which + results in an activity scheduling vector, is carried out by a leader node + through the solving of an integer program. In comparison with some other + protocols, the simulations done using the discrete event simulator OMNeT++ + show that our approach is able to increase the WSN lifetime and provides + improved coverage performance. } \onecolumn \maketitle \normalsize \vfill @@ -73,12 +73,12 @@ during the last few years, is the design of energy efficient approaches for coverage and connectivity~\cite{conti2014mobile}. Coverage reflects how well a sensor field is monitored. On the one hand we want to monitor the area of interest in the most efficient way~\cite{Nayak04}. On the other hand we want to -use as less energy as possible. Sensor nodes are battery-powered with no means -of recharging or replacing, usually due to environmental (hostile or unpractical -environments) or cost reasons. Therefore, it is desired that the WSNs are -deployed with high densities so as to exploit the overlapping sensing regions of -some sensor nodes to save energy by turning off some of them during the sensing -phase to prolong the network lifetime. +use as little energy as possible. Sensor nodes are battery-powered with no +means of recharging or replacing, usually due to environmental (hostile or +unpractical environments) or cost reasons. Therefore, it is desired that the +WSNs are deployed with high densities so as to exploit the overlapping sensing +regions of some sensor nodes to save energy by turning off some of them during +the sensing phase to prolong the network lifetime. In this paper we design a protocol that focuses on the area coverage problem with the objective of maximizing the network lifetime. Our proposition, the @@ -90,52 +90,53 @@ subregion. In fact, the nodes in a subregion can be seen as a cluster where each node sends sensing data to the cluster head or the sink node. Furthermore, the activities in a subregion/cluster can continue even if another cluster stops due to too many node failures. Our DiLCO protocol considers periods, where a period -starts with a discovery phase to exchange information between sensors of a same -subregion, in order to choose in a suitable manner a sensor node (the leader) to -carry out the coverage strategy. In each subregion the activation of the sensors -for the sensing phase of the current period is obtained by solving an integer -program. The resulting activation vector is broadcasted by a leader to every -node of its subregion. +starts with a discovery phase to exchange information between sensors of the +same subregion, in order to choose in a suitable manner a sensor node (the +leader) to carry out the coverage strategy. In each subregion the activation of +the sensors for the sensing phase of the current period is obtained by solving +an integer program. The resulting activation vector is broadcast by a leader +to every node of its subregion. The remainder of the paper continues with Section~\ref{sec:Literature Review} where a review of some related works is presented. The next section describes the DiLCO protocol, followed in Section~\ref{cp} by the coverage model formulation which is used to schedule the activation of sensors. Section~\ref{sec:Simulation Results and Analysis} shows the simulation -results. The paper ends with conclusions and some suggestions for further work +results. The paper ends with a conclusion and some suggestions for further work in Section~\ref{sec:Conclusion and Future Works}. \section{\uppercase{Literature Review}} \label{sec:Literature Review} -\noindent In this section, we summarize some related works regarding coverage +\noindent In this section, we summarize some related works regarding the coverage problem and distinguish our DiLCO protocol from the works presented in the literature. The most discussed coverage problems in literature -can be classified into three types \cite{li2013survey}: area coverage (where -every point inside an area is to be monitored), target coverage (where the main -objective is to cover only a finite number of discrete points called targets), -and barrier coverage (to prevent intruders from entering into the region of -interest). +can be classified into three types \cite{li2013survey}: area coverage \cite{Misra} where +every point inside an area is to be monitored, target coverage \cite{yang2014novel} where the main +objective is to cover only a finite number of discrete points called targets, +and barrier coverage \cite{Kumar:2005}\cite{kim2013maximum} to prevent intruders from entering into the region of interest. In \cite{Deng2012} authors transform the area coverage problem to the target coverage problem taking into account the intersection points among disks of sensors nodes or between disk of sensor nodes and boundaries. {\it In DiLCO protocol, the area coverage, i.e. the coverage of every point in the sensing region, is transformed to the coverage of a fraction of points called primary points. } + The major approach to extend network lifetime while preserving coverage is to divide/organize the sensors into a suitable number of set covers (disjoint or -non-disjoint) where each set completely covers a region of interest and to +non-disjoint), where each set completely covers a region of interest, and to activate these set covers successively. The network activity can be planned in advance and scheduled for the entire network lifetime or organized in periods, -and the set of active sensor nodes is decided at the beginning of each period. +and the set of active sensor nodes is decided at the beginning of each period \cite{ling2009energy}. Active node selection is determined based on the problem requirements (e.g. area -monitoring, connectivity, power efficiency). Different methods have been -proposed in literature. -{\it DiLCO protocol works in periods, where each period contains a preliminary +monitoring, connectivity, power efficiency). For instance, Jaggi et al. \cite{jaggi2006} +address the problem of maximizing network lifetime by dividing sensors into the maximum number of disjoint subsets such that each subset can ensure both coverage and connectivity. A greedy algorithm is applied once to solve this problem and the computed sets are activated in succession to achieve the desired network lifetime. +Vu \cite{chin2007}, Padmatvathy et al. \cite{pc10}, propose algorithms working in a periodic fashion where a cover set is computed at the beginning of each period. +{\it Motivated by these works, DiLCO protocol works in periods, where each period contains a preliminary phase for information exchange and decisions, followed by a sensing phase where one cover set is in charge of the sensing task.} -Various approaches, including centralized, distributed, and localized +Various approaches, including centralized, or distributed algorithms, have been proposed to extend the network lifetime. %For instance, in order to hide the occurrence of faults, or the sudden unavailability of %sensor nodes, some distributed algorithms have been developed in~\cite{Gallais06,Tian02,Ye03,Zhang05,HeinzelmanCB02}. @@ -145,28 +146,35 @@ cooperatively by communicating with their neighbors which of them will remain in sleep mode for a certain period of time. The centralized algorithms~\cite{cardei2005improving,zorbas2010solving,pujari2011high} always provide nearly or close to optimal solution since the algorithm has global view -of the whole network, but such a method has the disadvantage of requiring high +of the whole network. But such a method has the disadvantage of requiring high communication costs, since the node (located at the base station) making the -decision needs information from all the sensor nodes in the area. +decision needs information from all the sensor nodes in the area and the amount of information can be huge. +{\it In order to be suitable for large-scale network, in the DiLCO protocol, the area coverage is divided into several smaller + subregions, and in each one, a node called the leader is in charge for + selecting the active sensors for the current period.} -A large variety of coverage scheduling algorithms have been proposed. Many of +A large variety of coverage scheduling algorithms has been developed. Many of the existing algorithms, dealing with the maximization of the number of cover sets, are heuristics. These heuristics involve the construction of a cover set by including in priority the sensor nodes which cover critical targets, that is -to say targets that are covered by the smallest number of sensors. Other -approaches are based on mathematical programming formulations and dedicated +to say targets that are covered by the smallest number of sensors \cite{berman04,zorbas2010solving}. Other +approaches are based on mathematical programming formulations~\cite{cardei2005energy,5714480,pujari2011high,Yang2014} and dedicated techniques (solving with a branch-and-bound algorithms available in optimization solver). The problem is formulated as an optimization problem (maximization of the lifetime or number of cover sets) under target coverage and energy constraints. Column generation techniques, well-known and widely practiced -techniques for solving linear programs with too many variables, have been also -used~\cite{castano2013column,rossi2012exact,deschinkel2012column}. +techniques for solving linear programs with too many variables, have also been +used~\cite{castano2013column,rossi2012exact,deschinkel2012column}. {\it In DiLCO protocol, each leader, in each subregion, solves an integer + program with a double objective consisting in minimizing the overcoverage and + limiting the undercoverage. This program is inspired from the work of + \cite{pedraza2006} where the objective is to maximize the number of cover + sets.} % ***** Part which must be rewritten - Start % Start of Ali's papers catalog => there's no link between them or with our work % (use of subregions; optimization based method; etc.) - +\iffalse Diongue and Thiare~\cite{diongue2013alarm} proposed an energy aware sleep scheduling algorithm for lifetime maximization in wireless sensor networks (ALARM). The proposed approach permits to schedule redundant nodes according to @@ -199,9 +207,7 @@ the sensor nodes in the network. % What is the link between the previous work and this paragraph about DiLCO ? -{\it In DiLCO protocol, the area coverage is divided into several smaller - subregions, and in each of which, a node called the leader is on charge for - selecting the active sensors for the current period.} + Yang et al.~\cite{yang2014energy} investigated full area coverage problem under the probabilistic sensing model in the sensor networks. They have studied the @@ -214,13 +220,9 @@ extend the network lifetime. The work proposed by \cite{qu2013distributed} considers the coverage problem in WSNs where each sensor has variable sensing radius. The final objective is to maximize the network coverage lifetime in WSNs. - +\fi % Same remark, no link with the two previous citations... -{\it In DiLCO protocol, each leader, in each subregion, solves an integer - program with a double objective consisting in minimizing the overcoverage and - limiting the undercoverage. This program is inspired from the work of - \cite{pedraza2006} where the objective is to maximize the number of cover - sets.} + % ***** Part which must be rewritten - End @@ -344,7 +346,7 @@ consumptions into account to evaluate the performance of our protocol. \noindent We consider a sensor network composed of static nodes distributed independently and uniformly at random. A high density deployment ensures a high -coverage ratio of the interested area at the starting. The nodes are supposed to +coverage ratio of the interested area at the start. The nodes are supposed to have homogeneous characteristics from a communication and a processing point of view, whereas they have heterogeneous energy provisions. Each node has access to its location thanks, either to a hardware component (like a GPS unit), or a @@ -410,7 +412,7 @@ $X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $. \fi -\subsection{The main idea} +\subsection{Main idea} \label{main_idea} \noindent We start by applying a divide-and-conquer algorithm to partition the @@ -426,27 +428,27 @@ executed simultaneously in each subregion. As shown in Figure~\ref{fig2}, the proposed DiLCO protocol is a periodic protocol where each period is decomposed into 4~phases: Information Exchange, -Leader Election , Decision, and Sensing. For each period there will be exactly +Leader Election, Decision, and Sensing. For each period there will be exactly one cover set in charge of the sensing task. A periodic scheduling is interesting because it enhances the robustness of the network against node failures. First, a node that has not enough energy to complete a period, or which fails before the decision is taken, will be excluded from the scheduling process. Second, if a node fails later, whereas it was supposed to sense the -region of interest, it will only affect the quality of coverage until the -definition of a new cover set in the next period. Constraints, like the energy +region of interest, it will only affect the quality of the coverage until the +definition of a new cover set in the next period. Constraints, like energy consumption, can be easily taken into consideration since the sensors can update and exchange their information during the first phase. Let us notice that the phases before the sensing one (Information Exchange, Leader Election, and Decision) are energy consuming for all the nodes, even nodes that will not be retained by the leader to keep watch over the corresponding area. -During the execution of the DiLCO protocol, two kinds of packets will be used: +During the execution of the DiLCO protocol, two kinds of packet will be used: %\begin{enumerate}[(a)] \begin{itemize} \item INFO packet: sent by each sensor node to all the nodes inside a same subregion for information exchange. \item ActiveSleep packet: sent by the leader to all the nodes in its subregion - to inform them to be stay Active or to go Sleep during the sensing phase. + to inform them to stay Active or to go Sleep during the sensing phase. \end{itemize} %\end{enumerate} and each sensor node will have five possible status in the network: @@ -565,7 +567,7 @@ sensor in the subregion and then describe it in more detail. \fi \end{algorithm} \iffalse -The DiLCO protocol work in rounds and executed at each sensor node in the network , each sensor node can still sense data while being in +The DiLCO protocol work in rounds and executed at each sensor node in the network, each sensor node can still sense data while being in LISTENING mode. Thus, by entering the LISTENING mode at the beginning of each round, sensor nodes still executing sensing task while participating in the leader election and decision phases. More specifically, The DiLCO protocol algorithm works as follow: Initially, the sensor node check it's remaining energy in order to participate in the current round. Each sensor node determines it's position and it's subregion based Embedded GPS or Location Discovery Algorithm. After that, All the sensors collect position coordinates, current remaining energy, sensor node id, and the number of its one-hop live neighbors during the information exchange. It stores this information into a list L. @@ -581,7 +583,7 @@ objective is to find a maximum number of disjoint cover sets. To accomplish this goal, the authors proposed an integer program which forces undercoverage and overcoverage of targets to become minimal at the same time. They use binary variables $x_{jl}$ to indicate if sensor $j$ belongs to cover set $l$. In our -model, we consider binary variable $X_{j}$ which determine the activation of +model, we consider that the binary variable $X_{j}$ determines the activation of sensor $j$ in the sensing phase. We also consider primary points as targets. The set of primary points is denoted by $P$ and the set of sensors by $J$. @@ -638,7 +640,7 @@ U_{p} = \left \{ %\label{c1} %\sum_{t \in T} X_{j,t} \leq \frac{RE_j}{e_t} &\forall j \in J \\ %\label{c2} -\Theta_{p}\in \mathbb{N} , &\forall p \in P\\ +\Theta_{p}\in \mathbb{N}, &\forall p \in P\\ U_{p} \in \{0,1\}, &\forall p \in P \\ X_{j} \in \{0,1\}, &\forall j \in J \end{array} @@ -724,7 +726,7 @@ node typically consists of four units: a MicroController Unit, an Atmels AVR ATmega103L in case of Medusa II, to perform the computations; a communication (radio) unit able to send and receive messages; a sensing unit to collect data; a power supply which provides the energy consumed by node. Except the battery, -all the other unit can be be switched off to save energy according to the node +all the other unit can be switched off to save energy according to the node status. Table~\ref{table4} summarizes the energy consumed (in milliWatt per second) by a node for each of its possible status. @@ -770,15 +772,15 @@ receive such packets, we use the equation giving the energy spent to send a 1-bit-content message defined in~\cite{raghunathan2002energy} (we assume symmetric communication costs), and we set their respective size to 112 and 24~bits. The energy required to send or receive a 1-bit-content message is thus -is equal to 0.2575 mW. + equal to 0.2575 mW. Each node has an initial energy level, in Joules, which is randomly drawn in the -interval $[500-700]$. If it's energy provision reaches a value below the +interval $[500-700]$. If its energy provision reaches a value below the threshold $E_{th}=36$~Joules, the minimum energy needed for a node to stay -active during one period, it will no more participate in the coverage task. This +active during one period, it will no longer take part in the coverage task. This value corresponds to the energy needed by the sensing phase, obtained by multiplying the energy consumed in active state (9.72 mW) by the time in seconds -for one period (3600 seconds), and adding the energy for the pre-sensing phases. +for one period (3,600 seconds), and adding the energy for the pre-sensing phases. According to the interval of initial energy, a sensor may be active during at most 20 rounds. @@ -807,7 +809,7 @@ the efficiency of our approach: \mbox{CR}(\%) = \frac{\mbox{$n$}}{\mbox{$N$}} \times 100. \end{equation*} where $n$ is the number of covered grid points by active sensors of every -subregions during the current sensing phase and $N$ is total number of grid +subregions during the current sensing phase and $N$ is the total number of grid points in the sensing field. In our simulations, we have a layout of $N = 51 \times 26 = 1326$ grid points. %The accuracy of this method depends on the distance between grids. In our @@ -829,7 +831,7 @@ Where: $A_r^t$ is the number of active sensors in the subregion $r$ during round \fi \item {{\bf Energy Consumption}:} energy consumption (EC) can be seen as the - total energy consumed by the sensors during $Lifetime_{95}$ or + total amount of energy consumed by the sensors during $Lifetime_{95}$ or $Lifetime_{50}$, divided by the number of periods. Formally, the computation of EC can be expressed as follows: \begin{equation*} @@ -838,9 +840,9 @@ Where: $A_r^t$ is the number of active sensors in the subregion $r$ during round + E^{a}_m+E^{s}_m \right)}{M}, \end{equation*} -where $M$ corresponds to the number of periods. The total energy consumed by +where $M$ corresponds to the number of periods. The total amount of energy consumed by the sensors (EC) comes through taking into consideration four main energy -factors. The first one , denoted $E^{\scriptsize \mbox{com}}_m$, represent the +factors. The first one, denoted $E^{\scriptsize \mbox{com}}_m$, represents the energy consumption spent by all the nodes for wireless communications during period $m$. $E^{\scriptsize \mbox{list}}_m$, the next factor, corresponds to the energy consumed by the sensors in LISTENING status before receiving the @@ -875,7 +877,7 @@ In this subsection, we first focus on the performance of our DiLCO protocol for different numbers of subregions. We consider partitions of the WSN area into $2$, $4$, $8$, $16$, and $32$ subregions. Thus the DiLCO protocol is declined in five versions: DiLCO-2, DiLCO-4, DiLCO-8, DiLCO-16, and DiLCO-32. Simulations -without partitioning the area of interest, case which corresponds to a +without partitioning the area of interest, cases which correspond to a centralized approach, are not presented because they require high execution times to solve the integer program and therefore consume too much energy. @@ -888,7 +890,7 @@ chosen to remain active during the sensing phase. \subsubsection{Coverage ratio} Figure~\ref{fig3} shows the average coverage ratio for 150 deployed nodes. It -can be seen that both DESK and GAF provide a little better coverage ratio +can be seen that both DESK and GAF provide a coverage ratio which is slightly better compared to DiLCO in the first thirty periods. This can be easily explained by the number of active nodes: the optimization process of our protocol activates less nodes than DESK or GAF, resulting in a slight decrease of the coverage @@ -904,7 +906,7 @@ efficient than DESK and GAF, since they can provide the same level of coverage (except in the first periods where DESK and GAF slightly outperform them) for a greater number of periods. In fact, when our protocol is applied with a large number of subregions (from 8 to 32~regions), it activates a restricted number of -nodes, and thus allow to extend the network lifetime. +nodes, and thus enables the extension of the network lifetime. \parskip 0pt \begin{figure}[t!] @@ -977,8 +979,8 @@ limited number of variables and constraints. Conversely, DiLCO-2 requires to solve an optimization problem with half of the network nodes and thus presents a high execution time. Nevertheless if we refer to Figure~\ref{fig3}, we observe that DiLCO-32 is slightly less efficient than DilCO-16 to maintain as long as -possible high coverage. In fact excessive subdivision of the area of interest -prevents to ensure good coverage especially on the borders of the +possible high coverage. In fact an excessive subdivision of the area of interest +prevents it to ensure a good coverage especially on the borders of the subregions. Thus, the optimal number of subregions can be seen as a trade-off between execution time and coverage performance. @@ -1002,9 +1004,9 @@ network lifetime. As highlighted by Figure~\ref{figLT95}, when the coverage level is relaxed ($50\%$) the network lifetime also improves. This observation reflects the fact that the higher the coverage performance, the more nodes must be active to -ensure the wider monitoring. For a same level of coverage, DiLCO outperforms +ensure the wider monitoring. For a similar level of coverage, DiLCO outperforms DESK and GAF for the lifetime of the network. More specifically, if we focus on -the larger level of coverage ($95\%$) in case of our protocol, the subdivision +the larger level of coverage ($95\%$) in the case of our protocol, the subdivision in $16$~subregions seems to be the most appropriate. % with our DiLCO-16/50, DiLCO-32/50, DiLCO-16/95 and DiLCO-32/95 protocols @@ -1017,7 +1019,7 @@ in $16$~subregions seems to be the most appropriate. \label{sec:Conclusion and Future Works} A crucial problem in WSN is to schedule the sensing activities of the different -nodes in order to ensure both coverage of the area of interest and longest +nodes in order to ensure both coverage of the area of interest and longer network lifetime. The inherent limitations of sensor nodes, in energy provision, communication and computing capacities, require protocols that optimize the use of the available resources to fulfill the sensing task. To address this @@ -1025,16 +1027,15 @@ problem, this paper proposes a two-step approach. Firstly, the field of sensing is divided into smaller subregions using the concept of divide-and-conquer method. Secondly, a distributed protocol called Distributed Lifetime Coverage Optimization is applied in each subregion to optimize the coverage and lifetime -performances. In a subregion, our protocol consists to elect a leader node +performances. In a subregion, our protocol consists in electing a leader node which will then perform a sensor activity scheduling. The challenges include how to select the most efficient leader in each subregion and the best representative set of active nodes to ensure a high level of coverage. To assess the performance of our approach, we compared it with two other approaches using many performance metrics like coverage ratio or network lifetime. We have also -study the impact of the number of subregions chosen to subdivide the area of +studied the impact of the number of subregions chosen to subdivide the area of interest, considering different network sizes. The experiments show that -increasing the number of subregions improves the lifetime. The more there are -subregions, the more the network is robust against random disconnection +increasing the number of subregions improves the lifetime. The more subregions there are, the more robust the network is against random disconnection resulting from dead nodes. However, for a given sensing field and network size there is an optimal number of subregions. Therefore, in case of our simulation context a subdivision in $16$~subregions seems to be the most relevant. The @@ -1073,9 +1074,10 @@ difficult, but will reduce the communication overhead. \fi \section*{\uppercase{Acknowledgements}} -\noindent As a Ph.D. student, Ali Kadhum IDREES would like to gratefully +\noindent As a Ph.D. student, Ali Kadhum IDREES would like to gratefully acknowledge the University of Babylon - IRAQ for the financial support and -Campus France for the received support. +Campus France for the received support. This paper is also partially funded by +the Labex ACTION program (contract ANR-11-LABX-01-01). %\vfill \bibliographystyle{apalike}