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

Private GIT Repository
Update by Ali
[ThesisAli.git] / CHAPITRE_04.tex
index cb2c91f8fd07da0d0d0eac67be8668fdb51f7a2e..7ed80e8bd4d9c83b1f0f36c3d230e3939fba1d8d 100644 (file)
@@ -32,7 +32,7 @@ The remainder of this chapter is organized as follows. The next section is devot
 \noindent  We consider a sensor  network composed  of static  nodes distributed independently and uniformly at random.  A high-density deployment ensures a high coverage ratio of the interested area at the start. The nodes are supposed to have homogeneous characteristics from a communication and a processing point of view, whereas they  have heterogeneous energy provisions.  Each  node has access to its location thanks,  either to a hardware component (like a  GPS unit) or a location discovery algorithm. Furthermore, we assume that sensor nodes are time synchronized in order to properly coordinate their operations to achieve complex sensing tasks~\cite{ref157}. Two sensor nodes are supposed to be neighbors if the euclidean distance between them is at most equal to 2$R_s$, where $R_s$ is the sensing range.
  
 
 \noindent  We consider a sensor  network composed  of static  nodes distributed independently and uniformly at random.  A high-density deployment ensures a high coverage ratio of the interested area at the start. The nodes are supposed to have homogeneous characteristics from a communication and a processing point of view, whereas they  have heterogeneous energy provisions.  Each  node has access to its location thanks,  either to a hardware component (like a  GPS unit) or a location discovery algorithm. Furthermore, we assume that sensor nodes are time synchronized in order to properly coordinate their operations to achieve complex sensing tasks~\cite{ref157}. Two sensor nodes are supposed to be neighbors if the euclidean distance between them is at most equal to 2$R_s$, where $R_s$ is the sensing range.
  
 
-\indent We consider a boolean disk coverage model which is the most widely used sensor coverage  model in the  literature. Thus, since  a sensor has a constant sensing range $R_s$, every space points within a disk centered at a sensor with the radius of the sensing range is said to be covered with this sensor. We also assume  that  the communication  range $R_c$ is at least twice the sensing range $R_s$ (i.e., $R_c \geq  2R_s$). In  fact, Zhang and Hou~\cite{ref126} 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. we consider multi-hop communication.
+\indent We consider a boolean disk coverage model which is the most widely used sensor coverage  model in the  literature. Thus, since  a sensor has a constant sensing range $R_s$, each space point within a disk centered at a sensor with the radius of the sensing range is said to be covered with this sensor. We also assume  that  the communication  range $R_c$ is at least twice the sensing range $R_s$ (i.e., $R_c \geq  2R_s$). In  fact, Zhang and Hou~\cite{ref126} 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. We consider multi-hop communication.
 %We assume that each sensor node can directly transmit its measurements toward a mobile sink node. 
 %For example, a sink can be an unmanned aerial vehicle (UAV) flying regularly over the sensor field to collect measurements from sensor nodes. The mobile sink node collects the measurements and transmits them to the base station.
 
 %We assume that each sensor node can directly transmit its measurements toward a mobile sink node. 
 %For example, a sink can be an unmanned aerial vehicle (UAV) flying regularly over the sensor field to collect measurements from sensor nodes. The mobile sink node collects the measurements and transmits them to the base station.
 
@@ -40,7 +40,7 @@ During the execution of the DiLCO protocol, two kinds of packet will be used:
 
 \begin{enumerate} [(i)]
 \item \textbf{INFO  packet:} sent  by each  sensor node to  all the  nodes inside a same subregion for information exchange.
 
 \begin{enumerate} [(i)]
 \item \textbf{INFO  packet:} sent  by each  sensor node to  all the  nodes inside a same subregion for information exchange.
-\item \textbf{ActiveSleep packet:} sent by the leader to all the  nodes in its subregion to inform them to stay Active or to go Sleep during the sensing phase.
+\item \textbf{ActiveSleep packet:} sent by the leader to all the  nodes in its subregion to inform them to stay Active or to go to Sleep during the sensing phase.
 \end{enumerate}
 
 There are five possible status for each sensor node in the network: 
 \end{enumerate}
 
 There are five possible status for each sensor node in the network: 
@@ -66,12 +66,16 @@ $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_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_6= ( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (0)) $\\
+$X_{6}=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
+%$X_7=( 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 * (\frac{\sqrt{2}}{2})) $\\
 $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_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_{10}=( 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 * (0)) $\\
+%$X_{11}=( 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 * (0))$\\
 $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})) $\\
 $X_{14}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{1}{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})) $\\
 $X_{14}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\
@@ -94,7 +98,7 @@ $X_{25}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{-\sqrt{3}}{2})) $.
  \begin{multicols}{2}
 \centering
 \includegraphics[scale=0.33]{Figures/ch4/fig21.pdf}\\~ ~ ~ ~ ~ ~ ~ ~(a)
  \begin{multicols}{2}
 \centering
 \includegraphics[scale=0.33]{Figures/ch4/fig21.pdf}\\~ ~ ~ ~ ~ ~ ~ ~(a)
-\includegraphics[scale=0.33]{Figures/ch4/principles13.pdf}\\~ ~ ~ ~ ~ ~(c) 
+\includegraphics[scale=0.33]{Figures/ch4/fig23.pdf}\\~ ~ ~ ~ ~ ~(c) 
 \hfill \hfill
 \includegraphics[scale=0.33]{Figures/ch4/fig25.pdf}\\~ ~ ~ ~ ~ ~(e)
 \includegraphics[scale=0.33]{Figures/ch4/fig22.pdf}\\~ ~ ~ ~ ~ ~ ~ ~ ~(b)
 \hfill \hfill
 \includegraphics[scale=0.33]{Figures/ch4/fig25.pdf}\\~ ~ ~ ~ ~ ~(e)
 \includegraphics[scale=0.33]{Figures/ch4/fig22.pdf}\\~ ~ ~ ~ ~ ~ ~ ~ ~(b)
@@ -139,7 +143,7 @@ This  step includes choosing  a wireless  sensor node called leader, which  will
 
 \subsubsection{Decision phase}
 \label{ch4:sec:02:03:03}
 
 \subsubsection{Decision phase}
 \label{ch4:sec:02:03:03}
-The  leader will  solve an  integer  program (see  section~\ref{ch4:sec:03}) to select which sensors will be  activated in the following sensing phase to cover  the subregion.  It will send  ActiveSleep packet  to each sensor in the subregion based on the algorithm's results.
+The  leader will  solve an  integer  program (see  section~\ref{ch4:sec:03}) to select which sensors will be  activated in the following sensing phase to cover  the subregion.  It will send an ActiveSleep packet  to each sensor in the subregion based on the algorithm's results.
 
 %($RE_j$)  corresponds to its remaining energy) to be alive during  the selected periods knowing  that $E_{th}$ is the  amount of energy required to be alive during one period.
 
 
 %($RE_j$)  corresponds to its remaining energy) to be alive during  the selected periods knowing  that $E_{th}$ is the  amount of energy required to be alive during one period.
 
@@ -327,7 +331,7 @@ $w_{U}$ & $|P|^2$
 
 Simulations with five different node densities going from  50 to 250~nodes were
 performed  considering  each  time  25~randomly generated  networks,  to  obtain
 
 Simulations with five different node densities going from  50 to 250~nodes were
 performed  considering  each  time  25~randomly generated  networks,  to  obtain
-experimental results  which are relevant. The  nodes are deployed on  a field of
+experimental results  which are relevant. The  nodes are uniformly 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.
 
 interest of $(50 \times 25)~m^2 $ in such a way that they cover the field with a
 high coverage ratio.
 
@@ -342,40 +346,29 @@ The modeling language for Mathematical Programming (AMPL)~\cite{AMPL} is  employ
 
 \indent In this dissertation, we used an energy consumption model proposed by~\cite{DESK} and based on \cite{ref112} with slight  modifications.  The energy consumption for  sending/receiving the packets is added, whereas the  part related to the dynamic sensing range is removed because we consider a fixed sensing range.
 
 
 \indent In this dissertation, we used an energy consumption model proposed by~\cite{DESK} and based on \cite{ref112} with slight  modifications.  The energy consumption for  sending/receiving the packets is added, whereas the  part related to the dynamic sensing range is removed because we consider a fixed sensing range.
 
-\indent For our energy consumption model, we refer to the sensor node Medusa~II which uses an Atmel's  AVR ATmega103L microcontroller~\cite{ref112}. The typical architecture  of a  sensor  is composed  of four  subsystems: the  MCU subsystem which is capable of computation, communication subsystem (radio) which is responsible  for transmitting/receiving messages, the  sensing subsystem that collects  data, and  the  power supply  which  powers the  complete sensor  node \cite{ref112}. Each  of the first three subsystems  can be turned on or  off depending on  the current status  of the sensor.   Energy consumption (expressed in  milliWatt per second) for  the different status of  the sensor is summarized in Table~\ref{table1}.
+\indent For our energy consumption model, we refer to the sensor node Medusa~II which uses an Atmel's  AVR ATmega103L microcontroller~\cite{ref112}. The typical architecture  of a  sensor  is composed  of four  subsystems: the  MCU subsystem which is capable of computation, communication subsystem (radio) which is responsible  for transmitting/receiving messages, the  sensing subsystem that collects  data, and  the  power supply  which  powers the  complete sensor  node \cite{ref112}. Each  of the first three subsystems  can be turned on or  off depending on  the current status  of the sensor.   Energy consumption (expressed in  milliWatt per second) for  the different status of  the sensor is summarized in Table~\ref{tab:EC}.
 
 
-\begin{table}[ht]
-\caption{Energy Consumption Model}
-% title of Table
+\begin{table}[h]
 \centering
 \centering
-% used for centering table
-\begin{tabular}{|c|c|c|c|c|}
-% centered columns (4 columns)
-      \hline
-%inserts double horizontal lines
-Sensor status & MCU & Radio & Sensing & Power (mW) \\ [0.5ex]
-\hline
-% inserts single horizontal line
-LISTENING & on & on & on & 20.05 \\
-% inserting body of the table
-\hline
-ACTIVE & on & off & on & 9.72 \\
-\hline
-SLEEP & off & off & off & 0.02 \\
-\hline
-COMPUTATION & on & on & on & 26.83 \\
-%\hline
-%\multicolumn{4}{|c|}{Energy needed to send/receive a 1-bit} & 0.2575\\
- \hline
+\caption{Power consumption values}
+\label{tab:EC}
+\begin{tabular}{|l||cccc|}
+  \hline
+  {\bf Sensor status} & MCU & Radio & Sensing & {\it Power (mW)} \\
+  \hline
+  LISTENING & On & On & On & 20.05 \\
+  ACTIVE & On & Off & On & 9.72 \\
+  SLEEP & Off & Off & Off & 0.02 \\
+  COMPUTATION & On & On & On & 26.83 \\
+  \hline
+  \multicolumn{4}{|l}{Energy needed to send or receive a 2-bit content message} & 0.515 \\
+  \hline
 \end{tabular}
 \end{tabular}
-
-\label{table1}
-% is used to refer this table in the text
 \end{table}
 
 \indent For the sake of simplicity we ignore  the energy needed to turn on the radio, to start up the sensor node, to move from one status to another, etc. Thus, when a sensor becomes active (i.e., it has already received its status from leader), it can turn  its radio  off to  save battery. DiLCO uses two types of packets
 for communication. The size of the INFO packet and ActiveSleep packet
 \end{table}
 
 \indent For the sake of simplicity we ignore  the energy needed to turn on the radio, to start up the sensor node, to move from one status to another, etc. Thus, when a sensor becomes active (i.e., it has already received its status from leader), it can turn  its radio  off to  save battery. DiLCO uses two types of packets
 for communication. The size of the INFO packet and ActiveSleep packet
-are 112 bits and 16 bits respectively. The value of energy spent to send a 1-bit-content message is  obtained by using  the equation in ~\cite{ref112} 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 packet is equal to $0.2575~mW$.
+are 112 bits and 16 bits respectively. The value of energy spent to send a 2-bit-content message is  obtained by using  the equation in ~\cite{ref112} 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 packet is equal to $0.2575~mW$.
 
 %We have used an energy consumption model, which is presented in chapter 1, section \ref{ch1:sec9:subsec2}. 
 
 
 %We have used an energy consumption model, which is presented in chapter 1, section \ref{ch1:sec9:subsec2}. 
 
@@ -515,18 +508,18 @@ As shown in Figures~\ref{Figures/ch4/R1/EC}(a) and~\ref{Figures/ch4/R1/EC}(b), D
 \item {{\bf Execution Time}}
 %\subsubsection{Execution Time}
 
 \item {{\bf Execution Time}}
 %\subsubsection{Execution Time}
 
-In this experiment, the execution time of the distributed optimization approach has been studied. Figure~\ref{Figures/ch4/R1/T} gives the average execution times in seconds for the decision phase (solving of the optimization problem) during one period. They are given for the different approaches and various numbers of sensors. The original execution time is computed as described in section \ref{ch4:sec:04:04}. \\ \\ \\ \\
+In this experiment, the execution time of the distributed optimization approach has been studied. Figure~\ref{Figures/ch4/R1/T} gives the average execution times in seconds for the decision phase (solving of the optimization problem) during one period. They are given for the different approaches and various numbers of sensors.  \\ \\% \\ \\ \\
 
 
 
 
 
 
-\begin{figure}[h!t]
+\begin{figure}[t]
 \centering
 \includegraphics[scale=0.8]{Figures/ch4/R1/T.pdf}  
 \caption{Execution Time (in seconds)}
 \label{Figures/ch4/R1/T}
 \end{figure} 
 
 \centering
 \includegraphics[scale=0.8]{Figures/ch4/R1/T.pdf}  
 \caption{Execution Time (in seconds)}
 \label{Figures/ch4/R1/T}
 \end{figure} 
 
-We can see from Figure~\ref{Figures/ch4/R1/T} that DiLCO-32 has very low execution times in comparison with other DiLCO versions because it is distributed on larger number of small subregions.  Conversely, DiLCO-2 requires to solve an optimization problem considering half the nodes in each subregion and thus presents high execution times. Overall, to be able to deal with very large networks,  a distributed method is clearly required.
+The original execution time is computed as described in section \ref{ch4:sec:04:04}. We can see from Figure~\ref{Figures/ch4/R1/T} that DiLCO-32 has very low execution times in comparison with other DiLCO versions because it is distributed on larger number of small subregions.  Conversely, DiLCO-2 requires to solve an optimization problem considering half the nodes in each subregion and thus presents high execution times. Overall, to be able to deal with very large networks,  a distributed method is clearly required.
 
 \item {{\bf Network Lifetime}}
 %\subsubsection{The Network Lifetime}
 
 \item {{\bf Network Lifetime}}
 %\subsubsection{The Network Lifetime}
@@ -553,7 +546,7 @@ For DiLCO-2 protocol, execution times quickly become unsuitable for a sensor net
 \subsection{Performance Analysis for Different Number of Primary Points}
 \label{ch4:sec:04:06}
 
 \subsection{Performance Analysis for Different Number of Primary Points}
 \label{ch4:sec:04:06}
 
-In this section, we study the performance of DiLCO~16 approach for different numbers of primary points. The objective of this comparison is to select the suitable primary point model to be used by a DiLCO protocol. In this comparison, DiLCO-16 protocol is used with five models, which are called Model-5 (it uses 5 primary points), Model-9, Model-13, Model-17, and Model-21. 
+In this section, we study the performance of DiLCO-16 approach for different numbers of primary points. The objective of this comparison is to select the suitable primary point model to be used by a DiLCO protocol. In this comparison, DiLCO-16 protocol is used with five models, which are called Model-5 (it uses 5 primary points), Model-9, Model-13, Model-17, and Model-21. 
 
 
 \begin{enumerate}[i)]
 
 
 \begin{enumerate}[i)]
@@ -586,7 +579,7 @@ Figure~\ref{Figures/ch4/R2/ASR} shows the average active nodes ratio for 150 dep
 \end{figure} 
 
 The results presented in Figure~\ref{Figures/ch4/R2/ASR} show the superiority of the proposed  Model-5, in comparison with the other models. The model with fewer number of primary points uses fewer active nodes than the other models. 
 \end{figure} 
 
 The results presented in Figure~\ref{Figures/ch4/R2/ASR} show the superiority of the proposed  Model-5, in comparison with the other models. The model with fewer number of primary points uses fewer active nodes than the other models. 
-According to the results presented in Figure~\ref{Figures/ch4/R2/CR}, we observe that Model-5 continues to a larger number of periods with a better coverage ratio compared with other models. The advantage of Model-5 is to use fewer number of active nodes for each period compared with Model-9, Model-13,  Model-17, and Model-21. This led to continuing for a larger number of periods and thus extending the network lifetime.
+According to the results presented in Figure~\ref{Figures/ch4/R2/CR}, we observe that Model-5 continues for a larger number of periods with a better coverage ratio compared with other models. The advantage of Model-5 is to use fewer number of active nodes for each period compared with Model-9, Model-13,  Model-17, and Model-21. This led to continuing for a larger number of periods and thus extending the network lifetime.
 
 
 \item {{\bf Stopped simulation runs}}
 
 
 \item {{\bf Stopped simulation runs}}
@@ -636,7 +629,7 @@ In this experiment, we study the impact of the increase in primary points on the
 \label{Figures/ch4/R2/T}
 \end{figure} 
 
 \label{Figures/ch4/R2/T}
 \end{figure} 
 
-They are given for the different primary point models and various numbers of sensors. We can see from Figure~\ref{Figures/ch4/R2/T}, that Model-5 has lower execution time in comparison with other models because it used the smaller number of primary points to represent the area of the sensor.  Conversely, the other primary point models have presented  higher execution times.
+They are given for the different primary point models and various numbers of sensors. We can see from Figure~\ref{Figures/ch4/R2/T}, that Model-5 has lower execution time in comparison with other models because it uses the smaller number of primary points to represent the area of the sensor.  Conversely, the other primary point models have presented  higher execution times.
 Moreover, Model-5 has more suitable execution times and coverage ratio that lead to continue for a larger number of period extending the network lifetime. We think that a good primary point model is one that balances between the coverage ratio and the number of periods during the lifetime of the network.
 
 \item {{\bf Network Lifetime}}
 Moreover, Model-5 has more suitable execution times and coverage ratio that lead to continue for a larger number of period extending the network lifetime. We think that a good primary point model is one that balances between the coverage ratio and the number of periods during the lifetime of the network.
 
 \item {{\bf Network Lifetime}}
@@ -685,7 +678,7 @@ This is due to the fact that DiLCO protocol versions put in sleep mode redundant
 
 Moreover, when the number of periods increases, coverage ratio produced by DESK and GAF protocols decreases. 
 %This is due to dead nodes. However, DiLCO-16 protocol and DiLCO-32 protocol maintain almost a good coverage. 
 
 Moreover, when the number of periods increases, coverage ratio produced by DESK and GAF protocols decreases. 
 %This is due to dead nodes. However, DiLCO-16 protocol and DiLCO-32 protocol maintain almost a good coverage. 
-GAF exhibits in particular a fast decrease. Our protocols also provide decreasing coverage ratio, but far more better than those of DESK and GAF. DiLCO-16 and DiLCO-32 clearly outperform DESK and GAF for number of periods between 32 and 103.
+GAF exhibits in particular a fast decrease. Our protocols also provide decreasing coverage ratio, but far less large  than those of DESK and GAF. DiLCO-16 and DiLCO-32 clearly outperform DESK and GAF for number of periods between 32 and 103.
 This is because they optimize the coverage and the lifetime in wireless sensor network by selecting the best representative sensor nodes to take the responsibility of coverage during the sensing phase.
 %, and this will lead to continuing for a larger number of periods and prolonging the network lifetime. Furthermore, although some nodes are dead, sensor activity scheduling of our protocol chooses other nodes to ensure the coverage of the area of interest. 
 
 This is because they optimize the coverage and the lifetime in wireless sensor network by selecting the best representative sensor nodes to take the responsibility of coverage during the sensing phase.
 %, and this will lead to continuing for a larger number of periods and prolonging the network lifetime. Furthermore, although some nodes are dead, sensor activity scheduling of our protocol chooses other nodes to ensure the coverage of the area of interest.