# Semisupervised SVM by Hybrid Whale Optimization Algorithm and Its Application in Oil Layer Recognition

Authors: Yong-ke Pan; Ke-wen Xia; Wen-jia Niu; Zi-ping He
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

In many fields, such as oil logging, it is expensive to obtain labeled data, and a large amount of inexpensive unlabeled data are not used. Therefore, it is necessary to use semisupervised learning to obtain accurate classification with limited labeled data and many unlabeled data. The semisupervised support vector machine (S3VM) is the most useful method in semisupervised learning. Nevertheless, S3VM model performance will degrade when the sample number of categories is not even or have lots of unlabeled samples. Thus, a new semisupervised SVM by hybrid whale optimization algorithm (HWOA-S3VM) is proposed in this paper. Firstly, a tradeoff control parameter is added in S3VM to deal with an uneven sample of category which can cause S3VM to degrade. Then, a hybrid whale optimization algorithm (HWOA) is used to optimize the model parameters of S3VM to increase the classification accuracy. For HWOA improvement, an opposition-based cubic mapping is used to initialize the WOA population to improve the convergence speed, and the catfish effect is used to help WOA jump out of the local optimum and obtain the global optimization ability. In the experiments, firstly, the HWOA is tested by 12 classic benchmark functions of CEC2005 and four functions of CEC2014 compared with the other five algorithms. Then, six UCI datasets are used to test the performance of HWOA-S3VM and compared with the other four algorithms. Finally, we applied HWOA-S3VM to perform oil layer recognition of three oil well datasets. These experimental results show that (1) HWOA has a higher convergence speed and better global searchability than other algorithms. (2) HWOA-S3VM model has higher classification accuracy on UCI datasets than other algorithms when combined, labeled, and unlabeled data are used as the training dataset. (3) The recognition accuracy and speed of the HWOA-S3VM model are superior to the other four algorithms when applied in oil layer recognition.


---

## Body

## 1. Introduction

Semisupervised learning (SSL) [1] is between supervised learning and unsupervised learning, which is taking advantage of both learning methods while using labeled samples to learn and those unmarked samples. Because there is hidden a large amount of available information in the unlabeled data used to assist the classifier’s learning, the classifier’s performance is better. The focus of semisupervised learning research is how to combine these labeled and unlabeled samples organically by using some distribution hypotheses or intrinsic connections between samples through speculating the category labels of unlabeled samples based on available category label sample and domain knowledge. The unlabeled samples can then be converted into labeled samples, merging into labeled in the data, and expand the available training datasets to train a good classifier. Obviously, semisupervised learning can significantly reduce the demand for labeled data and use some structural knowledge of unlabeled samples. Therefore, semisupervised learning has become a new research direction in many fields, for example, in oil logging, the cost of obtaining labeled data is very expensive, and a large amount of inexpensive unlabeled data are not used. So, it has important application value to research semisupervised learning to obtain accurate oil layer recognition results.The current semisupervised learning methods generally have four main paradigms [2], such as a method based on the generative model, a semisupervised SVM method (S3VM) [3], a graph-based method, and a divergent-based method. The method based on the generative model assumes that the generative model generates labeled data and the unlabeled data, which is associated with the learning target through model parameters. In general, the model parameters are estimated by the maximum likelihood using the EM algorithm [4]. The semisupervised SVM method maximizes the interval (margin) of all training data (both labeled and unlabeled) by adjusting the tag assignment of the SVM’s hyperplane and unlabeled data. The graph-based approach [5] considers the association between data samples, mapping the dataset to a graph, and then “propagating” the marked information on the graph. The divergent-based method [6] uses unlabeled data by using multiple learners and the unlabeled data using a learning process multilearning platform for information interaction.S3VM method is widely used among the above semisupervised learning methods. The semisupervised SVM applies to text categorization. Later, the researchers proposed a series of techniques to solve the semisupervised support SVM optimization function nonconvex problem. The main research methods [7] are gradient descent, convex-concave procedure, deterministic annealing, continuation techniques, and semidefinite programming. The abovementioned algorithms can be divided into two categories according to the different objects of the parameters. One is a semisupervised support vector machine based on the combination. The other is a semisupervised support vector machine with a continuous method [8]. Nevertheless, the performance of these S3VM models will degrade when the sample number of categories is not even or when there are lots of unlabeled samples. Thus, the S3VM model needs to be modified to deal with an uneven sample of category which can cause S3VM to degrade. In addition, the parameters of S3VM model need to be optimized to further increase the classification accuracy and using intelligent optimization algorithm to optimize the model parameters is a research hotspot.Intelligent optimization algorithms are generally motivated by specific inspirations such as biological evolutionary mechanisms, hunting patterns, or physical laws in nature, which construct specific theoretical models through simulation and extrapolation to achieve their optimal performance. Based on the different heuristic mechanisms, intelligent optimization algorithms are classified into three categories: evolutionary-based, swarm behavior-based, and physical property-based. The evolutionary-based algorithm mainly includes genetic algorithms (GA) that simulate genetic processes [9] and evolutionary planning of evolutionary processes (evolutionary programming (EP)) [10]. Swarm behavior-based algorithm includes particle swarm optimization (PSO) mimicking bird flock predation [11] and artificial bee colony algorithm (ABC) for deducing honey harvesting behavior of bee colonies [12]. The naked mole-rat algorithm (NMR) [13] simulates the mating patterns of NMRs, etc. Physical properties-based algorithm includes the simulated annealing algorithm derived from the solid annealing principle (SA) [14] and gravitational search algorithm (GSA) [15] which is based on the law of gravity and Newton’s second law. In addition, intelligent optimization algorithms based on new heuristic mechanisms have been continuously proposed, such as the fruit fly optimization algorithm (FOA) that simulates the group foraging behavior of fruit flies [16] and the collision body optimization algorithm (CBO) that simulates the mechanism of object collision velocity change [17].Whale optimization algorithm (WOA) [18] is a newly proposed intelligent optimization algorithm proposed in 2016, which has the advantages of simple principle, few parameter settings, and strong optimization performance. The WOA has been successfully used for optimal capacitor siting [19], carbon dioxide emission prediction [20], clinical medicine [21], image segmentation [22], and wind speed forecasting by optimized SVR [23]. It was also used for the optimization of the node and energy consumption of wireless sensor networks [24, 25], support vector machines and neural networks optimization [26], and other practical problems. The good performance in engineering, medicine, and economics shows that the algorithm has broad application prospects. The basic WOA has the advantage of fewer parameters and better searchability than other algorithms, but it is still easy to fall into local optimum and slow convergence [27, 28]. Therefore, many scholars have proposed some improved algorithms; Kaveh and Ghazaan [29] proposed enhanced WOA, which introduces a random amount in the position update later in the algorithm. Oliva et al. [30] proposed a chaotic WOA based on the chaotic map to adapt the internal parameters of WOA. Hussien et al. [31] offered binary WOA by using two transfer functions to convert the algorithm’s search space into binary. Salgotra et al. [32] proposed an improved WOA based on opposition-based learning, reinitializing the worst particle and decreasing parameters. The result shows the algorithm is competitive compared with WOA. Mohammed et al. [33] combined bat and WOA algorithm; the test result shows the WOA-BAT algorithm is competitive than WOA in multimodal functions. However, these algorithms need to be further improved in convergence speed and accuracy. Most researchers have not focused on population initialization to improve WOA. In literature [32], they have achieved good results in population initialization with opposition-based learning. In literature [31], they have achieved good results in population evolution with chaotic-mapping for WOA, so we try to combine opposition-based learning and chaotic-mapping for population initialization to enhance the WOA population’s local optimization ability. The catfish effect [34] proved to be an excellent strategy to improve the global optimization ability of PSO algorithm, so we introduce catfish effect to WOA to enhance the global optimization ability.In this paper, we propose an improved S3VM, firstly, adding a tradeoff control parameter in S3VM to deal with an uneven sample of category which can cause S3VM to degrade. Then, using a hybrid whale optimization algorithm (HWOA) to optimize the model parameters of S3VM, the HWOA is mainly improved in two aspects; on the one hand, the chaotic population method is used to initialize the whale population to improve the algorithm’s local optimization ability; on the other hand, the population is improved by the catfish effect to improve the algorithm’s overall optimization ability. Finally, the new S3VM model based on the improved WOA algorithm is applied in oil layer recognition.The rest of this paper is organized as follows. The basic semisupervised support vector machine algorithm and its limitations and improvement are briefly introduced in Section2. Section 3.1 presents the basic whale optimization algorithm (WOA). Section 3.2 presents WOA limitations and proposed hybrid WOA. In Section 3, a set of benchmarks are employed to validate the algorithm’s performance by comparing the results with WOA and other algorithms. Section 4 presents the improved S3VM model’s detail combined with HWOA and runs the experiment of 5 UCI datasets compared to other algorithms. Section 5 presents the oil layer recognition system’s detail and how to use improved S3VM model combined with HWOA to do the oil layer recognition.


## 2. The Semisupervised Learning SVM and Its Improvement

### 2.1. Principle of Semisupervised SVM

The SVM in supervised learning tries to find a dividing hyperplane so that the interval between the support vectors on both sides is the largest, that is, the “maximum division interval” idea. For semisupervised learning, the S3VM considers that the hyperplane needs to pass through low data density areas. Transductive support vector machine (TSVM) [35] is the most famous representative of semisupervised support vector machines. The core idea is to find suitable mark assignments for unlabeled samples so that the interval after the hyperplane division is maximized. TSVM uses a local search strategy to solve iteratively. Firstly, training an initial SVM using a labeled sample set and then using the learner to mark unlabeled samples so that all samples are tagged and based on these labeled samples retrain the SVM and then look for error-prone samples to adjust continually.Like the standard SVM, TSVM is also a learning method for the two-class problem. TSVM attempts to consider various possible label assignments for unlabeled samples, like attempting to treat each unlabeled sample as a positive or negative example, and then in all of these results, seeking a dividing hyperplane that maximizes the spacing on all samples (including labeled samples and unlabeled samples). Once the divisional hyperplane is determined, the unlabeled sample’s final marker assignment is its prediction [36].There are labeled data Dl=x1,y1,x2,y2,…,xl,yl and unlabeled data Du=xl+1,xl+2,…,xl+u, and yi∈−1,+1, l≤u, l+u=m. The goal of TSVM is to predict the label y∧ of Du, y^=y^l+1,y^l+2,…,y^l+u, y^i∈−1,+1. The entire algorithm flow is as follows:(1)minω,b,y^ξ12ω22+Cl∑i=1lξi+Cu∑i=l+1mξis.t.yiωTxi+b≥1−ξii=1,2,…,ly^iωTxi+b≥1−ξi,i=l+1,l+2,…,mξi≥0,i=1,2,…,m,where ω,b is determined a divide plane, ξi is the slack variable, Cl and Cu are the tradeoff control parameters which are used in equilibrium model complexity, ξii=1,2,…,l is the labeled sample, and ξii=l+1,l+2,…,m is the unlabeled sample.


### 2.2. Problem Statement of TSVM and Its Improvement

The TSVM uses a local search to find an approximate solution of the equation iteratively. Specifically, it first learns an SVM using labeled samples while it ignores the terms and constraints onDu and y in equation (1). The unlabeled data are then labeled assignment with this SVM. The result of the SVM prediction is assigned to the unlabeled sample as a “pseudolabel.” At this point, y becomes known and substituting it into the equation yields a standard SVM problem, so that a new partitioned hyperplane and relaxation vector can be solved. Note that the pseudomarker of the unlabeled sample at this time is likely to be inaccurate, so Cu should be set to be smaller than Cl which makes the labeled sample work more. Next, TSVM finds two samples whose tags are assigned to be heterogeneous and are likely to be erroneous and then they swap their tags and solve the updated partitioned hyperplane and relaxation vectors based on equation again and then find out two tags are assigned to an unlabeled sample that is heterogeneous and is likely to be in error. After the label assignment adjustment is completed, Cu is gradually increased to increase the influence of the unlabeled sample on the optimization target, and the next round of label assignment adjustment is performed until Cu=Cl.As the unevenness of category sample will disturb the training process of S3VM, in this paper, it will splitCu into Cu+ and Cu−, Cu+=u−/u+Cu−, u+, and u− is the sample number based on pseudolabels as positive and negative examples.In the process of marking adjustment, it can be considered that the samples most likely to be misassigned can be adjusted each time, that is, the samples with the largest slack variable and greater than 1 in the positive and negative marking samples can be changed by marking, which can reduce the number of iterations.So, equation (1) can turn into(2)min12w22+Cl∑i∈Dlξi+Cu+∑i∈Du∩y^i=1ξi+Cu−∑i∈Du∩y^i=−1ξi∀i=1l:yiω⋅xi+b≥1−ξiyi^wTxi+b≥1−ζj,i=l+1…u−i∈Du∩yi^=1yj^wTxi+b≥1−ζn,i=l+1…u−i∈Du∩yj^=−1,∀i=1l:ξi≥0,∀j=1k:ξj∗≥0,where Cl, Cu+, and Cu− are tradeoff control parameters and ξ is the slack variable.The kernel function of S3VM is the radial basis kernel function (RBF). The equation of RBF isKx,xi=exp−γx−xi2, where γ denotes kernel parameters and denotes regularization parameters.


## 2.1. Principle of Semisupervised SVM

The SVM in supervised learning tries to find a dividing hyperplane so that the interval between the support vectors on both sides is the largest, that is, the “maximum division interval” idea. For semisupervised learning, the S3VM considers that the hyperplane needs to pass through low data density areas. Transductive support vector machine (TSVM) [35] is the most famous representative of semisupervised support vector machines. The core idea is to find suitable mark assignments for unlabeled samples so that the interval after the hyperplane division is maximized. TSVM uses a local search strategy to solve iteratively. Firstly, training an initial SVM using a labeled sample set and then using the learner to mark unlabeled samples so that all samples are tagged and based on these labeled samples retrain the SVM and then look for error-prone samples to adjust continually.Like the standard SVM, TSVM is also a learning method for the two-class problem. TSVM attempts to consider various possible label assignments for unlabeled samples, like attempting to treat each unlabeled sample as a positive or negative example, and then in all of these results, seeking a dividing hyperplane that maximizes the spacing on all samples (including labeled samples and unlabeled samples). Once the divisional hyperplane is determined, the unlabeled sample’s final marker assignment is its prediction [36].There are labeled data Dl=x1,y1,x2,y2,…,xl,yl and unlabeled data Du=xl+1,xl+2,…,xl+u, and yi∈−1,+1, l≤u, l+u=m. The goal of TSVM is to predict the label y∧ of Du, y^=y^l+1,y^l+2,…,y^l+u, y^i∈−1,+1. The entire algorithm flow is as follows:(1)minω,b,y^ξ12ω22+Cl∑i=1lξi+Cu∑i=l+1mξis.t.yiωTxi+b≥1−ξii=1,2,…,ly^iωTxi+b≥1−ξi,i=l+1,l+2,…,mξi≥0,i=1,2,…,m,where ω,b is determined a divide plane, ξi is the slack variable, Cl and Cu are the tradeoff control parameters which are used in equilibrium model complexity, ξii=1,2,…,l is the labeled sample, and ξii=l+1,l+2,…,m is the unlabeled sample.


## 2.2. Problem Statement of TSVM and Its Improvement

The TSVM uses a local search to find an approximate solution of the equation iteratively. Specifically, it first learns an SVM using labeled samples while it ignores the terms and constraints onDu and y in equation (1). The unlabeled data are then labeled assignment with this SVM. The result of the SVM prediction is assigned to the unlabeled sample as a “pseudolabel.” At this point, y becomes known and substituting it into the equation yields a standard SVM problem, so that a new partitioned hyperplane and relaxation vector can be solved. Note that the pseudomarker of the unlabeled sample at this time is likely to be inaccurate, so Cu should be set to be smaller than Cl which makes the labeled sample work more. Next, TSVM finds two samples whose tags are assigned to be heterogeneous and are likely to be erroneous and then they swap their tags and solve the updated partitioned hyperplane and relaxation vectors based on equation again and then find out two tags are assigned to an unlabeled sample that is heterogeneous and is likely to be in error. After the label assignment adjustment is completed, Cu is gradually increased to increase the influence of the unlabeled sample on the optimization target, and the next round of label assignment adjustment is performed until Cu=Cl.As the unevenness of category sample will disturb the training process of S3VM, in this paper, it will splitCu into Cu+ and Cu−, Cu+=u−/u+Cu−, u+, and u− is the sample number based on pseudolabels as positive and negative examples.In the process of marking adjustment, it can be considered that the samples most likely to be misassigned can be adjusted each time, that is, the samples with the largest slack variable and greater than 1 in the positive and negative marking samples can be changed by marking, which can reduce the number of iterations.So, equation (1) can turn into(2)min12w22+Cl∑i∈Dlξi+Cu+∑i∈Du∩y^i=1ξi+Cu−∑i∈Du∩y^i=−1ξi∀i=1l:yiω⋅xi+b≥1−ξiyi^wTxi+b≥1−ζj,i=l+1…u−i∈Du∩yi^=1yj^wTxi+b≥1−ζn,i=l+1…u−i∈Du∩yj^=−1,∀i=1l:ξi≥0,∀j=1k:ξj∗≥0,where Cl, Cu+, and Cu− are tradeoff control parameters and ξ is the slack variable.The kernel function of S3VM is the radial basis kernel function (RBF). The equation of RBF isKx,xi=exp−γx−xi2, where γ denotes kernel parameters and denotes regularization parameters.


## 3. The Whale Optimization Algorithm (WOA) and Its Improvement

### 3.1. Whale Optimization Algorithm

According to the hunting behavior of the humpback whale group, the WOA algorithm abstracts three behaviors including prey, bubble-net attack, and random search.


#### 3.1.1. Surrounded by Prey

Each whale represents an individual, and each individual represents a solution in the location of the search space. The whale can identify the prey’s position and surround the prey by echolocation. The updating equation of whale position is as follows:(3)Xt+1=Xgbestt−A⋅C⋅Xgbestt−Xt,where t is the current number of iterations, Xt is the current position vector; Xgbestt=Xgbest1t,Xgbest2t,…,XgbestDt is the current best position vector, D is the vector dimension,A⋅C⋅Xgbestt−Xt are surround steps, and A and C are the coefficient vectors.The coefficient vectorsA and C are defined as follows:(4)A=2a⋅rand1−a,C=2⋅rand2,where rand1 and rand2 are random numbers in the range of [0, 1] by using uniform distribution and a is the convergence factor.The convergence factora will decrease linearly from 2 to 0 while iterations increase, as follows:(5)a=2−2ttmax,where tmax is the maximum number of iterations.


#### 3.1.2. Bubble-Net Attack

As the bubble-net foraging behavior shows the whales attack the prey by spiraling and bunching them even tighter, so shrink-wrapping mechanism and spiral updating location method are designed to describe the bubble-net foraging behavior mathematically.Shrink-wrapping mechanism is achieved by the decreasing of convergence factor which has been shown in equation (5); meanwhile, the wave range of coefficient vector A will be decreased by convergence factor a. This means when the convergence factor a is decreased from 2 to 0 within iteration, the wave range of coefficient vector A is [−a, a]. When the coefficient vector A is a random number from [−1, 1], the whale, at time t + 1, will be in any location between the location at time t and the global optimum location at time t + 1, which means the whale always swims within the shrink encirclement. Spiral updating location method means the whales move spirally to prey; the mathematical model is shown as follows:(6)Xt+1=Xgbestt+D⋅ebl⋅cos2πl,where D=Xgbestt−Xt, D means the distance between the whales and the global optimum individual, b is a constant to limit logarithmic spiral shape, and l is a random number in the range of [−1, 1].The whales swim in the prey shrink range along a spiral path. In order to simulate this synchronous behavior, during the optimization process, assume the probability of selected shrink-wrapping mechanism and the spiral update location is assumed to be 0.5; synchronous behavior mathematical model is(7)Xt+1=Xgbestt−A⋅C⋅Xgbestt−Xt,p<0.5,Xgbestt+D⋅ebl⋅cos2πl,p≥0.5,where p is a random number in the range of [0, 1] produced by uniform distribution.


#### 3.1.3. Random Search

When a coefficient vectorA>1, it means the whales are swimming outside of the shrink encirclement; at the same time, each whale will search each other randomly according to its location; its mathematical model is(8)Xt+1=Xrandt−A⋅C⋅Xrandt−Xt,where Xrandt is an individual whale position vector, who is selected randomly.


### 3.2. A Hybrid Whale Optimization Algorithm (HWOA)

#### 3.2.1. Problem Statement of WOA

As mentioned above, Section3.1 shows the main parameters of WOA algorithm which are coefficient vectors A and C, whereby A is crucial to local development capability and global exploration capability of WOA algorithm. If |A| > 1, the whales will expand the search scope to find a better candidate solution; this is the global exploration ability of WOA algorithm. If |A| < 1, the whales will reduce the search scope; they will search accurately in a local area; this means WOA algorithm has local development capability. While parameter A depends on convergence factor a, a lager convergence factor will have a better global exploration ability to avoid the algorithm falling into local optimum situation; a smaller convergence factor will have a better local exploration ability to faster convergence speed of the algorithm [30].The basic principle of WOA uses the random way to initial population, but this may cause the uneven distribution of population and the substandard diversity of the population. Most researchers did not focus on the population initialization of WOA, but literature [32] uses opposition-based learning for population initialization and gets good results. Luo and Shi [37] argue that higher initial population diversity can improve the heuristic search algorithm’s search efficiency and that spreading the initial population in the search range as much as possible when the global optimal solution unknown can provide an excellent global search basis in the early stage of the algorithm. In [38], chaotic theory was combined with the whale algorithm which can improve the whale algorithm using several chaotic maps. In [39, 40], the swarm intelligence algorithms with improved population diversity using a chaotic map give good results. This is because the chaotic map has the characteristics of randomness, regularity, and boundedness. It is sensitive to initial values and can traverse all states in a certain range without repetition according to its own laws. So, we propose a strategy of WOA population initialization based on opposition-based learning and cubic mapping to improve the global search ability and convergence speed of WOA, which is called the opposition-based cubic mapping whale optimization algorithm (OCWOA).Chuang et al. [34] introduced catfish effect to improve the searchability and jump out of the local optimum of PSO, and the results show that the catfish effect can improve the searchability of the algorithm. Similarly, we can also introduce catfish effect to improve the searchability of WOA. So, we propose a WOA based on catfish effect, which is called CWOA in this paper.Moreover, by combining OCWOA with CWOA, we further propose the hybrid whale optimization algorithm (HWOA) which is improved by opposition-based learning cubic mapping theory and catfish effect.


#### 3.2.2. The Opposition-Based Cubic Mapping Whale Optimization Algorithm (OCWOA)

This section presents opposition-based cubic mapping (OBCM) to initialize the whale population’s position, strengthen the diversity of the population, and lay the foundation for global search. As the literature [39] shows, we choose cubic mapping as the function.In order to show that cubic mapping generates a more uniform population than random generate, we use random generation and cubic mapping to generate 10,000 random numbers in the range −1 to 1 to know the different distribution between cubic mapping and random generate. We used a simulation graph to show the sequence distribution comparison graph between cubic mapping generated populations and randomly generated populations in Figure1.Figure 1
Sequence distribution of cubic mapping and random.Figure1 shows that we divide the horizontal coordinate into deciles to determine the number of random numbers generated by the two methods in each interval. The horizontal coordinates represent the percentage interval ranging from −1 to 1, and the vertical coordinates represent the number of generations.As seen in Figure1, cubic mapping is more uniform than a random generation, which improves the initialization of the population and can effectively improve the global search ability of the population.The mathematical expression of cubic mapping is shown as follows:(9)yn+1=4yn3−3yn,−1≤yn≤1,n=0,1,2,….There are five steps to generate an opposition-based cubic mapping population:Step 1: generate a D-dimensional vector randomly according toM whales’ population of D-dimensional space. As the first individual of whale population, which means Y=y1,y2,…,yd,yi∈−1,1,1≤i≤d, where Y is the individual of whale population, yi is the dimension of Y, and the range of yi is from −1 to 1.Step 2: iterateM − 1 times in every dimension of Y by equation (9), which will generate other M − 1 whales’ population and will generate initial population X=Xi,i=1,2,…,N, where X is the whole population of whale based on cubic mapping.Step 3: mapping the generated chaotic variables to the solution of search space by equation (11):(10)Xid=Ld+1+yidUd−Ld2,whereUd and Ld represent the upper and lower limits of D-dimension of search space, respectively, yid is the D-dimension of i-th whale calculated by equation (9), and Xid is the D-dimension coordinate of the i-th whale.Step 4: use opposition-based learning to generate a reverse populationOXid based on Xid of equation (11).The opposition-based learning equation ofOXid is shown as follows:(11)OXid=Ud+Ld−Xid.Step 5: merge theX and OXid to generate a new population X∪OXid, and calculate the objective function values of the new population and rank them. Then, pick the best fitness of M individuals as the initial population.The abovementioned algorithm is called the opposition-based cubic mapping whale optimization algorithm (OCWOA).


#### 3.2.3. WOA Based on Catfish Effect (CWOA)

The basic idea of catfish effect is to introduce catfish into sardine’s population to eliminate the sardines with no vitality. Catfish effect supposes if the global optimal solution does not evolve in a specific algebra of the iteration process, in that case, it will initialize 60% of the worst individual solution particles (no active sardines) to restore group vitality. This strategy is to improve the global search capability of the algorithm, because in the later iteration stage of WOA algorithm, all of the whale individuals in the population aggregate to the optimal individual location. This leads to the loss of diversity within the population and premature convergence of the algorithm to a nonglobal optimal state, which will cause premature convergence. So, the WOA based on catfish effect is named CWOA. When the global optimal solution of WOA does not evolve in a certain time of iteration process, it will proceed to opposition-based cubic mapping mutation equations (9)–(11) as catfish effect. The flow chart of CWOA is shown in Figure 2.Figure 2
Flow chart of CWOA.According to the OCWOA and CWOA, here, we can get the hybrid whale optimization algorithm (HWOA), which is improved by opposition-based learning cubic mapping theory for population initialization and catfish effect for population update, and the flow chart of HWOA is shown in Figure3.Figure 3
Flow chart of HWOA.So, the pseudocode of the hybrid WOA algorithm (HWOA) is shown in Algorithm1.Algorithm 1:The hybrid WOA algorithm (HWOA). The pseudocode of HWOA.
Input: number of search agents: 30Maximum of iterations: 500Output: best search agent:XgbestProcedure:(1)
Initialize the whale’s populationXii=1,2,3,…,n with the opposition-based cubic mapping in Section 3.2.1. Calculate the fitness of each search agent; select Xgbest.Xgbest is the best search agent(2)
while (t < maximum iterations)(3)
for each search agent(4)
updatea, A, C, L, and pif 1(p<0.5)if 2(|A| < 1)(5)
update the position of search agent using equation (3)else 2(|A| > 1)(6)
Select a random search agent (Xrand)(7)
Update the position of search agent using equation (9)end if 2else 1(p>0.5)(8)
update the position with spiral equation (8)end if 1(9)
CHECK if any search agent goes beyond the search space and amend it. Calculate fitness of each search agent(10)
UpdateXgbest if there is a better solution and record Xgbest and its iteration.If 3Xgbest did not evolve in 5 iterations, then ranking the search agent fitness forms best to worst, and initialize the position of 60% worst search agent with opposition-based cubic mapping in Section 3.2.1.end if 3end fort = t + 1end whilereturnXgbest


### 3.3. Experiment and Result Analysis of HWOA

#### 3.3.1. Experiment Environment, Parameter Setting, and Test Suit

In the paper, all of the experimental environment includes a 2.40 GHz Intel(R) Core TM i7-3630QM CPU with RAM of 8 GB in the Windows 7 system. Each of the experiments was repeated 30 times independently on MATLAB 2017.In order to verify the effectiveness and generalization of the proposed algorithm, we compare the HWOA with WOA [18], OEWOA [32], WOA-BAT [33], OCWOA, and CWOA on 16 benchmark functions: F1–F12 from CEC2005 [41] and F13–F16 from CEC2014 [42], where F1–F4 are unimodal benchmark functions, F5–F8 are multimodal benchmark functions, and F9–F12 are fixed-dimensions multimodal benchmark functions. F13–F16 are composite functions. The results of function F1–F4 will show the exploitation and convergence ability of the algorithm, the results of function F5–F12 will reflect the exploitation capability of the algorithm, and function F13–F16 will test the algorithm to balance exploration and exploitation.The detailed information of benchmark functions is shown in Table1. Table 1 includes the function type, range of variation of optimization variables, optimal value fmin, and design variables, Dim. The parameter settings of the five algorithms are shown in Table 2.Table 1
Description of 16 benchmark functions.
Function typeDimRangefminF1x=∑i=1nxi230[−100, 100]0F2x=∑i=1nxi+∏i=1nxi30[−100, 100]0F3x=∑i=1n∑j−1ixj230[−100, 100]0F4x=∑i=1D−1100xi2−xi+12+xi−1230[−100, 100]0F5x=∑i=1n−xisinxi30[−500, 500]−418.9829 × 5F6x=∑i=1nxi2−10cos2πxi+1030[−5.12, 5.12]0F7x=−20exp−0.21/n∑i=1nxi2−exp1/n∑i=1ncos2πxi+20+e30[−32, 32]0F8x=1/1010sin23πx1+∑i=1D−1xi−121+sin23πxi+1+xD−121+sin22πxD+∑i=1Duxi,5,100,430[−50, 50]0F9x=1/500+∑j=1251/j+∑i=12xi−aij6−12[−65, 65]1F10x=∑i=111ai−x1bi2+b1x2/bi2+bix3+x424[−5, 5]0.00030F11x=4x12−2.1x14+1/3x16+x1x2−4x22+4x242[−5, 5]−1.0316F12x=x2−5.1/4π2x12+5/πx1−62+101−1/8πcosx1+102[−5, 5]0.398F13 composition function 1 [43]N=5,σ=10,20,30,40,50λ=1,1e−6,1e−26,1e−6,1e−6Bias=0,100,200,300,400g1:rotated Rosenbrock′s functionF4′g2:high conditioned elliptic functionF1′g3:rotated bent cigar functionF2′g4:rotated discuss functionF3′g5:high conditioned elliptic functionF1′D[−100,100]2300F14 composition function 2 [43]N=3,σ=20,20,20λ=1,1,1Bias=0,100,200g1:Schwefel’s functionF10′g2:rotated Rastrigin’s functionF9′g3:rotated HGBat functionF14′D[−100,100]2400F15 composition function 3 [43]N=3,σ=10,30,50λ=0.25,1,1e−7Bias=0,100,200g1:rotated Schwefel’s functionF11′g2:rotated Rastrigin’s functionF9′g3:rotated high conditioned elliptic functionF1′D[−100,100]2500F16 composition function 4 [43]N=5,σ=10,10,10,10,10λ=0.25,1,e−7,2.5,10Bias=0,100,200,300,400g1:rotated Schwefel’s functionF11′g2:rotated happy cat functionF9′g3:rotated high conditioned elliptic functionF1′g4:rotated Weierstrass functionF6′g5:rotated Griewank’s functionF7′D[−100, 100]2600Table 2
Parameter setting of six algorithms.
AlgorithmParameter settingsWOANumber of iteration is 500, a decreases linearly from 2 to 0OEWOANumber of iteration is 500, a decreases linearly from 2 to 0CWOANumber of iteration is 500, a decreases linearly from 2 to 0OCWOANumber of iteration is 500, a decreases linearly from 2 to 0WOA-BATNumber of iteration is 500, a decreases linearly from 2 to 0HWOANumber of iteration is 500, a decreases linearly from 2 to 0This experiment will compare the speed of convergence, and the optimization accuracy of six algorithms on the benchmark function at the same population size, number of iterations, and number of runs. So, the maximum iteration is set to 500, and each algorithm will run 30 times independently. We use the mean and standard deviation of the optimal target value as the basis for performance evaluation.At first, we use different populations of 30 and 60 when dimension = 30 to test the performance of the six algorithms. In this part, we will find out whether different population sizes affect the test results. The results are shown in Tables3 and 4.Table 3
Result of HWOA compared with other algorithms with population size 30.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean6.981E − 733.73E − 1721.14E − 063.28E − 8900Std3.66E − 756.66E − 1253.98E − 054.58E − 7900F2Mean6.475E − 565.12E − 2870.0047694.75E − 1668.88E − 1750Std4.58E − 553.24E − 2520.0025873.14E − 1337.78E − 1550F3Mean5.71E + 0409.53E − 061.55E − 1688.47E − 3000Std3.52E + 0307.56E − 051.57E − 1566.74E − 2890F4Mean28.013527.88471.19E + 0128.806627.756428.7891Std0.42170.35471.12E + 010.33520.35750.2231F5Mean−12554.44−12568.45−12569.48−11821.96−12569.41−12568.62Std695.121152.32257.21493.25351.21321.15F6Mean004.28E − 04000Std003.56E − 03000F7Mean7.99E − 158.88E − 160.0012328.88E − 168.88E − 168.88E − 16Std6.98E − 147.98E − 150.12587.55E − 157.43E − 155.61E − 15F8Mean0.17110.222111.073E − 021.27470.0073760.24186Std0.05120.15472.63E − 022.96310.015630.01423F9Mean2.11910.9981.12512.5881.23810.998Std2.49811.57E − 160.58121.57820.89322.3E − 17F10Mean0.00124380.000615460.00030760.00036440.000329270.0003145Std0.0009870.0002510.0001570.0001690.0001880.000144F11Mean−1.0316−1.0313−1.0316−1.0316−1.0316−1.0316Std4.21E − 075.87E − 123.21E − 132.23E − 174.34E − 111.24E − 19F12Mean0.397890.397950.397890.397920.39840.39801Std3.98E − 05001.25E − 042.25E − 062.21E − 07F13Mean2767.177925002500.030225002786.67052500Std0.66810.66810.45720.35810.12580.1158F14Mean2604.043526002600.007526002603.35452600Std0.123400.002100.15230F15Mean2723.322727002700.0006270027002700Std1.73101.86E − 04000F16Mean2701.393927982722275527692706.4615Std3.43E − 017.138.325.219.323.53E − 01Table 4
Result of HWOA compared with other algorithm with population size 60.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean1.50E − 933.73E − 2022.24E − 083.28E − 9800Std5.72E − 837.44E − 1255.88E − 066.78E − 8200F2Mean8.85E − 576.22E − 2890.0048721.75E − 1062.1006E − 1810Std3.68E − 574.24E − 2610.0025873.14E − 1037.78E − 1550F3Mean2.27E + 042.87E + 041.051E − 053.71E + 046.91E − 3160Std1.32E + 031.02E + 042.24E − 051.22E + 035.54E − 3100F4Mean27.011227.784111.35E + 0128.778927.789526.4571Std0.42210.78910.35980.37140.34470.2778F5Mean−12569.38−12569.32−12569.4866−11921.66−12569.0193−12569.45Std221.23152.32124.31313.75351.36321.24F6Mean002.17E − 04000Std004.33E − 03000F7Mean7.99E − 158.88E − 160.0057728.88E − 168.88E − 168.88E − 16Std6.72E − 147.88E − 154.72E − 026.32E − 151.22E − 156.55E − 15F8Mean0.051270.020411.99E − 021.01780.0123930.07941Std0.0032120.015683.77E − 030.98720.007630.01231F9Mean0.9980.9980.9981.32450.9980.998Std1.22E − 321.57E − 161.87E − 231.57820.89323.2E − 17F10Mean0.00047640.00030940.000307490.00032120.00033240.0003224Std0.00022370.00014570.00015470.00014570.00014410.000122F11Mean−1.0316−1.0316−1.0316−1.0316−1.0316−1.0316Std2.31E − 225.45E − 183.77E − 194.33E − 211.25E − 222.55E − 23F12Mean0.397890.39790.397890.397920.39830.39801Std3.88E − 05001.45E − 042.78E − 062.31E − 07F13Mean2833.177925002500.0541250025002500Std33.22100.3372000F14Mean2600.351226002600.007526002600.34782600Std0.123400.0122100.01240F15Mean270027002700.0002270027002700Std0.923102.33E − 04000F16Mean2700.562800.522705.322755.2328002755.11Std2.13E − 034.13E + 016.13E + 012.25E + 006.13E + 019.63E + 00Then, we use the different dimensions of 50 and 100 when the population size is 30. In this part, we will find out whether different dimension sizes affect the test results. The results are shown in Tables5 and 6.Table 5
Result of HWOA compared with another algorithm with dimension 50.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean1.2278E − 802.79E − 1277.83E − 068.6008E − 541.9763E − 3230Std4.63E − 835.54E − 1154.33E − 057.54E − 512.48E − 3190F2Mean7.4197E − 541.1564E − 2750.00445932.714E − 571.1326E − 1770Std4.79E − 536.31E − 2670.0025873.14E − 537.78E − 1550F3Mean5.23E + 0408.18E − 068.81E + 043.34E − 3210Std2.26E + 0306.34E − 053.21E + 036.58E − 3190F4Mean48.352848.34219.4692948.637848.519548.3739Std0.31210.578218.42310.45210.45710.2425F5Mean−19273.83−18485.0977−20881.1444−14998.407−20147.344−20865.71Std159.54163.33135.21211.52354.45225.25F6Mean000.00092049000Std005.24E − 05000F7Mean4.44E − 158.88E − 160.00136371.04E − 138.88E − 168.88E − 16Std5.77E − 146.85E − 154.86E − 027.25E − 152.43E − 156.55E − 16F8Mean0.773430.078415.66E − 021.31780.091850.0875Std0.0045120.017871.71E − 020.89710.0014570.0254F13Mean2911.179825002500.08250025002500Std9.81E + 0004.56E − 03000F14Mean2600.881226002600.002126002600.00832600Std0.102100.0033500.003240F15Mean270027002700.00018270027002700Std003.65E − 07000F16Mean2800.085828002751.232755.2328002800Std3.31E − 025.56E + 017.65E + 003.35E + 007.54E + 018.63E + 00Table 6
Result of HWOA compared with other algorithms with dimension 100.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean4.27E − 7503.09E − 052.65E − 8500Std3.65E − 7405.12E − 042.66E − 8300F2Mean2.73E − 512.23E − 2740.0444232.67E − 713.04E − 1780Std1.78E − 508.34E − 2610.0036972.55E − 694.78E − 1560F3Mean1.18E + 0601.24E − 043.71E + 0500Std2.45E + 0303.75E − 057.28E + 0300F4Mean98.180698.100739.4692398.404298.024298.3011Std6.21E − 017.89E − 018.55E + 013.71E − 013.56E − 073.21E − 01F5Mean−29948.77−41897.40−41898.2887−31886.764−31896.7649−41898.71Std256.12186.31109.32325.21345.78112.45F6Mean001.25E − 03000Std003.34E − 02000F7Mean4.44E − 158.88E − 160.00193217.88E − 168.88E − 168.88E − 16Std3.23E − 146.45E − 163.55E − 027.45E − 151.34E − 156.23E − 15F8Mean3.05210.658481.70E − 022.09653.03180.46097Std3.21E − 011.56E − 022.21E − 039.87E − 017.63E − 031.23E − 01F13Mean250025002500.1481250025002500Std000.012489000F14Mean2600.04126002600.047726002600.54872600Std0.00213400.00567700.0098510F15Mean270027002700.0003270027002700Std003.65E − 04000F16Mean278928002791279828002800Std3.13E + 001.54E + 017.23E + 013.78E + 005.22E + 008.45E + 00


#### 3.3.2. Analysis of Exploitation Capability When Population Size Changes

In this section, it compares six algorithms in different situations when population changes and dimension = 30, and the fixed-dimension function (F9-F12) will stay the fixed-dimension. The result of the experiment will be discussed separately.Table3 shows the optimization results of 16 benchmark functions. Among the unimodal functions (F1–F4), HWOA can get the exact optimal solution of F1–F3, which proves that HWOA has profitable exploitation among six algorithms. For multimodal function (F5–F8), WOA-BAT obtains better optimal solution in F5 and F8. The exact optimal solutions of HWOA, WOA, OEWOA, CWOA, and OCWOA are obtained in F6. HWOA gets best mean and standard deviation of the optimal target value in F7. For the fixed-dimension function (F9–F12), HWOA outperforms the other five algorithms in F9, F11, and F12. WOA-BAT is good in F10. For composite function (F13–F16), HWOA is competitive with other algorithms. The results can infer that HOWA which is better than the other algorithms on different types of benchmark functions. Comparing CWOA, OCWOA, and WOA algorithm, F1 to F15 show that the mean and standard deviation of the optimal target value of OCWOA CWOA is much better than that of WOA. It means that the opposition-based cubic mapping strategy and catfish strategy to improve WOA are successful.Table4 shows the optimization results of 16 benchmark functions. Among the unimodal functions (F1–F4), HWOA is still competitive compared with other algorithms in F1–F3, but WOA-BAT is the only one that can jump out of local optimum in F4. For multimodal function (F5–F8), HWOA gives the best optimal value on F6 and F7. WOA-BAT reaches the better result in F5 and F8. For fixed-dimension function (F9–F12), HWOA outperforms on F11, but still has an advantage on the other three functions. For the composite function (F13–F16), HOWA is still competitive compared with another algorithm.In summary, the most results of Tables3 and 4 just have some minor differences. But as the population increases, the computational complexity grows. As the population changes from 30 to 60, the results of all algorithms have been improved a bit, and still, HWOA can get the best optimal value of 11 functions in Table 3 and 10 functions in Table 4. The performance of CWOA and OCWOA is still better than that of WOA in most functions, which shows that the proposed strategy to improve the WOA is a success. Overall, HWOA is better than the other five algorithms in different population sizes.


#### 3.3.3. Analysis of Exploitation Capability When Dimension Changes

In this section, we compare six algorithms in different situations when the dimension changes and population size = 30. The fixed-dimension function (F9–F12) cannot do the experiment because the dimension is fixed. The result of the experiment will be discussed separately. Table5 shows the optimization results of 16 benchmark functions when the dimension is 50.From Table5, HWOA provides best results for the functions F1, F2, and F3. For function F4, results of HWOA are still comparable while WOA-BAT gets better result. Results are quite comparable for function F5, but HWOA has a better mean value. For function F7, HWOA is better and provides good value of best solution and standard deviation. Only HWOA provides the exact solution for function F8. HOWA provides good results in F13, F14, and F15. In total, for this case, WOA is good for only one function, HWOA is good for eight functions, and OEWOA is good for three functions, WOA-BAT is good for three functions, OCWOA is good for four functions, and CWOA is good for three functions.Table6 shows the optimization results of 16 benchmark functions when the dimension is 100.In Table6, for functions F1 and F2, only HWOA is able to provide global solution, while other algorithms fall into at some local values. OEWOA and HWOA provide better results for function F3. The best solution obtained by WOA-BAT is better for function F4. For function F5, HWOA is considered as the best algorithm though the results. OEWOA outperforms other algorithms for function F6 and F7, but HWOA is still competitive compared with other four algorithms. For function F8, WOA-BAT provides better value. HOWA provides good results in F13, F14, and F15. Thus, for the dimension size of 100, WOA is good for four functions, HWOA is good for eight functions, CWOA is good for five functions, OCWOA is good for four functions, WOA-BAT is good for two functions, and OEWOA is good for seven functions.From Tables5 and 6, it can be inferred that the complexity of the problem increases with the increase of dimension size. Due to this reason, the performance of all algorithms decreases. HWOA is good for eight functions in Tables 5 and 6. The result shows that HWOA has better performance over other algorithms.


#### 3.3.4. Analysis of Convergence Behavior

The convergence curves of the CWOA, WOA, HWOA, OEWOA, WOA-BAT, and OCWOA are provided in Figure4 to see the convergence speed of the algorithms.Figure 4
Average best fitness for six algorithms on 16 benchmark functions. (a) F1, (b) F2, (c) F3, (d) F4, (e) F5, (f) F6, (g) F7, (h) F8, (i) F9, (j) F10, (k) F11, (l) F12, (m) F13, (n) F14, (o) F15, and (p) F16.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)The data of convergence graph is from Table3.From Figure4, compared with standard WOA, CWOA, OCWOA, and OEWOA, WOA-BAT and HWOA have the fastest convergence speed in F1, F2, F3, F6, F7, F9, F10, F12, F13, F14, and F15, which means HWOA can effectively save the search time. The convergence curve of HWOA proves that the ability of HWOA to jump out of the local optimum is effectively enhanced compared with WOA. Therefore, the HWOA algorithm has a more vital ability to jump out of the local optimum than the other five algorithms.


#### 3.3.5. Summary of Results

The result of OCWOA shows that using the opposition-based cubic mapping strategy to initializing the population of WOA is success. The OCWOA has faster convergence speed and better searchability than original WOA.The result of CWOA shows that using the catfish effect in WOA has effectively enhanced the convergence speed and searchability of WOA.From the results of Section3.3.2–3.3.4, the proposed version of CWOA and OCWOA is better than the original WOA. The result demonstrates the success of the improvements to WOA using catfish effect and opposition-based cubic mapping.Although HWOA is the best algorithm compared to other five algorithms in the experiment part, however, HOWA does not get good results in multimodal benchmark functions part. So, there will be more work to improve the performance of HOWA in multimodal benchmark functions. We could introduce the different exponentially decreasinga⟶ to improve the exploration and exploitation of HWOA on multimodal benchmark functions.


## 3.1. Whale Optimization Algorithm

According to the hunting behavior of the humpback whale group, the WOA algorithm abstracts three behaviors including prey, bubble-net attack, and random search.


### 3.1.1. Surrounded by Prey

Each whale represents an individual, and each individual represents a solution in the location of the search space. The whale can identify the prey’s position and surround the prey by echolocation. The updating equation of whale position is as follows:(3)Xt+1=Xgbestt−A⋅C⋅Xgbestt−Xt,where t is the current number of iterations, Xt is the current position vector; Xgbestt=Xgbest1t,Xgbest2t,…,XgbestDt is the current best position vector, D is the vector dimension,A⋅C⋅Xgbestt−Xt are surround steps, and A and C are the coefficient vectors.The coefficient vectorsA and C are defined as follows:(4)A=2a⋅rand1−a,C=2⋅rand2,where rand1 and rand2 are random numbers in the range of [0, 1] by using uniform distribution and a is the convergence factor.The convergence factora will decrease linearly from 2 to 0 while iterations increase, as follows:(5)a=2−2ttmax,where tmax is the maximum number of iterations.


### 3.1.2. Bubble-Net Attack

As the bubble-net foraging behavior shows the whales attack the prey by spiraling and bunching them even tighter, so shrink-wrapping mechanism and spiral updating location method are designed to describe the bubble-net foraging behavior mathematically.Shrink-wrapping mechanism is achieved by the decreasing of convergence factor which has been shown in equation (5); meanwhile, the wave range of coefficient vector A will be decreased by convergence factor a. This means when the convergence factor a is decreased from 2 to 0 within iteration, the wave range of coefficient vector A is [−a, a]. When the coefficient vector A is a random number from [−1, 1], the whale, at time t + 1, will be in any location between the location at time t and the global optimum location at time t + 1, which means the whale always swims within the shrink encirclement. Spiral updating location method means the whales move spirally to prey; the mathematical model is shown as follows:(6)Xt+1=Xgbestt+D⋅ebl⋅cos2πl,where D=Xgbestt−Xt, D means the distance between the whales and the global optimum individual, b is a constant to limit logarithmic spiral shape, and l is a random number in the range of [−1, 1].The whales swim in the prey shrink range along a spiral path. In order to simulate this synchronous behavior, during the optimization process, assume the probability of selected shrink-wrapping mechanism and the spiral update location is assumed to be 0.5; synchronous behavior mathematical model is(7)Xt+1=Xgbestt−A⋅C⋅Xgbestt−Xt,p<0.5,Xgbestt+D⋅ebl⋅cos2πl,p≥0.5,where p is a random number in the range of [0, 1] produced by uniform distribution.


### 3.1.3. Random Search

When a coefficient vectorA>1, it means the whales are swimming outside of the shrink encirclement; at the same time, each whale will search each other randomly according to its location; its mathematical model is(8)Xt+1=Xrandt−A⋅C⋅Xrandt−Xt,where Xrandt is an individual whale position vector, who is selected randomly.


## 3.1.1. Surrounded by Prey

Each whale represents an individual, and each individual represents a solution in the location of the search space. The whale can identify the prey’s position and surround the prey by echolocation. The updating equation of whale position is as follows:(3)Xt+1=Xgbestt−A⋅C⋅Xgbestt−Xt,where t is the current number of iterations, Xt is the current position vector; Xgbestt=Xgbest1t,Xgbest2t,…,XgbestDt is the current best position vector, D is the vector dimension,A⋅C⋅Xgbestt−Xt are surround steps, and A and C are the coefficient vectors.The coefficient vectorsA and C are defined as follows:(4)A=2a⋅rand1−a,C=2⋅rand2,where rand1 and rand2 are random numbers in the range of [0, 1] by using uniform distribution and a is the convergence factor.The convergence factora will decrease linearly from 2 to 0 while iterations increase, as follows:(5)a=2−2ttmax,where tmax is the maximum number of iterations.


## 3.1.2. Bubble-Net Attack

As the bubble-net foraging behavior shows the whales attack the prey by spiraling and bunching them even tighter, so shrink-wrapping mechanism and spiral updating location method are designed to describe the bubble-net foraging behavior mathematically.Shrink-wrapping mechanism is achieved by the decreasing of convergence factor which has been shown in equation (5); meanwhile, the wave range of coefficient vector A will be decreased by convergence factor a. This means when the convergence factor a is decreased from 2 to 0 within iteration, the wave range of coefficient vector A is [−a, a]. When the coefficient vector A is a random number from [−1, 1], the whale, at time t + 1, will be in any location between the location at time t and the global optimum location at time t + 1, which means the whale always swims within the shrink encirclement. Spiral updating location method means the whales move spirally to prey; the mathematical model is shown as follows:(6)Xt+1=Xgbestt+D⋅ebl⋅cos2πl,where D=Xgbestt−Xt, D means the distance between the whales and the global optimum individual, b is a constant to limit logarithmic spiral shape, and l is a random number in the range of [−1, 1].The whales swim in the prey shrink range along a spiral path. In order to simulate this synchronous behavior, during the optimization process, assume the probability of selected shrink-wrapping mechanism and the spiral update location is assumed to be 0.5; synchronous behavior mathematical model is(7)Xt+1=Xgbestt−A⋅C⋅Xgbestt−Xt,p<0.5,Xgbestt+D⋅ebl⋅cos2πl,p≥0.5,where p is a random number in the range of [0, 1] produced by uniform distribution.


## 3.1.3. Random Search

When a coefficient vectorA>1, it means the whales are swimming outside of the shrink encirclement; at the same time, each whale will search each other randomly according to its location; its mathematical model is(8)Xt+1=Xrandt−A⋅C⋅Xrandt−Xt,where Xrandt is an individual whale position vector, who is selected randomly.


## 3.2. A Hybrid Whale Optimization Algorithm (HWOA)

### 3.2.1. Problem Statement of WOA

As mentioned above, Section3.1 shows the main parameters of WOA algorithm which are coefficient vectors A and C, whereby A is crucial to local development capability and global exploration capability of WOA algorithm. If |A| > 1, the whales will expand the search scope to find a better candidate solution; this is the global exploration ability of WOA algorithm. If |A| < 1, the whales will reduce the search scope; they will search accurately in a local area; this means WOA algorithm has local development capability. While parameter A depends on convergence factor a, a lager convergence factor will have a better global exploration ability to avoid the algorithm falling into local optimum situation; a smaller convergence factor will have a better local exploration ability to faster convergence speed of the algorithm [30].The basic principle of WOA uses the random way to initial population, but this may cause the uneven distribution of population and the substandard diversity of the population. Most researchers did not focus on the population initialization of WOA, but literature [32] uses opposition-based learning for population initialization and gets good results. Luo and Shi [37] argue that higher initial population diversity can improve the heuristic search algorithm’s search efficiency and that spreading the initial population in the search range as much as possible when the global optimal solution unknown can provide an excellent global search basis in the early stage of the algorithm. In [38], chaotic theory was combined with the whale algorithm which can improve the whale algorithm using several chaotic maps. In [39, 40], the swarm intelligence algorithms with improved population diversity using a chaotic map give good results. This is because the chaotic map has the characteristics of randomness, regularity, and boundedness. It is sensitive to initial values and can traverse all states in a certain range without repetition according to its own laws. So, we propose a strategy of WOA population initialization based on opposition-based learning and cubic mapping to improve the global search ability and convergence speed of WOA, which is called the opposition-based cubic mapping whale optimization algorithm (OCWOA).Chuang et al. [34] introduced catfish effect to improve the searchability and jump out of the local optimum of PSO, and the results show that the catfish effect can improve the searchability of the algorithm. Similarly, we can also introduce catfish effect to improve the searchability of WOA. So, we propose a WOA based on catfish effect, which is called CWOA in this paper.Moreover, by combining OCWOA with CWOA, we further propose the hybrid whale optimization algorithm (HWOA) which is improved by opposition-based learning cubic mapping theory and catfish effect.


### 3.2.2. The Opposition-Based Cubic Mapping Whale Optimization Algorithm (OCWOA)

This section presents opposition-based cubic mapping (OBCM) to initialize the whale population’s position, strengthen the diversity of the population, and lay the foundation for global search. As the literature [39] shows, we choose cubic mapping as the function.In order to show that cubic mapping generates a more uniform population than random generate, we use random generation and cubic mapping to generate 10,000 random numbers in the range −1 to 1 to know the different distribution between cubic mapping and random generate. We used a simulation graph to show the sequence distribution comparison graph between cubic mapping generated populations and randomly generated populations in Figure1.Figure 1
Sequence distribution of cubic mapping and random.Figure1 shows that we divide the horizontal coordinate into deciles to determine the number of random numbers generated by the two methods in each interval. The horizontal coordinates represent the percentage interval ranging from −1 to 1, and the vertical coordinates represent the number of generations.As seen in Figure1, cubic mapping is more uniform than a random generation, which improves the initialization of the population and can effectively improve the global search ability of the population.The mathematical expression of cubic mapping is shown as follows:(9)yn+1=4yn3−3yn,−1≤yn≤1,n=0,1,2,….There are five steps to generate an opposition-based cubic mapping population:Step 1: generate a D-dimensional vector randomly according toM whales’ population of D-dimensional space. As the first individual of whale population, which means Y=y1,y2,…,yd,yi∈−1,1,1≤i≤d, where Y is the individual of whale population, yi is the dimension of Y, and the range of yi is from −1 to 1.Step 2: iterateM − 1 times in every dimension of Y by equation (9), which will generate other M − 1 whales’ population and will generate initial population X=Xi,i=1,2,…,N, where X is the whole population of whale based on cubic mapping.Step 3: mapping the generated chaotic variables to the solution of search space by equation (11):(10)Xid=Ld+1+yidUd−Ld2,whereUd and Ld represent the upper and lower limits of D-dimension of search space, respectively, yid is the D-dimension of i-th whale calculated by equation (9), and Xid is the D-dimension coordinate of the i-th whale.Step 4: use opposition-based learning to generate a reverse populationOXid based on Xid of equation (11).The opposition-based learning equation ofOXid is shown as follows:(11)OXid=Ud+Ld−Xid.Step 5: merge theX and OXid to generate a new population X∪OXid, and calculate the objective function values of the new population and rank them. Then, pick the best fitness of M individuals as the initial population.The abovementioned algorithm is called the opposition-based cubic mapping whale optimization algorithm (OCWOA).


### 3.2.3. WOA Based on Catfish Effect (CWOA)

The basic idea of catfish effect is to introduce catfish into sardine’s population to eliminate the sardines with no vitality. Catfish effect supposes if the global optimal solution does not evolve in a specific algebra of the iteration process, in that case, it will initialize 60% of the worst individual solution particles (no active sardines) to restore group vitality. This strategy is to improve the global search capability of the algorithm, because in the later iteration stage of WOA algorithm, all of the whale individuals in the population aggregate to the optimal individual location. This leads to the loss of diversity within the population and premature convergence of the algorithm to a nonglobal optimal state, which will cause premature convergence. So, the WOA based on catfish effect is named CWOA. When the global optimal solution of WOA does not evolve in a certain time of iteration process, it will proceed to opposition-based cubic mapping mutation equations (9)–(11) as catfish effect. The flow chart of CWOA is shown in Figure 2.Figure 2
Flow chart of CWOA.According to the OCWOA and CWOA, here, we can get the hybrid whale optimization algorithm (HWOA), which is improved by opposition-based learning cubic mapping theory for population initialization and catfish effect for population update, and the flow chart of HWOA is shown in Figure3.Figure 3
Flow chart of HWOA.So, the pseudocode of the hybrid WOA algorithm (HWOA) is shown in Algorithm1.Algorithm 1:The hybrid WOA algorithm (HWOA). The pseudocode of HWOA.
Input: number of search agents: 30Maximum of iterations: 500Output: best search agent:XgbestProcedure:(1)
Initialize the whale’s populationXii=1,2,3,…,n with the opposition-based cubic mapping in Section 3.2.1. Calculate the fitness of each search agent; select Xgbest.Xgbest is the best search agent(2)
while (t < maximum iterations)(3)
for each search agent(4)
updatea, A, C, L, and pif 1(p<0.5)if 2(|A| < 1)(5)
update the position of search agent using equation (3)else 2(|A| > 1)(6)
Select a random search agent (Xrand)(7)
Update the position of search agent using equation (9)end if 2else 1(p>0.5)(8)
update the position with spiral equation (8)end if 1(9)
CHECK if any search agent goes beyond the search space and amend it. Calculate fitness of each search agent(10)
UpdateXgbest if there is a better solution and record Xgbest and its iteration.If 3Xgbest did not evolve in 5 iterations, then ranking the search agent fitness forms best to worst, and initialize the position of 60% worst search agent with opposition-based cubic mapping in Section 3.2.1.end if 3end fort = t + 1end whilereturnXgbest


## 3.2.1. Problem Statement of WOA

As mentioned above, Section3.1 shows the main parameters of WOA algorithm which are coefficient vectors A and C, whereby A is crucial to local development capability and global exploration capability of WOA algorithm. If |A| > 1, the whales will expand the search scope to find a better candidate solution; this is the global exploration ability of WOA algorithm. If |A| < 1, the whales will reduce the search scope; they will search accurately in a local area; this means WOA algorithm has local development capability. While parameter A depends on convergence factor a, a lager convergence factor will have a better global exploration ability to avoid the algorithm falling into local optimum situation; a smaller convergence factor will have a better local exploration ability to faster convergence speed of the algorithm [30].The basic principle of WOA uses the random way to initial population, but this may cause the uneven distribution of population and the substandard diversity of the population. Most researchers did not focus on the population initialization of WOA, but literature [32] uses opposition-based learning for population initialization and gets good results. Luo and Shi [37] argue that higher initial population diversity can improve the heuristic search algorithm’s search efficiency and that spreading the initial population in the search range as much as possible when the global optimal solution unknown can provide an excellent global search basis in the early stage of the algorithm. In [38], chaotic theory was combined with the whale algorithm which can improve the whale algorithm using several chaotic maps. In [39, 40], the swarm intelligence algorithms with improved population diversity using a chaotic map give good results. This is because the chaotic map has the characteristics of randomness, regularity, and boundedness. It is sensitive to initial values and can traverse all states in a certain range without repetition according to its own laws. So, we propose a strategy of WOA population initialization based on opposition-based learning and cubic mapping to improve the global search ability and convergence speed of WOA, which is called the opposition-based cubic mapping whale optimization algorithm (OCWOA).Chuang et al. [34] introduced catfish effect to improve the searchability and jump out of the local optimum of PSO, and the results show that the catfish effect can improve the searchability of the algorithm. Similarly, we can also introduce catfish effect to improve the searchability of WOA. So, we propose a WOA based on catfish effect, which is called CWOA in this paper.Moreover, by combining OCWOA with CWOA, we further propose the hybrid whale optimization algorithm (HWOA) which is improved by opposition-based learning cubic mapping theory and catfish effect.


## 3.2.2. The Opposition-Based Cubic Mapping Whale Optimization Algorithm (OCWOA)

This section presents opposition-based cubic mapping (OBCM) to initialize the whale population’s position, strengthen the diversity of the population, and lay the foundation for global search. As the literature [39] shows, we choose cubic mapping as the function.In order to show that cubic mapping generates a more uniform population than random generate, we use random generation and cubic mapping to generate 10,000 random numbers in the range −1 to 1 to know the different distribution between cubic mapping and random generate. We used a simulation graph to show the sequence distribution comparison graph between cubic mapping generated populations and randomly generated populations in Figure1.Figure 1
Sequence distribution of cubic mapping and random.Figure1 shows that we divide the horizontal coordinate into deciles to determine the number of random numbers generated by the two methods in each interval. The horizontal coordinates represent the percentage interval ranging from −1 to 1, and the vertical coordinates represent the number of generations.As seen in Figure1, cubic mapping is more uniform than a random generation, which improves the initialization of the population and can effectively improve the global search ability of the population.The mathematical expression of cubic mapping is shown as follows:(9)yn+1=4yn3−3yn,−1≤yn≤1,n=0,1,2,….There are five steps to generate an opposition-based cubic mapping population:Step 1: generate a D-dimensional vector randomly according toM whales’ population of D-dimensional space. As the first individual of whale population, which means Y=y1,y2,…,yd,yi∈−1,1,1≤i≤d, where Y is the individual of whale population, yi is the dimension of Y, and the range of yi is from −1 to 1.Step 2: iterateM − 1 times in every dimension of Y by equation (9), which will generate other M − 1 whales’ population and will generate initial population X=Xi,i=1,2,…,N, where X is the whole population of whale based on cubic mapping.Step 3: mapping the generated chaotic variables to the solution of search space by equation (11):(10)Xid=Ld+1+yidUd−Ld2,whereUd and Ld represent the upper and lower limits of D-dimension of search space, respectively, yid is the D-dimension of i-th whale calculated by equation (9), and Xid is the D-dimension coordinate of the i-th whale.Step 4: use opposition-based learning to generate a reverse populationOXid based on Xid of equation (11).The opposition-based learning equation ofOXid is shown as follows:(11)OXid=Ud+Ld−Xid.Step 5: merge theX and OXid to generate a new population X∪OXid, and calculate the objective function values of the new population and rank them. Then, pick the best fitness of M individuals as the initial population.The abovementioned algorithm is called the opposition-based cubic mapping whale optimization algorithm (OCWOA).


## 3.2.3. WOA Based on Catfish Effect (CWOA)

The basic idea of catfish effect is to introduce catfish into sardine’s population to eliminate the sardines with no vitality. Catfish effect supposes if the global optimal solution does not evolve in a specific algebra of the iteration process, in that case, it will initialize 60% of the worst individual solution particles (no active sardines) to restore group vitality. This strategy is to improve the global search capability of the algorithm, because in the later iteration stage of WOA algorithm, all of the whale individuals in the population aggregate to the optimal individual location. This leads to the loss of diversity within the population and premature convergence of the algorithm to a nonglobal optimal state, which will cause premature convergence. So, the WOA based on catfish effect is named CWOA. When the global optimal solution of WOA does not evolve in a certain time of iteration process, it will proceed to opposition-based cubic mapping mutation equations (9)–(11) as catfish effect. The flow chart of CWOA is shown in Figure 2.Figure 2
Flow chart of CWOA.According to the OCWOA and CWOA, here, we can get the hybrid whale optimization algorithm (HWOA), which is improved by opposition-based learning cubic mapping theory for population initialization and catfish effect for population update, and the flow chart of HWOA is shown in Figure3.Figure 3
Flow chart of HWOA.So, the pseudocode of the hybrid WOA algorithm (HWOA) is shown in Algorithm1.Algorithm 1:The hybrid WOA algorithm (HWOA). The pseudocode of HWOA.
Input: number of search agents: 30Maximum of iterations: 500Output: best search agent:XgbestProcedure:(1)
Initialize the whale’s populationXii=1,2,3,…,n with the opposition-based cubic mapping in Section 3.2.1. Calculate the fitness of each search agent; select Xgbest.Xgbest is the best search agent(2)
while (t < maximum iterations)(3)
for each search agent(4)
updatea, A, C, L, and pif 1(p<0.5)if 2(|A| < 1)(5)
update the position of search agent using equation (3)else 2(|A| > 1)(6)
Select a random search agent (Xrand)(7)
Update the position of search agent using equation (9)end if 2else 1(p>0.5)(8)
update the position with spiral equation (8)end if 1(9)
CHECK if any search agent goes beyond the search space and amend it. Calculate fitness of each search agent(10)
UpdateXgbest if there is a better solution and record Xgbest and its iteration.If 3Xgbest did not evolve in 5 iterations, then ranking the search agent fitness forms best to worst, and initialize the position of 60% worst search agent with opposition-based cubic mapping in Section 3.2.1.end if 3end fort = t + 1end whilereturnXgbest


## 3.3. Experiment and Result Analysis of HWOA

### 3.3.1. Experiment Environment, Parameter Setting, and Test Suit

In the paper, all of the experimental environment includes a 2.40 GHz Intel(R) Core TM i7-3630QM CPU with RAM of 8 GB in the Windows 7 system. Each of the experiments was repeated 30 times independently on MATLAB 2017.In order to verify the effectiveness and generalization of the proposed algorithm, we compare the HWOA with WOA [18], OEWOA [32], WOA-BAT [33], OCWOA, and CWOA on 16 benchmark functions: F1–F12 from CEC2005 [41] and F13–F16 from CEC2014 [42], where F1–F4 are unimodal benchmark functions, F5–F8 are multimodal benchmark functions, and F9–F12 are fixed-dimensions multimodal benchmark functions. F13–F16 are composite functions. The results of function F1–F4 will show the exploitation and convergence ability of the algorithm, the results of function F5–F12 will reflect the exploitation capability of the algorithm, and function F13–F16 will test the algorithm to balance exploration and exploitation.The detailed information of benchmark functions is shown in Table1. Table 1 includes the function type, range of variation of optimization variables, optimal value fmin, and design variables, Dim. The parameter settings of the five algorithms are shown in Table 2.Table 1
Description of 16 benchmark functions.
Function typeDimRangefminF1x=∑i=1nxi230[−100, 100]0F2x=∑i=1nxi+∏i=1nxi30[−100, 100]0F3x=∑i=1n∑j−1ixj230[−100, 100]0F4x=∑i=1D−1100xi2−xi+12+xi−1230[−100, 100]0F5x=∑i=1n−xisinxi30[−500, 500]−418.9829 × 5F6x=∑i=1nxi2−10cos2πxi+1030[−5.12, 5.12]0F7x=−20exp−0.21/n∑i=1nxi2−exp1/n∑i=1ncos2πxi+20+e30[−32, 32]0F8x=1/1010sin23πx1+∑i=1D−1xi−121+sin23πxi+1+xD−121+sin22πxD+∑i=1Duxi,5,100,430[−50, 50]0F9x=1/500+∑j=1251/j+∑i=12xi−aij6−12[−65, 65]1F10x=∑i=111ai−x1bi2+b1x2/bi2+bix3+x424[−5, 5]0.00030F11x=4x12−2.1x14+1/3x16+x1x2−4x22+4x242[−5, 5]−1.0316F12x=x2−5.1/4π2x12+5/πx1−62+101−1/8πcosx1+102[−5, 5]0.398F13 composition function 1 [43]N=5,σ=10,20,30,40,50λ=1,1e−6,1e−26,1e−6,1e−6Bias=0,100,200,300,400g1:rotated Rosenbrock′s functionF4′g2:high conditioned elliptic functionF1′g3:rotated bent cigar functionF2′g4:rotated discuss functionF3′g5:high conditioned elliptic functionF1′D[−100,100]2300F14 composition function 2 [43]N=3,σ=20,20,20λ=1,1,1Bias=0,100,200g1:Schwefel’s functionF10′g2:rotated Rastrigin’s functionF9′g3:rotated HGBat functionF14′D[−100,100]2400F15 composition function 3 [43]N=3,σ=10,30,50λ=0.25,1,1e−7Bias=0,100,200g1:rotated Schwefel’s functionF11′g2:rotated Rastrigin’s functionF9′g3:rotated high conditioned elliptic functionF1′D[−100,100]2500F16 composition function 4 [43]N=5,σ=10,10,10,10,10λ=0.25,1,e−7,2.5,10Bias=0,100,200,300,400g1:rotated Schwefel’s functionF11′g2:rotated happy cat functionF9′g3:rotated high conditioned elliptic functionF1′g4:rotated Weierstrass functionF6′g5:rotated Griewank’s functionF7′D[−100, 100]2600Table 2
Parameter setting of six algorithms.
AlgorithmParameter settingsWOANumber of iteration is 500, a decreases linearly from 2 to 0OEWOANumber of iteration is 500, a decreases linearly from 2 to 0CWOANumber of iteration is 500, a decreases linearly from 2 to 0OCWOANumber of iteration is 500, a decreases linearly from 2 to 0WOA-BATNumber of iteration is 500, a decreases linearly from 2 to 0HWOANumber of iteration is 500, a decreases linearly from 2 to 0This experiment will compare the speed of convergence, and the optimization accuracy of six algorithms on the benchmark function at the same population size, number of iterations, and number of runs. So, the maximum iteration is set to 500, and each algorithm will run 30 times independently. We use the mean and standard deviation of the optimal target value as the basis for performance evaluation.At first, we use different populations of 30 and 60 when dimension = 30 to test the performance of the six algorithms. In this part, we will find out whether different population sizes affect the test results. The results are shown in Tables3 and 4.Table 3
Result of HWOA compared with other algorithms with population size 30.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean6.981E − 733.73E − 1721.14E − 063.28E − 8900Std3.66E − 756.66E − 1253.98E − 054.58E − 7900F2Mean6.475E − 565.12E − 2870.0047694.75E − 1668.88E − 1750Std4.58E − 553.24E − 2520.0025873.14E − 1337.78E − 1550F3Mean5.71E + 0409.53E − 061.55E − 1688.47E − 3000Std3.52E + 0307.56E − 051.57E − 1566.74E − 2890F4Mean28.013527.88471.19E + 0128.806627.756428.7891Std0.42170.35471.12E + 010.33520.35750.2231F5Mean−12554.44−12568.45−12569.48−11821.96−12569.41−12568.62Std695.121152.32257.21493.25351.21321.15F6Mean004.28E − 04000Std003.56E − 03000F7Mean7.99E − 158.88E − 160.0012328.88E − 168.88E − 168.88E − 16Std6.98E − 147.98E − 150.12587.55E − 157.43E − 155.61E − 15F8Mean0.17110.222111.073E − 021.27470.0073760.24186Std0.05120.15472.63E − 022.96310.015630.01423F9Mean2.11910.9981.12512.5881.23810.998Std2.49811.57E − 160.58121.57820.89322.3E − 17F10Mean0.00124380.000615460.00030760.00036440.000329270.0003145Std0.0009870.0002510.0001570.0001690.0001880.000144F11Mean−1.0316−1.0313−1.0316−1.0316−1.0316−1.0316Std4.21E − 075.87E − 123.21E − 132.23E − 174.34E − 111.24E − 19F12Mean0.397890.397950.397890.397920.39840.39801Std3.98E − 05001.25E − 042.25E − 062.21E − 07F13Mean2767.177925002500.030225002786.67052500Std0.66810.66810.45720.35810.12580.1158F14Mean2604.043526002600.007526002603.35452600Std0.123400.002100.15230F15Mean2723.322727002700.0006270027002700Std1.73101.86E − 04000F16Mean2701.393927982722275527692706.4615Std3.43E − 017.138.325.219.323.53E − 01Table 4
Result of HWOA compared with other algorithm with population size 60.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean1.50E − 933.73E − 2022.24E − 083.28E − 9800Std5.72E − 837.44E − 1255.88E − 066.78E − 8200F2Mean8.85E − 576.22E − 2890.0048721.75E − 1062.1006E − 1810Std3.68E − 574.24E − 2610.0025873.14E − 1037.78E − 1550F3Mean2.27E + 042.87E + 041.051E − 053.71E + 046.91E − 3160Std1.32E + 031.02E + 042.24E − 051.22E + 035.54E − 3100F4Mean27.011227.784111.35E + 0128.778927.789526.4571Std0.42210.78910.35980.37140.34470.2778F5Mean−12569.38−12569.32−12569.4866−11921.66−12569.0193−12569.45Std221.23152.32124.31313.75351.36321.24F6Mean002.17E − 04000Std004.33E − 03000F7Mean7.99E − 158.88E − 160.0057728.88E − 168.88E − 168.88E − 16Std6.72E − 147.88E − 154.72E − 026.32E − 151.22E − 156.55E − 15F8Mean0.051270.020411.99E − 021.01780.0123930.07941Std0.0032120.015683.77E − 030.98720.007630.01231F9Mean0.9980.9980.9981.32450.9980.998Std1.22E − 321.57E − 161.87E − 231.57820.89323.2E − 17F10Mean0.00047640.00030940.000307490.00032120.00033240.0003224Std0.00022370.00014570.00015470.00014570.00014410.000122F11Mean−1.0316−1.0316−1.0316−1.0316−1.0316−1.0316Std2.31E − 225.45E − 183.77E − 194.33E − 211.25E − 222.55E − 23F12Mean0.397890.39790.397890.397920.39830.39801Std3.88E − 05001.45E − 042.78E − 062.31E − 07F13Mean2833.177925002500.0541250025002500Std33.22100.3372000F14Mean2600.351226002600.007526002600.34782600Std0.123400.0122100.01240F15Mean270027002700.0002270027002700Std0.923102.33E − 04000F16Mean2700.562800.522705.322755.2328002755.11Std2.13E − 034.13E + 016.13E + 012.25E + 006.13E + 019.63E + 00Then, we use the different dimensions of 50 and 100 when the population size is 30. In this part, we will find out whether different dimension sizes affect the test results. The results are shown in Tables5 and 6.Table 5
Result of HWOA compared with another algorithm with dimension 50.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean1.2278E − 802.79E − 1277.83E − 068.6008E − 541.9763E − 3230Std4.63E − 835.54E − 1154.33E − 057.54E − 512.48E − 3190F2Mean7.4197E − 541.1564E − 2750.00445932.714E − 571.1326E − 1770Std4.79E − 536.31E − 2670.0025873.14E − 537.78E − 1550F3Mean5.23E + 0408.18E − 068.81E + 043.34E − 3210Std2.26E + 0306.34E − 053.21E + 036.58E − 3190F4Mean48.352848.34219.4692948.637848.519548.3739Std0.31210.578218.42310.45210.45710.2425F5Mean−19273.83−18485.0977−20881.1444−14998.407−20147.344−20865.71Std159.54163.33135.21211.52354.45225.25F6Mean000.00092049000Std005.24E − 05000F7Mean4.44E − 158.88E − 160.00136371.04E − 138.88E − 168.88E − 16Std5.77E − 146.85E − 154.86E − 027.25E − 152.43E − 156.55E − 16F8Mean0.773430.078415.66E − 021.31780.091850.0875Std0.0045120.017871.71E − 020.89710.0014570.0254F13Mean2911.179825002500.08250025002500Std9.81E + 0004.56E − 03000F14Mean2600.881226002600.002126002600.00832600Std0.102100.0033500.003240F15Mean270027002700.00018270027002700Std003.65E − 07000F16Mean2800.085828002751.232755.2328002800Std3.31E − 025.56E + 017.65E + 003.35E + 007.54E + 018.63E + 00Table 6
Result of HWOA compared with other algorithms with dimension 100.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean4.27E − 7503.09E − 052.65E − 8500Std3.65E − 7405.12E − 042.66E − 8300F2Mean2.73E − 512.23E − 2740.0444232.67E − 713.04E − 1780Std1.78E − 508.34E − 2610.0036972.55E − 694.78E − 1560F3Mean1.18E + 0601.24E − 043.71E + 0500Std2.45E + 0303.75E − 057.28E + 0300F4Mean98.180698.100739.4692398.404298.024298.3011Std6.21E − 017.89E − 018.55E + 013.71E − 013.56E − 073.21E − 01F5Mean−29948.77−41897.40−41898.2887−31886.764−31896.7649−41898.71Std256.12186.31109.32325.21345.78112.45F6Mean001.25E − 03000Std003.34E − 02000F7Mean4.44E − 158.88E − 160.00193217.88E − 168.88E − 168.88E − 16Std3.23E − 146.45E − 163.55E − 027.45E − 151.34E − 156.23E − 15F8Mean3.05210.658481.70E − 022.09653.03180.46097Std3.21E − 011.56E − 022.21E − 039.87E − 017.63E − 031.23E − 01F13Mean250025002500.1481250025002500Std000.012489000F14Mean2600.04126002600.047726002600.54872600Std0.00213400.00567700.0098510F15Mean270027002700.0003270027002700Std003.65E − 04000F16Mean278928002791279828002800Std3.13E + 001.54E + 017.23E + 013.78E + 005.22E + 008.45E + 00


### 3.3.2. Analysis of Exploitation Capability When Population Size Changes

In this section, it compares six algorithms in different situations when population changes and dimension = 30, and the fixed-dimension function (F9-F12) will stay the fixed-dimension. The result of the experiment will be discussed separately.Table3 shows the optimization results of 16 benchmark functions. Among the unimodal functions (F1–F4), HWOA can get the exact optimal solution of F1–F3, which proves that HWOA has profitable exploitation among six algorithms. For multimodal function (F5–F8), WOA-BAT obtains better optimal solution in F5 and F8. The exact optimal solutions of HWOA, WOA, OEWOA, CWOA, and OCWOA are obtained in F6. HWOA gets best mean and standard deviation of the optimal target value in F7. For the fixed-dimension function (F9–F12), HWOA outperforms the other five algorithms in F9, F11, and F12. WOA-BAT is good in F10. For composite function (F13–F16), HWOA is competitive with other algorithms. The results can infer that HOWA which is better than the other algorithms on different types of benchmark functions. Comparing CWOA, OCWOA, and WOA algorithm, F1 to F15 show that the mean and standard deviation of the optimal target value of OCWOA CWOA is much better than that of WOA. It means that the opposition-based cubic mapping strategy and catfish strategy to improve WOA are successful.Table4 shows the optimization results of 16 benchmark functions. Among the unimodal functions (F1–F4), HWOA is still competitive compared with other algorithms in F1–F3, but WOA-BAT is the only one that can jump out of local optimum in F4. For multimodal function (F5–F8), HWOA gives the best optimal value on F6 and F7. WOA-BAT reaches the better result in F5 and F8. For fixed-dimension function (F9–F12), HWOA outperforms on F11, but still has an advantage on the other three functions. For the composite function (F13–F16), HOWA is still competitive compared with another algorithm.In summary, the most results of Tables3 and 4 just have some minor differences. But as the population increases, the computational complexity grows. As the population changes from 30 to 60, the results of all algorithms have been improved a bit, and still, HWOA can get the best optimal value of 11 functions in Table 3 and 10 functions in Table 4. The performance of CWOA and OCWOA is still better than that of WOA in most functions, which shows that the proposed strategy to improve the WOA is a success. Overall, HWOA is better than the other five algorithms in different population sizes.


### 3.3.3. Analysis of Exploitation Capability When Dimension Changes

In this section, we compare six algorithms in different situations when the dimension changes and population size = 30. The fixed-dimension function (F9–F12) cannot do the experiment because the dimension is fixed. The result of the experiment will be discussed separately. Table5 shows the optimization results of 16 benchmark functions when the dimension is 50.From Table5, HWOA provides best results for the functions F1, F2, and F3. For function F4, results of HWOA are still comparable while WOA-BAT gets better result. Results are quite comparable for function F5, but HWOA has a better mean value. For function F7, HWOA is better and provides good value of best solution and standard deviation. Only HWOA provides the exact solution for function F8. HOWA provides good results in F13, F14, and F15. In total, for this case, WOA is good for only one function, HWOA is good for eight functions, and OEWOA is good for three functions, WOA-BAT is good for three functions, OCWOA is good for four functions, and CWOA is good for three functions.Table6 shows the optimization results of 16 benchmark functions when the dimension is 100.In Table6, for functions F1 and F2, only HWOA is able to provide global solution, while other algorithms fall into at some local values. OEWOA and HWOA provide better results for function F3. The best solution obtained by WOA-BAT is better for function F4. For function F5, HWOA is considered as the best algorithm though the results. OEWOA outperforms other algorithms for function F6 and F7, but HWOA is still competitive compared with other four algorithms. For function F8, WOA-BAT provides better value. HOWA provides good results in F13, F14, and F15. Thus, for the dimension size of 100, WOA is good for four functions, HWOA is good for eight functions, CWOA is good for five functions, OCWOA is good for four functions, WOA-BAT is good for two functions, and OEWOA is good for seven functions.From Tables5 and 6, it can be inferred that the complexity of the problem increases with the increase of dimension size. Due to this reason, the performance of all algorithms decreases. HWOA is good for eight functions in Tables 5 and 6. The result shows that HWOA has better performance over other algorithms.


### 3.3.4. Analysis of Convergence Behavior

The convergence curves of the CWOA, WOA, HWOA, OEWOA, WOA-BAT, and OCWOA are provided in Figure4 to see the convergence speed of the algorithms.Figure 4
Average best fitness for six algorithms on 16 benchmark functions. (a) F1, (b) F2, (c) F3, (d) F4, (e) F5, (f) F6, (g) F7, (h) F8, (i) F9, (j) F10, (k) F11, (l) F12, (m) F13, (n) F14, (o) F15, and (p) F16.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)The data of convergence graph is from Table3.From Figure4, compared with standard WOA, CWOA, OCWOA, and OEWOA, WOA-BAT and HWOA have the fastest convergence speed in F1, F2, F3, F6, F7, F9, F10, F12, F13, F14, and F15, which means HWOA can effectively save the search time. The convergence curve of HWOA proves that the ability of HWOA to jump out of the local optimum is effectively enhanced compared with WOA. Therefore, the HWOA algorithm has a more vital ability to jump out of the local optimum than the other five algorithms.


### 3.3.5. Summary of Results

The result of OCWOA shows that using the opposition-based cubic mapping strategy to initializing the population of WOA is success. The OCWOA has faster convergence speed and better searchability than original WOA.The result of CWOA shows that using the catfish effect in WOA has effectively enhanced the convergence speed and searchability of WOA.From the results of Section3.3.2–3.3.4, the proposed version of CWOA and OCWOA is better than the original WOA. The result demonstrates the success of the improvements to WOA using catfish effect and opposition-based cubic mapping.Although HWOA is the best algorithm compared to other five algorithms in the experiment part, however, HOWA does not get good results in multimodal benchmark functions part. So, there will be more work to improve the performance of HOWA in multimodal benchmark functions. We could introduce the different exponentially decreasinga⟶ to improve the exploration and exploitation of HWOA on multimodal benchmark functions.


## 3.3.1. Experiment Environment, Parameter Setting, and Test Suit

In the paper, all of the experimental environment includes a 2.40 GHz Intel(R) Core TM i7-3630QM CPU with RAM of 8 GB in the Windows 7 system. Each of the experiments was repeated 30 times independently on MATLAB 2017.In order to verify the effectiveness and generalization of the proposed algorithm, we compare the HWOA with WOA [18], OEWOA [32], WOA-BAT [33], OCWOA, and CWOA on 16 benchmark functions: F1–F12 from CEC2005 [41] and F13–F16 from CEC2014 [42], where F1–F4 are unimodal benchmark functions, F5–F8 are multimodal benchmark functions, and F9–F12 are fixed-dimensions multimodal benchmark functions. F13–F16 are composite functions. The results of function F1–F4 will show the exploitation and convergence ability of the algorithm, the results of function F5–F12 will reflect the exploitation capability of the algorithm, and function F13–F16 will test the algorithm to balance exploration and exploitation.The detailed information of benchmark functions is shown in Table1. Table 1 includes the function type, range of variation of optimization variables, optimal value fmin, and design variables, Dim. The parameter settings of the five algorithms are shown in Table 2.Table 1
Description of 16 benchmark functions.
Function typeDimRangefminF1x=∑i=1nxi230[−100, 100]0F2x=∑i=1nxi+∏i=1nxi30[−100, 100]0F3x=∑i=1n∑j−1ixj230[−100, 100]0F4x=∑i=1D−1100xi2−xi+12+xi−1230[−100, 100]0F5x=∑i=1n−xisinxi30[−500, 500]−418.9829 × 5F6x=∑i=1nxi2−10cos2πxi+1030[−5.12, 5.12]0F7x=−20exp−0.21/n∑i=1nxi2−exp1/n∑i=1ncos2πxi+20+e30[−32, 32]0F8x=1/1010sin23πx1+∑i=1D−1xi−121+sin23πxi+1+xD−121+sin22πxD+∑i=1Duxi,5,100,430[−50, 50]0F9x=1/500+∑j=1251/j+∑i=12xi−aij6−12[−65, 65]1F10x=∑i=111ai−x1bi2+b1x2/bi2+bix3+x424[−5, 5]0.00030F11x=4x12−2.1x14+1/3x16+x1x2−4x22+4x242[−5, 5]−1.0316F12x=x2−5.1/4π2x12+5/πx1−62+101−1/8πcosx1+102[−5, 5]0.398F13 composition function 1 [43]N=5,σ=10,20,30,40,50λ=1,1e−6,1e−26,1e−6,1e−6Bias=0,100,200,300,400g1:rotated Rosenbrock′s functionF4′g2:high conditioned elliptic functionF1′g3:rotated bent cigar functionF2′g4:rotated discuss functionF3′g5:high conditioned elliptic functionF1′D[−100,100]2300F14 composition function 2 [43]N=3,σ=20,20,20λ=1,1,1Bias=0,100,200g1:Schwefel’s functionF10′g2:rotated Rastrigin’s functionF9′g3:rotated HGBat functionF14′D[−100,100]2400F15 composition function 3 [43]N=3,σ=10,30,50λ=0.25,1,1e−7Bias=0,100,200g1:rotated Schwefel’s functionF11′g2:rotated Rastrigin’s functionF9′g3:rotated high conditioned elliptic functionF1′D[−100,100]2500F16 composition function 4 [43]N=5,σ=10,10,10,10,10λ=0.25,1,e−7,2.5,10Bias=0,100,200,300,400g1:rotated Schwefel’s functionF11′g2:rotated happy cat functionF9′g3:rotated high conditioned elliptic functionF1′g4:rotated Weierstrass functionF6′g5:rotated Griewank’s functionF7′D[−100, 100]2600Table 2
Parameter setting of six algorithms.
AlgorithmParameter settingsWOANumber of iteration is 500, a decreases linearly from 2 to 0OEWOANumber of iteration is 500, a decreases linearly from 2 to 0CWOANumber of iteration is 500, a decreases linearly from 2 to 0OCWOANumber of iteration is 500, a decreases linearly from 2 to 0WOA-BATNumber of iteration is 500, a decreases linearly from 2 to 0HWOANumber of iteration is 500, a decreases linearly from 2 to 0This experiment will compare the speed of convergence, and the optimization accuracy of six algorithms on the benchmark function at the same population size, number of iterations, and number of runs. So, the maximum iteration is set to 500, and each algorithm will run 30 times independently. We use the mean and standard deviation of the optimal target value as the basis for performance evaluation.At first, we use different populations of 30 and 60 when dimension = 30 to test the performance of the six algorithms. In this part, we will find out whether different population sizes affect the test results. The results are shown in Tables3 and 4.Table 3
Result of HWOA compared with other algorithms with population size 30.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean6.981E − 733.73E − 1721.14E − 063.28E − 8900Std3.66E − 756.66E − 1253.98E − 054.58E − 7900F2Mean6.475E − 565.12E − 2870.0047694.75E − 1668.88E − 1750Std4.58E − 553.24E − 2520.0025873.14E − 1337.78E − 1550F3Mean5.71E + 0409.53E − 061.55E − 1688.47E − 3000Std3.52E + 0307.56E − 051.57E − 1566.74E − 2890F4Mean28.013527.88471.19E + 0128.806627.756428.7891Std0.42170.35471.12E + 010.33520.35750.2231F5Mean−12554.44−12568.45−12569.48−11821.96−12569.41−12568.62Std695.121152.32257.21493.25351.21321.15F6Mean004.28E − 04000Std003.56E − 03000F7Mean7.99E − 158.88E − 160.0012328.88E − 168.88E − 168.88E − 16Std6.98E − 147.98E − 150.12587.55E − 157.43E − 155.61E − 15F8Mean0.17110.222111.073E − 021.27470.0073760.24186Std0.05120.15472.63E − 022.96310.015630.01423F9Mean2.11910.9981.12512.5881.23810.998Std2.49811.57E − 160.58121.57820.89322.3E − 17F10Mean0.00124380.000615460.00030760.00036440.000329270.0003145Std0.0009870.0002510.0001570.0001690.0001880.000144F11Mean−1.0316−1.0313−1.0316−1.0316−1.0316−1.0316Std4.21E − 075.87E − 123.21E − 132.23E − 174.34E − 111.24E − 19F12Mean0.397890.397950.397890.397920.39840.39801Std3.98E − 05001.25E − 042.25E − 062.21E − 07F13Mean2767.177925002500.030225002786.67052500Std0.66810.66810.45720.35810.12580.1158F14Mean2604.043526002600.007526002603.35452600Std0.123400.002100.15230F15Mean2723.322727002700.0006270027002700Std1.73101.86E − 04000F16Mean2701.393927982722275527692706.4615Std3.43E − 017.138.325.219.323.53E − 01Table 4
Result of HWOA compared with other algorithm with population size 60.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean1.50E − 933.73E − 2022.24E − 083.28E − 9800Std5.72E − 837.44E − 1255.88E − 066.78E − 8200F2Mean8.85E − 576.22E − 2890.0048721.75E − 1062.1006E − 1810Std3.68E − 574.24E − 2610.0025873.14E − 1037.78E − 1550F3Mean2.27E + 042.87E + 041.051E − 053.71E + 046.91E − 3160Std1.32E + 031.02E + 042.24E − 051.22E + 035.54E − 3100F4Mean27.011227.784111.35E + 0128.778927.789526.4571Std0.42210.78910.35980.37140.34470.2778F5Mean−12569.38−12569.32−12569.4866−11921.66−12569.0193−12569.45Std221.23152.32124.31313.75351.36321.24F6Mean002.17E − 04000Std004.33E − 03000F7Mean7.99E − 158.88E − 160.0057728.88E − 168.88E − 168.88E − 16Std6.72E − 147.88E − 154.72E − 026.32E − 151.22E − 156.55E − 15F8Mean0.051270.020411.99E − 021.01780.0123930.07941Std0.0032120.015683.77E − 030.98720.007630.01231F9Mean0.9980.9980.9981.32450.9980.998Std1.22E − 321.57E − 161.87E − 231.57820.89323.2E − 17F10Mean0.00047640.00030940.000307490.00032120.00033240.0003224Std0.00022370.00014570.00015470.00014570.00014410.000122F11Mean−1.0316−1.0316−1.0316−1.0316−1.0316−1.0316Std2.31E − 225.45E − 183.77E − 194.33E − 211.25E − 222.55E − 23F12Mean0.397890.39790.397890.397920.39830.39801Std3.88E − 05001.45E − 042.78E − 062.31E − 07F13Mean2833.177925002500.0541250025002500Std33.22100.3372000F14Mean2600.351226002600.007526002600.34782600Std0.123400.0122100.01240F15Mean270027002700.0002270027002700Std0.923102.33E − 04000F16Mean2700.562800.522705.322755.2328002755.11Std2.13E − 034.13E + 016.13E + 012.25E + 006.13E + 019.63E + 00Then, we use the different dimensions of 50 and 100 when the population size is 30. In this part, we will find out whether different dimension sizes affect the test results. The results are shown in Tables5 and 6.Table 5
Result of HWOA compared with another algorithm with dimension 50.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean1.2278E − 802.79E − 1277.83E − 068.6008E − 541.9763E − 3230Std4.63E − 835.54E − 1154.33E − 057.54E − 512.48E − 3190F2Mean7.4197E − 541.1564E − 2750.00445932.714E − 571.1326E − 1770Std4.79E − 536.31E − 2670.0025873.14E − 537.78E − 1550F3Mean5.23E + 0408.18E − 068.81E + 043.34E − 3210Std2.26E + 0306.34E − 053.21E + 036.58E − 3190F4Mean48.352848.34219.4692948.637848.519548.3739Std0.31210.578218.42310.45210.45710.2425F5Mean−19273.83−18485.0977−20881.1444−14998.407−20147.344−20865.71Std159.54163.33135.21211.52354.45225.25F6Mean000.00092049000Std005.24E − 05000F7Mean4.44E − 158.88E − 160.00136371.04E − 138.88E − 168.88E − 16Std5.77E − 146.85E − 154.86E − 027.25E − 152.43E − 156.55E − 16F8Mean0.773430.078415.66E − 021.31780.091850.0875Std0.0045120.017871.71E − 020.89710.0014570.0254F13Mean2911.179825002500.08250025002500Std9.81E + 0004.56E − 03000F14Mean2600.881226002600.002126002600.00832600Std0.102100.0033500.003240F15Mean270027002700.00018270027002700Std003.65E − 07000F16Mean2800.085828002751.232755.2328002800Std3.31E − 025.56E + 017.65E + 003.35E + 007.54E + 018.63E + 00Table 6
Result of HWOA compared with other algorithms with dimension 100.
FunctionWOAOEWOAWOA-BATOCWOACWOAHWOAF1Mean4.27E − 7503.09E − 052.65E − 8500Std3.65E − 7405.12E − 042.66E − 8300F2Mean2.73E − 512.23E − 2740.0444232.67E − 713.04E − 1780Std1.78E − 508.34E − 2610.0036972.55E − 694.78E − 1560F3Mean1.18E + 0601.24E − 043.71E + 0500Std2.45E + 0303.75E − 057.28E + 0300F4Mean98.180698.100739.4692398.404298.024298.3011Std6.21E − 017.89E − 018.55E + 013.71E − 013.56E − 073.21E − 01F5Mean−29948.77−41897.40−41898.2887−31886.764−31896.7649−41898.71Std256.12186.31109.32325.21345.78112.45F6Mean001.25E − 03000Std003.34E − 02000F7Mean4.44E − 158.88E − 160.00193217.88E − 168.88E − 168.88E − 16Std3.23E − 146.45E − 163.55E − 027.45E − 151.34E − 156.23E − 15F8Mean3.05210.658481.70E − 022.09653.03180.46097Std3.21E − 011.56E − 022.21E − 039.87E − 017.63E − 031.23E − 01F13Mean250025002500.1481250025002500Std000.012489000F14Mean2600.04126002600.047726002600.54872600Std0.00213400.00567700.0098510F15Mean270027002700.0003270027002700Std003.65E − 04000F16Mean278928002791279828002800Std3.13E + 001.54E + 017.23E + 013.78E + 005.22E + 008.45E + 00


## 3.3.2. Analysis of Exploitation Capability When Population Size Changes

In this section, it compares six algorithms in different situations when population changes and dimension = 30, and the fixed-dimension function (F9-F12) will stay the fixed-dimension. The result of the experiment will be discussed separately.Table3 shows the optimization results of 16 benchmark functions. Among the unimodal functions (F1–F4), HWOA can get the exact optimal solution of F1–F3, which proves that HWOA has profitable exploitation among six algorithms. For multimodal function (F5–F8), WOA-BAT obtains better optimal solution in F5 and F8. The exact optimal solutions of HWOA, WOA, OEWOA, CWOA, and OCWOA are obtained in F6. HWOA gets best mean and standard deviation of the optimal target value in F7. For the fixed-dimension function (F9–F12), HWOA outperforms the other five algorithms in F9, F11, and F12. WOA-BAT is good in F10. For composite function (F13–F16), HWOA is competitive with other algorithms. The results can infer that HOWA which is better than the other algorithms on different types of benchmark functions. Comparing CWOA, OCWOA, and WOA algorithm, F1 to F15 show that the mean and standard deviation of the optimal target value of OCWOA CWOA is much better than that of WOA. It means that the opposition-based cubic mapping strategy and catfish strategy to improve WOA are successful.Table4 shows the optimization results of 16 benchmark functions. Among the unimodal functions (F1–F4), HWOA is still competitive compared with other algorithms in F1–F3, but WOA-BAT is the only one that can jump out of local optimum in F4. For multimodal function (F5–F8), HWOA gives the best optimal value on F6 and F7. WOA-BAT reaches the better result in F5 and F8. For fixed-dimension function (F9–F12), HWOA outperforms on F11, but still has an advantage on the other three functions. For the composite function (F13–F16), HOWA is still competitive compared with another algorithm.In summary, the most results of Tables3 and 4 just have some minor differences. But as the population increases, the computational complexity grows. As the population changes from 30 to 60, the results of all algorithms have been improved a bit, and still, HWOA can get the best optimal value of 11 functions in Table 3 and 10 functions in Table 4. The performance of CWOA and OCWOA is still better than that of WOA in most functions, which shows that the proposed strategy to improve the WOA is a success. Overall, HWOA is better than the other five algorithms in different population sizes.


## 3.3.3. Analysis of Exploitation Capability When Dimension Changes

In this section, we compare six algorithms in different situations when the dimension changes and population size = 30. The fixed-dimension function (F9–F12) cannot do the experiment because the dimension is fixed. The result of the experiment will be discussed separately. Table5 shows the optimization results of 16 benchmark functions when the dimension is 50.From Table5, HWOA provides best results for the functions F1, F2, and F3. For function F4, results of HWOA are still comparable while WOA-BAT gets better result. Results are quite comparable for function F5, but HWOA has a better mean value. For function F7, HWOA is better and provides good value of best solution and standard deviation. Only HWOA provides the exact solution for function F8. HOWA provides good results in F13, F14, and F15. In total, for this case, WOA is good for only one function, HWOA is good for eight functions, and OEWOA is good for three functions, WOA-BAT is good for three functions, OCWOA is good for four functions, and CWOA is good for three functions.Table6 shows the optimization results of 16 benchmark functions when the dimension is 100.In Table6, for functions F1 and F2, only HWOA is able to provide global solution, while other algorithms fall into at some local values. OEWOA and HWOA provide better results for function F3. The best solution obtained by WOA-BAT is better for function F4. For function F5, HWOA is considered as the best algorithm though the results. OEWOA outperforms other algorithms for function F6 and F7, but HWOA is still competitive compared with other four algorithms. For function F8, WOA-BAT provides better value. HOWA provides good results in F13, F14, and F15. Thus, for the dimension size of 100, WOA is good for four functions, HWOA is good for eight functions, CWOA is good for five functions, OCWOA is good for four functions, WOA-BAT is good for two functions, and OEWOA is good for seven functions.From Tables5 and 6, it can be inferred that the complexity of the problem increases with the increase of dimension size. Due to this reason, the performance of all algorithms decreases. HWOA is good for eight functions in Tables 5 and 6. The result shows that HWOA has better performance over other algorithms.


## 3.3.4. Analysis of Convergence Behavior

The convergence curves of the CWOA, WOA, HWOA, OEWOA, WOA-BAT, and OCWOA are provided in Figure4 to see the convergence speed of the algorithms.Figure 4
Average best fitness for six algorithms on 16 benchmark functions. (a) F1, (b) F2, (c) F3, (d) F4, (e) F5, (f) F6, (g) F7, (h) F8, (i) F9, (j) F10, (k) F11, (l) F12, (m) F13, (n) F14, (o) F15, and (p) F16.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)The data of convergence graph is from Table3.From Figure4, compared with standard WOA, CWOA, OCWOA, and OEWOA, WOA-BAT and HWOA have the fastest convergence speed in F1, F2, F3, F6, F7, F9, F10, F12, F13, F14, and F15, which means HWOA can effectively save the search time. The convergence curve of HWOA proves that the ability of HWOA to jump out of the local optimum is effectively enhanced compared with WOA. Therefore, the HWOA algorithm has a more vital ability to jump out of the local optimum than the other five algorithms.


## 3.3.5. Summary of Results

The result of OCWOA shows that using the opposition-based cubic mapping strategy to initializing the population of WOA is success. The OCWOA has faster convergence speed and better searchability than original WOA.The result of CWOA shows that using the catfish effect in WOA has effectively enhanced the convergence speed and searchability of WOA.From the results of Section3.3.2–3.3.4, the proposed version of CWOA and OCWOA is better than the original WOA. The result demonstrates the success of the improvements to WOA using catfish effect and opposition-based cubic mapping.Although HWOA is the best algorithm compared to other five algorithms in the experiment part, however, HOWA does not get good results in multimodal benchmark functions part. So, there will be more work to improve the performance of HOWA in multimodal benchmark functions. We could introduce the different exponentially decreasinga⟶ to improve the exploration and exploitation of HWOA on multimodal benchmark functions.


## 4. Improved S3VM Model Combines with Hybrid WOA

### 4.1. HWOA-S3VM Model

In Section2, we improved S3VM with split tradeoff control parameter Cu into Cu+ and Cu−; it will increase the iteration time and classification accuracy of S3VM. In Section 3, we modified WOA with catfish effect and opposition-based cubic mapping. In this section, we will use HWOA hybridized with S3VM for classification.Literature [44] shows that the parameter γ and regularization parameter C of RBF kernel will determine the classification accuracy of SVM, but the numbers of the two parameters have to be set manually. The different parameters will cause different classification accuracies because HWOA will change the parameter set based on the classification accuracy (best fitness of HWOA) of SVM. So, we will use HWOA to optimize the RBF kernel parameter of SVM. The range of the parameter is from 0 to 1.Algorithm2 shows the pseudocode of HWOA-S3VM. Since the RBF kernel of SVM needs to specify its values to operate, HWOA is used to optimize the RBF kernel of SVM to select the most suitable values for processing.Algorithm 2:The pseudocode of the improved S3VM model (HWOA-S3VM).
Input: labeled dataset Dl=x1,y1,…,xl,ylUnlabeled datasetDu=xl+1,…,xl+uTradeoff control parametersCl, Cu+, and Cu−Output: prediction result of unlabeled sample: y^=y^l+1,y^l+2,…,y^l+uFinal model of HWOA-S3VMProcedure:(1)
Train modelSVMl by Dl when using HWOA to get the kernel parameters γ and regularization parameters C of SVM(2)
UsingSVMl to predict the Du, get y^=y^l+1,y^l+2,…,y^l+u(3)
InitializationCu++Cu−≪Cl(4)
WhileCu++Cu−<Cl, do(5)
Based onDl, Du, y^, Cl, Cu+, and Cu−, solve equation (2)To getw,b,ζ(6)
While∃i,j,n|yi^yj^<0∧ζi>1∧ζj>1∧ζn>1∧ζi+ζj+ζn>3, do yi=−yi; yj=−yj // label exchange;(7)
Based onDl, Du, y^, Cl, Cu+, and Cu− to solve equation (2), to get w,b,ζ(9)
End whileCu++Cu−=min2Cu++Cu−,Cl(10)
End while


### 4.2. Experiment and Result Analysis of HWOA-S3VM

In order to test the classification accuracy of the algorithm, it chooses 5 two-dimension UCI datasets to verify the classification performance of HWOA-S3VM compared with SVM, S3VM, RF [43], and WOA-S3VM.Details of these datasets are shown in Table7. In the experiment, firstly, each dataset is randomly divided into two parts: 30% of the data is training set and the remaining 70% is the testing set. In order to verify the ability to process labeled and unlabeled samples simultaneously of HWOA-S3VM, we set 10% and 20% of the training set as labeled data, and the rest of the training set are unlabeled data. The classification result is shown in Tables 8 and 9.Table 7
Characteristics of datasets.
Name of dataNumber of dataAttributionTraining setTesting setHaberman306390210Pima7688210490Blood7484210490WDBC5692150350Seeds210760140Table 8
Comparison of numerical testing results on five UCI datasets when using 10% of training set as labeled data.
DatasetRF (%)SVM (%)S3VM (%)WOA-S3VM (%)HWOA-S3VM (%)Haberman75.281.1079.0581.4383.80Pima81.486.3286.3284.9087.96Blood81.585.5185.9188.7888.78WDBC78.0086.3090.2889.5092.57Seeds82.8687.5088.6488.5790.00Table 9
Comparison of numerical testing results on five UCI datasets when using 20% of training set as labeled data.
DatasetRF (%)SVM (%)S3VM (%)WOA-S3VM (%)HWOA-S3VM (%)Haberman79.5281.8082.5083.586.67Pima86.3382.3287.4287.4288.78Blood86.1283.4782.4889.1090.61WDBC87.1483.1585.1090.0095.43Seeds84.2087.8588.6489.2991.43Tables8 and 9 show that the HWOA-S3VM is superior to the other four algorithms at classification accuracy. Therefore, intelligent algorithm can improve the S3VM model classification accuracy. The accuracy of HWOA-S3VM will increase with the increase of the labeled sample. It means that the modified S3VM with WOA is successful.


## 4.1. HWOA-S3VM Model

In Section2, we improved S3VM with split tradeoff control parameter Cu into Cu+ and Cu−; it will increase the iteration time and classification accuracy of S3VM. In Section 3, we modified WOA with catfish effect and opposition-based cubic mapping. In this section, we will use HWOA hybridized with S3VM for classification.Literature [44] shows that the parameter γ and regularization parameter C of RBF kernel will determine the classification accuracy of SVM, but the numbers of the two parameters have to be set manually. The different parameters will cause different classification accuracies because HWOA will change the parameter set based on the classification accuracy (best fitness of HWOA) of SVM. So, we will use HWOA to optimize the RBF kernel parameter of SVM. The range of the parameter is from 0 to 1.Algorithm2 shows the pseudocode of HWOA-S3VM. Since the RBF kernel of SVM needs to specify its values to operate, HWOA is used to optimize the RBF kernel of SVM to select the most suitable values for processing.Algorithm 2:The pseudocode of the improved S3VM model (HWOA-S3VM).
Input: labeled dataset Dl=x1,y1,…,xl,ylUnlabeled datasetDu=xl+1,…,xl+uTradeoff control parametersCl, Cu+, and Cu−Output: prediction result of unlabeled sample: y^=y^l+1,y^l+2,…,y^l+uFinal model of HWOA-S3VMProcedure:(1)
Train modelSVMl by Dl when using HWOA to get the kernel parameters γ and regularization parameters C of SVM(2)
UsingSVMl to predict the Du, get y^=y^l+1,y^l+2,…,y^l+u(3)
InitializationCu++Cu−≪Cl(4)
WhileCu++Cu−<Cl, do(5)
Based onDl, Du, y^, Cl, Cu+, and Cu−, solve equation (2)To getw,b,ζ(6)
While∃i,j,n|yi^yj^<0∧ζi>1∧ζj>1∧ζn>1∧ζi+ζj+ζn>3, do yi=−yi; yj=−yj // label exchange;(7)
Based onDl, Du, y^, Cl, Cu+, and Cu− to solve equation (2), to get w,b,ζ(9)
End whileCu++Cu−=min2Cu++Cu−,Cl(10)
End while


## 4.2. Experiment and Result Analysis of HWOA-S3VM

In order to test the classification accuracy of the algorithm, it chooses 5 two-dimension UCI datasets to verify the classification performance of HWOA-S3VM compared with SVM, S3VM, RF [43], and WOA-S3VM.Details of these datasets are shown in Table7. In the experiment, firstly, each dataset is randomly divided into two parts: 30% of the data is training set and the remaining 70% is the testing set. In order to verify the ability to process labeled and unlabeled samples simultaneously of HWOA-S3VM, we set 10% and 20% of the training set as labeled data, and the rest of the training set are unlabeled data. The classification result is shown in Tables 8 and 9.Table 7
Characteristics of datasets.
Name of dataNumber of dataAttributionTraining setTesting setHaberman306390210Pima7688210490Blood7484210490WDBC5692150350Seeds210760140Table 8
Comparison of numerical testing results on five UCI datasets when using 10% of training set as labeled data.
DatasetRF (%)SVM (%)S3VM (%)WOA-S3VM (%)HWOA-S3VM (%)Haberman75.281.1079.0581.4383.80Pima81.486.3286.3284.9087.96Blood81.585.5185.9188.7888.78WDBC78.0086.3090.2889.5092.57Seeds82.8687.5088.6488.5790.00Table 9
Comparison of numerical testing results on five UCI datasets when using 20% of training set as labeled data.
DatasetRF (%)SVM (%)S3VM (%)WOA-S3VM (%)HWOA-S3VM (%)Haberman79.5281.8082.5083.586.67Pima86.3382.3287.4287.4288.78Blood86.1283.4782.4889.1090.61WDBC87.1483.1585.1090.0095.43Seeds84.2087.8588.6489.2991.43Tables8 and 9 show that the HWOA-S3VM is superior to the other four algorithms at classification accuracy. Therefore, intelligent algorithm can improve the S3VM model classification accuracy. The accuracy of HWOA-S3VM will increase with the increase of the labeled sample. It means that the modified S3VM with WOA is successful.


## 5. Application of HWOA-S3VM in Oil Layer Recognition

### 5.1. Design Model of Oil Layer Recognition

Block diagram of the oil layer recognition system based on HWOA-S3VM is shown in Figure5; according to the logging requirements, oil layer recognition can be divided into five steps.Step 1: selection of sample information and prepossessing: it is important to select sample information because of the large amount of logging information. We can choose the data which are closely related to the oil layer information, and the data will randomly be divided into training data set and test dataset. In order to avoid the compute saturation, we will be normalizing all of the data.Step 2: generalization of attribute: in this step, we set decision attributeD = {d}, d=di=i,i=0,1 (0, 1 represent nongas and gas reservoirs, respectively).Step 3: attribute reduction: usually, there are at least 10 kinds of well logging information in well logging data, but there are redundant and sufficient attributes in most of the data; in this paper, we choose a rough set [45] to do the attribute reduction.Step 4: HWOA-S3VM model: input the actual oil layer data to the HWOA-S3VM to train the model and get the HWOA-S3VM oil layer recognition model.Step 5: output the result of HWOA-S3VM oil layer recognition model when the whole test data of the oil layer is inputted.Figure 5
Diagram of oil layer recognition model.


### 5.2. Application on the Actual Oil Layer Datasets

In Section3, the performance of the proposed HWOA is simulated and analyzed on benchmark functions, and in Section 4.2, the effectiveness of the improved S3VM classification model optimized by the proposed HWOA is tested and verified on 5 two- dimension UCI datasets.In this section, we use the three actual oil layer datasets (W1, W2, and W3) to verify the effectiveness of the HWOA-S3VM model. The detailed datasets of the oil layer are shown in Table10. The output decision attribute D = {d}, d=di=i,i=0,1, where 0 and 1 represent dry layer and oil layer, respectively. Table 11 shows the attribute reduction of three oil layer datasets. Figure 6 shows the curves of seven normalized attributes of W1; we use 20% of the training dataset as labeled data to train the classification model. The classification result is shown in Table 10. In Table 10, we compare the result of the supervised algorithms (RF and SVM) and semisupervised algorithms (S3VM, WOA-S3VM, and HWOA-S3VM).Table 10
Oil layer dataset.
WellDepth (m)Number of dataOil layer dataDry layer dataW1Training dataset3020–305026020060Test dataset3300–3350804106698W2Training dataset2600–2606301020Test dataset2900–29381919992W3Training dataset1200–127028052228Test dataset1320–14601100105895Table 11
Attribute reduction of oil layer dataset.
WellAttributesW1Original attributeGR, DT, SP, WQ, LLD, LLS, DEN, NPHI, PE, U, TH, K, CALIReduction attributeGR, DT, SP, LLD, LLS, DEN, KW2Original attributeDENSITY, GAMM, VCLOK, NEUTRO, PERM, POR, RESI, SONIC, SP, SWReduction attributeNEUTRO, PERM, POR, RESI, SWW3Original attributeAC, CALI, GR, NG, RA2, RA4, RI, RM, RT, RXO, SPReduction attributeAC, NG, RI, SPFigure 6
The normalized curves of seven attributes. (a) DT, GR, SP, and LLS. (b) DEN, K, and LLD.
(a)(b)In the oil layer recognition, it will use RMSE and MAE, to measure the performance of the recognition model. The equations of those are as follows:(12)RMSE=1N∑i=1Nei2,MAE=1N∑i=1Nei.In those equations,ei=yi−y^i, where y^i is the real output value and yi is the expected output value. The smaller the RMSE and MAE, the better the performance of the algorithm model will be.


#### 5.2.1. Result of Oil Layer Recognition

The classification result is shown in Table12; we compare the result of the supervised algorithms (RF algorithm and SVM) and semisupervised algorithms (S3VM, WOA-S3VM, and HWOA-S3VM).Table 12
Performance of various well data.
WellModel of classificationRMSEMAEAccuracy (%)Time (s)W1RF0.33160.131789.051.5153SVM0.27510.071991.920.5861S3VM0.29210.152286.071.6821WOA-S3VM0.32230.189292.662.0938CCOWA-S3VM0.22340.173293.532.1958W2RF0.31290.189081.773.1478SVM0.27990.089585.660.5415S3VM0.37560.126191.581.1483WOA-S3VM0.35660.131592.673.0255CCOWA_S3VM0.28830.172296.323.8556W3RF0.34540.151483.481.6483SVM0.32450.145289.491.1214S3VM0.35370.145587.781.5723WOA-S3VM0.32150.125791.002.1156CCOWA-S3VM0.22310.122196.003.2123The result of Table12 shows that the intelligent algorithm can improve the performance of the S3VM model. The HWOA can improve the accuracy and running time compared to WOA-S3VM. HWOA-S3VM gets the best accuracy of W1, W2, and W3 compared to the other four algorithms. HWOA-S3VM can deal with a large number of unlabeled data in oil layer recognition. The results show that the HWOA can effectively improve the S3VM model.Figure7 shows the real distribution of oil layer and the distribution of oil layer detected by the HWOA-S3VM model. The HWOA-S3VM still gets high performance on oil recognition. The extra layer of HWOA-S3VM means that the algorithm can detect more data which the machine cannot detect. It means that HWOA can more effectively recognize the oil layer distribution accurately when there are an amount of unlabeled data in the oil layer.Figure 7
Classification of the HWOA-S3VM model. (a) Real distribution of oil layer of W1. (b) Distribution of oil layer detected by the HWOA-S3VM model of W1. (c) Real distribution of oil layer of W2. (d) Distribution of oil layer detected by the HWOA-S3VM model of W2. (e) Real distribution of oil layer of W3. (f) Distribution of oil layer detected by the HWOA-S3VM model of W3.
(a)(b)(c)(d)(e)(f)


## 5.1. Design Model of Oil Layer Recognition

Block diagram of the oil layer recognition system based on HWOA-S3VM is shown in Figure5; according to the logging requirements, oil layer recognition can be divided into five steps.Step 1: selection of sample information and prepossessing: it is important to select sample information because of the large amount of logging information. We can choose the data which are closely related to the oil layer information, and the data will randomly be divided into training data set and test dataset. In order to avoid the compute saturation, we will be normalizing all of the data.Step 2: generalization of attribute: in this step, we set decision attributeD = {d}, d=di=i,i=0,1 (0, 1 represent nongas and gas reservoirs, respectively).Step 3: attribute reduction: usually, there are at least 10 kinds of well logging information in well logging data, but there are redundant and sufficient attributes in most of the data; in this paper, we choose a rough set [45] to do the attribute reduction.Step 4: HWOA-S3VM model: input the actual oil layer data to the HWOA-S3VM to train the model and get the HWOA-S3VM oil layer recognition model.Step 5: output the result of HWOA-S3VM oil layer recognition model when the whole test data of the oil layer is inputted.Figure 5
Diagram of oil layer recognition model.


## 5.2. Application on the Actual Oil Layer Datasets

In Section3, the performance of the proposed HWOA is simulated and analyzed on benchmark functions, and in Section 4.2, the effectiveness of the improved S3VM classification model optimized by the proposed HWOA is tested and verified on 5 two- dimension UCI datasets.In this section, we use the three actual oil layer datasets (W1, W2, and W3) to verify the effectiveness of the HWOA-S3VM model. The detailed datasets of the oil layer are shown in Table10. The output decision attribute D = {d}, d=di=i,i=0,1, where 0 and 1 represent dry layer and oil layer, respectively. Table 11 shows the attribute reduction of three oil layer datasets. Figure 6 shows the curves of seven normalized attributes of W1; we use 20% of the training dataset as labeled data to train the classification model. The classification result is shown in Table 10. In Table 10, we compare the result of the supervised algorithms (RF and SVM) and semisupervised algorithms (S3VM, WOA-S3VM, and HWOA-S3VM).Table 10
Oil layer dataset.
WellDepth (m)Number of dataOil layer dataDry layer dataW1Training dataset3020–305026020060Test dataset3300–3350804106698W2Training dataset2600–2606301020Test dataset2900–29381919992W3Training dataset1200–127028052228Test dataset1320–14601100105895Table 11
Attribute reduction of oil layer dataset.
WellAttributesW1Original attributeGR, DT, SP, WQ, LLD, LLS, DEN, NPHI, PE, U, TH, K, CALIReduction attributeGR, DT, SP, LLD, LLS, DEN, KW2Original attributeDENSITY, GAMM, VCLOK, NEUTRO, PERM, POR, RESI, SONIC, SP, SWReduction attributeNEUTRO, PERM, POR, RESI, SWW3Original attributeAC, CALI, GR, NG, RA2, RA4, RI, RM, RT, RXO, SPReduction attributeAC, NG, RI, SPFigure 6
The normalized curves of seven attributes. (a) DT, GR, SP, and LLS. (b) DEN, K, and LLD.
(a)(b)In the oil layer recognition, it will use RMSE and MAE, to measure the performance of the recognition model. The equations of those are as follows:(12)RMSE=1N∑i=1Nei2,MAE=1N∑i=1Nei.In those equations,ei=yi−y^i, where y^i is the real output value and yi is the expected output value. The smaller the RMSE and MAE, the better the performance of the algorithm model will be.


### 5.2.1. Result of Oil Layer Recognition

The classification result is shown in Table12; we compare the result of the supervised algorithms (RF algorithm and SVM) and semisupervised algorithms (S3VM, WOA-S3VM, and HWOA-S3VM).Table 12
Performance of various well data.
WellModel of classificationRMSEMAEAccuracy (%)Time (s)W1RF0.33160.131789.051.5153SVM0.27510.071991.920.5861S3VM0.29210.152286.071.6821WOA-S3VM0.32230.189292.662.0938CCOWA-S3VM0.22340.173293.532.1958W2RF0.31290.189081.773.1478SVM0.27990.089585.660.5415S3VM0.37560.126191.581.1483WOA-S3VM0.35660.131592.673.0255CCOWA_S3VM0.28830.172296.323.8556W3RF0.34540.151483.481.6483SVM0.32450.145289.491.1214S3VM0.35370.145587.781.5723WOA-S3VM0.32150.125791.002.1156CCOWA-S3VM0.22310.122196.003.2123The result of Table12 shows that the intelligent algorithm can improve the performance of the S3VM model. The HWOA can improve the accuracy and running time compared to WOA-S3VM. HWOA-S3VM gets the best accuracy of W1, W2, and W3 compared to the other four algorithms. HWOA-S3VM can deal with a large number of unlabeled data in oil layer recognition. The results show that the HWOA can effectively improve the S3VM model.Figure7 shows the real distribution of oil layer and the distribution of oil layer detected by the HWOA-S3VM model. The HWOA-S3VM still gets high performance on oil recognition. The extra layer of HWOA-S3VM means that the algorithm can detect more data which the machine cannot detect. It means that HWOA can more effectively recognize the oil layer distribution accurately when there are an amount of unlabeled data in the oil layer.Figure 7
Classification of the HWOA-S3VM model. (a) Real distribution of oil layer of W1. (b) Distribution of oil layer detected by the HWOA-S3VM model of W1. (c) Real distribution of oil layer of W2. (d) Distribution of oil layer detected by the HWOA-S3VM model of W2. (e) Real distribution of oil layer of W3. (f) Distribution of oil layer detected by the HWOA-S3VM model of W3.
(a)(b)(c)(d)(e)(f)


## 5.2.1. Result of Oil Layer Recognition

The classification result is shown in Table12; we compare the result of the supervised algorithms (RF algorithm and SVM) and semisupervised algorithms (S3VM, WOA-S3VM, and HWOA-S3VM).Table 12
Performance of various well data.
WellModel of classificationRMSEMAEAccuracy (%)Time (s)W1RF0.33160.131789.051.5153SVM0.27510.071991.920.5861S3VM0.29210.152286.071.6821WOA-S3VM0.32230.189292.662.0938CCOWA-S3VM0.22340.173293.532.1958W2RF0.31290.189081.773.1478SVM0.27990.089585.660.5415S3VM0.37560.126191.581.1483WOA-S3VM0.35660.131592.673.0255CCOWA_S3VM0.28830.172296.323.8556W3RF0.34540.151483.481.6483SVM0.32450.145289.491.1214S3VM0.35370.145587.781.5723WOA-S3VM0.32150.125791.002.1156CCOWA-S3VM0.22310.122196.003.2123The result of Table12 shows that the intelligent algorithm can improve the performance of the S3VM model. The HWOA can improve the accuracy and running time compared to WOA-S3VM. HWOA-S3VM gets the best accuracy of W1, W2, and W3 compared to the other four algorithms. HWOA-S3VM can deal with a large number of unlabeled data in oil layer recognition. The results show that the HWOA can effectively improve the S3VM model.Figure7 shows the real distribution of oil layer and the distribution of oil layer detected by the HWOA-S3VM model. The HWOA-S3VM still gets high performance on oil recognition. The extra layer of HWOA-S3VM means that the algorithm can detect more data which the machine cannot detect. It means that HWOA can more effectively recognize the oil layer distribution accurately when there are an amount of unlabeled data in the oil layer.Figure 7
Classification of the HWOA-S3VM model. (a) Real distribution of oil layer of W1. (b) Distribution of oil layer detected by the HWOA-S3VM model of W1. (c) Real distribution of oil layer of W2. (d) Distribution of oil layer detected by the HWOA-S3VM model of W2. (e) Real distribution of oil layer of W3. (f) Distribution of oil layer detected by the HWOA-S3VM model of W3.
(a)(b)(c)(d)(e)(f)


## 6. Conclusions

In this paper, a new semisupervised SVM by hybrid whale optimization algorithm (HWOA-S3VM) is proposed, which includes the improved S3VM model with the tradeoff control parameter, S3VM model parameters optimized with HWOA, and HWOA improved with the opposition-based cubic mapping and catfish effect.The experimental results show that (1) HWOA has higher convergence speed and better global searchability than other algorithms; (2) HWOA-S3VM model has higher classification accuracy on UCI datasets than other algorithms when combining labeled and unlabeled data as the training dataset; (3) the recognition accuracy and speed of the HWOA-S3VM model are superior to that of other four algorithms when applied in oil layer recognition.



---

*Source: 5289038-2021-02-08.xml*