3 Location of critical failure surface, convergence and other problems
3.3 Global optimization methods
3.3.4 Simple harmony search algorithm (SHM)
where c1 and c2 are responsible for introducing the stochastic weighting to components 2 and 3, respectively. These parameters are commonly chosen as 2 which will also be used in this study. r1 and r2 are two random numbers in the range [0,1], andω is the inertia weight coefficient. A larger value forω will enable the algorithm to explore the search space, while a smaller value of ωwill lead the algorithm to exploit the refinement of the results. Chatterjee and Siarry (2006) have introduced a nonlinear inertia weight variation for dynamic adaptation in the PSO. The flowchart for the PSO in searching for the critical slip surface is shown in Figure 3.10.
The termination criterion for the PSO is not stated explicitly by Kennedy and Eberhart (1995) (same for other modern global optimization methods).
Usually a fixed number of trials are carried out with the minimum value from all the trials taken as the global minimum, and this is the limitation of the original PSO or other global optimization algorithms. Based on the termina-tion proposal by Cheng et al. (2007e), if Pg remains unchanged after N2 iterations are performed, the algorithm will terminate as given by eq. (3.4):
(3.4) where Vsf, fsf mean the best solution found so far and its related objective function value. ε is the tolerance of termination. All global optimization methods require some parameters which are difficult to be established for general problems. Based on extensive internal tests, it is found that the PSO is not sensitive to the optimization parameters in most problems, which is an important consideration for recommending this method to be used for slope stability analysis.
3.3.4 Simple harmony search algorithm (SHM)
Geem et al. (2001) and Lee and Geem (2005) developed a harmony search meta-heuristic algorithm that was conceptualized using the musical process of searching for a perfect state of harmony. Musical performances seek to find pleasing harmony (a perfect state) as determined by an aesthetic standard, just as the optimization process seeks to find a global solution determined by an objective function. The harmony in music is analogous to the optimization solution vector, and the musician’s improvisations are analogous to local and global search schemes in the optimization process. The SHM uses a stochastic random search that is based on the harmony memory considering rate HR and the pitch-adjusting rate PR, and it is a population-based search method.
A harmony memory HM of size M is used to generate a new harmony, which is probably better than the optimum in the current harmony memory. The
fsf− fg
harmony memory consists of M harmonies (slip surfaces), and M harmonies are usually generated randomly. Consider HM ={hm1, hm2,…, hmM}
(3.5) where each element of hmicorresponds to that in vector V described above.
Consider the following function optimization problem, where M =6, m=3.
Suppose HR=0.9 and PR=0.1.
(3.6) Six randomly generated harmonies comprise the HM shown in Table 3.1.
The new harmony can be obtained by the harmony search algorithm with the following procedures. A random number in the range [0, 1] is generated, for
min f xð 1;x2;x3Þ= xð 1− 1Þ2+ x22+ xð 3− 2:0Þ2 s:t: 0≤ x1≤ 2 1 ≤ x2≤ 3 0 ≤ x3≤ 2
hmi= vð i1;vi2; :::;vimÞ
Figure 3.10 Flowchart for the particle swarm optimization method.
Initialize the necessary parameters: c1, c2 and w, M, N1, N2, fsf, Vsf and the counter
Randomly generate M particles (slip surfaces) Vi and Wi, fsf= 1.0e + 10, N3 = N1
Take Vsf as the optimum solution j = N3
Evaluate the particles and their factors of safety and identify the Pi and Pg
Update the positions of all the particles by eq.
(3.3) and j = j + 1; one iteration is performed
Yes No
No
Yes N3= N3+ N1 ⏐fg − fsf⏐ ≤ ε fsf= fg
Vsf= Pg
example, 0.6(<HR), and one of the values from {1.0, 1.5, 0.5, 1.8, 0.9, 1.1}
should be chosen as the value of x1 in the new harmony. Take 1.0 as the value of x1; then another random number of 0.95(>HR) is obtained. A random value in the range [1, 3] for x2is generated (say 1.2), and similarly 0.5 is chosen from the HM as the value of x3, thus a coarse new harmony hm'n=(1.0,1.2,0.5) is generated. The improved new harmony is obtained by adjusting the coarse new harmony according to the parameter PR. Suppose three random values in the range [0, 1] (say 0.7, 0.05, 0.8) are generated. Since the former value 0.7 is greater than PR, the value of hm'nremains unchanged. The second value 0.05 is lower than PR, so the value of 1.2 should be adjusted (say 1.10). The above procedures proceed until the final new harmony hmn=(1.0,1.10,0.5) is obtained. The objective function of the new harmony is determined as 3.46.
The objective function value of 3.46 is better than that of the worst harmony hm4, thereby hm4is excluded from the current HM, while hmnis included in the HM. Up to this stage, one iteration step has finished. The algorithm will continue until the termination criterion is achieved.
The iterative steps of the harmony search algorithm in the optimization of eq. (3.6) as given in Figure 3.11 are as follows:
Step 1: Initialize the algorithm parameters HR, PR, M and randomly generate M harmonies (slip surfaces) and evaluate the harmonies.
Step 2: Generate a new harmony (shown in Figure 3.11) and evaluate it.
Step 3: Update the HM. If the new harmony is better than the worst harmony in the HM, the worst harmony is replaced with the new harmony.
Take the ith value of the coarse harmony, for reference. Its lower bound and upper bounds are named as vimin and vimax, respectively. A random number r0 in the range [0, 1] is generated. If r0 > 0.5, then v'niis adjusted to vniusing eq.
(3.7); otherwise, eq. (3.8) is used to calculate the new value of vni.
(3.7) (3.8) where rand means a random number in the range [0, 1].
vni= v0ni− v0ni− vi min
× rand r0≤ 0:5 vni= v0ni+ v i max− v0ni
× rand r0 >0:5 Table 3.1 The structure of the HM
HM Control variables Objective function
x1 x2 x3
hm1 1.0 1.5 0.5 4.50
hm2 1.5 2.0 1.8 4.29
hm3 0.5 1.5 1.0 3.50
hm4 1.8 2.5 0.9 8.10
hm5 0.9 2.2 1.2 5.49
hm6 1.1 1.9 1.5 3.87
Step 4: Repeat Steps 2 and 3 until the termination criterion is achieved.
In the original harmony search by Geem et al. (2001) and Lee and Geem (2005), an explicit termination criterion is not given. Cheng et al. (2007b,f) have proposed a termination criterion for the optimization process.
Suppose M × N1iterations are first performed, and the best solution found so far is called Vsf, with the objective function value equal to fsf. Another M × N2 iteration is then performed, and the best harmony in the current HM is called Vg, with the objective function value equal to fg. The optimization process can terminate if eq. (3.9) is satisfied.
(3.9) 3.3.5 Modified harmony search algorithm (MHM)
Based on many trials by Cheng, it is found that the SHM works fast and gives good solutions for simple problems with less than 25 control variables. For more complicated problems with a large number of control variables, the original harmony search algorithm becomes inefficient and can be trapped by the local minima easily. Cheng et al. (2007f) have developed improved
fsf− fg
≤ ε
Figure 3.11 Flowchart for generating a new harmony.
i = 1
r1 < HR
r2 < PR No
No
No Stop i = i + 1 i < m
Yes
Yes Yes
Generates a random number r1 in (0, 1)
Generates a random number r2 in (0, 1) Generate ν′n,i in the range (li, ui)
Adjusts ν′n,i
ν′n,i remains unchanged ν′n,i= νm
N ∈ {1,2,...,M }
harmony search algorithms (MHM) to overcome the limitations of the SHM, which differs from the SHM in the following two aspects.
1 Instead of using a uniform probability in the original harmony search method, the better the objective function value of one harmony, the more probable will it be chosen for the generation of a new harmony.
A parameter δ (0< δ ≤1) is introduced and all the harmonies in HM are sorted by ascending order, and a probability is assigned to each of them. For instance, pr(i) means the probability to choose the ith harmony which is given as
(3.10) for i=1,2,...,M. From eq. (3.10), it can be seen that the larger the value of δ, the more probable will be the first harmony being chosen. An array ST(i),i = 0,1,2,...,M as given by eq. (3.11) should be used to implement the above procedures for choosing the harmony.
(3.11) where ST(i) represents the accumulating probability for the ith harmony. ST(0) equals 0.0 for the sake of implementation. A random number rcis generated from the range [0, ST(M)], and the kth harmony in HM is to be chosen if the following criterion is satisfied.
(3.12) 2 Instead of one new harmony, a certain number of new harmonies (Nhm) are generated during each iteration step in the modified harmony search algorithm. The utilization of the HM is intuitively more exhaustive by generating several new harmonies than by generating one new harmony during one iteration. To retain the struc-ture of the HM unchanged, the M harmonies with lower objective functions (for the minimization optimization problem) from M + Nhm harmonies are included in the HM again, and the harmonies of the higher objective function values are rejected.
The HM shown in Table 3.1 is now reordered increasingly, and the new structure is illustrated in Table 3.2. Suppose δ =0.5 and Nhm=2; the arrays pr and ST obtained are listed in columns 6 and 7, respectively, in Table 3.2. A random number in the range [0, 1] is generated, say 0.6(<HR). One of the values from {1.0, 1.5, 0.5, 1.8, 0.9, 1.1} should be chosen as the value of x1in the new harmony. Given the value of rcis equal to 0.4 for example, by using criterion (18), 0.5 is chosen to be the value of x1. Another random number of 0.95(>HR) is obtained, and a random value in the range [1, 3], 1.2, is generated. Similarly, a ran-dom number of 0.6 and rc=0.80 are also obtained. The value of x3 is chosen from
ST kð − 1Þ < rc≤ ST kð Þ; k= 1; 2; :::; M ST ið Þ=Xi
j= 1
pr jð Þ pr ið Þ= δ × 1 − δð Þi− 1
the HM as 1.8, thus a coarse new harmony hm'n=(0.5,1.2,1.8) is generated. The fine new harmony is obtained by adjusting the coarse new harmony according to the parameter PR. Suppose two random values in the range [0, 1], say 0.7, 0.05, 0.8, are generated randomly. Since the former is greater than the PR, the value of x1in hm′nremains unchanged. The latter value is lower than the PR, so the value of 1.2 should be adjusted. Suppose 1.10 is the new value of x2; the improved new harmony hm′n=(0.5,1.10,1.8) is obtained. Similarly, the second new harmony hm′n = (0.9,1.5,1.3) is also obtained. The objective functions of the two new harmonies are calculated as 1.5 and 2.75, respectively. So the six harmonies with lower objective functions hm1, hm2, hm3, hm6, hm′n, hm′′nare introduced into the HM as illustrated in Table 3.3 and one iteration is finished. The algorithm continues until the termination criterion is satisfied.
Based on extensive numerical tests by Cheng et al. (2007b), it is found that the modified harmony search algorithms shown in Figure 3.12 are more effective in overcoming the local minima as compared with the original harmony search method for complicated problems. It is also more efficient than the original HM when the number of control variables is large, but is less efficient when there are only a few control variables.