A Polygon Model for Wireless Sensor Network Deployment with Directional Sensing Areas

The modeling of the sensing area of a sensor node is essential for the deployment algorithm of wireless sensor networks (WSNs). In this paper, a polygon model is proposed for the sensor node with directional sensing area. In addition, a WSN deployment algorithm is presented with topology control and scoring mechanisms to maintain network connectivity and improve sensing coverage rate. To evaluate the proposed polygon model and WSN deployment algorithm, a simulation is conducted. The simulation results show that the proposed polygon model outperforms the existed disk model and circular sector model in terms of the maximum sensing coverage rate.


Introduction
The wireless sensor network (WSN) is a key element of pervasive computing. It provides an efficient way to connect a large number of sensor nodes and collect data from each sensor node. With the advancement of manufacturing technology and wireless communication, many WSN applications have been proposed such as structural health monitoring [1][2][3], industrial equipment monitoring for petroleum facility [4] and semiconductor plant [5], volcano monitoring networks [6], underwater sensor network [7], habitat monitoring [8], etc.

OPEN ACCESS
For all the applications mentioned above, the deployment of sensor nodes is an important issue to deal with. A WSN deployment algorithm has to meet various requirements, such as keeping the network connectivity, maximizing the sensing coverage rate, minimizing the usage of sensor nodes, etc. The modeling of the communication and sensing areas of a sensor node is essential to address these requirements. To simplify the complexity, in general, the disk model is used in different aspects of the WSN research [9][10][11]. However, the round shape coverage area used by the disk model is suitable for the omnidirectional sensor, a sensor with circular sensing area. In this paper, we focus on the directional sensor, a sensor with noncircular sensing area. Figure 1 shows the sensing area of a directional sensor under the disk model. From Figure 1, we can see that the sensing area of a directional sensor is noncircular and at the right side of the sensor. If the disk model is used to represent the noncircular shape, the represented coverage area is larger than the actual one. Recently, the circular sector model has been used for representing the sensing area of a directional sensor [12,13]. Figure 2 shows the sensing area of a directional sensor under the circular sector model. From Figure 2, we can see that the actual sensing area cannot be represented by the circular sector model precisely; the sensing area represented by the circular sector model is still larger than the actual one. From the above examples, we can see that the disk model and the circular sector model are not sufficient to model sensor nodes with directional sensors. A new coverage model is needed for sensor nodes with directional sensing areas to improve the accuracy of the WSN deployment results. In this paper, we propose a polygon model to approximate the sensing area of a directional sensor. The polygon model is composed of a list of vertices expressed in polar coordinates. Since the polygon model can use unlimited number of vertices to model the boundaries of an area, it is more suitable to represent various shapes of sensing areas compared to the disk model and the circular sector model. In addition, a randomized WSN deployment algorithm with topology control mechanism for the polygon model is proposed. The proposed deployment algorithm consists of four steps: the initialization step, the base node selection step, the candidate positions generation step, and the scoring and deployment step. In the initialization step, a deployment area is initialized by reading a configuration file that contains the information of sink nodes and obstacles. In the base node selection step, a base node is selected for deploying new sensor nodes around it. In the candidate positions generation step, some candidate positions for a new sensor node are randomly generated under the topology control mechanism to maintain the network connectivity. In the scoring and deployment step, a new sensor node selected from the deployable sensor nodes is deployed to a candidate position via the scoring process to get the most sensing coverage gains. If no candidate positions are generated in the candidate positions generation step, the deployment algorithm is repeated from the base node selection step to the scoring and deployment step until the sensing coverage rate of the deployment area is 1 or no more sensor nodes can be deployed. Since the sensing coverage rate of the proposed deployment algorithm is determined by the topology control parameter, an iterative approach is used to find the best topology control value that leads to a maximal sensing coverage rate based on the proposed deployment algorithm.
To evaluate the proposed polygon model, some cases are studied based on sensor nodes with different sensing areas (circular or noncircular) and deployment scenarios by using a simulation approach. In the simulation, each sensor node consists of an omnidirectional antenna and a sensor (omnidirectional or directional). The disk model, the circular sector model, and the proposed polygon model are used to model the sensing area of each sensor node and different deployment algorithms are applied to deploy sensor nodes on a field with and without obstacles, respectively. For the sensor nodes represented by the disk model, the algorithm with optimal deployment patterns proposed in [14] is used. For the circular sector model and the polygon model, the proposed WSN deployment algorithm is used. The simulation results show that the proposed polygon model produces much accurate results than the disk model and the circular sector model in terms of the maximum sensing coverage rate in each simulation case. For the proposed WSN deployment algorithm, the maximum sensing coverage rate and the usage of sensor nodes are affected by the values of the topology control parameters and the rotation steps of the sensor node. For the same type of sensor node modeled by a simple polygon (few vertices) and a complex polygon (many vertices), if the number of sensor nodes is sufficient, the difference in maximum sensing coverage rate is very small for sensor nodes modeled by a simple polygon and a complex polygon. However, the usage of sensor nodes under the complex polygon is less than that under the simple polygon.
The rest of the paper is organized as follows. In Section 2, previous works related to circular and noncircular coverage models, sensor node deployment, and topology control are addressed. In Section 3, the polygon model, the calculation of communication/sensing coverage level, and some definitions used in this paper are illustrated. In Section 4, the proposed randomized WSN deployment algorithm and an iterative approach used to find the maximum sensing coverage rate are described in details. Section 5 describes the simulation results of the proposed polygon model under various scenarios.

Related Work
Each deployment algorithm needs a model to represent the communication and sensing areas of a sensor node. The disk model is the most commonly used model in many research works. It assumes that the communication/sensing area of a sensor node is a circular area. In [9], the authors proposed the unit disk graph (UDG) as a coverage model to find a path with maximum observability. In a UDG, there is an edge between two sensor nodes if and only if the Euclidean distance between these two sensor nodes is less than one unit. To provide a more realistic model than the UDG, the quasi unit disk graph (Quasi-UDG) was proposes in [10]. In the Quasi-UDG, two sensor nodes are connected by an edge if their distance is less than or equal to a threshold d, where d is a parameter between 0 and 1. In [15], the authors proposed a model to denote the irregularity of the communication area. The shape of the communication area is controlled by the degree of irregularity (DOI), defined as the maximum radio range variation per unit degree changed from 0° to 360°. When the DOI is set to zero, there is no radio range variation, resulting in a circular communication area the same as the disk model. Based on the DOI model, a radio irregularity model (RIM) based on the empirical data obtained from the MICA2 and MICAZ platforms was proposed in [16]. The RIM provides a general radio model to simulate the degree of radio irregularity. Compare with the DOI model, RIM takes the radio sending energy, the energy loss, the background noise, and the interference among different communication signals into account. Recently, circular sector model is proposed to model the sensing area of a directional sensor node [12,13]. The coverage area under the circular sector model is defined with the central angle and radius, it is identical to the disk model when the central angle is set to 360°. The modeled area under the circular sector model is limited to a sector-like shape while the proposed polygon model in this paper has no such restriction.
Many WSN deployment algorithms and topology control mechanisms based on the disk model have been proposed in the literature. In [17], the authors proposed a regular deployment pattern to achieve both coverage and connectivity. They also extended their work in [14] to provide some optimal regular deployment patterns for full-coverage under different requirements of k-connectivity (k ≤ 6). A similar regular deployment pattern was proposed in [18], but their approach can deal with the existence of obstacles. The authors in [19] presented a coverage configuration protocol (CCP) that can dynamically configure a network to achieve guaranteed degrees of coverage and connectivity. The CCP is based on a simple disk model in which the sensor nodes have identical sensing areas and the communication range between sensor nodes is fixed. In [20], the authors proposed two localized topology control algorithms, directed relative neighborhood graph (DRNG) and directed local spanning subgraph (DLSS) based on the disk model. In both algorithms, each node independently builds its neighbor set by adjusting the transmission power and defines the network topology by using only local information. Both algorithms preserve network connectivity and network bidirectionality. In [12], the authors proposed the maximum coverage with minimum sensors (MCMS) problem that tries to maximize the number of targets to be covered by directional sensor nodes and minimize the number of sensor nodes to be activated. A centralized greedy algorithm (CGA) and a distributed greedy algorithm (DGA) are provided. In [13], the authors proposed two different coverage problems of the directional sensor nodes. One is connected point-coverage deployment (CPD), which means covering a set of pointlocations with directional sensor nodes. The other is connected region-coverage deployment (CRD), which means covering the entire target area with directional sensor nodes. The CRD problem is what we want to deal with in this paper, the authors proposed two regular deployment patterns, disk-based deployment pattern (DDP) and strip-based deployment pattern (SDP). Both strategies use a similar deployment pattern proposed in [14].

The Polygon Model
In this paper, we assume that a wireless sensor network consists of one sink node and some sensor nodes of the same type. The sink node contains an omnidirectional antenna (without sensor). Each sensor node contains the same omnidirectional antenna as sink node and a directional sensor. The shapes of the communication areas of the sink node and sensor nodes are circular, and the shapes of the sensing areas of the sensor nodes are noncircular. The definitions of symbols used in this paper are given in Table 1. Table 1. The definitions of symbols used in this paper.
Sensor node n The communication area of S n under the polygon model The ith vertex of poly C (S n ) The sensing area of S n under the polygon model The ith vertex of poly S (S n ) A field The communication area covered by poly C (S n ) in a field The sensing area covered by poly S (S n ) in a field The location of S n in a field The rotation degree of S n counterclockwise from 0° in a field Point i of a field The communication range of S n in the direction of P i The sensing range of S n in the direction of P i The angle between ray S n P i and the 0° ray originating at S n The Euclidean distance between S n and P i The area formed by points P a , P b , and P c The communication coverage level of S n at P i The sensing coverage level of S n at P i A wireless sensor network The sensing coverage rate of W on Area A square area centered at P i The sensing coverage rate of W on Square(P i ) The network connectivity of W Base node The maximum threshold of the communication coverage level The maximum threshold of the sensing coverage level The score of a candidate position P i The rotation steps of S n The maximum communication range of a sensor node The maximum sensing range of a sensor node The maximum distance between sensor nodes In this section, we first describe the polygon model to approximate the shapes of communication and sensing areas of a sensor node. We, then, describe how to calculate the communication and sensing ranges of a sensor node at different directions under the polygon model. Based on the calculated communication and sensing ranges, we can estimate the communication and sensing coverage levels (CCL and SCL) at any point surrounding a sensor node that can be used by the topology control mechanism of the deployment algorithm. In the following subsections, we will describe them in details.

The Definitions of the Polygon Model
Definition 1 (polygon model): The noncircular shape of the communication/sensing area of a sensor node can be approximated by a list of vertices [(R 1 , is the ith vertex of the list and is represented in polar coordinates, R i is the radial coordinate and is the distance between the ith vertex and the center of a sensor node, θ i is the angular coordinate and is the counterclockwise angle required to reach the ith vertex from 0° (the positive x-axis in the Cartesian coordinate plane), x ≥ 3, and 1 ≤ i ≤ x.
We use poly C (S n ) = [(Rc 1 , θc 1 ), … , (Rc x , θc x )] and poly S (S n ) = [(Rs 1 , θs 1 ), … , (Rs y , θs y )] to denote the shapes of communication and sensing areas of a sensor node S n modeled by the polygon model, respectively. An example of using the polygon model to approximate the noncircular shape of sensing area of a sensor node S n is given in Figure 3(a). In Figure 3 (15, 330°)]. Since the shape of the communication/sensing area of a sensor node S n is noncircular, when S n is deployed to a field, the communication/sensing area covered by S n will depend on the rotation angle of S n . For example, Figure 3(a) and Figure 3(b) show the sensing areas covered by S n in a field with rotation angles set to 0° and 30° counterclockwise, respectively. It is obvious that the sensing areas covered by Figure 3(a) and Figure 3(b) are different. We have the following definitions.
Definition 2: Given a sensor node S n , Loc(S n ), poly C (S n ) and Rot(S n ), the communication area covered by S n in a field under the polygon model is defined as: Definition 3: Given a sensor node S n , Loc(S n ), poly S (S n ) and Rot(S n ), the sensing area covered by S n in a field under the polygon model is defined as: In Figure 3, if we put sensor node S n at location (10,20), then the sensing areas covered by Figure 3(a) and Figure 3

Calculation of the Communication/Sensing Range
Since the shape of the communication/sensing area of a sensor node is noncircular, the communication/sensing range may be different in different directions. Therefore, we need a formula to calculate the communication and sensing ranges of a sensor node at different directions such that we can determine whether an object is within the communication/sensing area of a sensor node. In Section 3.1, the communication/sensing area is approximated by the polygon model with a list of vertices represented in polar coordinates. Since the radial coordinate of a vertex represents the communication/sensing range of a sensor node in the direction of that vertex, we can use it to compute the communication/sensing range of a sensor node at any direction. Given a point P i , the sensing area of a sensor node S n , Area S (S n ), and P a = Loc(S n ), if ray P a P i passes between two adjacent vertices of Area S (S n ), vex p = (Rs p , θs p ) and vex q = (Rs q , θs q ), the sensing range of S n in the direction of P i can be calculated by the following equation: where θs p < θ(S n , P i ) < θs q , Rs(S n , P i ) = d(P a , P j ), and P j is the intersection point of ray P a P i and line segment vex p vex q . The calculation of Rs(S n , P i ) is based on the area of ∆vex p P a vex q that is the sum of the areas of ∆vex p P a P j and ∆P j P a vex q . The calculation of the communication range of S n in the direction of P i , Rc(S n , P i ), is similar to Equation (3) by replacing the Rs and θs parts with Rc and θc, respectively. Given a sensor node S 1 located at P 1 with Area S (S 1 ) shown in Figure 3(b) and a point P 2 with θ(S 1 , P 2 ) = 90°, an example of the calculation of Rs(S n , P i ) is shown in Figure 4. In Figure 4, since ray P 1 P 2 passes between vex p = (50, 80°) and vex q = (60, 100°) of Area S (S 1 ) and P 3 is the intersection point of ray P 1 P 2 and line segment vex p vex q , Rs(S 1 ,

The Communication/Sensing Coverage Level
Based on the calculated communication and sensing ranges, we can estimate the communication coverage level (CCL) and sensing coverage level (SCL) at any point surrounding a sensor node. CCL and SCL are used by the topology control mechanism in the proposed WSN deployment algorithm and the calculation of the sensing coverage rate. The calculation of the communication/sensing coverage level is based on the free space propagation model proposed in [21], a simple transmission formula for a radio circuit is derived: where Power t is the power fed into the transmitting antenna at its input terminals, Power r is the power available at the output terminals of the receiving antenna, Area r (or Area t ) is the effective area of the receiving (or transmitting) antenna, d is the distance between two antennas, and λ is the wavelength. Assume that Power t , Area r , Area t , and λ are constants in Equation (4). The received radio power (Power r ) is proportional to 1/d 2 . The CCL and SCL of a sensor node S n at a point P i are defined as: where Rc(S n , P i ) and Rs(S n , P i ) are the communication and sensing ranges of S n in the direction of P i , and d(S n , P i ) is the Euclidean distance between S n and P i . Figure 5 shows the relationship between SCL(S n , P i ) and d(S n , P i ). In Figure 5, if d(S n , P i ) ≤ Rs(S n , P i ), it indicates that P i is within the sensing area of S n . Otherwise, P i is not covered by the sensing area of S n . In the case of a deployment area with obstacles, the calculation of the CCL and SCL follows the "line-of-sight" property, that is, if a straight line between S n and P i is blocked by an obstacle, then CCL(S n , P i ) = SCL(S n , P i ) = 0.

Network Connectivity and Sensing Coverage Rate
A communication-connected WSN is one of the objectives of deployment. We have the following definitions for network connectivity.
Definition 5 (network connectivity): Given a WSN W in a field, the network connectivity of W, NC(W), is defined as: NC(W) = Num(S n in W has a path to the sink node and vice versa)/Num(S n in W) (7) where Num(S n in W has a path to the sink node and vice versa) is the number of senor nodes in W that has a path to the sink node and vice versa; and Num(S n in W) is the number of sensor nodes in W.
The sensing coverage rate is a metric to evaluate the performance of a WSN deployment algorithm. The higher sensing coverage rate, in general, the superior of a WSN deployment algorithm. To calculate the sensing coverage rate, we have the following definitions for sensing coverage rate.
Definition 7: A grid point P i in a field is sensed by a sensor node S n if SCL(S n , P i ) ≥ 1. Definition 8 (sensing coverage rate of a field): Given a field, Area, the sensing coverage rate of a WSN W on Area is defined as: where Num(P x in Area sensed by sensor nodes in W) is the number of grid points in Area sensed by sensor nodes in W and Num(P y in Area) is the number of grid points in Area. Definition 9 (sensing coverage rate of a square area centered at grid point P i ): Given a grid point P i , the sensing coverage rate of a WSN W on the square area centered at grid point P i , Square(P i ) is defined as: where Num(P x in Square(P i ) sensed by sensor nodes in W) is the number of grid points in Square(P i ) sensed by sensor nodes in W and Num(P y in Square(P i )) is the number of grid points in Square(P i ).

A Randomized WSN Deployment Algorithm for the Polygon Model
The proposed deployment algorithm for the polygon model consists of four steps: 1. Initialization: In this step, the deployment parameters, a deployment area with or without obstacles, and a sink node (used for collecting sensing data) are initialized by reading a configuration file; 2. Base node selection: In this step, a base node is selected for deploying new sensor nodes around it; 3. Candidate positions generation: In this step, some candidate positions for new sensor nodes are generated under the topology control mechanism to maintain the network connectivity; 4. Scoring and deployment: In this step, a new sensor node is deployed to a candidate position via the scoring process. In the above procedure, Step 3 and Step 4 are repeated until no candidate positions can be generated in Step 3. Then the deployment algorithm is restarted from Step 2 until the sensing coverage rate of the deployment area is 1 or no more sensor nodes can be deployed. The detailed deployment steps are described in the following subsections.

Step 1: Initialization
Given a configuration file, some deployment parameters are set, including the number of deployable sensor nodes, the limit of candidate positions, and the number of rotation steps. The deployment area is initialized based on the following information: 1. The length and the width of the deployment area; 2. Information of the sink node, such as the location, the rotation angle, and its communication area approximated by the polygon model; 3. Information of the obstacles (optional), where each obstacle is a polygon represented by a list of the vertices. Figure 6 shows an example of the initialized deployment area. The deployment area contains a sink node (S 0 ) and the red area represents the communication area of S 0 . Some obstacles with different shapes are distributed in the deployment area as well.

Step 2: Base Node Selection
In this step, a base node S base is selected for deploying new sensor nodes around it. In order to maintain the network connectivity of a WSN, the selection of base node is starting from the sink node and traversing all deployed sensor nodes along the communication links. When no more sensor nodes can be deployed around the current base node, a new base node is selected from deployed sensor nodes based on their index in ascending order. An example of base node selection is given in Figure 7. In Figure 7, four sensor nodes, S 1 , S 2 , S 3 , and S 4 , are deployed when the sink node is selected as base node. S 1 is the current base node. When S 5 is deployed, no more sensor nodes can be deployed around S 1 . S 2 is then selected as the new base node.

Step 3: Candidate Positions Generation and Topology Control Mechanism
Once a base node S base is selected, a predefined number of candidate positions for a new sensor node are randomly generated within the communication area of S base based on the topology control mechanism. The limit of candidate positions is defined in configuration file. If a candidate position cannot pass the examination of the topology control mechanism, another candidate position will be generated. The purpose of the topology control mechanism is to keep the candidate position not too close to the deployed sensor nodes. As a result, the overlap of sensing areas among the deployed sensor nodes can be reduced.
Given a candidate position P i within Area C (S base ) and a set of sensor nodes deployed around P i , S depolyed , the topology control mechanism is performed as follows. For each sensor node S n in S depolyed , the communication coverage level of S n at P i , CCL(S n , P i ), is calculated based on Equation (5). If one of CCL(S n , P i ) exceeds the predefined topology control parameter Max_CCL, the maximum threshold of the communication coverage level, P i will be abandoned since P i is too close to the location of S n . Next, for P i with CCL(S n , P i ) ≤ Max_CCL for all S n in S depolyed , the sensing coverage level of S n at P i , SCL(S n , P i ), is calculated based on Equation (6). If one of SCL(S n , P i ) exceeds another predefined topology control parameter Max_SCL, the maximum threshold of the sensing coverage level, P i will be abandoned. Figure 8 shows an example of the process of the topology control mechanism. In Figure 8, two deployed sensor nodes S 1 and S 2 are given. S 1 is selected as S base and three candidate positions P 1 , P 2 , and P 3 are randomly generated within the communication area of S base (represented as a circular area centered at S 1 ). Assume that Max_CCL = 4 and Max_SCL = 3. Since CCL(S 1 , P 2 ) = CCL(S 2 , P 3 ) = 5 > Max_CCL, P 2 and P 3 are abandoned. P 1 is kept since CCL(S 1 , P 1 ) and CCL(S 2 , P 1 ) are less than Max_CCL, and SCL(S 2 , P 1 ) = 2 < Max_SCL.
The thresholds of the topology control parameters, Max_CCL and Max_SCL, will affect the results of deployment. The value of Max_CCL is never less than 1 in order to maintain the network connectivity between sensor nodes. If Max_CCL is set too large, the minimal distance between deployed sensor nodes will be too short. More sensor nodes will be needed to fully cover the same deployment area compared to the optimal case. The value of Max_SCL varies with Max_CCL if the sensor node has an omnidirectional sensor. Given the value of Max_CCL and the maximum communication and sensing ranges of a sensor node, Rc and Rs, the value of Max_SCL is defined as: If the sensor node has a directional sensor, more sensor nodes are needed to cover the same deployment area compared to the sensor node has an omnidirectional sensor with the same maximum sensing range. Therefore, the value of Max_SCL is not changed with Max_CCL since a larger Max_CCL is needed to make the sensor nodes get closer. We have two cases for the value of Max_SCL.
Case 1 (Rc ≥ Rs): In this case, the value of Max_SCL is set to 1 to reduce the overlap of sensing areas by preventing a new sensor node being deployed within the sensing areas of the deployed sensor nodes.
Case 2 (Rc < Rs): In this case, in order to maintain the network connectivity, the value of Max_SCL is set to (Rs/Rc) 2 to allow the overlap of sensing areas between a new sensor node and deployed sensor nodes. For example, as shown in Figure 8, if we set Max_CCL = 6 and Max_SCL = 1, P 1 is abandoned since SCL(S 2 , P 1 ) = 2 > Max_SCL. P 2 and P 3 can be selected as new positions of sensor nodes.

Step 4: Scoring and Deployment
In this step, a scoring process is applied to each candidate position of {P 1 , … , P k } generated in Step 3. Given a sensor node S new , a candidate position P i in {P 1 , … , P k }, and the WSN W constructed so far, the score of P i , Score(P i ), is defined as: where Square(P i ) is a square area centered at P i with edge length = 2 × Rs. CR(Square(P i ), W ∪ S new ) and CR(Square(P i ), W) are the sensing coverage rates of W on Square(P i ) before and after S new is deployed at P i , respectively. Since the sensing area of a sensor node is noncircular, to deploy S new at P i may result in different values of Score(P i ) if S new at P i are rotated by different angles counterclockwise from 0°. Therefore, we have two cases for the calculation of Score(P i ). Case 1 (without rotation): In this case, Score(P i ) is only computed once using Equation (11). Case 2 (with rotation): In this case, the number of rotation steps, Rot step , is specified. Given Rot step defined in the configuration file, when S new is deployed at P i , there are Rot step values of Score(P i ) with respect to the rotation degree 0°, (360°/Rot step ), (360°/Rot step ) × 2, …, and (360°/Rot step ) × (Rot step -1), respectively. If S new has a noncircular communication area, the rotation of S new also affects the communication area of S new at P i . The network connectivity of WSN needs to be maintained when S new is rotated an angle counterclockwise from 0°. Given a specific rotation angle θ, if the network connectivity of WSN can be maintained after S new is deployed at P i by rotating S new with an angle θ counterclockwise from 0°, Score(P i ) can be obtained by using Equation (11). Otherwise, Score(P i ) = 0. After different Score(P i ) for different rotation angles are calculated, the highest score of Score(P i ) is kept and the corresponding Rot(S new ) is saved. Figure 9 gives an example of the scoring process for Case 1. In Figure 9, a base node S 1 and a set of candidate positions {P 2 , P 3 } are given. Before deploying a new sensor node S 3 at P 2 , CR(Square(P 2 ), W) = 0.09. After S 3 is deployed at P 2 as shown in Figure 9(a), CR(Square(P 2 ), W ∪ S 3 ) = 0.22. We obtain Score(P 2 ) = 0.22 -0.09 = 0.13. Similarly, before deploying S 3 at P 3 , CR(Square(P 3 ), W) = 0.249. After S 3 is deployed at P 3 as shown in Figure 9(b), CR(Square(P 3 ), W ∪ S 3 ) = 0.329. We have Score(P 3 ) = 0.329-0.249 = 0.08. Since Score(P 2 ) > Score(P 3 ), P 2 is the best candidate position for deploying S 3 in this example.

(a) (b)
After the scoring process is applied to each candidate positions, the best candidate position P i is the one with the largest value of Score(P i ). It means that the deployment of S new at P i can have the most gains of the sensing coverage rate. Then, S new is deployed at P i and the deployment flow goes back to Step 3. If no candidate positions can be generated in Step 3 for scoring, the deployment algorithm is restarted from Step 2 (base node selection) until the sensing coverage rate of the deployment area is 1 or no more sensor nodes can be deployed. The details of the proposed deployment algorithm for the polygon model, Deploy-Random, is given below:

Find the Maximum Sensing Coverage Rate
In algorithm Deploy-Random, the sensing coverage rate is affected by the topology control parameter, Max_CCL. To find the maximum sensing coverage rate, an algorithm Find-Max-Sen-Covrate is used by adjusting the value of Max_CCL iteratively. The details of algorithm Find-Max-Sen-Covrate is given below: In algorithm Find-Max-Sen-Covrate, initially, the lower bound and the upper bound of Max_CCL are set to LB_CCL = (Rc/d max ) 2 and UB_CCL (Rc/d min ) 2 based on Equation (5)  UB_sen_covrate is the maximum sensing coverage rate. If the maximum sensing coverage rate is not found at the lower and upper bounds of Max_CCL, it must in between LB_CCL and UB_CCL. Therefore, a binary search approach is applied to the range of (LB_CCL, UB_CCL) in order to find the value of Max_CCL that lead to the maximum sensing coverage rate. Since LB_CCL and UB_CCL are real numbers, the number of binary search iterations is infinite. Therefore, a minimum distance of the lower and upper bounds, min_CCL_diff, is specified. If UB_CCL − LB_CCL < min_CCL_diff, Max(UB_sen_covrate, LB_sen_covrate) is the maximum sensing coverage rate. Otherwise, algorithm Deploy-Random at line 9 is applied with a new Max_CCL = (LB_CCL+UB_CCL)/2 to get the sensing coverage rate, MB_sen_covrate, and the number of deployed sensor nodes, MB_num_deployed. If MB_sen_covrate < 1 and MB_num_deployed < num_deployable, it indicates that there exists a value in between (LB_CCL+UB_CCL)/2 and UB_CCL whose sensing coverage rate is greater than MB_sen_covrate. Then lines 7-12 are repeated for the range ((LB_CCL+UB_CCL)/2, UB_CCL). Otherwise, there exists a value in between LB_CCL and (LB_CCL+UB_CCL)/2 whose sensing coverage rate is greater than MB_sen_covrate. Lines 7-12 are repeated for the range (LB_CCL, (LB_CCL+UB_CCL)/2). The time complexity of the algorithm Find-Max-Sen-Covrate is O(log 2 (Rc 2 ) * T Deploy ), where T Deploy is the time complexity of algorithm Deploy-Random.

Deployment Simulation
To evaluate the proposed polygon model and Deploy-Random algorithm, the deployment simulation is divided into three parts. In the first part, we compare the deployment results when a sensor node is modeled with the disk model, the circular sector model, and the proposed polygon model, respectively. In the second part, we compare the difference of the deployment results when a sensor node is modeled by the polygon model and the Deploy-Random algorithm is applied with different rotation steps. In the third part, we compare the difference of the deployment results when a sensor node is modeled by the polygon model with different number of vertices.

Simulation 1: Compare with the Disk Model and the Circular Sector Model
In Simulation 1, there are two types of sensor nodes used. They are defined as follows: Type 1: omnidirectional antenna + omnidirectional sensor, and Type 2: omnidirectional antenna + directional sensor. Table 2 and 3 shows the shapes of the communication/sensing areas of omnidirectional antenna/sensor and directional sensor, and the detailed modeling information for each type of sensor node under the disk model, circular sector model, and the polygon model. From Table 2 and 3, we can see that the communication and sensing areas of the omnidirectional antenna and the omnidirectional sensor are round shapes. The sensing area of the directional sensor is noncircular shape. Therefore, sensor nodes of Type 1 are generally modeled with disk model. Sensor nodes of Types 2 have noncircular sensing areas are suitable modeled with the circular sector model or the proposed polygon model. To get a fair comparison, a disk model based deployment algorithm is used by the sensor nodes under the disk model. The Deploy-Random algorithm is used by the sensor nodes under the circular sector model and the polygon model. The number of sensor nodes for each type is set to 1000 and the limit of candidate positions is set to 3. For the deployment area, one with obstacles and the other without obstacles, as shown in Figure 10, are used. The size of both deployment areas is 500 × 500 units. A sink node (S 0 ) has an omnidirectional antenna with communication range 60 is deployed before simulation. In the deployment area without obstacles, S 0 is deployed at (250, 250). In the deployment area with 9 obstacles, S 0 is located at (150, 150).    To get the deployment results, each type of sensor nodes are deployed to the deployment areas using the disk model based algorithm proposed in [14] with 6-connectivity, and the proposed Deploy-Random algorithm. For the disk model based deployment algorithm, the deployment pattern of sensor nodes is decided by the ratio of the maximum communication range and the maximum sensing range (Rc/Rs). Therefore, three different Rc/Rs ratios, 2 (60/30), 1.2 (60/50), and 1/1.2 (60/72), are simulated for each type of sensor node base on [14]. For the Deploy-Random algorithm, the same Rc/Rs ratios as those of the disk model based deployment algorithm are used and with the rotation steps = 8. To find the maximum sensing coverage rate, algorithm Find-Max-Sen-Covrate described in Section 4.5 is used. The value of d max is set to Rc and the value of d min is set to Rc/10. The value of Max_SCL is determined by the type of sensor nodes being deployed. For Type 1 sensor nodes, Max_SCL is updated with Max_CCL based on Equation (10) described in Section 4.3. For Type 2 sensor nodes with directional sensors, Max_SCL is set to 1 for Rc/Rs = 2 and 1.2. When Rc/Rs = 1/1.2, the value of Max_SCL is set to (Rs/Rc) 2 = 1.44 to maintain the network connectivity.
After the deployment simulation is completed, we compare the simulation results of three coverage models in terms of the maximum sensing coverage rate and the usage of sensor nodes. The maximum sensing coverage rate is expressed as the actual sensing coverage rate by replacing the sensing areas of the deployed sensor nodes with the original sensing areas without modeling. The usage of sensor nodes is evaluated by the number of sensor nodes deployed at the maximum sensing coverage rate. In the following, we describe the simulation results in details based on the Rc/Rs ratios.  Table 4 shows the maximum sensing coverage rates and the usage of sensor nodes for each type under three coverage models. From Table 4, we have the following remarks.
Remark 1: Regarding to the maximum sensing coverage rates, for Type 1 sensor nodes with round shapes of sensing areas, the proposed Deploy-Random algorithm can produce full sensing coverage rates for sensor nodes under the polygon or circular sector model while the disk model based deployment algorithm cannot. The reason is that the disk model based deployment algorithm uses a regular deployment pattern to achieve the maximum sensing coverage rate with the least number of sensor nodes. The regular deployment pattern cannot deal with the existence of boundaries and obstacles. Figure 11 shows the sensing area of Type 1 sensor nodes deployed with regular pattern. From Figure 11, we can see that some sensor nodes cannot be deployed over the obstacles or the positions around the boundaries. However, the maximum sensing coverage rate produced by the disk model based deployment algorithm is close to that of the proposed Deploy-Random algorithm.
For Type 2 sensor nodes, the maximum sensing coverage rate produced by the disk model based deployment algorithm is much lower than that of the proposed Deploy-Random algorithm. The reason is that the sensing area of a Type 2 sensor node is not a round shape (see Table 3); the sensing area represented by the disk model is much larger than the original one. In Figure 12, we show the sensing areas of WSNs produced by different deployment algorithms when Type 2 sensor nodes are deployed. From Figure 12, we can see that the disk model is not so accurate for sensor nodes with noncircular shapes of sensing areas. The difference of the maximum sensing coverage rates between the polygon model and the circular sector model is 2.14%/1.48% when the deployment area without/with obstacles.
The reason is that the sensing area of a Type 2 sensor node under the circular sector model is larger than that under the proposed polygon model shown in Table 3. The sensing area under the proposed polygon model is more approximate to the actual one.
Remark 2: Regarding to the usage of sensor nodes, the disk model based deployment algorithm is less than that of the proposed Deploy-Random algorithm. For Type 1 sensor nodes with round shapes of sensing areas, the disk model based deployment algorithm can produce a very good deployment results in terms of the maximum sensing coverage rate and the usage of sensor nodes compared to the proposed Deploy-Random algorithm. The usage of sensor nodes between the circular sector model and the polygon model is very similar for Type 1 and Type 2 sensor nodes in this case.  Figure 11. The sensing areas of Type 1 sensor nodes deployed with regular pattern in Case 1.  Table 5 shows the maximum sensing coverage rates and the usage of sensor nodes for each type under three coverage models. From Table 5, regarding to the maximum sensing coverage rates and the usage of sensor nodes, we have similar observations as those described in Remarks 1 and 2, respectively. The usage of sensor nodes under the circular sector model and the polygon model in this case is less than that in Case 1. The reason is the sensing area of the sensor node used in Case 2 is larger than that used in Case 1.  Table 6 shows the maximum sensing coverage rates and the usage of sensor nodes for each type under these two deployment algorithms. From Table 6, regarding to the maximum sensing coverage rates and the usage of sensor nodes under these two algorithms, we have similar observations as those described in Remarks 1 and 2, respectively.

Simulation 2: the Polygon Model with Different Rotation Steps
In Simulation 2, we deploy Type 2 sensor nodes under the polygon model used in Simulation 1 by using the Deploy-Random algorithm with different rotation steps. Six rotation steps, 1,4,8,16,32, and 64, are simulated with three different Rc/Rs ratios, 2 (60/30), 1.2 (60/50), and 1/1.2 (60/72). The deployment configuration used in Simulation 2 is the same as that used in Simulation 1. Table 7 shows the maximum sensing coverage rates and the usage of sensor nodes by using algorithm Find-Max-Sen-Covrate. From Table 7, we have the following remark.
Remark 3: Regarding to the number of rotation steps used in the proposed Deploy-Random algorithm, in general, the maximum sensing coverage rate can be improved by increasing the number of rotation steps when the sensing areas of sensor nodes are noncircular. For example, for Case 1 without obstacles, the maximum coverage rate is always increased with the number of rotation steps from 1 to 64. For Case 2 and 3, the usage of the sensor nodes is reduced when the number of rotation steps is increased from 1 to 8 with/without obstacles. When the number of the rotation steps is more than 16, the differences of the maximum sensing coverage rate and the usage of the sensor nodes are not so significant.

Simulation 3: the Polygon Model with Different Number of Vertices
In Simulation 3, we used four sets of vertices to model the noncircular sensing area of a Type 2 sensor node used in Simulation 1. The number of vertices for each set is 16, 12, 9, and 4, respectively. The modeled areas are shown in Table 8. For Set 3, the vertices used to model the sensing area are the same as that of Type 2 used in Simulation 1. Three different Rc/Rs ratios, 2 (60/30), 1.2 (60/50), and 1/1.2 (60/72), are simulated. Table 8 shows the shape of the sensing area of the directional sensor for each set of sensor node under the polygon model. From Table 8, we can see different sensing areas of the directional sensor when different numbers of vertices are used under the polygon model. The deployment configuration used in Simulation 3 is the same as that used in Simulation 1. The number of rotation steps is fixed to 8.   Table 9 shows the maximum sensing coverage rates and the usage of sensor nodes of each set with 1,000 sensor nodes by using algorithm Find-Max-Sen-Covrate. From Table 9, we have the following remark.

Remark 4:
If the number of sensor nodes is sufficient, that is, the maximum sensing coverage rate is over 99% and the usage of sensor nodes is less than 1,000, the difference of the maximum sensing coverage rates is very small among these four sets. For example, for Case 3, the maximum coverage rates for Set 1 ~ 4 are all over 99.99%. However, the number of sensor nodes used for Set 4 (578/403 without/with obstacles) is larger than that used for Set 1 (392/272 without/with obstacles), Set 2 (386/290 without/with obstacles), and Set 3 (394/293 without/with obstacles). The reason is that the sensing area of the sensor node modeled by vertices in Set 4 is smaller than that of the sensor node modeled by vertices in Set 1 ~ 3. When deploying sensor nodes in Set 4, two sensor nodes will be closer to each other compared to deploy sensor nodes in Set 1 ~ 3 and more sensor nodes should be used if a deployment area is fully covered.  Table 10 shows the sensing coverage rates and the usage of sensor nodes of each set with 1000 sensor nodes by using algorithm Find-Max-Sen-Covrate under fixed values of Max_CCL. From Table 10, we have the following remarks.
Remark 5: If the value of Max_CCL is fixed and the number of sensor nodes is sufficient, we have similar observations as those of Remark 4. For example, for Case 2 and Case 3 with Max_CCL = 50.5, the difference of the sensing coverage rates is small for Set 1 ~ 4. But the number of sensor nodes used for Set 4 is larger than that used for Set 1 ~ 3.
Remark 6: If the value of Max_CCL is fixed and the number of sensor nodes is insufficient, that is, all deployable sensor nodes are used and the sensing coverage rate is less than 99%, the more vertices used to model a sensor node, the more sensing coverage rate can be achieved. For example, for Case 1 with Max_CCL = 50.5, the sensing coverage rates for Set 1 ~ 4, without obstacles are 94.5%, 93.47%, 93.11%, and 82.97%, respectively. The reason is the same as that stated in Remark 4.

Remark 7:
The value of Max_CCL affects the sensing coverage rate and the usage of sensor nodes for the same set of sensor node. If the number of sensor nodes is sufficient, a larger Max_CCL results in a larger sensor node usage. For example, for Case 2 with Max_CCL = 50.5 without/with obstacles, the number of sensor nodes used for Set 3 is 507/389 while that used with Max_CCL = 100 is 563/451. If the number of sensor node is insufficient, that is, all deployable sensor nodes are used, a larger Max_CCL results in a lower sensing coverage rate. For example, for Case 1 with Max_CCL = 50.5 without obstacles, the sensing coverage rate for Set 3 is 93.11% while that with Max_CCL = 100 is 83.53%. mechanism and scoring process to determine the appropriate deployment positions in order to maintain the network connectivity and improve the gains of the sensing coverage rate. According to the simulation results, if the sensor node has noncircular sensing area, the maximum sensing coverage rate under the polygon model is higher than that of the disk model and the circular sector model. For the proposed WSN deployment algorithm, the maximum sensing coverage rate and the usage of sensor nodes are affected by the topology control parameters and the rotation steps of the sensor node. For the same type of sensor node modeled by a simple polygon (few vertices) and a complex polygon (many vertices), if the number of sensor nodes is sufficient, the difference of the maximum sensing coverage rates is very small. However, the usage of sensor nodes under the complex polygon is less than that under the simple polygon.