# Elite Opposition-Based Water Wave Optimization Algorithm for Global Optimization

Authors: Xiuli Wu; Yongquan Zhou; Yuting Lu
Journal: Mathematical Problems in Engineering
 (2017)

---

## Abstract

Water wave optimization (WWO) is a novel metaheuristic method that is based on shallow water wave theory, which has simple structure, easy realization, and good performance even with a small population. To improve the convergence speed and calculation precision even further, this paper on elite opposition-based strategy water wave optimization (EOBWWO) is proposed, and it has been applied for function optimization and structure engineering design problems. There are three major optimization strategies in the improvement: elite opposition-based (EOB) learning strategy enhances the diversity of population, local neighborhood search strategy is introduced to enhance local search in breaking operation, and improved propagation operator provides the improved algorithm with a better balance between exploration and exploitation. EOBWWO algorithm is verified by using 20 benchmark functions and two structure engineering design problems and the performance of EOBWWO is compared against those of the state-of-the-art algorithms. Experimental results show that the proposed algorithm has faster convergence speed, higher calculation precision, with the exact solution being even obtained on some benchmark functions, and a higher degree of stability than other comparative algorithms.


---

## Body

## 1. Introduction

Optimization problem is wide and varied; in many scientific and engineering computation areas, a majority of problems of people encounter can be attributed to objective optimization problem; thus, the research of optimization problem has been a very active field. In fact, the optimization method can be divided into two types of deterministic optimization and stochastic optimization; although the deterministic optimization method is relatively mature, its application condition is harsh and difficult to deal with large-scale optimization problems, which prompted the stochastic optimization method, especially development of heuristic optimization method.In recent years, the heuristic optimization algorithm, especially the metaheuristic optimization algorithm, has been concerned by many researchers. Metaheuristic optimization algorithm originates from the simulation of various types of physical, biological, social, and other phenomena in nature to solve optimization problems. As a stochastic optimization method, the metaheuristic optimization algorithm has the advantage of simple and universal, strong robustness, suitable for parallel processing and wide application range. Due to the advantages of metaheuristic, several algorithms have been proposed recently, such as particle swarm optimization (PSO) [1], genetic algorithm (GA) [2], ant colony optimization (ACO) [3], artificial bee colony (ABC) [4], cuckoo search (CS) [5], bat algorithm (BA) [6], firefly algorithm (FA) [7], flower pollination algorithm (FPA) [8], and water wave optimization (WWO) [9].Water wave optimization (WWO) is a relatively new metaheuristic initially proposed by Zheng in 2015 [9], inspired by the shallow water wave theory [10] for global optimization. WWO has the advantages of simple framework and thus easiness of implementation; even with a small population size it performs well [9]. At present, as a new metaheuristic optimization method, WWO has been successfully applied to the optimization problems such as high speed [9] and TSP [11].In order to further improve the performance of WWO, some modified approaches are introduced to strengthen its performance. Zhang et al. [12] improved on WWO; an improved version with variable population size (VC-WWO) is proposed by them, and, meanwhile, a comprehensive learning mechanism is developed in refraction operator to increase the solution diversity. Zheng and Zhang [13] developed a simplified version of WWO (Sim-WWO); in Sim-WWO, leaving out the refraction operator and in order to better balance exploration and exploitation as well as partially compensate the effect of weeding out refraction operator, a strategy of population size reducing is introduced. In order to apply WWO to combinatorial optimization problem, the traveling salesman problem (TSP), Wu et al. [11] redefined the propagation, breaking, and refraction operator based on the original WWO. In this paper, an improved water wave optimization algorithm based on elite-opposition (EOBWWO) learning strategy has been applied to function optimization and structure engineering design problems. The improvements include three parts: elite opposition-based learning (EOBL) strategy enhances the diversity of population, local neighborhood search strategy is introduced to enhance local search in breaking operation, and improved propagation operator provides the improved algorithm with a better balance between exploration and exploitation. We tested the performance of EOBWWO on 20 benchmark functions and two structure engineering design problems. The experimental results show that proposed algorithm has signification performance advantage including a fast convergence speed and a high calculation precision; in addition, the improved algorithm is able to obtain the exact solution on some test functions.This paper is organized into the following sections. Section2 introduces the original WWO algorithm briefly, the detailed description of EOBWWO algorithm is presented in Section 3, simulation experiments and results discussed are described in Section 4, and finally the conclusion is given in Section 5.


## 2. Water Wave Optimization (WWO) Algorithm

Water wave optimization (WWO) algorithm is inspired by shallow water wave theory and developed by Zheng [9], where each individual in the population is analogous to the “water wave” object with a wave height h and a wavelength λ. Without losing generality, suppose there is a maximization problem F and its objection function is f, where practical problem F can be compared with the shallow water wave model; the corresponding relation is shown as follows:(1)
P
r
a
c
t
i
c
a
l
p
r
o
b
l
e
m
F
S
h
a
l
l
o
w
w
a
t
e
r
w
a
v
e
m
o
d
e
l
T
h
e
s
e
a
r
c
h
s
p
a
c
e
o
f
F
→
a
n
a
l
o
g
o
u
s
t
o
S
e
a
b
e
d
a
r
e
a
E
a
c
h
s
o
l
u
t
i
o
n
o
f
F
→
a
n
a
l
o
g
o
u
s
t
o
A
w
a
t
e
r
w
a
v
e
o
b
j
e
c
t
i
o
n
T
h
e
f
i
t
n
e
s
s
o
f
e
a
c
h
s
o
l
u
t
i
o
n
⟶
I
t
i
s
i
n
v
e
r
s
e
l
y
p
r
o
p
o
r
t
i
o
n
a
l
t
o
v
e
r
t
i
c
a
l
d
i
s
t
a
n
c
e
t
o
t
h
e
s
e
a
b
e
d
.When the population is initialized, for each wave, the wave heighth is set to a constant hmax and wavelength λ is generally set to 0.5. The fitness value of each water wave is inversely proportional to the vertical distance to the seabed; from this we can know that from the seabed nearer the water wave fitness value is bigger, the wave height is bigger, and the wavelength is smaller, as illustrated in Figure 1. During the process of optimization problem-solving, search globally in the solution space by simulating the propagation, breaking, and refraction operation of water waves.Figure 1
Different wave shapes in deep and shallow water.


### 2.1. Propagation

In WWO, all water waves have to be propagated once at each generation. It is assumed that the original water wave isx, x′ is a new wave created by propagation operator, the dimension of the maximum value function F is D, the propagation operation is shifted, and each dimension of the original water wave x is given as (2)x′d=xd+rand⁡-1,1·λLd,where d∈D, rand-1,1 is used to control the propagation step which is a uniformly distributed random number fixed in [-1,1], and Ld is the length of the dth dimension of the search space. If the length of L(d) is longer than the length of the dth dimension of the search space, a new position will be reset randomly as(3)Ld=lbd+rand⁡∗ubd-lbd,where lbd and ubd are the lower bound and upper bound of dth dimension of the search space and rand⁡ is a random number within the range [0,1].After propagating, we evaluate fitness ofx′; if fx′>fx, x′ instead of x in the population, meanwhile the wave height of x′ is reset to hmax; otherwise, x remained, and in order to simulate energy dissipation of wave in the process of propagation, its height is decreased by one.It is a natural phenomenon that when a wave travels from deep water to shallow water, its wave height increases and its wavelength decreases, as illustrated in Figure1. In a bid to simulate this phenomenon, WWO uses the way in which the wavelength of each wave is updated after each generation as follows: (4)λ=λ∗α-fx-fmin+ε/fmax-fmin+ε,where α is a control parameter named wavelength reduction coefficient, fmax and fmin are the maximum and minimum fitness values among the current population, respectively, and ε is a very small positive constant to avoid division-by-zero.


### 2.2. Breaking

In the water wave theory, with the energy of water wave increasing constantly, crest becomes more and more steep, and the wave breaks into a series of solitary waves when its velocity of crest exceeds the wave celerity. After propagating, WWO only performs breaking on the wavex which is a new best solution x∗, which is used to improve the diversity of the population. The detailed process is as follows: first of all, we select randomly k dimensions (where k is a random number between 1 and a predefined number kmax) and perform operations on each selected dimension of original wave x to generate each dimension of solitary wave x′ as follows: (5)x′d=xd+N0,1·βLd,where N(0,1) is a Gaussian random number with mean 0 and standard deviation 1 and β is breaking coefficient. If the solitary wave with the best fitness is better than x∗, x′ is selected instead of x∗; otherwise, x∗ remained.


### 2.3. Refraction

In WWO, the refraction operation only performs on a wavex whose height decreases to zero to avoid search stagnation, which simulates the phenomenon that wave ray is not perpendicular to the isobath. By refraction, in the way that random number centered halfway between the original positions and x∗ to calculate each dimension of new wave x′, the details are as follows: (6)x′d=Nx∗d+xd2,x∗d-xd2.Followed by refraction, the wave height ofx′ is also reset to hmax; meanwhile its wavelength is updated as follows: (7)λ=λfxfx′.To sum up, the role of propagation operator is to make the high fitness wave exploit small area and the low fitness wave explore large area, the breaking operator enhances the local search among the promising best waves, and the refraction operation helps avoid search stagnation and thus reduces premature convergence. The basic framework of WWO is as Algorithm1 [9].Algorithm 1:The WWO algorithm.
Input: Define objective function fx, x=x1,x2,…,xD Output: The best solution x∗; (1)Initialization: Initialize parameters including α, β, λ, randomly initialize a population P of NP waves; (2) while stop criterion is not satified do (3)   for eachx∈P do (4)     Propagatex to a new x′ based on equation (2); (5)    iffx′<fx then (6)      iffx′<fx∗ then (7)      Breakx based on equation (5); (8)      Updatex∗ with x′; (9)     endif (10)      Replacex with x′; (11)    else (12)      Decreasex.h by one; (13)     ifx.h=0 then (14)      Refractx to a new x′ based on equation (6) and equation (7); (15)     endif (16)    endif (17)      Update the wavelength based on equation (4); (18)   endfor (19) endwhile


## 2.1. Propagation

In WWO, all water waves have to be propagated once at each generation. It is assumed that the original water wave isx, x′ is a new wave created by propagation operator, the dimension of the maximum value function F is D, the propagation operation is shifted, and each dimension of the original water wave x is given as (2)x′d=xd+rand⁡-1,1·λLd,where d∈D, rand-1,1 is used to control the propagation step which is a uniformly distributed random number fixed in [-1,1], and Ld is the length of the dth dimension of the search space. If the length of L(d) is longer than the length of the dth dimension of the search space, a new position will be reset randomly as(3)Ld=lbd+rand⁡∗ubd-lbd,where lbd and ubd are the lower bound and upper bound of dth dimension of the search space and rand⁡ is a random number within the range [0,1].After propagating, we evaluate fitness ofx′; if fx′>fx, x′ instead of x in the population, meanwhile the wave height of x′ is reset to hmax; otherwise, x remained, and in order to simulate energy dissipation of wave in the process of propagation, its height is decreased by one.It is a natural phenomenon that when a wave travels from deep water to shallow water, its wave height increases and its wavelength decreases, as illustrated in Figure1. In a bid to simulate this phenomenon, WWO uses the way in which the wavelength of each wave is updated after each generation as follows: (4)λ=λ∗α-fx-fmin+ε/fmax-fmin+ε,where α is a control parameter named wavelength reduction coefficient, fmax and fmin are the maximum and minimum fitness values among the current population, respectively, and ε is a very small positive constant to avoid division-by-zero.


## 2.2. Breaking

In the water wave theory, with the energy of water wave increasing constantly, crest becomes more and more steep, and the wave breaks into a series of solitary waves when its velocity of crest exceeds the wave celerity. After propagating, WWO only performs breaking on the wavex which is a new best solution x∗, which is used to improve the diversity of the population. The detailed process is as follows: first of all, we select randomly k dimensions (where k is a random number between 1 and a predefined number kmax) and perform operations on each selected dimension of original wave x to generate each dimension of solitary wave x′ as follows: (5)x′d=xd+N0,1·βLd,where N(0,1) is a Gaussian random number with mean 0 and standard deviation 1 and β is breaking coefficient. If the solitary wave with the best fitness is better than x∗, x′ is selected instead of x∗; otherwise, x∗ remained.


## 2.3. Refraction

In WWO, the refraction operation only performs on a wavex whose height decreases to zero to avoid search stagnation, which simulates the phenomenon that wave ray is not perpendicular to the isobath. By refraction, in the way that random number centered halfway between the original positions and x∗ to calculate each dimension of new wave x′, the details are as follows: (6)x′d=Nx∗d+xd2,x∗d-xd2.Followed by refraction, the wave height ofx′ is also reset to hmax; meanwhile its wavelength is updated as follows: (7)λ=λfxfx′.To sum up, the role of propagation operator is to make the high fitness wave exploit small area and the low fitness wave explore large area, the breaking operator enhances the local search among the promising best waves, and the refraction operation helps avoid search stagnation and thus reduces premature convergence. The basic framework of WWO is as Algorithm1 [9].Algorithm 1:The WWO algorithm.
Input: Define objective function fx, x=x1,x2,…,xD Output: The best solution x∗; (1)Initialization: Initialize parameters including α, β, λ, randomly initialize a population P of NP waves; (2) while stop criterion is not satified do (3)   for eachx∈P do (4)     Propagatex to a new x′ based on equation (2); (5)    iffx′<fx then (6)      iffx′<fx∗ then (7)      Breakx based on equation (5); (8)      Updatex∗ with x′; (9)     endif (10)      Replacex with x′; (11)    else (12)      Decreasex.h by one; (13)     ifx.h=0 then (14)      Refractx to a new x′ based on equation (6) and equation (7); (15)     endif (16)    endif (17)      Update the wavelength based on equation (4); (18)   endfor (19) endwhile


## 3. The EOBWWO Algorithm

In order to improve the performance including global searching and local searching abilities of WWO and obtain a better balance between exploration and exploitation even further, there are three optimization strategies applied to the original WWO; they are elite opposition-based learning (EOBL) strategy [42], local neighborhood searching (LNS) strategy [43], and improved propagation operator.


### 3.1. Elite Opposition-Based Learning (EOBL) Strategy

The optimization process of WWO algorithm can be regarded as the transformation continually of its search space. When the algorithm falls into local optimum, the search space is difficult to contain the global optimal solution. Thus it is very significant to guide the current solution space approximation to the space of global optimal solution. In a bid to enhance the global search ability (i.e., exploration ability) of WWO, the elite opposition-based learning (EOBL) strategy is introduced.Before introducing the EOBL, we should firstly explain opposition-based learning (OBL) [44]. The main idea of OBL is that it generates the opposition solution of current solution, evaluates current solution and opposition solution at the same time, and chooses the better one to enter the next iteration. We assume x=x1,x2,…,xD is a point in current population (D is the dimension of search space; xj∈[aj,bj],j=1,2,…,D), and its opposition point x~=x~1,x~2,…,x~D is defined as follows: (8)x~j=aj+bj-xj.Since the opposition solution of OBL generated may not be more favorable than the current search space to search the global optimal solution, thus in this paper, we can use elite opposition-based learning (EOBL) strategy. EOBL is a new technique in the field of intelligence computation and its model can be described as follows: Suppose the elite individual (optimal individual in population) in the current population is Xe=xe,1,xe,2,…,xe,D, for an individual Xi=xi,1,xi,2,…,xi,D, the elite opposition solution X~i=x~i,1,x~i,2,…,x~i,D of Xi is defined as follows: (9)x~i,j=η∗daj+dbj-xe,j,where i=1,2,…,NP, NP is the population size, j=1,2,…,D,η∈U0,1 and η is a generalized coefficient, and daj,dbj is the dynamic boundary of the jth dimensional search space and can be obtained by the following formula: (10)daj=minxi,j,dbj=maxxi,j.The fixed boundary is not conducive to preserve the search experience; thus we use dynamic boundary of the search space to replace the fixed boundary to preserve the search experience in order to make the opposition solution located in the search space which is narrowing. Moreover, if the operator of dynamic boundary makes x~i,j jump out of [daj,dbj], the following method can be used to reset x~i,j: (11)x~i,j=randdaj,dbj.The EOBL generates the opposition population according to the elite individual and evaluates the current population and the elite population at the same time; in addition, it makes full use of the characteristics of the elite individuals to contain more useful search information than the ordinary individuals which improve the diversity of the population to certain extent. EOBL can enhance the ability of global exploration of WWO.


### 3.2. Local Neighborhood Search (LNS)

WWO only performs the breaking operator on the new best solution to enhance local search around the best solution. In a bid to further enhance the local search ability to improve the convergence speed, the local neighborhood search [43] (LNS) model is added before the breaking operation.The main idea of LNS is using the best solution found so far in a small neighborhood of the current solution rather than the entire population to update the current solution. The experience of an individual’s neighborhood is considered when updating the individual’s location, so that the graph of interconnections of them is called neighborhood structure. Suppose there is a WWO populationX=X1,X2,…,XNP,Xii∈1,NP is a vector in the current population, and its dimension is D. The indices of each vector are random in a bid to maintain the diversity of each neighborhood. Next, we can define the neighborhood of radius r (r is a nonzero integer and 2r+1<NP), where r=10, for each vector Xi; that is to say, neighborhood of Xi consists of Xi-k,…,Xi,…,Xi+k. For analysis, we suppose that the vectors can be arranged into a ring topology according to their indices. Figure 2 illustrates the concept of local neighborhood model. In addition, the neighborhood topology is static and about the definition of the set of vectors all the time. LNS model is described in(12)Li=Xi+m∗Xn_opt-Xi+n∗Xp-Xq,where Xn_opt is the best vector in the neighborhood of Xi and p,q∈[i-r,i+r](p≠q≠i) and m and n are the scaling factors, where m,n∈rand(). In the improved version of WWO, the new best solution is updated according to (12), and the breaking operation is performed by the updated solution as (13)x′d=Lid+N0,1·βLd,where Li is the best solution updated by LNS.Figure 2
Neighborhood ring topology of radius 2.


### 3.3. Improvement of WWO

In original WWO, all water waves have to be propagated once at each generation, and the search behavior of each water wave is affected by the other waves in the group. Similar to PSO [1, 45, 46], an inertial weight is embedded into (2) in order to learn the past experience. Moreover, as shown in (2) and (4), propagation operator can make high fitness wave search small region and low fitness wave explore large region in global search process. In (2), the search step size is a random number fixed in the range [-1,1], which is not very reasonable because search step size prefers fairly large step at the beginning in order to strengthen the probability of reaching the optimal regions, and, with the iteration going on, search step size should be decreased gradually to enhance the local exploitation ability. The random step size in the propagation process is improved by referencing to the method of [47]; the improved propagation operator is as follows:(14)w=wmax-wmax-wminiteritermax,ρ=11+ea∗iter-brand⁡-1,1,x′d=w∗xd+ρ∗λLd,where wmax and wmin are, respectively, the maximum and minimum inertial weight, where w∈[0.4,1.5], iter is the current iteration number and itermax is the maximum iteration number, and a and b are two selected constants, where a=0.02,b=25. Improved propagation operator not only makes use of the past experience, but also makes the search step size decrease gradually with the iteration going on. The whole pseudocode of EOBWWO can be summarized as Algorithm 2.Algorithm 2:The framework of EOBWWO algorithm.
Input: Define objective function f(x), x=(x1,x2,…,xD) Output: The best solution x∗; (1)Initialization: Initialize related parameters including α, β, λ, η, wmax, wmin, a, b, m and n, initialize dynamic boundary of the search space, randomly initialize a populationP of NP waves (2) while stop criterion is not satisfied do (3)Update the current population with EOBL accordding to equation (9), equation (10) and equation (11); (4)   for eachx∈P do (5)Propagatexto a newx′based on equation (14); (6)    iffx′<fx then (7)     iffx′<fx∗ then (8)Breakxbased on equation (12) and equation (13); (9)       Updatex∗ with x′; (10)     Endif (11)     Replacex with x′; (12)    else (13)     Decreasex.h by one; (14)     ifx.h=0 then (15)      Refractx to a new x′ based on equation (6) and equation (7); (16)     endif (17)    endif (18)      Update the wavelength based on equation (4); (19)   endfor (20) endwhile


## 3.1. Elite Opposition-Based Learning (EOBL) Strategy

The optimization process of WWO algorithm can be regarded as the transformation continually of its search space. When the algorithm falls into local optimum, the search space is difficult to contain the global optimal solution. Thus it is very significant to guide the current solution space approximation to the space of global optimal solution. In a bid to enhance the global search ability (i.e., exploration ability) of WWO, the elite opposition-based learning (EOBL) strategy is introduced.Before introducing the EOBL, we should firstly explain opposition-based learning (OBL) [44]. The main idea of OBL is that it generates the opposition solution of current solution, evaluates current solution and opposition solution at the same time, and chooses the better one to enter the next iteration. We assume x=x1,x2,…,xD is a point in current population (D is the dimension of search space; xj∈[aj,bj],j=1,2,…,D), and its opposition point x~=x~1,x~2,…,x~D is defined as follows: (8)x~j=aj+bj-xj.Since the opposition solution of OBL generated may not be more favorable than the current search space to search the global optimal solution, thus in this paper, we can use elite opposition-based learning (EOBL) strategy. EOBL is a new technique in the field of intelligence computation and its model can be described as follows: Suppose the elite individual (optimal individual in population) in the current population is Xe=xe,1,xe,2,…,xe,D, for an individual Xi=xi,1,xi,2,…,xi,D, the elite opposition solution X~i=x~i,1,x~i,2,…,x~i,D of Xi is defined as follows: (9)x~i,j=η∗daj+dbj-xe,j,where i=1,2,…,NP, NP is the population size, j=1,2,…,D,η∈U0,1 and η is a generalized coefficient, and daj,dbj is the dynamic boundary of the jth dimensional search space and can be obtained by the following formula: (10)daj=minxi,j,dbj=maxxi,j.The fixed boundary is not conducive to preserve the search experience; thus we use dynamic boundary of the search space to replace the fixed boundary to preserve the search experience in order to make the opposition solution located in the search space which is narrowing. Moreover, if the operator of dynamic boundary makes x~i,j jump out of [daj,dbj], the following method can be used to reset x~i,j: (11)x~i,j=randdaj,dbj.The EOBL generates the opposition population according to the elite individual and evaluates the current population and the elite population at the same time; in addition, it makes full use of the characteristics of the elite individuals to contain more useful search information than the ordinary individuals which improve the diversity of the population to certain extent. EOBL can enhance the ability of global exploration of WWO.


## 3.2. Local Neighborhood Search (LNS)

WWO only performs the breaking operator on the new best solution to enhance local search around the best solution. In a bid to further enhance the local search ability to improve the convergence speed, the local neighborhood search [43] (LNS) model is added before the breaking operation.The main idea of LNS is using the best solution found so far in a small neighborhood of the current solution rather than the entire population to update the current solution. The experience of an individual’s neighborhood is considered when updating the individual’s location, so that the graph of interconnections of them is called neighborhood structure. Suppose there is a WWO populationX=X1,X2,…,XNP,Xii∈1,NP is a vector in the current population, and its dimension is D. The indices of each vector are random in a bid to maintain the diversity of each neighborhood. Next, we can define the neighborhood of radius r (r is a nonzero integer and 2r+1<NP), where r=10, for each vector Xi; that is to say, neighborhood of Xi consists of Xi-k,…,Xi,…,Xi+k. For analysis, we suppose that the vectors can be arranged into a ring topology according to their indices. Figure 2 illustrates the concept of local neighborhood model. In addition, the neighborhood topology is static and about the definition of the set of vectors all the time. LNS model is described in(12)Li=Xi+m∗Xn_opt-Xi+n∗Xp-Xq,where Xn_opt is the best vector in the neighborhood of Xi and p,q∈[i-r,i+r](p≠q≠i) and m and n are the scaling factors, where m,n∈rand(). In the improved version of WWO, the new best solution is updated according to (12), and the breaking operation is performed by the updated solution as (13)x′d=Lid+N0,1·βLd,where Li is the best solution updated by LNS.Figure 2
Neighborhood ring topology of radius 2.


## 3.3. Improvement of WWO

In original WWO, all water waves have to be propagated once at each generation, and the search behavior of each water wave is affected by the other waves in the group. Similar to PSO [1, 45, 46], an inertial weight is embedded into (2) in order to learn the past experience. Moreover, as shown in (2) and (4), propagation operator can make high fitness wave search small region and low fitness wave explore large region in global search process. In (2), the search step size is a random number fixed in the range [-1,1], which is not very reasonable because search step size prefers fairly large step at the beginning in order to strengthen the probability of reaching the optimal regions, and, with the iteration going on, search step size should be decreased gradually to enhance the local exploitation ability. The random step size in the propagation process is improved by referencing to the method of [47]; the improved propagation operator is as follows:(14)w=wmax-wmax-wminiteritermax,ρ=11+ea∗iter-brand⁡-1,1,x′d=w∗xd+ρ∗λLd,where wmax and wmin are, respectively, the maximum and minimum inertial weight, where w∈[0.4,1.5], iter is the current iteration number and itermax is the maximum iteration number, and a and b are two selected constants, where a=0.02,b=25. Improved propagation operator not only makes use of the past experience, but also makes the search step size decrease gradually with the iteration going on. The whole pseudocode of EOBWWO can be summarized as Algorithm 2.Algorithm 2:The framework of EOBWWO algorithm.
Input: Define objective function f(x), x=(x1,x2,…,xD) Output: The best solution x∗; (1)Initialization: Initialize related parameters including α, β, λ, η, wmax, wmin, a, b, m and n, initialize dynamic boundary of the search space, randomly initialize a populationP of NP waves (2) while stop criterion is not satisfied do (3)Update the current population with EOBL accordding to equation (9), equation (10) and equation (11); (4)   for eachx∈P do (5)Propagatexto a newx′based on equation (14); (6)    iffx′<fx then (7)     iffx′<fx∗ then (8)Breakxbased on equation (12) and equation (13); (9)       Updatex∗ with x′; (10)     Endif (11)     Replacex with x′; (12)    else (13)     Decreasex.h by one; (14)     ifx.h=0 then (15)      Refractx to a new x′ based on equation (6) and equation (7); (16)     endif (17)    endif (18)      Update the wavelength based on equation (4); (19)   endfor (20) endwhile


## 4. Simulation Experiments and Results Analysis

In order to identify the effectiveness and efficiency of EOBWWO, 20 standard test functions are applied in this section. The detailed parameters about 20 benchmark functions [48, 49] including functional form, scope, optimal solution, and the iterations are illustrated in Table 1. The 20 benchmark functions can be divided into three groups, unimodal functions (f01~f06) as group 1, multimodal functions (f07~f14) as group 2, and low-dimension functions (f15~f20) as group 3. In the unimodal functions, the global optimum of f06 is located in a smooth, long, and narrow parabolic valley; when the traditional gradient optimization method is searched to the valley edge, it is difficult to carry out global optimization. However, it is very slow to change the value in the long and narrow area, which can be used to evaluate the performance of the algorithm. In the multimodal functions, f09 has many local minima, it is a typical nonlinear multimodal function, which has a wide range of search space, and it is generally considered to be a complex multimodal problem which is difficult to deal with. In general, unimodal functions are suitable for evaluating the exploitation; however, multimodal functions tend to be a good choice for evaluating exploration [50].Table 1
Benchmark test functions.
Name Functions Scope Best Iterations Sphere f 01 x =  ∑ i = 1 n x i 2 [ - 100,100 ] 0 1500 Schwefel’s problem 1.2 f 02 x =  ∑ i = 1 n ∑ j = 1 i x j 2 [ - 100,100 ] 0 1200 Schwefel’s problem 2.21 f 03 x = m a x x i ,   1 ≤ i ≤ n [ - 100,100 ] 0 6000 Schwefel’s problem 2.22 f 04 x =  ∑ i = 1 n x i + ∏ i = 1 n x i [ - 100,100 ] 0 5000 Step f 05 x =  ∑ i = 1 n x i + 0.5 2 [ - 100,100 ] 0 1000 Rosenbrock f 06 x =  ∑ i = 1 n - 1 x i - 1 2 + 100 x i 2 - x i + 1 2 [ - 100,100 ] 0 1000 Rastrigin f 07 x =  ∑ i = 1 n x i 2 - 10 cos ⁡ 2 π x i + 10 [ - 5.12,5.12 ] 0 1000 Ackley f 08 x = - 20 exp ⁡ - 0.2 1 n  ∑ i = 1 n x i 2 - exp ⁡ 1 n  ∑ i = 1 n cos ⁡ 2 π x i + 20 + e [ - 100,100 ] 0 1000 Griewank f 09 x = 1 4000  ∑ i = 1 n x i 2  - ∏ i = 1 n cos ⁡ x i i + 1 [ - 100,100 ] 0 1500 Zakharov f 10 x =  ∑ i = 1 n x i 2 + 1 2  ∑ i = 1 n i x i 2 + 1 2  ∑ i = 1 n i x i 4 [ - 100,100 ] 0 1500 Modified Drop Wave f 11 x = - 1 + cos ⁡ ∑ i = 1 n x i 2 1 / 2 ∑ i = 1 n x i 2 + 2 [ - 5.12,5.12 ] - 1 1500 Weierstrass f 12 x =  ∑ i = 1 n ∑ k = 0 K a k cos ⁡ 2 π b k x i + 0.5 - n  ∑ k = 0 K a k cos ⁡ 2 π b k ⋅ 0.5, a=0.5,b=3,K=20 [ - 0.5,0.5 ] 0 1000 Alpine f 13 x =  ∑ i = 1 n x i sin ⁡ x i + 0.1 x i [ - 10,10 ] 0 5000 Salomon f 14 x = - cos ⁡ 2 π ∑ i = 1 D x i 2 + 0.1 ∑ i = 1 D x i 2 + 1 [ - 100,100 ] 0 1000 Powell (D=24) f 15 x =  ∑ i = 1 n / 4 x 4 i - 3 + 10 x 4 i - 2 2 + 5 x 4 i - 1 - x 4 i 2 + x 4 i - 2 + 10 x 4 i - 1 4 + 10 x 4 i - 3 - x 4 i 4 [ - 4,5 ] 0 1000 Eason (D=2) f 16 x 1 , x 2 = - cos ⁡ x 1 cos ⁡ x 2 ∗ exp ⁡ - x 1 - π 2 - x 2 - π 2 [ - 100,100 ] - 1 200 Shekel function 2m=5 (D=4) f 17 =  - ∑ i = 1 m x - a i x - a i T + c i - 1 ,  m = 5 [ 0,10 ] - 10.1532 100 Shekelm=7 (D=4) f 18 =  - ∑ i = 1 m x - a i x - a i T + c i - 1 ,  m = 7 [ 0,10 ] - 10.4029 100 Shekelm=10 (D=4) f 19 =  - ∑ i = 1 m x - a i x - a i T + c i - 1 ,  m = 10 [ 0,10 ] - 10.5364 100 Goldstein and Price (D=2) f 20 = 1 + x 1 + x 2 + 1 2 19 - 14 x 1 + 3 x 1 2 - 14 x 2 + 6 x 1 x 2 + 3 x 2 2 f 20 = × 30 + 2 x 1 - 3 x 2 2 18 - 32 x 1 + 12 x 1 2 + 48 x 2 - 36 x 1 x 2 + 27 x 2 2 [ 2,2 ] 3 1000The rest of this section is organized as follows: experimental setting is given in Section4.1, experiment results of 30 dimensions and discussion are represented in Section 4.2, high-dimension test results including 100 dimensions, 1000 dimensions, and 10000 dimensions for some unimodal functions and multimodal functions are described in Section 4.3, and two design problems are shown in Section 4.4.


### 4.1. Experimental Setting and Comparative Methods

The empirical analysis was conducted on a computer of Intel(R) with 3.5 GHz Xeon CPU and 8 GB of memory, the operating system is Windows 7, and the programs are written in Matlab 2012a.The scope and dimension of variables have significant influence on the complexity of optimization. The scope of the benchmark function and the dimension of the low-dimension functions are illustrated in Table1. The dimensions of unimodal functions and multimodal functions are, respectively, 30, 100, 1000, and 10000.The performance of proposed EOBWWO algorithm is evaluated by comparing it to five state-of-the-art metaheuristic algorithms: ABC [4], CS [5], FPA [6], BA [8], and WWO [9]; the parameters settings of aforementioned algorithms are given in Table 2.Table 2
The parameters setting for six algorithms.
Algorithm Parameter values ABC [4] Limit = 50, the population size is 50  CS [5] β = 1.5, Pa=0.25, the population size is 50  FPA [6] ρ = 0.8, the population size is 50  BA [8] A = 0.25, r=0.5, f∈[0,2], the population size is 50  WWO [9] λ = 0.5, hmax=12, α=1.0026, β∈[0.01,0.25], kmax=min(12,D/2), the population size is 50  EOBWWO λ = 0.5, hmax=12, α=1.0026, β∈[0.01,0.25], kmax=min(12,D/2), η∈U(0,1), w∈[0.4,1.5], a=0.02,b=20, r=10, m,n∈rand⁡, the population size is 30


### 4.2. Experiment Results and Discussion

In Tables3-4, the dimension is 30, whereas the standard benchmark functions are listed in Table 1. In this paper, all function optimization experimental results of the algorithms are repeated 30 times to ensure the credibility in statistics. There are four evaluation indicators: max, min, median, and Std represent the worst fitness value, optimal fitness value, median of the test results, and standard deviation, respectively. The last column of Tables 3–5 gives the rank of the algorithms in terms of median values among the six algorithms. The minimum value, best median value, and the minimum standard deviation values among the six algorithms of each benchmark function are shown in bold.Table 3
Experiment results of unimodal functions for different algorithms (D=30).
Number Algorithm Results Max Min Median Std Rank f 01   ( D = 30 ) ABC 4.44633 E - 12 3.45813 E - 14 1.92 E - 13 9.22745 E - 13 2 CS 1.36762 E - 5 1.02709 E - 6 4.95555 E - 6 2.28819 E - 6 4 FPA 783.5925333 76.04241806 303.9240824 188.3527023 6 BA 1.568634 E - 3 1.029165 E - 3 1.282484 E - 3 1.31272 E - 4 5 WWO 5.55407 E - 10 1.07596 E - 10 2.69635 - 10 1.15369 E - 10 3 EOBWWO 0 0 0 0 1  f 02   ( D = 30 ) ABC 3.44699 E - 11 1.17159 E - 13 1.51639 E - 12 6.29287 E - 12 2 CS 1.28405 E - 4 0.53823 E - 5 6.08593 E - 5 2.96568 E - 5 3 FPA 1.09372 E + 4 1.677 E + 3 3.61889 E + 3 1.89233 E + 3 6 BA 0.037048461 0.01382428 0.020204478 0.004767846 5 WWO 0.511649493 0.000169285 0.013059176 0.200939335 4 EOBWWO 0 0 0 0 1  f 03   ( D = 30 ) ABC 0.829003374 0.3204228717 0.555760641 0.120472774 5 CS 0.088057162 0.000337518 0.007576085 0.022275036 3 FPA 15.1544391 4.697724887 8.12103893 2.186818227 6 BA 0.015412963 0.010993868 0.013059351 0.001157761 4 WWO 0.331726179 6.95792 E - 9 1.53742 E - 6 0.062504822 2 EOBWWO 0 0 0 0 1  f 04   ( D = 30 ) ABC 6.47604 E - 24 6.96705 E - 28 2.21019 E - 26 1.20736 E - 24 2 CS 74.1784179 0.006545946 3.896226938 19.85723139 4 FPA 2.64849 E + 13 11.2387456 3401.123936 4.8539 E + 12 6 BA 1.089641426 0.116013073 0.14358676 0.180342929 3 WWO 723.5000563 349.8831021 530.7411865 92.94725208 5 EOBWWO 0 0 0 0 1  f 05 (D=30) ABC 0 0 0 0 1 CS 0 0 0 0 1 FPA 1464 194 692.5 300.9258052 6 BA 1 0 0 0.449776445 4 WWO 5 0 0 1 5 EOBWWO 0 0 0 0 1  f 06 (D=30) ABC 27.62119073 7.911323481 20.45437209 4.364699718 1 CS 26.10849123 23.69813132 25.20307209 0.695990009 2 FPA 83.14751217 43.48073835 61.12668297 11.14304633 6 BA 25.51159629 24.8746208 27.74338401 0.985458463 4 WWO 29.32841665 24.00396307 27.69619184 1.153955218 3 EOBWWO 28.9707934 28.2967605 28.8377944 0.162741102 5Table 4
Experiment results of multimodal functions for different algorithms (D=30).
Number Algorithm Results Max Min Median Std Rank f 07 (D=30) ABC 4.543430376 0.872091069 2.32396378 0.77610662 2 CS 100.3117085 69.593399457 83.78234227 9.01595302 5 FPA 155.7273116 103.5726964 121.9253488 12.6731423 6 BA 44.0464352 9.204919504 26.66189504 8.91738265 3 WWO 119.6471701 47.99518568 81.08466559 20.4603731 4 EOBWWO 0 0 0 0 1  f 08 (D=30) ABC 0.200343498 0.077326914 0.142626325 0.03146059 2 CS 2.644000719 1.141797447 2.096514981 0.38634392 4 FPA 7.743838028 3.174296934 4.343237221 0.91961437 6 BA 2.121661491 0.026334395 1.250303713 0.79120840 3 WWO 8.74527255 2.713986881 3.436036696 1.37954679 5 EOBWWO 8.88178 E - 16 8.88178 E - 16 8.88178 E - 16 0 1  f 09 (D=30) ABC 0.009995413 1.40219 E - 6 1.03254 E - 5 0.00251343 2 CS 0.21732293 0.046844017 0.097110776 0.04071839 5 FPA 7.743838028 3.174296934 4.343237221 0.91961437 6 BA 8.8209 E - 5 4.84725 E - 5 6.96553 E - 5 1.0629 E - 5 3 WWO 0.027745165 0.000101686 0.004216065 0.008990433 4 EOBWWO 0 0 0 0 1  f 10 (D=30) ABC 1.82152 E - 5 3.55257 E - 7 4.91547 E - 6 3.92981 E - 6 2 CS 23.75901871 20169151391 8.018029438 6.27034500 4 FPA 2.78 E + 8 1.07 E + 7 7.32 E + 7 7.20 E + 7 6 BA 0.517543758 0.102778936 0.249802147 0.10685336 3 WWO 3.57 E + 5 1148.931415 28435.22582 70797.7997 5 EOBWWO 3.2059 E - 249 0 4.3182 E - 304 0 1  f 11 (D=30) ABC - 0.025319222 - 0.025319222 - 0.025319992 8.93607 E - 15 6 CS - 0.100574784 - 0.100574784 - 0.100574784 4.53639 E - 14 3 FPA - 0.100574784 - 0.100574784 - 0.100574784 8.35309 E - 12 5 BA - 0.100574784 - 0.100574784 - 0.100574784 1.18291 E - 14 3 WWO - 0.100574784 - 0.100574784 - 0.100574784 1.93291 E - 15 2 EOBWWO - 1 - 1 - 1 0 1  f 12 (D=30) ABC 0.02864526 0.007552463 0.012569017 0.00450223 2 CS 32.10594109 16.77196848 26.78636751 3.59576559 5 FPA 19.30313173 12.51112225 15.67535455 1.74928731 4 BA 42.35819689 25.57284909 31.84105217 3.87397750 6 WWO 19.88306619 9.975451796 14.2300995 2.59319376 3 EOBWWO 0 0 0 0 1  f 13 (D=30) ABC 8.85875 E - 8 6.75126 E - 15 6.88565 E - 9 2.1219 E - 8 2 CS 3.531716667 1.26783277 2.278563536 0.625010328 5 FPA 7.466256332 0.073108474 2.782338916 1.589472384 6 BA 0.018080917 0.012650753 0.014787578 0.001091235 3 WWO 1.942396367 0.026078564 0.13612587 0.64846015 4 EOBWWO 0 0 0 0 1  f 14 (D=30) ABC 2.600171726 1.999873348 2.399879727 0.184266606 5 CS 1.633485698 0.922951921 1.400436259 0.17500411 4 FPA 5.30000938 2.701931127 3.871080144 0.61020963 6 BA 0.499873346 0.199873346 0.299873346 0.06214554 2 WWO 1.211882567 0.599906059 0.808361684 0.174395376 3 EOBWWO 0.099873348 0 0.099873346 0.018234295 1Table 5
Experiment results of low-dimension functions for different algorithms.
Number Algorithm Results Max Min Median Std Rank f 15 (D=24) ABC 0.455803159 0.088628487 0.244130317 0.092018378 5 CS 0.006558415 0.002334688 0.003589486 0.001062387 2 FPA 3.516583313 0.439394393 1.119151909 0.756461677 4 BA 0.085283799 0.017280708 0.035769424 0.019917509 3 WWO 1.582142729 0.0749512 0.437894406 0.30106576 6 EOBWWO 3.44639 E - 63 3.5938 E - 262 6.1033 E - 207 6.29221 E - 64 1  f 16 (D=2) ABC - 1 - 1 - 1 0 1 CS - 1 - 1 - 1 1.47866 E - 13 1 FPA - 0.999991624 - 1 - 0.999999921 1.56202 E - 6 6 BA - 0.999999927 - 1 - 0.999999978 2.08821 E - 8 5 WWO - 1 - 1 - 1 2.06163 E - 17 1 EOBWWO - 1 - 1 - 1 0 1  f 17 (D=4) ABC - 10.1531456 - 10.15319968 - 10.15319968 1.0346 E - 5 1 CS - 10.15319968 - 10.15319968 - 10.15319968 5.03511 E - 15 1 FPA - 10.15315656 - 10.15319968 - 10.15319952 7.82319 E - 6 5 BA - 5.055111551 - 5.055182873 - 50.551596 1.85604 E - 5 6 WWO - 5.10077214 - 10.15319968 - 10.15319968 1.281841952 1 EOBWWO - 10.14720526 - 10.15319968 - 10.15319968 0.001093567 1  f 18 (D=4) ABC - 10.40251326 - 10.40294057 - 10.40294057 7.79447 E - 5 4 CS - 10.40294057 - 10.40294057 - 10.40294057 2.21007 E - 14 3 FPA - 10.40202483 - 10.40294054 - 10.40293239 1.60136 E - 5 1 BA - 5.087559948 - 5.08766627 - 5.087628993 2.54514 E - 5 6 WWO - 10.40294057 - 10.40294057 - 10.40294057 2.00647 E - 15 2 EOBWWO - 10.40130898 - 10.40294057 - 10.40294057 0.000360071 5  f 19 (D=4) ABC - 5.174214497 - 10.53640982 - 10.53640982 0.978996012 2 CS - 10.53640982 - 10.53640982 - 10.53640982 1.33033 E - 12 2 FPA - 10.53388561 - 10.53640939 - 10.5363024 0.000210477 1 BA - 5.128396631 - 10.53632794 - 5.128439601 1.37202234 6 WWO - 5.175646742 - 10.53640982 - 10.53640982 0.978736954 2 EOBWWO - 10.52292613 - 10.53640982 - 10.53640982 0.002461764 2  f 20 (D=2) ABC 3.00425387 3 3 0.00077653 1 CS 3 3 3 1.91987 E - 15 1 FPA 3 3 3 2.62468 E - 15 1 BA 3.000011451 3.00000068 3.000001582 2.81115 E - 6 6 WWO 3 3 3 4.77801 E - 15 1 EOBWWO 3 3 3 4.14957 E - 15 1Moreover, nonparametric Wilcoxon rank tests were conducted on the results of EOBWWO and other comparative algorithms on the 20 benchmark functions, and the test results are shown in Table6, where the value of h is 1 indicating that the performance and comparative method are statistically different with 95% confidence, and 0 implies that there is no statistical difference [9].Table 6
Statistical comparison between EOBWWO and the other five algorithms.
ABC CS FPA BA WWO p   v a l u e h p   v a l u e h p   v a l u e h p   v a l u e h p   v a l u e h f 01 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 02 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 03 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 04 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 05 NaN 0 NaN 0 1.2108 E - 12 1 0.0027 1 1.6428 E - 9 1 f 06 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 6.2828 E - 6 1 2.0338 E - 9 1 f 07 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 08 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 09 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 10 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 11 1.2059 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.197 E - 12 1 5.1032 E - 13 1 f 12 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 13 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 14 2.5190 E - 11 1 2.5190 E - 11 1 2.5190 E - 11 1 2.5190 E - 11 1 2.5190 E - 11 1 f 15 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 f 16 NaN 0 1.20088 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 0.3337 0 f 17 3.1245 E - 4 1 1.0446 E - 7 1 1.7216 E - 6 1 2.9953 E - 11 1 1.6737 E - 4 1 f 18 0.0851 0 1.3993 E - 5 1 1.587 E - 7 1 2.9916 E - 11 1 1.187 E - 7 1 f 19 0.159 0 0.0371 1 5.4608 E - 10 1 3.6058 E - 11 1 2.1012 E - 6 1 f 20 0.5130 0 2.8286 E - 9 1 0.1657 0 2.9766 E - 11 1 0.5097 0In Table3, on the unimodal group, EOBWWO obtained the exact solution except function f06 and obtained the minimum standard deviation. Although ranking fifth on function f06, standard deviation of EOBWWO is less than the other algorithms. All these mean that EOBWWO has a higher calculation precision and better stability in the optimization of the unimodal functions.On group 2 of 8 multimodal functions, seeing from Table4, EOBWWO can find the exact solution for f07, f09, f10, f11, f12, and f13, and the standard deviations of the five functions of EOBWWO are zeros. In addition, EOBWWO obtains the best median value on all functions. For functions f08 and f14, the worst fitness value, best fitness value, median value, and standard deviations of EOBWWO are less than the other five algorithms. The multimodal functions are more complex than unimodal functions due to the local minima; thus the above analysis indicates that EOBWWO has a strong global search ability and higher calculation precision.On group 3 of 6 low-dimension functions, results are illustrated in Table5. For f15, EOBWWO obtains the minimum values including the worst fitness, best value fitness, median value, and standard deviations among the comparative algorithms. For f16, ABC, CS, WWO, and EOBWWO can find the exact solution, and the standard deviations of ABC and EOBWWO are zeros. For f17, ABC, CS, WWO, and EOBWWO have the same median value and optimal fitness value, while the standard deviation of CS is minimal. For f18, FPA can obtain the better fitness value and median, but the standard deviation of WWO is the best. For f19, optimal fitness value, median value, and the standard deviation of FPA are better than those of EOBWWO. And for f20, it is obvious that ABC, CS, WWO, and EOBWWO obtain the exact solution and the standard deviation of CS is better. Through the above analysis of Table 5, we can draw a conclusion that EOBWWO has certain advantages in dealing with low-dimension functions according to the experimental results.In summary, as a result of introducing the three major optimization strategies in the improvement, the calculation precision of EOBWWO is better than the comparative algorithms for most benchmark functions. In addition to functionsf06, f18, and f19, the calculation precision of EOBWWO is inferior to ABC, FPA, and FPA, respectively. Moreover, EOBWWO can find the exact solution on f01–f05, f07, f09, f11, f12, f13, and f16, and the standard deviations of these functions are zeros, which show the higher calculation precision and stronger stability of EOBWWO. EOBWWO obtains exact solution on multimodal functions f07, f09, f11, f12, and f13, which shows that EOBWWO has better global search performance.In order to show the performance of the EOBNWWO clearly, Figures3–22 represent the convergence curves and Figures 23–42 describe the ANOVA test of global minimum of benchmark functions in Table 1. From Figures 3–22, obliviously, the convergence rate of EOBWWO is faster than other comparison algorithms including WWO on f01–f07, f09–f13, and f17, and the exact solution of EOBWWO is obtained in some functions f01–f05, f07, f09–f13, and f16-f17. All of these indicate that EOBWWO has a faster convergence speed and a higher calculation precision than the other comparative algorithms. Figures 23–42 show the ANOVA test of global minimum for f01–f20; it can be easily found that the standard deviation of EOBWWO is much smaller for most functions and the standard deviation is even zero on some functions (e.g., f01–f05, f07–f13, and f15-f16). Figures 23–42 imply that EOBWWO has strong stability.Figure 3
D = 30, convergence curves for f01.Figure 4
D = 30, convergence curves for f02.Figure 5
D = 30, convergence curves for f03.Figure 6
D = 30, convergence curves for f04.Figure 7
D = 30, convergence curves for f05.Figure 8
D = 30, convergence curves for f06.Figure 9
D = 30, convergence curves for f07.Figure 10
D = 30, convergence curves for f08.Figure 11
D = 30, convergence curves for f09.Figure 12
D = 30, convergence curves for f10.Figure 13
D = 30, convergence curves for f11.Figure 14
D = 30, convergence curves for f12.Figure 15
D = 30, convergence curves for f13.Figure 16
D = 30, convergence curves for f14.Figure 17
D = 24, convergence curves for f15.Figure 18
D = 2, convergence curves for f16.Figure 19
D = 4, convergence curves for f17.Figure 20
D = 4, convergence curves for f18.Figure 21
D = 4, convergence curves for f19.Figure 22
D = 2, convergence curves for f20.Figure 23
D = 30, ANOVA test of global minimum for f01.Figure 24
D = 30, ANOVA test of global minimum for f02.Figure 25
D = 30, ANOVA test of global minimum for f03.Figure 26
D = 30, ANOVA test of global minimum for f04.Figure 27
D = 30, ANOVA test of global minimum for f05.Figure 28
D = 30, ANOVA test of global minimum for f06.Figure 29
D = 30, ANOVA test of global minimum for f07.Figure 30
D = 30, ANOVA test of global minimum for f08.Figure 31
D = 30, ANOVA test of global minimum for f09.Figure 32
D = 30, ANOVA test of global minimum for f10.Figure 33
D = 30, ANOVA test of global minimum for f11.Figure 34
D = 30, ANOVA test of global minimum for f12.Figure 35
D = 30, ANOVA test of global minimum for f13.Figure 36
D = 30, ANOVA test of global minimum for f14.Figure 37
D = 24, ANOVA test of global minimum for f15.Figure 38
D = 2, ANOVA test of global minimum for f16.Figure 39
D = 4, ANOVA test of global minimum for f17.Figure 40
D = 4, ANOVA test of global minimum for f18.Figure 41
D = 4, ANOVA test of global minimum for f19.Figure 42
D = 2, ANOVA test of global minimum for f20.


### 4.3. High-Dimension Function Test Results

In order to validate performance of EOBWWO comprehensively, in this subsection, we choose four functions including two unimodal functions (f01,f06) and two multimodal functions (f07,f09) to test the 100 dimensions, 1000 dimensions, and 10000 dimensions, respectively, on the six algorithms. The results of all the algorithms about the four functions are summarized in Table 7. The maximum numbers of iteration of each algorithm on each function are consistent with Table 1.Table 7
Experiment results of high-dimension functions for different algorithms (f01,f06,f07,f09).
Number Algorithm Dimension Worst Best Median Std f 01 ABC 100 7.637713 1.257573 3.295669 1.651127 1000 1.434828 E + 6 1.304834 E + 6 1.371354 E + 6 3.090254 E + 4 10000 3.062472 E + 7 2.988161 E + 7 3.023603 E + 7 1.446642 E + 4 CS 100 26.040384 9.3680842 15.818794 4.115038 1000 6.516648 E + 4 4.647782 E + 4 5.504538 E + 4 4.829252 E + 3 10000 1.280442 E + 6 1.058719 E + 6 1.167367 E + 6 5.345232 E + 4 FPA 100 8.187843 E + 3 4.416928 E + 3 5.803334 E + 3 1.062651 E + 3 1000 1.400121 E + 5 1.400121 E + 5 1.400121 E + 5 1.400121 E + 5 10000 1.550111 E + 6 9.442398 E + 5 1.182740 E + 6 1.704160 E + 6 BA 100 0.021140987 0.015486339 0.018443888 0.001474661 1000 3.550121599 3.091995126 3.394685417 0.109635184 10000 1130.145132 750.0726451 865.3136568 94.15923749 WWO 100 6.483196131 3.07003824 0.917763681 0.91773681 1000 2.763344 E + 5 2.088491 E + 5 2.375400 E + 5 1.655635 E + 4 10000 7.929174 E + 6 5941746 E + 6 6.548260 E + 5 4.464375 E + 5 EOBWWO 100 0 0 0 0 1000 0 0 0 0 10000 0 0 0 0  f 06 ABC 100 470.7882 276.5788 407.6043 48.01618428 1000 202219.7218 177258.0229 193783.4147 5721.958598 10000 4156258.387 4029855.806 4108026.596 2985721724 CS 100 121.3484018 108.7940185 114.162504 3.194704574 1000 5108.984648 3833.317047 4359.012469 293.4115925 10000 73588.75287 57413.36292 66913.83583 4034.78353 FPA 100 559.2407 313.9292 421.0102 53.82862792 1000 8635.941471 5242.413467 6518.179353 870.7185594 10000 87358 .  09362 59543.23061 71905.7802 7351.701592 BA 100 100.7466 97.73262 99.84007 0.79162325 1000 1614.346207 1424.000673 1479.067336 47.45627579 10000 201943.4784 116612.8731 136871.9433 20275.79495 WWO 100 264.9252737 103.030758 118.948408 36.85200769 1000 20094.16217 13833.01993 16535.50983 1361.529306 10000 566850.0669 398083.154 470903.7464 37718.72406 EOBWWO 100 98.93733 98.35499 98.83611 0.1326465 1000 998.9477482 998.4598459 998.7574767 0.133930167 10000 9998.963982 9997.990523 9998.740734 0.255601018  f07 ABC 100 136.8533 108.4902 122.9485 8.215112956 1000 11758.89361 11266.87845 11600.7465 122.7986144 10000 175645.833 173987.3858 174819.5595 470.6736986 CS 100 532.4556943 393.0034167 456.391023 79.34852616 1000 11758.89361 11266.87845 11600.7465 159.2707509 10000 100168.3367 97832.02684 98994.11566 503.1069646 FPA 100 719.314 632.8825 674.7777 23.77504554 1000 9679.894951 9201.466552 9432.549086 125.8751735 10000 102588.4972 99293.30339 101542.8715 817.4508097 BA 100 146.1837 48.6256 102.4563 21.99337966 1000 1868.357958 1058.160315 1289.192742 214.602082 10000 62214.8107 58922.9904 60387.27428 739.8935726 WWO 100 752.071607 532.8408358 645.477105 57.03009115 1000 1632.88218 9939.23755 10334.79578 192.1639397 10000 116931.0586 112418.7607 114726.7636 1248.129627 EOBWWO 100 0 0 0 0 1000 0 0 0 0 10000 0 0 0 0   f 09 ABC 100 5.135663 1.823636 2.836978 1.811452675 1000 16666.76931 15706.49796 16346.9208 252.8474194 10000 28259.6583 274901.5152 279624.617 1490.552232 CS 100 3.870724583 2.423491994 3.008555665 0.41301955 1000 797.6679633 582.0471041 690.0181057 55.72921205 10000 12543.25214 9844.343528 10872.16696 672.723997 FPA 100 106.3429 50.14951 70.05947 11.61798957 1000 1342.792454 861.2975273 1101.229098 134.1435148 10000 13324.24358 9169.071683 11107.79476 1225.099338 BA 100 6.2 E - 4 3.56 E - 4 4.84 E - 4 5.58029 E - 5 1000 0.025577018 0.021496965 0.023453281 0.001074614 10000 0.744676593 0.500121455 0.599339533 0.058517493 WWO 100 1.648358348 1.294987676 1.41369559 0.087489969 1000 4194.059126 2989.289164 3304.633104 257.7285706 10000 67780.01333 53734.62138 60711.98145 2937.168912 EOBWWO 100 0 0 0 0 1000 0 0 0 0 10000 0 0 0 0For unimodal functionf01, it can be seen obviously that the performance of EOBWWO outperforms the other comparative algorithms for dimensions 100, 1000, and 10000 from Table 7. With the increase of dimension, EOBWWO is still obtaining the exact solution and the standard deviation is zero on f01. In the five comparison algorithms, as far as the median value changes in each dimension are concerned, the stability of FPA is better, but BA obtains the minimum value in each dimension. From the results of function f06 in Table 7, it is very easy to find that although the performance of EOBWWO is not very good when the dimension is 30, with the increase of dimension, not only does EOBWWO obtain the minimum value in each dimension, but also the standard deviation is the smallest and the range is not very large. In addition, for EOBWWO, the change of the order of magnitudes of median is the smallest in different dimensions. Those provide strong evidence that EOBWWO has higher performance in dealing with complex functions. Among the other comparative algorithms, the performance of BA is better, the second is CS, the third is WWO, and the fourth and fifth are BC and FPA, respectively.For multimodal functions, EOBWWO obtained the exact solution and the standard deviation is zero onf07 and f09 for the dimensions 100, 1000, and 10000. Taking into account median value, the performance of BA is better among comparative algorithms. However, considering the order of magnitudes of median, the difference between the five algorithms is not obvious.Furthermore, some high dimensional tests of EOBWWO are also tested in functionsf02, f04, f10, f12, and f13; details of the experimental results are shown in Table 8. As shown in Tables 7 and 8 and the above analysis, EOBWWO has the ability efficiently and stably to handle high dimensional functions.Table 8
Experiment results of high-dimension functions of EOBWWO.
Functions Dimensions Worst Best Median Std f 02 10000 0 0 0 0 f 04 10000 0 0 0 0 f 10 10000 0 0 0 0 f 12 10000 0 0 0 0 f 13 10000 0 0 0 0


### 4.4. Structural Engineering Design Examples

Many structural design problems in the real world are constrained optimization problems which are nonlinear with complex constraints and the optimal solution even does not exist in some cases. In order to evaluate the performance of EOBWWO even further, in this subsection, EOBWWO was used to solve two structural design problems: design of a compressing spring and design of a welded beam.


#### 4.4.1. Test Problem 1: Design of a Tension/Compression Spring

Design of a tension or compressing spring problem is introduced by Belegundu [14] firstly and it deals with the optimal design of tension/compression spring for a minimum weight. As shown in Figure 43, a tension/compression spring problem has three design variables: the wire diameter dx1, the mean coil diameter Dx2, and the number of active coils Nx3. The minimum weight is subject to constraints on minimum deflection, shear stress, surge frequency, and limits on outside diameter [15]. A detailed description of the problem is as follows:(15)Minimize:fX=x3+2×x2x12(16)Subjectto:g1X=1-x23x371785x14≤0(17)g2X=4x22-x1x212566x2x13-x14+15108x12-1≤0(18)g3X=1-140.45x1x23x3≤0(19)g4X=x1+x21.5-1≤0,where the experimental parameters are set as follows: (0.05,0.25,2)≤X(x1,x2,x3)≤(1,1.3,15) [29]. Table 9 lists the optimal solution for compression spring design obtained by EOBWWO. The results are 20 runs independently and the number of iterations of EOBWWO is 5000. In the process of dealing with tension/compression spring constrained optimization problem, first of all we need to determine whether the four constraints are satisfied. If these constraint conditions are all satisfied, then calculate fX according to formula (15) and compare fX with the original fitness values, the better result as fitness value of constrained optimization problem. Otherwise, the original fitness value remains and continues to iterate.Table 9
Statistical results of best tension/compression spring model obtained by EOBWWO.
Worst Best Mean Std 0.012703814 0.012665234 0.012680022 1.20767 E - 5Figure 43
The tension/compression spring problem.In the process of using EOBWWO algorithm to deal with tension/compression spring constrained optimization problem, when the position of individual in current population is changed (create a new solution) and required to estimate the new solution, the steps of dealing with the tension/compression spring constrained optimization problems are as follows.Step 1.
Calculate the values of the four constraint conditions (see (16)–(19)) and estimate whether they are all satisfied with the constraint conditions. If these constraint conditions are all satisfied, go to Step 2; otherwise, go to Step 3.Step 2.
Calculate fitness value of new solution by formula (15), and compare new fitness value to original fitness value. According to the comparison results determine whether to update the current individual. Go to Step 4.Step 3.
Keeping the original individual that violates any constraint, go to Step4.Step 4.
Continue performing the following operations.The reason behind keeping the individual that violates any constraint of the constraint conditions is that each iteration of the population has to implement the elite opposition-based learning (EOBL) strategy and propagation operation; then the individual that violates any constraint may satisfy the constraints in the next iteration.As one of the most well-known design benchmark problems, many researchers have studied this problem. Belegundu [14] introduced this problem and used eight different mathematical optimization techniques for this problem. Arora [15] solved this problem using a numerical optimization technique called a constraint correction at the constant cost. Table 10 summarized the optimal results of design of a tension/compression spring obtained by EOBWWO and other researchers.Table 10
Best results of compression spring by different model.
Researcher(s) Method Design variables f ( X ) x 1 ( d ) x 2 ( D ) x 3 ( N ) Belegundu [14] a 0.05 0.315900 14.25000 0.0128334 Arora [15] b 0.053396 0.399180 9.185400 0.0127303 Coello [16] GA 0.051480 0.351661 11.632201 0.01270478 Coello [17] GA 0.05148 0.35166 11.6322 0.0127 Coello and Montes [18] GA 0.051989 0.363965 10.890522 0.0126810 He et al. [19] PSO 0.05169040 0.35674999 11.28712599 0.0126652812 Coello and Becerra [20] E P c 0.05 0.3174 14.0318 0.01272 Raj et al. [21] E C T d 0.05386200 0.41128365 8.68437980 0.01274840 Hedar and Fukushima [22] S A e 0.051742503409 0.358004783455 11.2139073627 0.012665285 He and Wang [23] PSO 0.051728 0.357644 11.244543 0.0126747 Montes and Coello [24] E S f 0.051643 0.355360 11.397926 0.012698 Omran and Salman [25] C O D E Q g 0.0516837458 0.3565898352 11.2964717107 0.0126652375 Aragón et al. [26] T-cellh 0.05162 0.35511 11.3845 0.01267 Akay and Karaboga [27] ABC 0.051749 0.358179 11.203763 0.012665 Gandomi et al. [28] BA 0.05169 0.35673 11.2885 0.01267 Gandomi [29] I S A i NA NA NA 0.012665 Baykasoğlu and Ozsoydan [30] FA 0.0516674837 0.3561976945 11.3195613646 0.0126653049 Present study EOBWWO 0.05169826 0.356939073 11.2760014 0.012665234 a: mathematical optimization technique; b: numerical optimization technique; c: evolutionary programming; d: evolutionary computational technique; e: simulated annealing; f: evolution strategies; g: chaotic search, opposition-based learning, differential evolution, and quantum mechanics; h: TCA is the T-cell algorithm; i: interior search algorithm; NA: there is no relevant data.As seen from Table10, the proposed method obtained the best design overall of 0.012665234 corresponding to X=(0.05169826,0.356939073,11.2760014) and the results obtained by EOBWWO are better than the comparative methods.


#### 4.4.2. Test Problem 2: Design of a Welded Beam

As another well-known design benchmark problem, the objective of welded beam problem is to minimize overall cost of fabrication subject to constraints on shear stressτ, bending stress in the beam σ, buckling load on the bar Pc, end deflection of the beam δ, and side constraints. As depicted in Figure 44 [28], this problem consists of four design variables: thickness of the weld h(x1), the length of the welded joint l(x2), the width of the beam t(x3), and the thickness of the beam b(x4).Figure 44
The welded beam problem.The problem can be formulated as follows:(20)Minimize:fX=1.10471x12x2+0.04811x3x4x2+14(21)Subjectto:g1X=τX-τmax≤0(22)g2X=σX-σmax≤0(23)g3X=x1-x4≤0(24)g4X=0.15-x1≤0(25)g5X=δX-0.25≤0(26)g6X=P-PcX≤0(27)g7X=0.10471x12+0.04811x3x414+x2-5≤0,where(28)τX=τ′2+2τ′τ′′x22R+τ′′2,τ′=P2x1x2,τ′′=MRJ,M=PL+x22,R=x224+x1+x322,J=22x1x2x2212+x1+x322,σX=6PLx32x4,δX=4PL3Ex33x4,PcX=4.013Ex32x46/36L21-x32LE4G,P=6,000lb,L=14in,E=30×106psi,G=12×106psi,X=x1,x2,x3,x4,0.1,0.1,0.1,0.1≤X≤2,10,10,2.EOBWWO algorithm was run to find the minimum cost of fabrication of this design problem, where the range of values of the four experimental parametersx1, x2, x3, x4 is set as follows: (0.1,0.1,0.1,0.1)≤X(x1,x2,x3,x4)≤(2,10,10,2) [30]. Similarly, in the process of searching the minimum overall cost of fabrication, it is also the first to determine whether the seven constraint conditions are satisfied when calculating the fitness value. If these constraint conditions are all satisfied, then make use of formula (20) to calculate fitness value. In each run, EOBWWO is at the cost of 5000-function evaluation to locate the optimal solution. The experimental results of design of a welded beam obtained by EOBWWO are listed in Table 11. Similarly, in the process of searching the minimum overall cost of fabrication, when the position of any individual in the current population is changed and required to estimate the new solution, the steps of using EOBWWO algorithm to deal with welded beam problem are as using EOBWWO algorithm to deal with compression spring.Table 11
The optimal solution of the welded beam design example obtained by EOBWWO.
Worst Best Mean Std 1.71846399 1.69634711 1.70146693 0.005170473The results of comparing with those of other optimization algorithms reported in the literature are shown in Table12. It can be seen from Table 12 remarkably that the proposed EOBWWO algorithm is much better than other algorithms in the design of welded beam, and the optimal solution obtained by EOBWWO is 1.69634711 corresponding to X=(0.205832588,3.253654976,9.0315042,0.25962951).Table 12
The optimal solution of the welded beam design example using different methods.
Researcher(s) Method Design variables f ( X ) x 1 ( h ) x 2 ( l ) x 3 ( t ) x 4 ( b ) Deb [31] GA 0.2489 6.1730 8.1789 0.2533 2.4331 Leite and Topping [32] GA 0.2489 6.1097 8.2484 0.2485 2.4000 Coello [33] GA 0.2088 3.4205 8.9975 0.2100 1.7483 Deb [34] GA NA NA NA NA 2.38 Coello [16] GA 0.208800 3.420500 8.997500 0.210000 1.748309 Hu et al. [35] PSO 0.20573 3.47049 9.03662 0.20573 1.72485084 He et al. [19] PSO 0.2444 6.2175 8.2915 0.2444 2.3810 Liu [36] SA 0.2444 6.2175 8.2915 0.2444 2.3810 Hedar and Fukushima [22] SA 0.205644 3.4725787 9.03662391 0.2057296 1.7250022 He and Wang [23] PSO 0.202369 3.544214 9.048210 0.205723 1.728024 Mahdavi et al. [37] HSA 0.20573 3.47049 9.03662 0.20573 1.7248 Montes and Coello [24] ES 0.199742 3.612060 9.037500 0.206082 1.73730 Fesanghary et al. [38] HHSA 0.20572 3.47060 9.03682 0.20572 1.7248 Kaveh and Talatahari [39] PSO + ABC 0.205729 3.469875 9.036805 0.205765 1.724849 Kaveh and Talatahari [40] ABC 0.205700 3.471131 9.036683 0.205731 1.724918 Gandomi et al. [41] FA 0.2015 3.562 9.0414 0.2057 1.73121 Akay and Karaboga [27] FA 0.205730 3.470489 9.036624 0.205730 1.724852 Gandomi et al. [28] BA 0.2015 3.562 9.0414 0.2057 1.7312 Gandomi [29] ISA NA NA NA NA 2.3812 Baykasoğlu and Ozsoydan [30] FA 0.205730 3.470489 9.036624 0.205730 1.724852 Present study EOBWWO 0.205832588 3.253654976 9.0315042 0.205962951 1.69634711 HAS: harmony search algorithm; HHSA: hybridizing harmony search algorithm.


## 4.1. Experimental Setting and Comparative Methods

The empirical analysis was conducted on a computer of Intel(R) with 3.5 GHz Xeon CPU and 8 GB of memory, the operating system is Windows 7, and the programs are written in Matlab 2012a.The scope and dimension of variables have significant influence on the complexity of optimization. The scope of the benchmark function and the dimension of the low-dimension functions are illustrated in Table1. The dimensions of unimodal functions and multimodal functions are, respectively, 30, 100, 1000, and 10000.The performance of proposed EOBWWO algorithm is evaluated by comparing it to five state-of-the-art metaheuristic algorithms: ABC [4], CS [5], FPA [6], BA [8], and WWO [9]; the parameters settings of aforementioned algorithms are given in Table 2.Table 2
The parameters setting for six algorithms.
Algorithm Parameter values ABC [4] Limit = 50, the population size is 50  CS [5] β = 1.5, Pa=0.25, the population size is 50  FPA [6] ρ = 0.8, the population size is 50  BA [8] A = 0.25, r=0.5, f∈[0,2], the population size is 50  WWO [9] λ = 0.5, hmax=12, α=1.0026, β∈[0.01,0.25], kmax=min(12,D/2), the population size is 50  EOBWWO λ = 0.5, hmax=12, α=1.0026, β∈[0.01,0.25], kmax=min(12,D/2), η∈U(0,1), w∈[0.4,1.5], a=0.02,b=20, r=10, m,n∈rand⁡, the population size is 30


## 4.2. Experiment Results and Discussion

In Tables3-4, the dimension is 30, whereas the standard benchmark functions are listed in Table 1. In this paper, all function optimization experimental results of the algorithms are repeated 30 times to ensure the credibility in statistics. There are four evaluation indicators: max, min, median, and Std represent the worst fitness value, optimal fitness value, median of the test results, and standard deviation, respectively. The last column of Tables 3–5 gives the rank of the algorithms in terms of median values among the six algorithms. The minimum value, best median value, and the minimum standard deviation values among the six algorithms of each benchmark function are shown in bold.Table 3
Experiment results of unimodal functions for different algorithms (D=30).
Number Algorithm Results Max Min Median Std Rank f 01   ( D = 30 ) ABC 4.44633 E - 12 3.45813 E - 14 1.92 E - 13 9.22745 E - 13 2 CS 1.36762 E - 5 1.02709 E - 6 4.95555 E - 6 2.28819 E - 6 4 FPA 783.5925333 76.04241806 303.9240824 188.3527023 6 BA 1.568634 E - 3 1.029165 E - 3 1.282484 E - 3 1.31272 E - 4 5 WWO 5.55407 E - 10 1.07596 E - 10 2.69635 - 10 1.15369 E - 10 3 EOBWWO 0 0 0 0 1  f 02   ( D = 30 ) ABC 3.44699 E - 11 1.17159 E - 13 1.51639 E - 12 6.29287 E - 12 2 CS 1.28405 E - 4 0.53823 E - 5 6.08593 E - 5 2.96568 E - 5 3 FPA 1.09372 E + 4 1.677 E + 3 3.61889 E + 3 1.89233 E + 3 6 BA 0.037048461 0.01382428 0.020204478 0.004767846 5 WWO 0.511649493 0.000169285 0.013059176 0.200939335 4 EOBWWO 0 0 0 0 1  f 03   ( D = 30 ) ABC 0.829003374 0.3204228717 0.555760641 0.120472774 5 CS 0.088057162 0.000337518 0.007576085 0.022275036 3 FPA 15.1544391 4.697724887 8.12103893 2.186818227 6 BA 0.015412963 0.010993868 0.013059351 0.001157761 4 WWO 0.331726179 6.95792 E - 9 1.53742 E - 6 0.062504822 2 EOBWWO 0 0 0 0 1  f 04   ( D = 30 ) ABC 6.47604 E - 24 6.96705 E - 28 2.21019 E - 26 1.20736 E - 24 2 CS 74.1784179 0.006545946 3.896226938 19.85723139 4 FPA 2.64849 E + 13 11.2387456 3401.123936 4.8539 E + 12 6 BA 1.089641426 0.116013073 0.14358676 0.180342929 3 WWO 723.5000563 349.8831021 530.7411865 92.94725208 5 EOBWWO 0 0 0 0 1  f 05 (D=30) ABC 0 0 0 0 1 CS 0 0 0 0 1 FPA 1464 194 692.5 300.9258052 6 BA 1 0 0 0.449776445 4 WWO 5 0 0 1 5 EOBWWO 0 0 0 0 1  f 06 (D=30) ABC 27.62119073 7.911323481 20.45437209 4.364699718 1 CS 26.10849123 23.69813132 25.20307209 0.695990009 2 FPA 83.14751217 43.48073835 61.12668297 11.14304633 6 BA 25.51159629 24.8746208 27.74338401 0.985458463 4 WWO 29.32841665 24.00396307 27.69619184 1.153955218 3 EOBWWO 28.9707934 28.2967605 28.8377944 0.162741102 5Table 4
Experiment results of multimodal functions for different algorithms (D=30).
Number Algorithm Results Max Min Median Std Rank f 07 (D=30) ABC 4.543430376 0.872091069 2.32396378 0.77610662 2 CS 100.3117085 69.593399457 83.78234227 9.01595302 5 FPA 155.7273116 103.5726964 121.9253488 12.6731423 6 BA 44.0464352 9.204919504 26.66189504 8.91738265 3 WWO 119.6471701 47.99518568 81.08466559 20.4603731 4 EOBWWO 0 0 0 0 1  f 08 (D=30) ABC 0.200343498 0.077326914 0.142626325 0.03146059 2 CS 2.644000719 1.141797447 2.096514981 0.38634392 4 FPA 7.743838028 3.174296934 4.343237221 0.91961437 6 BA 2.121661491 0.026334395 1.250303713 0.79120840 3 WWO 8.74527255 2.713986881 3.436036696 1.37954679 5 EOBWWO 8.88178 E - 16 8.88178 E - 16 8.88178 E - 16 0 1  f 09 (D=30) ABC 0.009995413 1.40219 E - 6 1.03254 E - 5 0.00251343 2 CS 0.21732293 0.046844017 0.097110776 0.04071839 5 FPA 7.743838028 3.174296934 4.343237221 0.91961437 6 BA 8.8209 E - 5 4.84725 E - 5 6.96553 E - 5 1.0629 E - 5 3 WWO 0.027745165 0.000101686 0.004216065 0.008990433 4 EOBWWO 0 0 0 0 1  f 10 (D=30) ABC 1.82152 E - 5 3.55257 E - 7 4.91547 E - 6 3.92981 E - 6 2 CS 23.75901871 20169151391 8.018029438 6.27034500 4 FPA 2.78 E + 8 1.07 E + 7 7.32 E + 7 7.20 E + 7 6 BA 0.517543758 0.102778936 0.249802147 0.10685336 3 WWO 3.57 E + 5 1148.931415 28435.22582 70797.7997 5 EOBWWO 3.2059 E - 249 0 4.3182 E - 304 0 1  f 11 (D=30) ABC - 0.025319222 - 0.025319222 - 0.025319992 8.93607 E - 15 6 CS - 0.100574784 - 0.100574784 - 0.100574784 4.53639 E - 14 3 FPA - 0.100574784 - 0.100574784 - 0.100574784 8.35309 E - 12 5 BA - 0.100574784 - 0.100574784 - 0.100574784 1.18291 E - 14 3 WWO - 0.100574784 - 0.100574784 - 0.100574784 1.93291 E - 15 2 EOBWWO - 1 - 1 - 1 0 1  f 12 (D=30) ABC 0.02864526 0.007552463 0.012569017 0.00450223 2 CS 32.10594109 16.77196848 26.78636751 3.59576559 5 FPA 19.30313173 12.51112225 15.67535455 1.74928731 4 BA 42.35819689 25.57284909 31.84105217 3.87397750 6 WWO 19.88306619 9.975451796 14.2300995 2.59319376 3 EOBWWO 0 0 0 0 1  f 13 (D=30) ABC 8.85875 E - 8 6.75126 E - 15 6.88565 E - 9 2.1219 E - 8 2 CS 3.531716667 1.26783277 2.278563536 0.625010328 5 FPA 7.466256332 0.073108474 2.782338916 1.589472384 6 BA 0.018080917 0.012650753 0.014787578 0.001091235 3 WWO 1.942396367 0.026078564 0.13612587 0.64846015 4 EOBWWO 0 0 0 0 1  f 14 (D=30) ABC 2.600171726 1.999873348 2.399879727 0.184266606 5 CS 1.633485698 0.922951921 1.400436259 0.17500411 4 FPA 5.30000938 2.701931127 3.871080144 0.61020963 6 BA 0.499873346 0.199873346 0.299873346 0.06214554 2 WWO 1.211882567 0.599906059 0.808361684 0.174395376 3 EOBWWO 0.099873348 0 0.099873346 0.018234295 1Table 5
Experiment results of low-dimension functions for different algorithms.
Number Algorithm Results Max Min Median Std Rank f 15 (D=24) ABC 0.455803159 0.088628487 0.244130317 0.092018378 5 CS 0.006558415 0.002334688 0.003589486 0.001062387 2 FPA 3.516583313 0.439394393 1.119151909 0.756461677 4 BA 0.085283799 0.017280708 0.035769424 0.019917509 3 WWO 1.582142729 0.0749512 0.437894406 0.30106576 6 EOBWWO 3.44639 E - 63 3.5938 E - 262 6.1033 E - 207 6.29221 E - 64 1  f 16 (D=2) ABC - 1 - 1 - 1 0 1 CS - 1 - 1 - 1 1.47866 E - 13 1 FPA - 0.999991624 - 1 - 0.999999921 1.56202 E - 6 6 BA - 0.999999927 - 1 - 0.999999978 2.08821 E - 8 5 WWO - 1 - 1 - 1 2.06163 E - 17 1 EOBWWO - 1 - 1 - 1 0 1  f 17 (D=4) ABC - 10.1531456 - 10.15319968 - 10.15319968 1.0346 E - 5 1 CS - 10.15319968 - 10.15319968 - 10.15319968 5.03511 E - 15 1 FPA - 10.15315656 - 10.15319968 - 10.15319952 7.82319 E - 6 5 BA - 5.055111551 - 5.055182873 - 50.551596 1.85604 E - 5 6 WWO - 5.10077214 - 10.15319968 - 10.15319968 1.281841952 1 EOBWWO - 10.14720526 - 10.15319968 - 10.15319968 0.001093567 1  f 18 (D=4) ABC - 10.40251326 - 10.40294057 - 10.40294057 7.79447 E - 5 4 CS - 10.40294057 - 10.40294057 - 10.40294057 2.21007 E - 14 3 FPA - 10.40202483 - 10.40294054 - 10.40293239 1.60136 E - 5 1 BA - 5.087559948 - 5.08766627 - 5.087628993 2.54514 E - 5 6 WWO - 10.40294057 - 10.40294057 - 10.40294057 2.00647 E - 15 2 EOBWWO - 10.40130898 - 10.40294057 - 10.40294057 0.000360071 5  f 19 (D=4) ABC - 5.174214497 - 10.53640982 - 10.53640982 0.978996012 2 CS - 10.53640982 - 10.53640982 - 10.53640982 1.33033 E - 12 2 FPA - 10.53388561 - 10.53640939 - 10.5363024 0.000210477 1 BA - 5.128396631 - 10.53632794 - 5.128439601 1.37202234 6 WWO - 5.175646742 - 10.53640982 - 10.53640982 0.978736954 2 EOBWWO - 10.52292613 - 10.53640982 - 10.53640982 0.002461764 2  f 20 (D=2) ABC 3.00425387 3 3 0.00077653 1 CS 3 3 3 1.91987 E - 15 1 FPA 3 3 3 2.62468 E - 15 1 BA 3.000011451 3.00000068 3.000001582 2.81115 E - 6 6 WWO 3 3 3 4.77801 E - 15 1 EOBWWO 3 3 3 4.14957 E - 15 1Moreover, nonparametric Wilcoxon rank tests were conducted on the results of EOBWWO and other comparative algorithms on the 20 benchmark functions, and the test results are shown in Table6, where the value of h is 1 indicating that the performance and comparative method are statistically different with 95% confidence, and 0 implies that there is no statistical difference [9].Table 6
Statistical comparison between EOBWWO and the other five algorithms.
ABC CS FPA BA WWO p   v a l u e h p   v a l u e h p   v a l u e h p   v a l u e h p   v a l u e h f 01 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 02 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 03 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 04 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 05 NaN 0 NaN 0 1.2108 E - 12 1 0.0027 1 1.6428 E - 9 1 f 06 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 6.2828 E - 6 1 2.0338 E - 9 1 f 07 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 08 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 09 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 10 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 11 1.2059 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.197 E - 12 1 5.1032 E - 13 1 f 12 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 13 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 f 14 2.5190 E - 11 1 2.5190 E - 11 1 2.5190 E - 11 1 2.5190 E - 11 1 2.5190 E - 11 1 f 15 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 3.0199 E - 11 1 f 16 NaN 0 1.20088 E - 12 1 1.2118 E - 12 1 1.2118 E - 12 1 0.3337 0 f 17 3.1245 E - 4 1 1.0446 E - 7 1 1.7216 E - 6 1 2.9953 E - 11 1 1.6737 E - 4 1 f 18 0.0851 0 1.3993 E - 5 1 1.587 E - 7 1 2.9916 E - 11 1 1.187 E - 7 1 f 19 0.159 0 0.0371 1 5.4608 E - 10 1 3.6058 E - 11 1 2.1012 E - 6 1 f 20 0.5130 0 2.8286 E - 9 1 0.1657 0 2.9766 E - 11 1 0.5097 0In Table3, on the unimodal group, EOBWWO obtained the exact solution except function f06 and obtained the minimum standard deviation. Although ranking fifth on function f06, standard deviation of EOBWWO is less than the other algorithms. All these mean that EOBWWO has a higher calculation precision and better stability in the optimization of the unimodal functions.On group 2 of 8 multimodal functions, seeing from Table4, EOBWWO can find the exact solution for f07, f09, f10, f11, f12, and f13, and the standard deviations of the five functions of EOBWWO are zeros. In addition, EOBWWO obtains the best median value on all functions. For functions f08 and f14, the worst fitness value, best fitness value, median value, and standard deviations of EOBWWO are less than the other five algorithms. The multimodal functions are more complex than unimodal functions due to the local minima; thus the above analysis indicates that EOBWWO has a strong global search ability and higher calculation precision.On group 3 of 6 low-dimension functions, results are illustrated in Table5. For f15, EOBWWO obtains the minimum values including the worst fitness, best value fitness, median value, and standard deviations among the comparative algorithms. For f16, ABC, CS, WWO, and EOBWWO can find the exact solution, and the standard deviations of ABC and EOBWWO are zeros. For f17, ABC, CS, WWO, and EOBWWO have the same median value and optimal fitness value, while the standard deviation of CS is minimal. For f18, FPA can obtain the better fitness value and median, but the standard deviation of WWO is the best. For f19, optimal fitness value, median value, and the standard deviation of FPA are better than those of EOBWWO. And for f20, it is obvious that ABC, CS, WWO, and EOBWWO obtain the exact solution and the standard deviation of CS is better. Through the above analysis of Table 5, we can draw a conclusion that EOBWWO has certain advantages in dealing with low-dimension functions according to the experimental results.In summary, as a result of introducing the three major optimization strategies in the improvement, the calculation precision of EOBWWO is better than the comparative algorithms for most benchmark functions. In addition to functionsf06, f18, and f19, the calculation precision of EOBWWO is inferior to ABC, FPA, and FPA, respectively. Moreover, EOBWWO can find the exact solution on f01–f05, f07, f09, f11, f12, f13, and f16, and the standard deviations of these functions are zeros, which show the higher calculation precision and stronger stability of EOBWWO. EOBWWO obtains exact solution on multimodal functions f07, f09, f11, f12, and f13, which shows that EOBWWO has better global search performance.In order to show the performance of the EOBNWWO clearly, Figures3–22 represent the convergence curves and Figures 23–42 describe the ANOVA test of global minimum of benchmark functions in Table 1. From Figures 3–22, obliviously, the convergence rate of EOBWWO is faster than other comparison algorithms including WWO on f01–f07, f09–f13, and f17, and the exact solution of EOBWWO is obtained in some functions f01–f05, f07, f09–f13, and f16-f17. All of these indicate that EOBWWO has a faster convergence speed and a higher calculation precision than the other comparative algorithms. Figures 23–42 show the ANOVA test of global minimum for f01–f20; it can be easily found that the standard deviation of EOBWWO is much smaller for most functions and the standard deviation is even zero on some functions (e.g., f01–f05, f07–f13, and f15-f16). Figures 23–42 imply that EOBWWO has strong stability.Figure 3
D = 30, convergence curves for f01.Figure 4
D = 30, convergence curves for f02.Figure 5
D = 30, convergence curves for f03.Figure 6
D = 30, convergence curves for f04.Figure 7
D = 30, convergence curves for f05.Figure 8
D = 30, convergence curves for f06.Figure 9
D = 30, convergence curves for f07.Figure 10
D = 30, convergence curves for f08.Figure 11
D = 30, convergence curves for f09.Figure 12
D = 30, convergence curves for f10.Figure 13
D = 30, convergence curves for f11.Figure 14
D = 30, convergence curves for f12.Figure 15
D = 30, convergence curves for f13.Figure 16
D = 30, convergence curves for f14.Figure 17
D = 24, convergence curves for f15.Figure 18
D = 2, convergence curves for f16.Figure 19
D = 4, convergence curves for f17.Figure 20
D = 4, convergence curves for f18.Figure 21
D = 4, convergence curves for f19.Figure 22
D = 2, convergence curves for f20.Figure 23
D = 30, ANOVA test of global minimum for f01.Figure 24
D = 30, ANOVA test of global minimum for f02.Figure 25
D = 30, ANOVA test of global minimum for f03.Figure 26
D = 30, ANOVA test of global minimum for f04.Figure 27
D = 30, ANOVA test of global minimum for f05.Figure 28
D = 30, ANOVA test of global minimum for f06.Figure 29
D = 30, ANOVA test of global minimum for f07.Figure 30
D = 30, ANOVA test of global minimum for f08.Figure 31
D = 30, ANOVA test of global minimum for f09.Figure 32
D = 30, ANOVA test of global minimum for f10.Figure 33
D = 30, ANOVA test of global minimum for f11.Figure 34
D = 30, ANOVA test of global minimum for f12.Figure 35
D = 30, ANOVA test of global minimum for f13.Figure 36
D = 30, ANOVA test of global minimum for f14.Figure 37
D = 24, ANOVA test of global minimum for f15.Figure 38
D = 2, ANOVA test of global minimum for f16.Figure 39
D = 4, ANOVA test of global minimum for f17.Figure 40
D = 4, ANOVA test of global minimum for f18.Figure 41
D = 4, ANOVA test of global minimum for f19.Figure 42
D = 2, ANOVA test of global minimum for f20.


## 4.3. High-Dimension Function Test Results

In order to validate performance of EOBWWO comprehensively, in this subsection, we choose four functions including two unimodal functions (f01,f06) and two multimodal functions (f07,f09) to test the 100 dimensions, 1000 dimensions, and 10000 dimensions, respectively, on the six algorithms. The results of all the algorithms about the four functions are summarized in Table 7. The maximum numbers of iteration of each algorithm on each function are consistent with Table 1.Table 7
Experiment results of high-dimension functions for different algorithms (f01,f06,f07,f09).
Number Algorithm Dimension Worst Best Median Std f 01 ABC 100 7.637713 1.257573 3.295669 1.651127 1000 1.434828 E + 6 1.304834 E + 6 1.371354 E + 6 3.090254 E + 4 10000 3.062472 E + 7 2.988161 E + 7 3.023603 E + 7 1.446642 E + 4 CS 100 26.040384 9.3680842 15.818794 4.115038 1000 6.516648 E + 4 4.647782 E + 4 5.504538 E + 4 4.829252 E + 3 10000 1.280442 E + 6 1.058719 E + 6 1.167367 E + 6 5.345232 E + 4 FPA 100 8.187843 E + 3 4.416928 E + 3 5.803334 E + 3 1.062651 E + 3 1000 1.400121 E + 5 1.400121 E + 5 1.400121 E + 5 1.400121 E + 5 10000 1.550111 E + 6 9.442398 E + 5 1.182740 E + 6 1.704160 E + 6 BA 100 0.021140987 0.015486339 0.018443888 0.001474661 1000 3.550121599 3.091995126 3.394685417 0.109635184 10000 1130.145132 750.0726451 865.3136568 94.15923749 WWO 100 6.483196131 3.07003824 0.917763681 0.91773681 1000 2.763344 E + 5 2.088491 E + 5 2.375400 E + 5 1.655635 E + 4 10000 7.929174 E + 6 5941746 E + 6 6.548260 E + 5 4.464375 E + 5 EOBWWO 100 0 0 0 0 1000 0 0 0 0 10000 0 0 0 0  f 06 ABC 100 470.7882 276.5788 407.6043 48.01618428 1000 202219.7218 177258.0229 193783.4147 5721.958598 10000 4156258.387 4029855.806 4108026.596 2985721724 CS 100 121.3484018 108.7940185 114.162504 3.194704574 1000 5108.984648 3833.317047 4359.012469 293.4115925 10000 73588.75287 57413.36292 66913.83583 4034.78353 FPA 100 559.2407 313.9292 421.0102 53.82862792 1000 8635.941471 5242.413467 6518.179353 870.7185594 10000 87358 .  09362 59543.23061 71905.7802 7351.701592 BA 100 100.7466 97.73262 99.84007 0.79162325 1000 1614.346207 1424.000673 1479.067336 47.45627579 10000 201943.4784 116612.8731 136871.9433 20275.79495 WWO 100 264.9252737 103.030758 118.948408 36.85200769 1000 20094.16217 13833.01993 16535.50983 1361.529306 10000 566850.0669 398083.154 470903.7464 37718.72406 EOBWWO 100 98.93733 98.35499 98.83611 0.1326465 1000 998.9477482 998.4598459 998.7574767 0.133930167 10000 9998.963982 9997.990523 9998.740734 0.255601018  f07 ABC 100 136.8533 108.4902 122.9485 8.215112956 1000 11758.89361 11266.87845 11600.7465 122.7986144 10000 175645.833 173987.3858 174819.5595 470.6736986 CS 100 532.4556943 393.0034167 456.391023 79.34852616 1000 11758.89361 11266.87845 11600.7465 159.2707509 10000 100168.3367 97832.02684 98994.11566 503.1069646 FPA 100 719.314 632.8825 674.7777 23.77504554 1000 9679.894951 9201.466552 9432.549086 125.8751735 10000 102588.4972 99293.30339 101542.8715 817.4508097 BA 100 146.1837 48.6256 102.4563 21.99337966 1000 1868.357958 1058.160315 1289.192742 214.602082 10000 62214.8107 58922.9904 60387.27428 739.8935726 WWO 100 752.071607 532.8408358 645.477105 57.03009115 1000 1632.88218 9939.23755 10334.79578 192.1639397 10000 116931.0586 112418.7607 114726.7636 1248.129627 EOBWWO 100 0 0 0 0 1000 0 0 0 0 10000 0 0 0 0   f 09 ABC 100 5.135663 1.823636 2.836978 1.811452675 1000 16666.76931 15706.49796 16346.9208 252.8474194 10000 28259.6583 274901.5152 279624.617 1490.552232 CS 100 3.870724583 2.423491994 3.008555665 0.41301955 1000 797.6679633 582.0471041 690.0181057 55.72921205 10000 12543.25214 9844.343528 10872.16696 672.723997 FPA 100 106.3429 50.14951 70.05947 11.61798957 1000 1342.792454 861.2975273 1101.229098 134.1435148 10000 13324.24358 9169.071683 11107.79476 1225.099338 BA 100 6.2 E - 4 3.56 E - 4 4.84 E - 4 5.58029 E - 5 1000 0.025577018 0.021496965 0.023453281 0.001074614 10000 0.744676593 0.500121455 0.599339533 0.058517493 WWO 100 1.648358348 1.294987676 1.41369559 0.087489969 1000 4194.059126 2989.289164 3304.633104 257.7285706 10000 67780.01333 53734.62138 60711.98145 2937.168912 EOBWWO 100 0 0 0 0 1000 0 0 0 0 10000 0 0 0 0For unimodal functionf01, it can be seen obviously that the performance of EOBWWO outperforms the other comparative algorithms for dimensions 100, 1000, and 10000 from Table 7. With the increase of dimension, EOBWWO is still obtaining the exact solution and the standard deviation is zero on f01. In the five comparison algorithms, as far as the median value changes in each dimension are concerned, the stability of FPA is better, but BA obtains the minimum value in each dimension. From the results of function f06 in Table 7, it is very easy to find that although the performance of EOBWWO is not very good when the dimension is 30, with the increase of dimension, not only does EOBWWO obtain the minimum value in each dimension, but also the standard deviation is the smallest and the range is not very large. In addition, for EOBWWO, the change of the order of magnitudes of median is the smallest in different dimensions. Those provide strong evidence that EOBWWO has higher performance in dealing with complex functions. Among the other comparative algorithms, the performance of BA is better, the second is CS, the third is WWO, and the fourth and fifth are BC and FPA, respectively.For multimodal functions, EOBWWO obtained the exact solution and the standard deviation is zero onf07 and f09 for the dimensions 100, 1000, and 10000. Taking into account median value, the performance of BA is better among comparative algorithms. However, considering the order of magnitudes of median, the difference between the five algorithms is not obvious.Furthermore, some high dimensional tests of EOBWWO are also tested in functionsf02, f04, f10, f12, and f13; details of the experimental results are shown in Table 8. As shown in Tables 7 and 8 and the above analysis, EOBWWO has the ability efficiently and stably to handle high dimensional functions.Table 8
Experiment results of high-dimension functions of EOBWWO.
Functions Dimensions Worst Best Median Std f 02 10000 0 0 0 0 f 04 10000 0 0 0 0 f 10 10000 0 0 0 0 f 12 10000 0 0 0 0 f 13 10000 0 0 0 0


## 4.4. Structural Engineering Design Examples

Many structural design problems in the real world are constrained optimization problems which are nonlinear with complex constraints and the optimal solution even does not exist in some cases. In order to evaluate the performance of EOBWWO even further, in this subsection, EOBWWO was used to solve two structural design problems: design of a compressing spring and design of a welded beam.


### 4.4.1. Test Problem 1: Design of a Tension/Compression Spring

Design of a tension or compressing spring problem is introduced by Belegundu [14] firstly and it deals with the optimal design of tension/compression spring for a minimum weight. As shown in Figure 43, a tension/compression spring problem has three design variables: the wire diameter dx1, the mean coil diameter Dx2, and the number of active coils Nx3. The minimum weight is subject to constraints on minimum deflection, shear stress, surge frequency, and limits on outside diameter [15]. A detailed description of the problem is as follows:(15)Minimize:fX=x3+2×x2x12(16)Subjectto:g1X=1-x23x371785x14≤0(17)g2X=4x22-x1x212566x2x13-x14+15108x12-1≤0(18)g3X=1-140.45x1x23x3≤0(19)g4X=x1+x21.5-1≤0,where the experimental parameters are set as follows: (0.05,0.25,2)≤X(x1,x2,x3)≤(1,1.3,15) [29]. Table 9 lists the optimal solution for compression spring design obtained by EOBWWO. The results are 20 runs independently and the number of iterations of EOBWWO is 5000. In the process of dealing with tension/compression spring constrained optimization problem, first of all we need to determine whether the four constraints are satisfied. If these constraint conditions are all satisfied, then calculate fX according to formula (15) and compare fX with the original fitness values, the better result as fitness value of constrained optimization problem. Otherwise, the original fitness value remains and continues to iterate.Table 9
Statistical results of best tension/compression spring model obtained by EOBWWO.
Worst Best Mean Std 0.012703814 0.012665234 0.012680022 1.20767 E - 5Figure 43
The tension/compression spring problem.In the process of using EOBWWO algorithm to deal with tension/compression spring constrained optimization problem, when the position of individual in current population is changed (create a new solution) and required to estimate the new solution, the steps of dealing with the tension/compression spring constrained optimization problems are as follows.Step 1.
Calculate the values of the four constraint conditions (see (16)–(19)) and estimate whether they are all satisfied with the constraint conditions. If these constraint conditions are all satisfied, go to Step 2; otherwise, go to Step 3.Step 2.
Calculate fitness value of new solution by formula (15), and compare new fitness value to original fitness value. According to the comparison results determine whether to update the current individual. Go to Step 4.Step 3.
Keeping the original individual that violates any constraint, go to Step4.Step 4.
Continue performing the following operations.The reason behind keeping the individual that violates any constraint of the constraint conditions is that each iteration of the population has to implement the elite opposition-based learning (EOBL) strategy and propagation operation; then the individual that violates any constraint may satisfy the constraints in the next iteration.As one of the most well-known design benchmark problems, many researchers have studied this problem. Belegundu [14] introduced this problem and used eight different mathematical optimization techniques for this problem. Arora [15] solved this problem using a numerical optimization technique called a constraint correction at the constant cost. Table 10 summarized the optimal results of design of a tension/compression spring obtained by EOBWWO and other researchers.Table 10
Best results of compression spring by different model.
Researcher(s) Method Design variables f ( X ) x 1 ( d ) x 2 ( D ) x 3 ( N ) Belegundu [14] a 0.05 0.315900 14.25000 0.0128334 Arora [15] b 0.053396 0.399180 9.185400 0.0127303 Coello [16] GA 0.051480 0.351661 11.632201 0.01270478 Coello [17] GA 0.05148 0.35166 11.6322 0.0127 Coello and Montes [18] GA 0.051989 0.363965 10.890522 0.0126810 He et al. [19] PSO 0.05169040 0.35674999 11.28712599 0.0126652812 Coello and Becerra [20] E P c 0.05 0.3174 14.0318 0.01272 Raj et al. [21] E C T d 0.05386200 0.41128365 8.68437980 0.01274840 Hedar and Fukushima [22] S A e 0.051742503409 0.358004783455 11.2139073627 0.012665285 He and Wang [23] PSO 0.051728 0.357644 11.244543 0.0126747 Montes and Coello [24] E S f 0.051643 0.355360 11.397926 0.012698 Omran and Salman [25] C O D E Q g 0.0516837458 0.3565898352 11.2964717107 0.0126652375 Aragón et al. [26] T-cellh 0.05162 0.35511 11.3845 0.01267 Akay and Karaboga [27] ABC 0.051749 0.358179 11.203763 0.012665 Gandomi et al. [28] BA 0.05169 0.35673 11.2885 0.01267 Gandomi [29] I S A i NA NA NA 0.012665 Baykasoğlu and Ozsoydan [30] FA 0.0516674837 0.3561976945 11.3195613646 0.0126653049 Present study EOBWWO 0.05169826 0.356939073 11.2760014 0.012665234 a: mathematical optimization technique; b: numerical optimization technique; c: evolutionary programming; d: evolutionary computational technique; e: simulated annealing; f: evolution strategies; g: chaotic search, opposition-based learning, differential evolution, and quantum mechanics; h: TCA is the T-cell algorithm; i: interior search algorithm; NA: there is no relevant data.As seen from Table10, the proposed method obtained the best design overall of 0.012665234 corresponding to X=(0.05169826,0.356939073,11.2760014) and the results obtained by EOBWWO are better than the comparative methods.


### 4.4.2. Test Problem 2: Design of a Welded Beam

As another well-known design benchmark problem, the objective of welded beam problem is to minimize overall cost of fabrication subject to constraints on shear stressτ, bending stress in the beam σ, buckling load on the bar Pc, end deflection of the beam δ, and side constraints. As depicted in Figure 44 [28], this problem consists of four design variables: thickness of the weld h(x1), the length of the welded joint l(x2), the width of the beam t(x3), and the thickness of the beam b(x4).Figure 44
The welded beam problem.The problem can be formulated as follows:(20)Minimize:fX=1.10471x12x2+0.04811x3x4x2+14(21)Subjectto:g1X=τX-τmax≤0(22)g2X=σX-σmax≤0(23)g3X=x1-x4≤0(24)g4X=0.15-x1≤0(25)g5X=δX-0.25≤0(26)g6X=P-PcX≤0(27)g7X=0.10471x12+0.04811x3x414+x2-5≤0,where(28)τX=τ′2+2τ′τ′′x22R+τ′′2,τ′=P2x1x2,τ′′=MRJ,M=PL+x22,R=x224+x1+x322,J=22x1x2x2212+x1+x322,σX=6PLx32x4,δX=4PL3Ex33x4,PcX=4.013Ex32x46/36L21-x32LE4G,P=6,000lb,L=14in,E=30×106psi,G=12×106psi,X=x1,x2,x3,x4,0.1,0.1,0.1,0.1≤X≤2,10,10,2.EOBWWO algorithm was run to find the minimum cost of fabrication of this design problem, where the range of values of the four experimental parametersx1, x2, x3, x4 is set as follows: (0.1,0.1,0.1,0.1)≤X(x1,x2,x3,x4)≤(2,10,10,2) [30]. Similarly, in the process of searching the minimum overall cost of fabrication, it is also the first to determine whether the seven constraint conditions are satisfied when calculating the fitness value. If these constraint conditions are all satisfied, then make use of formula (20) to calculate fitness value. In each run, EOBWWO is at the cost of 5000-function evaluation to locate the optimal solution. The experimental results of design of a welded beam obtained by EOBWWO are listed in Table 11. Similarly, in the process of searching the minimum overall cost of fabrication, when the position of any individual in the current population is changed and required to estimate the new solution, the steps of using EOBWWO algorithm to deal with welded beam problem are as using EOBWWO algorithm to deal with compression spring.Table 11
The optimal solution of the welded beam design example obtained by EOBWWO.
Worst Best Mean Std 1.71846399 1.69634711 1.70146693 0.005170473The results of comparing with those of other optimization algorithms reported in the literature are shown in Table12. It can be seen from Table 12 remarkably that the proposed EOBWWO algorithm is much better than other algorithms in the design of welded beam, and the optimal solution obtained by EOBWWO is 1.69634711 corresponding to X=(0.205832588,3.253654976,9.0315042,0.25962951).Table 12
The optimal solution of the welded beam design example using different methods.
Researcher(s) Method Design variables f ( X ) x 1 ( h ) x 2 ( l ) x 3 ( t ) x 4 ( b ) Deb [31] GA 0.2489 6.1730 8.1789 0.2533 2.4331 Leite and Topping [32] GA 0.2489 6.1097 8.2484 0.2485 2.4000 Coello [33] GA 0.2088 3.4205 8.9975 0.2100 1.7483 Deb [34] GA NA NA NA NA 2.38 Coello [16] GA 0.208800 3.420500 8.997500 0.210000 1.748309 Hu et al. [35] PSO 0.20573 3.47049 9.03662 0.20573 1.72485084 He et al. [19] PSO 0.2444 6.2175 8.2915 0.2444 2.3810 Liu [36] SA 0.2444 6.2175 8.2915 0.2444 2.3810 Hedar and Fukushima [22] SA 0.205644 3.4725787 9.03662391 0.2057296 1.7250022 He and Wang [23] PSO 0.202369 3.544214 9.048210 0.205723 1.728024 Mahdavi et al. [37] HSA 0.20573 3.47049 9.03662 0.20573 1.7248 Montes and Coello [24] ES 0.199742 3.612060 9.037500 0.206082 1.73730 Fesanghary et al. [38] HHSA 0.20572 3.47060 9.03682 0.20572 1.7248 Kaveh and Talatahari [39] PSO + ABC 0.205729 3.469875 9.036805 0.205765 1.724849 Kaveh and Talatahari [40] ABC 0.205700 3.471131 9.036683 0.205731 1.724918 Gandomi et al. [41] FA 0.2015 3.562 9.0414 0.2057 1.73121 Akay and Karaboga [27] FA 0.205730 3.470489 9.036624 0.205730 1.724852 Gandomi et al. [28] BA 0.2015 3.562 9.0414 0.2057 1.7312 Gandomi [29] ISA NA NA NA NA 2.3812 Baykasoğlu and Ozsoydan [30] FA 0.205730 3.470489 9.036624 0.205730 1.724852 Present study EOBWWO 0.205832588 3.253654976 9.0315042 0.205962951 1.69634711 HAS: harmony search algorithm; HHSA: hybridizing harmony search algorithm.


## 4.4.1. Test Problem 1: Design of a Tension/Compression Spring

Design of a tension or compressing spring problem is introduced by Belegundu [14] firstly and it deals with the optimal design of tension/compression spring for a minimum weight. As shown in Figure 43, a tension/compression spring problem has three design variables: the wire diameter dx1, the mean coil diameter Dx2, and the number of active coils Nx3. The minimum weight is subject to constraints on minimum deflection, shear stress, surge frequency, and limits on outside diameter [15]. A detailed description of the problem is as follows:(15)Minimize:fX=x3+2×x2x12(16)Subjectto:g1X=1-x23x371785x14≤0(17)g2X=4x22-x1x212566x2x13-x14+15108x12-1≤0(18)g3X=1-140.45x1x23x3≤0(19)g4X=x1+x21.5-1≤0,where the experimental parameters are set as follows: (0.05,0.25,2)≤X(x1,x2,x3)≤(1,1.3,15) [29]. Table 9 lists the optimal solution for compression spring design obtained by EOBWWO. The results are 20 runs independently and the number of iterations of EOBWWO is 5000. In the process of dealing with tension/compression spring constrained optimization problem, first of all we need to determine whether the four constraints are satisfied. If these constraint conditions are all satisfied, then calculate fX according to formula (15) and compare fX with the original fitness values, the better result as fitness value of constrained optimization problem. Otherwise, the original fitness value remains and continues to iterate.Table 9
Statistical results of best tension/compression spring model obtained by EOBWWO.
Worst Best Mean Std 0.012703814 0.012665234 0.012680022 1.20767 E - 5Figure 43
The tension/compression spring problem.In the process of using EOBWWO algorithm to deal with tension/compression spring constrained optimization problem, when the position of individual in current population is changed (create a new solution) and required to estimate the new solution, the steps of dealing with the tension/compression spring constrained optimization problems are as follows.Step 1.
Calculate the values of the four constraint conditions (see (16)–(19)) and estimate whether they are all satisfied with the constraint conditions. If these constraint conditions are all satisfied, go to Step 2; otherwise, go to Step 3.Step 2.
Calculate fitness value of new solution by formula (15), and compare new fitness value to original fitness value. According to the comparison results determine whether to update the current individual. Go to Step 4.Step 3.
Keeping the original individual that violates any constraint, go to Step4.Step 4.
Continue performing the following operations.The reason behind keeping the individual that violates any constraint of the constraint conditions is that each iteration of the population has to implement the elite opposition-based learning (EOBL) strategy and propagation operation; then the individual that violates any constraint may satisfy the constraints in the next iteration.As one of the most well-known design benchmark problems, many researchers have studied this problem. Belegundu [14] introduced this problem and used eight different mathematical optimization techniques for this problem. Arora [15] solved this problem using a numerical optimization technique called a constraint correction at the constant cost. Table 10 summarized the optimal results of design of a tension/compression spring obtained by EOBWWO and other researchers.Table 10
Best results of compression spring by different model.
Researcher(s) Method Design variables f ( X ) x 1 ( d ) x 2 ( D ) x 3 ( N ) Belegundu [14] a 0.05 0.315900 14.25000 0.0128334 Arora [15] b 0.053396 0.399180 9.185400 0.0127303 Coello [16] GA 0.051480 0.351661 11.632201 0.01270478 Coello [17] GA 0.05148 0.35166 11.6322 0.0127 Coello and Montes [18] GA 0.051989 0.363965 10.890522 0.0126810 He et al. [19] PSO 0.05169040 0.35674999 11.28712599 0.0126652812 Coello and Becerra [20] E P c 0.05 0.3174 14.0318 0.01272 Raj et al. [21] E C T d 0.05386200 0.41128365 8.68437980 0.01274840 Hedar and Fukushima [22] S A e 0.051742503409 0.358004783455 11.2139073627 0.012665285 He and Wang [23] PSO 0.051728 0.357644 11.244543 0.0126747 Montes and Coello [24] E S f 0.051643 0.355360 11.397926 0.012698 Omran and Salman [25] C O D E Q g 0.0516837458 0.3565898352 11.2964717107 0.0126652375 Aragón et al. [26] T-cellh 0.05162 0.35511 11.3845 0.01267 Akay and Karaboga [27] ABC 0.051749 0.358179 11.203763 0.012665 Gandomi et al. [28] BA 0.05169 0.35673 11.2885 0.01267 Gandomi [29] I S A i NA NA NA 0.012665 Baykasoğlu and Ozsoydan [30] FA 0.0516674837 0.3561976945 11.3195613646 0.0126653049 Present study EOBWWO 0.05169826 0.356939073 11.2760014 0.012665234 a: mathematical optimization technique; b: numerical optimization technique; c: evolutionary programming; d: evolutionary computational technique; e: simulated annealing; f: evolution strategies; g: chaotic search, opposition-based learning, differential evolution, and quantum mechanics; h: TCA is the T-cell algorithm; i: interior search algorithm; NA: there is no relevant data.As seen from Table10, the proposed method obtained the best design overall of 0.012665234 corresponding to X=(0.05169826,0.356939073,11.2760014) and the results obtained by EOBWWO are better than the comparative methods.


## 4.4.2. Test Problem 2: Design of a Welded Beam

As another well-known design benchmark problem, the objective of welded beam problem is to minimize overall cost of fabrication subject to constraints on shear stressτ, bending stress in the beam σ, buckling load on the bar Pc, end deflection of the beam δ, and side constraints. As depicted in Figure 44 [28], this problem consists of four design variables: thickness of the weld h(x1), the length of the welded joint l(x2), the width of the beam t(x3), and the thickness of the beam b(x4).Figure 44
The welded beam problem.The problem can be formulated as follows:(20)Minimize:fX=1.10471x12x2+0.04811x3x4x2+14(21)Subjectto:g1X=τX-τmax≤0(22)g2X=σX-σmax≤0(23)g3X=x1-x4≤0(24)g4X=0.15-x1≤0(25)g5X=δX-0.25≤0(26)g6X=P-PcX≤0(27)g7X=0.10471x12+0.04811x3x414+x2-5≤0,where(28)τX=τ′2+2τ′τ′′x22R+τ′′2,τ′=P2x1x2,τ′′=MRJ,M=PL+x22,R=x224+x1+x322,J=22x1x2x2212+x1+x322,σX=6PLx32x4,δX=4PL3Ex33x4,PcX=4.013Ex32x46/36L21-x32LE4G,P=6,000lb,L=14in,E=30×106psi,G=12×106psi,X=x1,x2,x3,x4,0.1,0.1,0.1,0.1≤X≤2,10,10,2.EOBWWO algorithm was run to find the minimum cost of fabrication of this design problem, where the range of values of the four experimental parametersx1, x2, x3, x4 is set as follows: (0.1,0.1,0.1,0.1)≤X(x1,x2,x3,x4)≤(2,10,10,2) [30]. Similarly, in the process of searching the minimum overall cost of fabrication, it is also the first to determine whether the seven constraint conditions are satisfied when calculating the fitness value. If these constraint conditions are all satisfied, then make use of formula (20) to calculate fitness value. In each run, EOBWWO is at the cost of 5000-function evaluation to locate the optimal solution. The experimental results of design of a welded beam obtained by EOBWWO are listed in Table 11. Similarly, in the process of searching the minimum overall cost of fabrication, when the position of any individual in the current population is changed and required to estimate the new solution, the steps of using EOBWWO algorithm to deal with welded beam problem are as using EOBWWO algorithm to deal with compression spring.Table 11
The optimal solution of the welded beam design example obtained by EOBWWO.
Worst Best Mean Std 1.71846399 1.69634711 1.70146693 0.005170473The results of comparing with those of other optimization algorithms reported in the literature are shown in Table12. It can be seen from Table 12 remarkably that the proposed EOBWWO algorithm is much better than other algorithms in the design of welded beam, and the optimal solution obtained by EOBWWO is 1.69634711 corresponding to X=(0.205832588,3.253654976,9.0315042,0.25962951).Table 12
The optimal solution of the welded beam design example using different methods.
Researcher(s) Method Design variables f ( X ) x 1 ( h ) x 2 ( l ) x 3 ( t ) x 4 ( b ) Deb [31] GA 0.2489 6.1730 8.1789 0.2533 2.4331 Leite and Topping [32] GA 0.2489 6.1097 8.2484 0.2485 2.4000 Coello [33] GA 0.2088 3.4205 8.9975 0.2100 1.7483 Deb [34] GA NA NA NA NA 2.38 Coello [16] GA 0.208800 3.420500 8.997500 0.210000 1.748309 Hu et al. [35] PSO 0.20573 3.47049 9.03662 0.20573 1.72485084 He et al. [19] PSO 0.2444 6.2175 8.2915 0.2444 2.3810 Liu [36] SA 0.2444 6.2175 8.2915 0.2444 2.3810 Hedar and Fukushima [22] SA 0.205644 3.4725787 9.03662391 0.2057296 1.7250022 He and Wang [23] PSO 0.202369 3.544214 9.048210 0.205723 1.728024 Mahdavi et al. [37] HSA 0.20573 3.47049 9.03662 0.20573 1.7248 Montes and Coello [24] ES 0.199742 3.612060 9.037500 0.206082 1.73730 Fesanghary et al. [38] HHSA 0.20572 3.47060 9.03682 0.20572 1.7248 Kaveh and Talatahari [39] PSO + ABC 0.205729 3.469875 9.036805 0.205765 1.724849 Kaveh and Talatahari [40] ABC 0.205700 3.471131 9.036683 0.205731 1.724918 Gandomi et al. [41] FA 0.2015 3.562 9.0414 0.2057 1.73121 Akay and Karaboga [27] FA 0.205730 3.470489 9.036624 0.205730 1.724852 Gandomi et al. [28] BA 0.2015 3.562 9.0414 0.2057 1.7312 Gandomi [29] ISA NA NA NA NA 2.3812 Baykasoğlu and Ozsoydan [30] FA 0.205730 3.470489 9.036624 0.205730 1.724852 Present study EOBWWO 0.205832588 3.253654976 9.0315042 0.205962951 1.69634711 HAS: harmony search algorithm; HHSA: hybridizing harmony search algorithm.


## 5. Conclusions

In this paper, three strategies are added to the original WWO algorithm to improve the convergence speed and calculation precision of WWO algorithm even further for function optimization and structure engineering design problems. The elite opposition-based (EOB) learning strategy enhances global exploration capability by means of increasing population diversity. The local neighborhood search strategy is introduced to enhance local exploitation capability via enhancing the local search around the promising optimal solution. In addition, the improved propagation operator provides the improved algorithm with a better balance between exploration and exploitation. By using the above-mentioned three strategies, EOBWWO can deal with function optimization including multimodal functions and structural design problems. The results of 20 benchmark functions and two structural design problems in Section4 demonstrated that the performance of EOBWWO is better than the comparative algorithms at most benchmark functions and other solving methods for the two structural design problems. The improved EOBWWO algorithm can significantly improve the convergence speed and calculation precision of the original WWO algorithm. There are various important issues for the further research topics of EOBWWO. On the one hand, structural design problems not only exist in the real world widely, but also are generally nonlinear and constrained optimization problems. Therefore, other design problems can be resolved using EOBWWO in future research, such as multidimensional knapsack problem, permutation flow shop scheduling problem [51], and graph coloring problem. On the other hand, some improvements can be introduced to EOBWWO and WWO algorithm to enhance the ability of dealing with relevant problems. More elaborate set of parameters, such as breaking coefficient β and wavelength reduction coefficient α, multiple population strategy, and combination with other optimization algorithms are some good choices. In addition, multiobjective optimization problems are also the focus in the future research.



---

*Source: 3498363-2017-01-15.xml*