Coverage improvement using Voronoi diagrams in directional sensor networks

Recently, the area coverage problem has emerged in the directional sensor network (DSN), where the sensor's sensed area depends on its working direction and viewing angle. This study has proposed a new algorithm based on the Voronoi diagram, called prioritized geometric area coverage (PGAC), to increase DSN's covered area. In a Voronoi diagram, all internal points of a convex polygon (cell) formed around a sensor are closer to the sensor than any other sensor. Therefore, the best sensor for covering a Voronoi cell area is the corresponding sensor of the cell. In contrast to similar approaches, PGAC considers the relation between the cell area and the sensor's covered area when selecting a sensor's working direction. It categorizes Voronoi cells, based on their geometric sizes, into three categories. In each category, PGAC adjusts the sensor's working direction to maximize the covered area and minimize the overlapping between adjacent cells. It also turns off redundant sensors for extending the network lifetime. Our simulation results showed that PGAC increases the covered area and decreases the number of active sensors compared to similar methods.


| INTRODUCTION
The field coverage problem is an essential subject in wireless sensor networks [1]. Currently, directional sensor networks (DSN) are widely employed for solving the coverage problem, especially with the emergence of the wireless multimedia sensor network (WMSN) [2]. The area covered by a directional sensor in a DSN is characterized by two important factors: sensing range and viewing angle. Hence, unlike conventional omnidirectional sensors, the covered area is like a sector rather than a circle.
In the Voronoi diagram, the field is partitioned based on the sensors' location. In correspondence to each sensor, there is a convex polygon, which is also called a Voronoi cell consisting of all points that are closer to the sensor than to any other sensor. In other words, each sensor is the best candidate to cover the area of its corresponding cell. Naturally, the area covered by a sensor is maximized when the sensor faces the farthest vertex of the corresponding polygon. Clearly, when two sensors select a vertex (or two close enough vertices) as their working directions, some areas will be covered by both sensors. This phenomenon is called overlapping coverage and should be avoided or reduced. In such cases, one of the sensors should change its working direction.
Current proposals for area coverage have overlooked several essential issues. First, they do not consider the relationship between a convex polygon's size and the corresponding sensor's working direction. Next, they ignore the activation order of sensors, which directly impacts the final solution quality. Finally, in the case of overlapping between multiple sensors, it is not clear which sensor should first change its working direction. Also, there is no clear criterion or condition for selecting a new working direction. In our proposal, called prioritized geometric area coverage (PGAC), we have addressed the above issues.
The area of a sector covered by a sensor is proportional to its viewing angle and sensing range. The relevant point here is that the area value is independent of the working direction of the sensor. Therefore, for each Voronoi cell, we compute the ratio between the cell area and sector area. We then classify all cells according to this ratio into three distinct classes: large, medium, and small. PGAC uses a different methodology for selecting the working direction of sensors in each category. Also, we sort the cells and process them from the largest cell towards the smallest one. In other words, a sensor that belongs to a larger cell will always select its working direction sooner than a sensor that belongs to a smaller cell.
In large cells, the cell area is much larger than the sector area. Therefore, the main objective of PGAC is to maximize intracell coverage and minimize intercell overlapping. In medium-sized cells, the cell area and the sector area are comparable. In those cells, PGAC pays attention to both intercell and intracell overlapping in addition to intracell coverage when selecting a working direction for corresponding sensors. Finally, in small cells, the sector area is larger than the cell area. Therefore, the intracell coverage would be negligible regardless of the selected working direction. The pure objective of PGAC in such cells is to minimize the overlapping between this sensor and adjacent sensors. Furthermore, if the net coverage is less than a minimum coverage threshold, which is 10% of the sector area, the sensor is deactivated for power efficiency reasons.
In particular, we have made the following contribution in PGAC. First, we established a logical relation between the cell area and the corresponding sensor's working direction. This strategy increased the coverage ratio as it is demonstrated in the performed simulation. A sensor's working direction is only related to the cell shape and the intracell coverage in previous studies. In PGAC, this wrong assumption is objected, and the working direction of sensors in medium and small cells is adjusted so that both intercell coverage and intercell overlapping are optimized. Also, we noticed that the activation order of sensors affects the coverage ratio. The sensor activation order of PGAC, which is from the largest to the smallest cell, reduces the overlapping between adjacent cells. Therefore, PGAC covers a larger area with a smaller number of sensors. This strategy will increase the network's lifetime directly.
The remainder of this study is structured as follows. In Section 2, we describe related works. Then, we present the main idea of PGAC alongside a simple analysis in Section 3. Simulation results are shown in Section 4. Finally, we conclude in Section 5.

| RELATED WORKS
Guvensan et al. [1] surveyed the coverage problem in WMSN [2] comprehensively. The coverage problem is classified into three distinct categories: (1) barrier coverage [3], (2) target coverage [5], and (3) area coverage [6][7][8][9][10][11][12][13][14][15][16][17][18][19]. The main concern of barrier coverage is to detect any intruder attempting to cross the barrier covered by a DSN. In target coverage, the main goal is to find a minimum number of directional sensors and their working directions to cover all targets. The area coverage, which is the subject of this study, is concerned with the full field coverage regardless of the targets' positions.
Sung and Yang proposed several coverage algorithms using geometric techniques [5][6][7][8]. In [5], they solved the target tracking problem using the Voronoi diagram. In [8], they used the Delaunay triangulation technique to solve the area coverage problem. The Delaunay triangulation is dual of the Voronoi diagram. In [6] and [7], they used the Voronoi diagram technique to solve the area coverage problem. They used the farthest vertex of a Voronoi cell as the main working direction for its corresponding sensor. For reducing the overlapping problem, each sensor individually selects another working direction. PGAC is similar to [6] and [7] in the sense that it sets the farthest point of a Voronoi cell as the working direction in large cells. It uses different strategies for medium and small cells. Also, it activates the sensors in a predefined order.
The coverage-enhancing algorithm based on the overlapsense ratio (OSRCEA) [9] is a greedy algorithm that reduces the overlapping area. It uses the overlapping ratio between a sensor and its neighbours to select an appropriate working direction for the sensor. It also deactivates redundant nodes for increasing network lifetime. In [10], the sensors with more overlapping areas receive higher priority. Then, the location and working direction of sensors is iteratively changing until the desired amount of coverage is achieved. Tezcan and Wang [11] proposed a distributed algorithm for maximizing the coverage ratio in the presence of occlusions in the field. Costa et al. [12] used the sensors' redundancy in a different way to increase network availability. They presented a greedy algorithm to select appropriate redundant sensors to act as spare sensors. Sati et al. [13] proposed a greedy algorithm for the area coverage problem based on reducing the field of view (FOV) overlapping between neighbouring sensors.
Huang et al. [14] proposed an AI method to cover important field regions. They first give different weights to various parts of the field. Then, they use particle swarm optimization and simulated annealing to find a globally optimized solution for the problem. In [15], the Voronoi diagram and clustering techniques are combined. In their method, DSN is clustered, and a cluster-head is selected for each cluster. The cluster-head activates a proper set of cluster members and adjusts their working directions to cover the cluster.
In [16], a greedy algorithm is proposed for controlling mobile sensors to reduce the number of coverage holes. As a result, the area coverage is increased. As a similar concept, the Delaunay-based coordinate-free mechanism [17] uses Delaunay triangulation to find the shortest node movement for healing coverage holes. Alaei and Barcelo-Ordinas [18] proposed using a clustering technique to increase network lifetime. They proposed an intracluster and an intercluster cooperation method for selecting active sensors and determined their activation scheduling. In [19], the optimal coverage in directional sensor networks problem is defined. They proved that this problem is NP-complete and proposed a solution for the problem using the Voronoi diagram.

| PRIORITIZED GEOMETRIC AREA COVERAGE
In this section, we define the coverage problem, the necessary terms, and our assumptions. Then, we describe the Voronoi diagram briefly and analyse its efficiency in solving the coverage problem. Finally, PGAC and its main components are discussed.

| Sensing model
An omnidirectional sensor can cover a circle with radius r, where r is the sensor's maximum sensing range. In contrast, a directional sensor has a finite angle of view, called α, and it can only cover a sector of the circle. In Figure 1, the shadowed area is the sector covered by sensor s in the given working direction θ. The working direction of the sensor is represented by a unit vectorŵ. Assume that point (x s , y s ) represents the Cartesian coordinate of sensor s. Besides, α is the sensing angle, also denoted by FOV, and θ is the angle betweenŵ and x-axis. We refer to θ as the working angle of the sensor. Therefore,ŵ could be represented as ðcos θ; sin θÞ. A point p in location (x p , y p ) is covered by s if the following conditions are satisfied: 1. The Euclidean distance between s and p is less than or equal to r: ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi 2. The angle between vectors sp → andŵ (named β for convenience) must be less than or equal to α 2 . According to the inner product of two vectors: Since sp → is ððx p − x s Þ; ðy p − y s ÞÞ andŵ is ðcos θ; sin θÞ: ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi And concerning inequality β ≤ α 2 , one could say that: ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi ffi

| Problem declaration
Sensors are deployed randomly in a rectangular shaped field. Our objective is to cover the field's largest possible area with a minimum number of activated sensors. We have made the following assumptions: � All sensors are homogenous. They have the same r and α.
The default values for r and α are 120 m and π 3 : . � Each sensor can adjust its working directionŵ freely. The sensing range of the sensor (i.e. r) is fixed and could not be adjusted programmatically. � Sensors are deployed randomly in the field. But, their locations are known before solving the problem through GPS or localization techniques [4]. � Each sensor knows its location, the sensors' locations in adjacent cells, and the working direction of activated neighbours. � When Voronoi cells are formed, each sensor exchanges local information such as its location and working direction with adjacent cells. � The sensors' location is fixed. In other words, sensors cannot move around the field to fix coverage holes. � Each sensor may cover other cells' areas due to intentional sensor redundancy resulted from random sensors deployment.
Each sensor is located in a Voronoi cell. As mentioned earlier, the sensor can cover other cells in addition to its corresponding cell. We have used the following definitions regarding the covered area by a sensor (see Figure 2): � A portion of the covered area by a sensor that resides inside its cell is called internal coverage (IC) of the sensor. In F I G U R E 1 Sensor s has a viewing angle α, sensing range r, and working direction θ. It could cover point p because p is located in the covered area by s. The covered area is a sector with angle α and radius r (shadowed area) ZAREI AND BAG-MOHAMMADI Figure 2, the IC of S1 and S2 is shown by IC 1 and IC 2 labels, respectively. � A portion of the covered area by a sensor that resides outside its cell (inside adjacent cells) is called external coverage (EC) of the sensor. In Figure 2, the EC of S1 and S2 are shown by EC 1 and EC 2 labels, respectively. � When another sensor also covers a portion of the covered area by a sensor, we say that overlapping occurred between two sensors. � If the overlapped area is inside its cell for a given sensor, the internal overlapping (IO) has occurred. For example, in Figure 2, IO 34 is the IO between covered areas of S3 and S4 from the S3's viewpoint. � If the overlapped area is outside its cell for a given sensor, the external overlapping (EO) has occurred. For example, in Figure 2, EO 45 is the EO between S4 and S5 from S4's viewpoint.

| Voronoi diagram
Voronoi diagram is a geometric structure with interesting characteristics. We have used the Voronoi diagram for partitioning the field as follows. Suppose that n sensors are randomly deployed in a square-shaped field uniformly. For each line that connects two sensors (see Figure 3a), we draw its perpendicular line (see Figure 3b). These perpendicular lines form the boundaries of Voronoi cells (see Figure 3c).
Each perpendicular line is composed of all points that are equidistant from two nearest sensors. Each vertex of Voronoi cells is equidistant to at least three sensors. Clearly, there is a one-to-one correspondence between sensors and Voronoi cells. The distance of any point in a Voronoi cell to the corresponding sensor is less than or equal to any other sensor. Therefore, each sensor is naturally the best candidate for covering its cell area. Next, we analyse the sufficient condition for full coverage of the field. By full coverage, we imply that any location in the field is at least monitored by a sensor.

THEOREM 1 For a set of omnidirectional sensors in a 2D field, the field is fully covered if the distance between any two sensor pairs is less than 2r, where r is the sensing range of the sensors.
Proof We prove the statement using the Voronoi diagram concept, as shown in Figure 3c. For any two adjacent sensors p and q, there are two vertices such as m and n that are equidistant to them. Using triangle inequality, one could write: jpqj ≤ jmpj þ jmqj < 2r Therefore, we must deploy the sensor so that the distance between them is less than 2r. Or equivalently, we intentionally increase redundancy in the sensors quantity to ensure the field coverage.

| Main idea
In PGAC, the working direction of a sensor is directly influenced by its cell size. After the formation of Voronoi cells, they are classified into three different categories based on their relative size to sensing sector size. In Figure 4, three examples are shown for large, medium, and small cells. We have assumed that the sensed area is a sector with radius r and angle α. As shown in Figure 4a, for large cells, the cell area, denoted by A i , is larger than the sector area, denoted by A s . It means that the IC of the sensor dominates its EC. In medium-sized cells, A i and A s are comparable. Or equivalently, both IC and EC of the sensor are equally important. Finally, in small cells, A i is smaller than A s . Hence, the EC should receive more attention than the IC.
In current Voronoi-based proposals, the sensor selects the cell's farthest vertex as its working direction regardless of the cell size (as depicted in Figure 4a) [6,7,15,19]. Clearly, this strategy is only appropriate for large cells. For other types of cells, we need to use different strategies for a better result. For short, in large cells, PGAC maximizes IC and minimizes EO. In medium cells, the overlapping is inevitable. Therefore, PGAC minimizes both IO and EO simultaneously. In small cells, the main coverage of the sensor is of the external type. Therefore, PGAC maximizes the net external coverage, which is the difference between EC and EO.
PGAC uses two threshold values for classifying Voronoi cells. Both threshold values are defined as a ratio between A i and A s . Therefore, threshold values are independent of the actual sizes of the cell and the sector. We have examined the search space and found that the best values for high and low thresholds are 0.7 and 1.3, which maximize PGAC's performance. If the ratio between A i and A s is higher than 1.3, the cell is classified as a large cell. In the cases that the ratio is smaller than or equal to 0.7 for a cell, the cell is classified as a small cell. The remaining cells are classified into medium cells. The pseudocode of the above  Figure 5. In this code, A is a sorted list of cells, i.e., A i > A j for i < j. T L and T H are low and high threshold values, respectively. L, M, and S are sorted lists of the large, medium, and small cells, respectively.
After classifying Voronoi cells, we should determine the working direction of active sensors. Each sensor must select one of its polygon vertices as the working direction. First, we express a general rule which is valid for all cells. For some boundary cells (such as s1 to s14 in Figure 6), the sensor is close enough to the field's boundary. In such cells, it is possible to select a vertex so that a portion of the sensed area is located outside the field. For this reason, PGAC only examines vertices that their corresponding sensed area is entirely inside the field. As mentioned previously, PGAC activates sensors in a predefined order. This strategy would allow it to decrease overall overlapping among active sensors. PGAC examines L members first. It then examines M and S members respectively. PGAC's pseudocode is shown in Figure 7.
In the following, suppose that we are investigating sensor i when selecting vertex k of its cell. Also, assume that J is a subset of previously activated sensors whose sensed areas overlap with i when i selects k as its working direction. In large cells, IC is more critical than EC. For a large cell, PGAC selects a vertex as its working direction that the difference between its IC i and ∑ j∈J EO ij is more than other vertices. It means that PGAC maximizes IC of the sensor while minimizing its overlapping with previously activated sensors. In contrast to similar approaches, PGAC will not change a sensor's working direction later when examining smaller cells.
One could note that the IC and EC of the sensor are equally important for members of M. Therefore, PGAC would optimize the net coverage of the sensor in medium-sized cells. One could express the net coverage of the sensor as the difference between the sector area and the resulting overlapping area from previously activated sensors, that is, Since A s is a constant value, if we minimize the overlapping area in a medium cell, the sensor's net coverage (i.e., IC and EC) is optimized.
For small cells, a large portion of the sector area is outside the cell area. Therefore, IC would be negligible in comparison to EC for any vertex. As a result, PGAC selects a vertex that has maximum net EC. The net EC of the sensor is the difference between EC and EO. If the resulted net EC is smaller than a predefined threshold, which is currently set to 0.1*A s . In such cases, the sensor is not activated at all for energy efficiency reasons. This strategy will increase the network lifetime.

| SIMULATION RESULT
We have simulated PGAC and a Voronoi-based method [6] using a proprietary simulator written in Python. The sensors are deployed randomly in the field using a uniform distribution. The simulation parameters are tabulated in Table 1. Each simulation scenario is repeated 100 times, and the average values are shown in the presented plots.
In the following, the coverage ratio is plotted vs. the number of sensors for various viewing angles ( Figure 8) and different sensing ranges (Figure 9). The number of sensors varies from 100 to 550. The field size is 1000 m � 1000 m. As it is evident from Figure 8, the coverage ratio is increasing with the viewing angle. For example, the field could be fully covered with 450 sensors at α ¼ 60°. But, the same goal is achieved with 550 sensors when α is reduced to 45°. Also, the coverage ratio increases with the number of sensors as expected. In Figure 9, the coverage ratio is shown for various sensing ranges r from 50 to 200 m. Again, the number of sensors varies between 100 and 550. The viewing angle α is 60°. The coverage ratio increases with the sensing range as expected.
In Figure 10, the coverage ratio is plotted vs. sensing range for different viewing angles. In this experiment, we fixed the number of sensors and changed both the sensing range and viewing angle. The number of sensors is 200, and the field size is 1000 m � 1000 m as usual. The result confirms that both the viewing angle and the sensing range directly influence the coverage ratio.
Finally, we have compared PGAC with two methods presented in [6], namely IDS and IDA. In IDS, each sensor selects the farthest vertex of the corresponding polygon as its  [6] in a 500 m � 500 m field sensing direction. In IDA, each sensor examines the polygon's vertices from farthest to nearest to decrease the overlapping among itself and neighbouring sensors. Clearly, IDA always performs better than IDs. IDA and PGAC behave similarly in large cells. But, PGAC outperforms IDS in small and medium cells due to its enhanced policies. For example in Figure 11, PGAC can cover the whole area with 250 sensors. But, IDS needs 500 sensors for the same purpose. It means that the network lifetime under PGAC would be twice more than IDS.

| CONCLUSION
We proposed a Voronoi-based area coverage approach called PGAC. It uses the idea of classifying Voronoi diagrams using their geometric size for the first time. The resulted classification is used to adjust the working direction of the sensors and their activation order. The performed simulation confirmed that PGAC could achieve a higher coverage ratio with fewer activated sensors. PGAC also reduces the overlapping between adjacent sensors, which increases the covered area. In the future, we want to apply our techniques to Delaunay triangulation, which is considered as the Voronoi diagram's dual.