The remainder of this chapter is organized as follows. The next section is devoted to the DiLCO protocol description. Section \ref{ch4:sec:03} gives the primary points based coverage problem formulation which is used to schedule the activation of sensors. Section \ref{ch4:sec:04} shows the simulation results obtained using the discrete event simulator OMNeT++ \cite{ref158}. They fully demonstrate the usefulness of the proposed approach. Finally, we give concluding remarks in section \ref{ch4:sec:05}.
-
+\vfill
\section{Description of the DiLCO Protocol}
\label{ch4:sec:02}
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$). In the beginning, a node checks whether it has enough energy to stay active during the next sensing phase (i.e., the remaining energy $RE_j$ $\geq$ $E_{th}$ (the amount of energy required to be alive during one period)). 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, and the number of one-hop neighbors still alive. Once the first phase is completed, the nodes of a subregion choose a leader to take the decision based on the criteria described in section \ref{ch4:sec:02:03:02}.
%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{ch4:sec:03}) which provides a set of sensors planned to be active in the next sensing phase. As leader, it will send an ActiveSleep packet 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 ActiveSleep packet to know its state for the coming sensing phase. \textcolor{blue}{The flowchart of DiLCO protocol executed in each sensor node is presented in Figure \ref{flow4}.}
+After that, if the sensor node is leader, it will execute the integer program algorithm (see Section~\ref{ch4:sec:03}) which provides a set of sensors planned to be active in the next sensing phase. As leader, it will send an ActiveSleep packet 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 ActiveSleep packet to know its state for the coming sensing phase. The flowchart of DiLCO protocol executed in each sensor node is presented in Figure \ref{flow4}.
\begin{figure}[ht!]
\centering
As highlighted by Figures~\ref{Figures/ch4/R3/LT}(a) and \ref{Figures/ch4/R3/LT}(b), the network lifetime obviously increases when the size of the network increases, with DiLCO-16 protocol and DiLCO-32 protocol which lead to maximize the lifetime of the network compared with other approaches.
%In figures~\ref{Figures/ch4/R3/LT95} and \ref{Figures/ch4/R3/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes.
-\begin{figure}[h!]
-\centering
+%%\begin{figure}[p!]
+%%\centering
% \begin{multicols}{0}
-\centering
-\includegraphics[scale=0.8]{Figures/ch4/R3/LT95.eps}\\~ ~ ~ ~ ~(a) \\
+%%\centering
+%%\includegraphics[scale=0.8]{Figures/ch4/R3/LT95.eps}\\~ ~ ~ ~ ~(a) \\
%\hfill
-\includegraphics[scale=0.8]{Figures/ch4/R3/LT50.eps}\\~ ~ ~ ~ ~(b)
+%%\includegraphics[scale=0.8]{Figures/ch4/R3/LT50.eps}\\~ ~ ~ ~ ~(b)
%\end{multicols}
-\caption{Network lifetime for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
- \label{Figures/ch4/R3/LT}
-\end{figure}
+%%\caption{Network lifetime for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
+%% \label{Figures/ch4/R3/LT}
+%%\end{figure}
By choosing the best suited nodes, for each period, by optimizing the coverage and lifetime of the network to cover the area of interest and by letting the other ones sleep in order to be used later in next periods, DiLCO-16 protocol and DiLCO-32 protocol efficiently prolong the network lifetime.
Comparison shows that DiLCO-16 protocol and DiLCO-32 protocol, which use distributed optimization over the subregions, are the best ones because they are robust to network disconnection during the network lifetime as well as they consume less energy in comparison with other approaches.
%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.
-
\end{enumerate}
+\begin{figure}[p!]
+\centering
+% \begin{multicols}{0}
+\centering
+\includegraphics[scale=0.8]{Figures/ch4/R3/LT95.eps}\\~ ~ ~ ~ ~(a) \\
+%\hfill
+\includegraphics[scale=0.8]{Figures/ch4/R3/LT50.eps}\\~ ~ ~ ~ ~(b)
+%\end{multicols}
+\caption{Network lifetime for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
+ \label{Figures/ch4/R3/LT}
+\end{figure}
\section{Conclusion}
\label{ch4:sec:05}
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 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 problem, this chapter proposes a two-step approach. Firstly, the field of sensing