# An Elite Decision Making Harmony Search Algorithm for Optimization Problem

Authors: Lipu Zhang; Yinghong Xu; Yousong Liu
Journal: Journal of Applied Mathematics
 (2012)

---

## Abstract

This paper describes a new variant of harmony search algorithm which is inspired by a well-known item “elite decision making.” In the new algorithm, the good information captured in the current global best and the second best solutions can be well utilized to generate new solutions, following some probability rule. The generated new solution vector replaces the worst solution in the solution set, only if its fitness is better than that of the worst solution. The generating
and updating steps and repeated until the near-optimal solution vector is obtained. Extensive computational comparisons are carried out by employing various standard benchmark optimization problems, including continuous design variables and integer variables minimization problems from the literature. The computational results show that the proposed new algorithm is competitive in finding solutions with the state-of-the-art harmony search variants.


---

## Body

## 1. Introduction

In 2001, Geem et al. [1] proposed a new metaheuristic algorithm, harmony search (HS) algorithm, which imitates the behaviors of music improvisation process. In that algorithm, the harmony in music is analogous to the optimization solution vector, and the musicians improvisations are analogous to local and global search schemes in optimization techniques. The HS algorithm does not require initial values for the decision variables. Furthermore, instead of a gradient search, the HS algorithm uses a stochastic random search that is based on the harmony memory considering rate and the pitch adjusting rate so that derivative information is unnecessary. These features increase the flexibility of the HS algorithm and have led to its application to optimization problems in different areas including music composition [2], Sudoku puzzle solving [3], structural design [4, 5], ecological conservation [6], and aquifer parameter identification [7]. The interested readers may refer the review papers [8–10] and the references therein for further understanding.HS algorithm is good at identifying the high performance regions of the solution space at a reasonable time but gets into trouble in performing local search for numerical applications. In order to improve the fine-tuning characteristic of HS algorithm, Mahdavi et al. [11] discussed the impacts of constant parameters on HS algorithm and presented a new strategy for tuning these parameters. Wang and Huang [12] used the harmony memory (HM) (set of solution vectors) to automatically adjust parameter values. Fesanghary et al. [13] use sequential quadratic programming technique to speed up local search and improve precision of the HS algorithm solution. Omran and Mahdavi [14] proposed a so-called the global best HS algorithm, in which concepts from swarm intelligence are borrowed to enhance the performance of HS algorithm such that the new harmony can mimic the best harmony in the HM. Also, Geem [15] proposed a stochastic derivative for discrete variables based on an HS algorithm to optimize problems with discrete variables and problems in which the mathematical derivative of the function cannot be analytically obtained. Pan et al. [16] used the good information captured in the current global best solution to generate new harmonies. Jaberipour and Khorram [17] described two HS algorithms through parameter adjusting technique. Yadav et al. [18] designed an HS algorithm which maintains a proper balance between diversification and intensification throughout the search process by automatically selecting the proper pitch adjustment strategy based on its HM. Pan et al. [19] divided the whole HM into many small-sized sub-HMs and performed the evolution in each sub-HM independently and thus presented a local-best harmony search algorithm with dynamic subpopulations. Later on, the excellent ideas of mutation and crossover strategies used in [19] were adopted in designing the differential evolution algorithm and obtained perfect result for global numerical optimization by Islam et al. [20].Considering that, in political science and sociology, a small minority (elite) always holds the most power in making the decisions, that is, elite decision making. One could image that the good information captured in the current elite harmonies can be well utilized to generate new harmonies. Thus, in our elite decision making HS (EDMHS) algorithm, the new harmony will be randomly generated between the best and the second best harmonies in the historic HM, following some probability rule. The generated harmony vector replaces the worst harmony in the HM, only if its fitness (measured in terms of the objective function) is better than that of the worst harmony. These generating and updating procedures repeat until the near-optimal solution vector is obtained. To demonstrate the effectiveness and robustness of the proposed algorithm, various benchmark optimization problems, including continuous design variables and integer variables minimization problems, are used. Numerical results reveal that the proposed new algorithm is very effective.This paper is organized as follows. In Section2, a general harmony search algorithm and its recently developed variants will be reviewed. Section 3 introduces our method that has “Elite-Decision-Making” property. Section 4 presents the numerical results for some well-known benchmark problems. Finally, conclusions are given in the last section.


## 2. Harmony Search Algorithm

In the whole paper, the optimization problem is specified as follows:(2.1)Minimizef(x),subjecttoxi∈Xi,i=1,2,…,N,
where f(x) is an objective function, x is the set of each decision variable (xi), N is the number of decision variables, and Xi is the set of the possible range of values for each decision variable, that is xiL≤Xi≤xiU and xiL and xiU are the lower and upper bounds for each decision variable, respectively.


### 2.1. The General HS Algorithm

The general HS algorithm requires several parameters as follows:HMS: harmony memory size,HMCR: harmony memory considering rate,PAR: pitch adjusting rate,bw: bandwidth vector.Remarks 2.1.
HMCR, PAR, and bw are very important factors for the high efficiency of the HS methods and can be potentially useful in adjusting convergence rate of algorithms to the optimal solutions. These parameters are introduced to allow the solution to escape from local optima and to improve the global optimum prediction of the HS algorithm.
The procedure for a harmony search, which consists of Steps1–4.Step 1.
Create and randomly initialize an HM with HMS. The HM matrix is initially filled with as many solution vectors as the HMS. Each component of the solution vector is generated using the uniformly distributed random number between the lower and upper bounds of the corresponding decision variable[xiL,xiU], where i∈[1,N].
The HM with the size of HMS can be represented by a matrix as(2.2)HM=(x11x21⋯xN1x12x22⋯xN2⋮⋮⋱⋮x1HMSx2HMS⋯xNHMS).Step 2.
Improvise a new harmony from the HM or from the entire possible range. After defining the HM, the improvisation of the HM, is performed by generating a new harmony vectorx′=(x1′,x2′,…,xN′). Each component of the new harmony vector is generated according to
(2.3)xi′⟵{xi′∈HM(:,i)withprobabilityHMCR,xi′∈Xi,withprobability1-HMCR,
where HMCR is defined as the probability of selecting a component from the HM members, and (1-HMCR) is, therefore, the probability of generating a component randomly from the possible range of values. Every xi′ obtained from HM is examined to determine whether it should be pitch adjusted. This operation uses the PAR parameter, which is the rate of pitch adjustment as follows:
(2.4)xi′⟵{xi′±rand[0,1]×bwwithprobability  PAR,xi′,withprobability1-PAR,
where rand[0,1] is the randomly generated number between 0 and 1.Step 3.
Update the HM. If the new harmony is better than the worst harmony in the HM, include the new harmony into the HM and exclude the worst harmony from the HM.Step 4.
Repeat Steps2 and 3 until the maximum number of searches is reached.


### 2.2. The Improved HS Algorithm

To improve the performance of the HS algorithm and eliminate the drawbacks associated with fixed values of PAR and bw, Mahdavi et al. [11] proposed an improved harmony search (IHS) algorithm that uses variable PAR and bw in improvisation step. In their method, PAR and bw change dynamically with generation number as expressed below:
(2.5)PAR(gn)=PARmin⁡+PARmax⁡-PARmin⁡MaxItr×gn,
where PAR(gn) is the pitch adjusting rate for each generation, PARmin is the minimum pitch adjusting rate, PARmax is the maximum pitch adjusting rate, and MaxItr and gn is the maximum and current search number, respectively. We have
(2.6)bw(gn)=bwmax⁡ec×gn,
where
(2.7)c=log⁡(bwmin⁡/bwmax⁡)MaxIter.Numerical results reveal that the HS algorithm with variable parameters can find better solutions when compared to HS and other heuristic or deterministic methods and is a powerful search algorithm for various engineering optimization problems, see [11].


### 2.3. Global Best Harmony Search (GHS) Algorithm

In 2008, Omran and Mahdavi [14] presented a GHS algorithm by modifying the pitch adjustment rule. Unlike the basic HS algorithm, the GHS algorithm generates a new harmony vector x′ by making use of the best harmony vector xbest={x1best,x2best,…,xnbest} in the HM. The pitch adjustment rule is given as follows:
(2.8)xj′=xkbest,
where k is a random integer between 1 and n. The performance of the GHS is investigated and compared with HS. The experiments conducted show that the GHS generally outperformed the other approaches when applied to ten benchmark problems.


### 2.4. A Self-Adaptive Global Best HS (SGHS) Algorithm

In 2010, Pan et al. [16] presented a SGHS algorithm for solving continuous optimization problems. In that algorithm, a new improvisation scheme is developed so that the good information captured in the current global best solution can be well utilized to generate new harmonies. The pitch adjustment rule is given as follows:
(2.9)xj′=xjbest,
where j=1,…,n. Numerical experiments based on benchmark problems showed that the proposed SGHS algorithm was more effective in finding better solutions than the existing HS, HIS, and GHS algorithms.


## 2.1. The General HS Algorithm

The general HS algorithm requires several parameters as follows:HMS: harmony memory size,HMCR: harmony memory considering rate,PAR: pitch adjusting rate,bw: bandwidth vector.Remarks 2.1.
HMCR, PAR, and bw are very important factors for the high efficiency of the HS methods and can be potentially useful in adjusting convergence rate of algorithms to the optimal solutions. These parameters are introduced to allow the solution to escape from local optima and to improve the global optimum prediction of the HS algorithm.
The procedure for a harmony search, which consists of Steps1–4.Step 1.
Create and randomly initialize an HM with HMS. The HM matrix is initially filled with as many solution vectors as the HMS. Each component of the solution vector is generated using the uniformly distributed random number between the lower and upper bounds of the corresponding decision variable[xiL,xiU], where i∈[1,N].
The HM with the size of HMS can be represented by a matrix as(2.2)HM=(x11x21⋯xN1x12x22⋯xN2⋮⋮⋱⋮x1HMSx2HMS⋯xNHMS).Step 2.
Improvise a new harmony from the HM or from the entire possible range. After defining the HM, the improvisation of the HM, is performed by generating a new harmony vectorx′=(x1′,x2′,…,xN′). Each component of the new harmony vector is generated according to
(2.3)xi′⟵{xi′∈HM(:,i)withprobabilityHMCR,xi′∈Xi,withprobability1-HMCR,
where HMCR is defined as the probability of selecting a component from the HM members, and (1-HMCR) is, therefore, the probability of generating a component randomly from the possible range of values. Every xi′ obtained from HM is examined to determine whether it should be pitch adjusted. This operation uses the PAR parameter, which is the rate of pitch adjustment as follows:
(2.4)xi′⟵{xi′±rand[0,1]×bwwithprobability  PAR,xi′,withprobability1-PAR,
where rand[0,1] is the randomly generated number between 0 and 1.Step 3.
Update the HM. If the new harmony is better than the worst harmony in the HM, include the new harmony into the HM and exclude the worst harmony from the HM.Step 4.
Repeat Steps2 and 3 until the maximum number of searches is reached.


## 2.2. The Improved HS Algorithm

To improve the performance of the HS algorithm and eliminate the drawbacks associated with fixed values of PAR and bw, Mahdavi et al. [11] proposed an improved harmony search (IHS) algorithm that uses variable PAR and bw in improvisation step. In their method, PAR and bw change dynamically with generation number as expressed below:
(2.5)PAR(gn)=PARmin⁡+PARmax⁡-PARmin⁡MaxItr×gn,
where PAR(gn) is the pitch adjusting rate for each generation, PARmin is the minimum pitch adjusting rate, PARmax is the maximum pitch adjusting rate, and MaxItr and gn is the maximum and current search number, respectively. We have
(2.6)bw(gn)=bwmax⁡ec×gn,
where
(2.7)c=log⁡(bwmin⁡/bwmax⁡)MaxIter.Numerical results reveal that the HS algorithm with variable parameters can find better solutions when compared to HS and other heuristic or deterministic methods and is a powerful search algorithm for various engineering optimization problems, see [11].


## 2.3. Global Best Harmony Search (GHS) Algorithm

In 2008, Omran and Mahdavi [14] presented a GHS algorithm by modifying the pitch adjustment rule. Unlike the basic HS algorithm, the GHS algorithm generates a new harmony vector x′ by making use of the best harmony vector xbest={x1best,x2best,…,xnbest} in the HM. The pitch adjustment rule is given as follows:
(2.8)xj′=xkbest,
where k is a random integer between 1 and n. The performance of the GHS is investigated and compared with HS. The experiments conducted show that the GHS generally outperformed the other approaches when applied to ten benchmark problems.


## 2.4. A Self-Adaptive Global Best HS (SGHS) Algorithm

In 2010, Pan et al. [16] presented a SGHS algorithm for solving continuous optimization problems. In that algorithm, a new improvisation scheme is developed so that the good information captured in the current global best solution can be well utilized to generate new harmonies. The pitch adjustment rule is given as follows:
(2.9)xj′=xjbest,
where j=1,…,n. Numerical experiments based on benchmark problems showed that the proposed SGHS algorithm was more effective in finding better solutions than the existing HS, HIS, and GHS algorithms.


## 3. An Elite Decision Making HS Algorithm

The key differences between the proposed EDMHS algorithm and IHS, GHS, and SGHS are in the way of improvising the new harmony.


### 3.1. EDMHS Algorithm for Continuous Design Variables Problems

The EDMHS has exactly the same steps as the IHS with the exception that Step3 is modified as follows.In this step, a new harmony vectorx′=(x1′,x2′,…,xN′)T is generated from
(3.1)xi′⟵{xi′∈[HM(s,i),HM(b,i)]withprobability  HMCR,xi′∈Xi,withprobability1-HMCR,
where HM(s,i) and HM(b,i) are the ith element of the second-best harmony and the best harmony, respectively.


### 3.2. EDMHS Algorithm for Integer Variables Problems

Many real-world applications require the variables to be integers. Methods developed for continuous variables can be used to solve such problems by rounding off the real optimum values to the nearest integers [14, 21]. However, in many cases, rounding-off approach may result in an infeasible solution or a poor suboptimal solution value and may omit the alternative solutions.In EDMHS algorithm for integer programming, we generate the integer solution vector in the initial step and improvise step, that is, each component of the new harmony vector is generated according to(3.2)xi′⟵{xi′∈round([HM(s,i),HM(b,i)])withprobability  HMCR,xi′∈Xi,withprobability1-HMCR,
where round(*) means round off for (*). The pitch adjustment is operated as follows:
(3.3)xi′⟵{xi′±1withprobability  PAR,xi′,withprobability1-PAR.


## 3.1. EDMHS Algorithm for Continuous Design Variables Problems

The EDMHS has exactly the same steps as the IHS with the exception that Step3 is modified as follows.In this step, a new harmony vectorx′=(x1′,x2′,…,xN′)T is generated from
(3.1)xi′⟵{xi′∈[HM(s,i),HM(b,i)]withprobability  HMCR,xi′∈Xi,withprobability1-HMCR,
where HM(s,i) and HM(b,i) are the ith element of the second-best harmony and the best harmony, respectively.


## 3.2. EDMHS Algorithm for Integer Variables Problems

Many real-world applications require the variables to be integers. Methods developed for continuous variables can be used to solve such problems by rounding off the real optimum values to the nearest integers [14, 21]. However, in many cases, rounding-off approach may result in an infeasible solution or a poor suboptimal solution value and may omit the alternative solutions.In EDMHS algorithm for integer programming, we generate the integer solution vector in the initial step and improvise step, that is, each component of the new harmony vector is generated according to(3.2)xi′⟵{xi′∈round([HM(s,i),HM(b,i)])withprobability  HMCR,xi′∈Xi,withprobability1-HMCR,
where round(*) means round off for (*). The pitch adjustment is operated as follows:
(3.3)xi′⟵{xi′±1withprobability  PAR,xi′,withprobability1-PAR.


## 4. Numerical Examples

This section is about the performance of the EDMHS algorithm for continuous and integer variables examples. Several examples taken from the optimization literature are used to show the validity and effectiveness of the proposed algorithm. The parameters for all the algorithm are given as follows:HMS=20, HMCR=0.90, PARmin=0.4, PARmax=0.9, bwmin=0.0001, and bwmax=1.0. In the processing of the algorithm, PAR and bw are generated according to (2.5) and (2.6), respectively.


### 4.1. Some Simple Continuous Variables Examples

For the following five examples, we adopt the same variable ranges as presented in [4]. Each problem is run for 5 independent replications, the mean fitness of the solutions for four variants HS algorithm, IHS, SGHS, SGHS, and EDMHS, is presented in tables.


#### 4.1.1. Rosenbrock Function

Consider the following:(4.1)f(x)=100(x2-x12)2+(1-x1)2.
Due to a long narrow and curved valley present in the function, Rosenbrock function [4, 22] is probably the best known test case. The minimum of the function is located at x*=(1.0,1.0) with a corresponding objective function value of f(x*)=0.0. The four algorithms were applied to the Rosenbrock function using bounds between −10.0 and 10.0 for the two design variables x1 and x2. After the 50,000 searches, we arrived at Table 1.Table 1
Four HS algorithms for Rosenbrock function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
1.0000028617324386
0.9913653798835682
1.0000082201314386
0.9999992918896516
x
2
1.0000062226347253
0.9837656861940776
1.0000169034081148
0.9999985841159521
f
1
(
x
)
0.0000000000331057
0.0001667876726056
0.0000000000890147
0.0000000000005014


#### 4.1.2. Goldstein and Price Function I (with Four Local Minima)

Consider the following:(4.2)f(x)={1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3x22)}×{30+(2x1-3x2)2(18-32x1+12x12+48x2-36x1x2+27x22)}.
Goldstein and Price function I [4, 13, 23] is an eighth-order polynomial in two variables. However, the function has four local minima, one of which is global, as follows: f(1.2,0.8)=840.0, f(1.8,0.2)=84.0, f(-0.6,-0.4)=30, and f*(0.0,1.0)=3.0 (global minimum). In this example, the bounds for two design variables (x1 and x2) were set between −5.0 and 5.0. After 8000 searches, we arrived at Table 2.Table 2
Four HS algorithms for Goldstein and Price function I.
Variables
IHS
GHS
SGHS
EDMHS
x
1
0.0000043109765698
−0.0108343859912985
−0.0000010647548017
−0.0000022210968748
x
2
−0.9999978894568922
−1.0091267108154769
−1.0000037827893109
−1.0000008657021768
f
(
x
)
3.0000000046422932
3.0447058568657721
3.0000000055974083
3.0000000011515664


#### 4.1.3. Eason and Fenton’s Gear Train Inertia Function

Consider the following:(4.3)f(x)=110{12+x12+1+x22x12+x12x22+100(x1x2)4}.
This function [4, 24] consists of a minimization problem for the inertia of a gear train. The minimum of the function is located at x*=(1.7435,2.0297) with a corresponding objective function value of f*(x)=1.744152006740573. The four algorithms were applied to the gear train inertia function problem using bounds between 0.0 and 10.0 for the two design variables x1 and x2. After 800 searches, we arrived at Table 3.Table 3
Four HS algorithms for Eason and Fenton's gear train inertia function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
1.7434541913586368
1.7131403370902785
1.7434648607226395
1.7434544417399731
x
2
2.0296978640691021
2.0700437540873073
2.0296831598594332
2.0296925490097708
f
(
x
)
1.7441520055927637
1.7447448145676987
1.7441520056712445
1.7441520055905921


#### 4.1.4. Wood Function

Consider the following:(4.4)f(x)=100(x2-x12)2+(1-x1)2+90(x4-x32)2+(1-x32)2+10.1[(x2-1)2+(x4-1)2]+19.8(x2-1)(x4-1).
The Wood function [4, 25] is a fourth-degree polynomial, that is, a particularly good test of convergence criteria and simulates a feature of many physical problems quite well. The minimum solution of the function is obtained at x*=(1,1,1,1)T, and the corresponding objective function value is f*(x)=0.0. When applying the four algorithms STO the function, the four design variables, x1,x2,x3,x4, were initially structured with random values bounded between −5.0 and 5.0, respectively. After 70,000 searches, we arrived at Table 4.Table 4
Four HS algorithms for Wood function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
0.9367413185752959
0.9993702652662329
0.9917327966129160
1.0001567183702584
x
2
0.8772781982936317
0.9987850979456709
0.9835814785067265
1.0003039053776117
x
3
1.0596918740170123
0.9993702652662329
1.0081526992384837
0.9998357549633209
x
4
1.1230215213184420
0.9987850979456709
1.0164353912102084
0.9996725376532794
f
(
x
)
0.0136094062872233
0.0000602033138483
0.0002433431550602
0.0000001061706105


#### 4.1.5. Powell Quartic Function

Consider the following:(4.5)f(x)=(x1+10x2)2+5(x3-x4)2+(x2-2x3)4+10(x1-x4)4.
The second derivative of the Powell quartic function [4, 26] becomes singular at the minimum point, it is quite difficult to obtain the minimum solution (i.e., f*(0,0,0,0)=0.0) using gradient-based algorithms. When applying the EDMHS algorithm to the function, the four design variables, x1,x2,x3,x4, were initially structured with random values bounded between −5.0 and 5.0, respectively. After 50,000 searches, we arrived at Table 5.Table 5
Four HS algorithms for Powell quartic function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
−0.0383028653671760
−0.0256621703960072
0.0334641210434073
−0.0232662093056917
x
2
0.0038093414837046
0.0023707007810820
−0.0033373644857512
0.0023226342970439
x
3
−0.0195750968208506
−0.0199247989791340
0.0159748222727847
−0.0107227792768697
x
4
−0.0195676609811871
−0.0199247989791340
0.0160018633328343
−0.0107574107951817
f
(
x
)
0.0000046821615160
0.0000070109937353
0.0000024921236096
0.0000005715572753It can be seen from Tables1–5, comparing with IHS, GHS, and SGHS algorithms, that the EDMHS produces the much better results for four test functions. Figures 1–5 present a typical solution history graph along iterations for the five functions, respectively. It can be observed that four evolution curves of the EDMHS algorithm reach lower level than that of the other compared algorithms. Thus, it can be concluded that overall the EDMHS algorithm outperforms the other methods for the above examples.Figure 1
Convergence of Rosenbrock function.Figure 2
Convergence of Goldstein and Price function I.Figure 3
Convergence of Eason and Fenton function.Figure 4
Convergence of Wood function.Figure 5
Convergence of Powell quartic function.


### 4.2. More Benchmark Problems with 30 Dimensions

To test the performance of the proposed EDMHS algorithm more extensively, we proceed to evaluate and compare the IHS, GHS, SGHS, and EDMHS algorithms based on the following 6 benchmark optimization problems listed in CEC2005 [27] with 30 dimensions. (1)
Sphere function:(4.6)f(x)=∑i=1n‍xi2,
where global optimum x*=0 and f(x*)=0 for -100≤xi≤100.(2)
Schwefel problem:(4.7)f(x)=-∑i=1n‍(xisin⁡(|xi|)),
where global optimum x*=(420.9687,…,420.9687) and f(x*)=-12569.5 for -500≤xi≤500.(3)
Griewank function:(4.8)f(x)=14000∑i=1n‍xi2-∏i=1n‍cos⁡(xii)+1,
where global optimum x*=0 and f(x*)=0 for -600≤xi≤600.(4)
Rastrigin function:(4.9)f(x)=∑i=1n‍(xi2-10cos⁡(2πxi)+10),
where global optimum x*=0 and f(x*)=0 for -5.12≤xi≤5.12.(5)
Ackley’s function:(4.10)f(x)=-20exp⁡(-0.2130∑i=1n‍xi2)-exp⁡(130∑i=1n‍cos⁡(2πxi))+20+e,
where global optimum x*=0 and f(x*)=0 for -32≤xi≤32.(6)
Rosenbrock’s Function:(4.11)f(x)=∑i=1n-1‍(100(xi+1-xi2)2+(xi-1)2),
where global optimum x*=(1,…,1) and f(x*)=0 for -5≤xi≤10.The parameters for the IHS algorithm,HMS=5, HMCR=0.9, bwmax=(xjU-xjL)/20, bwmin=0.0001, PARmin=0.01, and PARmax=0.99 and for the GHS algorithm, HMS=5, HMCR=0.9, PARmin=0.01, and PARmax=0.99.Table6 presents the average error (AE) values and standard deviations (SD) over these 30 runs of the compared HS algorithms on the 6 test functions with dimension equal to 30.Table 6
AE and SD generated by the compared algorithms.
Problem
IHS
IHS
GHS
GHS
SGHS
SGHS
EDMHS
EDMHS
AE
SD
AE
SD
AE
SD
AE
SD
Sphere
1.27
e
-
07
1.79
e
-
07
1.41
e
-
02
2.36
e
-
02
5.30
e
-
07
1.27
e
-
06
1.07
e
-
07
1.31
e
-
07
Schwefel
4.83
e
-
01
7.06
e
-
01
2.11
e
-
02
3.01
e
-
02
7.70
e
-
01
1.15
e
-
00
7.03
e
-
01
1.61
e
-
00
Griewank
1.18
e
-
01
1.87
e
-
01
8.83
e
-
02
1.57
e
-
01
8.02
e
-
03
1.05
e
-
02
1.02
e
-
02
1.51
e
-
02
Rastrigin
9.72
e
-
01
1.18
e
-
00
1.09
e
-
02
2.05
e
-
02
1.12
e
-
00
1.43
e
-
00
1.48
e
-
00
1.93
e
-
00
Ackley
5.11
e
-
01
6.06
e
-
01
2.05
e
-
02
2.83
e
-
02
2.13
e
-
01
2.98
e
-
01
3.34
e
-
01
3.85
e
-
01
Rosenbrock
3.37
e
+
01
4.08
e
+
01
6.77
e
+
01
8.97
e
+
01
3.46
e
+
01
3.80
e
+
01
3.17
e
+
01
4.02
e
+
01


### 4.3. Integer Variables Examples

Six commonly used integer programming benchmark problems are chosen to investigate the performance of the EDMHS integer algorithm. For all the examples, the design variables,xi,i=1,…,N, are initially structured with random integer values bounded between −100 and 100, respectively. Each problem is run 5 independent replications, each with approximately 800 searches, all the optimal solution vector are obtained.


#### 4.3.1. Test Problem 1

Consider the following:(4.12)f1(x)=(9x12+2x22-11)2+(3x12+4x22-7)2,
where x*=(1,1)T and f1(x*)=0, see [14, 21, 28].


#### 4.3.2. Test Problem 2

Consider the following:(4.13)f2(x)=(x1+10x2)2+5(x3-x4)2+(x2-x3)4+10(x3-x4)4,
where x*=(0,0,0,0)T and f2(x*)=0, see [14, 21, 28].


#### 4.3.3. Test Problem 3

Consider the following:(4.14)f3(x)=2x12+3x22+4x1x2-6x1-3x2,
where
(4.15)x1*=(4,-2)T,x2*=(3,-2)T,x3*=(2,-1)T
and f3(x*)=0, see [14, 21, 29].


#### 4.3.4. Test Problem 4

Consider the following:(4.16)f4(x)=xTx,
where x*=(0,0,0,0,0)T and f4(x*)=0, see [14, 21, 30].


#### 4.3.5. Test Problem 5

Consider the following:(4.17)f5(x)=-(15,27,36,18,12)x+xT(35-20-1032-10-2040-6-3132-10-611-6-1032-31-638-20-1032-10-2031)x,
where x*=(0,11,22,16,6)T and x*=(10,12,23,17,6)T with f5(x*)=-737, see [21, 28].


#### 4.3.6. Test Problem 6

Consider the following:(4.18)f6(x)=-3803.84-138.08x1-232.92x2+123.08x12+203.64x22+182.25x1x2,
where x*=(0,1)T and f6(x*)=-3833.12, see [21, 28].


## 4.1. Some Simple Continuous Variables Examples

For the following five examples, we adopt the same variable ranges as presented in [4]. Each problem is run for 5 independent replications, the mean fitness of the solutions for four variants HS algorithm, IHS, SGHS, SGHS, and EDMHS, is presented in tables.


### 4.1.1. Rosenbrock Function

Consider the following:(4.1)f(x)=100(x2-x12)2+(1-x1)2.
Due to a long narrow and curved valley present in the function, Rosenbrock function [4, 22] is probably the best known test case. The minimum of the function is located at x*=(1.0,1.0) with a corresponding objective function value of f(x*)=0.0. The four algorithms were applied to the Rosenbrock function using bounds between −10.0 and 10.0 for the two design variables x1 and x2. After the 50,000 searches, we arrived at Table 1.Table 1
Four HS algorithms for Rosenbrock function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
1.0000028617324386
0.9913653798835682
1.0000082201314386
0.9999992918896516
x
2
1.0000062226347253
0.9837656861940776
1.0000169034081148
0.9999985841159521
f
1
(
x
)
0.0000000000331057
0.0001667876726056
0.0000000000890147
0.0000000000005014


### 4.1.2. Goldstein and Price Function I (with Four Local Minima)

Consider the following:(4.2)f(x)={1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3x22)}×{30+(2x1-3x2)2(18-32x1+12x12+48x2-36x1x2+27x22)}.
Goldstein and Price function I [4, 13, 23] is an eighth-order polynomial in two variables. However, the function has four local minima, one of which is global, as follows: f(1.2,0.8)=840.0, f(1.8,0.2)=84.0, f(-0.6,-0.4)=30, and f*(0.0,1.0)=3.0 (global minimum). In this example, the bounds for two design variables (x1 and x2) were set between −5.0 and 5.0. After 8000 searches, we arrived at Table 2.Table 2
Four HS algorithms for Goldstein and Price function I.
Variables
IHS
GHS
SGHS
EDMHS
x
1
0.0000043109765698
−0.0108343859912985
−0.0000010647548017
−0.0000022210968748
x
2
−0.9999978894568922
−1.0091267108154769
−1.0000037827893109
−1.0000008657021768
f
(
x
)
3.0000000046422932
3.0447058568657721
3.0000000055974083
3.0000000011515664


### 4.1.3. Eason and Fenton’s Gear Train Inertia Function

Consider the following:(4.3)f(x)=110{12+x12+1+x22x12+x12x22+100(x1x2)4}.
This function [4, 24] consists of a minimization problem for the inertia of a gear train. The minimum of the function is located at x*=(1.7435,2.0297) with a corresponding objective function value of f*(x)=1.744152006740573. The four algorithms were applied to the gear train inertia function problem using bounds between 0.0 and 10.0 for the two design variables x1 and x2. After 800 searches, we arrived at Table 3.Table 3
Four HS algorithms for Eason and Fenton's gear train inertia function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
1.7434541913586368
1.7131403370902785
1.7434648607226395
1.7434544417399731
x
2
2.0296978640691021
2.0700437540873073
2.0296831598594332
2.0296925490097708
f
(
x
)
1.7441520055927637
1.7447448145676987
1.7441520056712445
1.7441520055905921


### 4.1.4. Wood Function

Consider the following:(4.4)f(x)=100(x2-x12)2+(1-x1)2+90(x4-x32)2+(1-x32)2+10.1[(x2-1)2+(x4-1)2]+19.8(x2-1)(x4-1).
The Wood function [4, 25] is a fourth-degree polynomial, that is, a particularly good test of convergence criteria and simulates a feature of many physical problems quite well. The minimum solution of the function is obtained at x*=(1,1,1,1)T, and the corresponding objective function value is f*(x)=0.0. When applying the four algorithms STO the function, the four design variables, x1,x2,x3,x4, were initially structured with random values bounded between −5.0 and 5.0, respectively. After 70,000 searches, we arrived at Table 4.Table 4
Four HS algorithms for Wood function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
0.9367413185752959
0.9993702652662329
0.9917327966129160
1.0001567183702584
x
2
0.8772781982936317
0.9987850979456709
0.9835814785067265
1.0003039053776117
x
3
1.0596918740170123
0.9993702652662329
1.0081526992384837
0.9998357549633209
x
4
1.1230215213184420
0.9987850979456709
1.0164353912102084
0.9996725376532794
f
(
x
)
0.0136094062872233
0.0000602033138483
0.0002433431550602
0.0000001061706105


### 4.1.5. Powell Quartic Function

Consider the following:(4.5)f(x)=(x1+10x2)2+5(x3-x4)2+(x2-2x3)4+10(x1-x4)4.
The second derivative of the Powell quartic function [4, 26] becomes singular at the minimum point, it is quite difficult to obtain the minimum solution (i.e., f*(0,0,0,0)=0.0) using gradient-based algorithms. When applying the EDMHS algorithm to the function, the four design variables, x1,x2,x3,x4, were initially structured with random values bounded between −5.0 and 5.0, respectively. After 50,000 searches, we arrived at Table 5.Table 5
Four HS algorithms for Powell quartic function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
−0.0383028653671760
−0.0256621703960072
0.0334641210434073
−0.0232662093056917
x
2
0.0038093414837046
0.0023707007810820
−0.0033373644857512
0.0023226342970439
x
3
−0.0195750968208506
−0.0199247989791340
0.0159748222727847
−0.0107227792768697
x
4
−0.0195676609811871
−0.0199247989791340
0.0160018633328343
−0.0107574107951817
f
(
x
)
0.0000046821615160
0.0000070109937353
0.0000024921236096
0.0000005715572753It can be seen from Tables1–5, comparing with IHS, GHS, and SGHS algorithms, that the EDMHS produces the much better results for four test functions. Figures 1–5 present a typical solution history graph along iterations for the five functions, respectively. It can be observed that four evolution curves of the EDMHS algorithm reach lower level than that of the other compared algorithms. Thus, it can be concluded that overall the EDMHS algorithm outperforms the other methods for the above examples.Figure 1
Convergence of Rosenbrock function.Figure 2
Convergence of Goldstein and Price function I.Figure 3
Convergence of Eason and Fenton function.Figure 4
Convergence of Wood function.Figure 5
Convergence of Powell quartic function.


## 4.1.1. Rosenbrock Function

Consider the following:(4.1)f(x)=100(x2-x12)2+(1-x1)2.
Due to a long narrow and curved valley present in the function, Rosenbrock function [4, 22] is probably the best known test case. The minimum of the function is located at x*=(1.0,1.0) with a corresponding objective function value of f(x*)=0.0. The four algorithms were applied to the Rosenbrock function using bounds between −10.0 and 10.0 for the two design variables x1 and x2. After the 50,000 searches, we arrived at Table 1.Table 1
Four HS algorithms for Rosenbrock function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
1.0000028617324386
0.9913653798835682
1.0000082201314386
0.9999992918896516
x
2
1.0000062226347253
0.9837656861940776
1.0000169034081148
0.9999985841159521
f
1
(
x
)
0.0000000000331057
0.0001667876726056
0.0000000000890147
0.0000000000005014


## 4.1.2. Goldstein and Price Function I (with Four Local Minima)

Consider the following:(4.2)f(x)={1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3x22)}×{30+(2x1-3x2)2(18-32x1+12x12+48x2-36x1x2+27x22)}.
Goldstein and Price function I [4, 13, 23] is an eighth-order polynomial in two variables. However, the function has four local minima, one of which is global, as follows: f(1.2,0.8)=840.0, f(1.8,0.2)=84.0, f(-0.6,-0.4)=30, and f*(0.0,1.0)=3.0 (global minimum). In this example, the bounds for two design variables (x1 and x2) were set between −5.0 and 5.0. After 8000 searches, we arrived at Table 2.Table 2
Four HS algorithms for Goldstein and Price function I.
Variables
IHS
GHS
SGHS
EDMHS
x
1
0.0000043109765698
−0.0108343859912985
−0.0000010647548017
−0.0000022210968748
x
2
−0.9999978894568922
−1.0091267108154769
−1.0000037827893109
−1.0000008657021768
f
(
x
)
3.0000000046422932
3.0447058568657721
3.0000000055974083
3.0000000011515664


## 4.1.3. Eason and Fenton’s Gear Train Inertia Function

Consider the following:(4.3)f(x)=110{12+x12+1+x22x12+x12x22+100(x1x2)4}.
This function [4, 24] consists of a minimization problem for the inertia of a gear train. The minimum of the function is located at x*=(1.7435,2.0297) with a corresponding objective function value of f*(x)=1.744152006740573. The four algorithms were applied to the gear train inertia function problem using bounds between 0.0 and 10.0 for the two design variables x1 and x2. After 800 searches, we arrived at Table 3.Table 3
Four HS algorithms for Eason and Fenton's gear train inertia function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
1.7434541913586368
1.7131403370902785
1.7434648607226395
1.7434544417399731
x
2
2.0296978640691021
2.0700437540873073
2.0296831598594332
2.0296925490097708
f
(
x
)
1.7441520055927637
1.7447448145676987
1.7441520056712445
1.7441520055905921


## 4.1.4. Wood Function

Consider the following:(4.4)f(x)=100(x2-x12)2+(1-x1)2+90(x4-x32)2+(1-x32)2+10.1[(x2-1)2+(x4-1)2]+19.8(x2-1)(x4-1).
The Wood function [4, 25] is a fourth-degree polynomial, that is, a particularly good test of convergence criteria and simulates a feature of many physical problems quite well. The minimum solution of the function is obtained at x*=(1,1,1,1)T, and the corresponding objective function value is f*(x)=0.0. When applying the four algorithms STO the function, the four design variables, x1,x2,x3,x4, were initially structured with random values bounded between −5.0 and 5.0, respectively. After 70,000 searches, we arrived at Table 4.Table 4
Four HS algorithms for Wood function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
0.9367413185752959
0.9993702652662329
0.9917327966129160
1.0001567183702584
x
2
0.8772781982936317
0.9987850979456709
0.9835814785067265
1.0003039053776117
x
3
1.0596918740170123
0.9993702652662329
1.0081526992384837
0.9998357549633209
x
4
1.1230215213184420
0.9987850979456709
1.0164353912102084
0.9996725376532794
f
(
x
)
0.0136094062872233
0.0000602033138483
0.0002433431550602
0.0000001061706105


## 4.1.5. Powell Quartic Function

Consider the following:(4.5)f(x)=(x1+10x2)2+5(x3-x4)2+(x2-2x3)4+10(x1-x4)4.
The second derivative of the Powell quartic function [4, 26] becomes singular at the minimum point, it is quite difficult to obtain the minimum solution (i.e., f*(0,0,0,0)=0.0) using gradient-based algorithms. When applying the EDMHS algorithm to the function, the four design variables, x1,x2,x3,x4, were initially structured with random values bounded between −5.0 and 5.0, respectively. After 50,000 searches, we arrived at Table 5.Table 5
Four HS algorithms for Powell quartic function.
Variables
IHS
GHS
SGHS
EDMHS
x
1
−0.0383028653671760
−0.0256621703960072
0.0334641210434073
−0.0232662093056917
x
2
0.0038093414837046
0.0023707007810820
−0.0033373644857512
0.0023226342970439
x
3
−0.0195750968208506
−0.0199247989791340
0.0159748222727847
−0.0107227792768697
x
4
−0.0195676609811871
−0.0199247989791340
0.0160018633328343
−0.0107574107951817
f
(
x
)
0.0000046821615160
0.0000070109937353
0.0000024921236096
0.0000005715572753It can be seen from Tables1–5, comparing with IHS, GHS, and SGHS algorithms, that the EDMHS produces the much better results for four test functions. Figures 1–5 present a typical solution history graph along iterations for the five functions, respectively. It can be observed that four evolution curves of the EDMHS algorithm reach lower level than that of the other compared algorithms. Thus, it can be concluded that overall the EDMHS algorithm outperforms the other methods for the above examples.Figure 1
Convergence of Rosenbrock function.Figure 2
Convergence of Goldstein and Price function I.Figure 3
Convergence of Eason and Fenton function.Figure 4
Convergence of Wood function.Figure 5
Convergence of Powell quartic function.


## 4.2. More Benchmark Problems with 30 Dimensions

To test the performance of the proposed EDMHS algorithm more extensively, we proceed to evaluate and compare the IHS, GHS, SGHS, and EDMHS algorithms based on the following 6 benchmark optimization problems listed in CEC2005 [27] with 30 dimensions. (1)
Sphere function:(4.6)f(x)=∑i=1n‍xi2,
where global optimum x*=0 and f(x*)=0 for -100≤xi≤100.(2)
Schwefel problem:(4.7)f(x)=-∑i=1n‍(xisin⁡(|xi|)),
where global optimum x*=(420.9687,…,420.9687) and f(x*)=-12569.5 for -500≤xi≤500.(3)
Griewank function:(4.8)f(x)=14000∑i=1n‍xi2-∏i=1n‍cos⁡(xii)+1,
where global optimum x*=0 and f(x*)=0 for -600≤xi≤600.(4)
Rastrigin function:(4.9)f(x)=∑i=1n‍(xi2-10cos⁡(2πxi)+10),
where global optimum x*=0 and f(x*)=0 for -5.12≤xi≤5.12.(5)
Ackley’s function:(4.10)f(x)=-20exp⁡(-0.2130∑i=1n‍xi2)-exp⁡(130∑i=1n‍cos⁡(2πxi))+20+e,
where global optimum x*=0 and f(x*)=0 for -32≤xi≤32.(6)
Rosenbrock’s Function:(4.11)f(x)=∑i=1n-1‍(100(xi+1-xi2)2+(xi-1)2),
where global optimum x*=(1,…,1) and f(x*)=0 for -5≤xi≤10.The parameters for the IHS algorithm,HMS=5, HMCR=0.9, bwmax=(xjU-xjL)/20, bwmin=0.0001, PARmin=0.01, and PARmax=0.99 and for the GHS algorithm, HMS=5, HMCR=0.9, PARmin=0.01, and PARmax=0.99.Table6 presents the average error (AE) values and standard deviations (SD) over these 30 runs of the compared HS algorithms on the 6 test functions with dimension equal to 30.Table 6
AE and SD generated by the compared algorithms.
Problem
IHS
IHS
GHS
GHS
SGHS
SGHS
EDMHS
EDMHS
AE
SD
AE
SD
AE
SD
AE
SD
Sphere
1.27
e
-
07
1.79
e
-
07
1.41
e
-
02
2.36
e
-
02
5.30
e
-
07
1.27
e
-
06
1.07
e
-
07
1.31
e
-
07
Schwefel
4.83
e
-
01
7.06
e
-
01
2.11
e
-
02
3.01
e
-
02
7.70
e
-
01
1.15
e
-
00
7.03
e
-
01
1.61
e
-
00
Griewank
1.18
e
-
01
1.87
e
-
01
8.83
e
-
02
1.57
e
-
01
8.02
e
-
03
1.05
e
-
02
1.02
e
-
02
1.51
e
-
02
Rastrigin
9.72
e
-
01
1.18
e
-
00
1.09
e
-
02
2.05
e
-
02
1.12
e
-
00
1.43
e
-
00
1.48
e
-
00
1.93
e
-
00
Ackley
5.11
e
-
01
6.06
e
-
01
2.05
e
-
02
2.83
e
-
02
2.13
e
-
01
2.98
e
-
01
3.34
e
-
01
3.85
e
-
01
Rosenbrock
3.37
e
+
01
4.08
e
+
01
6.77
e
+
01
8.97
e
+
01
3.46
e
+
01
3.80
e
+
01
3.17
e
+
01
4.02
e
+
01


## 4.3. Integer Variables Examples

Six commonly used integer programming benchmark problems are chosen to investigate the performance of the EDMHS integer algorithm. For all the examples, the design variables,xi,i=1,…,N, are initially structured with random integer values bounded between −100 and 100, respectively. Each problem is run 5 independent replications, each with approximately 800 searches, all the optimal solution vector are obtained.


### 4.3.1. Test Problem 1

Consider the following:(4.12)f1(x)=(9x12+2x22-11)2+(3x12+4x22-7)2,
where x*=(1,1)T and f1(x*)=0, see [14, 21, 28].


### 4.3.2. Test Problem 2

Consider the following:(4.13)f2(x)=(x1+10x2)2+5(x3-x4)2+(x2-x3)4+10(x3-x4)4,
where x*=(0,0,0,0)T and f2(x*)=0, see [14, 21, 28].


### 4.3.3. Test Problem 3

Consider the following:(4.14)f3(x)=2x12+3x22+4x1x2-6x1-3x2,
where
(4.15)x1*=(4,-2)T,x2*=(3,-2)T,x3*=(2,-1)T
and f3(x*)=0, see [14, 21, 29].


### 4.3.4. Test Problem 4

Consider the following:(4.16)f4(x)=xTx,
where x*=(0,0,0,0,0)T and f4(x*)=0, see [14, 21, 30].


### 4.3.5. Test Problem 5

Consider the following:(4.17)f5(x)=-(15,27,36,18,12)x+xT(35-20-1032-10-2040-6-3132-10-611-6-1032-31-638-20-1032-10-2031)x,
where x*=(0,11,22,16,6)T and x*=(10,12,23,17,6)T with f5(x*)=-737, see [21, 28].


### 4.3.6. Test Problem 6

Consider the following:(4.18)f6(x)=-3803.84-138.08x1-232.92x2+123.08x12+203.64x22+182.25x1x2,
where x*=(0,1)T and f6(x*)=-3833.12, see [21, 28].


## 4.3.1. Test Problem 1

Consider the following:(4.12)f1(x)=(9x12+2x22-11)2+(3x12+4x22-7)2,
where x*=(1,1)T and f1(x*)=0, see [14, 21, 28].


## 4.3.2. Test Problem 2

Consider the following:(4.13)f2(x)=(x1+10x2)2+5(x3-x4)2+(x2-x3)4+10(x3-x4)4,
where x*=(0,0,0,0)T and f2(x*)=0, see [14, 21, 28].


## 4.3.3. Test Problem 3

Consider the following:(4.14)f3(x)=2x12+3x22+4x1x2-6x1-3x2,
where
(4.15)x1*=(4,-2)T,x2*=(3,-2)T,x3*=(2,-1)T
and f3(x*)=0, see [14, 21, 29].


## 4.3.4. Test Problem 4

Consider the following:(4.16)f4(x)=xTx,
where x*=(0,0,0,0,0)T and f4(x*)=0, see [14, 21, 30].


## 4.3.5. Test Problem 5

Consider the following:(4.17)f5(x)=-(15,27,36,18,12)x+xT(35-20-1032-10-2040-6-3132-10-611-6-1032-31-638-20-1032-10-2031)x,
where x*=(0,11,22,16,6)T and x*=(10,12,23,17,6)T with f5(x*)=-737, see [21, 28].


## 4.3.6. Test Problem 6

Consider the following:(4.18)f6(x)=-3803.84-138.08x1-232.92x2+123.08x12+203.64x22+182.25x1x2,
where x*=(0,1)T and f6(x*)=-3833.12, see [21, 28].


## 5. Conclusion

This paper presented an EDMHS algorithm for solving continuous optimization problems and integer optimization problems. The proposed EDMHS algorithm applied a newly designed scheme to generate candidate solution so as to benefit from the good information inherent in the best and the second best solution in the historic HM.Further work is still needed to investigate the effect of EDMHS and adopt this strategy to solve the real optimization problem.



---

*Source: 860681-2012-07-31.xml*