From: Michel Salomon Date: Sun, 21 Sep 2014 20:37:25 +0000 (+0200) Subject: Modifications made up to subsection 5.2.2 X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/Sensornets15.git/commitdiff_plain/c9f589ebfb3152a538f0362a51412d6963b9963b Modifications made up to subsection 5.2.2 --- diff --git a/Example.aux b/Example.aux index af34311..41dd5f6 100644 --- a/Example.aux +++ b/Example.aux @@ -16,6 +16,7 @@ \citation{Zhang05} \citation{idrees2014coverage} \citation{pedraza2006} +\newlabel{main_idea}{{3.2}{3}} \providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}} \newlabel{fig2}{{1}{3}} \citation{varga} diff --git a/Example.tex b/Example.tex index 5a2a5cb..8ed81a6 100644 --- a/Example.tex +++ b/Example.tex @@ -295,6 +295,7 @@ $X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $. \fi \subsection{The main idea} +\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 @@ -390,15 +391,15 @@ sensor in the subregion based on the algorithm's results. \subsubsection{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. Algorithm 1, which -will be executed by each node at the beginning of a round, explains how the -Active-Sleep packet is obtained. + +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. Algorithm 1, which will be executed by each +node at the beginning of a round, explains how the Active-Sleep packet is +obtained. \fi @@ -603,13 +604,13 @@ We chose as energy consumption model the one proposed proposed by~\cite{ChinhVu} and based on ~\cite{raghunathan2002energy} with slight modifications. The energy consumed by the communications is added and the part relative to a variable sensing range is removed. We also assume that the nodes have the characteristics -of the Medusa II sensor node platform \cite{raghunathan2002energy}. A sensor +of the Medusa II sensor node platform \cite{raghunathan2002energy}. A sensor node typically consists of four units: a MicroController Unit, an Atmels AVR ATmega103L in case of Medusa II, to perform the computations; a communication -(adio) 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 -status. Table~\ref{table4} summarizes the energy consumed (in milliWatt per +(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 +status. Table~\ref{table4} summarizes the energy consumed (in milliWatt per second) by a node for each of its possible status. \begin{table}[ht] @@ -643,27 +644,25 @@ Computation & ON & ON & ON & 26.83 \\ % is used to refer this table in the text \end{table} -% MICHEL - TO BE CONTINUED - -For the sake of simplicity we ignore the energy needed to turn on the radio, to -start up the sensor node, the transition from one status to another, etc. -%We also do not consider the need of collecting sensing data. PAS COMPRIS -Thus, when a sensor becomes active (i.e., it already decides its status), it can -turn its radio off to save battery. DiLCO protocol uses two types of packets for -communication. The size of the INFO-Packet and Status-Packet are 112 bits and 24 -bits respectively. The value of energy spent to send a 1-bit-content message is -obtained by using the equation in ~\cite{raghunathan2002energy} to calculate the -energy cost for transmitting messages and we propose the same value for -receiving the packets. The energy needed to send or receive a 1-bit is equal to -$0.2575 mW$. - -The initial energy of each node is randomly set in the interval $[500-700]$. -Each sensor node will not participate in the next round if its remaining energy -is less than $E_{th}=36 Joules$, the minimum energy needed for the node to stay -alive during one round. This value has been computed by multiplying the energy -consumed in active state (9.72 mW) by the time in second for one round (3600 -seconds). According to the interval of initial energy, a sensor may be alive -during at most 20 rounds.\\ +Less influent energy consumption sources like when turning on the radio, +starting the sensor node, changing the status of a node, etc., will be neglected +for the sake of simplicity. Each node saves energy by switching off its radio +once it has received its decision status from the corresponding leader (it can +be itself). As explained previously in subsection~\ref{main_idea}, two kinds of +packets for communication are considered in our protocol: INFO packet and +ActiveSleep packet. To compute the energy needed by a node to transmit or +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 is 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 +$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 value has +been computed by multiplying the energy consumed in active state (9.72 mW) by +the time in second for one round (3600 seconds). According to the interval of +initial energy, a sensor may be active during at most 20 rounds. In the simulations, we introduce the following performance metrics to evaluate the efficiency of our approach: @@ -671,13 +670,18 @@ the efficiency of our approach: %\begin{enumerate}[i)] \begin{itemize} -\item {{\bf Coverage Ratio (CR)}:} the coverage ratio measures how much the area of a sensor field is covered. In our case, we treated the sensing fields as a grid, and used each grid point as a sample point -for calculating the coverage. The coverage ratio can be calculated by: +\item {{\bf Coverage Ratio (CR)}:} it measures how well the WSN is able to + observe the area of interest. In our case, we discretized the sensor field + as a regular grid, which yields the following equation to compute the + coverage ratio: \begin{equation*} \scriptsize \mbox{CR}(\%) = \frac{\mbox{$n$}}{\mbox{$N$}} \times 100. \end{equation*} -where $n$ is the number of covered grid points by the active sensors of all subregions during the current sensing phase and $N$ is total number of grid points in the sensing field of the network. In our simulation $N = 51 \times 26 = 1326$ grid points. +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 +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 %simulations, the sensing field has been divided into 50 by 25 grid points, which means %there are $51 \times 26~ = ~ 1326$ points in total. @@ -696,19 +700,23 @@ Where: $A_r^t$ is the number of active sensors in the subregion $r$ during round \fi -\item {{\bf Network Lifetime}:} we define the network lifetime as the time until the coverage ratio drops below a predefined threshold. We denoted by $Lifetime95$ (respectively $Lifetime50$) as the amount of time during which the network can satisfy an area coverage greater than $95\%$ (repectively $50\%$). We assume that the network -is alive until all nodes have been drained of their energy or the -sensor network becomes disconnected . Network connectivity is important because an -active sensor node without connectivity towards a base station cannot -transmit information on an event in the area that it monitors. +\item {{\bf Network Lifetime}:} we define the network lifetime as the time until + the coverage ratio drops below a predefined threshold. We denote by + $Lifetime_{95}$ (respectively $Lifetime_{50}$) the amount of time during which + the network can satisfy an area coverage greater than $95\%$ (respectively + $50\%$). We assume that the sensor network can fulfill its task until all its + nodes have been drained of their energy or it becomes disconnected. Network + connectivity is crucial because an active sensor node without connectivity + towards a base station cannot transmit any information regarding an observed + event in the area that it monitors. - -\item {{\bf Energy Consumption}:} - - Energy Consumption (EC) can be seen as the total energy consumed by the sensors during the $Lifetime95$ or $Lifetime50$ divided by the number of periods. The EC can be computed as follow: \\ +\item {{\bf Energy Consumption}:} Energy Consumption (EC) can be seen as the + total 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*} \scriptsize -\mbox{EC} = \frac{\sum\limits_{m=1}^{M} \left( E^{\mbox{com}}_m+E^{\mbox{list}}_m+E^{\mbox{comp}}_m + E^{a}+E^{s} \right)}{M_L}, +\mbox{EC} = \frac{\sum\limits_{m=1}^{M} \left( E^{\mbox{com}}_m+E^{\mbox{list}}_m+E^{\mbox{comp}}_m + E^{a}_m+E^{s}_m \right)}{M}, \end{equation*} %\begin{equation*} @@ -716,15 +724,16 @@ transmit information on an event in the area that it monitors. %\mbox{EC} = \frac{\mbox{$\sum\limits_{d=1}^D E^c_d$}}{\mbox{$D$}} + \frac{\mbox{$\sum\limits_{d=1}^D %E^l_d$}}{\mbox{$D$}} + \frac{\mbox{$\sum\limits_{d=1}^D E^a_d$}}{\mbox{$D$}} + %\frac{\mbox{$\sum\limits_{d=1}^D E^s_d$}}{\mbox{$D$}}. %\end{equation*} -where $M$ corresponds to the number of periods. The total 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 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 decision to go -active or sleep in period $m$. $E^{\scriptsize \mbox{comp}}_m$ refers to the -energy needed by all the leader nodes to solve the integer program during a -period. Finally, $E^a_{m}$ and $E^s_{m}$ indicate the energy consumed by the whole network in the sensing round. +where $M$ corresponds to the number of periods. The total 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 +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 +decision to go active or sleep in period $m$. $E^{\scriptsize \mbox{comp}}_m$ +refers to the energy needed by all the leader nodes to solve the integer program +during a period. Finally, $E^a_{m}$ and $E^s_{m}$ indicate the energy consumed +by the whole network in the sensing phase (active and sleeping nodes). \iffalse \item {{\bf Execution Time}:} a sensor node has limited energy resources and computing power, @@ -742,45 +751,73 @@ disconnected (some nodes are dead and are not able to send information to the ba %\end{enumerate} -%\subsection{Performance Analysis for differnet subregions} +%\subsection{Performance Analysis for different subregions} \subsection{Performance Analysis} \label{sub1} -We first concentrate on the required number of subregions making effective our -protocol. Thus our DiLCO protocol is declined into five versions: DiLCO-2, -DiLCO-4, DiLCO-8, DiLCO-16, and DiLCO-32, corresponding to $2$, $4$, $8$, $16$ -or $32$ subregions (leaders). +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 +centralized approach, are not presented because they require high execution +times to solve the integer program and therefore consume too much energy. -In this subsection, we study the performance of our DiLCO protocol for different number of subregions (Leaders). -The DiLCO-1 protocol is a centralized approach on all the area of the interest, while DiLCO-2, DiLCO-4, DiLCO-8, DiLCO-16 and DiLCO-32 are distributed on two, four, eight, sixteen, and thirty-two subregions respectively. We do not take into account the DiLC0-1 protocol in our simulation results because it requires high execution time to solve the integer program and thus it is too costly in term of energy. +We compare our protocol to two other approaches. The first one, called DESK and +proposed by ~\cite{ChinhVu} is a fully distributed coverage algorithm. The +second one, called GAF ~\cite{xu2001geography}, consists in dividing the region +into fixed squares. During the decision phase, in each square, one sensor is +chosen to remain active during the sensing phase. -Our method is compared with other two approaches. The first approach, called DESK and proposed by ~\cite{ChinhVu} is a full distributed coverage algorithm. The second approach, called GAF ~\cite{xu2001geography}, consists in dividing the region into fixed squares. During the decision phase, in each square, one sensor is chosen to remain on during the sensing phase time. +\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 +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 +ratio. In case of DiLCO-2 (respectively DiLCO-4), the coverage ratio exhibits a +fast decrease with the number of periods and reaches zero value in period {\bf + X} (respectively {\bf Y}), whereas the other versions of DiLCO, DESK, and GAF +ensure a coverage ratio above 50\% for subsequent periods. We believe that the +results obtained with these two methods can be explained by a high consumption +of energy and we will check this assumption in the next subsection. + +Concerning DiLCO-8, DiLCO-16, and DiLCO-32, these methods seem to be more +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. -\subsubsection{Coverage Ratio} -Figure~\ref{fig3} shows the average coverage ratio for 150 deployed nodes. \parskip 0pt -\begin{figure}[h!] +\begin{figure}[t!] \centering \includegraphics[scale=0.45] {R/CR.pdf} \caption{The Coverage Ratio} \label{fig3} \end{figure} -Figure~\ref{fig3} shows that DESK and GAF provide a -a little better coverage ratio compared to DiLCO in the first thirty periods. This is due to the fact that our DiLCO protocol versions put in sleep mode some sensors through optimization process (which slightly decreases the coverage ratio) while there are more active nodes with DESK or GAF. With DiLCO-2 (respectively DiLCO-4), the coverage ratio decreases rapidly to reach zero value in period ... (respectively in period ....) whereas other methods guarantee a coverage ratio greater than $50\%$ after this period. We believe that the results obtained with these two methods can be explained by a high consumption of energy -and we will check this assumption in the next paragraph. Concerning DiLCO-8, DiLCO-16 and DiLCO-32, these methods seem to be more efficient than DESK and GAF because they can provide the same level of coverage (except in the first periods, slightly lower) for a greater number of periods. Unlike other methods, their strategy enables to activate a restricted number of nodes, and thus extends the lifetime of the network. %As shown in the figure ~\ref{fig3}, as the number of subregions increases, the coverage preservation for area of interest increases for a larger number of periods. Coverage ratio decreases when the number of periods increases due to dead nodes. Although some nodes are dead, %thanks to DiLCO-8, DiLCO-16 and DiLCO-32 protocols, other nodes are preserved to ensure the coverage. Moreover, when we have a dense sensor network, it leads to maintain the coverage for a larger number of rounds. DiLCO-8, DiLCO-16 and DiLCO-32 protocols are %slightly more efficient than other protocols, because they subdivides %the area of interest into 8, 16 and 32~subregions if one of the subregions becomes disconnected, the coverage may be still ensured in the remaining subregions.% +\subsubsection{Energy Consumption} +% MICHEL - TO BE CONTINUED -\subsubsection{The Energy Consumption} -Based on previous results in figure~\ref{fig3}, we keep DiLCO-16 and DiLCO-32 and we compare their performances in terms of energy consumption with the two other approaches. We measure the energy consumed by the sensors during the communication, listening, computation, active, and sleep modes for different network densities. Figure~\ref{fig95} illustrates the energy consumption for different network sizes. +Based on previous results in figure~\ref{fig3}, we keep DiLCO-16 and DiLCO-32 +and we compare their performances in terms of energy consumption with the two +other approaches. We measure the energy consumed by the sensors during the +communication, listening, computation, active, and sleep modes for different +network densities. Figure~\ref{fig95} illustrates the energy consumption for +different network sizes. % for $Lifetime95$ and $Lifetime50$. -We denote by $DiLCO-/50$ (respectively $DiLCO-/95$) as the amount of energy consumed during which the network can satisfy an area coverage greater than $50\%$ (repectively $95\%$) and we refer to the same definition for the two other approaches. +We denote by $DiLCO-/50$ (respectively $DiLCO-/95$) as the amount of energy +consumed during which the network can satisfy an area coverage greater than +$50\%$ (repectively $95\%$) and we refer to the same definition for the two +other approaches. \begin{figure}[h!] \centering \includegraphics[scale=0.45]{R/EC.pdf} @@ -788,13 +825,15 @@ We denote by $DiLCO-/50$ (respectively $DiLCO-/95$) as the amount of energy con \label{fig95} \end{figure} -The results show that DiLCO-16/50, DiLCO-32/50, DiLCO-16/95 and DiLCO-32/95 protocols are the most competitive from the energy consumption point of view. The other approaches have a high energy consumption due to activating a larger number of redundant nodes. +The results show that DiLCO-16/50, DiLCO-32/50, DiLCO-16/95 and DiLCO-32/95 +protocols are the most competitive from the energy consumption point of +view. The other approaches have a high energy consumption due to activating a +larger number of redundant nodes. %In fact, a distributed method on the subregions greatly reduces the number of communications and the time of listening so thanks to the partitioning of the initial network into several independent subnetworks. %As shown in Figures~\ref{fig95} and ~\ref{fig50} , DiLCO-2 consumes more energy than the other versions of DiLCO, especially for large sizes of network. This is easy to understand since the bigger the number of sensors involved in the integer program, the larger the time computation to solve the optimization problem as well as the higher energy consumed during the communication. - \subsubsection{Execution Time} We observe the impact of the network size and of the number of subregions on the computation time. We report the average execution times in seconds needed to solve the optimization problem for the different approaches and various numbers of sensors. The original execution time is computed on a laptop DELL with intel Core i3 2370 M (2.4 GHz) processor (2 cores) and the MIPS (Million Instructions Per Second) rate equal to 35330. To be consistent with the use of a sensor node with Atmels AVR ATmega103L microcontroller (6 MHz) and a MIPS rate equal to 6 to run the optimization resolution, this time is multiplied by 2944.2 $\left( \frac{35330}{2} \times \frac{1}{6}\right)$ and reported on Figure~\ref{fig8}.