1 Introduction

Wireless Sensor Networks (WSNs) are frequently used, among other applications, in environmental monitoring, industry and disaster management. In these applications, a large number of sensors with limited battery capacity and communication capabilities are usually deployed randomly and in high density in order to observe/measure a certain phenomenon or to detect the occurrence of an event in the network field. Such random and dense deployment is unavoidable due to the hazardous environment, in which WSN application needs to be implemented. Consequently, maintaining connectivity and coverage ratio while maximizing the network lifetime constitutes the biggest challenge on the wide spread of WSNs usage. This is because due to the random and dense deployment of the sensors, there may exist many redundant sensors covering the same area and therefore causing unnecessary energy consumption. Therefore, the intuitive solution is to have a set of sensors activated while keeping redundant nodes in sleep mode periodically. The Optimal Coverage Problem (OCP) in WSNs is defined as finding the smallest number of sensors to monitor the network area while maintaining the coverage ratio requirement of the application. The main approach to solve such problem is to employ sleep scheduling protocols, in which the redundant sensors are scheduled to be asleep/deactivated alternately to minimize the energy consumption, hence, increase the overall network lifetime while meeting the connectivity and coverage requirement. On the other hand, clustering protocols provide efficient methods to achieve energy-efficient communication, namely, connectivity in WSNs. However, most existing clustering protocols overlook this redundant sensors fact. Despite the close relationship between the clustering problem and the sleep scheduling problem, they are studied separately and very few works consider a joint solution for both problems. To enhance the energy efficiency of WSNs, integrated protocols that solve both of these problems are highly recommended. As both of these problems are well-known Non-deterministic Polynomial (NP)-hard optimization problems, Evolutionary Algorithms (EA) can be used to solve such problems.

1.1 Contributions of This Paper

In this paper, we propose a GA-based Coverage Control Mechanism (GA-CCM) for clustered WSNs. We assume that the network operating time is divided into rounds and the network is clustered using [3]. In each round, GA-CCM is executed to find an optimal set of active nodes to provide full area coverage. Redundant sensors are put into sleep mode to save energy. The main contributions are listed below:

  • We formulate the OCP in clustered WSNs as an optimization problem. Up to our best knowledge, the proposed formulation is the first to consider the OCP problem in a clustered WSN. The proposed formulation ensures that the network area is fully covered by the least number of sensor nodes. To do so, the sub-objective functions of GA-CCM aim at minimizing the sensors’ redundancy while balancing the energy consumption of the active sensors to avoid selecting the same set of active nodes in each round. Most importantly, GA-CCM is designed and developed as an add-on mechanism which can be integrated to any centralized clustering protocol in order to achieve a better energy efficiency.

  • We introduce new ways to assess the level of coverage in WSNs. Most of the previously proposed protocols assume that the number of active nodes and/or the coverage ratio are useful metrics to assess the coverage performance of their proposed protocols [9]. The coverage ratio is defined as the ratio of the covered area to the whole network area [13]. The covered area is calculated as the product of the number of active nodes and the sensing area of each active node. However, these two metrics ignore the overlaps in the sensing areas, hence, do not reflect the real coverage degree. According to the current definition of coverage ratio, two sets of active nodes may result in the same coverage ratio but not necessarily the same redundancy degree, that is defined as the number of sensors monitoring a Point of Interest (PoI). In this paper, we redefine a new coverage ratio in order to assess the coverage more accurately. Furthermore, we also measure the redundancy degree using different metrics.

  • Contrary to other coverage protocols, we test and examine the performance of the proposed protocol against other protocols under a more realistic energy consumption model that is based on the characteristics of the Chipcon CC2420 radio transceiver data sheet.

Extensive simulations of GA-CCM on 25 different WSNs topologies are conducted, evaluated and compared against several well-known clustering protocols as well as a coverage-aware clustering protocol. To further evaluate the performance of GA-CCM as an add-on to the existing clustering protocols, we integrate it with the Particle Swarm Optimization based cluster head selection (PSO-CH) protocol, a comprehensive clustering protocol that considers many clustering objectives. It is also known to have the lowest overall energy consumption among well-known clustering protocols [4].

1.2 Paper Organization

The remainder of this paper is organized as follows: Sect. 2 presents the related work on clustering protocols and coverage-aware clustering protocols. Section 3 presents the system model. The general design and the problem formulation are provided in Sect. 4. A detailed analysis of the simulation results is provided in Sect. 5. Finally, Sect. 6 concludes this paper.

2 Related Work

Many probability-based clustering algorithms have been proposed in the literature. In such algorithms, the Cluster Heads (CHs) are elected based on a probability function in a random fashion. Examples of such algorithms include: Low Energy Adaptive Clustering Hierarchy (LEACH) [5]; Energy Efficient Heterogeneous Clustered (EEHC) scheme [7] and Multi-hop Overlapping Clustering Algorithm (MOCA) [14]. All these algorithms are distributed, self-organized and have low overhead. However, these algorithms have some problems in terms of the form and distribution of the clusters [1]. These algorithms do not consider the residual energy of the sensors. Moreover, the random mechanism of selecting the CHs does not guarantee the selection of the optimal set of CHs [4]. This, in turn, will reduce the reliability of these algorithms [1].

In order to select the optimal set of CHs, many research works propose centralized EA-based clustering algorithms. In these algorithms, the Base Station (BS) adopts an EA to find the optimal set of CHs based on a set of predefined objective functions. An Example of such algorithms is the GA-based Clustering (GA-C) algorithm [10] which define one objective function as the minimization of the total distance from cluster members to their respective CHs in addition to the distance from the CHs to the BS. However, GA-C does not consider the energy efficiency of the selected CHs. A PSO-based Clustering (PSO-C) protocol [8] defines two objective functions which consider both the residual energy of the sensor nodes and the physical distances between the CHs and their associated cluster members. However, the objective functions are not scaled, hence the final solution is biased towards one of them. Another PSO-based CH (PSO-CH) selection algorithm is proposed in [3]. PSO-CH considers the following properties: the network’s energy efficiency, data transmission reliability, and the protocol’s scalability. The objective function is defined as the weighted sum of three sub-objectives, each of which is related to the aforementioned properties. The sub-objectives are scaled to avoid any bias.

All the aforementioned clustering protocols focus only on selecting CHs to reduce or to balance the network’s energy consumption, without adopting any sleep scheduling mechanism for the redundant sensors. Only a few integrated protocols consider them in a joint way. An example of such protocols is the Coverage-Preserving Clustering Protocol (CPCP) [11]. CPCP is a distributed coverage-aware clustering protocol which defines different cost metrics for each sensor. The minimum-weight coverage cost metric is defined such that sensors deployed in densely populated network areas and that has higher remaining energy are better candidates to act as CHs and/or to stay active. The main operation of CPCP depends mainly on the values of activation timers. Although the authors of CPCP recommend the activation time to be proportional to the coverage cost, no specific recommendation is given on how to set this value. CPCP provides an integrated protocol to solve both the clustering and sleep scheduling problems in WSNs, it lacks a redundancy check mechanism and since it is a distributed protocol, there is no guarantee it will find the optimal status of the nodes. PSO-CH is a comprehensive clustering protocol that adopts a realistic energy consumption model and has well-defined objective functions. Experimental results of PSO-CH have proven that it has higher Packet Delivery Rate (PDR) at the CHs and at the same time has low energy consumption. However, PSO-CH lacks a mechanism for detecting the redundant sensors in the network and no sleep scheduling mechanism is adopted to put the redundant sensors into sleep mode.

In this paper, we address the aforementioned concerns by extending the PSO-CH protocol with a sleep scheduling mechanism.

3 The System Model

We consider a two-tiered WSNs with N sensors randomly and uniformly deployed. There are K cluster heads and 1 BS among N sensors. Each sensor has a unique ID, and the BS ID is 0. In the cluster formation process, each sensor node (including a CH) belongs to only one cluster. We assume that all nodes are stationary after deployment and that the sensors are aware of their location.

The Boolean sensing model [2] is assumed in this paper as it is the most commonly used sensing model. In this model, if a point p in the network field is located within the sensing range r of sensor node n, then it is assumed that p is covered/detected by n. The sensing area of n is defined as a disk centred at n with a radius of the sensing range r. In this model, the coverage function, C(np), of sensor node n and point p is given by the following equation, where d(np) is the euclidean distance between sensor node n and point p:

$$\begin{aligned} \small C(n,p) = {\left\{ \begin{array}{ll} 1,&{} \text {if }d(n,p) \le r\\ 0,&{} \text {otherwise} \end{array}\right. } \end{aligned}$$
(1)

For the energy consumption model, a realistic model which is based on the characteristics of the Chipcon CC2420 radio transceiver data sheet [12] is used. The total energy consumed by sensor node n, \( E_{n} \), is calculated as follows [3]:

$$\begin{aligned} \small E_{n}=\displaystyle \sum _{state j}P_{state j}\times t_{state j}+\sum _{tr} E_{transitions} \end{aligned}$$
(2)

Where statej refers to the energy states of a sensor: sleep, reception, or transmission. \( P_{state j} \) is the power consumed in each statej, \( t _{state j} \) is the time spent in the corresponding state, and tr is the number of transitions for S. The energy spent in transitions between states, \( E_{transitions} \), is also added to the node’s total energy consumption. The different values of \( P_{state j} \) and \( E_{transitions} \) can be found in [12].

4 General Design and Problem Formulation

First, the optimal set of CHs is determined using the PSO-CH protocol described in [3]. Then, the GA-CCM is adopted to solve the OCP in the clustered network. We choose the PSO-CH protocol as it has high PDR at the CHs and at the same time maintains reasonable energy consumption. We refer to the integrated protocol as EA-based Coverage-aware, Clustering Protocol (EA-CCP). The formulation of the OCP in clustered WSNs is given below.

In this paper, we assume that the network area A is divided into M virtual cells. At the start of EA-CCP, the BS constructs a coverage matrix CM that has \(N-1\) rows and M columns as follows, where \(CM(n,m) = 1\) when sensor \(n, 1 \le n \le N-1 \) covers cell \(m, 0 \le m \le M \) and \(CM(n,m) = 0\) otherwise:

figure a

According to the boolean sensing model 1, sensor n is said to cover cell m if the distance between sensor n and cell m is less than the sensing range of sensor n. Unlike other coverage protocols, we measure the distance from the farthest corner of cell m rather than its center to ensure that cell m is totally covered by sensor n.

In GA-CCM, the dimension of each potential solution is equal to the number of sensor nodes in the network minus the BS (i.e., \( N - 1\)). Let, \( C_{i} = [X_{i,1} , X_{i,2}, X_{i,3} , \ldots , X_{i,N-1} ]\) be the \(i_{th}\) chromosome of the population where each gene, \( X_{i,d}, 1 \le d \le N - 1 \) maps the status of the sensor node with the ID \(n_{d}\). Each gene \( X_{i,d} \) of chromosome \( C_{i} \) is initialized with either 0 to indicate that sensor \(n_{d}\) is in inactive mode, or 1 to indicate that \(n_{d}\) is in active mode. Due to this problem formulation, GA is used instead of PSO since the velocity and position updates in PSO result in real values.

Each chromosome \(C_{i}\) is evaluated as follows:

  • Create a new coverage matrix \(UpdatedCM_{i}\) as a copy of CM.

  • Update \(UpdatedCM_{i}\) as follows: if \(X_{i,d} = 0 \) then \(UpdatedCM_{i}(d,m) = 0 \) for \(m, 0 \le m \le M\).

  • Based on the updated \(UpdatedCM_{i}\), evaluate \(C_{i}\) using the below-mentioned objective functions.

In order to save more energy, fewer sensor nodes need to be active during each round. The main approach of GA-CCM to achieve that is to minimize the average number of redundant nodes per cell, avgRedNodes which is calculated for chromosome \(C_{i}\) as follows:

$$\begin{aligned} \small avgRedNodes_{C_{i}} = \frac{\displaystyle \sum _{m=1}^{M}\displaystyle \sum _{n=1}^{N-1} UpdatedCM_{i}(n,m)}{M} \end{aligned}$$
(3)

Furthermore, sensor nodes with higher level of energy are better candidates for activation during each round. Let the number \( K = \displaystyle \sum _{n=1}^{N-1} X_{i,d} \) represents the number of active nodes for chromosome \( C_{i} \). The remaining energy ratio for sensor node n with ID d, is \( E(n_d) = \frac{Remaining energy of n_d}{Initial energy of n_d}\). Then, the average remaining energy per an active node in chromosome \(C_{i}\) is calculated as follows:

$$\begin{aligned} \small avgRemEnergy_{C_{i}} = \frac{\displaystyle \sum _{n=1}^{N-1} E(n_d), if X_{i,d} = 1}{K} \end{aligned}$$
(4)

It should be noted that both \(avgRedNodes_{C_{i}}\) and \(avgRemainingEnergy_{C_{i}} \) are not scaled and may lead to values that are not in the same range. This will cause the final objective function to be biased towards one sub-objective. Moreover, it can be very difficult to precisely and accurately select the final objective function weights, even for domain experts [6]. In order to avoid this drawback, each sub-objective is scaled to result in the scaled values \(sAvgRedNodes_{C_{i}}\) and \(sAvgRemEnergy_{C_{i}}\), respectively. Therefore, the final objective function to be minimized, assuming each sub-objective is equally important, is expressed as follows:

$$\begin{aligned} \small Fitness_{C_{i}} = sAvgRedNodes_{C_{i}} + (1 - sAvgRemEnergy_{C_{i}}) \end{aligned}$$
(5)

In the case that a CH is set to inactive in \({C_{i}}\) or that a covered cell becomes uncovered, the final objective function is assigned a high penalty value to narrow the search to optimal valid solutions only.

5 Simulations and Results

The performance of EA-CCP is investigated against CPCP in terms of the number of active nodes, the minimum, maximum and average number of sensors monitoring a cell, and the coverage ratio. We choose the CPCP for comparison as it can provide full area coverage. Authors of CPCP claim that the minimum-weight coverage cost provides the best results where the sensor network has to provide complete (100%) coverage of the monitored area [11]. Moreover, the performance of EA-CCP is investigated against CPCP, LEACH, PSO-C, GA-C, and PSO-CH in terms of the average consumed energy per node and the Packet Delivery Rate (PDR). Although LEACH, PSO-C, GA-C, and PSO-CH do not use any coverage control, we choose them for comparison as they are well-known clustering protocols and experimental results have shown that they have high PDR and low energy consumption due to their adapted cluster-based sleep scheduling mechanism [3].

Simulations are carried on Castalia, which is based on the OMNeT++ platform. The simulations are performed on a group of homogeneous sensor networks consisted of 5 different network sizes ranging from 100 to 500 sensor nodes. Overall, the simulation results are averaged over five simulation runs for a total of 25 different playground topologies. Table 1 summarizes the configuration of the network’s simulation environment.

Table 1. Summary of the WSNs simulation settings for EA-CCP

The CHs selection problem is solved using PSO while the OCP is solved using GA. Table 2 summarizes the configuration of the different EAs parameters.

Table 2. The EAs parameters settings for EA-CCP

5.1 Coverage Performance

In this section, we compare between CPCP and EA-CCP in terms of their coverage performance. We choose these two particular protocols since they provide a coverage control mechanism and assume that they can provide full area coverage. The results presented in this section represent the average of 5 different runs for 5 different network sizes and for one round of operation.

The coverage ratio for both CPCP and EA-CCP is assessed and the results are shown in Table 3. We define the coverage ratio as the ratio of the number of covered cells to the total number of cells. Column 2 in Table 3 shows the coverage ratio before applying any Coverage Control (CC), i.e. before running any of the protocols. Table 3 shows that EA-CCP achieves higher coverage ratio than CPCP. In most of the cases, EA-CCP achieve full area coverage. In the case of 100 nodes, the network area is not fully covered even before applying any CC, as shown in the second column. That is why EA-CCP did not provide full coverage in that case. Although we are assuming uniform sensors deployment, the cell width determines the granularity of the network area. Choosing smaller cell width may have led to higher coverage ratio for both protocols and full coverage in EA-CCP.

Table 3. Coverage ratio

To assess the redundancy degree, Table 4 shows the minimum (MIN), maximum (MAX) and average (AVG) number of sensors, including the CHs, monitoring a cell for both EA-CCP and CPCP. In Table 4, columns 2, 3 and 4 show the same values before applying any Coverage Control (CC), i.e. before running any of the protocols. In CPCP, the MIN column shows that, in all the networks, there are cells that are not monitored by any sensor. Hence, CPCP fail to provide full area coverage. Moreover, the MAX column shows that there is a high degree of redundancy in monitoring a cell. This degree of redundancy increases as the network density increases. Therefore, the average number of sensors monitoring a cell increases too. On the other hand, EA-CCP shows more stable and consistent performance, regardless of the network density. EA-CCP always succeeded in providing full area coverage and all the cells has at least 1 sensor monitoring it. The reason for the lower value in case of 100 nodes is justified in the results of Table 3. Furthermore, EA-CCP has much lower redundancy degree. Regardless of the network density, EA-CCP has on average around 1 node monitoring each cell.

Table 4. Average number of sensors monitoring a cell

Table 5 shows the average number of active nodes per round (Ns). This number represents both the CHs and other Active Nodes (ANs) involved in the communication. The main operation of CPCP depends mainly on the values of the activation timers. Hence, it is more likely that more than one sensor with the same timer value will announce themselves as CHs at the same time which will lead to a higher number of CHs. These CHs mark their sensing areas as covered areas. In CPCP, the activation stage occurs after the CH selection which leads to activating less number of sensor nodes.

Table 5. Average number of active nodes per round

5.2 Clustering Performance

Figure 1 records the average consumed energy per node for the different protocols. The results presented here represent the average of 5 different runs, for each network size, with a confidence level of 0.99. It can be clearly shown that EA-CCP protocol outperforms the other protocols in terms of energy efficiency. This is due to minimizing the number of active nodes by minimizing the nodes redundancy as illustrated in Tables 5 and 4, respectivly. Although CPCP also minimizes the number of active nodes, a higher number of CHs are selected as shown in Table 5. Higher levels of energy consumptions are recorded in CPCP because the CHs stay active for the whole round. Moreover, the decision of whether a sensor will stay active or not in CPCP is not taken at the beginning of the round. This decision could be taken by the node anytime during the round, depending on its activation time. This will lead to unnecessary consumed energy by the redundant nodes who are waiting for their timer to expire to take the decision to be inactive. In EA-CCP, a centralized approach is adopted so each node knows its status at the start of each round. The clustering process in EA-CCP employs the PSO-CH protocol which leads to less number of CHs (5% of network size) and more scalable clusters [3]. The results obtained in Fig. 1 are also confirmed by Fig. 2 which shows the average consumed energy per node for a different number of rounds in case of a 300 sensors networks. Figure 2 shows that EA-CCP consistently outperforms the other protocols in terms of energy efficiency for different network operation time.

Fig. 1.
figure 1

Average consumed energy per node for different network sizes

Fig. 2.
figure 2

Average consumed energy per node for different number of rounds

Figure 3 shows the average PDR for the different protocols. The PDR is calculated as the ratio of the total packets received by all the cluster heads against all the packets sent by all the active nodes. Figure 3 clearly shows that the EA-CCP protocol significantly outperforms the other protocols in terms of PDR. Minimizing the number of redundant nodes enhances the network topology and minimize the network collisions, which in turn enhances the PDR. Although the CPCP also reduces the number of redundant nodes, there are no link quality measures taken when the clusters are constructed. This is also confirmed by Fig. 4 which shows the average PDR for a different number of rounds, when network size is 300. The results Fig. 4 represent the average of 5 different runs for one round of operation, for each network size. Figure 4 shows that the EA-CCP protocol consistently outperforms the other protocols in terms of the PDR for different network operation time.

Fig. 3.
figure 3

Average PDR at the CHs for different network sizes

Fig. 4.
figure 4

Average PDR at the CHs for different number of rounds

6 Conclusions

Both network clustering and coverage optimization can help to conserve energy. In this paper, we propose GA-CCM as an add-on mechanism that can be adopted by any centralized clustering protocol to solve the OCP. Simulation results show that integrating GA-CCM into PSO-CH results in better energy consumption and PDR comparing to other popular clustering protocols. Moreover, the proposed mechanism greatly enhances the coverage ratio, reduces redundancy degree and the number of active nodes.