Solving the Energy Efficient Coverage Problem in Wireless Sensor Networks : A Distributed Genetic Algorithm Approach with Hierarchical Fitness Evaluation

This paper proposed a distributed genetic algorithm (DGA) to solve the energy efficient coverage (EEC) problem in the wireless sensor networks (WSN). Due to the fact that the EEC problem is Non-deterministic Polynomial-Complete (NPC) and time-consuming, it is wise to use a nature-inspired meta-heuristic DGA approach to tackle this problem. The novelties and advantages in designing our approach and in modeling the EEC problems are as the following two aspects. Firstly, in the algorithm design, we realized DGA in the multi-processor distributed environment, where a set of processors run distributed to evaluate the fitness values in parallel to reduce the computational cost. Secondly, when we evaluate a chromosome, different from the traditional model of EEC problem in WSN that only calculates the number of disjoint sets, we proposed a hierarchical fitness evaluation and constructed a two-level fitness function to count the number of disjoint sets and the coverage performance of all the disjoint sets. Therefore, not only do we have the innovations in algorithm, but also have the contributions on the model of EEC problem in WSN. The experimental results show that our proposed DGA performs better than other state-of-the-art approaches in maximizing the number of disjoin sets.


Introduction
Wireless sensor networks (WSN) have become a hot research topic and have been widely used in numerous real-world applications, such as traffic monitoring [1], mobile computing [2], environmental observation [3], and many others [4][5][6].In these sophisticated environments, in order to make full coverage and get more accurate results, many nodes should be randomly deployed in the area, causing a waste of resources.Since the sensor nodes are equipped with limited battery resources and the replacement of the battery is not feasible in many applications, low power consumption has become a critical factor to be considered when designing the WSN.Therefore, research into energy saving to prolong the network lifetime has become one of the most significant issues in WSN.Moreover, the energy saving in WSN is a significant research topic in smart and sustainable energy systems and applications [7][8][9].
Due to the significance of the energy efficient problem in the WSN [10][11][12], many efforts have been made to tackle this problem.These proposed techniques are generally divided into two categories, where one is to design efficient protocols to reduce the energy consumption and the other one is to schedule the nodes to work efficiently.For the first category, protocols such as for the medium access control [13], for transmission [14], and for communication [15] have been proposed in the literature for reducing energy consumption.While the second categorized technique concentrates on scheduling the nodes, resulting in energy preservation and longer network lifetime.These two categories both have contributions to the energy efficiency for WSN from different approaches.The focus of this paper belongs to the second category, which is the energy efficient coverage (EEC) problem in the WSN [16,17].
In EEC, the sensor nodes are divided into different disjoint sets with the constraint that each set can guarantee the full coverage of the whole monitored area.In that way, in any time, only the necessary sensor nodes in one set are activated while the other sensor nodes that monitor the same regions can be turned off.These different disjoint sets work one by one and therefore the network lifetime can be prolonged.Moreover, with more disjoint sets that can be formed, longer network lifetime can be obtained because the nodes are scheduled to work energy efficiently [18][19][20].Therefore, it is very interesting and promising for the approaches in [21][22][23] to divide the deployed sensor nodes into maximal disjoint sets and schedule the sets to work in turn.In this paper, we also focus on maximizing the number of disjoint sets.
Even though the above methods have been applied to the EEC problem [21][22][23], they can easily get trapped into local optima and cannot achieve or guarantee the full coverage because the EEC problem is NPC [21].Therefore, in this paper, we proposed distributed genetic algorithm (DGA) to solve the EEC problems in WSN to further improve the performance due to the superior adaptation and strong global search ability of GA.Moreover, two major novel designs and advantages of DGA are described as follows: (1) DGA is realized in the multi-processor distributed environment by the master-slave distributed model, where a set of processors run distributed to evaluate the fitness values in parallel to reduce the computational cost.
(2) When we evaluate a chromosome, different from the traditional model of EEC problem in WSN that only calculates the number of disjoint sets, a hierarchical fitness evaluation mechanism is proposed and a two-level fitness function with biased attention to the sets with larger coverage percentage is designed.
Therefore, not only do we have the innovations in algorithm, but also have the contributions on the model of EEC problem in WSN.The experimental results show that our proposed DGA performs better than other state-of-the-art approaches in maximizing the number of disjoin sets.
The rest of this paper is organized as follows.Section 2 gives the problem description of the EEC in the WSN and reviews some related work.Section 3 proposes our methodology for solving EEC in the WSN by using DGA.Section 4 presents the experimental results between our approach and other state-of-the-art approaches in the literature.Conclusions are given in Section 5.

Energy Efficient Coverage Problem in WSN
The EEC problem is a fundamental and significant research topic in the WSN.In this section, we present the formulation of the EEC and review the related work on this problem.

Problem Formulation
Given an L × W (Length × Width) rectangle area A and D randomly deployed sensor nodes.The EEC is to divide the nodes into several disjoint sets and then schedule these sets to work one by one.As the nodes do not have to work all the time, the energy can be significantly preserved.The aim of the EEC is to maximize the number of disjoint sets, with the constraint that each set can provide the full coverage for the monitored area.
In order to know whether the sensor network provides full coverage in the area A, we assume that the location of each sensor node is known in advance [19,24].Moreover, the area is divided into many grids and the coverage issue can be transformed to check whether each grid is covered by at least one active sensor node [19].
All the D sensors form the sensors set S = {s 1 , s 2 , . . ., s D }, where each sensor node s i is with the location (x i , y i ) and the sensor radius R. For any grid g(x, y) ∈ A in the monitored area, the relationship between the s i and the g is defined as: where 1 means that the grid g is covered by the sensor s i while 0 means the sensor s i does not cover the grid g.Therefore, for any grid g in the monitored area, if there exist at least one sensor s i (1 ≤ i ≤ D) that makes P(s i , g) = 1, we say that A is fully covered by the sensor network.
In the EEC, the set S is divided into M subsets S j (1 ≤ j ≤ M), and with the objective of maximizing the value of M, as: Here, the constraint (i) means that the unitization of all the subsets S j must belong to the original set S. The (ii) indicates that there is no intersection between any two different subsets S j1 and S j2 .The (iii) represents that for any grid g in area A, there exists at least one sensor s i in S j which can cover the grid g.Obviously, these constraints can guarantee that each subset S j can fully cover the monitored area.

Related Work
With the development of evolutionary computations (ECs) like GA [25,26], ant colony optimization (ACO) [27,28], particle swarm optimization (PSO) [29,30], and differential evolution (DE) [31,32], many researchers have applied ECs into solving the EEC problems in WSN, such as PSO-based [33] and ACO-based [34] approaches.Specifically, in [33], Zhan et al. extended the binary PSO (BPSO) to solve the EEC problem by finding a minimal set of nodes again and again to maximize the number of disjoint sets.Lin et al. [34] proposed the ACO-based approach to maximize the number of connected covers, called ACO-MNCC, to maximize the lifetime of heterogeneous WSNs by transforming the search space of the problem into a construction graph.Besides, in [35], Yang et al. proposed a probabilistic model to tackle the EEC problem in WSN, which transforms the area converge into point converge.It greatly reduces the dimension of problem. Lee et al. [36] also tried to solve the EEC problem in the WSN by using the ACO, which designs three pheromones to balance the local exploitation and global exploration.Meanwhile, they also introduced a probabilistic sensor detection model, which makes the algorithms more realistic [37].
Some researchers have also used GA for solving the EEC in the WSN recently.For example, Lai et al. [25] proposed a GA-based method to maximize the disjoint sensor covers called GAMDSC.However, there is still much room for improvement.First, their works only solved the small-scale problems (up to 140 sensors).When the scales of problems increase, their performance often face difficulties.Second, parallel or distributed methods can further improve the performance and save the computational time.

Methodology: DGA for the EEC Problem
In this section, the DGA for solving the EEC problem in WSN is implemented and described.The master-slave distributed framework is first given.Then the chromosome representation and the hierarchical fitness evaluation mechanism are described.After that, the genetic operators, including the selection, crossover, and mutation are proposed.At last, the overall algorithm is presented.

Distributed Framework of DGA
In DGA, the master-slave distributed model is used.The processor whose role is to control the whole evolutionary process including crossover, mutation, and selection operations, is called MASTER.The other processors, which are responsible for chromosomes' evaluation to reduce the computational costs, act as SLAVEs.To give an overview of the DGA, the master-slave distributed structure is depicted in Figure 1.In each generation, the master sends chromosomes to slaves, while the slaves evaluate the chromosomes and return their corresponding fitness values back to the master [38].

Distributed Framework of DGA
In DGA, the master-slave distributed model is used.The processor whose role is to control the whole evolutionary process including crossover, mutation, and selection operations, is called MASTER.The other processors, which are responsible for chromosomes' evaluation to reduce the computational costs, act as SLAVEs.To give an overview of the DGA, the master-slave distributed structure is depicted in Figure 1.In each generation, the master sends chromosomes to slaves, while the slaves evaluate the chromosomes and return their corresponding fitness values back to the master [38].

Chromosome Representation
The aim of the EEC problem is to maximize the number of disjoint sets.Therefore, the first thing is to determine how many sets the nodes can be divided into at most.This is also the upper bound of the disjoint sets number K [23].Since the area has been divided into many grids, for each grid i, we find out the number of sensors ki that cover the grid i.Then, the minimal ki is the upper bound number of disjoint sets, i.e., K = min{ki}.
With the upper bound K determined, we can encode the chromosome in a very intuitive manner that each gene is an integer in the range of [1, K].Therefore, the chromosome is a string of integers with the length of D, where D is the number of sensor nodes.The representation is In ( 3), the value of xi denotes which set the ith sensor belongs to. Figure 2 gives two examples of the chromosome representation.In the examples, D is 4 and K is 2. In Figure 2a, the chromosome is X a = [1, 2, 1, 2], meaning that the first and the third sensors belong to the 1st set while the second and the fourth sensors belong to the 2nd set.In this case, it can be observed that both the 1st and the 2nd sets can provide full coverage for the monitored area.However, in Figure 2b, the chromosome is X b = [1, 2, 1, 1], meaning that the first, the third, and the fourth sensors belong to the 1st set while only the second sensor belongs to the 2nd set.In this case, only the 1st set can provide full coverage for the monitored area, but the 2nd set cannot.

Chromosome Representation
The aim of the EEC problem is to maximize the number of disjoint sets.Therefore, the first thing is to determine how many sets the nodes can be divided into at most.This is also the upper bound of the disjoint sets number K [23].Since the area has been divided into many grids, for each grid i, we find out the number of sensors k i that cover the grid i.Then, the minimal k i is the upper bound number of disjoint sets, i.e., K = min{k i }.
With the upper bound K determined, we can encode the chromosome in a very intuitive manner that each gene is an integer in the range of [1, K].Therefore, the chromosome is a string of integers with the length of D, where D is the number of sensor nodes.The representation is In ( 3), the value of x i denotes which set the ith sensor belongs to. Figure 2 gives two examples of the chromosome representation.In the examples, D is 4 and K is 2. In Figure 2a, the chromosome is X a = [1, 2, 1, 2], meaning that the first and the third sensors belong to the 1st set while the second and the fourth sensors belong to the 2nd set.In this case, it can be observed that both the 1st and the 2nd sets can provide full coverage for the monitored area.However, in Figure 2b, the chromosome is , meaning that the first, the third, and the fourth sensors belong to the 1st set while only the second sensor belongs to the 2nd set.In this case, only the 1st set can provide full coverage for the monitored area, but the 2nd set cannot.

Distributed Framework of DGA
In DGA, the master-slave distributed model is used.The processor whose role is to control the whole evolutionary process including crossover, mutation, and selection operations, is called MASTER.The other processors, which are responsible for chromosomes' evaluation to reduce the computational costs, act as SLAVEs.To give an overview of the DGA, the master-slave distributed structure is depicted in Figure 1.In each generation, the master sends chromosomes to slaves, while the slaves evaluate the chromosomes and return their corresponding fitness values back to the master [38].

Chromosome Representation
The aim of the EEC problem is to maximize the number of disjoint sets.Therefore, the first thing is to determine how many sets the nodes can be divided into at most.This is also the upper bound of the disjoint sets number K [23].Since the area has been divided into many grids, for each grid i, we find out the number of sensors ki that cover the grid i.Then, the minimal ki is the upper bound number of disjoint sets, i.e., K = min{ki}.
With the upper bound K determined, we can encode the chromosome in a very intuitive manner that each gene is an integer in the range of [1, K].Therefore, the chromosome is a string of integers with the length of D, where D is the number of sensor nodes.The representation is In (3), the value of xi denotes which set the ith sensor belongs to. Figure 2 gives two examples of the chromosome representation.In the examples, D is 4 and K is 2. In Figure 2a, the chromosome is X a = [1, 2, 1, 2], meaning that the first and the third sensors belong to the 1st set while the second and the fourth sensors belong to the 2nd set.In this case, it can be observed that both the 1st and the 2nd sets can provide full coverage for the monitored area.However, in Figure 2b, the chromosome is X b = [1, 2, 1, 1], meaning that the first, the third, and the fourth sensors belong to the 1st set while only the second sensor belongs to the 2nd set.In this case, only the 1st set can provide full coverage for the monitored area, but the 2nd set cannot.

Hierarchical Fitness Evaluation
In order to evaluate the chromosome, herein, a hierarchical fitness evaluation mechanism and a two-level fitness function are proposed.
First, the genes are grouped into different sets according to their values.Then a check procedure is performed on each set to see whether the nodes in the set can provide full coverage.As we divide the monitored area into L × W grids, for each set S i , we can count the grids number G that is covered by the sensor nodes in set S i .Therefore, we can obtain the coverage percentage f i as: Note that if f i is equal to 1, it means that the set S i can provide full coverage for the monitored area.In this way, we can count and obtain the number of disjoint sets (denoted as M) in the population which can achieve the full coverage.When two chromosomes A and B are compared, A wins B if A has a larger disjoint set number (larger M).The number of disjoint sets M is regarded as the first-level fitness evaluation.
However, to meet the case where the two chromosomes A and B have the same disjoint set number, we further designed a fitness function with biased attention to the sets with larger coverage percentage, so called the second-level fitness evaluation, which is calculated as: where K is the upper bound of the disjoint sets and w i is the weight for the set S i .Herein, we give the biased attention to the sets with larger coverage percentage.That is because the set with a higher coverage percentage has a higher probability to achieve the full coverage.Therefore, we first sort the sets according to their coverage percentages in descending order, then the weight w i for the set S i is set as w i = 10,000.0/ri , where r i is the rank of the set S i in the sort of coverage percentage.
In that way, if two chromosomes A and B have the same disjoint set number, then the one with a larger fitness value is preferred (larger F).

Genetic Operators
The genetic operators in DGA consist of the selection, crossover, and mutation.In this subsection, we will briefly describe the implementations of these operators.

Selection
In the selection implementation, we use the tournament selection strategy.Specifically, in each selection, partial of the chromosomes are randomly selected to compete for survival.The winner enters into the next generation.Repeat the selection operator until a population size of chromosomes have been selected.

Crossover
After the selection, the survived chromosomes recombine to create offspring.First, for each chromosome, a random value in range [0, 1] is generated.If the value is smaller than the crossover probability p c , then the chromosome is used as one of the parents.After all the parents have been determined, every two parents are randomly mated to create two offspring.A crossover position k is randomly generated and the genes from the kth position of the two parents are exchanged, as shown in Figure 3a.In this way, two new chromosomes, so called offspring are generated and enter the population.

Mutation
The chromosomes will perform a mutation operation after the crossover.For each gene in a chromosome, a random value in range [0, 1] is generated and compared with the mutation probability p m .If the random value is smaller than p m , then the mutation occurs.As shown in Figure 3b, when the mutation occurs, the gene is set as a random integer in the range [1, K].
Energies 2018, 11, x FOR PEER REVIEW 6 of 14 pm.If the random value is smaller than pm, then the mutation occurs.As shown in Figure 3b, when the mutation occurs, the gene is set as a random integer in the range [1, K].

Complete Algorithm
With the designs of the chromosome representation, fitness function, and the genetic operators, the DGA for solving the EEC problem is shown in Figure 4 and is described as the following seven steps.
Step 1: Initialization.The N chromosomes in the population are initialized at master.Each gene in the chromosome is set as a random integer value in the range [1, K] as (3).
Step 2: Evaluation.Each chromosome is evaluated as (5) at the slave and returns its fitness to the master.Then the best chromosome with the highest fitness can be determined.This chromosome is compared with the historical best one and will replace the historical best one if it is better.Otherwise, the historical best chromosome will replace the worst chromosome in the current generation.
Step 3: Selection.The selection operation has been discussed in Section 3.4.1.
Step 4: Crossover.The crossover operation has been discussed in Section 3.4.2.
Step 5: Mutation.The mutation operation has been discussed in Section 3.4.3.
Step 6: Termination check.If the termination criteria is met, go to Step 7. Herein, the termination criteria include the obtaining of the upper bound K or reaching the maximal generation number.Otherwise, the algorithm goes to Step 2 and continues the next generation evolution.
Step 7: Terminate.Output the best chromosome as the final solution.

Complete Algorithm
With the designs of the chromosome representation, fitness function, and the genetic operators, the DGA for solving the EEC problem is shown in Figure 4 and is described as the following seven steps.

Computational Complexity
Herein, we denote the population size and the dimension of problem (the number of sensors) as N and D, respectively.First, in the initialization, the computational complexity of DGA is O(N × D), which is obtained by step 1 in MASTER process of Figure 4.Then, as for the chromosomes evaluation, the computational complexity is O(N), as obtained by steps 3-4 in the MASTER process and steps 2-4 in the SLAVE process of Figure 4.After that, in the chromosome evolution, since we used the tournament selection, the computational complexity is O(N 2 × D), as obtained by steps 6-8 in the Step 1: Initialization.The N chromosomes in the population are initialized at master.Each gene in the chromosome is set as a random integer value in the range [1, K] as (3).
Energies 2018, 11, 3526 7 of 14 Step 2: Evaluation.Each chromosome is evaluated as (5) at the slave and returns its fitness to the master.Then the best chromosome with the highest fitness can be determined.This chromosome is compared with the historical best one and will replace the historical best one if it is better.Otherwise, the historical best chromosome will replace the worst chromosome in the current generation.
Step 3: Selection.The selection operation has been discussed in Section 3.4.1.
Step 4: Crossover.The crossover operation has been discussed in Section 3.4.2.
Step 5: Mutation.The mutation operation has been discussed in Section 3.4.3.
Step 6: Termination check.If the termination criteria is met, go to Step 7. Herein, the termination criteria include the obtaining of the upper bound K or reaching the maximal generation number.Otherwise, the algorithm goes to Step 2 and continues the next generation evolution.
Step 7: Terminate.Output the best chromosome as the final solution.

Computational Complexity
Herein, we denote the population size and the dimension of problem (the number of sensors) the computational complexity of DGA is O(N × D), which is obtained by step 1 in MASTER process of Figure 4.Then, as for the chromosomes evaluation, the computational complexity is O(N), as obtained by steps 3-4 in the MASTER process and steps 2-4 in the SLAVE process of Figure 4.After that, in the chromosome evolution, since we used the tournament selection, the computational complexity is O(N 2 × D), as obtained by steps 6-8 in the MASTER process of Figure 4. Therefore, the overall computational complexity of DGA is O(N 2 × D).

Algorithms Configurations
The parameter configurations of the DGA are listed as Table 1 and are described as follows.The population size is 40.Several processors are used here to evaluate the fitness of chromosomes.In each tournament selection round, 20% of the chromosomes are randomly chosen and compete for survival.The crossover probability p c and mutation probability p m are 0.8 and 0.01, respectively.The algorithm terminates at the maximal generations of 200 or it obtains the upper bound K of the disjoint sets number.

Experimental Results and Comparisons
In our experiments, we choose several EA-based algorithms, including a PSO-based method (BPSO [33]) and a GA-based method (GAMDSC [25]) to compare with our proposed DGA.To have a reliable and fair comparison, the parameter configurations of all the competitor algorithms are set the same as suggested in their original papers.
Herein, the network topology configurations used in [19] are adopted.That is, with the monitored area 50 m by 50 m, the sensing range R spans 8 m, 10 m, and 12 m, whilst the deployed nodes number N can be 100, 150, 200, 250, and 300.For each case with N original deployed nodes, we randomly deploy the D nodes in the network to form the topology.Note that the D nodes must provide the full coverage.Otherwise, the nodes are randomly deployed again until the network is fully covered.On each case, we generate three different random topologies.Therefore, there are totally 3 × 3 × 5 = 45 cases in this experiment.Due to the stochastic characteristic of the algorithms, we simulate each case on each topology 10 times and the mean results are recorded for statistics.All the approaches are dealing with the same test environments, resulting in a fair comparison.
The simulation results are presented and compared in Table 2.For clarity, the best results are highlighted in boldface.The results show that the DGA outperforms the other approaches on most of the cases.Also, DGA can maximize the number of disjoin sets and obtain the upper bound K in most of the cases, except cases 34, 42-44, while other algorithms can only find few disjoin sets.Moreover, with the increase in the number of nodes, especially in cases 37-45, the superiority of DGA is increasingly obvious, which further indicates the dominance of DGA when solving the complicated EEC problem in WSN.We also compare the Error values of these approaches when dealing with the EEC problem.The Error is calculated as where K is the upper bound in each case and M is the mean disjoint set number obtained by the approach.The Error values of DGA are smaller than 0.1 in all the cases and most of the Error values are 0, indicating the DGA is very promising in producing high quality solutions.

Effects of Parameters
The DGA involves two parameters, the crossover probability p c and the mutation probability p m .In this part, we investigate the two parameters based on the same topologies as in Section 4.2.
First, the p c is set as 0.8 and the p m varies from 0.01 to 0.09.The mean Error values of the 45 cases with different p m are plotted in Figure 5.As we can see, the small value of p m generally performs better than the large value of p m .That may because the larger p m destroys the convergence ability, which makes the algorithm act like a random search and cannot converge to a promising region.Therefore, the investigated results indicate that the DGA obtains the best performance when the p m is set as 0.01.
We also compare the Error values of these approaches when dealing with the EEC problem.The Error is calculated as where K is the upper bound in each case and M is the mean disjoint set number obtained by the approach.The Error values of DGA are smaller than 0.1 in all the cases and most of the Error values are 0, indicating the DGA is very promising in producing high quality solutions.

Effects of Parameters
The DGA involves two parameters, the crossover probability pc and the mutation probability pm.In this part, we investigate the two parameters based on the same topologies as in Section 4.2.
First, the pc is set as 0.8 and the pm varies from 0.01 to 0.09.The mean Error values of the 45 cases with different pm are plotted in Figure 5.As we can see, the small value of pm generally performs better than the large value of pm.That may because the larger pm destroys the convergence ability, which makes the algorithm act like a random search and cannot converge to a promising region.Therefore, the investigated results indicate that the DGA obtains the best performance when the pm is set as 0.01.Then, the pc is investigated, with the pm set as 0.01.The value of pc spans from 0.1 to 0.9, with the step 0.1.The mean Error values of the 45 cases with different pc are plotted in the Figure 6.It can be observed that the large value of pc may be generally better than the small value of pc.This may be due to large pc can making the good information of the chromosome spread fast in the population.This is very helpful for the algorithm to use good information to search in the promising region, and therefore results in better performance.However, a too-large pc value will sometimes make the algorithm converge too fast and be trapped into local optima.For example, when pc = 0.9, the mean Error values are worse than that when pc = 0.8.In general, pc = 0.8 is promising for the DGA to obtain satisfying results.Then, the p c is investigated, with the p m set as 0.01.The value of p c spans from 0.1 to 0.9, with the step 0.1.The mean Error values of the 45 cases with different p c are plotted in the Figure 6.It can be observed that the large value of p c may be generally better than the small value of p c .This may be due to large p c can making the good information of the chromosome spread fast in the population.This is very helpful for the algorithm to use good information to search in the promising region, and therefore results in better performance.However, a too-large p c value will sometimes make the algorithm converge too fast and be trapped into local optima.For example, when p c = 0.9, the mean Error values are worse than that when p c = 0.8.In general, p c = 0.8 is promising for the DGA to obtain satisfying results.

Speedup Ratio
Another advantage of DGA is the parallel implementation, where several processors in DGA are used to evaluate the fitness of chromosomes independently.Table 3 shows the computational times of DGA on all the 45 cases with different processors.
Speedup ratio is the metric to measure the performance of a distributed or parallel algorithm, and it varies with the numbers of processors and the computation cost of the case.Herein, we use the small-scale case 1 and the large-scale case 45 as two representative instances.We test the speedup of DGA on these two cases and draw the speedup curve with the increasing processors, from 2 to 10, shown in Figure 7.

Speedup Ratio
Another advantage of DGA is the parallel implementation, where several processors in DGA are used to evaluate the fitness of chromosomes independently.Table 3 shows the computational times of DGA on all the 45 cases with different processors.
Speedup ratio is the metric to measure the performance of a distributed or parallel algorithm, and it varies with the numbers of processors and the computation cost of the case.Herein, we use the small-scale case 1 and the large-scale case 45 as two representative instances.We test the speedup of DGA on these two cases and draw the speedup curve with the increasing processors, from 2 to 10, shown in Figure 7.
Energies 2018, 11, x FOR PEER REVIEW 11 of 14 As we can see, the speedup ratio consistently grows with the increase of the number of processors on both of these two cases.However, the increase of speedup ratio slows down when the number of processors increases from 6 to 10.That may due to the huge communication cost among many processors.Even so, the speedup ratio still keeps growing with the increasing of the number of processors.Moreover, the speedup ratio of case 45 is larger the case 1.That may because case 45 is more complicated than case 1, which will cause more computation cost than case 1.Therefore, under a similar communication cost, the higher computation cost will directly lead to a higher speedup ratio in case 45.As we can see, the speedup ratio consistently grows with the increase of the number of processors on both of these two cases.However, the increase of speedup ratio slows down when the number of processors increases from 6 to 10.That may due to the huge communication cost among many processors.Even so, the speedup ratio still keeps growing with the increasing of the number of processors.Moreover, the speedup ratio of case 45 is larger the case 1.That may because case 45 is more complicated than case 1, which will cause more computation cost than case 1.Therefore, under a similar communication cost, the higher computation cost will directly lead to a higher speedup ratio in case 45.

Conclusions
In this paper, DGA is proposed to solve the EEC problem in the WSN to achieve or guarantee the full converge.In the implementation, DGA is realized in the multi-processor distributed environment, where a set of processors run distributed to evaluate the fitness values in parallel to reduce the computational cost.Moreover, when we evaluate a chromosome, different from the traditional model of EEC problem in WSN that only calculates the number of disjoint sets, hierarchical fitness evaluation mechanism is proposed and a two-level fitness function with biased attention to the sets with larger coverage percentage is further designed.Therefore, not only do we have the innovations in the algorithm, but we also have the contributions to the model of the EEC problem in WSN.Simulations have been conducted and the experimental results confirm the effectiveness and efficiency of the proposed approach when compared with the state-of-the-art approaches.

Figure 1 .
Figure 1.The distributed framework of the distributed genetic algorithm (DGA).

Figure 2 .
Figure 2. Illustration of the chromosome representation.

Figure 1 .
Figure 1.The distributed framework of the distributed genetic algorithm (DGA).

Figure 1 .
Figure 1.The distributed framework of the distributed genetic algorithm (DGA).

Figure 2 .
Figure 2. Illustration of the chromosome representation.

Figure 2 .
Figure 2. Illustration of the chromosome representation.

Figure 3 .
Figure 3.The illustration of the crossover and mutation operators.
Illustration of the single point crossover (b) Illustration of the mutation

Figure 3 .
Figure 3.The illustration of the crossover and mutation operators.

Figure 4 .
Figure 4.The flowchart of the DGA for solving the energy efficient coverage (EEC) problem in the wireless sensor networks (WSN).

Figure 4 .
Figure 4.The flowchart of the DGA for solving the energy efficient coverage (EEC) problem in the wireless sensor networks (WSN).

Figure 5 .
Figure 5.The mean Error values obtained by the DGA with different pm.

Figure 5 .
Figure 5.The mean Error values obtained by the DGA with different p m .

Figure 6 .
Figure 6.The mean Error values obtained by the DGA with different pc.

Figure 7 .
Figure 7. Speedup ratios achieved by DGA on two typical cases.

Figure 7 .
Figure 7. Speedup ratios achieved by DGA on two typical cases.

Table 1 .
The Parameters Configurations of DGA.

Table 2 .
Experimental Results of Comparisons.

Table 3 .
Computational time of DGA (s).The mean Error values obtained by the DGA with different p c .