Generalized Oppositional Moth Flame Optimization with Crossover Strategy: An Approach for Medical Diagnosis

In the original Moth-Flame Optimization (MFO), the search behavior of the moth depends on the corresponding flame and the interaction between the moth and its corresponding flame, so it will get stuck in the local optimum easily when facing the multi-dimensional and high-dimensional optimization problems. Therefore, in this work, a generalized oppositional MFO with crossover strategy, named GCMFO, is presented to overcome the mentioned defects. In the proposed GCMFO, GOBL is employed to increase the population diversity and expand the search range in the initialization and iteration jump phase based on the jump rate; crisscross search (CC) is adopted to promote the exploitation and/or exploration ability of MFO. The proposed algorithm’s performance is estimated by organizing a series of experiments; firstly, the CEC2017 benchmark set is adopted to evaluate the performance of GCMFO in tackling high-dimensional and multimodal problems. Secondly, GCMFO is applied to handle multilevel thresholding image segmentation problems. At last, GCMFO is integrated into kernel extreme learning machine classifier to deal with three medical diagnosis cases, including the appendicitis diagnosis, overweight statuses diagnosis, and thyroid cancer diagnosis. Experimental results and discussions show that the proposed approach outperforms the original MFO and other state-of-the-art algorithms on both convergence speed and accuracy. It also indicates that the presented GCMFO has a promising potential for application.

Since it was established, many scholars have employed various strategies to enhance the convergence speed and accuracy of MFO to obtain stronger MFO varieties.One way is to integrate local search and/or global search mechanisms to boost exploration and/or exploitation of original MFO.A new enhanced MFO named OMFO was presented by introducing OBL, Cauchy Mutation (CM), and Evolution Boundary Constraint Handling (EBCH) [42] .Chaotic maps had been utilized to replace the parameters of MFO based on their randomicity to enhance the exploration and/or exploita-tion capability of the original MFO [3,[43][44][45] .Lévy-Flight was also adopted to boost the exploration and/or exploitation ability of MFO [46][47][48] .Zhang et al. integrated orthogonal learning and Broyden-Fletcher-Goldfarb-Shanno into MFO to enhance its exploration and exploitation and applied it to constrained engineering optimization problems [49] .
Another way is to combine the characteristic of other EAs with the feature of the original MFO to heighten the performance of basic MFO.The specific search mechanism of advanced EAs can make up for the shortcomings of basic MFO.For example, PSO was integrated into MFO to accelerate its convergence speed and improve its accuracy [50] .A new kind of nature-inspired algorithm Water Cycle Algorithm (WCA) was also introduced into MFO to enhance the exploitation capability of MFO [51,52] .Firefly Algorithm (FA) was integrated into MFO to enhance the exploitation ability of MFO [53] .Gaussian mutation and opposition-based learning were introduced into MFO to boost its performance [54] .Chen et al. introduced the Sine Cosine Algorithm (SCA) feature into MFO to enhance its exploration performance [55] .
Many scholars have improved MFO to make it suitable for suit binary problems and multi-objective problems.Such as Binary-coded Modified Moth Flame Optimization Algorithms (BMMFOA) to solve unit commitment problems existing in power system operational scheduling [56] .The mixed-integer optimization problems were solved by MFO [57] .A Non-dominated Sorting Moth-Flame Optimization algorithm (NS-MFO) was presented for multi-objective problems based on the elitist non-dominated sorting and crowding distance approach [58] .MFO and other bio-inspired algorithms were utilized to deal with wind integrated multi-objective optimal power dispatch (MOOD) problems [59] .
Since it was proposed, MFO has been applied to solve various engineering problems.Zhang et al. introduced orthogonal learning and Nelder-Mead simplex with MFO to tackle photovoltaic modules' parameters and achieve competitive results [11] .MFO was combined with Neutrosophic Sets (NS) for breast cancer medical diagnosis [60] .MFO was used to evaluate the schedule plans of the regionally integrated energy system [61] .
MFO was also adopted to evaluate the parameters of machine learning algorithms [3,[62][63][64] .Li et al. combined feature selection with MFO based SVM to predict the diagnosis of tuberculous pleural effusion [65] .Xu et al. combined improved binary moth-flame optimization algorithm with an extreme learning machine to predict phenanthrene toxicity on mice [66] .
Deng et al. integrated three improved strategies: differential mutation, multi-population mutation, and feasible solution space transformation to boost the optimization performance of MSIQDE [67] .Niche co-evolution mechanism cooperated with enhanced particle swarm optimization algorithm to enhance the performance of the Quantum Evolutionary Algorithm (QEA) in solving multi-objective optimization problems [34] .The OBL, multi-population parallel control, and co-evolutionary mutation were employed to strengthen the optimization capability in identifying the parameters of photovoltaic (PV) models [68] .The optimal mutation mechanism, the wavelet basis, and normal distribution functions were embedded into differential evolution to accurate its convergence speed and accuracy in dealing with function optimization and airport gate assignment problem [69] .The greedy mutation mechanism was adopted to enhance the performance of the enhanced success history adaptive DE (LSHADE) in optimizing the parameter of PV models [70] .
Generalized opposition-based learning has been proved that can produce a higher quality population in the Initialization and iteration jump phase by many scholars, meanwhile, crisscross search can enhance the global convergence of SI-based algorithms such as PSO [71,72] and DE [73] .Therefore, this paper presented an enhanced moth-flame optimization called GCMFO by embedding crisscross search and generalized oppositional-based learning to accelerate the optimization capability of MFO.At the same time, the proposed GCMFO is applied in function optimization, and the real-life medical diagnosis cases.The contribution of this work can be summarized as follows: (1) Crisscross search technique can boost the exploration capacity of each agent in the population.Hence the optimization performance of MFO has been accelerated.
(2) Generalized opposition-based learning can in-crease the diversity of the population in MFO; at the same time, it expands the search area in the search process so that it can avoid premature convergence effectively.
(3) The designed framework makes the balance between exploitation and exploration achieve a steadier condition.
(4) GCMFO can be treated as a promising solving method for medical diagnosis.
The main work of this paper is described as follows: the fundamental of MFO, crisscross search and generalized opposition-based learning are demonstrated in section 2. The implementation details and framework of the proposed GCMFO are shown in section 3. The experiment results and discussion about CEC2017 benchmark problems, and medical diagnosis are described in detail to confirm the performance of our method in section 4. At last, the conclusions and future works are summarized in section 5.

Background 2.1 Moth-Flame Optimization (MFO)
An interesting phenomenon is that moths navigate to the moon, lights, or other luminous objects on the spiral trajectory to keep the fixed orientation with the target object.Inspired by this mechanism, Mirjalili established MFO to solve global optimization problems [39] .There are two kinds of individuals, and one is called moths; the other is flames.In MFO, moths denote the candidate solutions in the search space; at the same time, flames indicate the obtained optimal solutions.The main operation steps of MFO are described as follows.
Firstly, generating the initial swarm of moths randomly, calculating the fitness of moth population, and tagging the sorted initial moth swarm in the ascending order according to fitness as an initial flame population.
Then, decreasing the flame population size to the determined number R linearly, updating the location of each moth depending its corresponding flame based on the spiral curve function.Merging the updated moth population into the current flame population, selecting the R best agents as the new flame population for the next iteration.The process of updating the moth population and the flame population will be repeated until the termination condition is met.
At last, when the termination condition is reached, outputting the best flame that denotes the global best solution.The pseudocode of the MFO is shown in the supplementary material.

Generalized opposition-based learning (GOBL)
In 2005, Tizhoosh proposed the concept of opposition-based Learning, named OBL for the computational intelligence field [74] ; since Tizhoosh, OBL has been proved to enhance population diversity the exploration ability of SI [74] .Wang et al. presented the variant version of OBL generalized opposition-based learning [75] , called GOBL, and applied it to accelerate the performance of DE [76,77] , PSO [75] , ABC [78,79] , and so on.

GOBL-based population initialization
In the population initialization stage, GOBL is utilized to calculate the opposite position of the agents in the initial population X with N agents, the opposite positions of the individuals in the initial population construct the opposite population of the initial population X GO based on the Eq. ( 1), and Eq. ( 2).The N best individuals are selected from the mixed population formed by the initial population M and the opposite population M GO as the new initial population to participate in the next optimization process.In this phase, GOBL can make the algorithm obtain a better initial population that can lead the population to find a better optimal solution with high probability.
, , ( ) , , where i = 1, 2, …, N; j = 1, 2, …, D; M i,j denotes the jth dimension of the ith individual in the population; , GO i j M indicates the opposite location of M i,j ; lb j and ub j are the jth dimensions of the lower boundary and upper boundary of the feasible region in the given problem; k is a random number in the range [0, 1]; N means the population size; D is the dimension value of the given problem.If the opposite position of the individual is out of the search space, they will be randomly regenerated within the search space (lb, ub).

GOBL-based population optimization
During the iterative optimization process, GOBL is used to generate the opposite population M GO of the current population M by calculating the opposite positions of the agents in the current population-based on Eqs. ( 3) -( 5).Merge the current population M and the opposite population M GO into a hybrid population MM GO , then select N best agents from the hybrid population MM GO to update the current population and get into the next iteration.In this stage, GOBL can avoid the population trapping in the local optimum and expand the search region for the population.
, , min( ), max( ), , where a j and b j are the jth dimensions of the dynamic lower boundary and upper boundary of the current population, they are determined by the current population distribution; M i,j means the jth dimension of the agent in the current population; k is a random number in the range [0, 1]; N means the population size; D is the dimension value of the given problem.If the opposite position of the individual is out of the search space, they will be regenerated within the search space (a, b) randomly.

Crisscross search optimization (CC)
Inspired by the golden mean concept in Confucianism and the crossover operator in GA, Meng et al. presented a crisscross optimization algorithm (CSO) [80] and applied it in large-scale economic dispatch problems in the electric power system [81][82][83] .In CSO, the key mechanism is crisscross search (CC), containing vertical crossover and horizontal crossover.Zhao et al. introduced the CC mechanism into ant colony optimization to deal with multi-threshold image segmentation [84] .Liu et al. combined the CC strategy with HHO to estimate the parameters of photovoltaic models [85] .They all acquired promising results and verified the effect of CC in the search process.

Vertical crossover search
The vertical crossover can enhance the population diversity and avoid some dimensions trapping into stagnation.It can be realized by carrying out the arithmetic crossover on all agents between two diverse dimensions.If the j1th and j2th dimensions of the ith agent are selected to perform the vertical crossover, so a new offspring Mvc i can be generated based on Eq. ( 6) and Eq. ( 7). , , (0,1), r unifrnd  where Note that it should carry out normalization operation based on each dimension's lower and upper boundary before the vertical crossover operation to ensure the offspring generated by the vertical crossover operation distribute in the boundary of each dimension.After performing the vertical crossover, carry out the reverse normalization operation to guarantee the offspring locate in the boundary of the given problem.The pseudocode of the vertical crossover is illustrated in the supplementary material.

Horizontal crossover search
The horizontal crossover can accelerate the exploration and exploitation of the search agent.It is implemented by performing an arithmetic crossover operation on all dimensions between two diverse agents.If a pair of agents M i1 and M i2 are chosen to perform the horizontal crossover, the two offspring Mhc i1 and Mhc i2 of M i1 and M i2 can be produced by Eq. ( 8) and Eq. ( 9), respectively.
) , where Mhc i1,j, and Mhc i2,j are the jth dimension of Mhc i1 and Mhc i2 .M i1,j, and M i2,j denote the jth dimension of M i1 and M i2 .r1 and r2 are uniformly distributed random numbers in the region (0, 1].c1 and c2 are uniformly distributed random numbers in the region [−1, 1].The pseudocode of the horizontal crossover is demonstrated in the supplementary material.

The proposed GCMFO
Based on the above background knowledge, the implementation and analysis of computational time complexity are described below.

The implementation of GCMFO
In this work, GOBL and CC are both embedded into the original MFO to boost its optimization performance, GOBL strategy is utilized in the initialization phase to improve the quality of the initial population, and on the iteration jump stage to increase the population diversity and expand the search area, the cooperation between GOBL and CC makes the exploration and exploitation of the proposed GCMFO reach a steadier status.The implementation details are described step by step as below.
Step 1: Initialize the relevant parameter in the presented GCMFO, such as population size N, the problem dimension D, the lower boundary lb and the upper boundary ub of the solution space, the maximum fitness evaluations MaxFEs, the control coefficient p2 in vertical crossover search, the jump rate Jr for GOBL during the iteration jump.
Step 2: Initialize the location of each moth M i in the population randomly within the lower boundary lb and the upper boundary ub by Eq. ( 10), the current fitness evaluations FEs = 0, the current iteration t = 1.
Step 3: Evaluate the moth population, FEs = FEs+N; perform GOBL-based population initialization strategy to obtain new initial moth population, FEs = FEs+N.
Step 4: Calculate the flame number R and the parameter a according to Eqs. ( 11) and ( 12), respectively. ( Step 5: If t == 1, sort the initial moth population on the ascending order according to fitness, tag the R best-sorted moths as the initial flame population; else sort the current moth population on the ascending order according to fitness, merge the current sorted moth population into the current flame population, mark the R best-sorted moths as the next flame population.
Step 6: For each moth, firstly, update its position M i , amend the position M i within the lower boundary lb and the upper boundary ub; secondly, calculate its vertical crossover solution Mvc i through carrying out vertical crossover search, amend the position M i within the lower boundary lb and the upper boundary ub.
Step 7: Therefore, the vertical crossover solutions compose the vertical moth population Mvc, evaluate the moth population M and the vertical moth population Mvc, choose the best N agents from the moth population and the vertical moth population as the current moth population, FEs = FEs+2N.
Step 8: Perform the horizontal crossover search to form the horizontal moth population Mhc, evaluate the horizontal moth population Mhc, select the best N individuals from the moth population, and the horizontal moth population as the current moth population, FEs = FEs+N.
Step 10: If FEs<MaxFEs, go to Step 5; else, return the best flame, end.
The flowchart of GCMFO is demonstrated in the supplementary material.

The analysis of computational time complexity
As it is described in the above details, the proposed GCMFO is formed by basic MFO, CC, and QOBL strategy, so the computational complexity of GCMFO is defined by the computational complexity of the original MFO, CC, and QOBL.
In the initialization stage, the random initialization consumes N fitness calculations.Therefore, its computational complexity is O(ND); due to the GOBL-based population initialization strategy generates new N solutions, the GOBL-based population initialization expends N fitness evaluations too, and its computational complexity is O(ND) too, so in the initialization stage it uses 2*N fitness calculations and its total computational complexity is O(2ND).
In every iteration, the position update mechanism of MFO pays N fitness evaluations, and its computational complexity is O(ND); on the vertical crossover search, it has the same N fitness evaluations and the same computational complexity O(ND) as the position update mechanism in MFO; on the horizontal crossover search, it uses N fitness evaluations, and its computational complexity is O(ND) too; under the worst condition, GOBL-based population optimization operation consumes N fitness calculations and its computational complexity is O(ND).So, it pays 4N fitness evaluations in each iteration, and the total computational complexity is O(4ND).
Therefore under the constraint of the maximum fitness evaluations MaxFEs, the total iteration numbers are 1+(MaxFEs−2N)/(4N), so the total computational complexity is O(2ND+(MaxFEs−2N)D), it can be summarized as O(MaxFEsD), so it can be concluded that the computational complexity of our method is only related to the maximum fitness evaluations MaxFEs and the dimension D of the given problem.

Experimental results and discussions
In this part, a series of experiments are organized and implemented to reveal the performance of GCMFO.Firstly, the comprehensive analysis and comparison of GCMFO are performed on the CEC2017 30D test in comparison to state-of-the-art algorithms in the subsection of section 4.1.At last, in section 4.2, the proposed GCMFO is integrated into KELM to deal with real medical diagnosis cases.
In these tests, both the Wilcoxon singed-rank test and Friedman test are used to compare the results obtained by the different algorithms following the suggestion in Ref. [86, 87].The Wilcoxon singed-rank test [87] is adopted with a 0.05 significance level to determine whether there is a statistical significance between GCMFO and other peers.The Friedman test is also used to measure the performance differences between the GCMFO and other compared methods.

Experiment 1: CEC2017 benchmark set test
The CEC2017 benchmark set is adopted to evaluate the performance of GCMFO compared to state-of-the-art methods in this section; the details of the CEC2017 benchmark set can be seen in the corresponding technique report [88] and in the supplementary material.In this experiment, fifteen typical improved swarm intelligence variants are chosen as compared algorithms; the parameter settings of these compared algorithms are illustrated in the supplementary material.
To make it fair, for all the involved algorithms, the population size N is set to 40, all the involved algorithms execute 30 times independently, the maximum fitness evaluations MaxFEs is set to 300000; in this test, the dimension of the given problem D is 30.

Comparison with improved MFO variants
The contrast experiment is conducted between GCMFO and other advanced MFO variants in this section.The overall ranking of all the selected MFO variants for the CEC 2017 benchmark 30D test based on average fitness results and the p-value results of GCMFO against other MFO variants for the CEC 2017 benchmark 30D test are demonstrated in the supplementary material; it can be found that GCMFO is the No.1 peer in the competition, based on these results it can be seen that GCMFO obtains the best score 2.0 and ranks first.It can be observed that there is a significant difference between the GCMFO and other MFO variants for most of the test functions.The last line of the table indicates the comparison results between GCMFO and other MFO variants based on the Wilcoxon singed-rank test, and it can conclude that GCMFO stays ahead of other MFO variants.LGCMFO is next to the winner, GCMFO; in the competition between GCMFO and LGCMFO, GCMFO wins on 18 test functions, it loses to LGCMFO 3 functions, they get a draw on 9 functions.CMFO shows the worst performance in the competition, it is beaten by GCMFO on 28 functions, it draws with GCMFO on 2 functions.
The ranking results of all the MFO variants for the CEC 2017 benchmark 30D test based on the Friedman test are listed in Table 1.It can be observed that GCMFO gets the best score of 2.2789 on the 30D test from Table 1.The Friedman ranking scores acquired by all the other competitors are more than 2.9.These results also prove the significance of the proposed GCMFO in solving the Fig. 1 The convergence plots of F5, F6, F9, F12, F13, F16, F20, F23, F30.
global optimization problem.Based on the Wilcoxon singed-rank test results and the Friedman test, it can conclude that the GOBL and CC mechanisms enhance the exploration and exploitation ability much better and result in a faster convergence speed and a better convergence accuracy, as shown in Fig. 1.Though CLSGMFO and LGCMFO embedded more strategies than the proposed GCMFO, they still perform worse than GCMFO.All these conclusions indicate that GOBL and CC strategy can integrate with the original MFO more reasonably.

Comparison with state-of-the-art algorithms
The overall ranking of all the methods for the CEC 2017 benchmark 30D test based on average fitness results and the p-value results of GCMFO against other compared methods for the CEC 2017 benchmark 30D test are illustrated in the supplementary material.From these results, it can be known that GCMFO is on the top of the rank, the last two lines show the average ranking value and the rank value, from these results it can be found GCMFO gets the lowest score 2.2333 and the best ranking No.1.It can be observed that there is a significant difference between the GCMFO and the other methods for most of the test functions.The last line of the table reveals the comparison results between GCMFO and other competitors based on the Wilcoxon singed-rank test; it can be concluded that GCMFO is superior to each compared method.ALCPSO falls behind the winner GCMFO; in the competition between GCMFO and ALCPSO, GCMFO wins on 19 test functions, it loses to ALCPSO on 3 functions, they get a draw on 8 functions.SCADE and OBSCA perform worst in the competition; they all be beaten by GCMFO on all 30 functions.
The ranking results of all the involved algorithms for the CEC 2017 benchmark 30D test based on the Friedman test are demonstrated in Table 2.It can be observed that GCMFO gains the least score of 2.6522 on the 30D test from Table 2.The Friedman ranking scores gained by all the other competitors are far bigger than 3.4.These results also prove the significance of the proposed GCMFO in solving the global optimization problem.The main reason for the enhanced performance of GCMFO in comparison with the competitors can be attributed as below: first of all, GOBL can increase the population diversity and expand the search area in the search process, it can avoid the stagnation condition to take place and move to a better region, it makes the convergence curve keep a decreasing trend, so the convergence accuracy will be improved as shown in Fig. 2; then, CC can enhance the exploration ability of GCMFO, so the convergence rate and accuracy will be boosted, Fig. 2 can also verify this.The cooperation between GOBL and CC can make the proposed GCMFO achieve a more reasonable balance between exploration and exploitation drifts.The above results analysis and discussion confirm that GOBL and CC boost the performance of GCMFO in solving optimization problems from all angles.
GWO based KELM (GWO-KELM), MFO based KELM (MFO-KELM), SSA based KELM (SSA-KELM) are adopted as compared models.All nine models are evaluated on three real medical datasets: overweight statuses and ultrasound-based thyroid cancer.In addition, there are also many other classifiers such as extreme learning machine (ELM) [98] , Convolutional Neural Networks (CNN) [99,100] , and so on in the classification fields.
In this experiment, to be fair, the search range of parameters C and γ in WOA-KELM, GWO-KELM, MFO-KELM, SSA-KELM, and GCMFO-KELM is [2 −8 , 2 8 ], the population size is 10, the maximum iteration number is 50.In KNN, the value of the nearest neighbor is 1; it uses the Euclidean distance metric.In SVM, it adopts the Gaussian kernel function; both the publish coefficient and the kernel function parameter are determined by the grid search, the implementation of SVM is based on LIBSVM [101] , the domain of parameter C and γ is same as other population based KELM classifiers.In CART, the parameters are set as the default value in the software package, it is implemented by the classification tree (fitctree) algorithm in the MATLAB statistics toolbox.In BP, eight hidden neurons are utilized for the train, the maximum iteration number is 200, the learning rate is set to 0.01, and the mean squared error goal is set as 0.001, the implementation of BP has based BP on the Levenberg-Marquardt training algorithm in the MATLAB neural network toolbox.To ensure the classification results be unbiased, 10-fold cross-validation will be used to evaluate the effect, in the 10-fold cross-validation, the datasets are divided into ten por-tions, in which nine parts are used for training, and one part is used for verification.

Measure metrics for performance evaluation
In the medical disease prediction problem, four evaluation indicators that classification accuracy (ACC), sensitivity, specificity, and Mathew Correlation Coefficient (MCC) are used to estimate the performance of the model.
ACC denotes the classification precision of the model for true positive samples and true negative samples; sensitivity indicates the classification accuracy of the true positive instances in the positive instances; specificity means the classification accuracy of the true negative instances in the negative instances; MCC denotes the reliability of the model.

Appendicitis diagnosis
This research contains the patients undergoing appendectomy in Wenzhou Central Hospital, Zhejiang Province, China from January 1, 2015, to December 31, 2016.The filtering criteria are histological reports of appendicitis.The pathology reports of the normal appendix or malignant tumor will be removed.We analyzed the medical records of the patients who met the criterion.The thesis committee approved Wenzhou Central Hospital's research and received written consent from all the patients.We have not only collected the basic demographic data such as sex, age, and vital signs containing body temperature and heart rate and also gathered the presurgical laboratory characteristics comprising white blood cells, lymphocytes, neutrophils, monocytes, eosinophils, hemoglobin, red blood cells, platelets, urea nitrogen, blood glucose, creatinine, bilirubin and C-reactive protein (CRP).All the patients are divided into the CAP group and the UAP group.CAP includes gangrene or perforated appendicitis and/or diffuse peritonitis.Acute appendicitis includes complex and non-complicated; the criteria are operation report and pathology results of the appendix.The finding in operation is crucial when surgical results are not consistent with pathology reports.
We used SPSS 16.0 software to perform statistical analysis and adopted the Student t-test to measure the data; we also utilized Fisher's exact test to classify var-iables.There is statistical significance when the p-value is less than 0.05.There are significant differences between the CAP and UAP groups on CRP, body temperature, heart rate, white blood cells, lymphocytes, neutrophils, eosinophils, urea nitrogen, and blood glucose.On these criteria, the CRP group is markedly higher than the UAP group.But there are no significant differences between the CAP group and UAP group on sex, monocytes, hemoglobin, red blood cells, platelets, creatinine, and bilirubin.
The specific results gained by different classifiers on appendicitis diagnosis are listed in Table 3.It can be observed that GCMFO-KELM gets the average value of 76.84% ACC, 77.96% sensitivity, 76.13% specificity, and 54.09% MCC.
In Table 3, it can be found conclusions as follows: concerning the criteria ACC, the classifier GCMFO-KELM based on our method GCMFO provides the highest classification accuracy in comparison to the other compared classifiers, it also holds the second-best standard deviation (Std), SSA-KELM ranks second (74.76%) on classification accuracy, KNN, BP, CART, WOA-KELM, GWO-KELM, and MFO-KELM are behind SSA-KELM, they are less than 74.6%, at the same time, SVM offers the worst classification accuracy 68.09%; in terms of the criteria sensitivity, SVM acquires the biggest mean value 83.76%, all the other classifiers are no more than 78%, in which our method GCMFO-KELM possessed the secondbest average value 77.96%, it is more than the rest of classifiers one percentage point; Considering the indicator Specificity, the proposed method GCMFO-KELM has the best results 76.13%, KNN holds the second-highest value 75.57% and follows GCMFO-KELM, SVM provides the worst result 53.19%.Regarding the index MCC, our method GCMFO-KELM can still get the best result 54.09%, WOA-KELM, GWO-KELM, and MFO-KELM hold the second biggest result 48.88%, they are ahead of the remaining classifiers, CART is worst 46.30%.In a word, the above results and discussions confirm our method GCMFO-KELM shows competitive performance in comparison with other classifiers, so it can be regarded as a promising technique for real appendicitis diagnosis.
are related to a malignant tumor, such as taller than the wide, solid interior, irregular edge, hypoechoic, and microcalcification based on chi-square analysis, at the same time, there are some features related to benign nodule as follow: the wide of the shape is bigger than tall, no solid component, smooth edge, and isopach.There is no significant difference between some features and benign and malignant nodules.
The concrete results gained by different classifiers on ultrasound-based thyroid cancer diagnosis are shown in Table 4.It can be seen that GCMFO-KELM obtains the average value of 87.16% ACC, 77.97% sensitivity, 94.32% specificity, and 73.75% MCC.

Conclusions and future works
In this paper, an enhanced MFO named GCMFO is proposed by introducing GOBL and CC mechanisms into the original MFO.Both GOBL and CC mechanisms cooperate to boost the exploration and exploitation of MFO.The proposed GCMFO is verified by solving the benchmark optimization problems, and the parameter optimization of KELM for solving real-life medical diagnosis cases.The experimental results reveal that the presented GCMFO can effectively solve practical opti-mization problems and be treated as a promising solution for real-world optimization problems.
In the future, we will focus our research on the following aspects: On the one hand, GCMFO can be equipped with high-performance techniques to reduce the computational burden; on the other hand, GCMFO can be modified to the multi-objective version and binary version for specific application.

Acknowledgment
This research is supported by the National Natural Science Foundation of China (62076185, U1809209), Zhejiang Provincial Natural Science Foundation of China (LY21F020030), Wenzhou Science & Technology Bureau (2018ZG016), Taif University Researchers Supporting Project Number (TURSP-2020/125), Taif University, Taif, Saudi Arabia.We thank Doctor Ali Asghar Heidari for his effort on polishing the paper.We acknowledge the efforts of the pioneer editor and valuable comments of anonymous reviewers during the revision of this research.Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made.
The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material.If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.

Table 1
The average Friedman ranking of MFO variants

Table 2
The average Friedman ranking value gained by the algorithms

Table 4
The results acquired by different classifiers on ultrasound-based thyroid cancer diagnosis KELM has the second-best result 66.16%, it is bigger than the rest classifiers, among them KNN is worst 51.80%.In brief, the results and discussions approve that our method GCMFO-KELM performs best compared to other classifiers, so it can be considered a promising scheme for real ultrasound-based thyroid cancer diagnosis.