Review of Harmony Search
Review of Harmony Search
PII: S2210-6502(18)30379-1
DOI: https://doi.org/10.1016/j.swevo.2019.03.012
Reference: SWEVO 517
Please cite this article as: T. Zhang, Z.W. Geem, Review of harmony search with respect to algorithm
structure, Swarm and Evolutionary Computation BASE DATA (2019), doi: https://doi.org/10.1016/
j.swevo.2019.03.012.
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to
our customers we are providing this early version of the manuscript. The manuscript will undergo
copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please
note that during the production process errors may be discovered which could affect the content, and all
legal disclaimers that apply to the journal pertain.
ACCEPTED MANUSCRIPT
PT
Tonghua Zhanga , Zong Woo Geemb,∗
a Department of Mathematics, Swinburne University of Technology, Hawthorn, Victoria 3122, Australia
b Department of Energy IT, Gachon University, Seongnam 13120, South Korea
RI
SC
Abstract
U
oriented review papers. However, this review paper tries to focus on the historical development of
AN
algorithm structure instead of applications. This paper explains the original HS algorithm along
with a selection of modified and hybrid HS methods: adaption of original operators of the ba-
sic harmony search, parameter adaption, hybrid methods, handling multi-objective optimisation
M
problems and constraint handling.
Keywords: Harmony search, Optimisation, Hybrid method, Algorithm structure, Metaheuristic
D
optimisation algorithm
TE
1. Introduction
tially proposed by Zong Woo Geem in his PhD thesis [1] even though it is now well known from
the first journal publication [2]. Since then, it has obtained great success in various engineering
applications, resulting numerous publications as suggested in Fig.1. It shows a sustained and
C
growing interest in harmony search method and its variants, particularly since 2011 in terms of
AC
number of publications on using of harmony search technique as shown in Fig.1, but it is since
2006 in terms of the major modifications being made to change the algorithm structure as sug-
gested in Fig.2. Several monographs [3–6] and survey articles [7–17] have addressed the advances
of harmony search technique and its variants, but as far as we know that there is no such review
addressing harmony search technique from the aspect of algorithm structure thoroughly. In this
review article, we aim to acknowledge the advances of harmony search from the point of view of
the algorithm structure. We will try our best to include as many as such advances, see Fig.1.
∗ Correspondingauthor
Email addresses: [email protected] (Tonghua Zhang), [email protected] (Zong Woo Geem)
+,-./012/034,4532/0267,8-092:47,;<27=1-,/3<8
PT
%!!! &!!
%"!
$"!!
RI
%!!
$!!!
$"!
#"!! $!!
SC
#"!
#!!!
#!!
"!!
U
"!
! !
AN
!#
!$
!%
!&
!"
!'
!(
!)
!*
#!
##
#$
#%
#&
#"
#'
#(
#)
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
$!
>?8?= 73/@42A-B C00?7=2A-B
M
Figure 1: Growing interest in the study and applications of Harmony Search since 2001. (Source: Scopus, topic:
D
“harmony search” in fields of title + abstract + keywords, duplicates removed, at 11.30am 16 April 2018.)
TE
To clearly see the modifications made in the structure of harmony search, in this section, we
will briefly recall the original technique, referring to the basic Harmony Search (HS) algorithm
EP
by Geem [1] for solving the optimisation problems with discrete variables and then adapted for
cases with continuous decision variables and mixed variables by Lee & Geem [18].
C
Let f (·) be the objective function and X = (x1 , · · · , xN ), where xi , i = 1, · · · , N are the
decision or design variables. For the convenience of discussion, we state the optimisation problem
AC
as follows
Minimise f (X) by varying X (1)
subject to constraints
g(X) ≤ 0 and h(X) = 0. (2)
Here xi ∈ [xL U
i , xi ] for continuous variables, xi ∈ Xi = xi,j , j = 1, · · · , Ki xi,1 < xi,2 < · · · < xi,Ki
for discrete variables, and N is the number of decision variables and Ki is the number of possible
values for discrete variable xi . For the basic HS, the algorithm structure is summarised as a
flowchart in Fig.3.
2
Fusion of DE + AFS and HS [60] Improved AHS [37]
IHS using truncated Cauchy distribution [46]
AC
Global best HS (GHS) [28] SGHS [41]
C
MHS with correcting strategy [21]
HS+Simplex method [63]
EP HHSA [62]
Chaotic HS algorithms [26]
DE/best/1 algorithm [32]
Improved HS [24]
TE
Chaotic HS [25]
NGHS [67]
ACCEPTED MANUSCRIPT
IGHS [68,70] FHS [47]
HHS [78]
Basic Harmony Search (Cont.) [18]
D CSA+HS [65]
HAA [57]
AN
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018
MHS [35]
U PSF [48,49]
GHS+LEM [29]
SC
IHSA [54]
EHS [42]
IAHS [74]
LHS [75]
NHSA-DHSC [56]
IGHS [50] Dynamic HS [33]
AHS [36]
RI
Improved HS [27] HHS based on FFO [77] MHS [55,79]
IHS with dynamic PAR [34]
Dynamic SAHS [45]
Differential HS (Cont. [30], Disc. [31]) EHS [53]
MHS [43]
Figure 2: Chronology Of Major Variants Of The Basics Harmony Search Since 2000
PT TPHS [80]
AC
"#$%& $'(')*&*(+ "#,&,'-,+*!.'()/#0!1*)/(0
C .'()/#0! 1*)/(0!2.13
EP
!"#$
9,#:!&6*!5/(+&!6'()/#07!
Figure 3: Flowchart of the Basic Harmony Search
")$(/4,+* '!#*5!6'()/#07!
)#*5 )5/(+&
TE
ACCEPTED MANUSCRIPT
8/)$'(* )#*5!5,&6!)5/(+&
D
M
4
!!!!!!!%&'!
AN
"+!)#*5!!@*&&*(> 9,#:!&6*!5/(+&!6'()/#07!
%%%%%%%%(" )5/(+&
%%%%%%%("
;(* &*(),#'&,/#!
U SC
<(,&*(,'!+'&,+=,*:>
%%%%%&'! RI
?%&$%&! )@*+& '#:!A&/$
PT
ACCEPTED MANUSCRIPT
The basic HS algorithm has three key parameters, being listed and explained in Table 1, and
other parameters, such as the maximum number of improvisations (MaxImp) and bandwidth,
PT
which later was renamed as fret width, vector (bw) used in pitch adjustment for the implemen-
tation of the algorithm. The convergence capability of the basic HS in terms of these parameters
was discussed by Geem and his collaborators [19].
RI
Table 1: Key parameters in the basic Harmony Search of [2]
SC
HMS: harmony memory size, namely the number of solution vectors
U
PAR: pitch adjusting rate
AN
As shown in Fig.3 and pointed out by Geem et al. [2, 20], Lee & Geem [18], Ingram & Zhang
[10] and Wang et al [6], there are five main steps in the basic algorithm structure of HS:
M
Step 1: Initialise the algorithm by specifying parameters
Step 2: Initialise the Harmony Memory (HM) and sort to find the worst harmony, Xworst
D
The implementation of the basic harmony search algorithm is detailed one-by-one as follows.
In this step, we will not only supply the objective function, f (X), the functions defined the
constrained conditions, g(X) ≤ 0 and h(X) = 0, but also predefine all parameters, such as
AC
HMCR, PAR, MaxImp and bandwidth vector, b ∈ RN for continuous variables and neighboring
index vector m ∈ ZN > 0 for discrete variables.
In general, the parameter values are to be selected arbitrarily, but helpful recommendations
were made in previous publications, see Table 2 of [10] as an example, showing they could vary
in a very large range, respectively. Lee et al [21] also made the following recommendation:
10 ≤ HMS ≤ 50, 0.7 ≤ HMCR ≤ 0.95, 0.2 ≤ PAR ≤ 0.5 and 30000 ≤ MaxImp ≤ 80000.
Selection of parameter values is sensitive and in general depends on the type of applications.
5
ACCEPTED MANUSCRIPT
PT
augmented matrix of order HMS × (N + 1) as in [10] :
x11 x12 ··· x1N f (X1 )
RI
2
x1 x22 ··· x2N f (X2 )
HM =
.. .. .. ..
.
(3)
. . . ··· .
SC
xHMS
1 xHMS
2 ··· xHMS
N f (XHMS )
Here, Xj = (xj1 , · · · , xjN ) is a solution vector, f (Xj ) is the value of the objective function at Xj
U
and xji is the ith value in the jth solution vector for j = 1, · · · , HMS. The difference between
references [6, 8, 18] and [10] is whether the values of the associated objective function are included
AN
in HM. In practice, the HM matrix (3) is a sorted matrix according to the fitness of the objective
function, for example, Ingram & Zhang [10] suggested to store the best solution vector in the first
row of HM matrix and the worst in the last row, namely X1 = Xbest and XHMS = Xworst .
M
2.3. Improvising a new harmony and if required update HM
D
Generating a new harmony is the key and determines the performance of the algorithm.
Thus, variants of the Harmony Search method were mainly developed by providing new ways of
TE
generating a new harmony. It is randomly done for each variable xi by firstly using parameter,
HMCR for harmony memory consideration
EP
xj ∈ x1 , · · · , xHMS with probability HMCR
i i i
xnew,i ← (4)
xj ∈ {set of possible values for xi } with probability (1-HMCR)
i
C
and then using PAR for pitch adjustment of xnew,i according to (5)
AC
min(max(xnew,i , xL ), xU ) ← xnew,i + rnd([−bi , bi ]) for continuous decision variables
i i
xnew,i ←
xj+mi , mi is the neighbouring index for discrete decision variables
i
(5)
as suggested by [6, 8, 10, 18]. The pseudo codes for continuous and discrete decision variables are
summarised in Algorithm 1 and Algorithm 2, respectively.
Once a new harmony, Xnew has been improvised, compare it with the worst harmony, Xworst in
HM. If the former fits the objective function better than the latter, then update HM by replacing
6
ACCEPTED MANUSCRIPT
PT
Algorithm 1 Pseudo code for improvising a new harmony, Xnew in basic HS for continuous
variables ([6, 8, 10, 18])
1: For each variable, xi , i = 1, 2, · · · , N
RI
2: if rnd([0,1])≤ HMCR then
SC
3: if rnd([0,1])≤ PAR then randomly adjust xnew,i within a small band, ±bi by
4: xnew,i ← xnew,i + rnd([−bi , bi ])
U
5: xnew,i ← min(max(xnew,i , xL U
i ), xi )
6: else
AN
xnew,i ← rnd([xL U
i , xi ])
Algorithm 2 Pseudo code for improvising a new harmony, Xnew in basic HS for discrete variables
([6, 8, 10, 18])
1: For each variable, xi , i = 1, 2, · · · , N
EP
7
ACCEPTED MANUSCRIPT
the latter with the former, which is then followed by outputting the new harmony. It is seen that
this process is the key step of the basic harmony search algorithm and of its variants.
PT
2.4. Check termination criterion and output best harmony
The searching of new harmony stops if the termination criterion is satisfied; otherwise goto
RI
Step 3 and repeat it, performing Algorithm 1 for continuos decision variables and Algorithm 2
for discrete decision variables.
SC
The variants either have been developed to modify the structures of the aforementioned five
steps, by
U
(a) providing alternative initialisation procedures for harmony memory
AN
(b) creating new improvisation procedures, including but not limited to
(b1) the use of variable parameters, such as HMS, HMCR, PAR even bw
M
(b2) options for handling constraints when generating new harmonies
(b3) different criteria for filtering and selecting new harmonies for the HM
D
existing HS flavors can be found from Geem [9] and Alia & Mandava [12]. In addition, surveys on
applications of HS can be found from [10, 13] and the references therein. But, to the best of our
knowledge, there are no any reviews or surveys having been done with respect to the algorithm
C
structures. In the rest of this paper, we will use two sections to address the modifications towards
AC
the algorithm structures: one section will be focusing on the changes made within the original
structures and the other will be focusing on the structure modifications due to hybridisation with
other heuristic algorithms.
Due to its success in solving the single objective optimisation problems in engineering appli-
cations, the basic Harmony Search method has been adapted into different variants. For example
the ones for solving multi-objective optimisation problems, the ones for mixed variables, and the
ones with modified algorithm structures to improve the performance of the basic HS method.
In following sections, we will provide an overview of all kinds of modifications of the basic HS,
particularly focusing on the structural variations.
8
ACCEPTED MANUSCRIPT
PT
Harmony search type of algorithms has been proven very successful as evidenced by numerous
applications. In order to improve its efficiency or to overcome some shortcomings, the original
RI
HS operators have been adapted and/or new operators have been introduced. In this section, we
summarised the algorithm structure changes that were induced by adaptions of operator or new
SC
operators.
To take full advantage of the accumulated information in the harmony memory, Li, Chi and
Chu [22] used a two-point search strategy rather than random search strategy in HM considera-
U
tion, resulting the following structure change summarised in Algorithm 3.
egy ([22] )
AN
Algorithm 3 Pseudo code for improvising Xnew in the modified HS with two-point search strat-
HMS
X
λmax = max{λL , λU }, λmin = min{λL , λU }, Rij = xki ,
TE
k=1,k6=j
j j
xL
i − Ri xU
i − Ri
λL = j j
and λU =
Ri − x i Rij − xji
EP
else generate the ith decision variable of the the new harmony using mutation strategy
C
Li and his collaborators modified the pitch adjusting operator by using the non-uniform mu-
tation operator of the genetic algorithm [23], namely when rnd([0, 1]) < PAR, the pitch adjusting
9
ACCEPTED MANUSCRIPT
PT
i
xnew,i ←
xnew,i − ∆ Imp, xnew,i − xL
if rnd({0,1}) = 1
i
where b
RI
t
∆(t, y) = y × rnd([0, 1]) × 1 −
MaxImp
and b is a parameter, in general b = 2.
SC
In stead of a single new harmony, Li and Chi [24] and Cheng et al [25] proposed to improvise
n > 1 new harmonies, respectively. Particularly, Cheng [25] suggested that n = 0.1×HMS. Li et al
also proposed similar operators [26]: simple chaos harmony method, fixed chaos harmony method
U
and dynamic chaos harmony method. The key difference between the basic HS and chaotic
AN
harmony methods lies in that HS generates one new harmony, Xnew in the step of Improvisation
while the latter not only generates Xnew but also several new harmonies using the chaotic logistic
map
M
Xjchaotic new = li + (ui − li ) × χImp
i with χ Imp
i = 4 × χ Imp−1
i 1 − χ Imp−1
i (6)
and here li , ui are modified bounds. Besides the logistic map (6), Alatas [27] introduced 6 other
D
chaotic maps,
TE
aXn (1 − Xn ) for logistic map,
Xn /0.7
if Xn < 0.7
Xn ← for tent map,
(10/3) × Xn (1 − Xn ) otherwise
EP
aX2n sin (πXn ) or a simple version sin (πXn ) for sinusoidal map,
Xn+1 = j k (7)
1 1
− Xn , Xn ∈ (0, 1) for Gaussian map,
C
Xn
Xn + b − (a/2π) × sin (2πXn ) × mod (1) for circle map,
AC
2.3 × Xn
2 sin(πXn )
for sinus map,
1 − aX2 + bX
n n−1 for Henon map.
Based on the selected maps in (7), he proposed seven Chaotic Harmony Search algorithms sum-
marised in Table 2, where X indicates the parameter/operation being modified by chaotic maps.
Based on the basic HS and the work of [28], Omran and Mahdavi [29] proposed a so-called
Global-best HS method (GHS), in which the structure of the pitch adjusting process of Algorithm
1 was modified as
10
ACCEPTED MANUSCRIPT
PT
HM X X X X
bw X X X X
RI
PAR X X X X
SC
The GHS algorithm was further improved in an algorithm called Global-best Harmony Search
using Learnable Evolution Models (GHS+LEM) [30], which introduces three new parameters, the
U
Rate of Rule Update (RRU), the High and Low performance GroupS (HLGS) and the Rate of
Consideration of Rules (RCR) to modify the algorithm structure of GHS in 3 ways:
AN
(a) adding a rule inference procedure right before the step of improvisation of the GHS based
on HLGS
M
(b) defining the dimension values of new improvise based on RCR in the Improvisation step
(c) adding a procedure of checking the rule update criteria based on RRU right after HM is
D
updated
TE
Based on GHS, most recently Ruano-Daza and his collaborators proposed a multi-objective bilevel
approach for defining optimal routes and frequencies for bus rapid transit systems [31].
Chakraborty and his collaborators [32] proposed to modify the pitch adjustment operation of
EP
xnew,i ← xnew,i + rnd([0, 1]) × (xji − xki ), i = 1, · · · , N and j, k = rnd({1, 2, · · · , HMS}) (9)
C
which is borrowed from differential evolution algorithm. The new algorithm is called Differential
Harmony Search (DHS), which was later on adapted for discrete decision variables [33]. Abedin-
AC
pourshotorban et al. [34] further adapted DHS algorithm by adding an operation to effectively
initialise harmony memory, but keeped the mutation operation (9) in the pitch adjusting opera-
tion, resulting a new algorithm called DE/best/1, inspired by which Guo et al recently proposed
an Adaptive Harmony Search method with best-based search strategy (ABHS) [35].
Most recently, a novel pitch adjusting scheme according to (11) was proposed by Keshtegar
et al. [36] based on the dynamic bw (10)
xnew,i + rnd([0, 1]) × bwi (Imp) with probability ≤ 0.5
xnew,i ← (10)
xbest + γ(Imp) × rnd([0, 1]) × bwi (Imp)
i with probability > 0.5
11
ACCEPTED MANUSCRIPT
q
t
where γ(t) = 1− MaxImp and
xU L
i − xi + 0.001 Imp
PT
bwi (Imp) = × exp −10 × (11)
10 MaxImp
RI
The values of parameters in harmony search technique are essential to the success implemen-
tation of this algorithm. In general, researchers suggested to use the variable parameters instead
SC
of the fixed ones. To implement these variable parameters, relevant algorithm structures should
be modified when improvising a new harmony, such as adding iteration loop or blocks to the
original structure. We summarise the variations of parameter settings as follows.
U
Instead of using fixed parameters, Mahdavi et al. [28] made an attempt proposing that PAR
PAR(Imp) = PARmin +
Imp
AN
and b = (b1 · · · , bN ) should be functions of the generation, namely for the Imp-th improvisation
× PARmax − PARmin ,
MaxImp
M
Imp (12)
Imp bi,min bi,min MaxImp
bi (Imp) = bi,max × exp ln = bi,max × ,
MaxImp bi,max bi,max
D
resulting an Improved Harmony Search algorithm (IHS). A similar work has also been proposed by
Kumar et al. [37, 38] where parameters are adapted automatically in a linear form or exponential
TE
form. Then, Coelho et al. [39] changed this structure further by proposing a new way to generate
a dynamical PAR
fImp,max − fmean
EP
|frequired − fpredicted |
HMS ← HMS × 1 + +1 ,
frequired
|frequired − fpredicted |
HMCRmax or min ← HMCRmax or min × 1 ± , (14)
frequired
|frequired − fpredicted |
PARmax or min ← PARmax or min × 1 ± .
frequired
Dong et al. [41] proposed an improved HS method, called Adaptive Harmony Search (AHS),
for solving optimisation problems with discrete decision variables by firstly dynamically changing
HMCR
Imp
HMCR(Imp) = HMCR0 + ω × 1 − , ω ∈ (0, 1 − HMCR0 ) (15)
MaxImp
12
ACCEPTED MANUSCRIPT
and then searching the jth-nearest value as a next value with probability
PARj (Imp) = PAR0,j × 1 − HMCR(Imp) + α , j = 1, 2, 3, (16)
PT
where PAR0,j is the initial pitch adjusting probability and α the inertia weight. For solving
large-scale structural optimisation problems, a method also referred to as AHS was proposed by
RI
Hasancebi et al. [42], where for each generation Imp, it dynamically changes the HMCR and
PAR as follows:
SC
" #!−1
1 − HMCR
HMCRk = 1 + × exp − γ × rnd([0, 1])
HMCR
" #!−1 (17)
U
1 − PAR
PARk = 1 + × exp − γ × rnd([0, 1])
PAR
AN
where γ ∈ [0.25, 0.50] is the learning rate of control parameter and the averages of HMCR and
PAR are defined by
HMS HMS
1 X 1 X
M
i
HMCR = HMCR and PAR = PARi .
HMS i=1 HMS
i=1
To better to explore and exploit the problem space exhaustively, a dynamic adaptation pro-
D
cedure was proposed by Li and his collaborator [43] for the harmony memory consideration rate:
TE
Cd
Md if Cd ≤ Md ,
HMCR = (18)
1.0 otherwise,
EP
qX
Md = η × N × xU L 2 , η ∈ (0, 1).
i − xi
Different to the works of [28, 29, 41] where harmony consideration rate and pitch adjust
rate are dynamically changed, the Self-Adaptive Harmony Search algorithm (SAHS) proposed
to change the pitch adjusting bandwidth, which was called a trial by Wang and Huang [44],
dynamically in each iteration:
triali + rnd × xU − triali
i
triali ← (19)
triali − rnd × triali − xL
i
13
ACCEPTED MANUSCRIPT
Taherinejad [45] proposed a different way to dynamically vary the pitch adjusting bandwidth
Imp bwmin
PT
bw(Imp) = bwmax × exp × ln (20)
MaxImp bwmax
A Self-adaptive Global best Harmony Search (SGHS) algorithm for solving continuous op-
RI
timisation problems were introduced by Pan et al. [46], where authors claimed that the new
improvisation scheme could capture all good information of the current global best solution. A
learning mechanism was used to dynamically adapt HMCR and PAR, while the pitch adjusting
SC
bandwidth is dynamically updated according to
bwmax − 2×Imp × (bwmax − bwmin ) MaxImp
MaxImp if t < 2 ,
U
bw(Imp) = (21)
bwmax MaxImp
if t ≥ 2 ,
AN
which is different to Eqs. (12), (19) and (20). A much simpler way of dynamically updating bw
was used in [47] recently
xU L
i − xi
bw(Imp) = .
M
Imp
A similar way to (21) was used in a so-called EHS algorithm to dynamically change bw in [48]
D
bwmax − 2×Imp × (bwmax − bwmin ) if t < 3 × MaxImp,
MaxImp 4
bw(Imp) = (22)
bwmin
TE
if t ≥ 43 × MaxImp,
Instead of using the dynamical bw or the one given in the basic HS, Yang [11] used a uniform
adjusting bandwidth,
EP
xU
i − xi
L
bwi = ,
1000
which was further adapted by Jaberipour [49] into the one based on the approximation of the
C
for the Improving Proposed Harmony Search (IPHS), where A ∈ [0, PAR]. Clearly, Yang [11]
used A = 0, the PHS used A = PAR and otherwise the best choice is A =PAR/2 or PAR [49].
14
ACCEPTED MANUSCRIPT
The Self-Adaptive Harmony Search algorithm proposed by Kattan and Abdullah [50] not only
used the dynamical pitch adjustment rate, PAR, but also the bandwidth, bw.
PT
f(Xbest )
PAR ← PARmax + × (PARmin − PARmax )
f(Xworst ) (25)
bw ← rnd([−a, a]), where a = C × StdDev(xiHM )
RI
The improved HS algorithm (IHS) proposed by Weihmann et al. [51] uses truncated Cauchy
distribution in the range [0,1] to generate values for HMCR. The utilization of Cauchy distribution
SC
can be useful in IHS. Due to Cauchy be more expanded than Gaussian distribution, it allows,
probabilistically speaking, large steps and in this way, generating more different values for the
HMCR. Furthermore, the proposed IHS employs bw with decreasing linear during the generations
U
with initial value equal to 0.5 and final value equal to 0.01.
rP
hmr
AN
Peraza et al. [52] designed a fuzzy operation to dynamically update HMCR and PAR in a so
called Fuzzy Harmony Search algorithm (FHS). The operation works according to
rP
par
µhmr
i (hmr1i ) µpar
i (par1i )
M
i=1 i=1
HMCR = rP
hmr
and PAR = rP
par
(26)
µhmr
i µpar
i
i=1 i=1
D
(·)
where r(·) is the number of rules of the fuzzy system and µi is the membership of function of
rule i.
TE
To better utilise the variation of solutions present in Harmony Memory, Kumar et al. [53, 54]
proposed a Variance-based Harmony Search Algorithm (VHSA). It generates a new harmony
EP
according to the variations present in the current harmony and the ones in HM. The pitch
adjustment is done by
It is worth mentioning that Geem and Sim [55] and Geem and Cho [56], instead of using
variable or dynamical parameters, introduced a Parameter-Setting-Free (PSF) harmony search
algorithm, where two major parameters are dynamically changed by the PSF techniques
n(otk = memory consideration or pitch adjustment)
HMCRk ←
HMS
k (27)
n(ot = pitch adjustment)
PARk =←
n(otk = memory consideration or pitch adjustment)
where n(·) is a count function representing the number of specific operations in HM and otk
is the operation type, namely random selection, memory consideration or pitch adjustment, in
generation k.
15
ACCEPTED MANUSCRIPT
Lastly, very different to the aforementioned, the Improved Global Harmony Search algorithm
(IGHS) [57] replaces the uniform distribution with the Gaussian distribution in the process of
PT
pitch adjustment. Geem [58] added a new operation, ensemble consideration to the algorithm
structure of the basic HS. The new operation was introduced to update Xnew generated by
Algorithms 1 or 2 with probability of Ensemble Consideration Rate (ECR).
RI
5. Structure modifications by hybridising with the existing heuristic algorithms
SC
To overcome the drawbacks of the basic harmony search algorithm and improve the perfor-
mance of HS, we could modify the algorithm structure by changing the way of setting parameters,
U
or by fusing the HS techniques with other algorithms. We will provide an overview of this type
of structure changes in this section.
AN
Tian, Bo and Gao [59] proposed the Harmony-Annealing Algorithm (HAA), which is based
on the basic HS and modified the improvisation operator as follow: when rnd < HMCR, the new
harmony is to be generated by HS; otherwise, it will be generated by the Very Fast Simulated
M
Annealing (FSA) algorithm:
xnew,i ← xnew,i + yi × xU L
i − xi
D
|2rnd−1| !
1
yi = T × sign (rnd − 0.5) × 1+ −1
TE
Then, the same authors discussed the selection of parameters when applying the HAA [60]. A
similar hybrid algorithm to references [59, 60] was proposed by Wang and Gao [61], where in step
EP
of improvisation there are also two new harmonies generated with one from HS, xHS
new and the
Gao et al. [62] proposed a method by fusing the Differential Evolution (DE) algorithm, the
C
artificial fish swarm (AFS) technique and HS for multi-modal optimisation, in which the new
AC
control mechanism was made using AFS to determine whether Xworst was to be replaced with
Xnew . It works as follows: after generating a new harmony, Xnew we first define a distance
function
ρi ≡ ||Xnew − Xi ||, i = 1, · · · , HMS
16
ACCEPTED MANUSCRIPT
P
HMS
where f¯ = 1
HMS f (Xi ). The drawbacks of this method are: the selection of ρV is case-
i=1
dependent and there is no general rule; the calculation of ρi may be very time consuming if the
PT
memory size is large. The remarkable feature of HS+DE is that it provides a new way to update
HM so that to overcome the premature problem of the basic HS: instead of directly using the
RI
Xnew to replace Xworst , the new method uses the DE method [63] to do a fine-tuning resulting
a new HM, based on which produce a new harmony and then resume the regular HS, see the
pseudo code in Algorithm 4.
SC
Algorithm 4 Pseudo code for HS + Differential Evolution method ([62])
1: Start the algorithm: input all parameters for regular HS and DE
U
Generate a randomly initialised HM according to the regular HS
2: Apply DE method to fine-tune HM
AN
For each harmony, Xi , i ∈ {1, 2, · · · , HMS} in HM, apply the evolutional strategy
Xi ← λXi + (1 − λ) × (Xji − Xki ) , λ ∈ [0, 1]
M
i 6= ji , ki = rnd ({1, 2, · · · , HMS})
To fine-tune Xi , resulting Xtuned,i ← Xi
3: Update HM by using the tuned one
D
Based on [28], Fesanghary et al. [64] proposed a method called Hybrid Harmony Search
Algorithm (HHSA), which uses Sequential Quadratic Programming (SQP) to improve the per-
formance of local search. Then the algorithm structure of the basic HS is changed after returning
C
a new harmony, Xnew in Algorithms 1 and 2. Pseudo code for this algorithm in Algorithm 5.
AC
Comparing with the basic HS, which directly rejects the infeasible solution, another feature of
HHSA is that infeasible solutions in the current HM that violate the constraints have a chance
to be included in the HM by considering the penalty cost, which is calculated using the static
penalty function
M
X P
X
fitness(X) = f (X) + αk × min{0, gk2 (X)} + βk × min{0, h2k (X)} (28)
k=1 k=1
17
ACCEPTED MANUSCRIPT
PT
2: Calculate fitness, f (Xnew )
RI
Update HM if required
SC
3: Repeat Step 2 Utill a pre-defined termination criterion is satisfied
4: For each Xj ∈ HM applying SQP to improve the harmony
5: Output Xbest
U
AN
(SM) is incorporated into the improvisation step of the basic HS method to fine-tune the new
harmony, Xnew by the 4 operations, reflection, expansion, contraction and shrinkage so that HS
can find an optimisation solution more accurately and quickly. The pseudo code is as in Algorithm
M
6, from which or reference [65], we can see that this hybrid method requires that HMS ≥ N + 1.
Algorithm 6 Pseudo code for generating a new harmony in the Hybrid Simplex-Harmony Search
D
([65])
1: Start the algorithm: input all parameters for regular HS and SM
TE
XN +1 ← XSM
new
5: Goto Step 2
AC
Lo [66] introduced a hybrid algorithm, HS-DLM by combing the HS with Discrete Lagrange
Multiplier (DLM) with the main purpose of constraint handling using DLM.
The fusion of Clonal Selection Algorithm (CSA) and HS [67, 68] was developed based on
the basic HS, while using CSA to improve the members of HM, more precisely the cloning and
mutation operators of CSA are embedded into the HS method as a separate fine-tuning approach
to improvise a new harmony.
Instead of having the pitch adjusting operator, the approach, Novel Global Harmony Search
algorithm (NGHS) based on the IHS of [28] and the PSO modified the improvisation step to
have a genetic mutation operator fine-tuning the new harmony, see [69] and Algorithm 7. It was
18
ACCEPTED MANUSCRIPT
further modified by Valian et al. [70], where an algorithm called Intelligent Global Harmony
Search (IGHS) was proposed by modifying the improvisation step of the NGHS in a way such
PT
that the new harmony imitates one dimension of the best harmony in the HM, namely when
randomly playing pitch adjusting, it firstly improvise the new harmony as the best one in HM.
RI
Algorithm 7 Pseudo code for fine-tuning a new harmony in NGHS [69]
For each i ∈ {1, · · · , N }
SC
If rnd ≤ PAR do genetic mutation:
U L
xnew,i ← xL
i + rnd × xi − xi
U
Else do xR = 2 × xbest
i − xworst
i
If xR > xU
xR = xU
i
i
AN
ElseIf xR < xL
i
M
xR = xL
i
End
D
xnew,i ← xworst
i + rnd × (xR − xworst
i )
TE
End
algorithm was proposed by Chatterjee, Ghoshal and Mukherjee [71], in which OBL is employed to
initialise and produce HM. Employing the OBL, Xiang et al. [72] proposed an Improved Global-
C
best Harmony Search algorithm (IGHS). First, the IGHS uses the OBL the solution quality
of initial HM; Second, the DE is used to replace the random play of the harmony memory
AC
xnew,i ← rnd([xL U
i , xi ])
is replaced with
xnew,i ← xbest
i + ζ × (xji − xki ), {j, k, best}j,k6=best ∈ rnd({1, 2, · · · , HMS}) (29)
ζ is a scale factor; it is then followed by the pitch adjusting done by the Artificial Bee Colony
algorithm (ABC) [73]; Once reach a new harmony, Xnew and harmony memory is updated, the
best harmony Xbest in the current HM is then to be fine-tuned firstly by ABC and then by
19
ACCEPTED MANUSCRIPT
OBL, returning an improved new harmony. The two major parameters, HMCR and PAR are
also dynamically updated during the calculations
PT
Imp
PAR(Imp) = PARmin + × PARmax − PARmin × γ,
MaxImp
(30)
Imp
HMCR(Imp) = HMCRmin + × HMCRmax − HMCRmin × γ,
RI
MaxImp
n o
here γ = max 0, sgn (sin (Imp)) and PAR is based on the formula (12), the work of Mahdavi
SC
et al. [28].
Hasan et al. [74] proposed a hybrid harmony search algorithm by replacing all random con-
sideration in HS with five different types of mutation operations.
U
The selection operator of the Evolutionary Algorithm (EA) was integrated into HS algorithm,
resulting a new algorithm known as Geometric Selective Harmony Search (GSHS) [75], which
AN
introduces a selection procedure and recombination operator in the memory consideration process,
and a mutation operation in the pitch adjustment.
M
The Improved Adaptive Harmony Search algorithm (IAHS) [76] added two main blocks in
the algorithm structure: forward and backward schemes when initialising harmony memory and
forward scheduling scheme when improvising a new harmony.
D
Integrated with OBL technique and the competition selection mechanism, Ouyang et al. [77]
TE
proposed an improved version of harmony search algorithm, Local opposition-based learning self-
adaptation global harmony search (LHS), which from aspect of algorithm structure has one key
change: it generates two harmonies each improvisation with first new harmony, Xnew = (xnew,i )
EP
is generated by the basic HS, and then the second X̃new = (x̃new,i ) by OBL and the first one as
follows
xU + xL − xnew,i
i i with probability HMCR,
C
x̃new,i = (31)
xL + rnd([0, 1]) × (xU − xL )
i i i with probability 1-HMCR.
AC
Banerjee and his collaborators also proposed a new algorithm based on the OBL and called the
Opposition-based HS (OHS) [78], where they first defined an opposite number for each decision
variable xi :
bi = xL
x U
i + xi − xi (32)
Based on (32), they added a block to the algorithm structure when initialising HM, resulting
an opposition-based harmony memory. The second innovation is the block of opposition-based
jumping added after HM is updated in the improvisation process.
It is known that the basic harmony search has difficulties in performing local search, to
overcome this, Zhang et al. [79] proposed an effective Hybrid Harmony Search algorithm (HHS)
20
ACCEPTED MANUSCRIPT
based on the Fruit Fly Optimisation algorithm (FFO) and the harmony search. The incorporation
of FFO changes the structure of the improvisation process, which is to be done by the new rules
PT
for memory consideration and pitch adjustment. Particularly, for multidimensional knapsack
problem, the rules take the following forms
RI
xj ∈ HM, j ∈ rnd{1, 2, · · · , HMS} if rnd < HMCR
i
HM Consideration: xnew,i ←
rnd ({0, 1}) else
SC
(33)
|xnew,i − 1| if rnd < HMCR and rnd < PAR
Pitch Adjustment: xnew,i ←
xnew,i else
U
This Hybrid Harmony Search (HHS) algorithm proposed by Cheng et al. [80] developed a
AN
new operation to improvising new harmonies by replacing the randomly playing harmony memory
with Global-best Particle Swarm Optimization (PSO) search and neighbourhood search, namely
when HMCR ≥ rnd, the new harmony will be generated by PSO and neighbourhood searches.
M
Mohamed et al. [81] proposed a new technique called Modified Harmony Search (MHS),
which modifies Improvisation of the basic HS by adding two operations: first operation from PSO
D
employed in the harmony memory consideration phase will generate two harmonies, Xrandom
new is
generated randomly by the basic HS and XPSO
new by PSO; the second borrowed from GA that
TE
algorithm called Two-Phase Harmony Search (TPHS) algorithm, in which the phase I focuses on
diversification by utilising the concept of catastrophic mutation from GA, and the second phase
C
on local search.
To overcome the issue of premature convergence of the HS algorithm, most recently, Assad and
AC
Deep [83] proposed a novel hybrid algorithm called Harmony Search and Simulated Annealing
(HS-SA) algorithm. As pointed out by the authors that the HS-SA algorithm works the same as
the HS, except that the suboptimal harmonies are accepted as in SA.
Geem and Hwangbo [84] generalised the basic HS for single objective optimisation to mul-
tiobjective optimisation. Ricart and his collaborators also proposed a Multiobjective Harmony
21
ACCEPTED MANUSCRIPT
PT
RI
SC
Algorithm 8 Pseudo code for improvising Xnew in the Modified HS based on PSO and GA [81]
1: For each decision variable, xi , i = 1, 2, · · · , N
U
xnew,i = xji randomly select j ∈ {1, 2, · · · , HMS}
3:
xPSO,i = xbest
i
AN
∈ HM based on PSO
xPSO,i = rnd([xLi , xU
i ])
D
Xrandom
new = (xnew,1 , · · · , xnew,N ) and XPSO
new = (xPSO,1 , · · · , xPSO,N )
6:
Xrandom random
update = rnd([0, 1]) × Xnew + (1 − rnd([0, 1])) × XPSO
new
Xnew ← the best of Xrandom PSO
update , Xupdate
22
ACCEPTED MANUSCRIPT
Search algorithm (MHS) [85], Sivasubramani and Swarup also proposed a multi-objective har-
mony search algorithm [86], where authors used the proposed algorithm for solving an optimal
PT
power flow problem.
To handle multiobjective optimisation problems, a parallel algorithm, MR-DHS algorithm
based on HS was developed by Li et al. [87]. The parallel algorithm is different to the basic HS
RI
in two aspects:
(a) instead of single harmony memory, MR-DHS algorithm divides HM into several sub-HMs
SC
(b) HMCR is updated dynamically according to roulette, and PAR is adjusted according to [28]
or
U
1 PARmax
PAR(Imp) =PARmin × exp − ln
MaxImp2 − 1 PARmin
× exp
AN
Imp 2
MaxImp2 − 1
× ln
PARmax
PARmin
(34)
M
7. Changes in structure to adapt alternative initialisation procedures for Harmony
Memory
D
The original HS assumed that every row in HM has the same chance to supply a new value
for xnew,i . To improve the performance of the basic HS, Li and Chi [24] and Cheng et al. [25]
TE
which ensures the harmonies with better fitness had a greater chance of selection. When analysing
the slope stability, Cheng et al. [25, 88] found that the basic HS worked extremely well if the
C
number of control variables is less than 25; otherwise it could be trapped by the local minima
easily. Thus, they modified the basic HS in the following ways:
AC
(a) In the Step of generating a new harmony, not use a uniform probability to select a harmony
from HM, instead each harmony in HM is assigned a selecting probability
(b) Instead of generating one new harmony at an iteration, the modified generates Nhm new
harmonies, and when updating HM still keep the best HMS harmonies
(c) Proposed a new termination criterion: first run HMS × Ni , i = 1, 2 iterations generating a
best solution Xbest,i . Then, it stops if |f (Xbest,2 ) − f (Xbest,1 )| ≤ ǫ for pre-set threshold ǫ
23
ACCEPTED MANUSCRIPT
Please notice that they still used fixed parameters, but recommended that HMS=2×number of
decision variables, HMCR=0.98, PAR=0.1, N1 = 500, N2 = 200 and Hhm = max{HMS×0.1, 10}.
PT
Ayob et al. [89] proposed an Enhanced Harmony Search Algorithm (EHSA). It uses semi-
cyclic shift patterns to generate the initial HM. They also employed the algorithm of [42] for
dynamically updating HMCR and PAR, showing the EHSA outperformed AHS and the basic
RI
HS.
Jiang and Zhang [90] proposed an Improved Harmony Search Algorithm (IHSA) using a
SC
dynamical bw
Imp
bw(Imp) = bw0 × , (36)
MaxImp
U
but the key innovation in IHSA is that the introduction of weight for each harmony in HM in a
way such that the best harmony takes a weight of 0.5 and the rest share the rest weight of 0.5.
AN
Improved harmony search algorithm was recently used to solve non-linear non-convex short-term
hydrothermal scheduling problem [91].
M
Based on the IHS of [28], recently, Medeiros and Kripka [92] proposed a Modified Harmony
Search algorithm. In addition to the modifications made in IHS, authors proposed to modify
the step of initialising the harmony memory as follows: (a) instead of randomly initialising all
D
harmonies, the HM may include at least one harmony predefined by the designer based on their
TE
knowledge; (b) if all harmonies perform the same, then reinitialise HM.
The algorithm called Niche harmony search (NHSA-DHSC), which was proposed by Tuo et
al. [93], generates three harmony memories, HMi , i = 1, 2, 3 at a time, instead of one and then
EP
improvises a new harmony, Xnew by playing the harmony memory consideration as follows:
Xnew ∈ HM1 if rnd([0, 1]) < 1/3;
C
Xnew ← Xnew ∈ HM2 else if 1/3 ≤ rnd([0, 1]) < 2/3; (37)
X
AC
Li et al. [94, 95] proposed a Heuristic Particle Swarm Optimizer (HPSO), in which the concept
of HM of the HS was used in particle swarm optimizer to avoid trapping in the local solution.
Please notice that the case of continuous decision variables was discussed in [94] while the discrete
variables in [95]. Li and Li [96] proposed a similar algorithm combining the PSO with the HS.
Li et al. [97] also used HS to improve the performance of existing algorithm, Genetic Algo-
rithm, where authors took advantage of the way of improvising a new harmony of HS.
24
ACCEPTED MANUSCRIPT
PT
mance of LDA by finding an optimal transformation.
Most recently, Alberti and Nagar [99] proposed a hybrid algorithm consisting of HS and
SA search algorithm, where the HS algorithm was used to provide an alternative approximated
RI
best response (HSBR) so that improvement can be made when calculating the maximum regret
function. It results in the following change:
SC
ǭ = max {ui (SABR(dk,i ), dk,−i ) − ui (dk )} ← max {ui (HSBR(dk,i ), dk,−i ) − ui (dk )}
i i
U
9. Theoretical analysis and criticisms about HS
AN
The harmony search algorithm is an emerging metaheuristic algorithm in optimisation [100],
where Salem and Khelfi carried out a statistical comparison among some major variants of har-
mony search algorithm: Improved Harmony Search, Global-Best Harmony Search, Self-Adaptive
M
Harmony Search and Adaptive Harmony Search. Based on the 10 benchmark functions, their
analysis showed that harmony search algorithm outperformance other metaheuristic algorithms
D
in terms of average error and Friedman test. The advantage of harmony search algorithm can
also be seen from its scalability, for example, a water network design problem of 10454 candi-
TE
date solutions was discussed by [101] and an ecological conservation problem of 2441 candidate
solutions was studied by [102].
EP
Even it has been successful in applications, theoretical analysis about HS techniques is limited.
The first attempt was made by Geem [1, 2] where they calculated the probability of finding an
optimal solution when PAR=0. Then, Geem [103] introduced a novel stochastic derivative for
C
harmony search algorithm for discrete decision variables, which was then given in a different
format by Ingram & Zhang [10]
AC
∂f 1 ni (Xi,k )
= × (1 − HMCR) + × HMCR × (1 − PAR)
∂xi Ki HMS
xi =Xi,k | {z } | {z }
random selection harmony memory consideration
1
P (38)
|Kp | l∈Kp ni (Xi,l )
+ × HMCR × PAR
| HMS {z }
pitch adjustment
which is the probability that Xi,k will be selected as Xnew rather than a “real derivative” with
respect to xi [10], and Geem and his collaborator pointed out in [104] that HS searches for a
optimal solution with a probability (38), suggesting that if a certain value frequently appears in
25
ACCEPTED MANUSCRIPT
multiple vectors, the value has higher chance to be selected than other candidate values. Das et
al. analysed the evolution of the population variance, Var(Xj ) over successive generations. Then,
PT
the expectation of the population variance can be calculated by equation (5) of [105], which
indicates the explorative power of HS. A most recent attempt was done by Saka et al. [106],
which also indicated the criticisms [107] about the HS due to limited work done mathematically
RI
about the harmony search techniques.
SC
10. Conclusions and potential directions
In this paper, we have done a through review about the Harmony Search algorithm from
U
the aspect of algorithm structure with the major developments or variants summarised in Fig.2.
It is seen that the major developments happened in 2006 and onwards even though the basic
AN
harmony search algorithm was proposed in 2000 [1]. From Fig.1, we can see that there is a
boost on the study of harmony search in terms of number of publications, but if we compare
M
Fig.1 with Fig.2, we notice the majority of these studies are about the applications, particularly
engineering applications of the HS, which actually can be seen from the several review articles
and book/book chapters as well. In the way of changing the algorithm structure, the majority
D
of these modifications have been made by parameter adaptation, modifying the HS operator
TE
and hybridising with other algorithms. Nevertheless, the aforementioned literatures have hardly
addressed the algorithm or its variants from theoretical point of view even though they have great
success in engineering applications. So, there is an urgent call for carrying out theoretical study
EP
of this algorithm and the variants, and also it is calling for other potential applications, such as
applications in business management and finance.
Regarding the future research direction, apart from the above mentioned, researchers may
C
make contributions towards improving algorithm structures. So far, researchers have proposed
AC
various algorithm structures of HS, and each variant enhanced its performance when compared
with previous ones. However, most times, these tweaks did not provide any theoretical back-
ground. Thus, the future direction of HS can be how to theoretically improve the algorithm’s
structure. As we reviewed in [7], HS possesses a human-experience-based stochastic derivative
instead of calculus-based derivative, which explains how this algorithm searches for an optimal
solution by accumulating computational intelligence which is composed of memory consideration,
pitch adjustment, and random selection. Is there any idea to theoretically find solution-searching
direction and its step size at certain improvisation based on this stochastic derivative? We think
that this can be a good future research direction of HS, and it will become another major leap if
26
ACCEPTED MANUSCRIPT
it is accomplished.
PT
References
[1] Z. W. Geem, Optimal design of water distribution networks using harmony search, Ph.D.
RI
thesis, Korea University (2000).
SC
mony search, Simulation 76 (2) (2001) 60–68.
[3] Z. W. Geem (Ed.), Music-Inspired Harmony Search Algorithm Theory and Applications,
U
Vol. 191 of Studies in Computational Intelligence, Springer Berlin Heidelberg, 2009.
AN
[4] Z. W. Geem, Optimal Design of Water Distribution Networks Using Harmony Search:
Theory and Applications of Music-Inspired Harmony Search Algorithm, LAP Lambert Aca-
demic Publishing, 2009.
M
[5] Z. W. Geem (Ed.), Harmony Search Algorithms for Structural Design Optimization, 2010th
Edition, Studies in Computational Intelligence, Springer Berlin Heidelberg, 2010.
D
[6] X. Wang, X.-Z. Gao, K. Zenger, An introduction to harmony search optimization method,
TE
Springer, 2015.
[8] G. Ingram, T. Zhang, Overview of applications and developments in the harmony search
C
[9] Z. W. Geem, State-of-the-Art in the Structure of Harmony Search Algorithm, Vol. 270 of
Recent Advances In Harmony Search Algorithm. Studies in Computational Intelligence,
Springer Berlin Heidelberg, 2010, Ch. 1, pp. 1–10.
[10] G. Ingram, T. Zhang, An introduction to the harmony search algorithm, Vol. 2 of Advances
in Process Systems Engineering, World Scientific, Singapore, 2010, Ch. 9, pp. 301–335.
[11] X. S. Yang, Nature-inspired metaheuristic algorithms, 2nd Edition, Luniver Press, Frome,
UK, 2010.
27
ACCEPTED MANUSCRIPT
[12] O. M. Alia, R. Mandava, The variants of the harmony search algorithm: an overview,
Artifical Intellgence Review 36 (1) (2011) 49–68.
PT
[13] D. Manjarres, I. Landa-Torres, S. Gil-Lopez, J. D. Ser, M. N. Bilbao, S. Salcedo-Sanz, Z. W.
Geem, A survey on application of the harmony search algorithm, Engineering Applications
RI
of Artificial Intelligence 26 (2013) 1818–1831.
[14] S. A. Patil, D. A. Patel, An overview: Improved harmony search algorithm and its applica-
SC
tions in mechanical engineering, International Journal of Engineering Science and Innovative
Technology 2 (1) (2013) 433–444.
U
[15] N. Siddique, H. Adeli, Harmony search algorithm and its variants, International Journal of
Pattern Recognition 29 (8) (2015) 1539001 (22 pages).
AN
[16] A. Assad, K. Deep, Applications of harmony search algorithm in data mining: A survey, in:
Proceedings of Fifth International Conference on Soft Computing for Problem Solving, Vol.
M
437 of Advances in Intelligent Systems and Computing, Springer Science+Business Media
Singapore, 2016, pp. 863–874.
D
[17] A. Askarzdeh, Solving electrical power system problems by harmony search: a review,
Artifical Intellgence Review 47 (2017) 217–251.
TE
[18] K. S. Lee, Z. W. Geem, A new structural optimization method based on the harmony search
algorithm, Computers and Structures 82 (2004) 781–798.
EP
125–133.
AC
[20] Y. Y. Moon, Z. W. Geem, G. T. Han, Vanishing point detection for self-driving car using
harmony search algorithm, Swarm and Evolutionary Computation 41 (2018) 111–119.
[21] K. S. Lee, Z. W. Geem, S.-H. Lee, K.-W. Bae, The harmony search heuristic algorithm for
discrete structural optimization, Engineering Optimization 37 (7) (2005) 663–684.
[22] L. Li, S.-C. Chi, X.-S. Chu, Location of non-circular slip surface using the modified harmony
search method based on correcting strategy, Rock and Soil Mechanics 27 (10) (2006) 1714–
1718 (in Chinese).
28
ACCEPTED MANUSCRIPT
[23] L. Li, S.-C. Chi, G. Lin, X.-S. Chu, Slope stability analysis using extremum principle by
pan jiazheng and harmony search method, Rock and Soil Mechanics 28 (1) (2007) 157–162
PT
(in Chinese).
[24] L. Li, S.-C. Chi, Application of new version of harmony search algorithm in slope stability
RI
analysis, Journal of Water Resources and Architectural Engineering 5 (3) (2007) 1–6 (in
Chinese).
SC
[25] Y. M. Cheng, L. Li, T. Lansivaara, S. C. Chi, Y. J. Sun, An improved harmony search
minimization algorithm using different slip surface generation methods for slope stability
analysis, Engineering optimization 40 (2) (2008) 95–115.
U
[26] L. Li, S.-C. Chi, G. Lin, Chaos harmony search method and its application to local factor of
AN
safety method for soil slopes, Chinese Journal of Rock Mechanics and Engineering 25 (Supp.
1) (2006) 2763–2769 (in Chinese).
M
[27] B. Alatas, Chaotic harmony search algorithms, Applied Mathematics and Computation 216
(2010) 2687–2699.
D
1579.
[30] C. Cobos, D. Estupinan, J. Perez, GHS+LEM: Global-best harmony search using learnable
C
29
ACCEPTED MANUSCRIPT
PT
Applications 62 (2016) 317–322.
[35] Z. Guo, S. Wang, uezhi Yue, H. Yang, Global harmony search with generalized opposition-
RI
based learning, Soft Computing 21 (8) (2018) 2129–2137.
SC
concrete using dynamic harmony search algorithm, Engineering with Computers 33 (2017)
415–430.
U
[37] V. Kumar, J. K. Chhabra, D. Kumar, Parameter adaptive harmony search algorithm
for unimodal and multimodal optimization problems, Journal of Computational Science
5 (2014) 144–155. AN
[38] V. Kumar, J. K. Chhabra, D. Kumar, Automatic data clustering using parameter adaptive
M
harmony search algorithm and its application to image segmentation, Journal of Intelligent
Systems 25 (4) (2016) 595–610.
D
[39] L. dos Santos Coelho, D. L. de Andrade Bernert, An improved harmony search algorithm
for synchronization of discrete-time chaotic systems, Chaos, Solitons and Fractals 41 (2009)
TE
2526–2532.
[40] J.-H. Lee, Y.-S. Yoon, Modified harmony search algorithm and neural networks for concrete
EP
mix proportion design, Journal of Computing in Civil Engineering 23 (1) (2009) 57–61.
[41] H. Dong, Y. Bo, M. Gao, T. Zhu, Improved harmony search for the detection with photon
C
density wave, in: L. Zhou (Ed.), International Symposium on Photoelectronic Detection and
AC
Imaging 2007: Related Technologies and Applications, Proc. of SPIE, Vol. 6625, Beijing,
China, 2008, p. 662523.
[42] O. Hasancebi, F. Erdal, M. P. Saka, Adaptive harmony search method for structure opti-
mization, Journal of Structural Engineering 136 (4) (2010) 419–431.
[43] L. Li, G.-M. Yu, S.-B. Lu, Y. Hong, X.-S. Chu, Harmony search algorithm with dynamic
adaptation for the determination of minimum factor of safety of soil slopes, in: 2009 Sec-
ond International Symposium on Computational Intelligence and Design, IEEE Computer
Society, 2009, pp. 3–5.
30
ACCEPTED MANUSCRIPT
[44] C.-M. Wang, Y.-F. Huang, Self-adaptive harmony search algorithm for optimization, Expert
Systems with Applications 37 (2010) 2826–2837.
PT
[45] N. Taherinejad, Highly reliable harmony search algorithm, in: Circuit Theory and Design,
2009. ECCTD 2009. European Conference on, IEEE, 2009, pp. 818–822.
RI
[46] Q.-K. Pan, P. N. Suganthan, M. F. Tasgetiren, J. J. Liang, A self-adaptive global best
harmony search algorithm for continuous optimization problems, Applied Mathematics and
SC
Computation 216 (2010) 830–848.
[47] E. A. Portilla-Flores, A. S.-M. et al., Enhancing the harmony search algorithm performance
U
on constrained numerical optimization, IEEE Access 5 (2017) 25759–25780.
AN
[48] Q.-K. Pan, P. N. Suganthan, M. F. Tasgetiren, A harmony search algorithm with ensemble
of parameter sets, in: 2009 IEEE Congress on Evolutionary Computation (CEC 2009),
2009, pp. 1815–1820.
M
[49] M. Jaberipour, E. Khorram, Two improved harmony search algorithms for solving engineer-
ing optimization problems, Communications in Nonlinear Science and Numerical Simulation
D
[50] A. Kattan, R. Abdullah, A dynamic self-adaptive harmony search algorithm for continuous
optimization problems, Applied Mathematics and Computation 219 (2013) 8542–8567.
EP
[52] C. Peraza, F. Valdez, M. Garcia, P. Melin, O. Castillo, A new fuzzy harmony search al-
AC
gorithm using fuzzy logic for dynamic parameter adaptation, Algorithms 9 (69) (2016) 19
pages.
[53] V. Kumar, J. K. Chhabra, D. Kumar, Variance-based harmony search algorithm for uni-
modal and multimodal optimization problems with applications to clustering, Cybernetics
and Systems: An International Journal 45 (6) (2014) 486–511.
[54] V. Kumar, D. Kumar, Gene expression data clustering using variance-based harmony search
algorithm, IETE Journal of Research (2018) 10.1080/03772063.2018.1452641.
31
ACCEPTED MANUSCRIPT
[55] Z. W. Geem, K.-B. Sim, Parameter-setting-free harmony search algorithm, Applied Math-
ematics and Computation 217 (2010) 3881–3889.
PT
[56] Z. W. Geem, Y.-H. Cho, Optimal design of water distribution networks using parameter-
setting-free harmony search for two major parameters, Journal of Water Resources Planning
RI
and Management 137 (4) (2011) 377–380.
[57] M. El-Abd, An improved global-best harmony search algorithm, Applied Mathematics and
SC
Computation 222 (2013) 94–106.
[58] Z. W. Geem, Improved harmony search from ensemble of music players, in: B. Gabrys,
U
R. J. Howlett, L. C. Jain (Eds.), Knowledge-Based Intelligent Information and Engineering
Systems, Springer Berlin Heidelberg, 2006, pp. 86–93.
AN
[59] Y.-H. Tian, Y. Bo, M. Gao, Harmony annealing algorithm for multi-dimensional function
optimization, Computer Simulation 21 (10) (2004) 79–82 (in Chinese).
M
[60] Y.-H. Tian, Y. Bo, M. Gao, Parameters choice criteria in harmony annealing for function
optimization, Computer Simulation 22 (4) (2005) 70–74.
D
[61] J.-S. Wang, X.-W. Gao, PCNN edge detection of sintering pellets image based on hybrid
TE
harmony search algorithm, in: 2009 International Conference on Artificial Intelligence and
Computational Intellige, IEEE Computer Society, 2009, pp. 535–539.
[62] X. Z. Gao, X. Wang, S. J. Ovaska, Modified harmony search methods for uni-modal and
EP
[63] R. Storn, K. Price, Differential evolution - a simple and efficient heuristic for global opti-
AC
[65] W. S. Jang, H. I. Kang, B. H. Lee, Hybrid simplex-harmony search method for optimization
problems, in: 2008 IEEE Congress on Evolutionary Computation, 2008, pp. 4158–4165.
[66] K.-C. Lo, HS-DLM hybrid searching algorithm for structural optimization, Master’s thesis,
National Central University, Taiwan (2008, in Chinese).
32
ACCEPTED MANUSCRIPT
[67] X. Wang, X. Z. Gao, S. J. Ovaska, A hybrid optimization method for fuzzy classification
systems, in: 8th International Conference on Hybrid Intelligent Systems, IEEE Computer
PT
Society, 2008, pp. 264–271.
[68] X. Wang, X.-Z. Gao, S. J. Ovaska, Fusion of clonal selection algorithm and harmony search
RI
method in optimisation of fuzzy classification systems, Int. J. Bio-Inspired Computation
1 (1–2) (2009) 80–88.
SC
[69] D. Zou, L. Gao, J. Wu, S. Li, Y. Li, A novel global harmony search algorithm for reliability
problems, Computer & Industrial Engineering 58 (2010) 307–316.
U
[70] E. Valian, S. Tavakoli, S. Mohanna, An intelligent global harmony search approach to
continuous optimization problems, Applied Mathematics and Computation 232 (2014) 670–
684. AN
[71] A. Chatterjee, S. P. Ghoshal, V. Mukherjee, Solution of combined economic and emission
M
dispatch problems of power systems by an opposition-based harmony search algorithm,
Electrical Power and Energy Systems 39 (2012) 9–20.
D
[72] W.-L. Xiang, M.-Q. An, Y.-Z. Li, R.-C. He, J.-F. Zhang, An improved global-best harmony
search algorithm for faster optimization, Expert Systems with Applications 41 (2014) 5788–
TE
5803.
[73] D. Karaboga, An idea based on honey bee swarm for numerical optimization, Tech. Rep.
EP
mony search algorithm with different mutation operators for continuous problems, Applied
AC
[75] M. Castelli, S. Silva, L. Manzoni, L. Vanneschi, Geometric selective harmony search, Infor-
mation Sceinces 279 (2014) 468–482.
[77] H.-B. Ouyang, L.-Q. Gao, S. Li, X.-Y. Kong, Q. Wang, Improved harmony search algorithm:
LHS, Applied Soft Computing 53 (2017) 133–167.
33
ACCEPTED MANUSCRIPT
PT
[79] B. Zhang, Q.-K. Pan, X.-L. Zhang, P.-Y. Duan, An effective hybrid harmony search-based
algorithm for solving multidimensional knapsack problems, Applied Soft Computing 29
RI
(2015) 288–297.
[80] M.-Y. Cheng, D. Prayogo, Y.-W. Wu, M. M. Lukito, A hybird harmony search algorithm
SC
for discrete sizing optimization of truss structure, Automation in Construction 69 (2016)
21–33.
U
[81] N. Mohamed, A. L. A. Ramli, A. A. Majid, A. R. M. Piah, Modifed harmony search,
Journal of Physics: Conference Series 890 (2017) 012097 (7 pages).
AN
[82] A. Assad, K. Deep, A two-phase harmony search algorithm for continuous optimization,
Computational Intelligence 33 (2017) 1038–1075.
M
[83] A. Assad, K. Deep, A hybrid harmony search and simulated annealing algorithm for con-
tinuous optimization, Information Sceinces 450 (2018) 246–266.
D
for satellite heat pipe design, in: Proceedings of US-Korea Conference on Science, Technol-
ogy & Entrepreneurship, 2006, pp. 1–3.
power flow problem, Electrical Power and Energy Systems 33 (2011) 745–752.
AC
[87] W. Li, W. Du, W. Tang, Y. Pan, J. Zhou, Z.-M. Lin, Parallel algorithm of multiobjective
optimization harmony search based on cloud computing, Journal of Algorithm & Compu-
tational Technology 11 (3) (2017) 301–313.
[88] Y. M. Cheng, L. Li, S. C. Chi, Performance studies on six heuristic global optimization
methods in the location of critical slip surface, Computers and Geotechnics 34 (2007) 462–
484.
[89] M. Ayob, M. hadwan, M. Z. A. Nazri, Z. Ahmad, Enhanced harmony search algorithm for
nurse rostering problems, Journal of Applied Sciences 16 (6) (2013) 846–853.
34
ACCEPTED MANUSCRIPT
[90] Z.-W. Jiang, H.-X. Zhang, The application of improved harmony search algorithm for solv-
ing shortest path problems, in: International Conference on Computational Science and
PT
Engineering (ICCSE 2015), Published by Atlantis Press, 2015, pp. 38–43.
RI
algorithm for the solution of non-linear non-convex short-term hydrothermal scheduling,
Energy 151 (2018) 226–237.
SC
[92] G. F. Medeiros, M. Kripka, Modified harmony search and its application to cost minimiza-
tion of RC columns, Advances in Computational Design 2 (1) (2017) 1–13.
U
[93] S. Tuo, J. Zhang, X. Yuan, Z. He, Y. Liu, Z. Liu, Niche harmony search algorithm for
detecting complex disease associated high-order SNP combinations, Scientific Reports 7 (1)
(2017) 11529 (18 pages). AN
[94] L. J. Li, Z. B. Huang, F. Liu, Q. H. Wu, A heuristic particle swarm optimizer for optimiza-
M
tion of pin connected structures, Computers and Structures 85 (2007) 340–349.
[95] L. J. Li, Z. B. Huang, F. Liu, A heuristic particle swarm optimization method for truss
D
[96] H.-Q. Li, L. Li, A novel hybrid particle swarm optimization algorithm combined with har-
mony search for high dimensional optimization problems, in: 2007 International Conference
on Intelligence Pervasive Computing, IEEE Computer Society, 2007, pp. 94–97.
EP
[97] L. Li, S.-C. Chi, Y.-M. Cheng, G. Lin, Improved genetic algorithm and its application to
determination of critical slip surface with arbitrary shape in soil slope, Shuili Xuebao 38 (2)
C
[99] R. Alberti, A. K. Nagar, Harmony search based algorithm for complete information equi-
librium in infinite game, in: Proceedings of the Third International Conference on Soft
Computing for Problem Solving, Vol. 258 of Advances in Intelligent Systems and Comput-
ing, Springer India, 2014, pp. 503–511.
35
ACCEPTED MANUSCRIPT
[100] M. Salem, M. F. Khelfi, The variants of harmony search algorithm: Statistical comparison,
in: Proceedings of Third World Conference on Complex Systems (WCCS), IEEE, 2015, pp.
PT
1–5.
[101] Z. W. Geem, Particle-swarm harmony search for water network design, Engineering Opti-
RI
mization 41 (4) (2009) 297–311.
[102] Z. W. Geem, Can music supplant math in environmental planning?, Leonardo 48 (2) (2015)
SC
147–150.
[103] Z. W. Geem, Novel derivative of harmony search algorithm for discrete design variables,
U
Applied Mathematics and Computation 199 (2008) 223–230.
AN
[104] Z. W. Geem, J. C. Williams, Harmony search and ecological optimization, International
Journal of Energy and Environment 1 (2) (2007) 150–154.
89–106.
TE
[107] D. Weyland, A rigorous analysis of the harmony search algorithm: How the research com-
munity can be misled by a “novel” methodology, International Journal of Applied Meta-
C
36