1 Introduction

Wireless sensor networks are one of the technologies developed to address the growing needs of the observation and control of certain physical and biological phenomena of the environment. Originally, the expansion of wireless sensor network applications is conducted by military applications [1]. Nowadays, sensor networks are used in a wide variety of applications including medicine, environmental risk monitoring, traffic control, habitat monitoring and control of industrial processes [26]. A sensor is defined as a device capable of transforming a physico-chemical quantity to a measurable electrical signal [2]. Sensors are characterized by a low processing capacity and data storage, a limited battery, and a limited coverage range and communication range. Therefore, the implementation of wireless sensor networks (WSN) applications like urban air quality monitoring in our case requires the deployment of hundreds, even thousands, of source nodes, relay nodes and collector nodes for a finer spatial granularity measurement of pollutants. The heterogeneity of nodes enables us to segment the network into subnets around the collector nodes (e.g., cluster head) for data collection within each monitoring area. This subdivision offers the possibility of limiting the communications links between the nodes and consequently reducing network energy consumption and improving the quality of service [79]. Thus, WSN designs take the form of large complex networks, consisting of spatial distributions of sensor nodes that cooperate with each other by radio message for the observation and the controlling of certain physical phenomena.

In general, there are three types of sensor deployment scenarios, namely target coverage, area coverage and barrier coverage [24, 6]. Target coverage focuses on how to cover the set of points defined into the monitoring region. Area coverage seeks to find a minimum number of sensors capable of completely covering the area of interest. Instead of fully covering the space, barrier coverage finds the way to place the sensors along a boundary defined by two parallel curves to limit intrusions into the surveillance zone.

Depending on the objectives and the implementation step of the network, coverage problem can be formulated in several manner. When designing the network, coverage can be built around the determination of the minimum number of sensors required to cover the entire region, for example [3]. In the deployment phase, according to the accessibility of the region (hostile or not), the interest may be focused on random or deterministic deployment. Once the network is deployed, the cover problem can be formulated in terms of network lifetime extension, connectivity and quality of service [4, 10, 11].

Most of the work on network lifetime extension focuses on finding the maximum number of cover sets (disjoint or not) and their scheduling once sensors are randomly deployed [1217]. However, by knowing the position of the target and using the deterministic deployment approach, the extension of the network lifetime can be taken into account in the step of sensor nodes placement and the scheduling phase [18].

In contrast to the sequential approach proposed in [18] for target coverage, we introduce in [19] an approach that aims to optimize the network lifetime by finding simultaneously the “better” positions of the sensor nodes and the maximum number of disjoint cover sets. This case of study includes two main processes: (1) placing sensors around the targets, (2) generating the maximum number of disjoint cover sets to lengthen the network lifetime. To tackle this, we designed a chromosome in which the genes contain both the position and the identifier of the sensor owning group. The proposed approach denoted as Combined Approach for Sensor Deployment and Disjoint Cover sets problems (CASEDISC) outperformed existing methods on most well-known test instances. We also observed that efficient networks with extended lifetime can be created by finding a single optimized cover and placing redundant sensors at each of the indicated sensor locations. Thus, the objective of this paper is to design a method to obtain covers with fewer sensors and better coverage. The proposed method computes the number of “free sensors”, as introduced in [19], and the number of “uncovered targets” to reduce sensor number while maintaining good coverage.

Given that the questions raised in the present study involve trade-offs between the number of uncovered targets and the number of free sensors, the objectives set can be tackled by using multi-objective optimization techniques. Without loss of generality, suppose that \(x_1\) and \(x_2\) are two solutions of a multi-objective minimization problem with l objectives. The solution \(x_2\) is dominated by \(x_1\), denoted by \(x_1 \prec x_2\), if \(\forall i\in \{1,\ldots ,l\},\; f_i(x_1)\le f_i(x_2) \wedge \exists i\in \{1,\ldots ,l\}, f_i(x_1)<f_i(x_2)\). The set of non-dominated solutions forms the Pareto front. If the solutions in the front dominate all others in the search space, this front is called Pareto-optimal or globally Pareto-optimal set [20].

This paper proposes a method based on a multi-objective evolutionary algorithm. To achieve the objectives, namely minimizing the number of sensors while maintaining good target coverage, a representation scheme is used where chromosomes are vectors which give (xy) coordinates of multiple sensors.

The rest of the article is organized as follows. In Sect. 2, we briefly present the related work on sensor deployment. In Sect. 3, the problem definition is provided, and the proposed approach is detailed. The simulation results and discussions are presented in Sect. 4. Finally, Sect. 5 concludes this paper and presents some future work.

2 Related work

Several researchers have proposed solutions for the sensor placement problem for target monitoring in various situations. This problem is a kind of classical set-covering problem which is known to be NP-hard [2]. To achieve this, in most cases assumptions are made about the sensor coverage model, the obstacles, and the number of targets and sensors to be used. Thereafter, greedy algorithms and approximation algorithms are used to solve the problem. For example, in [21], the authors assume that the detection of targets can be influenced by the nature of the terrain and the distance. They propose greedy algorithms to find a minimum number of sensors that can cover all targets with a minimum degree of confidence within a grid. In [22], a simulated annealing algorithm is used for sensors placement within a grid to minimize the error of maximum distances between target monitored by the same sensors under the constraint of cost. Some genetic algorithms have also been used to cope with the sensors placement problem [3, 2330]. In [30], a genetic algorithm is proposed to find the position and the minimum number of mobile sensors that has to be deployed to fill the holes of coverage generated by the random deployment of static sensors. In [3], three sensors with different sensing radii are used to solve the area coverage problem by applying genetic algorithms. Each solution (chromosome) is encoded as a vector that contains the sensors’ geographic coordinates (in a plane). The solution found by the algorithm is improved by applying a local search algorithm using a modified version of the virtual force algorithm outlined in [31].

In addition to the above methods, some genetic frameworks have also been used to find the cover sets. A multi-objective genetic algorithm NSGA-II is used in [16] for area coverage. The area to cover is discretized into a grid of size \(m \times n\) and the chromosome is encoded as a binary string of size n that represents the number of sensors. Two objective functions are defined. The first one maximizes the coverage rate of the constructed cover set and the second one seeks to minimize the rate or the number of sensors used in the same cover set.

Unlike the previous works, the main contributions of this paper can be summarized as follows: (1) the definition of two antagonist objective functions: minimizing the number of uncovered target and maximizing the number of free (unused) sensors. These sensors can be used to increase the redundancy and lengthen the network lifetime; (2) the comparison of results provided by different multi-objective algorithms in the context of sensor deployment.

3 The proposed sensor deployment method

3.1 Problem description

The work carried out in this paper focuses on two main objectives: (1) to compute the maximum number of “free sensors” and (2) to determine the minimum number of uncovered targets.

There exists several abstract models to represent sensor networks, especially unit disc graph and statistical channel models [32].

The unit disc graph model (UDG) represents a wireless sensor network as an intersection graph of equal size circle. Each circle corresponds to a sensor that is located at the center. The radius of the circle corresponds to the coverage range of the sensor. Each sensor can monitor targets that are inside the unit disc. The coverage function is defined in Eq. 1 [3].

$$\begin{aligned} f(s, t)= \left\{ \begin{array}{lll} 1 &{} \quad \mathrm{if } \;\, d(s, t) \le r_s \\ 0 &{} \quad \mathrm{otherwise }\\ \end{array} \right. , \end{aligned}$$
(1)

where d(st) is the Euclidian distance between a sensor s and a target t.

Statistical channel models take into account non-deterministic characteristics of wireless communications. They consider that the coverage area of sensors is not uniform; it varies depending on obstacles, interference, signal fading, etc. They introduce the concept of transition regions where f(st) (Eq. 1) takes values form 0 to 1.

In the work presented in this paper, we use the UDG model. This model is known to be extremely useful for simplifying the analysis of large graphs [32]. Our work has as its final goal to be extended to the deployment of sensors for monitoring pollution in big cities.

We formulate sensor deployment for target coverage in the following manner. There are m targets \(T~=~\left\{ t_j, j\in \{1,\ldots ,m\}\ |\ t_j \text { is the target indexed by }j\right\} \) where each target has a definite location within a given square region. The objective is to find the locations of n \(\left( n\le m\right) \) sensor nodes \(S =\{s_i, i\in \{1,\ldots ,n\}\ |\ s_i \text { is the sensor indexed} \mathrm{by }\; i \}\) in such a way that the number of sensors can be minimized and each target is monitored by at least one sensor node.

To extend the network lifetime for target coverage, the technique usually used is to deploy a large number of sensors and activate redundant sensors at different times, so that the maximum number of cover sets (disjoint or not) can be formed. Alternating the sleep and awake phases leads to save energy consumption. Thus, in this work, we try to favor the redundancy of sensors to cope with the energy preservation.

3.2 Problem formulation

Sensors placement problem is NP-hard. This has been pointed out in [2, 3]. To tackle it, a good identification of parameters among a lot that exist need to be done to reduce the size of the problem. Thus, we need to select parameters able to perform both efficient sensor deployment and network lifetime extension. Because of the complexness of the problem, approximation algorithms need to be used for the resolution. Genetic algorithms are part of these algorithms. Their implementation requires to design objective functions. The objective functions allows to evaluate the quality of solutions with respect to the considered problem. To set up the objective functions of the model, we include the following definitions:

  • I a possible solution of the problem.

  • \(\delta _{ij}\) denotes the variable that equals to 1, if the sensor \(s_i\) covers the target \(t_j\) and 0 otherwise.

  • fsensors(I) the number of free sensors in the solution I. A sensor is considered as free if it does not cover any target.

  • \(uncovered\left( I\right) \) the number of uncovered targets in the solution I.

  • \(\theta \left( s_i\right) \) denotes the variable that equals to 1, if \(s_i\) does not cover any target, and 0 otherwise.

The objective functions used by the genetic algorithm to solve the problem are given by Eq. (2):

$$\begin{aligned} \left\{ \begin{array}{r c l} f_0 &{}: \,&{} \mathrm{{uncovered(}}I\mathrm{{)}}\;\;\text { to minimize}\\ f_1 &{}: \,&{} \mathrm{{fsensors(}}I\mathrm{{)}} \;\;\;\; \text { to maximize}\\ \end{array} \right. , \end{aligned}$$
(2)

where

$$\begin{aligned} \mathrm{{uncovered(}}I\mathrm{{)}} = m-\sum _{j=1}^{m} \delta _{ij}, \end{aligned}$$
(3)
$$\begin{aligned} \mathrm{{fsensors(}}I\mathrm{{)}} = \sum _{i=1}^{n} \theta \left( s_i\right) . \end{aligned}$$
(4)

\(f_0\) defines the number of uncovered targets in the solution I, and \(f_1\) the number of free sensors.

3.3 Pareto front analysis

For our optimization problem, the expected shape of the Pareto front is illustrated in Fig. 1. \(X_A\) and \(X_C\) are extreme solutions. Solution \(X_A\) provides complete coverage (since \(f_0(X_A)=0\)), but few free sensors. Solution \(X_C\) as all free sensors (hence, no sensor in the cover) and no covered targets. The solution \(X_B\) is a balance between the number of free sensors and the number of uncovered targets.

Fig. 1
figure 1

Expected shape of the Pareto front

3.4 Evolutionary approach

3.4.1 Evolutionary framework

Evolutionary algorithms are stochastic optimization methods that are based on the theory of natural evolution proposed by Charles Darwin. This theory relies on the idea that individuals who best fit their environment have more chance to survive and to reproduce. Through the reproduction process, parents transmit their characters to their children. This theory is transposed in the optimization field. Individuals are represented by solutions and the environment is replaced by the problem definition. At the beginning of the optimization process, a solution set (population) is generated. These solutions are evaluated using some objective functions to determine their ability to solve the problem. Thereafter, some solutions are selected for the recombination step. This selection is based on the quality of the solutions: good solutions will have greater probability of being selected. Thus, good characters (or genes) will be transmitted from parents to offspring (new solutions). The main reproduction steps are crossover and mutation. Finally, a replacement strategy allows to regulate the population size. The goal here is to choose among parents and offspring who will survive. All these steps are repeated over generations until a stop criterion is met (for example, a number of evaluations or a convergence metric).

Since the main goal of this paper is the sensor deployment, it does not intend to introduce a new evolutionary algorithm. Hence, the well-known multi-objective algorithms NSGA-II, SPEA2, SMSEMOA, MOEA/D  [3336] are used, because they give good results in various types of optimization problems, and especially when dealing with multiple objective functions

Applying an evolutionary algorithm to solve a given problem requires firstly to design a chromosome representing the solution of the problem.

3.4.2 Chromosome encoding

The topic addressed in this paper aims to find the good positions of sensor nodes. To achieve this goal, we consider that each sensor \(s_i\) of a solution I is characterized by two information: its coordinates \(\left( x_i , y_i \right) \) in the plan. Therefore, we design a solution (chromosome) as a vector of integers of size \(2\times m\), where m represents the initial number of targets. The genes representing the coordinates of sensor \(s_i\) take the values between 0 and the length of side of the square region defining the sensor field. An example of the structure of chromosome is shown in Fig. 2 where we have five sensors. The coordinates \(\left( x_1, y_1\right) \) of sensor \(s_1\) are expressed by the couple \(\left( 89, 69\right) \) for example.

Fig. 2
figure 2

Chromosome encoding

3.4.3 Population initialization

The initialization phase involves generating initial solutions, which can be done by a dedicated heuristic or by randomly assigning values to the genes of the chromosome. In the initialization phase, for a population of size N, we randomly generate \(N-1\) solutions (they may or may not cover all the targets). Thereafter, we generate a single solution that guarantees the coverage of all the targets. We empirically observed that adding this solution improves the exploration of the search space.

3.5 Test data set

Since the minimum number of sensors can give the information about the network lifetime extension and the investment cost, we investigated here how to calculate it. For this purpose, we used four types of square regions as sensor fields. The sensing radius is equal to 75 m. Seven random test instances given in Table 1 were generated. For each test instance, the algorithms are executed 30 times for each target locations. At each execution, the number of uncovered targets and the number of free sensors are saved. The monitoring area is a square region that varies from 500 to 5000 m. In the first group of the test instance, the number of targets is 25, the number of sensors is 25 and the region varies from 500 to 1000 m with increments 500. The second group of the test instance uses 50 targets, 50 sensors, and the region that varies from 1000 to 1500 m with increments 500. In the third group of the test instance, the region is 5000 m \(\times \) 5000 m (\(25~\mathrm{{km}}^2\)), and the number of targets (receptively, the number of sensors) varies from 100 to 200 with increments 50.

Table 1 Test instances

4 Experiments

In this section, we describe the experiments we conducted to assess the validation and the efficiency of the proposed model. First, we show the optimal results obtained with the best multi-objective algorithms,.ie., NSGAII. Second, we detail the comparison results between methods. And third, we present the results provided by indicators such as inverted generational distance (IGD), spread and hypervolume. The parameters of multi-objective algorithms used in the simulation are summarized in Table 2.

Table 2 Parameters of NSGAII, SPEA2, SMSEMOA, MOEA/D

4.1 Performance indicators

The indicators we used to compare the set of solutions of different algorithms are described in this section. Let l be the number of objectives ; let us set \(P^*\), P to be, respectively, the Pareto-optimal and the Pareto front returned by an algorithm. Let \(x_i\) be the solution of the problem.

The Inverted generational distance (IGD) [37] is an indicator of convergence. The best algorithm is the one associated with the smallest value of IGD. The IGD computes the lowest distance form every point of \(P^*\) toward each point of P, as follows:

$$\begin{aligned} \mathrm{{IGD}} = \frac{\left( \sum \nolimits _{i=1}^{\left| P^*\right| }d_{l}^{*}(\vec {x_{i}^{*}})\right) ^{1/l}}{\left| P^*\right| }, \end{aligned}$$
(5)

where

$$\begin{aligned} d^{*}_{l}(\vec {x^{*}_{i}})=\min ^{|P|}_{j=1}\sqrt{\sum ^{l}_{k=1}(f_k(\vec {x^{*}_{i}})-f_k(\vec {x_{j}}))^2}. \end{aligned}$$
(6)

The distribution of the solutions into the Pareto front is evaluated by the spread. The spread uses the minimal distance between two consecutive solutions to assess the distribution of the solutions in the search space [37]. The best algorithm in terms of spread is the one associated with the lowest value of spread. Equation (7) gives the expression for the spread.

$$\begin{aligned} S=\sqrt{\frac{1}{|P|}\sum ^{|P|}_{i=1}(D_i-\overline{D})},\;\; \overline{D}\text { is the mean of }D_i, \end{aligned}$$
(7)

where

$$\begin{aligned} D_i=\min ^{}_{j\in P\wedge i\ne j}\left( \sum ^{l}_{k=1}\left| f_k(\vec {x_i})-f_k(\vec {x_j})\right| \right) . \end{aligned}$$
(8)

To measure the volume covered by each point of P in the objective space, we choose a reference point \(\vec {W}\) and define \(v_i\) to be the rectangular region whose diagonal is given by the segment \([\vec {x_i},\vec {W}]\). The hypervolume indicator is defined as the volume of the union of \(v_i\) for all i in P[37]:

$$\begin{aligned} \mathrm{{HV}}=\mathrm{{volume}}\left( \bigcup ^{|P|}_{i=1} v_i\right) . \end{aligned}$$
(9)

The hypervolume indicator measures both the convergence and the diversity. A bigger hypervolume indicates a better algorithm.

4.2 Validation tests

For all figures of sensor deployment presented in this section, the red stars indicate targets deployed into the monitored area. Free sensors and sensors included in the cover solution are represented by red and blue circles, respectively.

4.2.1 Simulation for test instance S1-25

Figure 3 shows the Pareto front of the present test instance where each solution is a couple of the number of uncovered targets and the number of free sensors. To illustrate the distribution of the sensor nodes in the sensor field, among the solutions in the Pareto front, we take the one which has \(f_0=0.0\) and \(f_1=18\) in this case. Sensor deployment with free sensors and without free sensors is shown in Figs. 4 and 5, respectively. Figure 4 clearly shows that the position assigned to the sensor takes into account the targets within its vicinity. We can also observe that we need only seven sensors to cover all targets. Thus, because the initial number of sensors was 25, we can say that the number of disjoint cover sets can be 3.

Fig. 3
figure 3

Pareto Front for test instance S1-25

Fig. 4
figure 4

Sensor deployment for test instance S1-25 with 18 free sensors

Fig. 5
figure 5

Sensor deployment for test instance S1-25

4.2.2 Simulation for test instance S2-25

The Pareto distribution of S2-25 is presented in Fig. 6. The minimum number of sensor nodes returned is 15. This value is obtained by selecting the solution in the Pareto front where the value of \(f_0=0.0\), i.e., \(f_0=0.0 \) and \(f_1=15.\) Figures 7 and 8 illustrate, respectively, sensor deployment with free sensors and without free sensors. For this test instance, the number of cover sets can be 1.

Fig. 6
figure 6

Pareto Front for test instance S2-25

Fig. 7
figure 7

Sensor deployment for test instance S2-25 with ten free sensors

Fig. 8
figure 8

Sensor deployment for test instance S2-25

4.2.3 Simulation for test instance S1-50

The Pareto front and sensor deployment obtained are given in Figs. 9 and 11, respectively. Figure 10 shows the sensor deployment with 30 free sensors. The minimum number of sensor nodes obtained is 20. As the initial number of senors is 50, two disjoint cover sets can be found.

Fig. 9
figure 9

Pareto Front for test instance S1-50

Fig. 10
figure 10

Sensor deployment for test instance S1-50 with 30 free sensors

Fig. 11
figure 11

Sensor deployment for test instance S1-50

Fig. 12
figure 12

Pareto Front for test instance S2-50

Fig. 13
figure 13

Sensor deployment for test instance S2-50 with 21 free sensors

Fig. 14
figure 14

Sensor deployment for test instance S2-50

Fig. 15
figure 15

Pareto Front for test instance S1-100

Fig. 16
figure 16

Pareto Front for test instance S1-150

Fig. 17
figure 17

Pareto Front for the test instance S1-200

Fig. 18
figure 18

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S1-25

Fig. 19
figure 19

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S1-50

Fig. 20
figure 20

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S2-25

Fig. 21
figure 21

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S2-50

Fig. 22
figure 22

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S1-100

Fig. 23
figure 23

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S1-150

Fig. 24
figure 24

Pareto front obtained by NSGAII, SPEA2, SMSEMOA and MOEA/D for test instance S1-200

4.2.4 Simulation for test instance S2-50

In Fig. 12, we present the Pareto front. Figures 13 and 14 are dedicated for sensor deployment. The optimal number of sensor nodes found is 29. Thus, only one disjoint cover set can be generated from the initial sensors.

4.2.5 Simulation for test instance S1-100, S1-150, and S1-200

When the number of target is equal to 100, 150 and 200, the illustration of sensor deployment is no longer visible. From the Pareto front in Figs. 15, 16 and 17, we observed that the minimum number of sensors needed are 90, 128 and 167 for test instances S1-100, S1-150 and S1-200, respectively.

4.3 Comparative study of Pareto fronts

This section compares the performance of multi-objective algorithms NSGAII [33], SPEA2 [34], SMSEMOA [35] and MOEA/D [36]. The seven test instances are those presented previously in Table 1.

Figures 18, 19, 20, 21, 22, 23 and 24 show that NSGAII always gives the best Pareto front for all test instances. The performance of NSGAII is nearly matched by SPEA2 in almost all cases. For test instances S1-100 to S1-200, Figs. 22, 23, and 24 show that MOEA/D gives the poorest Pareto front.

4.4 Indicators study

In this section, we use IGD, spread and hypervolume indicators to compare the performance of NSGAII, SPEA2, SMSEMOA and MOEA/D. We keep the same test instances and algorithm parameters presented previously.

Tables 34 and 5 compare means and standard deviations for IGD, spread and hypervolume, respectively. Except for test instance S1-100, Table 3 illustrates that for over all test instances, NSGAII achieves lower standard deviations and means in IGD than SPEA2, SMSEMOA and MOEA/D. In Table 4, the best values of spread are provided by SMSEMOA followed by SPEA2. Table 5 indicates that NSGAII provides the best values of hypervolume on most test instances.

The simulation results can be summarized as follows:

  • For cases with few targets, all algorithms find solutions which cover all targets. This also occurs when targets are close to each other.

  • When the region size grows, the density of targets decreases and thus the number of sensors required to maintain full coverage of targets grows (see Figs. 5, 8, 11 and 14).

  • Statistical analysis from Tables 3, 4 and 5 shows that NSGAII provides better results in comparison to SPEA2, SMSEMOA and MOEA/D. IGD and hypervolume indicator results support this conclusion.

Table 3 IGD. Mean and standard deviation study between NSGAII, SPEA2, SMSEMOA and MOEA/D
Table 4 Spread. Mean and standard deviation study between NSGAII, SPEA2, SMSEMOA and MOEA/D
Table 5 Hypervolume. Mean and standard deviation study between NSGAII, SPEA2, SMSEMOA and MOEA/D

5 Conclusion

In this paper, we optimize the locations of sensor nodes for target detection using multi-objective evolutionary algorithms such that the number of sensors is minimized while maintaining good target coverage. We have formulated the sensor deployment problem as a multi-objective optimization problem which includes two main objectives: (1) maximize the number of free sensors and (2) minimize the number of uncovered targets. Computational results were used to validate the proposed model. The comparative studies between various multi-objective evolutionary algorithms show that NSGAII outperfoms other algorithms and can converge to the approximate Pareto front. Our future work will improve the proposed model and extend it to solve the problem raised in this paper when different types of sensors are used. It would be also interesting to investigate how to use variable-size chromosomes to address very large-scale applications of sensor networks. The principal challenge here is to design an approach with low computational complexity.