An Elite Decision Making Harmony Search Algorithm for Optimization Problem
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.
In 2001, Geem et al.  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 , Sudoku puzzle solving , structural design [4, 5], ecological conservation , and aquifer parameter identification . 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.  discussed the impacts of constant parameters on HS algorithm and presented a new strategy for tuning these parameters. Wang and Huang  used the harmony memory (HM) (set of solution vectors) to automatically adjust parameter values. Fesanghary et al.  use sequential quadratic programming technique to speed up local search and improve precision of the HS algorithm solution. Omran and Mahdavi  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  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.  used the good information captured in the current global best solution to generate new harmonies. Jaberipour and Khorram  described two HS algorithms through parameter adjusting technique. Yadav et al.  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.  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  were adopted in designing the differential evolution algorithm and obtained perfect result for global numerical optimization by Islam et al. .
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 Section 2, 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: where is an objective function, is the set of each decision variable , is the number of decision variables, and is the set of the possible range of values for each decision variable, that is and and 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 Steps 1–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 , where .
The HM with the size of HMS can be represented by a matrix as
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 vector . Each component of the new harmony vector is generated according to 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 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: where 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.
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.  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: where is the pitch adjusting rate for each generation, is the minimum pitch adjusting rate, is the maximum pitch adjusting rate, and and is the maximum and current search number, respectively. We have where
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 .
2.3. Global Best Harmony Search (GHS) Algorithm
In 2008, Omran and Mahdavi  presented a GHS algorithm by modifying the pitch adjustment rule. Unlike the basic HS algorithm, the GHS algorithm generates a new harmony vector by making use of the best harmony vector in the HM. The pitch adjustment rule is given as follows: where is a random integer between and . 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.  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: where . 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 Step 3 is modified as follows.
In this step, a new harmony vector is generated from where and are the th 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 where round means round off for . The pitch adjustment is operated as follows:
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: , , , , , and . In the processing of the algorithm, and 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 . 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: 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 with a corresponding objective function value of . The four algorithms were applied to the Rosenbrock function using bounds between −10.0 and 10.0 for the two design variables and . After the 50,000 searches, we arrived at Table 1.
4.1.2. Goldstein and Price Function I (with Four Local Minima)
Consider the following: 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: , , , and (global minimum). In this example, the bounds for two design variables ( and ) were set between −5.0 and 5.0. After 8000 searches, we arrived at Table 2.
4.1.3. Eason and Fenton’s Gear Train Inertia Function
Consider the following: This function [4, 24] consists of a minimization problem for the inertia of a gear train. The minimum of the function is located at with a corresponding objective function value of . 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 and . After 800 searches, we arrived at Table 3.
4.1.4. Wood Function
Consider the following: 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 , and the corresponding objective function value is . When applying the four algorithms STO the function, the four design variables, , were initially structured with random values bounded between −5.0 and 5.0, respectively. After 70,000 searches, we arrived at Table 4.
4.1.5. Powell Quartic Function
Consider the following: 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., ) using gradient-based algorithms. When applying the EDMHS algorithm to the function, the four design variables, , were initially structured with random values bounded between −5.0 and 5.0, respectively. After 50,000 searches, we arrived at Table 5.
It can be seen from Tables 1–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.
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  with 30 dimensions. (1) Sphere function: where global optimum and for . (2) Schwefel problem: where global optimum and for . (3) Griewank function: where global optimum and for . (4) Rastrigin function: where global optimum and for . (5) Ackley’s function: where global optimum and for . (6) Rosenbrock’s Function: where global optimum and for .
The parameters for the IHS algorithm, , , , , , and and for the GHS algorithm, , , , and .
Table 6 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.
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, , 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
4.3.2. Test Problem 2
4.3.3. Test Problem 3
4.3.4. Test Problem 4
4.3.5. Test Problem 5
4.3.6. Test Problem 6
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.
The research is supported by the Grant from National Natural Science Foundation of China no. 11171373 and the Grant from Natural Science Foundation of Zhejiang Province no. LQ12A01024.
Z. W. Geem and J. Y. Choi, “Music composition using harmony search algorithm,” in Proceedings of the Applications of Evolutionary Computing, pp. 593–600, April 2007.View at: Google Scholar
Z. Geem, “Harmony search algorithm for solving sudoku,” in Knowledge-Based Intelligent Information and Engineering Systems, pp. 371–378, Springer.View at: Google Scholar
Z. Geem and J. Williams, “Ecological optimization using harmony search,” in Proceedings of the American Conference on Applied Mathematics, pp. 24–26, 2008.View at: Google Scholar
Z. Geem, Music-Inspired Harmony Search Algorithm: Theory and Applications, vol. 191, Springer, 2009.
M. Fesanghary, M. Mahdavi, M. Minary-Jolandan, and Y. Alizadeh, “Hybridizing harmony search algorithm with sequential quadratic programming for engineering optimization problems,” Computer Methods in Applied Mechanics and Engineering, vol. 197, no. 33-40, pp. 3080–3091, 2008.View at: Publisher Site | Google Scholar | Zentralblatt MATH
S. Islam, S. Das , S. Ghosh, S. Roy, and P. Suganthan, “An adaptive differential evolution algorithm with novel mutation and crossover strategies for global numerical optimization,” IEEE Transactions on Systems, Man, and Cybernetics, vol. 42, no. 2, pp. 482–500, 2012.View at: Google Scholar
E. Laskari, K. Parsopoulos, and M. Vrahatis, “Particle swarm optimization for integer programming,” in Proceedings of the IEEE Congress on Evolutionary Computation, vol. 2, pp. 1582–1587.View at: Google Scholar
A. Colville, I. B. M. C. N. Y. S. Center, and I. B. M. C. P .S. Center, A Comparative Study on Nonlinear Programming Codes, IBM Corporation, Philadelphia Scientific Center, 1970.
P. Suganthan, N. Hansen, J. Liang et al., “Problem definitions and evaluation criteria for the cec 2005 special session on real-parameter optimization,” Tech. Rep. 2005005, Nanyang Technological University, Singapore, 2005.View at: Google Scholar
S. S. Rao and S. S. Rao, “Engineering Optimization: Theory and Practice,” John Wiley & Sons, Hoboken, NJ, USA, 2009.View at: Google Scholar
G. Rudolph, “An evolutionary algorithm for integer programming,” in Proceedings of the 3rd Conference on Parallel Problem Solving from Nature (PPSN '94), pp. 139–148, Jerusalem, Israel, October 1994.View at: Google Scholar