Hybridizing Harmony Search Algorithm with Multi-Parent Crossover to Solve Real World Optimization Problems

Hybridizing Harmony Search Algorithm with Multi-Parent Crossover to Solve Real World Optimization Problems

Iyad Abu Doush (Computer Science Department, Yarmouk University, Irbid, Jordan), Faisal Alkhateeb (Computer Science Department, Yarmouk University, Irbid, Jordan), Eslam Al Maghayreh (Computer Science Department, Yarmouk University, Irbid, Jordan), Mohammed Azmi Al-Betar (Department of Information Technology, Al-Huson University College, Al-Balqa Applied University, Irbid, Jordan) and Basima Hani F. Hasan (Computer Science Department, Yarmouk University, Irbid, Jordan)
Copyright: © 2013 |Pages: 14
DOI: 10.4018/ijamc.2013070101


Harmony search algorithm (HSA) is a recent evolutionary algorithm used to solve several optimization problems. The algorithm mimics the improvisation behaviour of a group of musicians to find a good harmony. Several variations of HSA have been proposed to enhance its performance. In this paper, a new variation of HSA that uses multi-parent crossover is proposed (HSA-MPC). In this technique three harmonies are used to generate three new harmonies that will replace the worst three solution vectors in the harmony memory (HM). The algorithm has been applied to solve a set of eight real world numerical optimization problems (1-8) introduced for IEEE-CEC2011 evolutionary algorithm competition. The experimental results of the proposed algorithm are compared with the original HSA, and two variations of HSA: global best HSA and tournament HSA. The HSA-MPC almost always shows superiority on all test problems.
Article Preview

1. Introduction

Evolutionary algorithms (EA) belong to a class of population-based algorithms that uses biologically inspired evolution mechanisms such as reproduction, mutation, crossover and selection. EAs usually perform well by approximating solutions to almost all problem types and prove their success to solve several kinds of real world optimization problems.

Among the evolutionary algorithms is the Harmony Search Algorithm (HSA) (Geem, Kim, & A, 2001), a recent meta-heuristic algorithm that mimics the musicians' improvisation process. HSA has been successfully applied to a wide variety of both discrete and continuous practical optimization problems. For example, it is used to solve many practical optimization problems such as: structural optimization, multi-buyer multi-vendor supply chain problem, timetabling problem, flow shop scheduling (Al-Betar & Khader, 2010; Geem, 2008; Ingram & Zhang, 2009; Taleizadeh, Niaki, & Barzinpour, 2011; Wang, Pan, & Tasgetiren, 2011).

Basically, the HSA starts with a set of provisional solutions stored in the Harmony Memory (HM). At each iteration, a new solution called ‘new harmony’ is generated based on three operators: (i) Memory Consideration used to select the variables of new harmony from HM solutions; (ii) Random Consideration used to diversify the new harmony, and (iii) Pitch Adjustment which is responsible for local improvement. If the new harmony is better than the worst solution in HM, then the new harmony will be included in the HM and the worst harmony is excluded. The solutions in HM will evolve iteratively in the hope of obtaining better solutions in the next evolutions. This process will be repeated until a termination condition is satisfied. The control parameters of the HSA are:

  • The Harmony Memory Consideration Rate (HMCR), used in the improving process to determine if the value of a decision variable is to be selected from the solutions stored in the Harmony Memory (HM).

  • The Harmony Memory Size (HMS) is the population size consisting of an n-dimension vector.

  • The Pitch Adjustment Rate (PAR) decides whether the decision variables are to be modified to a neighboring value.

  • The distance bandwidth (bw) determines the adjustment value in the pitch adjustment operator.

Genetic algorithm (GA) is a population based algorithm inspired from natural evolution (Goldberg, 1989). The algorithm begins with a randomly generated initial population of strings (called chromosome) representing a set of solutions. Among the Genetic operators is the crossover operator that can be applied with a specified probability to generate new chromosomes from a selected set of chromosomes. There are several crossover techniques in the literature and the performance of GA is affected by the use of crossover technique (Durand & Alliot, 1998).

The crossover operator preserves the diversity of the population by creating better chromosomes and thus avoiding a premature convergence (Goldberg, Deb, & Korb, 1989; Mitchell, 1996). In particular, the Multi-Parent Crossover has been applied successfully to genetic algorithms and has been validated its superiority over 2-parent crossover (Elsayed, Sarker, & Essam, 2011; Deb, Joshi, & Anand, 2002; Eiben, Rau´e, & Ruttkay, 1994; Eiben, Kemenade, & Kok, 1995; Ting & Buning, 2003). In this paper, we introduce the Multi-Parent Crossover (HSA-MPC) in the HSA on a randomly selected harmony from a set of best solutions trying to improve its performance. In such way, the concept of fittest survival is applied to allow the algorithm to escape from the local optima. This update on the original HSA is placed after updating the harmony memory (HM) with the new generated harmony when it is better than the worst harmony currently in the HM. We apply the HSA-MPC to a couple of real world optimization problems that have been proposed for the IEEE-CEC2011 evolutionary algorithm competition (Das & Suganthan, 2011). Then, we compare the experimental results with the original HSA and two recent HSA variants.

Complete Article List

Search this Journal:
Open Access Articles: Forthcoming
Volume 11: 4 Issues (2020): 1 Released, 3 Forthcoming
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing