# Salp Swarm Algorithm for Node Localization in Wireless Sensor Networks

Authors: Huthaifa M. Kanoosh; Essam Halim Houssein; Mazen M. Selim
Journal: Journal of Computer Networks and Communications
 (2019)

---

## 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.


---

## Body

## 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: Section2 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 vectorxi=xi1⋅xi2⋅…⋅xiD. Particles move in the search space to find optimal solutions, and each particle has a velocity represented as a vector vi=vi1⋅vi2⋅…⋅viD. 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]:(1)xidt+1=xidt+vidt+1,(2)vidt+1=w∗vidt+c1∗r1∗pid−xidt+c2∗r2∗pgd−xidt,where t refers to the iteration number, w is inertia weight that aims at determining the effect of previous velocities on current velocity, c1 and c2 are acceleration constants, r1 and r2 are random variables whose values are normally distributed in [0, 1], and pid and pgd indicate the elements of pbest and gbest in the dth dimension, respectively. The velocity is limited by a predefined maximum velocity vmax.


### 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:(3)fi=cIa,where fi is the perceived magnitude of fragrance, c is the sensory modality, I is the stimulus intensity, and a 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 g∗ which can be formulated as(4)xit+1=xit+r2×g∗−xit×fi,where xit is the solution vector xi of ith butterfly in iteration number t, g∗ is the best solution found in the current stage, fi is the fragrance of ith butterfly, and r is a random number in 0,1. Local search phase is formulated as(5)xit+1=xit+r2×xkt−xjt×fi,where xjt and xkt are jth and kth butterflies chosen randomly from the solution space. Equation (5) is considered a local random walk if and only if xjt and xkt belongs to the same subswarm, and r is a random number in 0,1. 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 r can be formulated as(6)β=β0e−γr2,where β0 is the brightness at distance r=0 and γ is the light absorption coefficient. The movement of a firefly i toward a more attractive (brighter) firefly j is represented as(7)xit+1=xit+β0e−γrij2xjt−xit+αtϵit,where rij is the distance between the fireflies i and j that is calculated using the Euclidean norm, the second term is due to the attraction, the third term is a randomization with αt being the randomization parameter, and ϵit 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]:(8)D→=C→.X→pt−X→t,X→t+1=X→pt−A→.D→,where t indicates the current iteration, C→=2.r→2, A→=2a→.r→1−a→, X→m is the position vector of the wolf, r1 and r2 are random vectors in [0, 1] and linearly varies from 2 to 1, C and A are coefficient vectors, and Xp 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]:(9)D→α=C→1.X→α−X→.D→β=C→2.X→β−X→.D→δ=C→3.X→δ−X→,X→1=X→α−A→1.D→α.X→2=X→β−A→2.D→β.X→3=X→δ−A→3.D→δ,X→t+1=X→1+X→2+X→33.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 Figure1(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].Figure 1
(a) Individual Salp. (b) Salps chain [37].
(a)
(b)Originally, the Salps population is divided into two groups to formulate the mathematical model for Salp chains: head and followers. The head position is at the beginning of the chain while the rest of the chain is referred to as the followers [41].The Salps location is determined likewise swarm-based methods, by an n-dimensional search area via considering the number of variables inside the presented problem represented byn. Accordingly, a two-dimensional matrix described as x will reservation the position of all Salps. It is supposed too, in search space, there is “F” which is a food source as the target of the swarm. The following equation is suggested to upgrade the leader location [37]:(10)xj1=Fj+c1ubj−lbjc2+lbj,c3≥0,Fj−c1ubj−lbjc2+lbj,c3<0,where xj1 shows the position of the first Salp (leader) in the jth dimension, Fj is the position of the food source in the jth dimension, ubj indicates the upper bound of jth dimension, lbj indicates the lower bound of jth dimension, and c1 , cthe2 , and c3 are random numbers.Equation (10) shows that the leader only updates its position with respect to the food source. The coefficient c1 is the most important parameter in SSA because it balances exploration and exploitation defined as follows [37]:(11)c1=2e−4l/L2,where l is the current iteration and L is the maximum number of iterations.The parametersc2 and c3 are random numbers uniformly generated in the interval of [0, 1]. In fact, they dictate if the next position in jth dimension should be towards positive infinity or negative infinity as well as the step size. To update the position of the followers, the following equations is utilized (Newton’s law of motion) [37]:(12)xji=12at2+v0t,where i≥2, xji shows the position of ith follower Salp in jth dimension, t is time, v0 is the initial speed, and a=vfinal/v0 where v=x−x0/t.Because the time in optimization is an iteration, the discrepancy between iterations is equal to 1 and consideringv0=0, this equation can be expressed as follows [37]:(13)xji=12xji+xji−1,where i≥2 and xji shows the position of ith follower Salp in jth dimension. Using equations (1) and (4), the Salp chains can be simulated. Figure 2 shows the pseudocode to implement the SSA algorithm.Figure 2
Pseudocode of the SSA algorithm.


## 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 vectorxi=xi1⋅xi2⋅…⋅xiD. Particles move in the search space to find optimal solutions, and each particle has a velocity represented as a vector vi=vi1⋅vi2⋅…⋅viD. 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]:(1)xidt+1=xidt+vidt+1,(2)vidt+1=w∗vidt+c1∗r1∗pid−xidt+c2∗r2∗pgd−xidt,where t refers to the iteration number, w is inertia weight that aims at determining the effect of previous velocities on current velocity, c1 and c2 are acceleration constants, r1 and r2 are random variables whose values are normally distributed in [0, 1], and pid and pgd indicate the elements of pbest and gbest in the dth dimension, respectively. The velocity is limited by a predefined maximum velocity vmax.


## 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:(3)fi=cIa,where fi is the perceived magnitude of fragrance, c is the sensory modality, I is the stimulus intensity, and a 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 g∗ which can be formulated as(4)xit+1=xit+r2×g∗−xit×fi,where xit is the solution vector xi of ith butterfly in iteration number t, g∗ is the best solution found in the current stage, fi is the fragrance of ith butterfly, and r is a random number in 0,1. Local search phase is formulated as(5)xit+1=xit+r2×xkt−xjt×fi,where xjt and xkt are jth and kth butterflies chosen randomly from the solution space. Equation (5) is considered a local random walk if and only if xjt and xkt belongs to the same subswarm, and r is a random number in 0,1. 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 r can be formulated as(6)β=β0e−γr2,where β0 is the brightness at distance r=0 and γ is the light absorption coefficient. The movement of a firefly i toward a more attractive (brighter) firefly j is represented as(7)xit+1=xit+β0e−γrij2xjt−xit+αtϵit,where rij is the distance between the fireflies i and j that is calculated using the Euclidean norm, the second term is due to the attraction, the third term is a randomization with αt being the randomization parameter, and ϵit 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]:(8)D→=C→.X→pt−X→t,X→t+1=X→pt−A→.D→,where t indicates the current iteration, C→=2.r→2, A→=2a→.r→1−a→, X→m is the position vector of the wolf, r1 and r2 are random vectors in [0, 1] and linearly varies from 2 to 1, C and A are coefficient vectors, and Xp 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]:(9)D→α=C→1.X→α−X→.D→β=C→2.X→β−X→.D→δ=C→3.X→δ−X→,X→1=X→α−A→1.D→α.X→2=X→β−A→2.D→β.X→3=X→δ−A→3.D→δ,X→t+1=X→1+X→2+X→33.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 Figure1(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].Figure 1
(a) Individual Salp. (b) Salps chain [37].
(a)
(b)Originally, the Salps population is divided into two groups to formulate the mathematical model for Salp chains: head and followers. The head position is at the beginning of the chain while the rest of the chain is referred to as the followers [41].The Salps location is determined likewise swarm-based methods, by an n-dimensional search area via considering the number of variables inside the presented problem represented byn. Accordingly, a two-dimensional matrix described as x will reservation the position of all Salps. It is supposed too, in search space, there is “F” which is a food source as the target of the swarm. The following equation is suggested to upgrade the leader location [37]:(10)xj1=Fj+c1ubj−lbjc2+lbj,c3≥0,Fj−c1ubj−lbjc2+lbj,c3<0,where xj1 shows the position of the first Salp (leader) in the jth dimension, Fj is the position of the food source in the jth dimension, ubj indicates the upper bound of jth dimension, lbj indicates the lower bound of jth dimension, and c1 , cthe2 , and c3 are random numbers.Equation (10) shows that the leader only updates its position with respect to the food source. The coefficient c1 is the most important parameter in SSA because it balances exploration and exploitation defined as follows [37]:(11)c1=2e−4l/L2,where l is the current iteration and L is the maximum number of iterations.The parametersc2 and c3 are random numbers uniformly generated in the interval of [0, 1]. In fact, they dictate if the next position in jth dimension should be towards positive infinity or negative infinity as well as the step size. To update the position of the followers, the following equations is utilized (Newton’s law of motion) [37]:(12)xji=12at2+v0t,where i≥2, xji shows the position of ith follower Salp in jth dimension, t is time, v0 is the initial speed, and a=vfinal/v0 where v=x−x0/t.Because the time in optimization is an iteration, the discrepancy between iterations is equal to 1 and consideringv0=0, this equation can be expressed as follows [37]:(13)xji=12xji+xji−1,where i≥2 and xji shows the position of ith follower Salp in jth dimension. Using equations (1) and (4), the Salp chains can be simulated. Figure 2 shows the pseudocode to implement the SSA algorithm.Figure 2
Pseudocode of the SSA algorithm.


## 4. Formulation of WSN Localization Problem

WSN node localization problem is formulated using the single hop range-based distribution technique to estimate the position of the unknown node coordinates (X, Y) with the aid of anchor nodes (position of known nodes) coordinates (x, y). Anchor nodes are provided with a GPS device, so it has the capability of automatically determining its position. Most of the nodes in the WSN are not equipped with GPS due to high cost. To measure the coordinates of N unknown nodes, the procedure followed is given below.Step 1.
Randomly initialize theN unknown nodes and M anchor nodes within the communication range (R). Anchor nodes measure their position and communicate their coordinates to their neighbors. For all iterations, the node which settles at the end is termed as the reference node, and this node will act as anchor node.Step 2.
Three or more anchor nodes within the communication range of a node are considered as a localized node.Step 3.
Let (x, y) be the coordinates of the target node to be determined and di be the distance between the target node and the ith anchor node.(14)di=x−xi2+y−yi2.Step 4.
The optimization problem is formulated to minimize the error of the localization problem. The objective function for the localization problem is formulated as(15)fx,y=min∑i=1Mx−xi2+y−yi22,where M is the anchor nodes within the transmission range (R) of the target node.Step 5.
All target localized nodes (NL) are determined, the whole localization error is calculated as the mean of the square of distances of the estimated coordinates node (xi, yi) and the actual node coordinates (Xi, Yi), for i = 1, 2, …, NL:(16)EL=1NL∑i=1Lxi−Xi2+yi−Yi2.
The performance of SSA algorithm evaluated usingEL and the number of nonlocalized nodes NNL, where NNL=N−NL.Step 6.
Repeat the steps 2–5 until all unknown/target nodes get localized or no more nodes can be localized.


## 5. Experimental Analysis

In this section, the proposed WSN localization approach is evaluated under different scenarios, and its performance is compared to four other swarm-based algorithms (PSO, BOA, FA, and GWO) in terms of localization accuracy and computing time. The computations of the different algorithms are performed using MATLAB R2012b on a machine of Intel Core i7 CPU, 4 GB RAM, and Windows7 operating system. The parameters’ values of the deployment area are shown in Table1.Table 1
Parameters setting of simulation environment.
Parameters
Values
Sensor nodes
Varies on∑i=16i∗25
Anchor nodes
Varies on incrementi=i+5
Node transmission range (R)
30 m
Deployment area
100 m × 100 m
Maximum number of iterations
100For BOA, the sensory modalityc is set 0.01, whereas the initial value of power exponent a is set to 0.1 [25]. For PSO, initial values of ω = 0.7 and c1 = c2 = 1.494 were recommended for faster convergence after experimental tests [25]. For FA, the randomization parameter α is set to 0.25, the absorption coefficient γ is set to 1.0, and the initial attractiveness parameter β is set to 1. For GWO, the parameter a linearly decreases in the interval of [2 to 0] and the C parameter linearly increases from 0 to 2 [6]. Finally, for SSA, c1 is calculated using equation (2), whereas c2=0.7 and c3=0.3 and c2, c3 are random numbers uniformly generated from the interval [0, 1].


### 5.1. Sensor Nodes Localization Using SSA

In all conducted experiments, the coordinates of central nodes (N) and destination nodes (M) are randomly configured during the construction of the deployment area. The deployment area includes three types of nodes: anchor nodes whose known position, target nodes whose unknown position, and localized nodes whose positions are already estimated. In this section, the performance of the SSA-based localization algorithm is evaluated under different scenarios using different numbers of target nodes and different numbers of anchors as shown in Figure 3.Figure 3
Node localization using different numbers of target nodes and anchor nodes. (a) Target nodes = 25; anchor nodes = 10. (b) Target nodes = 50; anchor nodes = 15. (c) Target nodes = 75; anchor nodes = 20. (d) Target nodes = 100; anchor nodes = 25. (e) Target nodes = 125; anchor nodes = 30. (f) Target nodes = 150; anchor nodes = 35.
(a)
(b)
(c)
(d)
(e)
(f)


### 5.2. Comparison among Different Localization Algorithms

In this section, SSA and the other swarm algorithms have been evaluated under different scenarios in terms of localization error, computing time, and number of localized nodes. The obtained results of the different algorithms are shown in Table2.Table 2
Performance metrics of different localization algorithms.
Target nodes
Anchor nodes
No. of iterations
PSO
BOA
FA
GWO
SSA
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
25
10
25
0.818
0.40
16
0.232
0.37
22
0.265
0.6
19
0.744
0.22
20
0.465
0.35
22
50
0.812
0.40
15
0.225
0.38
23
0.262
1.2
20
0.741
0.41
21
0.462
0.35
23
75
0.803
0.41
18
0.223
0.39
25
0.258
1.5
21
0.741
0.54
21
0.458
0.36
23
100
0.792
0.41
18
0.221
0.40
25
0.251
1.8
19
0.740
0.79
23
0.451
0.37
24
50
15
25
0.419
0.71
41
0.338
0.84
47
0.477
1.6
46
0.690
0.42
44
0.477
0.67
43
50
0.426
0.73
47
0.332
0.85
48
0.473
1.9
49
0.688
0.63
45
0.472
0.69
47
75
0.429
0.76
46
0.326
0.86
49
0.465
2.5
49
0.686
0.81
46
0.468
0.69
48
100
0.434
0.76
48
0.323
0.86
49
0.465
3.5
48
0.682
0.98
48
0.464
0.70
50
75
20
25
0.735
1.31
73
0.257
1.49
66
0.519
2.9
71
0.641
0.72
72
0.519
0.90
69
50
0.728
1.32
74
0.257
1.49
66
0.513
3.8
72
0.641
0.95
72
0.513
0.92
72
75
0.728
1.33
74
0.255
1.50
70
0.504
4.7
73
0.638
1.3
73
0.504
0.95
73
100
0.724
1.35
75
0.253
1.52
72
0.503
5.2
73
0.635
1.4
74
0.503
0.96
75
100
25
25
0.661
2.10
97
0.355
2.40
97
0.711
3.8
98
0.611
1.1
95
0.511
1.31
98
50
0.658
2.16
97
0.355
2.44
99
0.709
4.2
98
0.606
1.5
97
0.509
1.33
98
75
0.642
2.17
99
0.333
2.47
100
0.702
5.6
99
0.602
1.8
98
0.502
1.36
99
100
0.641
2.20
100
0.331
2.50
100
0.704
6.3
98
0.602
2.1
98
0.504
1.37
100
125
30
25
0.754
4.87
120
0.549
3.84
122
0.829
2.7
122
0.589
1.5
122
0.529
1.67
123
50
0.748
4.86
121
0.548
3.85
123
0.824
4.5
123
0.580
2.2
123
0.524
1.68
124
75
0.750
4.89
122
0.534
3.86
124
0.822
5.9
125
0.580
2.8
123
0.522
1.70
125
100
0.752
4.95
125
0.534
3.89
124
0.822
6.5
124
0.572
3.3
125
0.522
1.72
125
150
35
25
0.625
5.41
145
0.766
5.88
147
0.911
2.5
149
0.559
2.8
148
0.511
2.12
149
50
0.622
5.42
146
0.765
5.61
148
0.909
4.2
150
0.547
3.6
149
0.509
2.14
149
75
0.619
5.44
148
0.763
5.64
149
0.904
6.4
150
0.523
4.3
150
0.504
2.16
150
100
0.616
5.45
150
0.763
5.69
149
0.904
7.2
149
0.523
4.8
150
0.504
2.18
150Under the different scenarios (number of nodes/number of anchors), it is noticed that for all the localization algorithms, increasing the number of iterations increases both of the number of localized nodes and the computing time while reduces the localization error. This notice is rational because increasing the number of iterations means higher amounts of computations, which requires longer computation time. On the other side, increasing the number of iterations means that the chance to find a better solution get bigger; hence, the number of localized nodes get larger and the value of localization error get smaller. For better results analysis, the experimental results are summarized in Table3.Table 3
Summary of experimental results of the different localization algorithms.
Target nodes
Anchor nodes
PSO
BOA
FA
GWO
SSA
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
25
10
0.79
0.40
18
0.22
0.38
25
0.25
1.8
19
0.74
0.54
21
0.45
0.35
24
50
15
0.43
0.76
46
0.32
0.86
49
0.42
2.5
49
0.69
0.81
46
0.46
0.69
48
75
20
0.72
1.35
75
0.25
1.52
68
0.51
4.7
73
0.64
0.95
72
0.50
0.96
73
100
25
0.65
2.16
100
0.35
2.45
100
0.70
5.3
98
0.60
2.1
98
0.51
1.35
100
125
30
0.74
4.90
123
0.54
3.87
124
0.82
6.5
124
0.58
2.8
123
0.52
1.70
125
150
35
0.62
5.43
149
0.76
5.65
149
0.90
7.2
149
0.52
4.3
150
0.50
2.15
150Based on Table3, regarding the mean localization error (EL), there is no clear pattern that can be detected to represent the relationship between this performance metric and the number of target nodes and anchor nodes. However, it is noticed that SSA has the best results regarding this performance metric compared to PSO, BOA, FA, and GWO, particularly, when the numbers of target nodes and anchor nodes are increased. Regarding the computing time, it is noticed that increasing the number of target nodes and anchor nodes increase the computing time for all localization algorithms. However, once again, SSA has the best computing time compared to PSO, BOA, FA, and GWO. Finally, regarding the number of localized nodes (NL), it is noticed that SSA has the best results compared to other localization algorithms. In addition, it is noticed that SSA has inferior EL when the percentage of (number of anchor nodes/number of target nodes) becomes larger such as (10/25) in the first case in Table 3. That is because the localization accuracy increases when the anchor density increases with respect to the number of the target nodes [25].The graphical representations of the experimental results for the different performance metrics are shown in Figures4–6.Figure 4
The localization error of the different localization algorithms in different WSN deployments.Figure 5
The computing time of the different localization algorithms in different WSN deployments.Figure 6
The number of localized nodes of the different localization algorithms in different WSN deployments.


## 5.1. Sensor Nodes Localization Using SSA

In all conducted experiments, the coordinates of central nodes (N) and destination nodes (M) are randomly configured during the construction of the deployment area. The deployment area includes three types of nodes: anchor nodes whose known position, target nodes whose unknown position, and localized nodes whose positions are already estimated. In this section, the performance of the SSA-based localization algorithm is evaluated under different scenarios using different numbers of target nodes and different numbers of anchors as shown in Figure 3.Figure 3
Node localization using different numbers of target nodes and anchor nodes. (a) Target nodes = 25; anchor nodes = 10. (b) Target nodes = 50; anchor nodes = 15. (c) Target nodes = 75; anchor nodes = 20. (d) Target nodes = 100; anchor nodes = 25. (e) Target nodes = 125; anchor nodes = 30. (f) Target nodes = 150; anchor nodes = 35.
(a)
(b)
(c)
(d)
(e)
(f)


## 5.2. Comparison among Different Localization Algorithms

In this section, SSA and the other swarm algorithms have been evaluated under different scenarios in terms of localization error, computing time, and number of localized nodes. The obtained results of the different algorithms are shown in Table2.Table 2
Performance metrics of different localization algorithms.
Target nodes
Anchor nodes
No. of iterations
PSO
BOA
FA
GWO
SSA
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
25
10
25
0.818
0.40
16
0.232
0.37
22
0.265
0.6
19
0.744
0.22
20
0.465
0.35
22
50
0.812
0.40
15
0.225
0.38
23
0.262
1.2
20
0.741
0.41
21
0.462
0.35
23
75
0.803
0.41
18
0.223
0.39
25
0.258
1.5
21
0.741
0.54
21
0.458
0.36
23
100
0.792
0.41
18
0.221
0.40
25
0.251
1.8
19
0.740
0.79
23
0.451
0.37
24
50
15
25
0.419
0.71
41
0.338
0.84
47
0.477
1.6
46
0.690
0.42
44
0.477
0.67
43
50
0.426
0.73
47
0.332
0.85
48
0.473
1.9
49
0.688
0.63
45
0.472
0.69
47
75
0.429
0.76
46
0.326
0.86
49
0.465
2.5
49
0.686
0.81
46
0.468
0.69
48
100
0.434
0.76
48
0.323
0.86
49
0.465
3.5
48
0.682
0.98
48
0.464
0.70
50
75
20
25
0.735
1.31
73
0.257
1.49
66
0.519
2.9
71
0.641
0.72
72
0.519
0.90
69
50
0.728
1.32
74
0.257
1.49
66
0.513
3.8
72
0.641
0.95
72
0.513
0.92
72
75
0.728
1.33
74
0.255
1.50
70
0.504
4.7
73
0.638
1.3
73
0.504
0.95
73
100
0.724
1.35
75
0.253
1.52
72
0.503
5.2
73
0.635
1.4
74
0.503
0.96
75
100
25
25
0.661
2.10
97
0.355
2.40
97
0.711
3.8
98
0.611
1.1
95
0.511
1.31
98
50
0.658
2.16
97
0.355
2.44
99
0.709
4.2
98
0.606
1.5
97
0.509
1.33
98
75
0.642
2.17
99
0.333
2.47
100
0.702
5.6
99
0.602
1.8
98
0.502
1.36
99
100
0.641
2.20
100
0.331
2.50
100
0.704
6.3
98
0.602
2.1
98
0.504
1.37
100
125
30
25
0.754
4.87
120
0.549
3.84
122
0.829
2.7
122
0.589
1.5
122
0.529
1.67
123
50
0.748
4.86
121
0.548
3.85
123
0.824
4.5
123
0.580
2.2
123
0.524
1.68
124
75
0.750
4.89
122
0.534
3.86
124
0.822
5.9
125
0.580
2.8
123
0.522
1.70
125
100
0.752
4.95
125
0.534
3.89
124
0.822
6.5
124
0.572
3.3
125
0.522
1.72
125
150
35
25
0.625
5.41
145
0.766
5.88
147
0.911
2.5
149
0.559
2.8
148
0.511
2.12
149
50
0.622
5.42
146
0.765
5.61
148
0.909
4.2
150
0.547
3.6
149
0.509
2.14
149
75
0.619
5.44
148
0.763
5.64
149
0.904
6.4
150
0.523
4.3
150
0.504
2.16
150
100
0.616
5.45
150
0.763
5.69
149
0.904
7.2
149
0.523
4.8
150
0.504
2.18
150Under the different scenarios (number of nodes/number of anchors), it is noticed that for all the localization algorithms, increasing the number of iterations increases both of the number of localized nodes and the computing time while reduces the localization error. This notice is rational because increasing the number of iterations means higher amounts of computations, which requires longer computation time. On the other side, increasing the number of iterations means that the chance to find a better solution get bigger; hence, the number of localized nodes get larger and the value of localization error get smaller. For better results analysis, the experimental results are summarized in Table3.Table 3
Summary of experimental results of the different localization algorithms.
Target nodes
Anchor nodes
PSO
BOA
FA
GWO
SSA
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
E
L(m)
T(s)
N
L
25
10
0.79
0.40
18
0.22
0.38
25
0.25
1.8
19
0.74
0.54
21
0.45
0.35
24
50
15
0.43
0.76
46
0.32
0.86
49
0.42
2.5
49
0.69
0.81
46
0.46
0.69
48
75
20
0.72
1.35
75
0.25
1.52
68
0.51
4.7
73
0.64
0.95
72
0.50
0.96
73
100
25
0.65
2.16
100
0.35
2.45
100
0.70
5.3
98
0.60
2.1
98
0.51
1.35
100
125
30
0.74
4.90
123
0.54
3.87
124
0.82
6.5
124
0.58
2.8
123
0.52
1.70
125
150
35
0.62
5.43
149
0.76
5.65
149
0.90
7.2
149
0.52
4.3
150
0.50
2.15
150Based on Table3, regarding the mean localization error (EL), there is no clear pattern that can be detected to represent the relationship between this performance metric and the number of target nodes and anchor nodes. However, it is noticed that SSA has the best results regarding this performance metric compared to PSO, BOA, FA, and GWO, particularly, when the numbers of target nodes and anchor nodes are increased. Regarding the computing time, it is noticed that increasing the number of target nodes and anchor nodes increase the computing time for all localization algorithms. However, once again, SSA has the best computing time compared to PSO, BOA, FA, and GWO. Finally, regarding the number of localized nodes (NL), it is noticed that SSA has the best results compared to other localization algorithms. In addition, it is noticed that SSA has inferior EL when the percentage of (number of anchor nodes/number of target nodes) becomes larger such as (10/25) in the first case in Table 3. That is because the localization accuracy increases when the anchor density increases with respect to the number of the target nodes [25].The graphical representations of the experimental results for the different performance metrics are shown in Figures4–6.Figure 4
The localization error of the different localization algorithms in different WSN deployments.Figure 5
The computing time of the different localization algorithms in different WSN deployments.Figure 6
The number of localized nodes of the different localization algorithms in different WSN deployments.


## 6. Conclusion

Accurate node localization concerns many applications that adopt WSNs. In this paper, a node localization algorithm has been proposed based on a novel bioinspired algorithm called Salp Swarm Algorithm (SSA) which handled the node localization problem as an optimization problem. The proposed algorithm has been implemented and validated in different WSN deployments using different numbers of target nodes and anchor nodes. Moreover, the proposed algorithm has been evaluated and compared to four well-known optimization algorithms, namely PSO, BOA, FA, and GWO, in terms of localization accuracy, computing time, and several localized nodes. The obtained simulation results have proved the superiority of the proposed algorithm compared to the other localization algorithms regarding the different performance metrics. In the future work, the proposed approach can be hybridized with other algorithm to reduce the localization error.



---

*Source: 1028723-2019-02-19.xml*