A Simplex Method-Based Salp Swarm Algorithm for Numerical and Engineering Optimization

: Salp Swarm Algorithm (SSA) is a novel meta-inspired optimization algorithm. The main inspiration of this algorithm is the swarming behavior of salps when navigating and foraging in the ocean. This algorithm has already displayed the strong ability in solving some engineering design problems. This paper proposes an improved salp swarm algorithm based on simplex method named as simplex method-based salp swarm algorithm (SMSSA). The simplex method is a stochastic variant strategy, which increases the diversity of the population and enhances the local search ability of the algorithm. This approach helps to achieve a better trade-off between the exploration and exploitation ability of the SSA and makes SSA more robust and faster. The proposed algorithm is compared with other four meta-inspired algorithms on 4 benchmark functions. The proposed algorithm is also applied to one real-life constrained engineering design problems. The experimental results have demonstrated the MSSSA performs better than the other competitive meta-inspired algorithms.


Introduction
The purpose of the optimization aims at finding the best possible solution(s) for given problems.In the real world, a lot of problems can be considered as optimization problems.With the scale and complexity of the problem escalating, we need new optimization techniques more than ever.Over the past few decades, many new metaheuristic techniques have been proposed to solve these optimization problems and become very popular.These meta-heuristics like a black box just need to looking at the inputs and outputs.In the recent years, some well-known meta-heuristic algorithms are proposed in this field such as Different Evolution [1], Particle Swarm Optimization (PSO) [2], Bat algorithm (BA) [3], Moth-Flame Optimization (MFO) [4], Grey Wolf Optimization (GWO) [5], and Cuckoo Search (CS) [6].Most of these algorithms are derived from a various natural phenomenon.These algorithms are widely used in a variety of scientific and industry fields.
The salp swarm optimization algorithm is proposed by Mirjalili. et.al. [7]).The salps swarm optimization has been shown the powerful results, when it compared to other state-of-the-art met-heuristic optimization algorithms.The author has been applied this algorithm to engineering design problems such as welded design problem, and achieved good results.Although, the SSA has proved good performance compared with some traditional algorithms, it still has some drawbacks such as spend too long time in research phase, and need to enhance the ability of convergence speed and calculation accuracy.To overcome the above problems, a simplex method-based salp swarm algorithm is proposed.The simplex method [8] has the strong ability to avoid local optimum and enhance the ability of searching the global optimum.In this work an improved version of the SSA is based on simplex method named SMSSA which purpose aimed at enhance the precision of the convergence of basic SSA.
The rest of paper is organized as follows: In the section 2 presents a briefly introduce of the original SSA algorithm and Simplex method.The detailed description of the SMSSA algorithm is introduced in the section 3.In the section 4, through a range of tests to demonstrate the superior performance of SMSSA and compared with other well-known five meta-heuristic algorithms (including the original algorithm SSA) via fourteen benchmark functions.In the section 5, SMSSA employed to solve one engineering design problems.The analysis and discussion of the results are provided in section 6.In the last section, the conclusion of the work will provided.

Related Works
In this part, a briefly background information about the salp swarm algorithm will be provided.The salp swarm algorithm [9] is a new meta-heuristic optimization algorithm that proposed by Seyedali Mirjalili.The SSA inspired from the behavior of the salps foraging and navigating in the ocean.Salps is one of the family of Salpidae and the body is transparent barrel-shaped.The tissues of salp are very similar to jelly fish.Salps navigate in the water by using water pumped through body to get propulsion to move forward [10].
In the SSA algorithm, the mathematically model of the salp chains are divided to two groups: leader groups and follow groups.The leader salp position updating formula as follows: The equation of the follow salps update its position can be expressed as follows: Where 2 N i  and i j X denotes that the follower salp position in jth dimension.
The equation (1) simulated the move of the salp chains.The steps of salp swarm algorithm (SSA) can be described through the pseudo code illustrated as follows (algorithm 1): for each salp ( i Update the position of the leading salp by equation (3.1) 9. else 10.
Update the position of the follower salp by equation (3.3) 11.
end if 12. end for 13.Amend the salps based on the upper and lower bounds of variables 14. end while 15.Return F

The Proposed SMSSA Approach
The simplex method-based on salp swarm algorithm (SMSSA) proposed in this paper is designed to improve the population diversity and enhance the speed of the convergence.The simplex method has excellent qualities that make the algorithm to jump out the local optimum and increase the diversity of the population.It is means that this approach can make a balance between exploration and exploitation ability of SSA.So, we update the location of the worst salp by using simplex method after each iterating.The modified algorithm 2 illustrated as follows:

Simulation Platform
The experimental settings for these algorithms are tested in MATLAB R2016 (a) on a windows 10 computer with an Intel Core (TM) i5-4590 Processor, 3.30GHz, 4GB RAM.

Benchmark Functions
Benchmark functions are widely used in this field to benchmark the performance of the algorithm by using a set of quintessential math functions to find the globally optimal.Following the same procedure, 4 standard benchmark functions are used as a comparative test bed from the literature [8,9].Tables 1, 2 illustrated the mathematical formulations that employed benchmark functions used respectively.In these three tables, range denotes the search space boundary of the function, and dim means the dimension of the function, and min f represent the theoretical minimum (optimal value).Heuristic algorithms are stochastic optimization techniques, so they must run dozens of times to produce meaningful statistical results.The result of the last iteration is calculated as the best solution.The same method was chosen to generate and report results for over 30 independent runs.
In this work, the best, the average, the worst, and the standard represent the best fitness value, the worst fitness value, and the standard deviation, respectively.The experimental results are shown in Tables 3, 4. The best results are shown in bold type.In addition, for the randomness of the algorithm, statistical tests should be conducted to confirm the significance of the results [10].To determine whether the SMSSA results differed statistically from the best results for CS, MFO, PSO, BA, and SSA, a non-parametric test called the Wilcoxon rank-sum test [11] is performed at 5% significance level.Tables 6,7 illustrated the pairwise comparisons of the best values for the six groups generated by the Wilcoxon test.Such groups are formed by CS versus SMSSA, MFO versus SMSSA, PSO versus SMSSA, BA versus SMSSA, SSA versus SMSSA.Generally, p values < 0.05 can harbor the idea that it is strong evidence against the null hypothesis.Through the statistical test, we can confirm that the results are not produced by chance.
In addition, through nonparametric Wilcoxon statistical tests and calculate the p values are reported as the standards of significance as well.Tlabes5, 6 show the experimental results of the rank-sum test.

Unimodal Benchmark Functions
The unimodal benchmark functions have only one global optimum and have no local optimum.So, this type of functions is very suitable for benchmarking the convergence of the algorithm.The results shown in Table 4 show that SMSSA algorithm is more competitive in researching the global optimum.According to the Table 4, the results of SMSSA are superior to some of other algorithms in .
3 1 ~f f Therefore, the SMSSA has higher performance in finding the global minimum of unimodal benchmark functions.As shown in Table 5, the p values of 3 1 ~f f illustrated that SMSSA achieves paramount improvement in some unimodal benchmark functions against other algorithm.Therefore, it is proved by unimodal benchmark functions that SMSSA has better performance in searching global optimal value.Figure 1-3 shows that the average convergence curve for all algorithms tested with the unimodal benchmark functions are obtained from 30 times independent run.

Multimodal Benchmark Functions
Compared with the unimodal benchmark functions, the multimodal benchmark functions have many local optimal solutions (minima) which increases exponentially with the dimension.This feature makes them good at benchmarking the exploration ability of the algorithm.The result obtained from the benchmark function test reflects the ability of an algorithm to avoid the local minimum and finally can reach the global minimum.Table 4  f which demonstrated it is not the null hypothesis.Therefore, these evidence shows that the results of SMSSA not occurring by accident in the statistic's sense.
As the Table 4 and Figures 5 shown, the speed of convergence of SMSSA on the multimodal benchmark functions is faster than other algorithms In summary, these evidence shows that this algorithm is more stable and robust than other algorithms.

SMSSA for Engineering Optimization Problems
In this part, solve an engineering problem (spring design problem) by applying SMSSA algorithm to prove the good performance of SMSSA.Assuming the use of the SMSSA algorithm, some inequality constraints of real problems will be solved.Some methods have been employed to deal with constraints in the paper: special operators, penalty function, repaired algorithms, and hybrid methods [12].The spring design problem, [13] is a classic engineering design problem.The main purpose of this problem is to minimize the weight of the spring illustrated in Figure 7.The model of this problem described as follows:  As shown in Table 10, the spring design problem has been solved by some different approaches.Some meta-heuristic algorithms such as GSA [14], PSO [15] Evolutionary genetic algorithms GA [16] has been employed to solve this problem.The statistics lead us to the conclusion that the SMSSA is better than other algorithms.

Conclusion
This work proposed an improved algorithm named SMSSA based on simplex method aims at increases the performance of the original SSA algorithm.It can be seen from the section 4, experimental results show that SMSSA achieves not only faster convergence speed and better solutions compared with other algorithms.The conclusion is derived from the comparison between SMSSA and other algorithms.This proposed algorithm demonstrated its outstanding performance by 4 benchmark functions.In addition, this algorithm (SMSSA) also applied to solve engineering problems.The results in the section 5 illustrated that SMSSA algorithm has good performance in solving engineering constraint problems.By combining the advantages of both techniques, SMSSA can get a balance between exploitation and exploration to deal with classical engineering problems.

X
indicate the position of the leader salp groups in the jth dimension, j F indicates the position of the food source in the jth dimension, j ub denotes the upper bound of the salps in the jth dimension, j lb denotes the lower bound of the salps in the jth dimension, 1 c , 2 c , 3 c are three random coefficients.

Figure 7 .
Figure 7.The spring design problem.
illustrated the results of the algorithm on multimodal benchmark functions.All the results of the Best, Worst, Mean, and Std values illustrated in the table, SMSSA can provide more competitive results on the multimodal benchmark functions.All the results in the table show that the SMSSA has advantage in exploration.As the p values of shown in the Table 6 are less than 0.05 mostly,

Table 4 .
The results of multimodal benchmark functions.

Table 5 .
p values rank-sum test on unimodal benchmark functions

Table 6 .
p values rank-sum test on multimodal benchmark functions

Table 10 .
Comparison results for spring design problem