Multiobjective Optimization for Topology and Coverage Control in Wireless Sensor Networks

Coverage, connectivity, and network lifetime are important issues in wireless sensor networks (WSNs). Balancing the energy consumption in the network, reducing the transmission range of nodes, and density control of active nodes are approaches to extend the network lifetime. However, transmission range reduction and smaller number of active nodes can affect the network topology and may cause the network to be disconnected. So, there exist conflicts among lifetime, coverage, and connectivity. In this paper, these conflicting issues are considered and an evolutionary multiobjective optimization approach based on nondominated sorting genetic algorithm-II (NSGA-II) is proposed to optimize them. Simulation results demonstrate that the proposed algorithm can improve the network lifetime and coverage while maintaining the network connectivity.


Introduction
Wireless sensor networks (WSNs) are kind of wireless networks including a group of sensors which can be deployed rapidly and cheaply, and thereby they can be used for different purposes such as environment monitoring and object tracking [1].WSNs play an important role in the improvement of the quality of people's lives [2,3].Energy is an extremely critical resource in this kind of networks, thus prolonging the lifetime of network and making energyefficient protocols are major design challenges in WSNs [4,5].Area coverage, point coverage [6], and barrier coverage [7] are three types of coverage in WSNs.Usually, in the case of random deployment, the number of deployed sensors is more than what is required [8].It is not necessary to keep all sensor nodes in active mode simultaneously.We need a scheduling scheme which remains some sensors in active state to provide sensing services and puts other sensors to sleep state to conserve energy [9].Sensor scheduling decreases the number of active sensors, avoids the channel collision, reduces the energy consumption in the network, and prolongs the network lifetime [10].In addition, for ensuring that each sensor is able to communicate with the sink node, network connectivity should also be considered in WSNs [11,12].Balanced energy consumption in the network and efficient transmission ranges adjustment of the sensors are other approaches for energy conservation and prolonging the network lifetime [13].Maximizing covered area, balanced energy consumption, minimizing the transmission range of nodes, minimizing the number of active nodes, and maintaining the connectivity of active nodes are critical issues in WSNs which are usually conflicting.The present paper aims to consider these conflicting issues simultaneously and proposes an evolutionary multiobjective optimization approach based on nondominated sorting genetic algorithm-II (NSGA-II) for optimizing them.
The remainder of this paper is organized as follows.Section 2 reviews some of the previous related works.Section 3 describes the related definitions and concepts.Section 4 gives network model and assumptions made in this paper.The proposed solution is presented in Section 5.

Related Works
Network coverage, connectivity, and lifetime are important issues in WSNs.A lot of works have been done in recent years by the researchers for addressing these issues.Open geographic density control (OGDC) is one of the popular coverage algorithms [14].In this approach, by controlling the density of the active sensors, the energy consumption can be reduced.In this algorithm, deterministic placement of the nodes is considered, but this kind of placement is only possible for the small-scale networks.The Coverage Configuration Protocol (CCP) is another coverage control protocol proposed in [15].In this protocol, every node maintains the information of its neighbors and periodically broadcasts a hello message which contains current location of node and its status.The trade-off between the energy consumption and network coverage is not considered in this protocol.For example, in the case that only one intersecting point of a node is not covered by its neighbor, the protocol will activate this node.So, this protocol is not energy efficient in the case of the large-scale networks.
The authors of [16] proposed approximation algorithms for both maximum lifetime and minimum cost coverage problems, but connectivity is not their concern.In [17], for modeling the area coverage in WSNs, a degree-constrained minimum-weight extension of the CDS (connected dominating set) problem called DCDS is provided and an approach based on learning automata called LAEEC is proposed for finding a near-optimal solution.The proposed solution balances the network load on the active sensors and improves the network coverage and lifetime.The authors of [18] used improved NSGA-II to optimize the network coverage and nodes utilization simultaneously.In [19] for solving the conflict among coverage and equilibrium of energy consumption in WSN, a multiobjective optimization strategy is proposed.The proposed strategy is based on a new evolutionary algorithm called multiobjective free search algorithm (MOFS).The problem of network coverage and connectivity is addressed in [20] and an efficient solution is proposed for maintaining coverage and preserving the connectivity of the network while minimizing the count of the active sensor nodes.
The sensor deployment problem for WSNs is studied in [21,22].However, their objective is finding optimal locations for placing the sensors and maximizing the coverage rather than selecting covering sensor nodes from a randomly deployed sensor network.Additionally, connectivity has never been a requirement in these papers.The concept of multiobjective evolutionary algorithm based on decomposition (MOEA/D) is used in [23] for relocating the mobile nodes in a WSN with the goal of providing maximum sensing coverage area and minimizing the energy consumption.The goal of research presented in [24] is maintaining sensing coverage by activating a small number of sensors and consuming a small amount of energy in a WSN.The authors of [12] formulated maximum disjoint sets for maintaining coverage and connectivity problem in WSN and proposed a heuristic algorithm for solving it.A flexible algorithm presented in [25] uses an evolutionary computational approach to optimize connectivity and energy cost of WSNs in addition to coverage.The problem of positioning sensor nodes in WSN considering coverage with minimum energy consumption is studied in [26] and a multiobjective optimization approach is proposed for optimizing the energy consumption and coverage.The research presented in [27] used the characteristics of Voronoi diagram and direction-adjustable directional sensors and proposed a distributed greedy algorithm, which can improve the effective field coverage of directional sensor networks.The sensor field is divided into Voronoi cells and the sensor working direction is evaluated based on Voronoi vertices.Considering the coverage contribution of convex polygonal cell of sensors and the coverage overlap of direction select between neighbor sensors, the working direction is adjusted and controlled, so as to improve the overall sensing field coverage ratio in the sensor network environment without global information.The authors of [28] proposed a multiobjective optimization algorithm to efficiently schedule the nodes of a wireless sensor network and to optimize energy consumption, lifetime, and coverage.
The authors of [29] formulated the sensor node deployment task as a constrained multiobjective optimization problem with the aims of maximizing the area of coverage and minimizing the number of deployed sensor nodes.They used a decomposition approach for converting the problem of approximation of the Pareto fronts into a number of single-objective optimization problems.The authors of [30] proposed a multiobjective hybrid optimization algorithm to solve the dynamic coverage and connectivity problem (DCCP) in flat WSNs.In [31], an algorithm based on Euclidean distance called CWSC is proposed to k-cover the sensing region while minimizing the number of working sensors.The goal of the research presented in [32] is addressing the network lifetime maximization problem with connectivity and coverage constraints by scheduling the activity of sensors.
Although all of the above-mentioned researches have achieved the coverage requirement, some of them have not considered the network lifetime [12,20,22,27] and the network connectivity [16,[21][22][23].Some works such as [14,15,[17][18][19][20]24] require that the transmission range is at least twice the size of the sensing range; otherwise, the connectivity may not be guaranteed.
All of the above studies except [25] have not considered the transmission range adjustment for sensor nodes to maximize the network lifetime.These works assumed the same transmission range for all sensors.Among the abovementioned works, only [19] considered the balanced energy consumption in the network.
In this paper, we propose a multiobjective optimization approach to optimize the area coverage, network lifetime, network connectivity, transmission range adjustment of nodes, and balanced energy consumption simultaneously in WSN without any sensing range or transmission range restriction.

Multiobjective Optimization Problems.
A multiobjective optimization problem (MOP) is stated as follows [33]: Minimize or maximize  () = ( 1 () , . . .,   ()) (1) subjected to  ∈ Ω, where Ω ⊂   is the decision space,  : Ω →   consists of  real-valued objective function, and   is objective space.In some cases, a MOP has various equality and inequality constraints as follows: () ≤ 0,  = 1, . . ., , ℎ  () = 0,  =  + 1, . . ., . ( In the case that optimization problems involve constraints, the search space  can be defined as follows: where  is the base search space and  is a solution of the feasible region Ω that satisfies all  constraints, that is,  Definition 2.  * ∈ Ω is said to be Pareto-optimal (or nondominated) if there is no other  ∈ Ω so that  dominates  * .The set of all Pareto-optimal solutions in the decision space is called the Pareto-optimal set (PS).The image of the PS in the objective space is called the Pareto-optimal front (PF).
Figure 1(a) illustrates a PF with  = 2.The Paretooptimal solutions in the PF (marked as asterisk) provide better values for objective functions than any other solution in the objective space.The ideal solution (marked as rectangle) provides the minimum objective values and it is often considered unreachable.The remaining solutions (marked as solid circles) are all dominated by at least one solution of the PF.In Figure 1(b), the bold curve indicates the PF of a constrained MOP.The solid circles are the feasible solutions in the feasible region and the remaining solutions outside the feasible region (marked as triangle) are considered infeasible.

NSGA-II Algorithm.
There are several well-known multiobjective genetic algorithms (MOGAs).NSGA-II [34] is one of the most popular algorithms.By introducing the fast nondominated sorting approach, binary crowding tournament selection, and elitism, the Pareto-optimal front can be searched effectively.NSGA-II has a diversity-preserving mechanism which assures convergence towards the Paretooptimal front without losing solution diversity.The standard NSGA-II algorithm works as follows [34].
Initially, a random population   ( = 0) is created and is sorted into different nondominance levels.For each solution a fitness value equal to its nondominance level is assigned.For creating an offspring population   of size , some operators such as binary tournament selection, mutation, and recombination are used.Then the following steps will be repeated until the number of generations reaches the maximum number of generations.
Step 1. Combine parent and offspring populations to create   =   ∪   .Perform a fast nondominated sorting in   according to the algorithm shown in Algorithm 1 and identify different fronts Fr  ,  = 1, 2, . ...
Step 3. Select ( − | +1 |) most widely spread solutions from Fr  using the binary crowding tournament selection operator and insert them into  +1 .
Step 4. Create an offspring population  +1 from  +1 by using the binary crowding tournament selection, crossover, and mutation operators.Set  =  + 1.
The process of nondominated sorting and filling the population  +1 steps can be performed together.In Step 3, the crowding-sorting of the solutions in front Fr  , which is the last front that could not be completely accommodated, is performed by using a crowded-distance metric.
The crowding comparison operator compares two solutions and returns the winner of the tournament.The winner is selected based on two attributes: the nondominance ranking   and the local crowding distance   in the population.This crowding distance attribute of a solution  is a measure of the search space around , which is not occupied by any other solution in the population.Based on   and   , the binary crowding tournament selection operator works as follows.
A solution  wins a tournament over another solution  if any of the following conditions is true.
(1) If   <   (this assures that the selected solution lies on a better nondominated front).
(2) If   <   and   <   (this is applied when both solutions lie on the same front and the above condition cannot be applied; in this case, the solution residing in a less crowded area with a larger   wins).

Dynamic Crowding Distance (DCD) Algorithm.
Horizontal diversity of Pareto-front is very important in MOEAs and it is realized by removing excess individuals in the nondominated set.For removing the excess individuals, NSGA-II uses crowding distance (CD) measure.The individuals with lower value of CD have a high priority to be removed in the removal process.The value of CD is calculated using where  obj is the number of objectives,   +1 is the th objective of the +1th individual, and   −1 is the th objective of the −1th individual after sorting the population according to CD value.The major drawback of crowding distance is the lack of uniform diversity in obtained nondominated solutions.To overcome this problem, DCD method is suggested in [35].The DCD of individuals is calculated based on where CD  is calculated by ( 4) and Var  is calculated based on Var  is the variance of CDs of individuals which are neighbors of the th individual.

Network Model and Assumptions
The sensor network consists of a static resource-rich sink node and  stationary resource-constrained sensor nodes deployed randomly with uniform distribution over a finite, two-dimensional region .The transmission range of these nodes is also limited such that the entire network cannot be traversed in a single hop.Sensor nodes are assumed to be heterogeneous and each sensor node can adjust its radio transmission range   to vary from 0 to the maximum transmit range   (max).We assumed eight predefined transmission range levels for each sensor.We also assumed that all sensor nodes have the same sensing range   and each node knows its position and also the positions of its neighbors within its transmission range.
The sensing range and the transmission ranges of sensor nodes are assumed as perfect disks which means that a node can sense the area points which are within a distance of   from the node.
Region  is divided into some uniform consecutive grids to make the coverage problem more computationally manageable.We have assumed a cluster-based architecture for WSN and each cluster is modeled as a mesh of grids, one cluster head, and NC member of nodes with different transmission range.This model is depicted in Figure 2.
We assume a continuous monitoring application and all sensor nodes send their sensed data to its cluster head periodically.All cluster heads transmit their data to a base station periodically.The cluster formation and routing are not considered in this paper.We considered area coverage in each cluster and modeled the monitoring status of a grid which centered at (  ,   ) as follows: where 1 indicates that this grid is covered and 0 otherwise.For ensuring that there are no collisions during data communication, SMAC [36] is used as medium access control protocol.Also, we adopt the path loss communication model as in [37].All the nodes in the network have the same initial energy.Equation ( 8) calculates the residual energy of sensor , at time  [13]: where    () and    () are transmission and reception energy consumed by sensor , respectively, and are calculated based on is the total energy consumed by sensor  for sensing and processing with a fixed sensing range   in one time slot,   () is the amount of bits that  receives and relays towards the cluster head at time ,  is the amount of data generated by  which should be forwarded to the cluster head, amp is the energy consumption of the power amplifier, and   is the required energy for receiving a bit of data.

Multiobjective Optimization Approach
This section describes the proposed multiobjective optimization algorithm for transmission range adjustment, scheduling, coverage and connectivity control called TASCC.TASCC is proposed based on NSGA-II to optimize coverage, number of active nodes, and balanced energy consumption while maintaining the connectivity in WSNs.As mentioned earlier, we assumed a cluster-based architecture and the network lifetime is scheduled into rounds.Since the cluster heads consume more energy, for balancing the residual energy of nodes, new cluster heads are chosen in each round and then, the new clusters will be formed.Each cluster head is responsible for calculating the transmission range and determining the scheduling status of its member nodes by executing the TASCC algorithm.The final results calculated by the cluster heads are sent to their member nodes and each member node will adjust its transmission range and scheduling status.

Multiobjective Formulation of TASCC. The TASCC is formulated as a multiobjective optimization problem as follows.
Decision Variable 1. Scheduling status of sensor  is defined as follows: Objectives.Maximizing the coverage rate, minimizing the percentage of active sensor nodes, and minimizing the unbalanced energy consumption.
Constraint.Network connectivity: the network connectivity means that there is at least one path between each sensor node and the sink node.

International Journal of Distributed Sensor Networks
Objective 1. Minimizing the rate of the uncovered area.
At first, the rate of area coverage which is the percentage of the covered grids over the total grids is formulated as follows: where (, ) is the center of grids coordinates in the cluster,  is the total number of grids in the cluster, and grid(  ,   ) is calculated according to (7).
To translate this objective to a minimization objective, the rate of the uncovered area is defined as follows: Objective 2. Minimizing the unbalanced energy consumption which is evaluated as follows: for each node  in the cluster, where   is the residual energy of sensor  and is calculated according to (8).The higher value of  unbalanced means the more unbalanced energy consumption.
Objective 3. Minimizing the number of active sensors is evaluated according to where NC is the total number of sensors in the cluster.
The optimization problem is defined as follows:

Genetic Representation of the Solutions.
Each solution  consists of NC items.Each item  represents an individual sensor node  and has two parts: status  and    , which represent the scheduling status of sensor node  and the transmission range of sensor , respectively.So, we need four bits for each item: the first bit is used to describe the scheduling status of the sensor node and the three remaining bits describe one of the eight predefined values of transmission range.This genetic representation of solution is depicted in Figure 3.
For a sensor node, the possibilities of four-bit encoding scheme are represented in Table 1.

TASCC Algorithm.
At first, the algorithm generates an initial population of size .In each solution in the initial population,  sensor nodes are activated uniformly and randomly ( is the number of grids in the cluster).To every activated sensor  in the initial solution, a transmission range level    is assigned as (16) such that it reaches the sensor  which is its closest neighbor and is closer to cluster head compared to : Each solution in the initial population is evaluated using the objective functions  1 ,  2 ,  3 and connectivity constraint mentioned earlier.Then, offspring population will be created from the existing (parent) population using the crowded tournament selection, crossover, and mutation operator.
We use two-point crossover operator with randomly selected crossing points in our solution.Figure 4 illustrates the results of applying two-point crossover on two sample solutions with six parts.
The mutation type used in this paper depends on the selected bit in the solution to be muted.If the selected bit is the first bit of an item in the solution (represents the scheduling status of node), the mutation operator works as follows.
At first, the minimum number of required active sensors ( min ) for satisfying the requested coverage rate is calculated using where   is the area of the cluster which will be monitored,   is the circular sensing area of a sensor, and  cov is the requested coverage rate by the designer.Since circular coverage is assumed for each node, we have  Before applying mutation operator on the solution , the number of active sensors in  ( active ) is calculated and then, based on  active and  min , the mutation operator will apply on it by considering the following rules.
If  active <  min and the selected bit is 0, then it will be changed to 1; else if  active >  min and the selected bit is 1, then it will be changed to 0; else the mutation operator should select another bit for mutation.
Regarding these rules, it is obvious that this type of mutation employs problem-based knowledge and will reduce the energy consumption of the network and improve the network coverage.
If the selected bit for mutation is not the first bit of an item on the solution, we use the classical mutation which swaps the selected bit (0 becomes 1 and vice versa).
After creating the offspring population, it combined with the parent population and the new population will be created.Then, the fast nondominated sorting algorithm is performed on this combined population to identify different fronts Fr   = 1, 2, . ... Then the new population is created and step by step contains the solutions of different nondominated fronts.At first, it contains the solutions of the best nondominated front (Fr 1 ) and continues with solutions of the second nondominated and so on.
The new population of size  may not accommodate all fronts of the combined population with size 2.So, if all the solutions of the current front cannot be accommodated in the new population, the DCD values of the solutions in this front are calculated based on (5) discussed in Section 3.Then, the solutions will be sorted in descending order according to DCD values and the required solutions for new population will be selected from the first of this front.The above-mentioned process continues until the number of generations reaches the maximum number of generations.The pseudocode of the TASCC algorithm is outlined in Algorithm 2.

Simulation Results and Discussions
In this section, we evaluate the performance of the TASCC algorithm via simulations.Simulations were performed using the NS-2 simulator.The simulations are conducted for different number of sensor nodes in the network and the averages of the results are depicted.

Simulation Settings.
Experiments are conducted on a 100 * 100 square meter region.We consider the grids of size 2 m * 2 m, and if centers of all grids are covered, we assume that the entire region is covered.The simulation parameters are summarized in Table 2.
Experiment 1.In this experiment, 100 sensor nodes are deployed in the region and the coverage rate of the network is evaluated.A grid is said to be covered, if the center of that grid is covered at least by a sensor node.The coverage rate of the monitoring region versus the number of active  the coverage rate simultaneously.The coverage rate of CCP decreases with increase in the number of working sensors.This is because a large number of message exchanges are required in CCP to maintain neighborhood information.In the case of low density of active sensors, OGDC provides less coverage rate rather than the other protocols.This is due to the fact that OGDC suffers from many redundant active sensors.Experiment 2. In this experiment, we consider different number of deployed nodes and the coverage rate of 0.9 and measure the required number of active nodes for satisfying this coverage rate for different algorithms.The results of this experiment are presented in Figure 7.According to the results shown in this figure, it can be seen that TASCC has the minimum number of active nodes as compared to the other protocols.With the increasing of number of deployed sensors, TASCC maintains the same number of active sensors (about 25 sensors).This is because the number of required active sensors is independent of the density of the deployed sensors while for other algorithms, the number of required active nodes increases as the number of deployed sensors increases.
Experiment 3. In this experiment, we consider different number of deployed nodes and the coverage rate of 0.9 and compare the lifetime of the proposed algorithm with other algorithms.The network lifetime is defined as the round when the first node depletes its energy.The changes in the network lifetime are shown in Figure 8 where the number of sensors changes from 50 to 200.It can be seen that for all algorithms, as the network size increases, the network lifetime increases too.It is observed that the proposed algorithm has the longest lifetime.This is because in the proposed algorithm, in addition to density control of active nodes, balancing the energy consumption in the network and adjusting the transmission range of nodes result in extending the network lifetime.As mentioned earlier, in other algorithms, the transmission range should be at least twice the size of the sensing range and this may cause more energy consumption and shortening of the network lifetime.The network lifetime in CCP is much shorter than in other algorithms.This is because CCP periodically broadcasts hello messages, and thus more energy will be consumed.the unbalanced energy consumption of different algorithms according to (13).The value of this parameter varies between 0 and 1.At the ideal case, the maximum and the minimum residual energy of the nodes will be the same and the value of the unbalanced energy consumption parameter will be 0.
On the other hand, in the worst case, the energy of at least one sensor will be depleted while some other nodes are full of energy and according to (13), the value of this parameter will be 1. Figure 9 shows the unbalanced energy consumptions for different algorithms.Based on the results, we find that the unbalanced energy consumption in the proposed algorithm is lower than the other algorithms.This is due to the fact that the proposed algorithm, unlike the other algorithms, considers the balanced energy consumption as an objective and avoids the rapid depletion of the energy and periodically changes the active sensors to balance the residual energy of nodes.
Experiment 5.In this experiment, different network sizes are considered and the number of unconnected sensors in the proposed algorithm is calculated and compared with other algorithms.Figure 10 shows the result of this experiment.As shown in this figure, TASCC outperforms other algorithms in terms of connectivity.This is because the proposed algorithm unlike the other algorithms can dynamically adjust the transmission range of the sensors to maintain the connectivity and reduce the unconnected sensors.

Conclusions
Maximizing covered area, balancing energy consumption, minimizing the transmission range of nodes, minimizing the number of active nodes, and maintaining the connectivity of nodes are critical issues in WSNs.These issues are usually conflicting.In this paper, we proposed a multiobjective optimization algorithm called TASCC to optimize these conflicting issues simultaneously.We executed different simulation experiments to show the performance of the proposed algorithm.The results obtained from the simulations showed that with the same number of active sensors, TASCC can obtain a higher coverage rate than other algorithms.Moreover, due to balanced energy consumption and dynamically adjusting the transmission range of the sensors in TASCC, the network lifetime was prolonged.

Figure 5 :
Figure 5: The coverage rate versus the number of active sensors at various generations.

Figure 6 :
Figure 6: The coverage rate versus the number of active sensors for different algorithms.

Figure 7 :Figure 8 :
Figure 7: The number of active sensors versus the number of deployed sensors.

Figure 10 :
Figure 10: The number of unconnected sensors versus the network size.
Figure2: Example of area coverage in a cluster.The cluster is modeled as a mesh of grids.For a sensor node, the sensing range   and the transmission range   are depicted.

Table 1 :
The possibilities of four-bit encoding scheme.

Table 2 :
Network parameters (  , NC,  cov , ,   ,   (max), ...)Output: Non-dominated solutions.Step 1. Choose population size , crossover probability (  ) and mutation probability (  ), crossover and mutation index, maximum number of generations (gen max ).Set the generation count  = 0; Step 2. Generate an initial population   as follow:For  = 1, . . .,  do Step 2.1.Activate  sensor nodes uniformly and randomly in solution of population   ; Step 2.2.For every activated sensor  in solution , assign transmission range level ( Evaluate each solution in   using objective functions and connectivity constrain; Step 4. Apply the crowded tournament selection, mutation and crossover operators to create offspring population   from   ; Step 5. Set   =   ∪   ; Step 6. Do fast non-dominated sorting on   according to Algorithm 1, resulting non-dominated fronts Fr 1 , Fr 2 , . ..; Step 7. Set   + 1 = Ø;  = 1; While | +1 | + |Fr  | <  do ( +1 =  +1 ∪ Fr  ,  =  + 1); If | +1 | <  then Calculate DCD values of the solutions in Fr  and sort the solutions in descending order according to DCD values; Add the first  − | +1 | solution from Fr  to  +1 ; If  < gen max then set  =  + 1 and go to Step 3. Simulation parameters.Figure 6 plots the coverage rate versus the number of active sensors for different algorithms.As shown in this figure, with the same number of active sensors, TASCC can obtain a higher coverage rate than other algorithms because TASCC considers the number of active sensors and