

\documentclass[conference]{IEEEtran}


\ifCLASSINFOpdf

\else

\fi

\hyphenation{op-tical net-works semi-conduc-tor}


\usepackage{etoolbox}
\usepackage{float} 
\usepackage{epsfig}
\usepackage{calc}
 \usepackage{times,amssymb,amsmath,latexsym}
\usepackage{graphics}
\usepackage{graphicx}
\usepackage{amsmath}
%\usepackage{txfonts}
\usepackage{algorithmic}
\usepackage[T1]{fontenc}
\usepackage{tikz}
%\usepackage{algorithm}
%\usepackage{algpseudocode}
%\usepackage{algorithmwh}
\usepackage{subfigure}
\usepackage{float}
\usepackage{xspace}
\usepackage[linesnumbered,ruled,vlined,commentsnumbered]{algorithm2e}
\usepackage{epsfig}
\usepackage{caption}
\usepackage{multicol}
\usepackage{times}
\usepackage{graphicx,epstopdf}
\epstopdfsetup{suffix=}
\DeclareGraphicsExtensions{.ps}
\DeclareGraphicsRule{.ps}{pdf}{.pdf}{`ps2pdf -dEPSCrop -dNOSAFER #1 \noexpand\OutputFile}


\begin{document}
%
% paper title
% can use linebreaks \\ within to get better formatting as desired
\title{Coverage and Lifetime Optimization \\
in Heterogeneous Energy Wireless Sensor Networks}

\author{\IEEEauthorblockN{Ali Kadhum Idrees, Karine Deschinkel, Michel Salomon, 
and Rapha\"el Couturier}
\IEEEauthorblockA{FEMTO-ST Institute, UMR 6174 CNRS \\
University of Franche-Comt\'e  \\
Belfort, France\\
Email: ali.idness@edu.univ-fcomte.fr, $\lbrace$karine.deschinkel, michel.salomon, 
raphael.couturier$\rbrace$@univ-fcomte.fr}}

\maketitle

\begin{abstract}
One of  the fundamental challenges in Wireless  Sensor Networks (WSNs)
is the coverage preservation and the extension of the network lifetime
continuously  and  effectively  when  monitoring a  certain  area  (or
region) of  interest. In this paper, a  coverage optimization protocol
to  improve  the  lifetime  in heterogeneous  energy  wireless  sensor
networks  is proposed.   The area  of interest  is first  divided into
subregions using  a divide-and-conquer method and  then the scheduling
of sensor node  activity is planned for each  subregion.  The proposed
scheduling  considers rounds  during which  a small  number  of nodes,
remaining active  for sensing, is  selected to ensure  coverage.  Each
round consists  of four phases:  (i)~Information Exchange, (ii)~Leader
Election, (iii)~Decision,  and (iv)~Sensing.  The  decision process is
carried  out  by a  leader  node,  which  solves an  integer  program.
Simulation  results show that  the proposed  approach can  prolong the
network lifetime and improve the coverage performance.
\end{abstract}

\begin{IEEEkeywords}
Wireless   Sensor   Networks,   Area   Coverage,   Network   lifetime,
Optimization, Scheduling.
\end{IEEEkeywords}
%\keywords{Area Coverage, Network lifetime, Optimization, Distributed Protocol}
 
\IEEEpeerreviewmaketitle

\section{Introduction}

\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 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 to a monitoring center 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}.   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
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}.   In  this  paper,  we  concentrate  on  the  area
coverage  problem,  with  the  objective  of  maximizing  the  network
lifetime  by using  an adaptive  scheduling. The  area of  interest is
divided into subregions and an activity scheduling for sensor nodes is
planned for each 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 scheduling scheme considers rounds, where
a round starts with a  discovery phase to exchange information between
sensors of  the subregion, in order  to choose in a  suitable manner a
sensor node to  carry out a coverage strategy.  This coverage strategy
involves  the  solving  of  an  integer program,  which  provides  the
activation of the sensors for the sensing phase of the current round.

The remainder of the paper is organized as follows.  The next section
% Section~\ref{rw}
reviews the related work in the field.  Section~\ref{pd} is devoted to
the    scheduling     strategy    for    energy-efficient    coverage.
Section~\ref{cp} gives  the coverage model formulation,  which is used
to schedule  the activation  of sensors.  Section~\ref{exp}  shows the
simulation results obtained using the discrete event simulator OMNeT++
\cite{varga}. They  fully demonstrate  the usefulness of  the proposed
approach.  Finally,  we give  concluding remarks and  some suggestions
for future works in Section~\ref{sec:conclusion}.

\section{Related works}
\label{rw}
\indent In this section, we only review some recent works dealing with
the coverage lifetime maximization  problem, where the objective is to
optimally  schedule  sensors'  activities  in  order  to  extend  WSNs
lifetime.

In \cite{chin2007}  is proposed a novel  distributed heuristic, called
Distributed Energy-efficient  Scheduling for k-coverage  (DESK), which
ensures that the energy consumption  among the sensors is balanced and
the lifetime  maximized while the coverage  requirement is maintained.
This  heuristic   works  in  rounds,  requires   only  1-hop  neighbor
information,  and each  sensor decides  its status  (active  or sleep)
based    on    the    perimeter    coverage    model    proposed    in
\cite{Huang:2003:CPW:941350.941367}.    More    recently,   Shibo   et
al. \cite{Shibo}  expressed the coverage  problem as a  minimum weight
submodular  set cover  problem  and proposed  a Distributed  Truncated
Greedy Algorithm  (DTGA) to  solve it. They  take advantage  from both
temporal  and spatial  correlations between  data sensed  by different
sensors,  and   leverage  prediction,  to  improve   the  lifetime.  A
Coverage-Aware  Clustering Protocol (CACP),  which uses  a computation
method  to  find  the  cluster  size  minimizing  the  average  energy
consumption rate  per unit area, has  been proposed by Bang  et al. in
\cite{Bang}. Their protocol is based on a cost metric that selects the
redundant  sensors with higher  power as  best candidates  for cluster
heads and the active sensors that  cover the area of interest the more
efficiently.

% TO BE CONTINUED

Zhixin et  al. \cite{Zhixin}  propose a Distributed  Energy- Efficient
Clustering  with  Improved Coverage(DEECIC)  algorithm  which aims  at
clustering with the  least number of cluster heads  to cover the whole
network  and  assigning  a unique  ID  to  each  node based  on  local
information. In  addition, this protocol  periodically updates cluster
heads according to the joint  information of nodes $’ $residual energy
and  distribution.  Although DEECIC  does not  require knowledge  of a
node's  geographic  location,  it  guarantees  full  coverage  of  the
network. However,  the protocol does not make  any activity scheduling
to set redundant sensors in passive mode in order to conserve energy.

C.  Liu and  G. Cao  \cite{Changlei}  studied how  to schedule  sensor
active  time to  maximize their  coverage during  a  specified network
lifetime. Their objective is to maximize the spatial-temporal coverage
by  scheduling sensors activity  after they  have been  deployed. They
proposed both centralized  and distributed algorithms. The distributed
parallel optimization  protocol can ensure each sensor  to converge to
local optimality without conflict with each other.

S.  Misra  et al.  \cite{Misra}  proposed  a  localized algorithm  for
coverage in  sensor networks. The algorithm conserve  the energy while
ensuring  the network coverage  by activating  the subset  of sensors,
with  the  minimum  overlap  area.The proposed  method  preserves  the
network connectivity by formation of the network backbone.

L. Zhang et al.  \cite{Zhang} presented a novel distributed clustering
algorithm  called  Adaptive  Energy  Efficient  Clustering  (AEEC)  to
maximize  network lifetime.  In  this study,  they  are introduced  an
optimization,   which   includes   restricted  global   re-clustering,
intra-cluster node sleeping scheduling and adaptive transmission range
adjustment to conserve the  energy, while connectivity and coverage is
ensured.

J. A. Torkestani  \cite{Torkestani} proposed a learning automata-based
energy-efficient  coverage protocol  named as  LAEEC to  construct the
degree-constrained connected  dominating set (DCDS) in  WSNs. He shows
that the correct choice of  the degree-constraint of DCDS balances the
network load on the active nodes and leads to enhance the coverage and
network lifetime.
 
The main  contribution of our approach addresses  three main questions
to build a scheduling strategy:
%\begin{itemize}
%\item 
{\bf How must the  phases for information exchange, decision and
  sensing be planned over time?}   Our algorithm divides the time line
  into a number  of rounds. Each round contains  4 phases: Information
  Exchange, Leader Election, Decision, and Sensing.

%\item 
{\bf What are the rules to decide which node has to be turned on
  or off?}  Our algorithm tends to limit the overcoverage of points of
  interest  to avoid  turning on  too many sensors covering  the same
  areas  at the  same time,  and tries  to prevent  undercoverage. The
  decision  is  a  good   compromise  between  these  two  conflicting
  objectives.

%\item 
{\bf Which  node should make such a  decision?}  As mentioned in
  \cite{pc10}, both centralized  and distributed algorithms have their
  own  advantages and  disadvantages. Centralized  coverage algorithms
  have the advantage  of requiring very low processing  power from the
  sensor  nodes, which  have usually  limited  processing capabilities.
  Distributed  algorithms  are  very  adaptable  to  the  dynamic  and
  scalable nature of sensors network.  Authors in \cite{pc10} conclude
  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 centralized approach  compared to a distributed one. Our
  work does not  consider only one leader to  compute and to broadcast
  the scheduling decision  to all the sensors.  When  the network size
  increases,  the network  is  divided into  many  subregions and  the
  decision is made by a leader in each subregion.
%\end{itemize}



\section{Activity scheduling}
\label{pd}

We consider  a randomly and  uniformly deployed network  consisting of
static  wireless sensors. The  wireless sensors  are deployed  in high
density to ensure initially a full coverage of the interested area. We
assume that  all nodes are  homogeneous in terms of  communication and
processing capabilities and heterogeneous in term of energy provision.
The  location  information is  available  to  the  sensor node  either
through hardware  such as embedded  GPS or through  location discovery
algorithms.   The   area  of  interest   can  be  divided   using  the
divide-and-conquer strategy  into smaller areas  called subregions and
then  our coverage  protocol  will be  implemented  in each  subregion
simultaneously.   Our protocol  works in  rounds fashion  as  shown in
figure~\ref{fig1}.

%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. \\ 

\begin{figure}[ht!]
\centering
\includegraphics[width=85mm]{FirstModel.eps} % 70mm
\caption{Multi-round coverage protocol}
\label{fig1}
\end{figure} 

Each round  is divided  into 4 phases  : Information  (INFO) Exchange,
Leader  Election, Decision,  and  Sensing.  For  each  round there  is
exactly one set cover responsible  for the sensing task.  This protocol is
more reliable  against an unexpected node failure  because it works
in rounds.   On the  one hand,  if a node  failure is  detected before
making the decision, the node will not participate to this phase, and,
on the other hand, if the  node failure occurs after the decision, the
sensing task of the network  will be temporarily affected: only during
the period of sensing until a  new round starts, since a new set cover
will take  charge of the  sensing task in  the next round.  The energy
consumption  and  some other  constraints  can  easily  be taken  into
account  since  the  sensors   can  update  and  then  exchange  their
information (including their residual energy) at the beginning of each
round.  However,   the  pre-sensing  phases   (INFO  Exchange,  Leader
Election,  Decision) are energy  consuming for  some nodes,  even when
they do not  join the network to monitor the  area. Below, we describe
each phase in more details.

\subsection{Information exchange phase}

Each sensor node $j$ sends  its position, remaining energy $RE_j$, and
the number of local neighbours  $NBR_j$ to all wireless sensor nodes in
its subregion by using an INFO  packet and then listens to the packets
sent from  other nodes.  After that, each  node will  have information
about  all the  sensor  nodes in  the  subregion.  In  our model,  the
remaining energy corresponds to the time that a sensor can live in the
active mode.

%\subsection{\textbf Working Phase:}

%The working phase works in rounding fashion. Each round include 3 steps described as follow :

\subsection{Leader election phase}
This  step includes choosing  the Wireless  Sensor Node  Leader (WSNL),
which  will  be  responsible  for executing  the coverage  algorithm.  Each
subregion  in  the   area  of  interest  will  select   its  own  WSNL
independently  for each  round.  All the  sensor  nodes cooperate  to
select WSNL.  The nodes in the  same subregion will  select the leader
based on  the received  information from all  other nodes in  the same
subregion.  The selection criteria  in order  of priority  are: larger
number  of neighbours,  larger remaining  energy, and  then in  case of
equality, larger index.

\subsection{Decision phase}
The  WSNL will  solve an  integer  program (see  section~\ref{cp})  to
select which sensors will be  activated in the following sensing phase
to cover  the subregion.  WSNL will send  Active-Sleep packet  to each
sensor in the subregion based on the algorithm's results.
%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.
%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. 

\subsection{Sensing phase}
Active  sensors  in the  round  will  execute  their sensing  task  to
preserve maximal  coverage in the  region of interest. We  will assume
that the cost  of keeping a node awake (or asleep)  for sensing task is
the same  for all wireless sensor  nodes in the  network.  Each sensor
will receive  an Active-Sleep  packet from WSNL  informing it  to stay
awake or to go to sleep  for a time  equal to  the period of  sensing until
starting a new round.

%\subsection{Sensing coverage model}
%\label{pd}

%\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.
%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$.
\indent We consider a boolean  disk coverage model which is the most
widely used sensor coverage model in the literature. Each sensor has a
constant sensing range $R_s$. All  space points within a disk centered
at  the sensor with  the radius  of the  sensing range  is said  to be
covered by this sensor. We also assume that the communication range is
at   least  twice    the size of the   sensing  range.   In  fact,   Zhang  and
Zhou~\cite{Zhang05} proved that if  the transmission range fulfills the
previous  hypothesis, a  complete coverage  of a  convex  area implies
connectivity among the working nodes in the active mode.
%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}:

%\begin{figure}[h!]
%\centering
%\begin{tabular}{cc}
%%\includegraphics[scale=0.25]{fig1.pdf}\\ %& \includegraphics[scale=0.10]{1.pdf} \\
%%(A) Figure 1 & (B) Figure 2
%\end{tabular}
%\caption{Unit Circle in radians. }
%\label{fig:cluster1}
%\end{figure}

%By using the Unit Circle in figure~\ref{fig:cluster1}, 
%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.
% 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.

\indent Instead of working with the coverage area, we consider for each
sensor a set of points called  primary points. We also assume that the
sensing disk defined  by a sensor is covered if  all the primary points of
this sensor are covered.
%\begin{figure}[h!]
%\centering
%\begin{tabular}{cc}
%%\includegraphics[scale=0.25]{fig2.pdf}\\ %& \includegraphics[scale=0.10]{1.pdf} \\
%%(A) Figure 1 & (B) Figure 2
%\end{tabular}
%\caption{Wireless Sensor Node Area Coverage Model.}
%\label{fig:cluster2}
%\end{figure}
By  knowing the  position (point  center: ($p_x,p_y$))  of  a wireless
sensor node  and its $R_s$,  we calculate the primary  points directly
based on the proposed model. We  use these primary points (that can be
increased or decreased if necessary)  as references to ensure that the
monitored  region  of interest  is  covered  by  the selected  set  of
sensors, instead of using all the points in the area.

\indent  We can  calculate  the positions  of  the selected  primary
points in  the circle disk of  the sensing range of  a wireless sensor
node (see figure~\ref{fig2}) as follows:\\
$(p_x,p_y)$ = point center of wireless sensor node\\  
$X_1=(p_x,p_y)$ \\ 
$X_2=( p_x + R_s * (1), p_y + R_s * (0) )$\\           
$X_3=( p_x + R_s * (-1), p_y + R_s * (0)) $\\
$X_4=( p_x + R_s * (0), p_y + R_s * (1) )$\\
$X_5=( p_x + R_s * (0), p_y + R_s * (-1 )) $\\
$X_6= ( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (0)) $\\
$X_7=( p_x + R_s *  (\frac{\sqrt{2}}{2}), p_y + R_s * (0))$\\
$X_8=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
$X_9=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
$X_{10}=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
$X_{11}=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
$X_{12}=( p_x + R_s * (0), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
$X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $.

 \begin{figure}[h!]
%\centering
% \begin{multicols}{6}
\centering
%\includegraphics[scale=0.10]{fig21.pdf}\\~ ~ ~(a)
%\includegraphics[scale=0.10]{fig22.pdf}\\~ ~ ~(b)
\includegraphics[scale=0.25]{principles13.eps}
%\includegraphics[scale=0.10]{fig25.pdf}\\~ ~ ~(d)
%\includegraphics[scale=0.10]{fig26.pdf}\\~ ~ ~(e)
%\includegraphics[scale=0.10]{fig27.pdf}\\~ ~ ~(f)
%\end{multicols} 
\caption{Wireless sensor node represented by 13 primary points}
\label{fig2}
\end{figure}

\section{Coverage problem formulation}
\label{cp}
%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}:\\


%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}:\\

\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,  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  variables $X_{j}$,  which  determine  the
activation of  sensor $j$ in the  sensing phase of the  round. We also
consider  primary points  as targets.   The set  of primary  points is
denoted by $P$ and the set of sensors by $J$.

\noindent  For  a primary  point  $p$,  let  $\alpha_{jp}$ denote  the
indicator function of whether the point $p$ is covered, that is:
\begin{equation}
\alpha_{jp} = \left \{ 
\begin{array}{l l}
  1 & \mbox{if the primary point $p$ is covered} \\
 & \mbox{by sensor node $j$}, \\
  0 & \mbox{otherwise.}\\
\end{array} \right.
%\label{eq12} 
\end{equation}
The number of active sensors that cover the primary point $p$ is equal
to $\sum_{j \in J} \alpha_{jp} * X_{j}$ where:
\begin{equation}
X_{j} = \left \{ 
\begin{array}{l l}
  1& \mbox{if sensor $j$  is active,} \\
  0 &  \mbox{otherwise.}\\
\end{array} \right.
%\label{eq11} 
\end{equation}
We define the Overcoverage variable $\Theta_{p}$ as:
\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}
\noindent More precisely, $\Theta_{p}$ represents the number of active
sensor  nodes  minus  one  that  cover the  primary  point  $p$.\\
The Undercoverage variable $U_{p}$ of the primary point $p$ is defined
by:
\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}

\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}
\begin{itemize}
\item $X_{j}$  : indicates whether or  not the sensor  $j$ is actively
  sensing in the round (1 if yes and 0 if not);
\item $\Theta_{p}$  : {\it overcoverage}, the number  of sensors minus
  one that are covering the primary point $p$;
\item $U_{p}$  : {\it undercoverage},  indicates whether or  not the primary point
  $p$ is being covered (1 if not covered and 0 if covered).
\end{itemize}

The first group  of constraints indicates that some  primary point $p$
should be covered by at least one  sensor and, if it is not always the
case,  overcoverage  and  undercoverage  variables  help  balancing  the
restriction  equations by taking  positive values.  There are  two main         
objectives.  First, we limit the overcoverage of primary points in order to
activate a minimum number of sensors.  Second we prevent the absence of monitoring on
 some parts of the subregion by  minimizing the undercoverage.   The
weights  $w_\theta$  and  $w_U$  must  be properly  chosen  so  as  to
guarantee that  the maximum number  of points are covered  during each
round.
 
%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
%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.
%\subsection{Notations and assumptions}

%\begin{itemize}
%\item $m$ : the number of targets
%\item $n$ : the number of sensors
%\item $K$ : maximal number of cover sets
%\item $i$ : index of target ($i=1..m$)
%\item $j$ : index of sensor ($j=1..n$)
%\item $k$ : index of cover set ($k=1..K$)
%\item $T_0$ : initial set of targets
%\item $S_0$ : initial set of sensors
%\item $T $ : set of targets which are not covered by at least one cover set
%\item $S$ : set of available sensors
%\item $S_0(i)$ : set of sensors which cover the target $i$
%\item $T_0(j)$ : set of targets covered by sensor $j$
%\item $C_k$ : cover set of index $k$
%\item $T(C_k)$ : set of targets covered by the cover set $k$
%\item $NS(i)$ : set of  available sensors which cover the target $i$
%\item $NC(i)$ : set of cover sets which do not cover the target $i$
%\item $|.|$ : cardinality of the set

%\end{itemize}

\section{Simulation results}
\label{exp}

In this section, we conducted  a series of simulations to evaluate the
efficiency  and the relevance of  our approach,  using the  discrete event
simulator  OMNeT++  \cite{varga}. We  performed  simulations for  five
different densities varying from 50 to 250~nodes. Experimental results
were  obtained from  randomly generated  networks in  which  nodes are
deployed over a  $(50 \times 25)~m^2 $ sensing  field. 
More precisely, the deployment is controlled at a coarse scale in
  order to ensure that the  deployed nodes can fully cover the sensing
  field with the given sensing range.
10~simulation  runs  are performed  with
different  network  topologies for  each  node  density.  The  results
presented hereafter  are the  average of these  10 runs.  A simulation
ends  when  all the  nodes  are dead  or  the  sensor network  becomes
disconnected (some nodes may not be  able to send, to a base station, an
event they sense).

Our proposed coverage protocol uses the radio energy dissipation model
defined by~\cite{HeinzelmanCB02} as  energy consumption model for each
wireless  sensor node  when  transmitting or  receiving packets.   The
energy of  each node in a  network is initialized  randomly within the
range 24-60~joules, and each sensor node will consume 0.2 watts during
the sensing period, which will last 60 seconds. Thus, an
active  node will  consume  12~joules during the sensing  phase, while  a
sleeping  node will  use  0.002  joules.  Each  sensor  node will  not
participate in the next round if its remaining energy is less than 12
joules.  In  all  experiments,  the  parameters  are  set  as  follows:
$R_s=5~m$, $w_{\Theta}=1$, and $w_{U}=|P^2|$.

We  evaluate the  efficiency of  our approach by using  some performance
metrics such as: coverage ratio,  number of active nodes ratio, energy
saving  ratio, energy consumption,  network lifetime,  execution time,
and number of stopped simulation runs.  Our approach called strategy~2
(with two leaders)  works with two subregions, each  one having a size
of $(25 \times 25)~m^2$.  Our strategy will be compared with two other
approaches. The first one,  called strategy~1 (with one leader), works
as strategy~2, but considers only one region of $(50 \times 25)$ $m^2$
with only  one leader.  The  other approach, called  Simple Heuristic,
consists in uniformly dividing   the region into squares  of $(5 \times
5)~m^2$.   During the  decision phase,  in  each square,  a sensor  is
randomly  chosen, it  will remain  turned  on for  the coming  sensing
phase.

\subsection{The impact of the number of rounds on the coverage ratio} 

In this experiment, the coverage ratio measures how much the area of a
sensor field is  covered. In our case, the  coverage ratio is regarded
as the number  of primary points covered among the  set of all primary
points  within the field.  Figure~\ref{fig3} shows  the impact  of the
number of rounds on the  average coverage ratio for 150 deployed nodes
for the  three approaches.  It can be  seen that the  three approaches
give  similar  coverage  ratios  during  the first  rounds.  From  the
9th~round the  coverage ratio  decreases continuously with  the simple
heuristic, while the two other strategies provide superior coverage to
$90\%$ for five more rounds.  Coverage ratio decreases when the number
of rounds increases  due to dead nodes. Although  some nodes are dead,
thanks to  strategy~1 or~2,  other nodes are  preserved to  ensure the
coverage. Moreover, when  we have a dense sensor  network, it leads to
maintain the full coverage for a larger number of rounds. Strategy~2 is
slightly more efficient than strategy 1, because strategy~2 subdivides
the region into 2~subregions and  if one of the two subregions becomes
disconnected,  the coverage   may  be  still  ensured   in  the  remaining
subregion.

\parskip 0pt 
\begin{figure}[h!]
\centering
\includegraphics[scale=0.5]{TheCoverageRatio150g.eps} %\\~ ~ ~(a)
\caption{The impact of the number of rounds on the coverage ratio for 150 deployed nodes}
\label{fig3}
\end{figure} 

\subsection{The impact of the number of rounds on the active sensors ratio} 

It is important to have as few active nodes as possible in each round,
in  order to  minimize  the communication  overhead  and maximize  the
network lifetime.  This point is  assessed through the  Active Sensors
Ratio (ASR), which is defined as follows:
\begin{equation*}
\scriptsize
\mbox{ASR}(\%) = \frac{\mbox{Number of active sensors 
during the current sensing phase}}{\mbox{Total number of sensors in the network
for the region}} \times 100.
\end{equation*}
Figure~\ref{fig4} shows  the average active nodes ratio versus rounds
for 150 deployed nodes.

\begin{figure}[h!]
\centering
\includegraphics[scale=0.5]{TheActiveSensorRatio150g.eps} %\\~ ~ ~(a)
\caption{The impact of the number of rounds on the active sensors ratio for 150 deployed nodes }
\label{fig4}
\end{figure} 

The  results presented  in figure~\ref{fig4}  show the  superiority of
both proposed  strategies, the strategy  with two leaders and  the one
with a  single leader,  in comparison with  the simple  heuristic. The
strategy with one leader uses less active nodes than the strategy with
two leaders until the last  rounds, because it uses central control on
the whole sensing field.  The  advantage of the strategy~2 approach is
that even if a network is disconnected in one subregion, the other one
usually  continues  the optimization  process,  and  this extends  the
lifetime of the network.

\subsection{The impact of the number of rounds on the energy saving ratio} 

In this experiment, we consider a performance metric linked to energy.
This metric, called Energy Saving Ratio (ESR), is defined by:
\begin{equation*}
\scriptsize
\mbox{ESR}(\%) = \frac{\mbox{Number of alive sensors during this round}}
{\mbox{Total number of sensors in the network for the region}} \times 100.
\end{equation*}
The  longer the ratio  is,  the more  redundant sensor  nodes are
switched off, and consequently  the longer the  network may  live.
Figure~\ref{fig5} shows the average  Energy Saving Ratio versus rounds
for all three approaches and for 150 deployed nodes.

\begin{figure}[h!]
%\centering
% \begin{multicols}{6}
\centering
\includegraphics[scale=0.5]{TheEnergySavingRatio150g.eps} %\\~ ~ ~(a)
\caption{The impact of the number of rounds on the energy saving ratio for 150 deployed nodes}
\label{fig5}
\end{figure} 

The simulation  results show that our strategies  allow to efficiently
save energy by  turning off some sensors during  the sensing phase. As
expected, the strategy with one leader is usually slightly better than
the second  strategy, because the  global optimization permits  to turn
off more  sensors. Indeed,  when there are  two subregions  more nodes
remain awake  near the border shared  by them. Note that  again as the
number of  rounds increases  the two leaders'  strategy becomes  the most
performing one, since it takes longer  to have the two subregion networks
simultaneously disconnected.

\subsection{The percentage of stopped simulation runs}

We  will now  study  the percentage  of  simulations, which  stopped due  to
network  disconnections per round  for each  of the  three approaches.
Figure~\ref{fig6} illustrates the percentage of stopped simulation
runs per  round for 150 deployed  nodes.  It can be  observed that the
simple heuristic is  the approach, which  stops first because  the nodes
are   randomly chosen.   Among  the  two   proposed  strategies,  the
centralized  one  first  exhibits  network  disconnections.   Thus,  as
explained previously, in case  of the strategy with several subregions
the  optimization effectively  continues as  long  as a  network in  a
subregion   is  still   connected.   This   longer   partial  coverage
optimization participates in extending the network lifetime.

\begin{figure}[h!]
\centering
\includegraphics[scale=0.5]{TheNumberofStoppedSimulationRuns150g.eps} 
\caption{The percentage of stopped simulation runs compared to the number of rounds for 150 deployed nodes }
\label{fig6}
\end{figure} 

\subsection{The energy consumption}

In this experiment, we study the effect of the multi-hop communication
protocol  on the  performance of  the  strategy with  two leaders  and
compare  it  with  the  other  two  approaches.   The  average  energy
consumption  resulting  from  wireless  communications  is  calculated
by taking into account the  energy spent by  all the nodes when  transmitting and
receiving  packets during  the network  lifetime. This  average value,
which  is obtained  for 10~simulation  runs,  is then  divided by  the
average number of rounds to define a metric allowing a fair comparison
between networks having different densities.

Figure~\ref{fig7} illustrates the energy consumption for the different
network  sizes and  the three  approaches. The  results show  that the
strategy  with  two  leaders  is  the  most  competitive  from  the energy
consumption point  of view.  A  centralized method, like  the strategy
with  one  leader, has  a  high energy  consumption  due  to  many
communications.   In fact,  a distributed  method greatly  reduces the
number  of communications thanks  to the  partitioning of  the initial
network in several independent subnetworks. Let us notice that even if
a  centralized  method  consumes  far  more  energy  than  the  simple
heuristic, since the energy cost of communications during a round is a
small  part   of  the   energy  spent  in   the  sensing   phase,  the
communications have a small impact on the network lifetime.

\begin{figure}[h!]
\centering
\includegraphics[scale=0.5]{TheEnergyConsumptiong.eps} 
\caption{The energy consumption}
\label{fig7}
\end{figure} 

\subsection{The impact of the number of sensors on execution time}

A  sensor  node has  limited  energy  resources  and computing  power,
therefore it is important that the proposed algorithm has the shortest
possible execution  time. The energy of  a sensor node  must be mainly
used   for  the  sensing   phase,  not   for  the   pre-sensing  ones.   
Table~\ref{table1} gives the average  execution times  in seconds
on a laptop of the decision phase (solving of the optimization problem)
during one  round.  They  are given for  the different  approaches and
various numbers of sensors.  The lack of any optimization explains why
the heuristic has very  low execution times.  Conversely, the strategy
with  one  leader, which  requires  to  solve  an optimization  problem
considering  all  the  nodes  presents  redhibitory  execution  times.
Moreover, increasing the network size by 50~nodes   multiplies the time
by  almost a  factor of  10. The  strategy with  two leaders  has more
suitable times.  We  think that in distributed fashion  the solving of
the  optimization problem  in a  subregion  can be  tackled by  sensor
nodes.   Overall,  to  be  able to  deal  with  very  large  networks,  a
distributed method is clearly required.

\begin{table}[ht]
\caption{THE EXECUTION TIME(S) VS THE NUMBER OF SENSORS}
% title of Table
\centering

% used for centering table
\begin{tabular}{|c|c|c|c|}
% centered columns (4 columns)
      \hline
%inserts double horizontal lines
Sensors number & Strategy~2 & Strategy~1  & Simple heuristic \\ [0.5ex]
 & (with two leaders) & (with one leader) & \\ [0.5ex]
%Case & Strategy (with Two Leaders) & Strategy (with One Leader) & Simple Heuristic \\ [0.5ex]
% inserts table
%heading
\hline
% inserts single horizontal line
50 & 0.097 & 0.189 & 0.001 \\
% inserting body of the table
\hline
100 & 0.419 & 1.972 & 0.0032 \\
\hline
150 & 1.295 & 13.098 & 0.0032 \\
\hline
200 & 4.54 & 169.469 & 0.0046 \\
\hline
250 & 12.252 & 1581.163 & 0.0056 \\
% [1ex] adds vertical space
\hline
%inserts single line
\end{tabular}
\label{table1}
% is used to refer this table in the text
\end{table}

\subsection{The network lifetime}

Finally, we  have defined the network  lifetime as the  time until all
nodes  have  been drained  of  their  energy  or each  sensor  network
monitoring  an area has become  disconnected.  In  figure~\ref{fig8}, the
network  lifetime for different  network sizes  and for  both strategy
with two  leaders and the simple  heuristic is illustrated. 
  We do  not consider  anymore the  centralized strategy  with one
  leader, because, as shown above, this strategy results  in execution
  times that quickly become unsuitable for a sensor network.

\begin{figure}[h!]
%\centering
% \begin{multicols}{6}
\centering
\includegraphics[scale=0.5]{TheNetworkLifetimeg.eps} %\\~ ~ ~(a)
\caption{The network lifetime }
\label{fig8}
\end{figure} 

As  highlighted by figure~\ref{fig8},  the network  lifetime obviously
increases when  the size  of the network  increases, with  our approach
that leads to  the larger lifetime improvement.  By  choosing the  best 
suited nodes, for each round,  to cover the  region of interest  and by
letting the other ones sleep in order to be used later in next rounds,
our strategy efficiently prolonges the network lifetime. Comparison shows that
the larger  the sensor number  is, the more our  strategies outperform
the simple heuristic.  Strategy~2, which uses two leaders, is the best
one because it is robust to network disconnection in one subregion. It
also  means   that  distributing  the  algorithm  in   each  node  and
subdividing the sensing field  into many subregions, which are managed
independently and simultaneously, is the most relevant way to maximize
the lifetime of a network.

\section{Conclusion and future works}
\label{sec:conclusion}

In this paper, we have  addressed the problem of the coverage and the lifetime
optimization  in wireless  sensor networks.   This is  a key  issue as
sensor nodes  have limited  resources in terms  of memory,  energy and
computational power. To  cope with this problem, the  field of sensing
is   divided   into   smaller   subregions  using   the   concept   of
divide-and-conquer method,  and then a  multi-rounds coverage protocol
will optimize  coverage and  lifetime performances in  each subregion.
The  proposed  protocol  combines  two efficient  techniques:  network
leader election  and sensor activity scheduling,  where the challenges
include how to select the  most efficient leader in each subregion and
the best  representative active nodes that will  optimize the network lifetime
while  taking   the  responsibility  of   covering  the  corresponding
subregion.   The network lifetime  in each  subregion is  divided into
rounds, each round consists  of four phases: (i) Information Exchange,
(ii) Leader Election, (iii) an optimization-based Decision in order to
select  the  nodes remaining  active  for  the  last phase,  and  (iv)
Sensing.  The  simulations show the relevance  of the proposed
protocol in  terms of lifetime, coverage ratio,  active sensors ratio,
energy saving,  energy consumption, execution time, and  the number of
stopped simulation  runs due  to network disconnection.   Indeed, when
dealing with  large and dense wireless sensor  networks, a distributed
approach like the one we propose  allows to reduce the difficulty of a
single global optimization problem  by partitioning it in many smaller
problems, one per subregion, that can be solved more easily.

In  future work, we plan  to study  and propose  a coverage  protocol, which
computes  all  active  sensor  schedules  in  one time,  using
optimization  methods  such  as  swarms optimization  or  evolutionary
algorithms.  The round  will still  consist of 4  phases, but  the
  decision phase will compute the schedules for several sensing phases,
  which aggregated together, define a kind of meta-sensing phase.
The computation of all cover sets in one time is far more
difficult, but will reduce the communication overhead.
% use section* for acknowledgement
%\section*{Acknowledgment}




\bibliographystyle{IEEEtran}
\bibliography{bare_conf}


\end{document}


