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

Private GIT Repository
Update on chapter 6
[ThesisAli.git] / CHAPITRE_06.tex
index d97acc9947887ae9e8d9ca7cee592ee8a75d10d4..1fb0d60593faae2ef22a537a88c996827537f378 100644 (file)
 In this chapter,  we propose an approach called Perimeter-based Coverage Optimization
 protocol (PeCO). 
 %The PeCO protocol merges between two energy efficient mechanisms, which are used the main advantages of the centralized and distributed approaches and avoids the most of their disadvantages. An energy-efficient activity scheduling mechanism based new optimization model is performed by each leader in the subregions. 
 In this chapter,  we propose an approach called Perimeter-based Coverage Optimization
 protocol (PeCO). 
 %The PeCO protocol merges between two energy efficient mechanisms, which are used the main advantages of the centralized and distributed approaches and avoids the most of their disadvantages. An energy-efficient activity scheduling mechanism based new optimization model is performed by each leader in the subregions. 
-The framework is similar to the one described in chapter 4, section \ref{ch4:sec:02:03}, but in this approach, the optimization model is based on the perimeter coverage model in order to producing the optimal cover set of active sensors, which are taken the responsibility of sensing during the current period. 
+The framework is similar to the one described in section \ref{ch4:sec:02:03}, but in this approach, the optimization model is based on the perimeter coverage model in order to producing the optimal cover set of active sensors, which are taken the responsibility of sensing during the current period. 
 
 
 
 
-The rest of the chapter is  organized as follows. The next section is devoted to the PeCO protocol description and section~\ref{ch6:sec:03} focuses on the
-coverage model formulation which is used  to schedule the activation  of sensor
-nodes based on perimeter coverage model.  Section~\ref{ch6:sec:04}  presents simulations
-results and discusses the comparison  with other approaches. Finally, concluding
-remarks   are  drawn in section~\ref{ch6:sec:05}.
+The rest of the chapter is  organized as follows. The next section is devoted to the PeCO protocol description and section~\ref{ch6:sec:03} focuses on the coverage model formulation which is used  to schedule the activation  of sensor nodes based on perimeter coverage model.  Section~\ref{ch6:sec:04}  presents simulations results and discusses the comparison  with other approaches. Finally, concluding remarks   are  drawn in section~\ref{ch6:sec:05}.
 
 
 
 
 
 
@@ -41,21 +37,13 @@ executed by each node.
 
 \subsection{Assumptions and Models}
 \label{ch6:sec:02:01}
 
 \subsection{Assumptions and Models}
 \label{ch6:sec:02:01}
-The PeCO protocol uses the same assumptions and network model that presented in chapter 4, section \ref{ch4:sec:02:01}.
-
-The PeCO protocol  uses the  same perimeter-coverage  model as  Huang and
-Tseng in~\cite{ref133}. It  can be expressed as follows:  a sensor is
-said to be a perimeter covered if all the points on its  perimeter are covered by
-at least  one sensor  other than  itself.  They  proved that  a network  area is
+The PeCO protocol uses the same assumptions and network model that presented in section \ref{ch4:sec:02:01}.
+The PeCO protocol  uses the  same perimeter-coverage  model as  Huang and Tseng in~\cite{ref133}. It  can be expressed as follows:  a sensor is said to be a perimeter covered if all the points on its  perimeter are covered by at least  one sensor  other than  itself.  They  proved that  a network  area is
 $k$-covered if and only if each sensor in the network is $k$-perimeter-covered (perimeter covered by at least $k$ sensors).
   
 $k$-covered if and only if each sensor in the network is $k$-perimeter-covered (perimeter covered by at least $k$ sensors).
   
-Figure~\ref{pcm2sensors}(a)  shows  the coverage  of  sensor  node~$0$. On  this
-figure, we can  see that sensor~$0$ has  nine neighbors and we  have reported on
-its  perimeter (the  perimeter  of the  disk  covered by  the  sensor) for  each
-neighbor  the  two  points  resulting  from  intersection  of  the  two  sensing
-areas. These points are denoted for  neighbor~$i$ by $iL$ and $iR$, respectively
-for  left and  right from  neighbor  point of  view.  The  resulting couples  of
-intersection points subdivide the perimeter of sensor~$0$ into portions called
+Figure~\ref{pcm2sensors}(a)  shows  the coverage  of  sensor  node~$0$. On  this figure, we can  see that sensor~$0$ has  nine neighbors and we  have reported on
+its  perimeter (the  perimeter  of the  disk  covered by  the  sensor) for  each neighbor  the  two  points  resulting  from  intersection  of  the  two  sensing
+areas. These points are denoted for  neighbor~$i$ by $iL$ and $iR$, respectively for  left and  right from  neighbor  point of  view.  The  resulting couples  of intersection points subdivide the perimeter of sensor~$0$ into portions called
 arcs.
 
 \begin{figure}[ht!]
 arcs.
 
 \begin{figure}[ht!]
@@ -69,33 +57,17 @@ arcs.
   \label{pcm2sensors}
 \end{figure} 
 
   \label{pcm2sensors}
 \end{figure} 
 
-Figure~\ref{pcm2sensors}(b) describes the geometric information used to find the
-locations of the  left and right points of  an arc on the perimeter  of a sensor
-node~$u$ covered by a sensor node~$v$. Node~$v$ is supposed to be located on the
-west  side of  sensor~$u$,  with  the following  respective  coordinates in  the
-sensing area~: $(v_x,v_y)$ and $(u_x,u_y)$. From the previous coordinates we can
-compute the euclidean distance between nodes~$u$ and $v$: $Dist(u,v)=\sqrt{\vert
-  u_x  - v_x  \vert^2 +  \vert u_y-v_y  \vert^2}$, while  the angle~$\alpha$  is
-obtained through  the formula: $$\alpha =  \arccos \left(\dfrac{Dist(u,v)}{2R_s}
+Figure~\ref{pcm2sensors}(b) describes the geometric information used to find the locations of the  left and right points of  an arc on the perimeter  of a sensor node~$u$ covered by a sensor node~$v$. Node~$v$ is supposed to be located on the
+west  side of  sensor~$u$,  with  the following  respective  coordinates in  the sensing area~: $(v_x,v_y)$ and $(u_x,u_y)$. From the previous coordinates we can compute the euclidean distance between nodes~$u$ and $v$: $Dist(u,v)=\sqrt{\vert
+  u_x  - v_x  \vert^2 +  \vert u_y-v_y  \vert^2}$, while  the angle~$\alpha$  is obtained through  the formula: $$\alpha =  \arccos \left(\dfrac{Dist(u,v)}{2R_s}
 \right).$$ The arc on the perimeter of~$u$ defined by the angular interval $[\pi
   - \alpha,\pi + \alpha]$ is said to be perimeter-covered by sensor~$v$.
 
 \right).$$ The arc on the perimeter of~$u$ defined by the angular interval $[\pi
   - \alpha,\pi + \alpha]$ is said to be perimeter-covered by sensor~$v$.
 
-Every couple of intersection points is placed on the angular interval $[0,2\pi]$
-in  a  counterclockwise manner,  leading  to  a  partitioning of  the  interval.
-Figure~\ref{pcm2sensors}(a)  illustrates  the arcs  for  the  nine neighbors  of
-sensor $0$ and  Figure~\ref{expcm} gives the position of the corresponding arcs
-in  the interval  $[0,2\pi]$. More  precisely, we  can see  that the  points are
-ordered according  to the  measures of  the angles  defined by  their respective
-positions. The intersection points are  then visited one after another, starting
-from the first  intersection point  after  point~zero,  and  the maximum  level  of
-coverage is determined  for each interval defined by two  successive points. The
-maximum  level of  coverage is  equal to  the number  of overlapping  arcs.  For
-example, 
-between~$5L$  and~$6L$ the maximum  level of  coverage is equal  to $3$
-(the value is highlighted in yellow  at the bottom of Figure~\ref{expcm}), which
-means that at most 2~neighbors can cover  the perimeter in addition to node $0$. 
-Table~\ref{my-label} summarizes for each coverage  interval the maximum level of
-coverage and  the sensor  nodes covering the  perimeter.  The  example discussed
+Every couple of intersection points is placed on the angular interval $[0,2\pi]$ in  a  counterclockwise manner,  leading  to  a  partitioning of  the  interval.
+Figure~\ref{pcm2sensors}(a)  illustrates  the arcs  for  the  nine neighbors  of sensor $0$ and  Figure~\ref{expcm} gives the position of the corresponding arcs in  the interval  $[0,2\pi]$. More  precisely, we  can see  that the  points are
+ordered according  to the  measures of  the angles  defined by  their respective positions. The intersection points are  then visited one after another, starting from the first  intersection point  after  point~zero,  and  the maximum  level  of coverage is determined  for each interval defined by two  successive points. The maximum  level of  coverage is  equal to  the number  of overlapping  arcs.  For example, 
+between~$5L$  and~$6L$ the maximum  level of  coverage is equal  to $3$ (the value is highlighted in yellow  at the bottom of Figure~\ref{expcm}), which means that at most 2~neighbors can cover  the perimeter in addition to node $0$. 
+Table~\ref{my-label} summarizes for each coverage  interval the maximum level of coverage and  the sensor  nodes covering the  perimeter.  The  example discussed
 above is thus given by the sixth line of the table.
 
 
 above is thus given by the sixth line of the table.
 
 
@@ -260,7 +232,7 @@ First, we have the following sets:
   sensor~$j$.
 \end{itemize}
 $I_j$ refers to the set of  coverage intervals which have been defined according
   sensor~$j$.
 \end{itemize}
 $I_j$ refers to the set of  coverage intervals which have been defined according
-to the  method introduced in  subsection~\ref{ch6:sec:02:01}. For a coverage  interval $i$,
+to the  method introduced in section~\ref{ch6:sec:02:01}. For a coverage  interval $i$,
 let $a^j_{ik}$ denotes  the indicator function of whether  sensor~$k$ is involved
 in coverage interval~$i$ of sensor~$j$, that is:
 \begin{equation}
 let $a^j_{ik}$ denotes  the indicator function of whether  sensor~$k$ is involved
 in coverage interval~$i$ of sensor~$j$, that is:
 \begin{equation}
@@ -335,64 +307,63 @@ sensing phase) in the model.
 \subsection{Simulation Settings}
 \label{ch6:sec:04:01}
 
 \subsection{Simulation Settings}
 \label{ch6:sec:04:01}
 
-The WSN  area of interest is  supposed to be divided  into 16~regular subregions. %and we use the same energy consumption than in our previous work~\cite{Idrees2}.
-Table~\ref{table3} gives the chosen parameters settings.
-
-\begin{table}[ht]
-\caption{Relevant parameters for network initialization.}
-% title of Table
-\centering
-% used for centering table
-\begin{tabular}{c|c}
-% centered columns (4 columns)
-\hline
-Parameter & Value  \\ [0.5ex]
-   
-\hline
-% inserts single horizontal line
-Sensing field & $(50 \times 25)~m^2 $   \\
-
-WSN size &  100, 150, 200, 250, and 300~nodes   \\
-%\hline
-Initial energy  & in range 500-700~Joules  \\  
+The WSN  area of interest is  supposed to be divided  into 16~regular subregions. The simulation  parameters are summarized in Table~\ref{tablech4}.
+%Table~\ref{table3} gives the chosen parameters settings.
+%\begin{table}[ht]
+%\caption{Relevant parameters for network initialization.}
+%\centering
+%\begin{tabular}{c|c}
 %\hline
 %\hline
-Sensing period & duration of 60 minutes \\
-$E_{th}$ & 36~Joules\\
-$R_s$ & 5~m   \\     
+%Parameter & Value  \\ [0.5ex]
 %\hline
 %\hline
-$\alpha^j_i$ & 0.6   \\
-% [1ex] adds vertical space
-%\hline
-$\beta^j_i$ & 0.4
-%inserts single line
-\end{tabular}
-\label{table3}
-% is used to refer this table in the text
-\end{table}
-
-
-To obtain experimental results which are relevant,  simulations  with  five
-different node densities going from  100 to 300~nodes were performed considering
-each time 25~randomly  generated networks. The nodes are deployed  on a field of
-interest of $(50 \times 25)~m^2 $ in such a way that they cover the field with a
-high coverage ratio. 
+%Sensing field & $(50 \times 25)~m^2 $   \\
+%WSN size &  100, 150, 200, 250, and 300~nodes   \\
+%Initial energy  & in range 500-700~Joules  \\  
+%Sensing period & duration of 60 minutes \\
+%$E_{th}$ & 36~Joules\\
+%$R_s$ & 5~m   \\     
+%$\alpha^j_i$ & 0.6   \\
+%$\beta^j_i$ & 0.4
+%\end{tabular}
+%\label{table3}
+%\end{table}
+To obtain experimental results which are relevant,  simulations  with  five different node densities going from  100 to 300~nodes were performed considering each time 25~randomly  generated networks. The nodes are deployed  on a field of
+interest of $(50 \times 25)~m^2 $ in such a way that they cover the field with a high coverage ratio. 
 %Each node has an  initial energy level, in Joules, which is randomly drawn in the interval $[500-700]$. If its energy provision reaches a value below  the threshold $E_{th}=36$~Joules,  the minimum energy needed  for a node  to stay  active during  one period,  it will no more  participate in the coverage task. This value corresponds to the energy needed by the sensing phase, obtained by multiplying the energy consumed in active state (9.72 mW) with the time in seconds for one  period (3600 seconds), and  adding the energy  for the pre-sensing phases. According  to the interval of initial energy,  a sensor may be active during at most 20 periods.
 
 
 %Each node has an  initial energy level, in Joules, which is randomly drawn in the interval $[500-700]$. If its energy provision reaches a value below  the threshold $E_{th}=36$~Joules,  the minimum energy needed  for a node  to stay  active during  one period,  it will no more  participate in the coverage task. This value corresponds to the energy needed by the sensing phase, obtained by multiplying the energy consumed in active state (9.72 mW) with the time in seconds for one  period (3600 seconds), and  adding the energy  for the pre-sensing phases. According  to the interval of initial energy,  a sensor may be active during at most 20 periods.
 
 
-The values  of $\alpha^j_i$ and  $\beta^j_i$ have been  chosen to ensure  a good
-network coverage and a longer WSN lifetime.  We have given a higher priority to
-the undercoverage  (by  setting  the  $\alpha^j_i$ with  a  larger  value  than
-$\beta^j_i$)  so as  to prevent  the non-coverage  for the  interval~$i$ of  the
+The values  of $\alpha^j_i$ and  $\beta^j_i$ have been chosen to ensure a good network coverage and a longer WSN lifetime as shown in Table \ref{my-beta-alfa}.  We have given a higher priority to the undercoverage  (by  setting  the  $\alpha^j_i$ with  a  larger  value  than $\beta^j_i$)  so as  to prevent  the non-coverage  for the  interval~$i$ of  the
 sensor~$j$.  On the  other hand,  we have assigned to
 $\beta^j_i$ a value which is slightly lower so as to minimize the number of active sensor nodes which contribute in covering the interval.
 
 sensor~$j$.  On the  other hand,  we have assigned to
 $\beta^j_i$ a value which is slightly lower so as to minimize the number of active sensor nodes which contribute in covering the interval.
 
-With the performance metrics, described in chapter 4, section \ref{ch4:sec:04:04}, we evaluate the efficiency of our approach. We use the modeling language and the optimization solver which are mentioned in chapter 4, section \ref{ch4:sec:04:02}. In addition, we use the same energy consumption model, presented in chapter 4, section \ref{ch4:sec:04:03}.
+\begin{table}[h]
+\centering
+\caption{The impact of $\alpha^j_i$ and $\beta^j_i$ on PeCO's  performance for 200 deployed nodes}
+\label{my-beta-alfa}
+\begin{tabular}{|c|c|c|c|}
+\hline
+$\alpha^j_i$ & $\beta^j_i$ & $Lifetime_{50}$ & $Lifetime_{95}$ \\ \hline
+0.0 & 1.0 & 151 & 0 \\ \hline
+0.1 & 0.9 & 145 & 0 \\ \hline
+0.2 & 0.8 & 140 & 0 \\ \hline
+0.3 & 0.7 & 134 & 0 \\ \hline
+0.4 & 0.6 & 125 & 0 \\ \hline
+0.5 & 0.5 & 118 & 30 \\ \hline
+0.6 & 0.4 & 94 & 57 \\ \hline
+0.7 & 0.3 & 97 & 49 \\ \hline
+0.8 & 0.2 & 90 & 52 \\ \hline
+0.9 & 0.1 & 77 & 50 \\ \hline
+1.0 & 0.0 & 60 & 44 \\ \hline
+\end{tabular}
+\end{table}
+
+With the performance metrics, described in section \ref{ch4:sec:04:04}, we evaluate the efficiency of our approach. We use the modeling language and the optimization solver which are mentioned in section \ref{ch4:sec:04:02}. In addition, we use the same energy consumption model, presented in section \ref{ch4:sec:04:03}.
 
 
 \subsection{Simulation Results}
 \label{ch6:sec:04:02}
 
 
 
 \subsection{Simulation Results}
 \label{ch6:sec:04:02}
 
-In  order  to  assess and  analyze  the  performance  of  our protocol  we  have implemented PeCO protocol in  OMNeT++~\cite{ref158} simulator.  Besides PeCO, three other protocols,  described in  the next paragraph,  will  be  evaluated for comparison purposes. 
+In  order to  assess and  analyze  the  performance  of  our protocol  we  have implemented PeCO protocol in  OMNeT++~\cite{ref158} simulator.  Besides PeCO, three other protocols,  described in  the next paragraph,  will  be  evaluated for comparison purposes. 
 %The simulations were run  on a laptop DELL with an Intel Core~i3~2370~M (2.4~GHz) processor (2  cores) whose MIPS  (Million Instructions Per Second) rate  is equal to 35330. To  be consistent with the use  of a sensor node based on  Atmels AVR ATmega103L microcontroller (6~MHz) having  a MIPS rate equal to 6, the original execution time  on the laptop is  multiplied by 2944.2 $\left(\frac{35330}{2} \times  \frac{1}{6} \right)$.  The modeling  language for Mathematical Programming (AMPL)~\cite{AMPL} is  employed to generate the integer program instance  in a  standard format, which  is then read  and solved  by the optimization solver  GLPK (GNU  linear Programming Kit  available in  the public domain) \cite{glpk} through a Branch-and-Bound method.
 As said previously, the PeCO is  compared with three other approaches. The first one,  called  DESK,  is  a  fully distributed  coverage  algorithm  proposed  by \cite{DESK}. The second one,  called GAF~\cite{GAF}, consists in dividing  the monitoring  area into  fixed  squares. Then,  during the  decision phase, in each square, one sensor is  chosen to remain active during the sensing phase. The last  one, the DiLCO protocol~\cite{Idrees2}, is  an improved version of a research work we presented in~\cite{ref159}. Let us notice that PeCO and  DiLCO protocols are  based on the  same framework. In  particular, the choice for the simulations of a partitioning in 16~subregions was chosen because it corresponds to the configuration producing the better results for DiLCO. The protocols are distinguished from one another by the formulation  of the integer program providing the set of sensors which have to be activated in each sensing phase. DiLCO protocol tries to satisfy the coverage of a set of primary points, whereas PeCO protocol objective is to reach a desired level of coverage for each sensor perimeter. In our experimentations, we chose a level of coverage equal to one ($l=1$).
 
 %The simulations were run  on a laptop DELL with an Intel Core~i3~2370~M (2.4~GHz) processor (2  cores) whose MIPS  (Million Instructions Per Second) rate  is equal to 35330. To  be consistent with the use  of a sensor node based on  Atmels AVR ATmega103L microcontroller (6~MHz) having  a MIPS rate equal to 6, the original execution time  on the laptop is  multiplied by 2944.2 $\left(\frac{35330}{2} \times  \frac{1}{6} \right)$.  The modeling  language for Mathematical Programming (AMPL)~\cite{AMPL} is  employed to generate the integer program instance  in a  standard format, which  is then read  and solved  by the optimization solver  GLPK (GNU  linear Programming Kit  available in  the public domain) \cite{glpk} through a Branch-and-Bound method.
 As said previously, the PeCO is  compared with three other approaches. The first one,  called  DESK,  is  a  fully distributed  coverage  algorithm  proposed  by \cite{DESK}. The second one,  called GAF~\cite{GAF}, consists in dividing  the monitoring  area into  fixed  squares. Then,  during the  decision phase, in each square, one sensor is  chosen to remain active during the sensing phase. The last  one, the DiLCO protocol~\cite{Idrees2}, is  an improved version of a research work we presented in~\cite{ref159}. Let us notice that PeCO and  DiLCO protocols are  based on the  same framework. In  particular, the choice for the simulations of a partitioning in 16~subregions was chosen because it corresponds to the configuration producing the better results for DiLCO. The protocols are distinguished from one another by the formulation  of the integer program providing the set of sensors which have to be activated in each sensing phase. DiLCO protocol tries to satisfy the coverage of a set of primary points, whereas PeCO protocol objective is to reach a desired level of coverage for each sensor perimeter. In our experimentations, we chose a level of coverage equal to one ($l=1$).
 
@@ -401,8 +372,7 @@ As said previously, the PeCO is  compared with three other approaches. The first
 \subsubsection{Coverage Ratio}
 \label{ch6:sec:04:02:01}
 
 \subsubsection{Coverage Ratio}
 \label{ch6:sec:04:02:01}
 
-Figure~\ref{fig333}  shows the  average coverage  ratio for  200 deployed  nodes
-obtained with the  four protocols. DESK, GAF, and DiLCO  provide a slightly better
+Figure~\ref{fig333}  shows the  average coverage  ratio for  200 deployed  nodes obtained with the  four protocols. DESK, GAF, and DiLCO  provide a slightly better
 coverage ratio with respectively 99.99\%,  99.91\%, and 99.02\%, compared to the 98.76\%
 produced by  PeCO for the  first periods. This  is due to  the fact that  at the
 beginning the DiLCO protocol  puts to  sleep status  more redundant  sensors (which
 coverage ratio with respectively 99.99\%,  99.91\%, and 99.02\%, compared to the 98.76\%
 produced by  PeCO for the  first periods. This  is due to  the fact that  at the
 beginning the DiLCO protocol  puts to  sleep status  more redundant  sensors (which