X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/JournalMultiPeriods.git/blobdiff_plain/b0d04b7c6e548a308c804a66d2805f8e82fcd753..46e6f7cd7d85049c4f767edfe1091ef287cdc1e0:/article.tex?ds=sidebyside diff --git a/article.tex b/article.tex index f8f7ec4..b37791f 100644 --- a/article.tex +++ b/article.tex @@ -541,11 +541,7 @@ active nodes. %Instead of working with a continuous coverage area, we make it discrete by considering for each sensor a set of points called primary points. Consequently, we assume that the sensing disk defined by a sensor is covered if all of its primary points are covered. The choice of number and locations of primary points is the subject of another study not presented here. -\indent Instead of working with the coverage area, we consider for each sensor a set of points called primary points~\cite{idrees2014coverage}. We also assume that the sensing disk defined by a sensor is covered if all the primary points of this sensor are covered. By knowing the position (point center: ($p_x,p_y$)) of a wireless sensor node and it's sensing range $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. -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{fig1}) as follows:\\ -Assuming that the point center of a wireless sensor node is located at $(p_x,p_y)$, we can define up to 25 primary points $X_1$ to $X_{25}$.\\ +\indent Instead of working with the coverage area, we consider for each sensor a set of points called primary points~\cite{idrees2014coverage}. We assume that the sensing disk defined by a sensor is covered if all the primary points of this sensor are covered. By knowing the position (point center: ($p_x,p_y$)) of a wireless sensor node and it's sensing range $R_s$, we define up to 25 primary points $X_1$ to $X_{25}$ as decribed on Figure~\ref{fig1}. The coordinates of the primary points are the following :\\ %$(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) )$\\ @@ -564,8 +560,8 @@ $X_{14}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\ $X_{15}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\ $X_{16}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{- 1}{2})) $\\ $X_{17}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (\frac{- 1}{2})) $\\ -$X_{18}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (0) $\\ -$X_{19}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (0) $\\ +$X_{18}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (0)) $\\ +$X_{19}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (0)) $\\ $X_{20}=( p_x + R_s * (0), p_y + R_s * (\frac{1}{2})) $\\ $X_{21}=( p_x + R_s * (0), p_y + R_s * (-\frac{1}{2})) $\\ $X_{22}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{\sqrt{3}}{2})) $\\ @@ -612,9 +608,17 @@ $X_{25}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{-\sqrt{3}}{2})) $. \subsection{Background idea} %%RC : we need to clarify the difference between round and period. Currently it seems to be the same (for me at least). -The area of interest can be divided using the divide-and-conquer strategy into -smaller areas, called subregions, and then our MuDiLCO protocol will be -implemented in each subregion in a distributed way. +%The area of interest can be divided using the divide-and-conquer strategy into +%smaller areas, called subregions, and then our MuDiLCO protocol will be +%implemented in each subregion in a distributed way. + +\textcolor{green}{The WSN area of interest is, in a first step, divided into regular homogeneous +subregions using a divide-and-conquer algorithm. In a second step our protocol +will be executed in a distributed way in each subregion simultaneously to +schedule nodes' activities for one sensing period. Sensor nodes are assumed to +be deployed almost uniformly over the region. The regular subdivision is made +such that the number of hops between any pairs of sensors inside a subregion is +less than or equal to 3.} As can be seen in Figure~\ref{fig2}, our protocol works in periods fashion, where each is divided into 4 phases: Information~Exchange, Leader~Election, @@ -801,7 +805,7 @@ Subject to \end{equation} \begin{equation} - \sum_{t=1}^{T} X_{t,j} \leq \floor*{RE_{j}/E_{R}} \hspace{6 mm} \forall j \in J, t = 1,\dots,T + \sum_{t=1}^{T} X_{t,j} \leq \floor*{RE_{j}/E_{R}} \hspace{10 mm}\forall j \in J\hspace{6 mm} \label{eq144} \end{equation} @@ -849,6 +853,8 @@ to guarantee that the maximum number of points are covered during each round. %% MS W_theta is smaller than W_u => problem with the following sentence In our simulations priority is given to the coverage by choosing $W_{U}$ very large compared to $W_{\theta}$. + +\textcolor{green}{The size of the problem depends on the number of variables and constraints. The number of variables is linked to the number of alive sensors $A \subset J$, the number of rounds $T$, and the number of primary points $P$. Thus the integer program contains $A*T$ variables of type $X_{t,j}$, $P*T$ overcoverage variables and $P*T$ undercoverage variables. The number of constraints is equal to $P*T$ (for constraints (\ref{eq16})) $+$ $A$ (for constraints (\ref{eq144})).} %The Active-Sleep packet includes the schedule vector with the number of rounds that should be applied by the receiving sensor node during the sensing phase. @@ -1129,27 +1135,27 @@ $W_{U}$ & $|P|^2$ \\ \label{table3} % is used to refer this table in the text \end{table} - -\textcolor{red}{Our first protocol based GLPK optimization solver is declined into four versions: MuDiLCO-1, MuDiLCO-3, MuDiLCO-5, -and MuDiLCO-7, corresponding respectively to $T=1,3,5,7$ ($T$ the number of rounds in one sensing period). -The second protocol based based GLPK optimization solver with time limit is declined into four versions: TL-MuDiLCO-1, TL-MuDiLCO-3, TL-MuDiLCO-5, and TL-MuDiLCO-7. Table \ref{tl} shows time limit values for TL-MuDiLCO protocol versions. After extensive experiments, we chose the values that explained in Table \ref{tl} because they gave the best results. In Table \ref{tl}, "NO" refers to apply the GLPK solver without time limit because we did not find improvement on the results of MuDiLCO protocol with the time limit}. + +\textcolor{green}{The MuDilLCO protocol is declined into four versions: MuDiLCO-1, MuDiLCO-3, MuDiLCO-5, +and MuDiLCO-7, corresponding respectively to $T=1,3,5,7$ ($T$ the number of rounds in one sensing period). Since the time resolution may be prohibitif when the size of the problem increases, a time limit treshold has been fixed to solve large instances. In these cases, the solver returns the best solution found, which is not necessary the optimal solution. + Table \ref{tl} shows time limit values. These time limit treshold have been set empirically. The basic idea consists in considering the average execution time to solve the integer programs to optimality, then by dividing this average time by three to set the threshold value. After that, this treshold value is increased if necessary such that the solver is able to deliver a feasible solution within the time limit. In fact, selecting the optimal values for the time limits will be investigated in future. In Table \ref{tl}, "NO" indicates that the problem has been solved to optimality without time limit. }. \begin{table}[ht] -\caption{Time limit values for TL-MuDiLCO protocol versions } +\caption{Time limit values for MuDiLCO protocol versions } \centering \begin{tabular}{|c|c|c|c|c|} \hline - WSN size & TL-MuDiLCO-1 & TL-MuDiLCO-3 & TL-MuDiLCO-5 & TL-MuDiLCO-7 \\ [0.5ex] + WSN size & MuDiLCO-1 & MuDiLCO-3 & MuDiLCO-5 & MuDiLCO-7 \\ [0.5ex] \hline 50 & NO & NO & NO & NO \\ \hline 100 & NO & NO & NO & NO \\ \hline -150 & NO & 0.006 & NO & 0.03 \\ +150 & NO & NO & NO & 0.03 \\ \hline -200 & 0.0035 & 0.0094 & 0.020 & 0.06 \\ +200 & NO & NO & NO & 0.06 \\ \hline - 250 & 0.0055 & 0.013 & 0.03 & 0.08 \\ + 250 & NO & NO & NO & 0.08 \\ \hline \end{tabular} @@ -1346,6 +1352,7 @@ indicate the energy consumed by the whole network in round $t$. \end{enumerate} +\section{Results and analysis} \subsection{Performance Analysis for Different Number of Primary Points} \label{ch4:sec:04:06} @@ -1389,12 +1396,12 @@ As highlighted by Figures~\ref{Figures/ch4/R2/LT}(a) and \ref{Figures/ch4/R2/LT} \label{Figures/ch4/R2/LT} \end{figure} -Comparison shows that Model-5, which uses less number of primary points, is the best one because it is less energy consuming during the network lifetime. It is also the better one from the point of view of coverage ratio. Our proposed Model-5 efficiently prolongs the network lifetime with a good coverage ratio in comparison with other models. Therefore, we have chosen Model-5 for all the experiments presented thereafter. +Comparison shows that Model-5, which uses less number of primary points, is the best one because it is less energy consuming during the network lifetime. It is also the better one from the point of view of coverage ratio. Our proposed Model-5 efficiently prolongs the network lifetime with a good coverage ratio in comparison with other models. Therefore, we have chosen the model with five primary points for all the experiments presented thereafter. %\end{enumerate} -\subsection{Results and analysis} +%\subsection{Results and analysis} \subsubsection{Coverage ratio} @@ -1494,8 +1501,9 @@ network sizes, for $Lifetime_{95}$ and $Lifetime_{50}$. The results show that MuDiLCO is 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 as well as the energy consumed during the different status of the sensor node. Among the different versions of our protocol, the MuDiLCO-7 one consumes more energy than the other -versions. This is easy to understand since the bigger the number of rounds and the number of sensors involved in the integer program are, the larger the time computation to solve the optimization problem is. To improve the performances of MuDiLCO-7, we should increase the number of subregions in order to have less sensors to consider in the integer program. +due to activating a larger number of redundant nodes as well as the energy consumed during the different status of the sensor node. +% Among the different versions of our protocol, the MuDiLCO-7 one consumes more energy than the other +%versions. This is easy to understand since the bigger the number of rounds and the number of sensors involved in the integer program are, the larger the time computation to solve the optimization problem is. To improve the performances of MuDiLCO-7, we should increase the number of subregions in order to have less sensors to consider in the integer program. %\textcolor{red}{As shown in Figure~\ref{fig7}, GA-MuDiLCO consumes less energy than both DESK and GAF, but a little bit higher than MuDiLCO because it provides a near optimal solution by activating a larger number of nodes during the sensing phase. GA-MuDiLCO consumes less energy in comparison with MuDiLCO-7 version, especially for the dense networks. However, MuDiLCO protocol and GA-MuDiLCO protocol 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.}