Abstract

Resource efficiency in wireless ad hoc networks has become a widely studied NP-problem. This problem may be suboptimally solved by heuristic strategies, focusing on several features like the channel capacity, coverage area, and more. In this work, maximizing coverage area and minimizing energy consumption are suboptimally adjusted with the implementation of two of Storn/Price’s Multiobjective Differential Evolution (DE) algorithm versions. Additionally, their extended representations with the use of parameter into the mutation operator were also evaluated. These versions optimize the initial random distribution of the nodes in different shaped areas, by keeping the connectivity of all the network nodes by using the Prim–Dijkstra algorithm. Moreover, the Hungarian algorithm is applied to find the minimum path distance between the initial and final node positions in order to arrange them at the end of the DE algorithm. A case base is analyzed theoretically to check how DE is able to find suboptimal solutions with certain accuracy. The results here computed show that the inclusion of and completion of the algorithm, where the area is pondered with 60% and the energy is pondered with 40%, lead to energy optimization and a total coverage area higher than 90%, by considering the best results on each scenario. Thus, this work shows that the aforementioned strategies are feasible to be applied on this problem with successful results. Finally, these results are compared against two typical bioinspired multiobjective algorithms, where the DE algorithm shows the best tradeoff.

1. Introduction

Nowadays, it is well known that the distribution of sensors in a wireless ad hoc sensor network (WAHSN) is a challenge in the research of wireless communications, because it is necessary to increase both lifetime and coverage area demand of the network. Furthermore, it is required to avoid a weak connectivity.

A WAHSN contains a number of geographically dispersed mobile sensors. Each sensor node has wireless communication, collaborative signal processing, and network capabilities subject to some technical constraints. The mobile sensor nodes are free to move and self-organize in an arbitrary way while the communication is made via radio transceivers. Therefore, a WAHSN is able to determine the value of different parameters such as temperature and geographic coordinates of a given location, detect the occurrence of events, classify a detected object, and track an object. In consequence, it is necessary that the required data be disseminated to the proper end users [1, 2]. It is important to remark that wireless sensor networks (WSN) are a type of ad hoc network composed of a large number of sensor nodes, which are densely deployed either inside the sense perception area or very close to it. The nodes are not connected to each other. Basically, they are stationary or at most slowly moving [1]. In contrast, a mobile ad hoc network (MANET) is an autonomous collection of mobile users connected by one to one wireless links. The MANETs topology may change continuously in an unpredictably way over time. The mobile nodes in MANETs can renew, replace, or recharge their batteries or source of energy. Although WAHSNs, WSNs, and MANETs involve multihop communications, many end-to-end routing schemes proposed for MANETs are inappropriate for WAHSN and WSNs for the previously mentioned reasons [3]. Nevertheless, sensor distribution schemes between WAHSNs and MANETs can be compared. A key factor that distinguishes the WAHSNs from MANETs is that the end goal is detection and estimation of some events of interest and not just communication [1, 2].

In spite of the fact that our work is applicable to WAHSNs, MANETs, and also WSNs under certain modifications, the analysis on WAHSNs due to some characteristics and resource constraints such as energy, coverage area, and connectivity optimization is made.

Sensor distribution is one of the fundamental problems in WAHSNs and regularly has been suboptimally solved by heuristic strategies such as genetic algorithms, among several others as shown by [48]. It is worth mentioning that sensor distribution with minimum energy connectivity is an NP-complete problem [912]. In the literature, different strategies for wireless ad hoc and sensor networks related to topology control [2], node localization [13, 14], distributed coverage [15], and network lifetime [16] are described to provide solutions for sensor distribution, coverage area, and energy consumption problems. Additional related problems in wireless communication such as frequency allocation and interference have been also solved by bioinspired algorithms as it is reported in [17, 18] or in [19], where the authors show an efficient way of solving the minimum number of hops among nodes to be communicated.

To optimize the sensor distribution, DE algorithm is used. DE is a very simple but very powerful stochastic global optimizer for a continuous search domain. It was proposed by [20] and represents a very complex evolution process. Cleverly using the differences between the populations, a simple but fast linear operator called differentiation is created, which makes DE unique. A survey of the applications of DE to different optimization problems shows that DE generally outperforms other evolutionary algorithms [2123]. An updated reference with novel DE algorithm versions and additional applications are found at [24, 25]. DE exploits a population of potential solutions to effectively probe the search spaces. The algorithm is initialized with a population of random candidate solutions, which are conceptualized as individuals. In this work, an individual includes the coordinates of the sensor nodes followed by its communication radii values. For each individual in the population, a descendant is created from three parents. One parent, called the main parent, is disturbed by the vector of the difference of the other two parents. If the descendant has a better performance as measured by the objective function, it replaces the individual; otherwise, the original individual is retained and is passed on to the next generation of the algorithm and the descendant is discarded. This process is repeated until it reaches the termination condition. For a complete theoretical analysis of the DE algorithm, the reader is referred to [20].

Node distribution optimization in mobile sensor networks is presented in [26], where they analyze the sensor network coverage area and its coverage redundant area using DE. Moreover, the optimal power allocation in WSNs using DE is given in [27]. Also, in [28], DE is applied to maximize the lifetime of the WSNs using disjoint sets of sensors to cover a set of targets. However, it is important to mention that [2628] do not consider ad hoc sensor networks. They use the DE algorithm only for WSNs. On the other hand, a DE based topology control mechanism in MANETs is presented in [29] to deploy the nodes with the maximum coverage area. Here, the topology control is managed with the use of a Markov chain model. A similar approach is followed in [30] to evaluate the node distribution, but now based on Voronoi regions for each node. However, [29, 30] do not consider optimization of energy consumption for maintaining the network connectivity and coverage area simultaneously in a multiobjective fitness function.

The approach followed in [31] analyzed the coverage area of sensor networks, where the main goal is to maximize the coverage area in presence of obstacles such as walls. In [32] the same approach of maximizing the coverage area in the presence of obstacles is extended, including the energy consumed in the objective function. The redundant area is also considered in the objective function. In [33], an improved DEA version based on a best-optimal-solution sorting technique is compared with the classical DEA and the Nondominated Sorting Genetic Algorithm II (NSGA-II), showing that the first one has the best performance when computing the coverage area. Additionally, the number of nodes needed to obtain the maximum coverage area is diminished to determine the minimum feasible. In [34], the coverage area is optimized by using the improved versions of DEA such as the Self-Adaptive Differential Evolution (jDE) and the Adaptive Differential Evolution (JADE). As expected, the jDE and JADE have better performance than the classical DEA versions. In [35], DEA is applied for node position estimation in convex and nonconvex configurations.

Other aspects of wireless sensor networks can be tackled by implementing other bioinspired algorithms. For instance, in [6], the coverage area is optimized with Particle Swarm Optimization (PSO). Coverage area and energy are considered in a multiobjective version of PSO as shown in [5], where the parameters are controlled with a clustering approach. For routing management, Ant Colony is implemented in [36] as well as in [8]. Routing is also solved by the Strength Pareto Evolutionary algorithm (SPEA2) as shown in [37]. Optimal path problem is treated in [38], where DEA is the best solution compared to the classical PSO and GA strategies. Node anchors can be deployed with bioinspired techniques as shown in [39] with Ant Colony. Such scenario is found when RFID readers are deployed to detect tags. In [40], a combination of GA and PSO is generated to do so.

Additionally, in [41], two multiobjective algorithms are compared, the Multiobjective Simulated Annealing (MOSA) and NSGA-II. Such comparison is done to determine the algorithm that gives the best distribution output with fewer nodes. In [42], two algorithms are compared to solve WSN scenarios: SPEA2 and NSGA-II. The objective function includes the energy consumption, the coverage area, and the network reliability, where the energy component is analyzed against the elapsed time. For scenarios where the complexity is increased, SPEA2 is better than NSGA-II and vice versa. In [43] different WSN scenarios are tested, where NSGA-II and Learning Automata (LA) are combined to create a hybrid multiobjective algorithm. This hybrid version outperforms NSGA-II. The main goal is to minimize the number of active sensors that cover the maximum possible area and minimize the energy consumption while maintaining the network connectivity. In [44] the Multiobjective Evolution algorithm based on Decomposition (MOEA/D) and NSGA-II are compared to determine which is the best option to maximize the coverage area and minimize the energy consumption in WSN, where it is claimed that MOEA/D gives better results than NSGA-II. In [45], three optimization strategies are evaluated, the Multiobjective Particle Swarm Optimization (MOPSO), NSGA-II, and a proposed optimization denoted as Heuristic 3-Phases (H3P). H3P is formed by 3 steps: clustering, Pareto construction, and disassembly. The goal is to minimize the number of sensors when maximizing the number of targets to be detected, where H3P presents the best performance among the presented optimization strategies. In [46], NSGA-II is implemented and compared with MOEA/D to obtain the best routing combination by minimizing the energy consumption while detecting a large number of targets as possible, where it is shown that NSGA-II is better than MOEA/D. In [47], a discrete DEA version and NSGA-II are implemented to reach the best compromise among three goals: the delay of a packet from the origin to the destiny in the network, the packet delivery ratio, and the flow conservation. It is done to help the routing process with time efficiency, where it is shown that DEA outperforms NSGA-II. A detailed survey for more available techniques applied on WSN can be consulted in [48].

Compared to the existing bioinspired techniques in the open literature [26, 32] and the method here presented, the followed approach is based on a simplified version of the MOEA/D techniques presented in [49], where a set of weights is assigned on each function to be optimized and the summation of them is equal to 1. Such variant is known as Weighted Sum Approach [49, 50]. For the sake of clarity, the method here implemented is denoted as Multiobjective Differential Evolution algorithm (MODEA).

MODEA is applied to the optimization of network energy consumption to maintain the network connectivity and network coverage area in WAHSNs, following a convex model [35]. The algorithm makes sensor radius adjustments and assumes the mobility of the sensors in order optimize two objectives: maximizing the network coverage area and reducing network energy consumption. It is worth mentioning that consequently also the network lifetime is extended.

Additionally, the proposed algorithm emphasizes the successful communication between sensors in a given neighborhood, with the use of the Prim–Dijkstra algorithm described by [51, 52]. If a tree is not created, the nodes distribution is discarded even when the network fulfills the rest of the restrictions regarding area, energy, and bounds on different shaped areas. Also, the Hungarian algorithm [53] is used to find the shortest distance between the initial and the final node positions. This information is important for the case of having mobile ad hoc sensors; each node knows where to move with the minimal distance.

A summary of the employed techniques and the involved parameters is shown in Table 1.

The rest of this paper is organized as follows: Section 2 presents the methodology. Section 3 describes theoretical models to find the energy lower bound and coverage area’s upper bound. Section 4 develops and explains the MODEA for wireless ad hoc sensor distribution. Section 5 provides numerical results and a discussion. Finally, Section 6 gives the conclusions and some future research directions.

2. Description of the Method

2.1. Sensor Coverage Model

The coverage area of a sensor is the region within which the sensor is able to detect or analyze the sensing parameters. There exists a special interest in the sensor distribution for which communication with neighboring nodes is more energy efficient. Also, it is assumed that the coverage radius of each sensor helps to determine its communication link distance through minimum spanning tree to any of its neighbors, and it depends on the kind of sensors considered. Additionally, the sensor distribution on different shaped areas is considered. The main objective of the sensor coverage model is to achieve a balance between the maximum effective coverage area and the minimum communication sensor energy.

According to [26], the node set on the target area grid can be defined aswhere is the cardinality of .

The coverage range of a node can be expressed as a circle centered at its coordinates with sensing radius . The coordinates express the position of sensor nodes and the subindex represents the sensor node index. A grid point is covered by a sensor node if and only if its distance to the center of the circle (2) is not larger than the sensing radius :

First of all, a binary detection model is considered. A random variable is introduced to describe the event in which the sensor node covers a given point . The probability of the event , , is equal to the coverage probability . This probability is a binary valued function such as

This model is applied in all cases in Section 5. It is clear that a point should be evaluated against all the nodes present in the network; thenwhere is the number of times that the coordinate is covered by the node set.

Nevertheless, to obtain the proper covered area by the set of nodes, the function is computed to verify if the coordinate is covered at least once or if it is not covered at all .and then the covered area is computed as

Equation (6) is implemented in our simulation by sweeping all the points of the target area . For different area configurations, this area is replaced by the bounded area of interest.

2.2. Energy Consumption

There are models for efficient energy consumption in MANETs [5], WAHSNs [10], WSNs [54], and many others. The energy consumption model used in this work is based in [55], this model is also used in [26]. In order to show the optimization process in coverage area and energy consumption, the total energy for maintaining the network connectivity is considered as the total energy consumption of the network.where is the power per unit area in milliwatts per square meter (mW/m2), considering that the sensors are on the floor, is the sensor radius of the node in meters, and since the communication medium is the air (free space) [56]. In this paper, equals 0.005 (mW/m2). The path loss exponent takes different values according the environment. For urban area cellular radio , for shadowed urban cellular radio , for in-building line-of-sight from 1.6 to 1.8, for obstructed in-building from 4 to 6, and for obstructed in factories from 2 to 2.3, the power per unit area changes in a 3D environment to mW/m2, [56].

3. Base Case: Ideal Distribution of 10 Nodes into a Squared Area

In this section, the methods to obtain the energy and coverage area bounds are presented. In order to find these lower and upper bounds, an example of 10 nodes distributed in an area of  m2—see Figure 1—is considered. It is assumed that the sensors can have a transmitting radius between 6 and 8 meters. Details to compute these bounds are described in the following subsections.

3.1. Energy Lower Bound

The energy lower bound is easily calculated using (7) considering a radius of meters and mW/m2. For instance, assuming 10 nodes, the lowest allowed value for energy is  mW.

3.2. Area Upper Bound

The sensor distribution shown in Figure 1 is one among several that provides the nearest value to the maximum coverage area given by 10 nodes using a radius of 8 meters and including maximum three intersections of three circles. The main goal in proposing this case is their comparison to the suboptimal outputs derived of MODEA by having all the nodes’ radii equal to 8 meters. If these suboptimal solutions are near to this theoretical case, then the application of MODEA will be considered feasible. Figure 1 is used as the base case model to determine its theoretical area upper bound.

At the top corners of Figure 1, the overlap of three circles is observed. Figure 2 shows the details of these three overlapped circles. The covered area of these three circles represents in this paper the coverage area of three overlapped wireless sensors. The set theory helps to determine the total area in a union of sets when some of the sets overlap. To obtain the covered area of the union of three overlapped circles, the inclusion/exclusion rule is used. This rule establishes that the area of the three circles is computed at the beginning. After that, all the intersection areas between two circles , , are subtracted. At the end, the intersection area of the three circles is added [57, 58]. The equation of the area of the three circles iswhere , , and .

This result is then used to determine the area of the base case model of 10 sensors. For this model, the area of 10 sensors is computed; then, the nine intersection areas between two circles similar to and the two intersection areas between two circles similar to are subtracted; and, finally, the two intersection areas of three circles are added.

It is important to remark that for any finite number of overlapped circles, the covered area can be seen as a set of circles with intersections and is obtained by the use of the expression [57] as

According to [59], it is possible to preserve two communication links with an angle of with the minimum power required, but it is valid for directional communication. For omnidirectional communication, it is not necessary. To obtain the maximum coverage area, it is well known that the hexagon configuration is the ideal distribution, where the angle presented on each vertex is equal to , but it is valid for circles with equal radius and where there is not a neighbor circle covering each node. Nevertheless, for our case, we have a set of circles with different radius and where each node is covered by at least a neighbor circle.

Now, to find the total area of Figure 1, first find the area of 10 independent circles given byand then use the intersection between two circles denoted as , [60].where is the distance between the centers of the two circles. Assume , ; therefore . Observe that Figure 2 shows the variables of this equation where is the width of the intersection and . Now assuming an intersection with , the intersection area ( and ) or ( and ) [60],

The area of intersection ( and ), denoted as is an intersection where , [60],

Figure 2 shows the intersection area between three circles denoted as . This area is known as a circular triangle, which is a triangle with arc shaped sides . The area can be obtained using the radius and the length of the three arcs as shown in Figure 2. The area is given by the following equation [61]:where , , , ,and .

The appendix shows how the equation for is obtained:

Therefore, the coverage area upper bound of ten wireless sensors as shown in Figure 1 is given by

With the completion of this analysis, it is possible to obtain the coverage area upper bound, 1286.7 m2. In Section 5, the values obtained with the DE algorithm are compared to the bounds.

4. The Multiobjective Differential Evolution Algorithm (MODEA) for Wireless Ad Hoc Sensor Distribution

It is well-know that the DE algorithm [20] begins with an initial population of individuals and then iterates to build new populations until a good solution is found. In DE an individual is a vector of the dimension of the problem . The individuals characterize specific solutions to the problem under study. In this paper, the vector dimension contains the coordinates of the sensor nodes followed by their radii values. Considering that there is not information with respect to the optimal solution, the initial population is built in random manner. DE makes repeated cycles of recombination and selection to move the population in the direction of the vicinity of a global optimum. Probability operators (crossing and mutation) are used to each individual in a population to create new individuals (children). The new individuals have some of the features of their ancestors. The ancestors are retained or removed by selection. The term generation is applied to designate the conversion of all individuals into new ones. In other words, to move from one population to another.

The DE algorithm iterates for a limited number of generations, . It is important to mention that DE has three key control parameters: the mutation constant , which controls the mutation strength, the recombination constant , and the population size . The parameters and take values in the interval . During the course of the execution process, the user establishes the population size . At each generation, all individuals in the population are evaluated in turn; in DE’s literature, the individual being evaluated is named the target vector. Three other individuals are randomly selected from the population and are mixed with each other: this operation is known as mutation and generates a mutant individual vector. The mutant individual vector is then mixed with the current target vector by an operator named recombination: the result of this recombination process is a vector named the trial vector.

Finally, the selection operator is used. If the trial vector improves the objective function then it is accepted and replaces the current target vector in the new population that is being built. Else, it is rejected and the current target vector passes on to the next generation; in this situation the trial vector is not kept.

The following is a description of the operators utilized in the DE algorithm that obtains the most promising region in the search space.

4.1. Objective Functions

In this research work, the DE algorithm seeks to achieve a balance between the maximal effective coverage rate and the minimum sensor power communication . To translate the network coverage rate into minimal functions, the opposite effect of the coverage rate is used. Thus, the network effective coverage rate is then defined byand the minimum network energy communication is obtained by

The values of and are part of the fitness function for measuring the result. A linear combination of the objective functions transforms the original multiobjective function into a single-objective function as follows:where are weight coefficients expressing the relative importance of each objective function and is the number of objective functions that form the total objective function .

4.2. The Fitness Function

The fitness function is given byhere and represent weight coefficients and is the normalization coefficient of . Note that is already a normalized function (18) due to the fact that it takes only values between to . To normalize the second term, it is necessary to use the following equation:where is the maximum sensor radius in meters (m).

Consider ; therefore if , , then the fitness function optimizes the network effective coverage rate. Conversely if , , then the fitness function optimizes the energy consumption of signal detection. The normalized terms of (21) make it possible to get the same order of magnitude. The overall value of the fitness function is in the interval . Obviously, the smaller the value of , the better the node location distribution and the lower the power communication consumption as well.

4.3. The Mutation Operator

For each target vector , , the mutant individual is created with the following equation [23]:where : . Here, , , and are three random individuals from the population, mutually different and also different from the current target vector , and is a scaling factor named the mutation constant which must be . The mutation operator is utilized to manage the magnitude of the difference between two individuals. This operator manages the tradeoff among exploitation and exploration on the search process. This operator is the one guiding the convergence of the algorithm. This version is known as DE/rand/1 version. Aside, there is another version like the one shown in [20, 22, 62]where the best vector among the population is chosen instead of obtaining it randomly. Expression stated in (24) is known as DE/best/1 [20, 22, 62].

4.4. The Recombination Operator

The recombination operator is applied to increment the diversity in the mutation process. This operator is the final step in the creation of the trial vector. To create the trial vector, the mutant individual is combined with the current target vector. In particular, for each component , where , of the mutant individual, a random number rand in the interval is selected. Then, the recombination constant and rand are compared in order to check if . Equation (25) briefly shows that if the aforementioned condition is false, the th element of the target vector is selected as the th element of the trial vector. Otherwise the th element of the mutant individual is selected as the th element of the trial vector [23].

The reader is warned that a large value for helps to avoid the cancelation of the mutation operation. Otherwise, would become useless in its application on (25).

4.5. Application of the Prim–Dijkstra Algorithm

The nodes’ locations are validated considering the distance communication constraint. The communication range distance equal to the sensor coverage radius is used. To satisfy this constraint, the Prim–Dijkstra algorithm is applied [51]. The input to the algorithm is a root node from the set of nodes. This root node may act as the information concentrator and is chosen arbitrarily by the network designer. An external controller starts the algorithm and the algorithm takes action based on each actual position of all nodes. The Prim algorithm [63] determines the minimum spanning tree (MST) whereas the Dijkstra algorithm [64] obtains a star topology. Prim–Dijkstra [51, 52] uses the location of the sensor nodes and obtains a topology that is a mixture of MST and a star topology. As mentioned before, information about the shortest sensor mobility is determined with the Hungarian algorithm [53] finding the minimum distance between the initial and the final node positions.

4.6. The Selection Operator

The last step of the algorithm is the application of the selection operator, where the fitness computed with the trial vector is compared to the fitness computed with the target vector . In a simplified way, (26) summarizes the aforementioned statement, where is chosen if its computed fitness is lower than the fitness computed on and vice versa.

Here, is the population of the next generation that changes by accepting or rejecting new individuals. The global best individual is retained at the end of each generation, to keep track of the best solution obtained when DEA is executed.

4.7. The Mutation Parameter

The parameter is responsible for the exploration and exploitation of the solution spaces. To fix the problem of stagnation for small values of , the parameter is added to (23). This parameter consists of a random number rand that multiplies the constant at each evaluation, [22, 65]. Equation (27) shows how the main operator changes with this addition:where rand is a random number in the range of that changes during the evolution process. By multiplying by rand, modifies its value. In this way, rand helps DEA to have a strong reduction of stagnation. Thus, it is also possible to achieve an improved convergence speed, as presented in Section 5. The same approach may be applied to (24) as shown in

4.8. Pseudocode for MODEA in a WAHSN

Employing these considerations, here the pseudocode for the MODEA is presented. The algorithm takes the initial parameters of DE, performs the mutation and recombination, validates the coordinates and the radius values, and, if necessary, updates the positions of some nodes. Thereafter, the links are created for each node, proceeding to form a tree, and in the case of nodes not connected to the tree, their positions and radii are updated. After a tree is obtained, the solution may be selected from the best trees generated, based on the best fitness value. The algorithm is considered and denoted as MODEA and also is summarized in pseudocode Algorithm 1. The details of the pseudocode are listed as follows:(1)MODEA starts with the following parameters: , , , .(2)Each individual of population starts as follows: ; ; and . Each .(3)Validate based on coordinates and for each member of is performed according to the boundaries, and . If or , (30) is applied to regenerate . If are outside the boundaries, are regenerated.(4)The Hungarian algorithm receives (the best result obtained from final population at the end of MODEA) and to determine the final position of the sensors regarding the initial positions .(5)The MST is formed by using central node , , and the distance to generate a link between the nodes as If or if there is a forbidden zone between the nodes, the link does not exist.(6)For each generation , all the individuals of population are updated according to selection operator.

(1) procedure MODEA
(2) Set the control parameters for MODEA;
(3) Create initial population;
(4) Evaluate fitness, area and energy of each member;
(5) for    do
(6) for    do
(7) Select from (see version: -R (Eq. (23)), -RM (Eq. (27)), -B (Eq. (24)), -BM (Eq. (28));
(8) Obtain mutation (see previous chosen version);
(9) Apply recombination to obtain (Eq. (25));
(10) Validate according to preliminary bounds;
(11) Update and radius (Eq. (30)) if needed;
(12) while a tree is not obtained do
(13) Validate ;
(14) Update and radius (Eq. (30)) if needed;
(15) Apply MST Prim-Dijkstra to array of links;
(16) if some nodes are not connected then
(17) Update position and radius (Eq. (30)) of unlinked nodes;
(18) else nodes are connected
(19) Tree has been built;
(20) end if
(21) end while
(22) Apply selection operator (Eq. (26));
(23) end for
(24) solution is obtained for fitness, area and energy;
(25) end for
(26) Apply Hungarian algorithm to regarding to ;
(27) end procedure

For simplification purposes, each MODEA version will be treated as follows for the next sections of this manuscript:MODEA rand (23) MODEA-R,MODEA rand (with ) (27) MODEA-RM,MODEA best (24) MODEA-B,MODEA best (with ) (28) MODEA-BM.

Figure 3 shows the parameter which scales the radius of the current node to separate it from the boundaries of the forbidden zone (see nodes and with their respective radii and ) and the limits of the area of interest. Even when and are close to each other, if there is a forbidden area between them, these nodes must use as the communication node. Throughout these restrictions, the nodes are separated while maintaining the MST. To separate the nodes from the main contour area , is used instead as a reference.

The MODEA (all rand and best versions and their corresponding versions) adjusts the radius value according to its rules and the given restrictions. The algorithm uses (30) to generate the radius adjustment when validating . In this algorithm, the radius of each population member starts at its maximum value; as a result, the average radius at the end of the generations is a value above the minimum radius.

5. Numerical Results and Discussion

The methodology followed in this manuscript was based on the one presented in [26]. Nevertheless, the treatment of the scenarios and constraints here presented were stated by following the convex configurations [35]. Compared to [26] and other similar works [34], the main differences are that the center of a circle should be inside in at least one of its neighbor circles, where all the circle centers must display a connected graph. The detailed rules are described in Section 4.8. This approach was adopted before testing more elaborated bioinspired techniques for future works, in order to have a baseline and then to determine the feasibility of MODEA with stricter constraints. A previous successful approach with the use of nonconvex constraints and obstacles can be seen in [32]. In future works, such elaborated bioinspired techniques will be tested (more details are available in the Conclusion).

The algorithm was implemented in MATLAB to optimize the distribution of sensors. The effective sensor radius was assigned between and meters, except the multiple-bounded case, where  m,  m. Different shaped-variant target zones were also tested. The same starting random node distribution was implemented on each scenario, with the purpose of having fair performance comparisons and the computation of the corresponding averages, that is, a unique starting node distribution for squared areas, a unique starting node distribution for polygons, etc., where it is clear that all the starting node distributions are not equal among the analyzed scenarios.

The control parameters were set as , , and , where and were assigned taking the best reported performance for both parameters in the open literature [62]. Figure 4 shows the results of the fitness function against the number of generations of MODEA-R, MODEA-RM, MODEA-B, and MODEA-BM. These tests are the average of 50 independent tests on a squared area of 40 m × 40 m, , with the maximum possible radius; that is,  m. Note that MODEA-BM outperforms MODEA-R, MODEA-RM, and MODEA-B obtaining the lowest fitness values. In this specific case, a value of is used to obtain a result near to the area with 10 nodes computed in Section 3.

Comparing the averages obtained among the four versions of MODEA shown in Figure 4, the authors of this manuscript decided to use MODEA-BM because the average obtained on all the 50 tested cases is the best. The best case for MODEA-BM among these 50 tests was obtained in the test , where the notation is denoted as . This choice was taken even when there is a best result obtained with MODEA-B. Even so, the previous mentioned results are consistent with those presented in [34], where MODEA-B became the best possible option by considering the classical MODEA variants presented in [20, 22].

Figure 5 shows the initial position of sensors randomly distributed. The sensor nodes are identified as , and the circles are the sensor ranges of the sensor nodes. As explained before, this starting node distribution was implemented for all the MODEA versions for all the 50 tests applied on this squared scenario.

Figure 6 shows the optimized sensor distribution using the initial sensor positions of Figure 5. Also, the wireless communication links between the nodes are shown. The presence of a link between two nodes in the network depends on the relative distance between them (lower than the minimum radius between two nodes).

Figure 7 shows the initial and final position of the sensors nodes, identified with the subindexes and , respectively. Note that the final node positions are at the shortest distance from the initial node positions. For mobile sensors, this information about mobility is useful to globally minimize sensor path distance. A minimum distance matching algorithm after MODEA-BM is used to obtain the minimum global traveled distance between the initial and the final node positions through the Hungarian algorithm, [53].

Table 2 shows a summary of the results obtained using the lower energy and the upper area bound equations presented in Section 3. Also, the results obtained with the MODEA-BM are shown for comparison purposes (case 23/50). The results obtained with the use of MODEA-BM are within 99.05% of the theoretical bounds (1274.6 m2/1286.7 m2). With the use of the parameter, the MODEA-BM algorithm has a high convergence speed and stagnation is avoided, as shown in (27). The upper bounded area is 80.41% of the total area to be covered (1286.7 m2/1600 m2); the computed area with MODEA-BM is 1274.6 m2 which represents 79.66% of the total area to be covered (1274.6 m2/1600 m2).

Now, in Figure 8 an analysis of the weights and of (30) and how these values affect the optimization of energy and coverage area is presented for MODEA-BM. It was done by following the methodology presented in [65, 66]. Here, varies from 0 to 1 in increments of 0.1; meanwhile the value of varies from 1 to 0 so that . The fixed radii curve shows the bounds comparison when the values of radii between and are equal. The variable radii curve shows the behavior of bounds comparison when the value of radii varies between  m and  m. Here, the observed trend is to maximize the coverage area; nevertheless the restrictions help to reduce the radii of the nodes. It was observed that values of and are able to produce results in which the covered area is maximized and, meanwhile, the energy is minimized. This is because those values are near to the case where  m for the fixed scenario. The results presented here are the average of 50 independent tests of for each point at each scenario. The tests to obtain the point , were performed independently of those used to compute the output for Figure 6.

5.1. Different Scenarios of Testing

Now the results of the algorithm MODEA-BM parameter applied to the sensor distribution problem in different shaped-bounded areas are presented. The number of nodes is obtained by incrementing the number of sensors depending on the coverage area. Using , , and , MODEA-BM was able to find good sensor distributions. For multiple-bounded case, . Restrictions were tuned and set to obtain a suboptimal result for each of the following scenarios. Figures 1116 were obtained by MATLAB with the command as described in the corresponding subsections. The best minimum fitness was considered for all the presented cases.

5.1.1. Scenario 1. Ellipse

To form the ellipse area shown in Figure 9, the parameters are , , , , , , , , where is the inner ellipse and is the external ellipse, displayed into an area of 50 m × 50 m. The corresponding equations are listed as follows:

It is observed in Figure 9 that the circles follow the contour of the given ellipses, maximizing the coverage area. The best minimum fitness was obtained for the test .

Figure 10 shows the total energy consumption of the best curved-bounded scenario. The covered area is more than while the energy is below 4 units. The fitness curve indicates how both parameters are evolving to be optimized. After 700 generations, the fitness curve becomes stable, maintaining the area/energy limit values also stable.

The line resolution between two nodes was left as 0.01. The complete circle contour was considered to determine the separation of the boundaries. That is, the angles to compute the radius circle were set as 0 : 0.01 : 360.

5.1.2. Regular Polygons, External Area

MODEA-BM is applied to the pentagon shown in Figure 11(b) and also to the triangle shown in Figure 11(a). The figures here exposed are obtained using the expression and the equations given below:where , , , in Figure 11(a) and , , in Figure 11(b). Vectors and define the vertices of the polygon. Both polygons are displayed into an area of 40 m × 40 m.

Figure 12 shows the area and fitness obtained for both scenarios. While for triangle the fitness converges before , for pentagon the fitness delays to converge before . For both cases, the coverage area is greater than .

Figure 13 shows the energy obtained for both scenarios. While for triangle the energy becomes stable after with 4 units, for the pentagon the energy holds the same after with 3.6 units.

The best minimum fitness was obtained as for triangle and for pentagon. To speed up the algorithm, each circle was sampled in angles as 0 : 45 : 360 to compute the radius. The line resolution between two nodes was left as 0.001 in order to detect forbidden crosses on the shaded area.

5.1.3. Irregular External Area

In this scenario, MODEA-BM is applied to the irregular area shown in Figure 14, which is obtained with where the user can choose the values of vectors and to generate the irregular polygon of Figure 14. This scenario is presented to show how the algorithm is able to work with true irregular areas. Figure 14 is formed by two linked irregular polygons. The figure is displayed into an area of 40 m × 40 m.

As shown in Figure 14, the algorithm prevents that links of the MST from crossing the small polygon, also keeping a distance between the nodes and the entire polygon. With 17 nodes, it is possible to cover more than 90% of the amorphous figure (Figure 15(a)) while the energy is below 4 units (Figure 15(b)). The best minimum fitness was obtained as .

To speed up the algorithm, each circle was sampled in angles as 0 : 90 : 360 to compute the radius. The line resolution between two nodes was left as 0.001 to check if a link crosses forbidden areas, specially the small triangle of the scenario.

5.1.4. Multiple-Bounded Area

A multiple-bounded area is shown in Figure 16 with a different radii values,  m,  m, for speeding up the computation of results. The number of tests here are equal to 20. All the polygons are displayed into an area of 40 m × 40 m. This case shows how the algorithm can be adapted to cover an area with multiple bounds (forbidden areas). These bounds represent a triangle, pentagon, star, and two rectangles. For instance, to get the star figure, the following parameters: , , , , , and (34) are used

Here, the algorithm is able to arrange the obtained MST as a contour to the given bounds, preventing MST links from crossing forbidden areas. This effect is seen in the case of the star, where the links of the nodes do not cross the peaks of the star. A similar effect is seen for the rectangles, where the nodes forming the circle go nearly in parallel with 24 nodes. This property is maintained even in the presence of the thinnest region that connects the star and the triangle, where there is no link that crosses it. Thus, it is possible to cover more than 90% of the area of Figure 16 (see Figure 17(a)) with less than 3.5 units of energy (see Figure 17(b)).

The best minimum fitness was obtained as . To speed up the algorithm, each circle was sampled in angles as 0 : 30 : 360 to compute the radius and the line between two nodes was sampled with 0.1 of resolution. When constructing the final MST, that line is sampled with 0.001 of resolution to detect if it crosses forbidden zones. The parameter guarantees that all the cases do not have issues with the line resolution when finishing MODEA-BM.

5.1.5. Summary of the Results

Table 3 shows a summary of the average area results obtained from the different figures comparing them with the maximum area to be covered. The results obtained using MODEA-BM parameter are very close to the area to be covered. On each case, 50 tests were made to obtain their mean and standard deviation, except for the multiple case, where only 20 tests were done. The energy for all the cases remains below 4 units, while the coverage area is greater than for the best solutions obtained. The computation of the average and standard deviation on the area parameter shows that the irregular external area case remains greater than with the lowest standard deviation, which is consistent with the fitness value . In contrast, the multiple case shows the worst average and the largest standard deviation (135.10) and also presents the largest fitness value with the largest standard deviation (8.00). Even so, for multiple case, MODEA-BM is able to obtain results where the covered area is greater than .

Table 4 shows the comparison of the DEA here proposed to well-known multiobjective optimization algorithms such as NSGA-II and MOEA/D. The authors modified the generic versions of both algorithms, where the corresponding source codes are available in [67]. The default configuration parameters were left unmodified except . Here, only the base case scenario was tested. For the sake of consistency and fairness, the same 50 tests were done for the following presented cases. For MODEA, the radii-variable coordinate obtained with and was included for the comparison (see Figure 8). For the other multiobjective algorithms, four different scenarios were tested. Here, is the nonnormalized version of and is the nonnormalized energy version of . Additionally, is the area to be covered and is given by (22). These variants are described as follows:(i)Version-I (V-I): the coordinates of the algorithm are tested without normalizing them. That means (ii)Version-II (V-II): the coordinates of the algorithm are tested, but in a normalized way as(iii)Version-III (V-III): each normalized coordinate is weighted by 0.5 as(iv)Version-IV (V-IV): the normalized area is weighted by 0.6. Meanwhile, the normalized energy is weighted by 0.4 as

According to the results shown in Table 4, MODEA presents the best average performance among all the cases, with exception of NSGA-II version V-I. NSGA-II V-I obtains a coverage area 4.53% larger than MODEA; however the energy is 10.15% larger. It is shown that MODEA is more efficient in terms of the energy consumption; meanwhile NSGA-II increases the coverage area but raises the energy consumption. The rest of the multiobjective algorithms versions do not reach a similar area to that obtained by MODEA.

6. Conclusion

Firstly, a base case was thoroughly studied in a theoretical way to determine the minimum and maximum limits of that base configuration. This was done to show how MODEA is able to find a suboptimal solution near to its maximum theoretical configuration with great accuracy (99.05%). At the same time on the same base case, several feasible optimization strategies were tested with the use of MODEA, denoted as MODEA-R, MODEA-RM, MODEA-B, and MODEA-BM. It can be seen that the addition of the parameter in Storn’s algorithm helps to converge toward the optimal solution quickly, particularly for MODEA-BM. For that reason, MODEA-BM was chosen to evaluate the rest of the cases here presented, i.e., different area shapes, either one shape or multiple shapes. Results obtained with 1000 iterations and , showed that more than 90% of the targeted area is covered for the best outputs, except for multiple case. For a highly restricted scenarios like multiple case, the best outputs showed that the suboptimal solution is reached in 2500 iterations, even when in general the low average (77.35%) shows that some of the cases do not reach the desired output. The MST was adapted to avoid crossing forbidden areas, creating feasible communication trees while optimizing the objective function. Nevertheless, the readers are warned that an adequate restriction tuning leads to a feasible solution, especially in cases where the area shapes are irregular, multiple, or a combination of both. Thus, MODEA-BM prevents the existence of nodes in forbidden areas, near these areas' borders, or near each other with a certain tolerance, thus maximizing the covered area and reducing energy consumption. MODEA-BM is complemented with the use of the Prim–Dijkstra algorithm to find on-the-fly the best possible MST for each population member. MODEA-BM is also complemented with the Hungarian algorithm at the end in order to find which movements should be performed to arrange the initial to the end node positions.

As further work, the following lines of research can be done: The application of the MODEA algorithm should be investigated in real indoor coverage areas considering wireless propagation effects such as shadowing, interference, obstacles, and multipath. Those restrictions shown by [17, 18] will complement the results presented in this work. With some further adaptations, MODEA could be applied for guiding autonomous sensorial robots in an unexplored geographical area or in search and rescue operations, where it is common to have different sensor nodes with different transmission rates, ranges, and sampling rates. It would be interesting to compare MODEA against other well-known bioinspired algorithms such as Ant Colony Optimization or the latest MODEA versions found in the open literature (jDE [68], JADE [69], SADE [70], and the like [62]) and obtain similar results like those shown in [34]. A simulation to evaluate MODEA should be done using random variables to generate irregular coverage areas and simultaneously determine its impact in forming links in an ad hoc network, reflected in the construction of routing tables.

Appendix

Figure 18 given in [61] shows the intersection of three circles called a circular triangle. This figure is used to obtain (14) and (16), which are used to obtain (16), which is the area of the circular triangle. The vertices of the circular triangle are labeled by .

The separation between the centers of circle 1 and circle 2, , must satisfy

If not satisfied, then there is no circular triangle. However, if satisfied, the circles intersect in two points. Each intersection point satisfies the equation of these two circles.where are the coordinate variables of the intersection points that correspond to

Now considering the third circle and using the coordinate system of , the equations of the intersection point between circle 1 and circle 3 are derived. Note that has a negative value.

Assuming that , , , and , it is found that

Now, considering thatand thatand substituting values, the following expressions are obtained

Using the following equationsand substituting values, the following results are obtained

The use of (16) is to verify that circle 3 forms a circular triangle under the conditions

If these conditions are satisfied, then there is a circular triangle. Now, substituting values,

Now, the length of the chords , , is found through

For the case of

Substituting values, is given by

This is (16) of Section 3 assuming and is different from the value of given in [61].

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

Armando Céspedes-Mota gives thanks to CONACyT-México, the research council of Mexico, for the scholarship granted to him. This research was partially supported by the School of Engineering and Sciences of Tecnológico de Monterrey.