Journal of Computer Networks and Communications

Volume 2019, Article ID 1028723, 12 pages

https://doi.org/10.1155/2019/1028723

## Salp Swarm Algorithm for Node Localization in Wireless Sensor Networks

^{1}Faculty of Computers and Informatics, Benha University, Banha, Egypt^{2}Faculty of Computers and Information, Minia University, Minya, Egypt

Correspondence should be addressed to Essam Halim Houssein; ge.ude.um@milah.masse

Received 27 July 2018; Revised 6 January 2019; Accepted 21 January 2019; Published 19 February 2019

Guest Editor: Noradin Ghadimi

Copyright © 2019 Huthaifa M. Kanoosh et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

Nodes localization in a wireless sensor network (WSN) aims for calculating the coordinates of unknown nodes with the assist of known nodes. The performance of a WSN can be greatly affected by the localization accuracy. In this paper, a node localization scheme is proposed based on a recent bioinspired algorithm called Salp Swarm Algorithm (SSA). The proposed algorithm is compared to well-known optimization algorithms, namely, particle swarm optimization (PSO), Butterfly optimization algorithm (BOA), firefly algorithm (FA), and grey wolf optimizer (GWO) under different WSN deployments. The simulation results show that the proposed localization algorithm is better than the other algorithms in terms of mean localization error, computing time, and the number of localized nodes.

#### 1. Introduction

Wireless sensor networks (WSNs) are networks that consist of a few autonomous sensor nodes that are distributed in a specific area for cooperatively sensing their environment. In the last decade, WSNs have been employed in many real-life applications such as healthcare, home automation, traffic surveillance, and environmental monitoring [1].

Accurate node localization is a critical issue in WSNs. Localization problem in WSNs means calculating the positions of unknown sensor nodes. In many environments where the sensor nodes of a WSN are deployed, people may not be able to go and fix these nodes. In these environments, the sensor nodes are usually randomly scattered in random locations; therefore, the sensor nodes usually take random positions. On the other hand, in many applications, the information collected by the sensor nodes of a WSN may be useless if the positions of the sensor nodes that gathered the information are unknown. This emphasizes the need for an accurate node localization scheme [2].

In order to localize the sensor nodes of a WSN, a GPS can be attached to each sensor during the network deployment. Then, the GPS can be used to find the coordinates of the sensor nodes. However, using GPS for localizing sensor nodes is undesirable and impractical solution because of many reasons such as cost, inaccessibility, sensor nodes may be deployed indoors, and climatic conditions may disturb the GPS reception ability [2]. An alternative approach is to attach GPS to some nodes which are called anchor nodes or beacon nodes. Thus, the positions of these nodes with attached GPS are known after deploying the nodes of the wireless sensor network. Using the known locations of anchor nodes, localization algorithms can be employed to estimate the positions of the unknown nodes [2]. There are two classes of non-GPS based localization algorithms, namely, rang-free and range-based algorithms [3]. Angle-based or point-to-point distance estimation among the sensor nodes is used with rang-based localization algorithms. In these algorithms, the positions of sensor nodes are calculated by the assist of anchor’s trilateration [3]. Unlike range-based localization algorithms, range-free localization algorithms do not need range information to estimate the positions of the unknown nodes. It only depends on the topological information. Compared to range-free localization algorithms, range-based localization algorithms can achieve higher localization accuracy but at the expense of cost [4].

Recently, node localization in WSNs is handled as a multimodal and multidimensional optimization problem that can be solved using population-based stochastic approaches. In the literature, many metaheuristic algorithms have been employed to solve the localization problem in WSNs. These algorithms have succeeded in reducing the localization error dramatically. These algorithms attempt to solve an optimization problem by trial and error in which the feasible solutions are processed, and the nearest optimal solution is identified. Currently, various optimization algorithms such as genetic algorithm (GA), cuckoo search (CS), gravitational search algorithm (GSA), butterfly optimization algorithm (BOA), particle swarm optimization (PSO), artificial bee colony (ABC), etc. have been employed effectively in specifying the positions of the unknown nodes in WSNs [5].

The main contribution of this paper is using the Salp Swarm Algorithm (SSA) for the first time ever to localize the nodes of WSNs. The performance of the proposed SSA-based localization algorithm is analyzed and compared with particle swarm optimization (PSO), butterfly optimization algorithm (BOA), firefly algorithm (FA), and grey wolf optimizer (GWO) algorithms. The results have shown that the SSA-based localization algorithm is better than the previously mentioned localization algorithms in terms of computing time, number of localized nodes, and localization accuracy.

The remaining sections of the paper are organized as follows: Section 2 covers some of the research efforts which have been done in the field. Section 3 presents a brief description for the different swam algorithms employed in this work. Section 4 introduces the proposed SSA-based localization algorithm. Section 5 includes the conducted experiments and results analysis. Finally, the paper is concluded in Section 6.

#### 2. Literature Review

In the last years, many optimization algorithms have been employed for addressing the problem of node localization in WSNs [6]. In this section, some of the recent relevant works are covered and briefly described.

Low et al. have introduced a low-cost localization system that depends on the measurements obtained from a pedometer and communication ranging among adjacent nodes. The proposed system does not require good network connectivity and presents good performance in sparse networks. A probability-based algorithm that needs a nonlinear optimization problem solving is employed to provide the localization information. Moreover, the particle swarm optimization (PSO) has been employed to determine the optimum location of the sensor nodes. Experimental results have proved that the proposed system has a good performance [7].

Manjarres et al. have presented a hybrid node localization algorithm based on Harmony Search (HS) algorithm with a local search procedure. The main objective of the proposed algorithm is to address the localization problem and to distribute its burdens over an iterative process. Additionally, the proposed algorithm employs certain connectivity-based geometrical constraints to decrease the area in which each node can be located. The simulation results have verified that the proposed algorithm is better than another simulated annealing- (SA-) based localization algorithm in terms of both localization error and computational cost [8].

Li et al. have suggested a self-adaptive artificial bee colony (SAABC) node localization algorithm that considers the whole effects resulting from employing dynamic topology. The proposed algorithm provides good performance in WSNs with both random distributing nodes and dynamic topology. Additionally, the obtained simulation results have shown that the proposed localization algorithm provides better node localization precision and precision stability compared to the DV-Hop algorithm without the need for extra devices or overhead in communication [9].

Tamizharasi et al. have proposed a novel hybrid node localization algorithm based on bacterial foraging algorithm (BFA) and particle swarm optimization (PSO). The main design objectives of the proposed algorithm are to enhance the efficiency and accuracy of BFA and to avoid getting stuck in a local extreme. In the proposed algorithm, PSO is merged into the chemotaxis of BFA to speed up the convergence rate. Moreover, the global search ability is improved by proposing the elimination probability in elimination-dispersion based on the energy of bacteria. The obtained simulation results have verified that the proposed hybrid algorithm outperforms the BFA [10].

Tang et al. have proposed a sensor nodes localization algorithm, which depends on a new intelligent optimization algorithm called plant growth simulation algorithm (PGSA) that simulates the growth of plants. In their work, they proposed inserting the plant root of adaptive backlight function into the original PGSA for improving convergence time and localization precision. The obtained simulation results have verified that the proposed algorithm is better than the simulated annealing algorithm (SAA) in terms of localization accuracy and computing time [11].

Jegede and Ferens have employed the genetic algorithm (GA) for learning the environmental issues within a WSN for effectively localizing its sensor nodes. For every coordinate in the grid network area, given random perturbations of received signal strength (RSS), GA would be able to learn the environment and to decrease the possible errors associated with the RSSI measurement taken for each coordinate. The conducted simulation shows that GA can reasonably localize sensor nodes using the coordinates of three anchors [12].

Goyal and Patterh have proposed a cuckoo search- (CS-) based node localization algorithm for estimating the coordinates of sensor nodes in WSNs. In the proposed algorithm, no weight coefficient is employed for controlling the global search ability. The conducted simulation has shown that the proposed localization algorithm is better than the particle swarm optimization (PSO) and various variants of biogeography-based optimization (BBO) in terms of localization accuracy [13].

Dan and Xian-bin have presented a distributed two-phase PSO algorithm for efficiently and precisely localizing the sensor nodes in addition to solving the flip ambiguity problem. In the first phase, the initial search space is defined using the bounding box method. In the second phase, a refinement process is performed for correcting the error resulting from the flip ambiguity. Additionally, the proposed algorithm attempted localizing sensor nodes that have only two references or three near-collinear references. The conducted simulation has proved the effectiveness of the proposed algorithm [14].

Krishnaprabha and Gopakumar have proposed a node localization algorithm based on gravitational search algorithm (GSA). In the proposed work, node localization in WSNs is formulated as a nonlinear optimization problem. Also, the proposed algorithm tried to handle the flip ambiguity problem and to localize the sensor nodes that collinear anchor nodes through the refinement phase. The obtained simulation results have shown that the proposed localization algorithm has good performance [15].

Peng and Li have focused on range-free localization as a cost-effective alternative compared to range-based approaches. However, they noticed that range-free localization suffers from higher localization error compared to the range-based algorithms. In order to deal with this problem, they presented an improved version for DV-Hop, which is a popular rang-free approach that depends on hop-distance estimation. The improvement in the DV-Hop algorithm is performed based on a genetic algorithm. Simulation results have shown that the proposed localization algorithm has better localization accuracy compared to other localization algorithms [16].

Sai et al. have presented a hybrid node localization algorithm in WSNs, which depends on the measurements of the received signal strength (RSS) and parallel firefly algorithm (PFA). Taking into consideration the distance factor, the proposed algorithm transforms the node localization problem in WSN into a nonlinear unconstrained optimization problem that is defined by an enhanced objective function. In the proposed algorithm, PFA estimates the coordinates of sensor nodes using the distances between a sensor and a few numbers of its 1-hop neighbors. Simulation results have shown that the proposed approach is better than PSO, GA, PFA, and RSS in terms of localization accuracy [17].

Sivakumar and Venkatesan have provided two-phase node localization algorithm in WSNs. In the first phase, the positions of sensor nodes are roughly estimated using a range-free localization method called mobile anchor positioning (MAP). In the second phase, the proposed algorithm attempts to reduce the localization error by employing a certain metaheuristic approach. In their work, to perform the second phase, they employed bat optimization algorithm (BOA), modified cuckoo search (MCS), and firefly optimization algorithm (FOA) resulting in three localization algorithms namely, BOA-MAP, MCS-MAP, and FOA-MAP. The experimental results have shown that FOA-MAP is better than both BOA-MAP and MCS-MAP in terms of root mean square error (RMSE) [18].

Sun et al. have proposed a multiobjective node localization algorithm based on multiobjective particle swarm optimization, called multiobjective particle swarm optimization localization algorithm (MOPSOLA). The multiobjective functions include the space distance and the geometric topology constraints. In the proposed algorithm, the size of the archive remains limited using a dynamic method. Simulation results have shown that the proposed algorithm has achieved significant enhancements in terms of localization accuracy and convergence rate [19].

Arsic et al. have proposed a node localization algorithm based on fireworks algorithm (FWA). The proposed algorithm provides optimal results in case of no ranging errors and provides good results in case of ranging errors. Moreover, they proposed an enhanced fireworks algorithm (EFWA), which achieved better results compared to FWA. Also, the proposed localization algorithm outperforms the existing PSO-based localization algorithm [20].

Shieh et al. have compared several well-known heuristics such as genetic algorithm (GA) and particle swarm optimization (PSO) to more recent methods such as grey wolf optimizer (GWO), firefly algorithm (FA), and brain storm optimization (BSO) algorithms in terms of sensor nodes localization accuracy. Also, they proposed an enhancement in the localization algorithms to increase the number of localized nodes. The improved algorithms have been compared to the original ones in terms of the number of localized nodes and execution time in different network deployments [21].

Cheng and Xia have proposed a cuckoo search (CS) algorithm-based node localization algorithm. In the proposed method, the step size has been modified to obtain a global optimal solution in a short time. Also, the candidate solutions’ fitness is used for constructing mutation probability to avoid local convergence. The performance of the proposed algorithm has been evaluated using different anchor density, node density, and communication range in terms of average localization error and localization success ratio. The simulation results have proved that the proposed algorithm is better than the standard CS and PSO in terms of average localization error and convergence time [22].

Daely and Shin have proposed a node localization algorithm based on dragonfly algorithm (DA) optimization algorithm. The proposed localization algorithm was designed to determine the positions of the nodes which are randomly distributed in a specific area. The simulation results proved that the proposed DA based algorithm is better than PSO in terms of localization accuracy [23].

Nguyen et al. have employed the multiobjective firefly algorithm to estimate the coordinates of sensor nodes in WSNs. The used objective functions depend on two criteria, namely, the nodes’ distance constraint and geometric topology constraint. The simulation results have shown the superiority of the proposed algorithm compared to well-known localization methods in terms of localization accuracy and convergence rate [24].

Arora and Singh have used the butterfly optimization algorithm to localize the sensor nodes in WSNs. The proposed localization algorithm has been validated using different numbers of nodes with distance measurements corrupted through the Gaussian noise. The simulation results have shown that the proposed localization algorithm is better than several well-known localization algorithms including particle swarm optimization (PSO) and firefly algorithm (FA) in terms of localization accuracy [25].

Ahmed et al. have presented a node localization algorithm based on whale optimization algorithm (WOA) whose main objective is to localize sensor nodes in WSNs accurately [6]. Also, Sujatha and Siddappa have proposed a hybrid localization algorithm based on dynamic weight particle swarm (DWPSO) and differential evolution (DE) algorithms. The authors observed that decreasing the square error of estimated and measured distance can improve the localization accuracy. The obtained simulation results proved that the proposed localization algorithm is better than the linearization method (LM) in terms of localization accuracy and performance stability [26].

Kaur and Arora have compared the performance of several bioinspired algorithms including flower pollination algorithm (FPA), firefly algorithm (FA), grey wolf optimization (GWO) and particle swarm optimization (PSO) in localizing the sensor nodes of WSNs. The performance of the different algorithms has been evaluated in terms of several performance metrics including localization accuracy, computing time, and several localized nodes. The simulation results have shown the superiority of FPA compared to the other algorithms in terms of localization accuracy [27].

To the best of our knowledge, the Salp Swarm Algorithm (SSA) algorithm was never used for the localization problem in WSNs so far. Therefore, the main objective of this paper is to employ the SSA algorithm for handling the localization problem in WSNs and is to evaluate its performance against several well-known swarm intelligence algorithms. The basic ideas behind the SSA and other swarm algorithms are given in the next section.

#### 3. Swarm Intelligence Algorithms

Swarm intelligence (SI) is a relatively new interdisciplinary field of research, which has gained huge popularity in these days. Algorithms belonging to this domain draw inspiration from the collective intelligence emerging from the behavior of a group of social insects (like bees, termites, and wasps). It has successfully been applied to several real-world optimization problems [28–30]. In this section, we review some of these algorithms that are employed in this paper in order to localize the nodes of WSNs.

##### 3.1. Particle Swarm Optimization

Particle swarm optimization (PSO) is a swarm optimization algorithm proposed by Eberhart and Kennedy in 1995. It is inspired by the collective behavior of bird flocking and fish schooling. It employs several particles that simulate a swarm population moving around in the search space to find the best solution. Each particle provides a candidate solution for the problem and is usually represented as a point in D-dimensional space. The position of each particle is represented as a vector . Particles move in the search space to find optimal solutions, and each particle has a velocity represented as a vector . During movement, the position of each particle is updated based on the best position that has been achieved by the particle itself (*pbest*) and the best position that has been achieved by all the particles so far (*gbest*). The velocity and the position of each particle are updated as shown below [31]:where refers to the iteration number, is inertia weight that aims at determining the effect of previous velocities on current velocity, and are acceleration constants, and are random variables whose values are normally distributed in [0, 1], and and indicate the elements of *pbest* and *gbest* in the dimension, respectively. The velocity is limited by a predefined maximum velocity .

##### 3.2. Butterfly Optimization Algorithm

Butterfly optimization algorithm (BOA) is a swarm intelligence algorithm that is recently proposed by Arora and Singh [32]. It is inspired from the food-foraging behavior of butterflies. Biologically, butterflies find the source of food using sense receptors. The role of these sense receptors, also called chemoreceptors, is to sense fragrance/smell [33].

In BOA, butterflies are the search agents that perform optimization. Each butterfly emits fragrance with some intensity. This fragrance is propagated and sensed by other butterflies in the region. The fragrance emitted by butterfly is correlated with the butterfly’s fitness. This means that the fragrance of a butterfly changes according to its current location [32]. When a butterfly is able to sense fragrance from any other butterfly that is larger than its fragrance, it will move toward the latter, and this phase is called global search. On the other side, when a butterfly cannot sense fragrance from other butterflies that is larger than its local fragrance, it will move randomly, and this phase is called local search [34]. In BOA, the fragrance is defined as a function of the physical intensity of stimulus [34] as shown below:where is the perceived magnitude of fragrance, is the sensory modality, is the stimulus intensity, and is the power exponent dependent on modality, which accounts varying degree of absorption. As mentioned before, there are two phases in the BOA algorithm, namely, local search phase and global search phase. In global search phase, the butterfly moves one step toward the best butterfly/solution which can be formulated aswhere is the solution vector of butterfly in iteration number , is the best solution found in the current stage, is the fragrance of butterfly, and is a random number in . Local search phase is formulated aswhere and are and butterflies chosen randomly from the solution space. Equation (5) is considered a local random walk if and only if and belongs to the same subswarm, and is a random number in . Search for food and mating partner by butterflies can occur at both local and global scale; therefore, a switch probability *p* is employed in BOA to switch between common global search and intensive local search.

##### 3.3. Firefly Algorithm

Firefly algorithm (FA) is a nature-inspired algorithm proposed by Yang and He [35]. It mimics the social behaviors and flashing patterns of fireflies. FA depends on the next three idealized rules [36]:(i)Fireflies are unisex which means that a firefly can get attracted to any other firefly regardless their sex.(ii)The attractiveness of fireflies is directly proportional to their brightness. Thus, for any two flashing fireflies, the firefly with less brightness moves toward the one with higher brightness. If there is no a brighter firefly than a particular firefly, the latter moves randomly.(iii)The brightness of a firefly is calculated using an objective function.

A firefly’s attractiveness is proportional to the light intensity visualized by other fireflies in the region; therefore, the relationship between the attractiveness and the distance can be formulated aswhere is the brightness at distance and is the light absorption coefficient. The movement of a firefly toward a more attractive (brighter) firefly is represented aswhere is the distance between the fireflies and that is calculated using the Euclidean norm, the second term is due to the attraction, the third term is a randomization with being the randomization parameter, and is a vector that includes random numbers.

##### 3.4. Grey Wolf Optimizer

Grey wolf optimizer (GWO) is a recent swarm intelligence algorithm inspired by the grey wolf community. It is developed by Mirjalili et al. in 2014. Grey wolf is a very dangerous creature which belongs to the Canidae family. Grey wolves usually live in packs that consist of 5 to 12 wolves. Each group has social dominance hierarchy: alpha, beta, and omega, in order. The alphas are a male and female which represent the leaders of the group. The betas are the second level of management hierarchy. The omegas are the final level in the hierarchy [37].

In order to mathematically model the social hierarchy of wolves in GWO, the fittest solution is referred to as the alpha (*α*). Consequently, the second and third best solutions are beta (*ß*) and delta (*δ*), respectively. The rest of candidate solutions are omega (*ω*) [35]. The mathematical model of the encircling behavior is represented as follows [35]:where indicates the current iteration, , , is the position vector of the wolf, and are random vectors in [0, 1] and linearly varies from 2 to 1, *C* and *A* are coefficient vectors, and is the position vector of the prey. During the optimization, wolves update their positions around and . Therefore, the wolves can reposition with respect to and as shown below [35]:

With these equations, a search agent updates its position according to and in an *n*-dimensional search space. In addition, the final position would be in a random place within a circle which is defined by the positions of and in the search space [37].

##### 3.5. Salp Swarm Algorithm

Salps are part of Salpidae family with the limpid cylinder design body. They look like jellyfishes in texture and movement. The shape of a Salp is shown in Figure 1(a). The water is pushed Salps bodies to move forward [38]. Generally, the biological research about Salps is still in its early stages because their living environments are hardly accessible, and it is very difficult to keep them in laboratory environment. Salps swarming attitude is the main inspiration to build Salp swarm algorithm [39]. Salps compose a swarm in profound oceans which is called Salp chain. This chain is illustrated in Figure 1(b). This chain can help to achieve better locomotion during the foraging process [40].