Abstract
Grasshopper optimization algorithm (GOA) is proposed for imitating grasshopper’s behavior in nature, which has the disadvantages of slow convergence speed and unbalanced exploration and exploitation, etc. Therefore, an algorithm called GOA_jDE, which combines GOA and jDE is proposed to improve the optimization performance. Firstly, the adaptive strategy is introduced into DE to improve the global search ability in the proposed algorithm. Secondly, the combination of jDE and GOA greatly improves the convergence efficiency while maintaining the population diversity. Finally, it can be observed in the work that the proposed algorithm improves the convergence speed and calculation precision. In the subsequent experiments, 14 well-known test benchmark functions are used to compare the advantages of GOA_jDE. The experimental results illustrate that the performance of proposed algorithm has significant improvement, which also proves the feasibility and effectiveness. Considering the complexity of engineering problems, three classical engineering design problems (tension/compression spring, welded beam, and pressure vessel designs) are used to evaluate the performance of the proposed algorithm. In addition, the classical engineering design results proves the merits of this algorithm in solving real problems with unknown search spaces.
Keywords
Introduction
Many practical problems in engineering field can be reduced to the optimization of a certain mathematical model. Therefore, effective optimization algorithms have a vital impact on the solution of engineering problems. However, there are still some drawbacks that limit the wide application of the optimization algorithms. The traditional methods are easy to be trapped in local optimization for the high-dimensional complex optimization. Meta-heuristic algorithm can solve complex optimization problems, and has the advantages of simple parameters, good robustness and easy to combine with other algorithms. With the deepening of research, a wide range of algorithms have been proposed to deal with engineering problems, such as GOA [1], differential evolution (DE) [2], multi-verse optimizer (MVO) [3], and particle swarm optimization (PSO) [4], etc.
In recent years, scholars have not stopped their research on optimization algorithms. Y. mousavi et al., proposed a memetic algorithm applied in trajectory control to enhance the accuracy of solutions by increasing global and local search in 2015 [5]. And in the same year, an adaptive gradient descent memetic algorithm has been proposed by A. Arab et al. to improve the accuracy and convergence speed [6]. In 2018, S propose a new Search Group Algorithm (SGA) which introduces an adaptive parameters control using fuzzy logic, namely fuzzy SGA, to r enhance the solution quality of the basic SGA [7]. Meanwhile, Y. mousavi et al. proposed a method that combines the firefly algorithm (FA) with memory term to enhance the performance of the basic FA by controlling its convergence speed [8]. In 2019, A concept called Augmented Lagrangian Particle Swarm Optimization with Fractional Order Velocity (ALPSOFV) has been introduced by E. Sadat Alaviyan Shahri et al. to improve the convergence speed [9].
The GOA is a swarm intelligence optimization algorithm proposed by Saremi et al. which mimic grasshopper behavior in nature. Since put forward it has attracted wide attention of scholars. In the fields such as financial pressure prediction [10], feature selection [11], and analysis of vibration signals from rotating machinery [12] GOA has shown significant performance. However, the performance of GOA algorithm still needs to be strengthened in order to greatly deal with different engineering problems. Obviously, the GOA has the disadvantages of slow convergence speed and unbalanced exploration and exploitation [13, 14]. Furthermore, the computation time is so long that it can’t solve the problem in time. Therefore, we need propose a improved algorithm to enhance the above ability. By introducing the OBL strategy in the initialization and update stages, the improved grasshopper optimization algorithm called IGOA improves the search efficiency and avoid the local optimum [15]. The adaptive grasshopper optimization algorithm named AGOA using natural selection strategy and democratic decision-making mechanism was adopted to jump out of local best trap [16]. The success of above applications using other strategy inspires us to combine GOA with effective strategies.However, the improved version of GOA still has disadvantages such as low precision, poor stability, and long time. Therefore, the algorithm proposed in paper can be suitable for the engineering problems.
DE [2] is an effective algorithm with simple parameters, which can improve search efficiency obviously and maintain the population diversity effectively by combining with other algorithms. In 2018, xiong et al. proposed a hybrid DE with whale optimization algorithm (WOA) to improve the ability of exploration (WOADE) [17]. In 2017, a hybridization of artificial bee colony (ABC) and DE algorithms has been proposed by Jadon et al. to build a new method with improved convergence speed and population diversity (ABCDE) [18]. The results mean that there is significant property improvement of DE in hybrid models. In fact, some of the hybrid algorithms available such as hybrid jDE (hjDE) [19], modified GOA (MGOA) [20], and
The rest of this paper is structured as follows: Section 2 introduces the basic principle of GOA algorithm briefly; The improved GOA-jDE algorithm is described in Section 3; Section 4 mainly illustrates the simulation experiments and results analysis; And the engineering problem is shown in Section 5; The last part is Section 6: Summary and discussion.
Grasshopper optimization algorithm
GOA is firstly proposed by Shahrzad Saremi to apply in structural optimization [1]. Just like other swarm optimization algorithms, the grasshopper position vectors are delimiting in d-dimensional space, where d represents the number of decision variables for optimization problems. Therefore, the population X of n grasshopper individuals can be expressed by a n×d dimensional matrix, which is indicated clearly in Equation (1).
There are three main elements affecting individual movement of the grasshopper:social communication, power of gravity and wind advection. And the mathematical model of their swarm behaviors is shown by the following formula:

Primitive corrective patterns between grasshopper individuals [22].
The gravity force on the ith grasshopper is calculated as follows:
The wind advection of the ith grasshopper is presented as follows:
However, Equation (2) cannot be directly utilized to solve optimization problems. The authors presented an improved version that defined as:
Algorithm 1. Pseudocode of grasshopper optimization algorithm for optimization problem
A hybrid GOA algorithm with DE is introduced in this section. Firstly of all, the DE algorithm and its version, jDE are retrospected. Then, the hybrid model is discussed profoundly. Last, the proposed algorithm called GOA-jDE is applied to global optimization domain, and the correlative flowchart has been given in the following content.
Differential evolution
Differential evolution (DE) was firstly proposed by Storn and Price in 1997. DE has attracted extensive attention of scholars in the past few decades because of its simple and powerful evolutionary method [23]. It has three main operators called “mutation”, “crossover”, and ”selection” in the standard DE algorithm [24]. There are two important parameters, scaling factor SF and crossover probability CR, influencing the exploration of optimization.
Mutation
During the mutation operation of DE algorithm, the process can be defined as follows:
After the mutation process, the trial individual
In the selection process, the trial individual
There are two significant parameters, scaling factor SF and crossover probability CR, in DE algorithm as mentioned above. Meanwhile, the value of these parameters can affect the optimization capability. In traditional DE algorithm, the two control parameters are invariant through the whole evolutionary process. However, the fixed value cannot be well adapted to all kinds of problem, especially for complex problems with high dimensions. Thus, Brest et al. [25] introduced a modified DE that can be adaptively set to control parameters. In the modified version of DE, called jDE, the control parameters SF and CR can be specifically expressed as follows:
It can be shown from Equations (14) and (15) that each search agent has its own SF and CR. The value of these two parameters may change with the process of iteration, but the transition probability represented by τ is small. The pseudocode of jDE algorithm is given in Algorithm 2.
Algorithm 2. Pseudocode of jDE algorithm for optimization problem
In 2019, the moth search differential evolution (MSDE) algorithm for cloud computing task scheduling is proposed by Elaziz et al. [26]. DE is used for local search method in MSDE, and roulette wheel method is served to determine which strategy to adopt. In 2018, a hybrid algorithm based on self-adaptive gravitational search algorithm (GSA) and differential evolution named SGSADE has been proposed. In this paper, DE algorithm is adopted to improve exploitation ability and maintain population diversity [27]. In 2017, Zhao et al. put forward a hybrid optimization algorithm of chaotic differential evolution and estimation of distribution [28]. The novel algorithm can achieve a high precision solution.
The success of these applications using hybrid algorithm with DE inspires us to utilize them, and then get an adjusted version of GOA. In this paper, the combination of GOA algorithm and jDE improves the search precision and retain the diversity of population especially in subsequent iterations. Meanwhile, DE algorithm is put forward for the purpose of local search strategy in the proposed algorithm, but this does not mean that its ability to explore can be neglected. Therefore, an modified version of DE called jDE is adopted to replace the traditional DE.
In GOA-jDE algorithm, according to the authors’ opinion, the average objective value of population shows the overall quality of search agents among the current generation. For a problem to be minimized, if the fitness function value of individual is inferior to the average, it represents that the contiguous search area of the particle is potential and expectable. Thus, the strategy of strengthening local search should be used. Conversely, if the fitness function value is preferable than the average, the local search strategy will not be adopted. In addition, the introduction of jDE will not let the algorithm convergence prematurely, because the differences between scaling individuals causes the population to be more randomly distributed. This characteristic can effectively retain the population diversity, especially in the subsequent evolution process. Furthermore, the flowchart of GOA-jDE algorithm is shown in Fig. 2.

Framework of the GOA-jDE based method [22].

Schematic of the spring.

Schematic of the welded beam.

Schematic of the pressure vessel.
In this section, in order to study the performance of the proposed algorithm, a set of experimental series is performed by using 14 unconstrained benchmark functions. The functions can be divided into two types: the first type is the unimodal functions which is used to assess the solution precision and the convergence rate of the proposed algorithm. These functions are from F1 to F7.
The another type called multimodal is chosen to evaluate the performance of the algorithm to avoid the local optimum and to reach the global solution. The example functions are from F8 to F14. And the functional composition, dimension, range limitation and optimal position of 14 functions has been given in Table 1.
Benchmark functions
Benchmark functions
All the experimental series were carried out on MATLAB R2014b, and the computer was configured as Intel(R) Core (TM) i5-5200U CPU @2.20 GHz, using Microsoft Windows 8 system.
Comparison of each algorithm’s performance
In this paper, a sequence of experiments are carried out to evaluate the performance of GOA-jDE algorithm. For the experiment, the most advanced and conventional optimization algorithm for global optimization are adopted, such as the traditional GOA and DE, multi-verse optimizer (MVO) [3], particle swarm optimization (PSO) [4] hybrid jDE (hjDE) [19], modified GOA (MGOA) [20], and βDE (BDE) [21]. The parameter values are set according to Table 2. And the population size N is set to 30 and the number of iterations tmax is set to 500 for fair comparison. Meanwhile, all experiments are conducted 30 times and the best result has been highlighted in
Parameters of the algorithms
Parameters of the algorithms
Comparative results on benchmark functions
In Table 3, the performance of GOA-jDE algorithm is evaluated according to the best value. It can be observed from the Table 3 that the proposed method presents the lowest value in most cases. Although few algorithms show competitive result in some cases, this result still proves that the optimal solution obtained by the proposed method is high-quality. In GOA-jDE, the entire population is separated into two parts based on the average fitness value. Compared with the traditional GOA and DE, it increases the probability of achieving global optimization for the balanced exploration and exploitation strategy of optimization. Compared to other algorithms, GOA-jDE algorithm can keep the population diversity in the subsequent iteration. Therefore, the ability to jump out from local optimization has enhanced.
The convergence curve of each algorithm on 14 benchmark functions is shown in Table 6. It can be seen from the experimental results that the performance of GOA-jDE algorithm is superior to other methods in most cases. The GOA-jDE algorithm has advantage in balancing the exploration and exploitation, neither premature convergence nor convergence speed. Therefore, the results represent that GOA-jDE has remarkable performance in most cases, which is appropriate for optimization of solution problems.
In Table 4, it can be found that PSO is faster than any other available algorithms, but it cannot attain the optimal values of the above indicators. The DE algorithm sometimes shows competitive results, and is slightly slower than PSO in the whole experiment. At the same time, the computation time of GOA-jDE is between GOA and DE owing to the hybrid model. But this does not represent that the improved algorithm is ineffective. As mentioned above, the standard for evaluating performance should be more objective. Although the proposed algorithm is not the fastest, the performance is significant in many aspects. Generally speaking, GOA-jDE is a good algorithm that can improve the precision remarkably without increasing runtime.
Computation time
In this section, the stability of every algorithm is evaluated by STD value and boxplot. The corresponding data are given in Tables 5 and 6. It can be seen from the tables that GOA-jDE usually gives the lowest value of STD, which represents good stability. A lower position represents excellent property for the boxplot in this test. As it can be seen from the boxplot, the proposed algorithm’s optimize performance is most stable and its standard deviation is the smallest.
The STD values of benchmark functions
The convergence curve and Boxplot
All experiments available are the same, so it is necessary for a statistical tests. The non-parametric statistical test, Wilcoxon’s rank sum test [29], is used to evaluate the property of all algorithms, with 5% considered significant level.A more detailed description of Wilcoxon’s rank sum test can be found in literature [30].
The experimental results can be found in following Table 7. The p-value greater than 0.05 means that there is no obvious difference between the two sets of data, while the p-value less than 0.05 indicates significant difference. Hence, there are remarkable differences between the proposed algorithm and others. Certainly, the experiment result is not appear by accident.
P-values of the Wilcoxon rank-sum test over 30 runs (p > 0.05 has been in bold)
In this section, three classical engineering design problems: tension/compression spring, welded beam, and pressure vessel designs, are tested and the results are shown in the following tables.
Tension/compression spring design
The first chosen engineering problem is the tension/compression spring design problem, which is to minimize the weight of a spring with three structural parameters: wire diameter (d), mean coil diameter (D), and the number of active coils (N). The following figure has shown the spring and its parameters [31]. And the optimum design is associated to constraints on shear stress, surge frequency, and minimum deflection. These constraints and the problem are formulated as follows:
This problem has been tested with the proposed algorithm and seven additional algorithms. As it is shown in the Table 8, the GOA_jDE performs very effectively when solving this problem and offers the best design.
Comparison results of tensions/compression spring design
Comparison results of tensions/compression spring design
As it named, this problem deals with designing a welded beam to minimize the fabrication cost [32]. The minimization process is subject to some constraints such as shear stress, bending stress in the beam, buckling load on the bar, end deflection of the beam, and side constraints. And this optimum design has four parameters: thickness of weld (h), length of the clamped bar (l), height of the bar (t), and thickness of the bar (b). The mathematical formulation is illustrated as follows:
This problem has also tested and the results are shown in the Table 9. It is shown that the proposed algorithm can find the lowest cost design. Thus, it is reasonable to think that the proposed algorithm is feasible in solving such problems.
Comparison results of the welded beam design
Comparison results of the welded beam design
The objective of this problem is to minimize the total cost of the vessel with four variables: Thickness of the shell (Ts). Thickness of the head (Th). Inner radius (R). Length of the cylindrical section without considering the head(L) [33]. And the optimum design is subjected to constraints on material, forming, and lding of a cylindrical vessel. The mathematical formulation of this optimization is as follows:
This test results has shown in the following Table 10. As it represents, the proposed algorithm can reach the lowest cost design. Therefore, it is hopefully that the proposed algorithm is suitable for such problems.
Comparison results of the pressure vessel design
Comparison results of the pressure vessel design
The algorithm combining GOA and jDE called GOA_jDE is proposed in this paper, in order to improve the slow convergence speed, unbalanced exploration and exploitation and the problem of falling into local optimum easily. The proposed algorithm improves the convergence speed and calculation precision and enhances the ability of global search. The improved algorithm is testing for 20 benchmark functions. And the experimental results show that the optimization performance of GOA_jDE is greatly improved compared with the traditional GOA algorithm. In most cases, the optimal fitness value of improved algorithm is the first and the standard deviation is relatively small. The promising results show that the algorithm is relatively stable and feasible. In future research, the proposed algorithm can be used in other fields, such as financial pressure prediction [10], feature selection [11], analysis of vibration signals from rotating machinery [12], etc.
Footnotes
Acknowledgment
This work was supported under Fundamental Research Funds for the Central Universities (No. 2572019BF04), and Northeast Forestry University Horizontal Project (No. 43217002, No. 43217005, No. 43219002).
