1 \documentclass[14]{article}
7 %\usepackage[T1]{fontenc}
8 %\usepackage[latin1]{inputenc}
10 \renewcommand{\labelenumii}{\labelenumi\arabic{enumii}}
11 %\titleformat*{\section}{\Large\bfseries}
13 %\title{Response to the reviewers of \bf "Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks"}
14 %\author{Ali Kadhum Idrees, Karine Deschinkela, Michel Salomon and Raphael Couturier}
22 \vspace{-0.5cm}\hspace{-2cm}FEMTO-ST Institute, UMR 6714
24 \hspace{-2cm}University of Franche-Comt\'e
26 \hspace{-2cm}IUT Belfort-Montbéliard, BP 527, 90016 Belfort Cedex, France.
31 Detailed changes and addressed issues in the revision of the article
33 "Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks"\\
35 by Ali Kadhum Idrees, Karine Deschinkel Michel Salomon, Rapahel Couturier
39 Dear Editor and Reviewers,
41 First of all, we would like to thank you very much for your kind help to improve our article named:
42 "Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks". We highly appreciate the detailed valuable comments of the reviewers on our article. The suggestions are quite helpful for us and we incorporate them in the revised article. We are happy to submit to you a revised version that considers most of your remarks and suggestions of improvement to improve the quality of our article.
44 As below, we would like to clarify some of the points raised by the reviewers and we hope the reviewers and the editors will be satisfied with our responses to the comments and the revision for the original manuscript. \\
47 %Journal: Engineering Optimization
48 %Reviewer's Comment to the Author Manuscript id GENO-2015-0094
49 %Title: \bf "Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks"
50 %Authors: Ali Kadhum Idrees, Karine Deschinkela, Michel Salomon and Raphael Couturier
53 \section*{Response to Reviewer No. 1 Comments}
55 This paper proposes a scheduling technique for WSN to maximize coverage and network lifetime. The novelty of this paper is the integration of an existing perimeter coverage measure with an existing integer linear programming model. Here are few comments:\\
57 \noindent {\bf 1.} The paper makes use of the existing integer optimization model to govern the state of each sensor node within the WSN to maximize coverage and network lifetime. This formulation of the coverage problem is different from the literature in the sense that they use the perimeter coverage measures to optimize coverage as opposed to the targets/points coverage. The methodology uses existing methods and the original contribution lies only in the application of these methods for the coverage scheduling problem.\\
59 \textcolor{blue}{\textbf{\textsc{Answer:} To the best of our knowledge, no integer linear programming based on perimeter coverage has been already proposed in the literature. As specified in the paper, in section 4, it is inspired from one model developed for brachytherapy treatment planning for optimizing dose distribution. In this model the deviation between an actual dose distribution and a required dose distribution in each organ is minimized. In WSN the deviations between the actual level of coverage and the required level are minimized. Outside this parallel between these two applications the mathematical formulation is completly different. }}\\
62 \noindent {\bf 2.} The theory seems mathematically sound. However, the assumption made on the selection criteria for the leader seems too vague. \\
64 \textcolor{blue}{\textbf{\textsc{Answer:} The selection criteria for the leader inside each subregion is explained in page 8, lines 50-51. After information exchange among the sensor nodes in the subregion, each node will have all required information to decide if it is a leader or not. The decision is based on selecting the sensor node that has a larger number of one-hop neighbors. If this value is the same for many sensors, the node that has the largest remaining energy will be selected as a leader. If there exists sensors with the same number of neighbors and the same value for the remaining energy, the sensor node that has the largest index will be selected as a leader. }}\\
65 %{\bf In fact, we gave a high priority to the number of neighbors to reduce the communication energy consumption - PAS CLAIR }}.\\
68 \noindent {\bf 3.} The communication and information sharing required to cooperate and make these
69 decisions was not discussed. \\
71 \textcolor{blue}{\textbf{\textsc{Answer:} The communication and information sharing required to cooperate and make these decisions was discussed in page 8, lines 48-49. Position coordinates, remaining energy, sensor node ID and number of one-hop neighbors are exchanged.}}\\
75 \noindent {\bf 4.} The definitions of the undercoverage and overcoverage variables are not clear. I suggest
76 adding some information about these values, since without it, you cannot understand how M and V are computed for the optimization problem. \\
78 \textcolor{blue}{\textbf{\textsc{Answer:} The perimeter of each sensor may be cut in parts called coverage intervals (CI). The level of coverage of one CI is defined as the number of active sensors neighbours covering this part of the perimeter. If a given level of coverage $l$ is required for one sensor, the sensor is said to be undercovered (respectively overcovered) if the level of coverage of one of its CI is less (respectively greater) than $l$. In other terms, we define undercoverage and overcoverage through the use of variables $M_{i}^{j}$ and $V_{i}^{j}$ for one sensor $j$ and its coverage interval $i$. If the sensor $j$ is undercovered, there exists at least one of its CI (say $i$) for which the number of active sensors (denoted by $l^{i}$) covering this part of the perimeter is less than $l$ and in this case : $M_{i}^{j}=l-l^{i}$, $V_{i}^{j}=0$. In the contrary, if the sensor $j$ is overcovered, there exists at least one of its CI (say $i$) for which the number of active sensors (denoted by $l^{i}$) covering this part of the perimeter is greater than $l$ and in this case : $M_{i}^{j}=0$, $V_{i}^{j}=l^{i}-l$. }}\\
82 \noindent {\bf 5.} Can you mathematically justify how you chose the values of alpha and beta? This is not
83 very clear. I would suggest possibly adding more results showing how the algorithm performs with different alphas and betas. \\
85 \textcolor{blue}{\textbf{\textsc{Answer:} The choice of alpha and beta should be made according to the needs of the application. Alpha should be enough large to prevent undercoverage and so to reach the highest possible coverage ratio. Beta should be enough large to prevent overcoverage and so to activate a minimum number of sensors. The values of $\alpha_{i}^{j}$ can be identical for all coverage intervals $i$ of one sensor $j$ in order to express that the perimeter of each sensor should be uniformly covered, but $\alpha_{i}^{j}$ values can be differenciated between sensors to force some regions to be better covered than others. The choice of $\beta \gg \alpha$ prevents the overcoverage, and so limit the activation of a large number of sensors, but as $\alpha$ is low, some areas may be poorly covered. This explains the results obtained for {\it Lifetime50} with $\beta \gg \alpha$: a large number of periods with low coverage ratio. With $\alpha \gg \beta$, we priviligie the coverage even if some areas may be overcovered, so high coverage ratio is reached, but a large number of sensors are activated to achieve this goal. Therefore network lifetime is reduced. The choice $\alpha=0.6$ and $\beta=0.4$ seems to achieve the best compromise between lifetime and coverage ratio. }}\\
89 \noindent {\bf 6.} The authors have performed a thorough review of existing coverage methodologies.
90 However, the clarity in the literature review is a little off. Some of the descriptions of the method
91 s used are very vague and do not bring out their key contributions. Some references are not consistent and I suggest using the journals template to adjust them for overall consistency. \\
93 \textcolor{blue}{\textbf{\textsc{Answer:} }}\\
97 \noindent {\bf 7.} The methodology is implemented in OMNeT++ (network simulator) and tested against 2 existing algorithms and a previously developed method by the authors. The simulation results are thorough and show that the proposed method improves the coverage and network lifetime compared with the 3 existing methods. The results are similar to previous work done by their team. \\
99 \textcolor{blue}{\textbf{\textsc{Answer:} Although the study conducted in this paper reuses the same protocol presented in our previous work, we focus in this paper on the mathematical optimization model developed to schedule nodes activities. We deliberately chose to keep the same performance indicators to compare the results obtained with this new formulation with other existing algorithms. }}\\
102 \noindent {\bf 8.} Since this paper is attacking the coverage problem, I would like to see more information on the amount of coverage the algorithm is achieving. It seems that there is a tradeoff in this algorithm that allows the network to increase its lifetime but does not improve the coverage ratio. This may be an issue if this approach is used in an application that requires high coverage ratio. \\
104 \textcolor{blue}{\textbf{\textsc{Answer:} Your remark is interesting. Indeed, figures 8(a) and (b) highlight this result. PeCO methods allows to achieve a coverage ratio greater than $50\%$ for many more periods than the others three methods, but for applications requiring an high level of coverage (greater than $95\%$), DilCO method is more efficient. It is explained at the end of section 5.2.4. }}\\
106 %%%%%%%%%%%%%%%%%%%%%% ENGLISH and GRAMMAR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
108 \noindent\textcolor{black}{\textbf{\Large English and Grammar:}} \\
110 \noindent {\ding{90} The first paragraph of every section is not indented. } \\
112 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed. The first paragraph of every section is indented in the new version. }}\\
115 \noindent {\ding{90} You seem to be writing in the first person. I suggest rewriting sentences that include “we” “our” or “I” in the third person. (There are too many instances to list them all. They are easily found using the find tool.) } \\
117 \textcolor{blue}{\textbf{\textsc{Answer:} It is very common to find sentences with "we" and "our" in scientific papers to explain the work made by the authors. Nevertheless we agree with the reviewer and we reformulated some sentences in the paper to avoid too many uses of the first person. }}\\
120 \noindent {\ding{90} Run-on sentence: Page 2 lines 43-48} \\
122 \textcolor{blue}{\textbf{\textsc{Answer:} We rewrote this sentence in two separated sentences. }}\\
126 \noindent {\ding{90} Add an “and” after the comma on page 3 line 34.} \\
128 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}\\
131 \noindent {\ding{90} “model as” instead of “Than” on page 10 line 12.} \\
133 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}\\
136 \noindent {\ding{90} “no longer” instead of “no more” on page 10 line 31.} \\
138 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}\\
141 \noindent {\ding{90} “in the active state” add the on page 10 line 34. } \\
143 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}\\
147 \noindent { \ding{90} Lots of English and grammar mistakes. I recommend rereading the paper line by line and adjusting the sentences that do not make sense.} \\
149 \textcolor{blue}{\textbf{\textsc{Answer:} ?????? relecture par Ingrid }}.\\
154 \section*{Response to Reviewer No. 2 Comments}
155 The paper entitled "Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks", by Ali Kadhum Idrees, Karine Deschinkela, Michel Salomon and Raphael Couturier proposes a new protocol for Wireless Sensor Networks called PeCO (Perimeter-based Coverage Optimization protocol) that aims at optimizing the use of energy by conjointly exploiting a spatial and temporal subdivision. The protocol is based on solving a Mixed Integer Linear Program at each leader node, and at each iteration of the protocol. The results obtained by PeCO are compared with three other competitors.\\
158 \noindent\textcolor{black}{\textbf{MAJOR COMMENTS:}} \\
160 \noindent {\bf 1.} The protocol framework is not described in details. In particular, the spatial and temporal subdivision (page 2, line 11) that is at the core of PeCO, is not described nor justified in much detail. How to implement an efficient spatial subdivision? On page 10, line 11, the number of subdivisions is said to be equal to 16, but the clustering algorithm used is not mentioned. Is this number dependent of the size of the sensing area? Of the number of sensors? Of the sensing range? The proposed protocol cannot be adopted by practitioners if such an important step is not documented. Temporal subdivision suffers from the same lack of description and justification: why should time intervals have the same duration? If they have the same duration, how should this common duration should be chosen? \\
162 \textcolor{blue}{\textbf{\textsc{Answer:} Spatial and temporal choices of subdivision are not the topics of the paper. In the study, we assume that the deployment of sensors is almost uniformly over the region. So we only need to fix a regular division of the region into subregions to make the problem tractable. The subdivision is made such that the number of hops between any pairs of sensors inside a subregion is less than or equal to 3. Concerning the choice of the sensing period duration, it is correlated with the types of applications, with the amount of initial energy in sensors batteries and also with the duration of the exchange phase. All applications do not have the same requirements of Quality of Service. Here information exchange is executed every hour but the length of the sensing period could be reduced and adapted dynamically. On the one hand a small sensing period would allow to be more reliable but would have higher communication costs. On the other hand the choice of a long duration may cause problems in case of nodes failure during the sensing period.}}\\
165 \noindent {\bf 2.}Page 9, Section 4, is the Perimeter-based coverage problem NP-hard? This question is important for justifying the use of a Mixed Integer Linear Programming model. \\
167 \textcolor{blue}{\textbf{\textsc{Answer:} The perimeter scheduling coverage problem is NP-hard in general, it has been proved
168 in the paper entitled "Perimeter Coverage Scheduling in Wireless Sensor Networks Using Sensors with a Single Continuous Cover Range" from Ka-Shun Hung and King-Shan Lui (EURASIP Journal on Wireless Communications and Networking 2010, 2010:926075 doi:10.1155/2010/926075). In this paper, authors study the coverage of the perimeter of a large object requiring to be monitored. In our study, the large object to be monitored is the sensor itself (or more precisely its sensing area). }}\\
171 \noindent {\bf 3.} Page 9, the major problem with the present paper is, in my opinion, the objective function of the Mixed Integer Linear Program (2). It is not described in the paper, and looks like an attempt to address a multiobjective problem (like minimizing overcoverage and undercoverage). However, using a weighted sum is well known not to be an efficient way to address biobjective problems. The introduction of various performance metrics in Section 5.1 also suggests that the authors have not decided exactly which objective function to use, and compare their protocols against competitors without mentioning the exact purpose of each of them. If the performance metrics list given in Section 5.1 is exhaustive, then the authors should mention at the beginning of the paper what are the aims of the protocol, and explain how the protocol is built to optimize these objectives. \\
173 \textcolor{blue}{\textbf{\textsc{Answer:} Right. The mixed Integer Linear Program adresses a multiobjective problem, where the goal is to minimize overcoverage and undercoverage for each coverage interval for each sensor. As far as we know, representing the objective function as a weighted sum of criteria to be minimized in case of multicriteria optimization is a classical method. In section 5, the comparison of protocols with a large variety of performance metrics allows to select the most appropriate method according to the QoS requirement of the application. }}\\
176 \noindent {\bf 4.}Page 11 Section 5.2, the sensor nodes are said to be based on Atmels AVR ATmega103L microcontroller. If I am not mistaken, these devices have 128 KBytes of memory, and I didn't find any clue that they can run an operating system like Linux. This point is of primary importance for the proposed protocol, since GLPK (a C API) is supposed to be executed by the cluster leader. In addition to that, GLPK requires a non negligible amount of memory to run properly, and the Atmels AVR ATmega103L microcontroller might be insufficient for that purpose. The authors are urged to provide references of previous works showing that these technical constraints are not preventing their protocol to be implemented on the aforementioned microcontroller. Then, on page 13, in Section "5.2.3 Energy Consumption", the estimation of $E_p^{com}$ for the considered microcontroller seems quite challenging and should be carefully documented. Indeed, this is a key point in providing a fair comparison of PeCO with its competitors. \\
178 \textcolor{blue}{\textbf{\textsc{Answer:}
179 To implement PeCO on real sensors nodes with limited memories capacities, we can act on :
181 \item the solver : GLPK is memory consuming for the resolution of integer programming (IP) compared with other commercial solvers like CPLEX\textregistered. Commercial solvers generally outperform open source solvers (See the report : "Analysis of commercial and free and open source
182 solvers for linear optimization problems" by B. Meindl and M. Templ from Vienna University of Technology). Memory use depends on the number of variables and number of constraints. For linear programs (LP), a reasonable estimate of memory use with CPLEX
183 \textregistered is to allow one megabyte per thousand constraints. For integer programs, no simple formula exists since memory use depends so heavily on the size of the branch and bound tree (B \& B tree). But, the estimate for linear programs still provides a lower bound. In our case, the characteristics of the integer programming (2) are the following:
185 \item number of variables : $S* (2*I+1)$
186 \item number of constraints : $2* I *S$
187 \item number of non-zero coefficients : $2* I *S * B$
188 \item number of parameters (in the objective function) : $2* I *S$
190 where $S$ denotes the number of sensors in the subregion, $I$ the average number of cover intervals per sensor, $B$ the average number of sensors involved in a coverage interval. The following table gives the memory use with GLPK to solve the integer program (column 3) and its LP-relaxation (column 4) for different problem sizes. The sixth column gives an estimate of the memory use with CPLEX\textregistered to solve the LP-relaxation according to the number of constraints.
192 \begin{tabular}{|c|c|c|c|c|c|r|}
194 Total number & S & I & GLPK IP & GLPK LP & nodes&CPLEX\\
195 of nodes &&&&relaxation &B\&B tree &\\
197 100 & 6.25& 5&0.2 Mb & 0.2 Mb &1 & 64 Kb\\
199 200 & 12.5& 11&1.7 Mb & 1.6 Mb &1 & 281 Kb\\
201 300 &18.5 & 17&3.6 Mb & 3.5 Mb & 3 &644 Kb\\
205 It is noteworthy that the difference of memory used with GLPK between the resolution of the IP and its LP-relaxation is very weak (not more than 0.1 Mb). The size of the branch and bound tree dos not exceed 3 nodes. This result leads one to believe that the memory use with CPLEX\textregistered for solving the IP would be very close to that for the LP-relaxation, that is to say around 100 Kb for a subregion containing $S=10$ sensors. Moreover the IP seems to have some specifities that encourage us to develop our own solver (coefficents matrix is very sparse) or to use an existing heuristic to find good approximate solutions (Reference : "A feasibility pump heuristic for general mixed-integer problems", Livio Bertacco and Matteo Fischetti and Andrea Lodi, Discrete Optimization, issn 1572-5286).
206 \item the subdivision of the region of interest. To make the resolution of integer programming tractable by a leader sensor, we need to limit the number of nodes in each subregion (the number of variables and constraints of the integer programming is directly depending on the number of nodes and neigbors). It is therefore necessary to adapt the subdvision according to the number of sensors deployed in the area and their sensing range (impact on the number of coverage intervals).
212 \noindent\textcolor{black}{\textbf{MINOR COMMENTS:}} \\
215 \noindent {\ding{90} Page 12, lines 7-15, the authors mention that DiLCO protocol is close to PeCO. This should be mentioned earlier in the paper, ideally in Section 2 (Related Literature), along with the detailed description of DESK and GAF, the competitors of the proposed protocol, PeCO. } \\
217 \textcolor{blue}{\textbf{\textsc{Answer:} Right. This observation has been added at the end of the introduction}}.\\
221 \noindent {\ding{90} Page 2, line 20, "An optimal scheduling" should be replaced with "An optimal schedule" } \\
223 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
227 \noindent {\ding{90} Page 4, we first read (line 23) "we assume that each sensor node can directly transmit its measurements to a mobile sink", then on line 30, "We also assume that the communication range Rc satisfies $Rc >=2Rs$. In fact, Zhang and Hou (2005) proved that if the transmission range fulfills the previous hypothesis, the complete coverage of a convex area implies connectivity among active nodes.". These two assumptions seems redundant. } \\
229 \textcolor{blue}{\textbf{\textsc{Answer:} Yes, you are right and we removed sentences about the sink. Indeed we consider multi-hops communication.}}.\\
233 \noindent {\ding{90} Page 4, line 37, a definition for k-covered is missing (the sentence is an equivalence property).} \\
235 \textcolor{blue}{\textbf{\textsc{Answer:} Right. A network area is said to be $k$-covered if every point in the area covered by at least k sensors. We added this definition in the paper}}.\\
240 \noindent {\ding{90} Page 5, lines 34 and 37, replace [0, $2\pi$] with [0, $2\pi$) } \\
242 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
247 \noindent {\ding{90} Page 5, line 36 and 43, replace "figure 2" with "Figure 2" } \\
249 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
254 \noindent {\ding{90} Page 5, line 50, replace "section 4" with "Section 4" } \\
256 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
259 \noindent {\ding{90} Page 5, line 51, replace "figure 3" with "Figure 3"} \\
261 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
264 \noindent {\ding{90} Page 7, line 20 "regular homogeneous subregions" is too vague. } \\
266 \textcolor{blue}{\textbf{\textsc{Answer:} As mentioned in the previous remark, the spatial subdivision was not clearly explained in the paper. We added a discussion about this question in the article. Thank you for highlighting it. }}.\\
269 \noindent {\ding{90} Page 7, line 24, replace "figure 4" with "Figure 4"} \\
271 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
274 \noindent {\ding{90} Page 7, line 47, replace "Five status" with "Five statuses" } \\
276 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
280 \noindent {\ding{90} Page 9, the constraints of the Mixed Integer Linear Program (2) are not numbered. There are two inequalities for overcoverage and undercoverage that are used to define Mij and Vij. Why not using replacing these inequalities by equalities? } \\
282 \textcolor{blue}{\textbf{\textsc{Answer:} For minimizing the objective function, $M_{i}^{j}$ and $V_{i}^{j}$ should be set to the smallest possible value such that the inequalities are satisfied. It is explained in the answer 4 for the reviewer 1. But, at optimality, constraints are not necessary satisfied with equality. For instance, if a sensor $j$ is overcovered, there exists at least one of its coverage interval (say $i$) for which the number of active sensors (denoted by $l^{i}$) covering this part of the perimeter is greater than $l$. In this case, $M_{i}^{j}=0$, $V_{i}^{j}=l^{i}-l$, the corresponding inequality $\sum_{k \in A} ( a^j_{ik} ~ X_{k}) + M^j_i \geq l$ is a strict inequality since $\sum_{k \in A} ( a^j_{ik} ~ X_{k})=l^{i} > l$. }}\\
284 \noindent {\ding{90} Page 10, line 50, "or if the network is no more connected". In order to assess this, the communication range should be known, but it is not given in Table 2. } \\
286 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed}}.\\
289 \noindent {\ding{90} Page 10, line 53, the "Coverage ratio" definition is provided for a given period p? Then in the formula on top of page 11, N is set to 51 times 26, why? Is it somehow related to the sensing area having size 50 times 25? } \\
291 \textcolor{blue}{\textbf{\textsc{Answer:} Yes, the "Coverage ratio" definition is provided for a given period p. N is set to 51 times 26 = 1326 grid points because we discretized the sensing field as a regular grid, a point on the contour and a point every meter. Yes, it is related to the sensing area having size 50 meters times 25 meters. }}\\
294 \noindent {\ding{90} Page 11, line 17 in the formula of ASR, |S| should be replaced with J (where J is defined page 4 line 16). } \\
296 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
299 \noindent {\ding{90} Page 13, line 41 and 43, replace "figure 8" with "Figure 8" } \\
301 \textcolor{blue}{\textbf{\textsc{Answer:} Right, fixed }}.\\
305 We are very grateful to the reviewers who, by their recommendations, allowed us to improve the quality of our article.