]> AND Private Git Repository - Sensornets15.git/blobdiff - Example.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
o
[Sensornets15.git] / Example.tex
index dc5dd18499c9ecc7de06bb80c1b1f33b1b39732a..3b522661430b3a17e87f6845d1e45241ea42fa74 100644 (file)
@@ -1,65 +1,78 @@
-\documentclass[a4paper,twoside]{article}
+\documentclass[a4,12pt]{article}
 
 
+
+\usepackage[paper=a4paper,dvips,top=1.5cm,left=1.5cm,right=1.5cm,foot=1cm,bottom=1.5cm]{geometry}
 \usepackage{epsfig}
 \usepackage{subfigure}
 \usepackage{epsfig}
 \usepackage{subfigure}
-\usepackage{calc}
+%\usepackage{calc}
 \usepackage{amssymb}
 \usepackage{amssymb}
-\usepackage{amstext}
-\usepackage{amsmath}
-\usepackage{amsthm}
-\usepackage{multicol}
-\usepackage{pslatex}
-\usepackage{apalike}
-\usepackage{SCITEPRESS}
+%\usepackage{amstext}
+%\usepackage{amsmath}
+%\usepackage{amsthm}
+%\usepackage{multicol}
+%\usepackage{pslatex}
+%\usepackage{apalike}
+%\usepackage{SCITEPRESS}
 \usepackage[small]{caption}
 \usepackage[small]{caption}
-
+\usepackage{color}
 \usepackage[linesnumbered,ruled,vlined,commentsnumbered]{algorithm2e}
 \usepackage{mathtools}  
 
 \usepackage[linesnumbered,ruled,vlined,commentsnumbered]{algorithm2e}
 \usepackage{mathtools}  
 
-\subfigtopskip=0pt
-\subfigcapskip=0pt
-\subfigbottomskip=0pt
+%\subfigtopskip=0pt
+%\subfigcapskip=0pt
+%\subfigbottomskip=0pt
+
 
 
-\begin{document}
 
 %\title{Authors' Instructions  \subtitle{Preparation of Camera-Ready Contributions to SCITEPRESS Proceedings} }
 
 
 %\title{Authors' Instructions  \subtitle{Preparation of Camera-Ready Contributions to SCITEPRESS Proceedings} }
 
-\title{Distributed Lifetime Coverage Optimization Protocol \\in Wireless Sensor Networks}
+\title{Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}
 
 
-\author{\authorname{Ali Kadhum Idrees, Karine Deschinkel, Michel Salomon, and Rapha\"el Couturier}
-\affiliation{FEMTO-ST Institute, UMR 6174 CNRS, University of Franche-Comt\'e, Belfort, France}
-%\affiliation{\sup{2}Department of Computing, Main University, MySecondTown, MyCountry}
-\email{ali.idness@edu.univ-fcomte.fr, $\lbrace$karine.deschinkel, michel.salomon, raphael.couturier$\rbrace$@univ-fcomte.fr}
-%\email{\{f\_author, s\_author\}@ips.xyz.edu, t\_author@dc.mu.edu}
-}
+\author{Ali Kadhum Idrees$^{a,b}$, Karine Deschinkel$^{a}$,\\ Michel Salomon$^{a}$, and Rapha\"el Couturier$^{a}$\\
+$^{a}$FEMTO-ST Institute, UMR 6174 CNRS, \\ University  Bourgogne  Franche-Comt\'e, Belfort, France\\
+$^{b}${\em{Department of Computer Science, University of Babylon, Babylon, Iraq}}\\
+email: ali.idness@edu.univ-fcomte.fr,\\ $\lbrace$karine.deschinkel, michel.salomon, raphael.couturier$\rbrace$@univ-fcomte.fr}
+
+%\author{Ali   Kadhum   Idrees$^{a,b}$,   Karine  Deschinkel$^{a}$,\\  Michel Salomon$^{a}$,   and  Rapha\"el   Couturier   $^{a}$  \\   
+%$^{a}${\em{FEMTO-ST Institute,  UMR  6174  CNRS,   University  Bourgogne  Franche-Comt\'e,\\ Belfort, France}} \\ 
+%$^{b}${\em{Department of Computer Science, University of Babylon, Babylon, Iraq}} }
 
 
-\keywords{Wireless   Sensor   Networks,   Area   Coverage,   Network   lifetime,
-Optimization, Scheduling.}
+\begin{document}
+ \maketitle 
+%\keywords{Wireless   Sensor   Networks,   Area   Coverage,   Network   lifetime,Optimization, Scheduling.}
 
 \abstract{ One of the main research challenges faced in Wireless Sensor Networks
   (WSNs) is to preserve continuously and effectively the coverage of an area (or
   region) of interest  to be monitored, while simultaneously  preventing as much
   as possible a network failure due to battery-depleted nodes.  In this paper we
   propose a protocol, called Distributed Lifetime Coverage Optimization protocol
 
 \abstract{ One of the main research challenges faced in Wireless Sensor Networks
   (WSNs) is to preserve continuously and effectively the coverage of an area (or
   region) of interest  to be monitored, while simultaneously  preventing as much
   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
+  (DiLCO), which maintains the coverage and  improves the lifetime of a wireless
   sensor network. First, we partition the area of interest into subregions using
   a classical divide-and-conquer method.  Our DiLCO protocol is then distributed
   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
+  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
   election in  each subregion, followed  by an optimization-based  node activity
-  scheduling  performed by  each elected  leader.  This  two-step  process takes
+  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
   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. }
+  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.
+% MODIF - BEGIN
+  Simulations are conducted using the discret event simulator
+  OMNET++.  We  refer to the characterictics  of a Medusa II  sensor for
+  the energy consumption  and the computation time.   In comparison with
+  two other existing  methods, our approach is able to  increase the WSN
+  lifetime and provides improved coverage performance. }
+% MODIF - END
 
 
-\onecolumn \maketitle \normalsize \vfill
+%\onecolumn
+
+
+%\normalsize \vfill
 
 \section{\uppercase{Introduction}}
 \label{sec:introduction}
 
 \section{\uppercase{Introduction}}
 \label{sec:introduction}
@@ -78,11 +91,11 @@ 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
 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.
+the sensing phase to prolong the network lifetime. \textcolor{blue}{A WSN can use various types of sensors such as \cite{ref17,ref19}: thermal, seismic, magnetic, visual, infrared, acoustic, and radar. These sensors are capable of observing  different physical conditions such as: temperature, humidity, pressure, speed, direction, movement, light, soil makeup, noise levels, presence or absence of certain kinds of objects, and mechanical stress levels on attached objects. Consequently, there is a wide range of WSN applications such as~\cite{ref22}: health-care, environment, agriculture, public safety, military, transportation systems, and industry applications.}
 
 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
 
 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
-Distributed  Lifetime  Coverage  Optimization  (DILCO) protocol,  maintains  the
+Distributed  Lifetime  Coverage  Optimization  (DiLCO) protocol,  maintains  the
 coverage  and improves  the lifetime  in  WSNs. The  area of  interest is  first
 divided  into subregions using  a divide-and-conquer  algorithm and  an activity
 scheduling  for sensor  nodes is  then  planned by  the elected  leader in  each
 coverage  and improves  the lifetime  in  WSNs. The  area of  interest is  first
 divided  into subregions using  a divide-and-conquer  algorithm and  an activity
 scheduling  for sensor  nodes is  then  planned by  the elected  leader in  each
@@ -95,7 +108,18 @@ 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
 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.
+to every node of its subregion. 
+
+% MODIF - BEGIN
+Our previous  paper ~\cite{idrees2014coverage} relies almost  exclusively on the
+framework of the  DiLCO approach and the coverage problem  formulation.  In this
+paper  we   made  more  realistic   simulations  by  taking  into   account  the
+characteristics of  a Medusa II sensor  ~\cite{raghunathan2002energy} to measure
+the energy consumption and the computation  time.  We have implemented two other
+existing \textcolor{blue}{and distributed approaches}(DESK ~\cite{ChinhVu}, and GAF  ~\cite{xu2001geography}) in order to  compare their performances
+with our approach.  We also focus on performance analysis based on the number of
+subregions. 
+% MODIF - END
 
 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 remainder  of the  paper continues with  Section~\ref{sec:Literature Review}
 where a  review of some related  works is presented. The  next section describes
@@ -219,7 +243,8 @@ less accurate according to the number of primary points.
 \label{main_idea}
 \noindent We start  by applying a divide-and-conquer algorithm  to partition the
 area of interest  into smaller areas called subregions and  then our protocol is
 \label{main_idea}
 \noindent We start  by applying a divide-and-conquer algorithm  to partition the
 area of interest  into smaller areas called subregions and  then our protocol is
-executed   simultaneously  in   each   subregion.
+executed   simultaneously  in   each   subregion. \textcolor{blue}{Sensor nodes  are assumed to
+be deployed  almost uniformly over the  region and the subdivision of the area of interest is regular.}
 
 \begin{figure}[ht!]
 \centering
 
 \begin{figure}[ht!]
 \centering
@@ -232,8 +257,9 @@ 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
 one  cover  set  in charge  of  the  sensing  task.   A periodic  scheduling  is
 protocol where  each period is  decomposed into 4~phases:  Information Exchange,
 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
+interesting  because it  enhances the  robustness  of the  network against  node failures.
+% \textcolor{blue}{Many WSN applications have communication requirements that are periodic and known previously such as collecting temperature statistics at regular intervals. This periodic nature can be used to provide a regular schedule to sensor nodes and thus avoid a sensor failure. If the period time increases, the reliability and energy consumption are decreased and vice versa}. 
+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 the  coverage until the
 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 the  coverage until the
@@ -267,19 +293,21 @@ and each sensor node will have five possible status in the network:
 An outline of the  protocol implementation is given by Algorithm~\ref{alg:DiLCO}
 which describes  the execution of  a period  by a node  (denoted by $s_j$  for a
 sensor  node indexed by  $j$). At  the beginning  a node  checks whether  it has
 An outline of the  protocol implementation is given by Algorithm~\ref{alg:DiLCO}
 which describes  the execution of  a period  by a node  (denoted by $s_j$  for a
 sensor  node indexed by  $j$). At  the beginning  a node  checks whether  it has
-enough energy to stay active during the next sensing phase. If yes, it exchanges
+enough energy \textcolor{blue}{(its energy should be greater than a fixed treshold $E_{th}$)} to stay active during the next sensing phase. If yes, it exchanges
 information  with  all the  other  nodes belonging  to  the  same subregion:  it
 collects from each node its position coordinates, remaining energy ($RE_j$), ID,
 information  with  all the  other  nodes belonging  to  the  same subregion:  it
 collects from each node its position coordinates, remaining energy ($RE_j$), ID,
-and  the number  of  one-hop neighbors  still  alive. Once  the  first phase  is
+and  the number  of  one-hop neighbors  still  alive. \textcolor{blue}{INFO packet contains two parts: header and data payload. The sensor ID is included in the header, where the header size is 8 bits. The data part includes position coordinates (64 bits), remaining energy (32 bits), and the number of one-hop live neighbors (8 bits). Therefore the size of the INFO packet is 112 bits.} Once  the  first phase  is
 completed, the nodes  of a subregion choose a leader to  take the decision based
 on  the  following  criteria   with  decreasing  importance:  larger  number  of
 neighbors, larger remaining energy, and  then in case of equality, larger index.
 completed, the nodes  of a subregion choose a leader to  take the decision based
 on  the  following  criteria   with  decreasing  importance:  larger  number  of
 neighbors, larger remaining energy, and  then in case of equality, larger index.
-After that,  if the sensor node is  leader, it will execute  the integer program
-algorithm (see Section~\ref{cp})  which provides a set of  sensors planned to be
-active in the next sensing phase. As leader, it will send an Active-Sleep packet
+After that,  if the sensor node is  leader, it will solve  an integer program 
+(see Section~\ref{cp}). \textcolor{blue}{This integer program contains boolean variables $X_j$  where ($X_j=1$) means that sensor $j$ will be active in the next sensing phase. Only sensors with enough remaining energy are involved in the integer program ($J$ is the set of all sensors involved). As the leader consumes energy (computation energy, denoted by $E^{comp}$) to solve the optimization problem, it will be included in the integer program only if it has enough energy to achieve the computation and to stay alive during the next sensing phase, that is to say if $RE_j > E^{comp}+E_{th}$. Once the optimization problem is solved, each leader will send an Active-Sleep packet
 to each sensor  in the same subregion to  indicate it if it has to  be active or
 to each sensor  in the same subregion to  indicate it if it has to  be active or
-not.  Alternately, if  the  sensor  is not  the  leader, it  will  wait for  the
-Active-Sleep packet to know its state for the coming sensing phase.
+not. Otherwise, if  the  sensor  is not  the  leader, it  will  wait for  the
+Active-Sleep packet to know its state for the coming sensing phase.}
+%which provides a set of  sensors planned to be
+%active in the next sensing phase.
+
 
 
 \begin{algorithm}[h!]                
 
 
 \begin{algorithm}[h!]                
@@ -323,6 +351,73 @@ Active-Sleep packet to know its state for the coming sensing phase.
 \section{\uppercase{Coverage problem formulation}}
 \label{cp}
 
 \section{\uppercase{Coverage problem formulation}}
 \label{cp}
 
+% MODIF - BEGIN
+We formulate the coverage optimization problem with an integer program.
+The objective function consists in minimizing the undercoverage and the overcoverage of the area as suggested in \cite{pedraza2006}. 
+The area coverage problem is expressed as the coverage of a fraction of points called primary points. 
+Details on the choice and the number of primary points can be found in \cite{idrees2014coverage}. The set of primary points is denoted by $P$
+and the set of alive sensors by $J$. As we consider a boolean disk coverage model, we use the boolean indicator $\alpha_{jp}$ which is equal to 1 if the primary point $p$ is in the sensing range of the sensor $j$. The binary variable $X_j$ represents the activation or not of the sensor $j$. So we can express the number of  active sensors  that cover  the primary  point $p$ by $\sum_{j \in J} \alpha_{jp} * X_{j}$. We deduce the overcoverage denoted by $\Theta_p$ of the primary point $p$ :
+\begin{equation}
+ \Theta_{p} = \left \{ 
+\begin{array}{l l}
+  0 & \mbox{if the primary point}\\
+    & \mbox{$p$ is not covered,}\\
+  \left( \sum_{j \in J} \alpha_{jp} * X_{j} \right)- 1 & \mbox{otherwise.}\\
+\end{array} \right.
+\label{eq13} 
+\end{equation}
+More  precisely, $\Theta_{p}$ represents  the number of  active sensor
+nodes minus  one that  cover the primary  point~$p$.
+In the same way, we define the  undercoverage variable
+$U_{p}$ of the primary point $p$ as:
+\begin{equation}
+U_{p} = \left \{ 
+\begin{array}{l l}
+  1 &\mbox{if the primary point $p$ is not covered,} \\
+  0 & \mbox{otherwise.}\\
+\end{array} \right.
+\label{eq14} 
+\end{equation}
+There is, of course, a relationship between the three variables $X_j$, $\Theta_p$, and $U_p$ which can be formulated as follows :
+\begin{equation}
+\sum_{j \in J}  \alpha_{jp} X_{j} - \Theta_{p}+ U_{p} =1, \forall p \in P
+\end{equation}
+If the point $p$ is not covered, $U_p=1$,  $\sum_{j \in J}  \alpha_{jp} X_{j}=0$ and $\Theta_{p}=0$ by definition, so the equality is satisfied.
+On the contrary, if the point $p$ is covered, $U_p=0$, and $\Theta_{p}=\left( \sum_{j \in J} \alpha_{jp}  X_{j} \right)- 1$. 
+\noindent Our coverage optimization problem can then be formulated as follows:
+\begin{equation} \label{eq:ip2r}
+\left \{
+\begin{array}{ll}
+\min \sum_{p \in P} (w_{\theta} \Theta_{p} + w_{U} U_{p})&\\
+\textrm{subject to :}&\\
+\sum_{j \in J}  \alpha_{jp} X_{j} - \Theta_{p}+ U_{p} =1, &\forall p \in P\\
+%\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\\
+U_{p} \in \{0,1\}, &\forall p \in P \\
+X_{j} \in \{0,1\}, &\forall j \in J
+\end{array}
+\right.
+\end{equation}
+The objective function is a weighted sum of overcoverage and undercoverage. The goal is to limit the overcoverage in order to activate a minimal number of sensors while simultaneously preventing undercoverage.  \textcolor{blue}{ By
+    choosing  $w_{U}$ much  larger than $w_{\theta}$,  the coverage  of a
+    maximum of  primary points  is ensured.  Then for the  same number  of covered
+    primary points,  the solution  with a  minimal number  of active  sensors is
+    preferred. }
+%Both  weights $w_\theta$  and $w_U$ must  be carefully  chosen in
+%order to  guarantee that the  maximum number of  points are covered  during each
+%period.
+% MODIF - END
+
+
+
+
+
+
+
+\iffalse 
+
 \indent Our model is based on the model proposed by \cite{pedraza2006} where the
 objective is  to find a  maximum number of  disjoint cover sets.   To accomplish
 this goal,  the authors proposed  an integer program which  forces undercoverage
 \indent Our model is based on the model proposed by \cite{pedraza2006} where the
 objective is  to find a  maximum number of  disjoint cover sets.   To accomplish
 this goal,  the authors proposed  an integer program which  forces undercoverage
@@ -411,6 +506,8 @@ undercoverage. Both  weights $w_\theta$  and $w_U$ must  be carefully  chosen in
 order to  guarantee that the  maximum number of  points are covered  during each
 period.
 
 order to  guarantee that the  maximum number of  points are covered  during each
 period.
 
+\fi
+
 \section{\uppercase{Protocol evaluation}}  
 \label{sec:Simulation Results and Analysis}
 \noindent \subsection{Simulation framework}
 \section{\uppercase{Protocol evaluation}}  
 \label{sec:Simulation Results and Analysis}
 \noindent \subsection{Simulation framework}
@@ -624,7 +721,7 @@ nodes, and thus enables the extension of the network lifetime.
 \parskip 0pt    
 \begin{figure}[t!]
 \centering
 \parskip 0pt    
 \begin{figure}[t!]
 \centering
- \includegraphics[scale=0.45] {R/CR.pdf} 
+ \includegraphics[scale=0.45] {CR.pdf} 
 \caption{Coverage ratio}
 \label{fig3}
 \end{figure} 
 \caption{Coverage ratio}
 \label{fig3}
 \end{figure} 
@@ -645,7 +742,7 @@ used for the different performance metrics.
 
 \begin{figure}[h!]
 \centering
 
 \begin{figure}[h!]
 \centering
-\includegraphics[scale=0.45]{R/EC.pdf} 
+\includegraphics[scale=0.45]{EC.pdf} 
 \caption{Energy consumption per period}
 \label{fig95}
 \end{figure} 
 \caption{Energy consumption per period}
 \label{fig95}
 \end{figure} 
@@ -681,7 +778,7 @@ Figure~\ref{fig8}.
 
 \begin{figure}[h!]
 \centering
 
 \begin{figure}[h!]
 \centering
-\includegraphics[scale=0.45]{R/T.pdf}  
+\includegraphics[scale=0.45]{T.pdf}  
 \caption{Execution time in seconds}
 \label{fig8}
 \end{figure} 
 \caption{Execution time in seconds}
 \label{fig8}
 \end{figure} 
@@ -708,7 +805,7 @@ network lifetime.
 
 \begin{figure}[h!]
 \centering
 
 \begin{figure}[h!]
 \centering
-\includegraphics[scale=0.45]{R/LT.pdf}  
+\includegraphics[scale=0.45]{LT.pdf}  
 \caption{Network lifetime}
 \label{figLT95}
 \end{figure} 
 \caption{Network lifetime}
 \label{figLT95}
 \end{figure} 
@@ -756,7 +853,7 @@ Campus France for  the received support. This paper is  also partially funded by
 the Labex ACTION program (contract ANR-11-LABX-01-01).
 
 %\vfill
 the Labex ACTION program (contract ANR-11-LABX-01-01).
 
 %\vfill
-\bibliographystyle{apalike}
+\bibliographystyle{plain}
 {\small
 \bibliography{Example}}
 
 {\small
 \bibliography{Example}}