Design of Randomly Deployed Heterogeneous Wireless Sensor Networks by Algorithms Based on Swarm Intelligence

This paper reports the design of a randomly deployed heterogeneous wireless sensor network (HWSN) with two types of nodes: a powerful node and an ordinary node. Powerful nodes, such as Cluster Heads (CHs), communicate directly to the data sink of the network, and ordinary nodes sense the desired information and transmit the processed data to powerful nodes. The heterogeneity of HWSNs improves the networks lifetime and coverage. This paper focuses on the design of a random network among HWSNs. In the design of a random HWSN, this paper uses algorithms based on the binary-valued versions of swarm intelligence, such as Particle Swarm Optimization (PSO), Artificial Bee Colony (ABC), and Ant Colony Optimization (ACO). The design is then considered to be an optimization problem of how many powerful and ordinary nodes will combine to minimize the network cost, while guaranteeing a desired coverage during a given period. Simulation results show the performance of each algorithm for solving the defined optimization problem.


Introduction
A heterogeneous wireless sensor network (HWSN) consists of more than two types of devices (or sensor nodes) to improve the network's lifetime, coverage, and scalability. The HWSNs lifetime can be effectively prolonged [1], especially for cases when powerful nodes that play a role as Cluster Heads (CHs) exist in a relatively large HWSN.
This paper focuses on the effective design of WSNs constructed by randomly deploying sensors, thus solving the optimization problem of how many powerful and ordinary nodes will combine to minimize the network cost while guaranteeing a desired coverage during a given period. Almost all of the sensors used in randomly deployed WSNs are constrained by their energy use because they have an embedded battery. Therefore, in studies on randomly deployed WSNs, the issue of how to effectively establish and efficiently manage the WSNs is very important and has been actively studied [2][3][4][5][6][7][8][9][10][11][12][13]. In particular, the researches of approaching this problem with metaheuristics have increased in recent years [2,3,[5][6][7][8][9][10][11][12][13][14].
In previous research [4], the authors had simplified this design problem by assuming that only ordinary nodes sense the area to solve the problem through the mathematical analysis. Our previous paper [7] designed the HWSN with nodes and CHs that are able to sense information by defining the constrained integer optimization problem, converting it to the unconstrained problem and solving this problem using the discrete binary version of the PSO algorithm known as the Discrete PSO (DPSO) algorithm [15]. In this study, we solve this optimization problem with more realistic and efficient approaches at the expense of an increase in complexity by applying other metaheuristic methods based on swarm intelligence, such as binary Artificial Bee Colony (binABC) [16] and binary Ant Colony Optimization (binACO R ), which are the binary-valued versions corresponding to their original algorithms as well as the DPSO algorithm (hereafter renamed 2 International Journal of Distributed Sensor Networks as binary PSO (binPSO)). Notably, the binACO R is first proposed in this paper. This algorithm is implemented by combining the binary concepts from the binPSO and the binABC with the ACO algorithm for continuous domains, ACO R [17]. The details of the binACO R are introduced in Section 3.3.
The remainder of this paper is organized as follows. In Section 2, we define the sensor system model and provide its coverage analysis. This section also defines the integer optimization problem with some constraints for the design of HWSN and briefly introduces Deb's method that converts a constrained optimization problem to an unconstrained one and converts the defined problem to the unconstrained integer optimization as in [7]. In Section 3, the binary-valued optimization algorithms based on swarm intelligence are introduced. In Section 4, we show the comparative results between algorithms obtained from the simulation, designing several HWSNs. We then conclude this paper in Section 5.

System
Model. The proposed heterogeneous wireless sensor network (HWSN) is constructed by uniformly and randomly deploying powerful nodes (hereafter CHs) and ordinary nodes (hereafter nodes) over a large area R with a large size ‖R‖ because sensor clustering is usually used in relatively large WSNs. In the HWSN, the CHs communicate directly with the data sink of the network, and the nodes sense the desired information and transmit the processed data to powerful nodes. After each node collects the desired information, it directly transmits the data to its closest CH every hours (i.e., single-hop network). CHs then forward all data received to the sink of the HWSN. At this time, all CHs and nodes consume energy for the transmission of a data packet, and this is modified as follows [1]: where is the loss coefficient and represents the overhead energy for a packet transmission. Additionally, and denote the transmission distance and the path loss exponent, respectively.
For nodes and CHs, we assume that nodes have an initial energy of Joules and a sensing range of 1 meters. CHs are not restricted by energy limitations. They also may or may not carry out a sensing task, and they have a sensing range of 2 . One objective of this paper is to find proper and so that any arbitrary point in area R can be covered with at least probability (i.e., guaranteed coverage) during time (the network lifetime).

Coverage
Analysis. Like in [4], we first find an initial coverage in terms of the number of nodes in a HWSN deployed randomly over the area from coverage theory [18]. Then, we transform the survival and lifetime of nodes during into a coverage problem in terms of the density of the CHs affecting survival nodes after . From the two results above, we are able to lead the final coverage of the HWSN after . This procedure is possible because we can state that a node has covered an area only when the transmission of the data to its closest CH after performing a sensing task is completed. We will consider two cases: in the first case, only nodes sense the area; and in the second case, CHs also sense the area. The latter case is more realistic and effective than the former. Finally, with these results, we establish the network design in Section 2.3 as an integer program to minimize the network cost while keeping the desired network coverage over a desired period.

Case Sensed by Only Nodes.
For the first case above, from the results of coverage process theory [18], the mean and variance of the probability of covering an arbitrary point in R by nodes are as follows: where and 1 = 2 1 /‖R‖. In the case that ‖R‖ → ∞, then 2 → 0. Therefore, the initial coverage of nodes deployed randomly over a large area is the following deterministic value because its variance tends to 0: To determine the final coverage , we have to find the number of dead nodes after . Suppose represents the energy consumed by a node during . This is then equal to the consumed energy per packet of transmission multiplied by the number of packets sent to CH. If the sensor has performed its tasks of sensing and transmitting, then < . From (1), we can yield the maximum distance between a node and a CH, allowing the node to perform its tasks up to , as shown in Figure 1, which is determined as follows: Thus, if a node has no CH closer than , the node will die before reaching . The number of operating and survival nodes after , therefore, is related to the area covered by disks with the radius and the center at CHs positions. Like finding the initial coverage of nodes from coverage process theory, we can find the probability that a certain node is close enough to a CH and survives until . It is represented as follows: where = 2 /‖R‖.  The boundary effect is negligible because the sensing range of a node is much smaller than ‖R‖, and the nodes and CHs are placed in R independently. Therefore, the final coverage of network is as follows:

Case Sensed by CHs and Nodes.
In the more practical case where CHs also sense the area, we can determine the probability of covering an arbitrary point by CHs in a similar fashion to the first case as follows: At the beginning, an arbitrary point in R is either covered by CHs or nodes, and at this time, the initial coverage probability is as follows: We can assume 2 < because the sensors range for communication is usually greater than that its range for sensing [19]. When the end of the desired period is reached, a point in R will either be covered by survival nodes, CHs, or both. The final coverage probability is as follows: The first and second terms are the coverage probabilities of only survival nodes and CH, respectively. The third term represents coverage by nodes and CHs simultaneously, which is allowed because given that 2 < , all nodes that are located in the range covered by CHs have survived until . Therefore,

Heterogeneous WSN Design.
This section provides a nonlinear integer optimization problem derived from the above coverage analysis with which we can predict the final network coverage with known parameters as a method to design a randomly deployed HWSN. In previous research [4], the authors had simplified this design problem by assuming that only nodes sense the area to solve it through the mathematical analysis. This paper, however, is going to solve this optimization problem with more realistic approaches at the expense of increased complexity by applying optimization algorithms based on swarm intelligence. As in our previous work [7], we also consider the second case above because the case where CHs with rich energy resources also sense the area is efficient and effective in practical use.
We formulate the optimization problem to minimize the implementation cost while keeping at least guaranteed coverage during the desired network lifetime by adjusting the number of nodes and CHs. For this purpose, we assume that each node costs and each CH costs CH for their implementation, such that < CH . Hence, the problem minimizing the network cost is as follows: In (13), can be defined according to (7) or (11) according to the cases mentioned above.
As in [7], we can apply the binPSO algorithm to the above problem by first converting this constrained optimization problem into an unconstrained problem using the method of handling constraints. There are many methods for accomplishing this task: the penalty function method, the Lagrange multiplier method, the gradient projection method, and so forth. However, these methods are unfavorable because they require proper values for their control parameters to achieve satisfactory performance. So, like in [7], we apply Deb's method [20] based on the penalty function approach, which does not require any penalty parameter. The details about this method can be found in [20]. By Deb's method, the former problem is converted as follows: where ( , ) is the fitness function and the value max is the objective function value of the worst feasible solution of the solution candidates found by an algorithm. Additionally, ( , ) = ( , )/ − 1, which is a normalized constraint.

Binary Optimization Algorithms Based on Swarm Intelligence
As defined in Section 2.3, the HWSN design becomes an integer optimization problem with an integer-valued solution. To solve this problem, we use several optimization algorithms based on swarm intelligence, such as PSO, ABC, and ACO, because the more practical problem is more difficult to solve via mathematical analysis. However, the original forms of these algorithms are ill-suited to the integer optimization problem because these algorithms were first proposed to solve continuous-valued problems (by PSO [21] or ABC [22]) or combinatorial problems (by ACO [23]). Hence, we use the binary versions of each algorithm, that is, binPSO [15], binABC [16], and binACO R . In other words, we first find binary-valued solutions using binary algorithms and then convert these to integer-valued solutions. Then, we evaluate these converted solutions with the objective function of the above integer optimization problem. Notably, the binACO R is first proposed in this paper. This algorithm is implemented by combining the binary concepts from the binPSO and the binABC with the ACO algorithm for continuous domains, ACO R [17]. The details of the binACO R are introduced in Section 3.3.

Binary Particle Swarm Optimization (binPSO) Algorithm.
The Particle Swarm Optimization (PSO) algorithm is an optimization algorithm inspired by the movement of schools of fish and flocks of birds. In the PSO algorithm, a particle's position is a candidate solution for the given optimization problem and the particles, or swarm, are iteratively moved in the search space of an optimization problem according to information about each particle's previous best position, best , and the best position of the particles so far, best .
Most variants based on the first PSO [21] have operated with continuous values in continuous search space, where the particles' trajectories are determined by changes in position across some number of dimensions of the problem. In the binary version of the PSO algorithm (i.e., binPSO [15]), trajectories are defined as changes with the probability of whether the particle's coordinate will take on a zero or one value. In the binPSO, although the velocity V , represents the probability of the coordinate , taking the value 1 (unlike in the continuous version of the PSO), the formula remains unchanged as follows: where the parameters and are determined using a uniformly distributed random number within the range [0 1], that is, , ∼ (0, 1). In the first part of (15), the inertia weight represents the degree of the momentum of the particles. The second term is the "cognition component, " which represents the independent behavior of the particle itself. The final term is the "social component, " which represents the interaction between the particles. The constants and determine the relative influence of the cognition and social components. In (15), unlike the continuous version, the values of , , , , and are only integers in {0, 1}. From the probability V , , the next coordinate of , is determined as follows: where the function (⋅) is a sigmoid limiting transformation and rand() is a quasi-random number selected from a uniform distribution with a range [0, 1]. Likewise, the continuous version of the PSO limited V , by the user parameter max ; also in the binPSO, max is retained; that is, |V , | < max , and the smaller value allows a higher mutation rate.

Binary Artificial Bee Colony (binABC) Algorithm. The
Artificial Bee Colony (ABC) algorithm is a population-based and stochastic optimization algorithm inspired by the intelligent foraging behavior of honeybees. In the ABC algorithm, artificial bees search for rich artificial food sources, that is, good solutions for a given optimization problem. The artificial bee colony consists of three groups of bees: employed bees associated with specific food sources that exploit their food sources, onlooker bees that watch the dance of employed bees within the hive to select a food source and help the employed bees find richer food sources, and scout bees that search food sources randomly. Likewise, their cooperative and iterative behaviors find the optimal solution to a given problem.
Most of the variants based on the original ABC [22] operate with continuous values in the continuous search space like the PSO. In contrast, the binary ABC algorithm (binABC [16]) finds a binary-valued solution in the binaryvalued search space. The binABC borrows concepts from the binPSO. As mentioned above, in the binPSO, each component of the velocity vector, V , , is used to compute the probability that the corresponding component of the solution vector is bit 0 or bit 1. In a similar way, the binABC uses each component of the neighbor food source position, V , to calculate the probability of the coordinate taking the value 1. Unlike in the continuous version of the ABC, the formula remains unchanged as follows: where the parameter is a uniform random number within the range [− , ], that is, ∼ (0, 1), where = 1 in general. From the value V calculated from (17), the next coordinate is determined as follows: where the function (⋅) is a sigmoid limiting transformation and rand() is a quasi-random number selected from a uniform distribution with a range [0, 1]. Likewise, the binPSO International Journal of Distributed Sensor Networks 5 limited V , by the user parameter max ; also in the binABC, max is used; that is, |V | < max .

Binary Ant Colony Optimization (binACO R ) Algorithm.
The Ant Colony Optimization (ACO) algorithm is a metaheuristic based on the foraging behavior of real ants. While moving, real ants that find food deposit pheromones on the way to their nests. The other ants then follow these deposited pheromones. Although pheromones evaporate as time passes, they open up new possibilities as ants can choose to follow a path heavily laden with pheromones. In this way, ants can search for the shortest path from their nest to a food source with only pheromone information. In ACO algorithm, a set of virtual ants searches for optimal solutions to a given optimization problem in the search space.
The first ACO algorithm [23] was proposed to solve a Traveling Salesman Problem (TSP) that is a representative combinatorial problem of finding the shortest path that traverses all cities exactly once and then returns to the starting city. Since then, the ACO for continuous domains, called ACO R [17], was proposed without any major conceptual change to the original ACO. In this paper, a binary version of the ACO R algorithm, binACO R , is proposed by combining the above ACO R for continuous domains with the binary concepts from the binPSO, as in the binABC. In other words, each component is used to compute the probability of the next coordinate taking the value 1. In the ACO R , each component is determined by sampling from the following Gaussian kernel for th dimension: where = 1 and T is the size of the archive T that stores and keeps the best T solutions found by previous moving ants in the ACO R . From each value selected from (19), the next coordinate of is determined as follows: where the function (⋅) is a sigmoid limiting transformation and rand() is a quasi-random number selected from

Simulation Results and Discussions
In this section, we solve several HWSN design problems with the second sensing condition from Section 2.2.2 using the above three binary optimization algorithms and compare their performances. The simulation was implemented in MATLAB on a PC running Windows 8.1, with an Intel Core i3 CPU 540 operating at 3.07 GHz and 4 GB of RAM. The parameters used for each algorithm are shown in Table 1.
The termination criterion of all algorithms in all of the scenarios is reaching the maximum number of the evaluation, = 10 6 . The parameters related to the consumed energy for the transmission of a data packet were set for all simulations as follows: = 10 −7 , = 5 × 10 −5 , = 2, = 1, and = 3J. For each scenario in the simulation, the parameters for the environment and the desired HWSN were set as shown in Table 2. All scenarios were performed 30 times for statistics. Table 3 shows the statistical results of the simulations with CH and node sensing in five different environments, and Figure 2 is the boxplot of three algorithms for each scenario. In all scenarios, the binPSO algorithm shows the best performance among the three binary optimization algorithms. The binPSO obtains near-optimal solutions with similar costs in all scenarios. As a statistical significance test, the two-sample -test was conducted between the binPSO and the others. The significance sign "(+)" in the table means that the binPSO is significantly better, the sign "(∼)" means no significant difference, and the sign "(-)" means significantly worse. The results of the -test also showed that the binPSO is significantly better than the other algorithms. The binACO R first proposed in this paper shows the second best performance, demonstrating an improvement in 6 International Journal of Distributed Sensor Networks  performance over the binABC algorithm. Additionally, the binACO R finds near-optimal solutions that are the same as those found by the binPSO. However, the binACO R requires more exploration to achieve the same performance as the binPSO.

Conclusions
In this paper, we designed a heterogeneous wireless sensor network (HWSN) with nodes and CHs that are all able to sense information. We accomplished this by defining the constrained integer optimization problem, converting it to the unconstrained problem and solving this problem using the binary optimization algorithms based on swarm intelligence, namely, binPSO, binABC, and binACO R . We then compared the performance of each algorithm by applying them to real problems. From the simulation results, the binPSO algorithm outperformed the others based on swarm intelligence, showing relatively consistent solutions every time for each test case. The binACO R , which was first proposed in this paper, needed to improve the exploration ability, though its performance was better than that of the binABC algorithm. Table 3: Simulation results with sensing of CHs and nodes in five different environments: the listed values are the statistics of the costs of five scenarios for each algorithm for the 30 runs. Q1 and Q3 are the 25th and 75th percentiles, respectively. For median and mean values, the numbers in square brackets indicate the rankings of the three algorithms. The values are the results of the two-sample -test between the binPSO which has the best performance among three algorithms and the others for each scenario. The significance sign "(+)" means that the binPSO is significantly better, the sign "(∼)" means no significant difference, and the sign "(-)" means significantly worse.