The GHMSA Algorithm solved 18 test problems out of the 24 because the other problems are either not continuous or not differentiable. The second set of test problems contains four known non-linear engineering design optimization problems. These test problems do not have known exact solutions.
5.1. Results of “GHMSA” Algorithm
The GHMSA algorithm is programmed using MATLAB version 8.5.0.197613 (R2015a) and it is run on a personal laptop and the machine epsilon about .
The results of our algorithm are compared against the results of the CB-ABC Algorithm in [
47], the CCiALF Algorithm in [
48], the NDE Algorithm in [
49] and the CAMDE Algorithm in [
50].
Liang et al. [
45] suggested that the achieved function error values of the obtained optimal solution
x after
,
and
function evaluations (FES) are summarized in terms of {Best, Median, Worst,
c,
(
,
is a penalty term in Equation (
7)), Mean, s.d}.
The results are listed in
Table 2,
Table 3 and
Table 4; where
c is a concatenation of three numbers indicating the violated constraint number at the median solution by more than 1.0, between 0.01 and 1.0, and between 0.0001 and 0.1, respectively.
is the mean value of the violations of all constraints at the median solution. The numbers in the parenthesis after the error value of the Best, Median, Worst solution are the constraint numbers not satisfying the feasible condition of the Best, Median, and Worst solutions, respectively.
Table 2,
Table 3 and
Table 4 denote that the GHMSA can determine feasible solutions at each run utilizing
FES for 12 test problems {G01, G03, G04, G06, G08, G09, G10, G12, G13, G16, G18, G24}. As for problems G11, G14 and G15, the GHMSA Algorithm finds feasible solutions by using
FES. For the other three test problems, {G05, G07, G19}, the GHMSA Algorithm is able to reach feasible solutions by using
FES.
Assume that if the result
x is a feasible one satisfying
0.0001, then
x is in a neighborhood (near-optimal) of the optimal point
.
Table 2,
Table 3 and
Table 4 indicate that the GHMSA Algorithm can get near-optimal points for six problems, { G01, G04, G06, G08, G12, G24,} by using only
FES, { G03, G11, G13, G14, G15, G16,G18} by using only
FES and { G07, G09, G13, G19} by using only
FES. However, the GHMSA Algorithm failed to satisfy
0.0001, for two problems {G05, G10}. As suggested by [
45],
Table 5 presents the Best, Median, Worst, Mean, and s.d values of successful run, feasible rate, success rate, and success performance over 40 runs. Let us define the following:
Feasible run: A run through which at least one feasible solution is found in Max FES.
Successful run: A run during which the algorithm finds a feasible solution x satisfying 0.0001.
Feasible rate (f.r) = (# of feasible runs)/ total runs.
(# of successful runs) / total runs.
mean (FES for successful runs) × (# of total runs)/(# of successful runs).
Table 5 shows that the GHMSA Algorithm obtains a 100% feasible rate and success rate for all 18 problems with the exception of problems G05 and G10.
For achieving the success condition during the view of success performance in
Table 5, the GHMSA Algorithm needs:
- (1)
FES for 5 problems i.e., {G01, G04, G08, G12, G24}.
- (2)
FES for 4 problems i.e., {G03, G06, G11, G16}.
- (3)
FES ≤ 90,720 for 4 problems i.e., {G13, G14, G15, G18}.
- (4)
34,773 ≤ FES ≤ 500,559 for 3 problems i.e., {G07, G09, G19}.
The GHMSA Algorithm failed to achieve the success condition for two problems, i.e., {G05, G10}. More information about the performance of the GHMSA Algorithm for solving these problems is given in
Figure 2,
Figure 3 and
Figure 4. We have plotted the relationship between
and FES for showing the convergence of the GHMSA at the median run over 40 independent runs. So the convergence graphs of these problems in
Figure 2,
Figure 3 and
Figure 4 show that the error values decrease dramatically with increasing FES for all test problems.
5.2. Performance of GHMSA Algorithm Using Statistical Hypothesis Testing
In this section, we use statistical hypothesis testing to evaluate the efficiency of the GHMSA Algorithm versus the efficiency of the CB-ABC, the CCiALF, the NDE and the CAMDE Algorithms.
A statistical hypothesis is a surmise about a population parameter. This expectation might be true or false. The null hypothesis is denoted by
, and it is a statistical hypothesis that announces that there is no difference between a parameter and a specific value or that there is no difference between two parameters. The alternative hypothesis is indicated by
, and it is a statistical hypothesis that declares a specific difference between a parameter and a specific value or states that there is a difference between two parameters. Hypothesis testing is a form of inferential statistic which authorizes us to draw conclusions on a whole population based on a representative sample [
51]. Parametric tests can provide trustworthy results with distributions that are skewed and non normal. Parametric analysis can produce reliable results even if the continuous data are non normally distributed. We just have to be sure that the sample size is greater than 30. A one sample
t-test is one of the parametric tests that is used to compare the mean (Average) of a sample with a mean of the population. The important conditions for using the one-sample
t-test are independence and normality (or sample size
). In our study the sample size is 50, i.e., the number of runs is 50 randomly (from any starting point) run; this criterion is suggested by [
45]. The significance level in this study is 95%, i.e.,
. Our hypotheses are formulated in the following:
: the mean (average) of the results of the GHMSA Algorithm and the mean (average) of the results of other algorithms are equal.
: the mean (average) of the results of the GHMSA Algorithm and the mean of the results of other algorithms are different.
The above hypotheses can be formulated in Equation (
17).
where
l denotes one of the algorithms, CB-ABC, CCiALF, NDE and CAMDE, and
denotes the average results of the algorithms.
In order to compare the performance of the GHMSA Algorithm with the CB-ABC, the CCiALF, the NDE and the CAMDE Algorithms, the
t-test with a significance level of
is performed. To perform the
t-test, the hypotheses in Equation (
17) are considered.
Statistical processes are performed by using the SPSS Program. Rejecting or accepting
is based on the value of the p-value (Sig. (2-tailed)) according to Column 1 of
Table 6. While the performance of the algorithm based on the value of the
t-test is in Column 3 of
Table 6. So, Column 4 of
Table 6 takes three values according to the probabilities in (
18).
The results of the GHMSA are compared to the results of the CB-ABC, the CCiALF, the NDE and the CAMDE Algorithms. The statistical hypotheses in Equation (
17) are tested by using the
t-test.
Table 7,
Table 8,
Table 9 and
Table 10 present these results.
The results of the GHMSA are compared versus the four meta-heuristic algorithms in the literature. The results of statistical tests are presented in
Table 7,
Table 9 and
Table 10. In
Table 7, Column 1 presents the abbreviation of the test problems denoted by pr. Column 2 presents the results of the s.t which include {b.s, mean, s.d, Decision }, where Decision denotes wins, losses and draws of the GHMSA compared with the other algorithms. Columns 3–7 give the results of the five algorithms.
Table 9 and
Table 10 are similar to
Table 7.
After executing the pairwise
t-test for all algorithms, if the GHMSA Algorithm is superior, inferior or equal to the compared algorithm denoted by
, then the decision is set to 1, –1 and 0 respectively, as we have shown in
Table 6. The left of
Figure 5 summarizes the results that are presented in
Table 7,
Table 8,
Table 9 and
Table 10 regarding the decision. The left of
Figure 5 shows that the GHMSA Algorithm was superior at {7, 6, 9, 5} problems, equal at {6, 6, 3, 5} problems and inferior at {4, 5, 5, 7} problems compared to the CB-ABC, the CALF, the NDE and the CAMDE Algorithms, respectively. However, the GHMSA is inferior at seven problems compared to the CAMDE, but the GHMSA needs 1,590,905 as a total FES versus the CAMDE needing 4,320,000, as shown in
Figure 6. To gain the success condition from the point of view of successful execution, the GHMSA needs less than
FES for five problems, i.e., {G01, G04, G08, G12, G24} versus the CAMDE needing at least
FES for two problems, i.e., {G08, G12}. We can say that the percentage of superior, equal and inferior of the GHMSA are 40%, 30%, 30% respectively.
For the four engineering problems, we give a brief description. The pressure vessel problem is a practical problem that is often used as a benchmark problem for testing optimization algorithms [
52]. The left of
Figure 7 shows the structure of this issue, where a cylindrical pressure vessel is capped at both ends by hemispherical heads. The aim of the problem is to find the minimum total cost of fabrication, including costs from a combination of welding, material and forming. The thickness of the cylindrical skin,
, thickness of the spherical head,
, the inner radius,
, and the length of the cylindrical segment of the vessel,
, were included as the optimization design variables of the problem. The GHMSA Algorithm obtains these results:
{0.778168641375105, 0.384649162627902, 40.3196187240987, 200}, i.e.,
5885.332774,
c = {0, –
,
, −40}, i.e.,
0; the left of
Figure 8 shows a convergence graph of the GHMSA to the best solution for this problem.
Another well-known engineering optimization task is the design of a tension (compression spring) for a minimum weight. This problem has been studied by several authors. For example, [
52]. The right of
Figure 7 shows a tension (compression spring) with three design variables. It needs to minimize the weight of a tension (compression string) subject to constraints on minimum deflection, shear stress, surge frequency, limits on outside diameter and on design variables. The design variables are the wire diameter,
, the mean coil diameter,
, and the number of active coils,
. The GHMSA obtains these results:
{0.0516890825110813, 0.356718255308635, 11.2889355307237}, i.e.,
0.01266523279,
{
,
, –4.05379, –0.72773}, i.e.,
. The convergence graph for Engp2 is presented on the right of
Figure 8. The welded beam design optimization problem has been solved by many researchers [
52]. The left of
Figure 9 shows the welded beam structure which consists of a beam
A and the weld required to hold it to member
B. The goal of this problem is to minimize the overall cost of fabrication, subject to some constraints. This problem has four design variables—
,
,
and
—with constraints of shear stress
, bending stress in the beam
, buckling load on the bar
, and end deflection on the beam
. The GHMSA obtains these results:
, i.e.,
,
{–
, –
,
, –3.43298, –0.08073, –0.23554, –
}, i.e.,
=
. The convergence graph for Engp3 is presented by the left of
Figure 10.
The speed reducer design problem is one of the benchmark structural engineering problems [
52]. It has seven design variables as described in the right of
Figure 9, with the face width
, module of teeth
, number of teeth on pinion
, length of the first shaft between bearings
, length of the second shaft between bearings
, diameter of the first shaft
, and diameter of the first shaft
. The aim of this problem is to minimize the total weight of the decelerator. The GHMSA obtains these results:
, i.e,
2994.471066,
,
, i.e,
. The convergence graph for Engp4 is presented by the right of
Figure 10. The four engineering problems are used to compare the performance of the GHMSA against the CB-ABC, the CCiALF, the NDE and the CAMDE Algorithms. Statistical hypotheses in Equation (
17) are used to compare the mean of the GHMSA with means of the CB-ABC, the CCiALF, the NDE and the CAMDE Algorithms. Rows 22–41 of
Table 10 present the statistical comparisons of the GHMSA versus the four Algorithms for engineering problems Enp1 to Enp4. The right of
Figure 5 gives the number of “wins-draws-losses” of the GHMSA compared with the CB-ABC, the CCiALF, the NDE and the CAMDE for Enp1 to Enp4.
Figure 11 shows the convergence graph of standard deviation for problems Enp1, Enp2, Enp3 and Enp4 for the five algorithms. The relation between the four engineering problems {Enp1, Enp2, Enp3 and Enp4} and their values for
are plotted. From the right of
Figure 5 and
Figure 11, it can be said that the performance of the GHMSA algorithm is better than the other algorithms for problems Enp1 to Enp4, for the following reasons:
(1) The GHMSA obtains a minimum value of objective function (5885.332774) for engineering problem Enp1 (pressure vessel), the point minimum
is feasible; many of the algorithms obtained a value of objective function equal to or greater than 6059.71. see for example [
48,
49,
50,
52,
53,
54,
55,
56,
57,
58].
In addition to that, if
, then
, otherwise if
, then
, where
L is shown in the left of
Figure 8.
(2) The right of
Figure 5 shows that the GHMSA Algorithm does not fall at any problem versus the other algorithms.
(3) The GHMSA is superior at {2, 1, 4, 2} problems versus the CB-ABC Algorithm, the CCiALF Algorithm, the NDE and the CAMDE Algorithm, respectively.
(4) The GHMSA is equal at {2, 3, 0, 2} problems versus the CB-ABC Algorithm, the CCiALF Algorithm, the NDE and the CAMDE Algorithm, respectively.
(5)
Figure 11 shows that the GHMSA Algorithm converges to zero for the standard deviation (s.d). See the green color.