A Branch and Bound Algorithm for the Critical Grid Coverage Problem in Wireless Sensor Networks

We aim to cover a grid fully by deploying the necessary wireless sensors while maintaining connectivity between the deployed sensors and a base station ( the sink ). The problem is NP - Complete as it can be reduced to a 2 - dimensional critical coverage problem, which is an NP - Complete problem. We develop a branch and bound (B&B) algorithm to solve the problem optimally. We verify by computational experiments that the proposed B&B algorithm is more efficient, in terms of computation time, than the integer linear programming model developed by Rebai et al. (2013), for the same problem.


Introduction
The emerging wireless sensor networks (WSNs) technology provides an inexpensive and powerful means to monitor physical environments. WSNs are dense but low cost networks, which are formed by wireless nodes that sense certain phenomena in the area of interest and report their observations to a base station for further analysis [1]. WSNs are used in many applications such as environmental monitoring [2], emergency navigation [3], and smart spaces and industrial diagnostics [4,5].
In a WSN, the sensor deployment is a critical issue because it may affect many facets of the network operations, including power management, routing, quality of service, and detection capability. In general, the sensor deployment is achieved either in a deterministic way or in a random way. Deterministic deployments are used in missions where the deployment area is physically accessible (urban monitoring, target tracking, etc.). On the other hand, random deployments are usually used when the mission deployment area is physically unreachable (seismic zones, volcanoes, etc.) [6].
It is worth noting that good sensor deployment may bring great benefits such as better network management and energy and cost savings, particularly when the sensor price is high. Nevertheless, the sensor placement has to be carried out so that coverage and connectivity are the most important considerations. In fact, while coverage is a metric that measures the surveillance quality provided by a WSN, connectivity offers a means for sensors to report their data to the sink [7].
In the WSN literature, two types of coverage problems are investigated: area coverage and target or point coverage. In the area coverage problem, the deployed sensors have to monitor a given area, whereas, in the target coverage problem, only a set of specific points (or targets) are monitored by the deployed sensors.
Both area coverage and target coverage problems can be divided in the 1-coverage problem or the -coverage problem. In the latter, each target or point in the sensing area needs to be covered by at least different working sensors. However, in the 1-coverage problem, each target or point in the sensing field has to be covered by at least one active sensor. Sometimes, the network coverage issue is closely related to the network's energy consumption [8][9][10][11]. In our proposal, we do not consider the energy constraint, since we assume that each sensor can be powered by an energy source (this is true in many cases, like fire detection sensors deployed in a large building). We note that the sensor devices may be characterized by a communication range. In such a case, a WSN is considered active if each sensor device finds a path (i.e., a set of connected sensors) towards the sink. Our general observation regarding previous works on the total coverage problem with connectivity constraint indicates few resolution approaches based on exact optimization methods. In this contribution, we propose a branch and bound algorithm to determine the optimal placement of networked sensors allowing total sensing area coverage such that each sensor device can find a connection path (i.e., a set of connected sensors) which reaches the sink. The rest of the paper is organized as follows. Section 2 briefly discusses related works in the field. Section 3 describes our network model. Section 4 presents a lower bound for the problem. Section 5 describes the B&B algorithm. Section 6 provides simulation results to demonstrate the performance of our proposed work, and finally we conclude the paper and introduce our future work in Section 7.

Related Works
The area coverage problem has been thoroughly studied in the last few years. Ke et al. [12] have proved that the problem of fully covering critical grids using a minimum number of sensors (known also as critical grid coverage problem) is NP-Complete. In [13], Chakrabarty et al. propose a linear model to minimize the cost of sensor deployment in a three-dimensional sensing field, while keeping a complete coverage area. In their study, the authors consider two types of sensors with different costs. The authors also assume that each point in the grid has to be covered by at least sensors. Andersen and Tirthapura [14] consider the total coverage in 3-dimensional area as a set-cover problem with multiplicity . Another approach, based on the copy of a regular polyhedron with a small volumetric coefficient, was presented by Alam and Haas [15] for the same problem.
A variety of algorithms and protocols achieving total coverage and connectivity have been proposed in the literature. In [16], Shakkottai et al. presented necessary and sufficient conditions for 1-covered, 1-connected sensor grid network. In addition, the authors developed a variety of methods to maintain connectivity and coverage in large WSNs. In [4], Bai et al. proposed an optimal deployment strategy to achieve both full coverage and 2-connectivity regardless of the relationship between the communication and sensing radii of sensors. Also, they established the efficiency of some regular patterns of deployment, thus enabling better decision making. Liu et al. [17] presented a joint scheduling scheme based on a randomized algorithm for providing statistical sensing coverage and guaranteed network connectivity. The authors in [18] proved that if the original network is connected and the chosen active nodes can cover the same region as all the original nodes, then the network formed by the active nodes is connected when the communication range is at least twice the sensing range.
Zhao and Gurusamy [19] developed a greedy algorithm that addressed both sensing coverage and network connectivity and proposed an approach to schedule the active time of sensors such that active sensors can cover all the targets and can be connected to the sink by direct links or by multihop routes traversing through only active sensors. However, the algorithm can only handle the coverage of discrete points.
In [20], Gupta et al. introduced the notion of a connected sensor cover, which is defined as the nodes set that can fully cover the queried area and which constitutes a connected communication graph at the same time. In the same work, the authors proved that the computation of the smallest connected sensor cover is NP-hard, and they developed distributed and centralized approximated methods to solve it, providing the performance bounds as well. The authors in [21] generalized the connected coverage problem to the connected -coverage problem. However, the algorithms in [20,21] require each individual sensor to be aware of its precise placement to check its local coverage redundancy. In some particular scenarios, it is difficult or infeasible to obtain the precise location information of sensors. Finally, Rebai et al. [22] proposed two integer linear programming models for the problem of total grid coverage. One of the models considers only the total coverage constraint. The other model ensures both the constraint of connectivity between the sensors and the total grid coverage constraint. In their work, the authors do not consider the energy constraint. A review of other existing works on the area coverage problem may be found in [23,24].

Problem Description
The treated problem consists of fully covering a 2-dimensional sensing area, using a minimum number of sensors while maintaining the connectivity between the sensors and the sink. We suppose that the sensing field may be represented by a grid having × (width × length) units of measure. The grid is digitized into × points and the distance between each two adjacent points is equal to 1 measurement unit. A sensor device, placed at the ( , ) grid position, is characterized by a sensing range noted cov and a communication range noted com . The sensor must accomplish two main tasks: covering each position ( , ) in the grid verifying ( − ) 2 + ( − ) 2 ≤ 2 cov and communicating the collected information to a next sensor along a path and so on until the information reaches the sink located at position ( , ). A sensor placed at the ( , ) position can communicate the collected data to another sensor located at the ( , ) position if and only if Figure 1 represents the main characteristics of the problem with a grid of 9 × 9, cov = 2, and com = 3.
In this study, we assume that cov = com = . Nevertheless, the developed method could be easily extended to the case of cov ̸ = com . Since our problem has already been treated, the results of the developed B&B algorithm will be compared, in Section 6, to the results of the integer linear programming model proposed by Rebai et al. [22].

Lower Bound
The main idea of the developed lower bound is to decompose the grid into small contiguous regular grids. Each small grid is characterized by a length ≤ and a width ≤ ( and are the length and the width of the sensing area or the grid, resp.). By solving the problem of the total small grids coverage so that the connectivity constraint inside each small grid is achieved and the distance between each two sensors in the sensing area (the grid) is greater than or equal to the sensing range , we obtain a lower bound for the problem.

Definitions
(1) Let be the number of the contiguous regular small grids in the sensing area × .
(2) Let us consider as the problem of total grid coverage with connectivity constraint (our treated problem).
(3) Let us define as the subproblem of the total small grid coverage with connectivity constraint inside the small grid such that the distance between each two sensors in the sensing area (the grid) is greater than or equal to the sensing range .
(4) Let us consider 1 as the problem of the total small grids coverage.

Proposition.
If is the optimal solution of the subproblem , therefore = ∑ =1 is a lower bound for the problem 1 . Consequently, is a lower bound for the problem .
Proof. When we have a grid with a length and a width , we can decompose it in different ways into small contiguous regular grids. All the small grids of 1 constitute one part of the grid of . Hence, a lower bound of 1 is also a lower bound of . When we solve 1 , by solving optimally at each iteration ( = 1 ⋅ ⋅ ⋅ ) the subproblem ( = 1 ⋅ ⋅ ⋅ ), there are two main scenarios that may happen. In the first scenario, connectivity between the small grids is achieved. In such a scenario, is an optimal solution if the total grid coverage constraint is achieved. In fact, the total coverage constraint and the connectivity inside and outside the small grids constraint are achieved. Moreover, the change of one sensor position in a small grid leads to the loss of either the coverage constraint in the sensing area (the grid) or the connectivity constraint. Hence, is an optimal solution. If the total grid coverage constraint is not reached, remains a lower bound since the connectivity between the deployed sensors is reached while the total coverage constraint is not achieved. In the second scenario, the connectivity between the small grids is not achieved. In a such scenario, is a lower bound for the problem because the connectivity constraint is automatically relaxed while the distance separating two sensors is greater than or equal to the sensing range . Figure 2 illustrates the lower bound idea in the problem with = 10, = 10, and = 2. Figure 2(a) shows the sensing area (the grid) decomposed into 4 regular small grids which means that = 4. The width and the length of one regular small grid are = = 5. Figures 2(b), 2(c), 2(d), and 2(e) represent the process to follow in order to obtain the lower bound value. In Figure 2(b), just 1 is solved optimally. In Figure 2(c), 2 is solved considering the optimal solution of 1 . In Figure 2(d), 3 is solved considering the optimal solutions of 1 and 2 . Finally, in Figure 2(e), 4 is solved considering the optimal solutions of 1 , 2 , and 3 . Figure 2(e) shows that = 4 which implies that = ∑ =1 = 16. In Figure 2(e), we observe that the total coverage constraint is satisfied while the connectivity constraint is not achieved. Moreover, the change of one sensor position leads to the loss of either the total coverage constraint or the connectivity constraint in the small grid. We note that the total coverage constraint may not be satisfied in some cases. For example, if we consider a grid with a length of 13 measurement units and a width of 12 measurement units, then the total coverage constraint is not satisfied using this lower bound decomposition. However, the delivered solution remains a lower bound for the problem. Note that in our experimental tests each regular small grid has a length = ⌈5 ⋅ ⌉/2 and a width = ⌈5 ⋅ ⌉/2. The optimal solution of each subproblem , determined by our decomposition method, is equal to 4 (i.e., = 4) for ≥ 2. In addition, we can find 4 sensor positions which reach the total small grid coverage. However, connectivity between two contiguous small grids is never reached.

Branch and Bound Algorithm (B&B)
The proposed B&B algorithm aims to determine a connected graph by choosing a limited number of arcs between some connected sensors nodes. Hence, the complexity of the algorithm is (2 ( × ) ). In the remainder of this section, the main elements of the B&B algorithm are given.  International Journal of Distributed Sensor Networks  The branching scheme is achieved as follows: we first define the partial solution border of the first level by determining all the ( , ) positions verifying ( − ) 2 + ( − ) 2 ≤ 2 where ( , ) corresponds to the sink position. After that, the separation on the last node of the first level is achieved by adding to the node its remaining sensor positions determined by the node partial solution border . Then, we repeat, in the second level, the separation on the last node and so on until a complete solution which verifies the total coverage constraint is obtained. This branching schema is called depth first separating strategy. Figure 4 shows the branching procedure on a grid with a length = 5, a width = 5, an = 2, and a sink position ( , ) = (1, 1).
In Figure 4, the light-filled sensor positions in (a), (b), and (c) grids represent the partial solution border positions of the first, the second, and the third levels of the search tree, respectively. In the first grid of Figure 4 (i.e., grid (a)), each one of the ( , ) light-filled positions has at least one uncovered position from the set . The partial solution border of the first level, which defines the first level nodes, is = {(1, 2); (1, 3); (2, 1); (3, 1); (2, 2)}. Since the (2, 2) sensor position is the last position in the first level, we separate that node (i.e., (2, 2)) by determining, firstly, all the grid positions which can be covered by the (2,2) (4,4); (3, 5)} which represents the third level nodes. This procedure is repeated until the total coverage constraint is achieved. Figure 5 represents the branching scheme of the example below using a search tree.
To enhance the performance of the B&B algorithm, two properties are developed allowing more elimination of fathomed nodes in the search tree.

Definitions
(1) Let be set of the partial solution border positions of the node at level of the search tree (i.e., is the remaining sensor positions of the node at level ).
(2) Let us consider as the partial solution positions set of the node at level of the search tree. In the example in Figure 4, if we examine the node (3, 1) in the second level (L2), then we observe that the partial solution in this node, determined by the fixed sensor positions, is (2, 2); (3,1). The separation on the node (3, 1) of level 1 (L1) will provide in level 2 (L2) the following partial solution border positions: = {(2, 1); (2, 2); (3, 3); (4, 1)}. We observe in level 2 (L2) a partial solution equal to (3, 1); (2,2) which is equal to the partial solution (3, 1); (2, 2) already treated. Hence, the elimination of the (2, 2) sensor position from the remaining position of the node (3, 1) in the first level of the search tree will improve the performance of the B&B algorithm in terms of fathomed nodes and computation time.
Proof. Consider that ( , ) ∈ means that ( − ) 2 + ( − ) 2 ≤ 2 and ( , ) ∈ means ( − ) 2 + ( − ) 2 ≤ 2 . If we keep ( , ) in the two remaining sensor positions of the nodes and at level of the search tree, then, in level + 1, ( , ) will be a sensor position of the partial solution of the node and a sensor position of the partial solution of the node while ( , ) will be a remaining sensor position of the node and ( , ) will be a remaining sensor position of the node since ( − ) 2 + ( − ) 2 > 2 , ( − ) 2 + ( − ) 2 ≤ 2 , and ( − ) 2 + ( − ) 2 ≤ 2 . At level + 2 of the search tree we will inevitably find the two partial solutions position from or will avoid the onset of a double solution in the search tree.

The Bounding
Procedure. In the bounding step, a lower bound solution of value Lb has to be computed on the remaining uncovered grid positions. In the proposed B&B algorithm, the lower bound described in Section 4 is used.
The bounding procedure is achieved as follows: firstly, the number of the regular small grids is determined and the borders of each small grid are defined on the grid. In the second step, the lower bound sensor positions are plotted by placing, in each small grid, the four positions which ensure the total small grid coverage and the connectivity inside the small grid. In the third step, the partial solution positions (with number ) are plotted on the grid. Then, the lower bound sensor positions, of number , which communicate with the partial solution sensor positions are deduced from the lower bound value (i.e., ). Finally, we computed that Lb = − . The Lb + value is compared to the current upper bound value. If the latter is greater than the Lb value, we add to the node its remaining positions as described in the branching scheme subsection. In the contrary case, we eliminate the separation on that node.

Computational Experiments
An instance for the total sensing field coverage problem with connectivity constraint is generated as follows: we first define the width and the length of the sensing field that are, respectively, in the {7, 10, 13, 15} and {7, 10, 13, 15} sets. The sensor sensing range is, subsequently, defined from the following set: {2, 3, 4, 5}.  The B&B algorithm is coded in the language and implemented on an Intel core i 7-3720QM CPU 2.60 GHz laptop. Whenever a problem is not solved in one hour (3600 s), the computation is stopped.
In Table 1, we observe small and high fathomed node values. The small fathomed node values mostly appear when the sensing range is high while the problem size is small. Nevertheless, the high fathomed node values are observed for the problems which are characterized by a small sensing range and a high size. In the same table, we also observe, for the same problem size, that the mean fathomed nodes decrease when the sensing range increases. Table 2 gives an idea about the mean eliminated nodes by the two proposed properties. In Table 2, the first column represents the size of the grid. The second, fourth, sixth, and eighth columns contain the mean of nodes eliminated by the first property for = 2, = 3, = 4, and = 5, respectively. The third, fifth, seventh, and ninth columns contain the mean of nodes eliminated by the second property. From this table, we observe that the two properties have an important role in reducing the fathomed nodes. However, their importance varies according to the sensing range and the problem size. In fact, the mean of eliminated nodes increases when the grid size is large while the sensing range is small. Nevertheless, it decreases when the sensing range is large. Table 3 represents the percentage of problems which are solved optimally by the B&B algorithm. We observe from Table 3 that the percentages of optimally solved problems depend on the sensing range. In fact, when the problem size increases and the sensing range decreases, then the percentage of the optimally solved problems decreases. However, when the problem size increases and the sensing range increases, then the percentage of the optimally solved problems increases. Figure 6 presents the mean computation time spent solving a problem with the B&B algorithm. The mean computation time of the grid size, for each value, is determined by summing the computation times of the 7 generated instances corresponding to the 7 tested placements of the sink, and then by dividing the obtained value by 7. From this figure, we observe some mean computation times equal to 3600 seconds. This result allows us to conclude that the delivered solutions of these instances may not be optimal unlike the remaining instances which have a mean computation time less than 3600 seconds. Figure 7 represents the mean computation time to solve a problem with the integer linear model proposed by Rebai et al. [22]. If we compare the results of Figure 6 to those of Figure 7, three main observations can be derived.
The first of those is about the total number of the instances having a mean computation time equal to 3600 seconds. In fact, in Figure 6, we observe fewer instances with a mean computation time equal to 3600 seconds.
The second concerns the mean computation time of the optimally solved instances. From the two figures, we observe that most of the instances, which are solved optimally by the B&B algorithm, have a mean computation time less than the mean computation time obtained by the integer linear model.
The third is about the impact of the sensing range on the mean computation time. In fact, for the two developed methods (i.e., the B&B algorithm and the integer linear model  Grid size R = 2 R = 3 R = 4 R = 5   in Rebai et al. [22]), we observe that when the sensing range increases the mean computation time decreases. In the case of = 5, the two methods present roughly similar results.
From the results of Figures 6 and 7, we can conclude that the B&B algorithm results dominate the linear model results. We note that 74% of the tested instances are solved optimally by the B&B algorithm while only 69% of the tested instances are solved optimally by the linear model. This result allows us to confirm that the developed B&B algorithm is better than the integer linear model proposed by Rebai et al. [22].

Conclusion
In this paper, we have developed a B&B algorithm for the critical grid coverage problem in wireless sensor networks with connectivity constraint. Our contribution adds the constraint of connectivity between the deployed sensors to the general form of the critical grid coverage problem. The proposed method is able to provide appropriate solutions for the small and medium size problems. The simulation results Table 3: Percentage of optimally solved problems by the B&B algorithm.  100  100  100  100  100  100  100  100  100  0  0  100  100  0  0  4 100  100  100  100  100  100  100  100  100  100  100  100  100  100  100  100  5 100  100  100  100  100  100  100  100  100  100  100  100  100  100  100  100 show that the B&B algorithm is more efficient than the linear model proposed by Rebai et al. [22] for the same problem. As perspectives, we aim to introduce infrastructure constraints (like walls) in the sensing field that may break the communication between the deployed sensors.