A Concentric Clustering Architecture with Particle Swarm Optimization Algorithm in a Wireless Sensor Network

The lifetime of wireless sensor networks (WSNs) is limited because the sensor nodes must rely on battery power, which is a limited resource. In this paper, we improve a Clustering Algorithm based on Social Insect Colonies (CASIC) to extend the lifetime of a WSN. We propose the CASIC with Particle Swarm Optimization (CASIC-PSO) scheme, which uses a Particle Swarm Optimization (PSO) algorithm to select a cluster head that can prevent the selection of inappropriate nodes and balance the node energy consumption. Simulation results show that our scheme effectively reduces energy consumption and extends the lifetime of WSNs.


Introduction
Improving the energy efficiency of wireless sensor nodes is an important issue for wireless sensor network (WSN) design. (1) Clustering architecture is composed of cluster members and a single cluster head. Researchers have shown a decentralized algorithm, the Low-Energy Adaptive Clustering Hierarchy (LEACH) scheme, which was proposed by Heinzelman et al. (2) In a LEACH scheme, all the sensor nodes produce a random value, and use this value to select a cluster head for each cluster. The cluster head is responsible for collecting sensing data from its members and transmits them to the base station (BS). In geographic routing, the cluster head location is an important issue; since it is necessary to reduce the energy consumption of the sensing data of sources in an adjacent region, a scheme (3) for determining the optimal location of the cluster head in order to increase efficiency has been designed. In addition, in order to guarantee high throughput with low delay in multimedia transmission, (4) the authors propose an efficient geographic routing that finds the appropriate path. In designing an efficient sensor network, the communication traffic load is a critical protocol. Cheng et al. (5) proposed a Clustering Algorithm based on Social Insect Colonies (CASIC). The CASIC scheme is a single concentric circle cluster scheme in which the cluster radius covers the entire field area and has a cluster head. In 1995, Kennedy and Eberhart (6) proposed a search optimization technique called a particle swarm optimization (PSO) Algorithm. In this paper, the focus is to enhance the lifetime of a WSN. We propose a concentric clustering architecture scheme, CASIC with PSO (CASIC-PSO). In the cluster head selection phase of the CASIC-PSO scheme, we use a PSO algorithm to select an appropriate sensor node to elect a cluster head, and further enhance the WSN lifetime. In this case, we set a fitness function that considers the remaining energy and transmission energy consumption of the sensor nodes in order to pick the cluster head, so as to ensure that the cluster head has sufficient energy for transmission or reception.

CASIC-PSO
In this section, we focus on finding a way of selecting an appropriate sensor node to become a cluster head in order to improve the energy efficiency of CASIC. To improve the CASIC scheme, we propose a CASIC-PSO scheme. Our scheme has four phases that include the cluster head selection phase, the neighbor searching phase, the scheduling creation phase and the data transmission phase. In our proposed scheme, we design a fitness function and use a PSO algorithm to search for a suitable cluster head based on the above factors in order to extend the lifetime of the cluster head. In this case, we consider two factors in choosing a cluster head. First, the cluster head must have sufficient energy to transmit and receive data; therefore, the residual energy of the cluster head must be considered. Second, the transmission energy required for communication between the base station and cluster head affects the lifetime of the cluster head, because if the distance between the base station and the cluster head is greater, the energy consumption of the cluster head will increase.
In the cluster head selection phase, we use the PSO algorithm to select a cluster head. When the PSO algorithm begins, each particle is randomly initialized with its velocity vector and position in the initial phase. The particles use fitness function F cos t to evaluate their individual fitness in order to update a personal best fitness value according to its coordinates, and to update the global best fitness value, which is the best of all fitness values. F cos t is given as where β is constant, and it is between 0 and 1; f 1 is a factor that ensures that the residual energy of the cluster head is sufficient for transmission or reception. f 2 is a factor that ensures that the transmission energy between the base station and the cluster head can be reduced. f 1 and f 2 are shown as where e i is the residual energy of node i and e i,BS is the energy consumption of the routing path between node i and the BS, and e i is the residual energy of node i. Once each particle has evaluated its individual fitness, we use V i (t) and X i (t) to update their velocity vector and position. (6) V i (t) is the velocity vector of particle i at time t, and X i (t) is the position of particle i at time t. The new velocity vector of particle i is given as where V i (t+1) is the velocity vector of particle i at time t+1; ω, c 1 , and c 2 are acceleration coefficients; r(t) is a random value between 0 and 1 at time t; p i (t) is the personal best fitness value of particle i so far at time t. g(t) is the global best fitness value among all fitness values so far at time t. The new coordinate of particle i is given as where X i (t+1) is the position of particle i at time t+1. In this case, acceleration coefficients affect the quality of the search result. Furthermore, in order to suitably adjust acceleration coefficients, we use a method to ensure that acceleration coefficients suitably adjust along different iteration numbers. (7) Therefore, we use this method to calculate acceleration coefficients that follow those three equations. First, coefficient ω is shown as where ω i and ω f are constants that we set as 0.9 and 0.4, respectively; G max is the maximum number of iterations allowed, and G(t) is the current iteration number at time t. The coefficients of c 1 and c 2 are given by where c min and c max are constants that we set as 0.5 and 1.5, respectively. Each particle will update its coordinates and search for a global best solution for each particle according to the best solutions of all particles until the maximum allowed number of iterations is reached. When the cluster head has been selected using the PSO algorithm, the cluster head broadcasts a join message to invite noncluster head nodes within cluster radius R c to join it. To ensure that a single cluster can cover all sensor nodes, the cluster radius R c that covers the entire sensor area should be defined. The join message includes the cluster head ID, communication radius r c and number of layers l. The parameters of r c and l are calculated using a formula. (5) When the noncluster head nodes receive the join message, they stop competing and transmit a message to inform the cluster head. Once the sensor nodes transmit a message to inform the cluster head, they will become cluster members. This concludes the cluster head selection phase. When all the sensor nodes become cluster members, they know which layer they belong to and their communication radius. In the neighbor searching phase, each cluster member will search within communication radius r c for a nearest neighbor node that is closer to the cluster head and located at a different layer. The cluster members broadcast a search message to search for its neighbor nodes and find the nearest neighbor node. The search message includes the broadcast node ID and location layer number. Each cluster member within the communication radius receives the search message, and they will return a message to inform the broadcast node. When the broadcast nodes receive the return message, they estimate the distances between the neighbor nodes and themselves using the received signal strength indication (RSSI), and store the message in respective databases. Each cluster member can find a nearest neighbor node within the communication radius according to the database, and then it has a minimum transmission distance D i with the nearest neighbor node. The minimum transmission distance D i is defined as where d K is the transmission distance between node i and its neighbor K; K represents the number of neighbors of node i. If a cluster member does not have any neighbor nodes within communication radius r c , then it will increase the communication radius until one neighbor node is found. When their respective D i values have been calculated using eq. (7), all cluster members will prepare to enter the scheduling creation phase.
In the scheduling creation phase of the CASIC-PSO scheme, the cluster head uses the TDMA protocol to establish time slots and assign them to its cluster members, so as to avoid data collisions. Data collisions cause data retransmission and excess energy dissipation. All cluster members receive a time slot from their cluster head, and all cluster members prepare for transmission and reception in the data transmission phase.
When the cluster head has finished assigning time slots to all cluster members, each cluster member will transmit data according to its received time slot. All cluster members are responsible for collecting sensing data from the sensing area and transmitting them to the nearest neighbor node closest to the cluster head at different layers. The cluster members within layer L transmit data to their nearest neighbor nodes chosen by step 2 and located at layer L-1, and then the cluster members within layer 2 directly transmit the data to the cluster head. The cluster head is responsible for aggregating from its members and transmitting to the base station. Once they have transmitted and received the data, each cluster member stops its operation until new time slots are assigned by the cluster head. A flow chart of the CASIC-PSO scheme is shown in Fig. 1.

Simulation with N = 50 under different schemes
In our experiments, we use C programming language to perform simulations, and analyze the performances of the LEACH, CASIC and our proposed CASIC-PSO scheme in terms of the number of nodes alive and the total residual energy. We assume that the base station position is located at (25 m, -100 m), and the sensing field is set as 50 × 50 m 2 . All sensor nodes are randomly distributed in the sensing field, and are assumed to be able to communicate with each other. The initial energy of each node and electronic energy are set as 0.05 J and 50 nJ/bit, respectively. For simulation, we set the number of nodes N at 50. The data packet size was set as 4000 bits for each transmission time. Furthermore, we assumed the energy of the base station to be unlimited, because it is solar-powered. The calculation of energy consumption used the radio energy dissipation model. (2) In this case, we used a PSO algorithm to select an appropriate cluster head, so that the first node death could be postponed in our proposed scheme. Furthermore, the performances of our proposed scheme offer improvements over those of the CASIC and LEACH schemes, given by where P a represents one of our proposed scheme performances, and P b is the performance of the CASIC and LEACH schemes. The number of nodes alive under the different schemes is shown in Fig. 2. The result shows that the number of nodes alive for our CASIC-PSO scheme was about 90% in round 86; the number of nodes for the CASIC and LEACH schemes was about 90% in rounds 79 and 42, respectively. The performances of our scheme offer improvement as calculated using eq. (8). Therefore, the performances of our CASIC-PSO scheme offer improvements over the CASIC scheme by 4%; the improvements over the LEACH scheme were by 95%. The results show that our proposed scheme can extend the lifetime of a WSN.

Discussion
As can be seen from Fig. 2, the first node death in our proposed scheme appears much later than it does in the CASIC and LEACH schemes because CASIC-PSO uses the PSO algorithm to select an appropriate node, which is a cluster head. Therefore, our proposed scheme offers a more efficiently balanced energy consumption, and shows better performances in equalizing and reducing the energy consumption of wireless sensor nodes during transmission and reception.

Conclusions
In this paper, we proposed a CASIC-PSO scheme in association with a PSO algorithm to select an appropriate node as a cluster head in order to guarantee that the cluster head is not subject to rapid death and its energy is sufficient for transmission or reception. We set a fitness function that considers the residual energy of the node and its transmission energy consumption. The simulation results show that the performance of our proposed scheme is better than those of the CASIC and LEACH schemes. The performances of the CASIC-PSO scheme offer improvement over the CASIC and LEACH schemes by 4 and 95%, respectively.