Fairness in Bio-inspired Optimization Research: A Prescription of Methodological Guidelines for Comparing Meta-heuristics

Abstract: Bio-inspired optimization (including Evolutionary Computation and Swarm Intelligence) is a growing research topic with many competitive bio-inspired algorithms being proposed every year. In such an active area, preparing a successful proposal of a new bio-inspired algorithm is not an easy task. Given the maturity of this research field, proposing a new optimization technique with innovative elements is no longer enough. Apart from the novelty, results reported by the authors should be proven to achieve a significant advance over previous outcomes from the state of the art. Unfortunately, not all new proposals deal with this requirement properly. Some of them fail to select an appropriate benchmark or reference algorithms to compare with. In other cases, the validation process carried out is not defined in a principled way (or is even not done at all). Consequently, the significance of the results presented in such studies cannot be guaranteed. In this work we review several recommendations in the literature and propose methodological guidelines to prepare a successful proposal, taking all these issues into account. We expect these guidelines to be useful not only for authors, but also for reviewers and editors along their assessment of new contributions to the field.

\section{Introduction}
\label{sec:intro}

Bio-inspired algorithms in the field of optimization is a mature research area. The number of contributions submitted to conferences and journals of this area increases sharply every year \cite{del2019bio}. However, a major fraction of these proposals do not prove the goodness of new algorithms appropriately. It is often the case that a work presenting a new bio-inspired algorithm raises doubts in regards to the true contribution of the new proposal. As a result, these concerns put at risk its acceptance by the research community or, alternatively, its capacity to assess the true contribution and significance of the proposed research.

There are a number of reasons for this noted fact, ranging from low-quality papers to works lacking originality \cite{molina:20}. In those cases, there is little to do but to continue investigating toward reaching better results. On the other hand, there is a number of works whose contribution appear to be significant, but that can not be accepted for several reasons. These include, but are not limited to, experimental flaws, questionable/insufficient validation efforts, or a weak discussion of the results. Although these practices could be easily avoided, their repeated occurrence makes them a crucial problem: rigorous experimental practices are needed so that the community could embrace the conclusions drawn from a research work, eventually leading to meaningful advances in this research field.

Several papers can be found with suggestions about important issues found in experimental benchmarks and comparison among meta-heuristics. Each of them focuses on a specific aspect, such as how to design the experiments \cite{stanley66_influen_fisher_desig_exper_educat} or how to select and interpret statistical tests to assess the relative differences among algorithms \cite{statistics}. However, to the best of our knowledge, there is no prior work that deals, at the same time, with different relevant issues that could ultimately jeopardize the fairness assumed in the performance comparisons among techniques. When the goal is to discriminate which algorithm performs best among a set of possible choices, fairness should be an unwavering principle. This includes the design of the benchmark, the selection of performance metrics, and the analysis and discussion of the results. Without this principle being guaranteed along the experimental workflow, conclusions extracted from these studies will remain in doubt.

The main objective of this manuscript aligns with the above remarks. Specifically, we review the literature background and provide a set of useful guidelines intended for researchers to avoid common mistakes in experiments with bio-inspired meta-heuristics. Those bad practices could eventually generate doubts about the fairness of the comparisons reported therein. Our methodological approach is pragmatic, mainly aimed at making it easier for new researchers entering this area to prepare an experimental section under high quality standards. We start our study by exploring current approaches for algorithms' analysis. We pay special attention to bad practices, identified not only in this work but also in previous literature. All this information can be found in Section \ref{sec:analysis}.

Then, we propose 4 guidelines that authors introducing a new algorithmic proposal should take into account to boost their chances to get their work embraced by the community. In particular, these guidelines focus on the (1) selection of benchmarks; (2) validation of the results; (3) components analysis and parameter tuning of the proposal; and, finally, (4) discussion of why a newly proposed algorithm is useful. We provide a brief motivation for each of them in the following paragraphs, whereas Sections \ref{sec:guideline1}--\ref{sec:guideline4} present detailed methodological guidelines for the elaboration of successful proposals:
\begin{itemize}[leftmargin=*]
\item \textbf{Guideline \#1: Benchmarks.} Sometimes the benchmark is a real-world problem. In these cases, the benchmark gauges how the proposed algorithm tackles the problem at hand. By contrast, in other cases the proposal is compared against other reference algorithms by using a benchmark specially designed to test their performance. In any case, the selection of the appropriate benchmark is an important issue, since the conclusions that can be extracted from the study depend deeply on the test bed. Unfortunately, the chosen benchmarks frequently present some features that might favor algorithms with a particular bias. This is, of course, not desirable for the sake of fairness in the subsequent comparisons. Thus, the results obtained by the newly proposed solver must be analyzed by taking into account the different characteristics of the test problems covered by the benchmark at hand.

\item \textbf{Guideline \#2: Validation of the results.} The presentation of raw results arranged in full-page tables is, today, not enough. A proper validation of the results from a statistical point of view should always be provided along with the aforementioned tables. In this sense, it is important that not only statistical tests are used, but also that the correct ones are applied. It is quite usual to find parametric tests that are used without ensuring that the assumptions required for those tests are met by the obtained results. In addition, we also recommend visualization techniques for comparative analysis. They can summarize a significant amount of information in a condensed representation that can be quickly grasped and interpreted by the reader.

\item \textbf{Guideline \#3: Components analysis and parameter tuning of the proposal.} The hypotheses of the proposal must be clearly stated at the beginning of the paper, and discussed once the results have been validated. Moreover, the authors should conduct a thorough analysis of the results considering, at least, the following aspects: search phases identification (balance between exploration and exploitation), components and complexity analysis (individual analysis of the contribution of each of the components of the overall method, and their complexity), parameter tuning of the algorithm, and statistical comparison with state-of-the-art algorithms (as described in Guideline \# 2).

\item \textbf{Guideline \#4: Why is my algorithm useful?} Finally, prospective contributors should clearly state why their proposed algorithm should be considered relevant by the rest of the community. In this guideline we discuss this issue in depth from different points of view. We also suggest several reasons for which a new proposal poses an advance in knowledge (i.e. it is found to be competitive against state-of-the-art methods, it presents methodological contributions that stimulate further research, or other reasons later elaborated).
\end{itemize}

In order to illustrate each of the problems discussed in this contribution, we will resort to different use-cases coming from our previous experience or especially tailored for the purposes of this study. Data utilized for each of these exemplifying problems may vary, as not all situations can be clearly explained with one single example. We also provide a case study in Section \ref{sec:case_study} that describes the process of designing and evaluating a new algorithm (SHADE-ILS) according to the methodology proposed herein. It embraces all the methodological guidelines by, first, selecting a standard benchmark (CEC'2013 LSGO), a performance measure (ranking) and the reference algorithms. Then, we conduct a proper statistical validation of the results compared with those of the reference algorithms. We also use visualization techniques to offer a more clear view of the results. To continue, the contribution of each component of the new algorithm is analyzed to ensure that all of them contribute to the results of the overall method. The case study finishes with a discussion on the usefulness of the new proposal. As can be seen, it properly covers all the methodological guidelines proposed in this contribution.

As a summary, the main key elements of this work are:
\begin{enumerate}[leftmargin=*]
    \item A literature review, with an emphasis on the identification of bad practices in the analysis of new algorithmic proposals.
    \item Four methodological guidelines to help authors achieve contributions adopted by the community.
    \item A case study, as described in the previous paragraph, that simulates the process of proposing a new algorithm by following the aforementioned four methodological guidelines.
\end{enumerate}

The remainder of this paper is organized as follows. Section \ref{sec:analysis} discusses several previous useful guidelines and recommendations in the literature. Sections \ref{sec:guideline1} through \ref{sec:guideline4} present and discuss the guidelines proposed in this work, whereas in Section \ref{sec:case_study} we provide a case study covering some of these guidelines. Finally, Section \ref{sec:conclusions} concludes the study.

\section{Relevant issues for the proposal of methodological guidelines}\label{sec:analysis}

In any field of science, it is crucial to work under correct and unbiased experimental conditions, and to conduct a rigorous and adequate analysis of the obtained results. However, sometimes there are small aspects that can lead to inadvertently biased comparisons, partially benefiting a certain type of algorithms over the others.

In this section we review prior work in the literature, advising constructively against issues that could generate objective doubts about the strength of the experimental claims. Specifically, we revisit several particular topics of relevance for the current study: the presence of bias in the search process (Section \ref{sec:lit_benchmark}), relevant features that should be taken into account when selecting benchmarks (Section \ref{sec:features}), prior studies focused on the validation of experimental results (Section \ref{sec:lit_results}), and existing works on component analysis and parameters tuning (Section \ref{sec:lit_analysis}). Topics tackled in this first background analysis have a straightforward connection with our methodological guidelines given in Sections \ref{sec:guideline1} to \ref{sec:guideline4}.

\subsection{Bias in the search process}
\label{sec:lit_benchmark}

One of the most critical decisions when evaluating an algorithmic proposal is the selection of the benchmark used to show its goodness.
Unfortunately, for many papers the testbed was proposed by the same authors, and is normally a combination of well-known synthetic theoretical functions. Moreover, the only measure of performance is often the benchmark proposed. The design of a good benchmark is not an easy task, and they can be used for benefiting newly proposed methods by exploiting any bias in the search algorithm \cite{weise12_evolut_optim}.
\begin{itemize}[leftmargin=*]
\item \emph{Optima close to the center of the domain search:} one of the most typical sources of bias is the tendency of some algorithms to explore with more intensity in the surroundings of the center of the domain search. This has been traditionally where the optimum of the problem under analysis is located, and many versions of Genetic Algorithms (GA), Particle Swarm Optimization (PSO), or Differential Evolution (DE) \cite{Storn1997}, \cite{struct_bias} have exploited this characteristic. Those algorithms, on the other hand, tend to exhibit a bad performance near to the bounds of the domain search \cite{hue16_bounds}. In \cite{piotrowski16} a detailed experimentation about the structural bias in search algorithms is given. Avoiding this kind of bias in the design of algorithms is not easy, but at least they should not be evaluated on benchmarks favored by these biases during exploration. One popular approach to avoid having the optimum into the center of the domain search is shifting.

\item \emph{Sensitivity to the coordinate system:} another possible source of bias emerges when the exploration of the search domain is done mainly by moving along the directions of the coordinate system. In this regard, some algorithms have proven to be very sensitive to the coordinate system \cite{Price2017}. Some benchmark functions are rotated to test the invariance of the algorithms to such transformations. Ideally, the algorithm should be invariant to these rotations, such as Covariance Matrix Adaptation Evolution Strategy (CMA-ES) \cite{Hansen2001}) and Black-Box DE \cite{Price2017}.
\end{itemize}

In order to compare algorithms designed to avoid these sources of bias, several benchmarks taking into account these issues have been proposed. This allows a fairer comparison between algorithmic proposals, that can be compared on the same testbed. In particular, in real-parameter optimization, several benchmarks have been proposed since 2005 to date \cite{funcec2005,funcec2011real,funcec2013real,funcec2014real,funcec2017real}. All these benchmarks try to avoid the first source of bias by shifting the location of the global optimum. Furthermore, in the more recent testbeds an increasing number of functions have been rotated, featuring more complex landscapes. A more detailed view of the different benchmarks proposed and their evolution can be found in \cite{Molina2018a}.

\subsection{Relevant features from benchmarks} \label{sec:features}

Sometimes, experiments performed to shed light on the performance of new proposals do not undergo any source of bias regarding the search procedure of the algorithm itself. However, other different properties related to the landscape of the functions need to be addressed for a fair analysis of the behavior of the proposed solver:
\begin{itemize}[leftmargin=*]
\item \textbf{Separability of the components:} some functions can be easily solved by optimizing each dimension individually, so it is crucial not to use only separable functions in the benchmark. This is the case, for example, of the CEC'2008 LSGO benchmark proposed in \cite{Tang2007}, in which many functions are of this type. In more recent benchmarks, especially in the field of large-scale optimization, the focus is on evaluating the capability of the algorithms to identify existing subcomponents in the functions. If the new proposal deals with this kind of problem, it should be tested on a benchmark that allows evaluating this characteristic, such as e.g. the one proposed in \cite{Li2013a}.

\item \textbf{Dimensionality of the problems:} another important issue is the dimensions of the benchmark, because some algorithms are designed to work properly only for very low-dimensional problems. As the domain search increases exponentially with the dimensionality of the problem, the so-called \textit{curse of dimensionality} \cite{bellman1966dynamic} poses a significant computational challenge. This is particularly the case for well-known algorithms such as PSO \cite{vandenbergh04_cooper_approac_to_partic_swarm_optim} and DE \cite{neri09_recen_advan_differ_evolut}. Actually, as the performance of most algorithms degrades when the dimension grows, the current trend is to develop specific algorithms for problems with higher dimensionality. Nonetheless, it is increasingly important to offer robust performance for a medium range of dimension values. Some benchmarks are designed to evaluate the performance of algorithms in problems of small to moderate size \cite{funcec2005,funcec2011real,funcec2013real,funcec2014real,funcec2017real}, whereas others aim at problems of a much larger size \cite{Tang2007,Tang2010,Li2013a}. These are problems of a very different nature and, normally, algorithms with an outstanding performance over one type of problems do not perform as such when applied to other types of problems. For example, strategies such as computing the covariance matrix of solutions as done by \cite{Hansen2001} do not scale up nicely for problems of larger size. Furthermore, these latter problems require increased exploration abilities of the algorithm to cover a much broader search space, which has a significant cost in terms of fitness evaluations.

\item \textbf{Noisy functions:} finally, noise is another important factor that has not been widely considered in the literature. However, this is changing recently in several recent benchmarks that also consider this issue. These benchmarks, such as the BBOB benchmark \cite{Finck2010}, explicitly include functions with different degrees of noise that resemble real-world scenarios in which noise can be a very important issue. Despite this recent interest, very few studies have hitherto dealt with noisy functions \cite{lit_noisy}.
\end{itemize}

\subsection{Validation of the results}
\label{sec:lit_results}

Selecting competitive algorithms to be included in the comparison is another crucial aspect in benchmarking. In the current literature many different algorithms can be found and chosen to be reference algorithms for a given benchmark. Unfortunately, there is no clear criterion to make such a selection. Although good practices usually suggest comparing against the most recent state-of-the-art algorithms, it is often the case that authors only compare their proposal against basic or very similar versions of other algorithms, as was spotted in \cite{garcia-martinez17_since_cec_compet_real_param_optim}.

In this context, studies comparing different algorithms are scarce, and the results reported therein strongly depend on the problem(s). In \cite{civicioglu11_concep_compar_cuckoo_searc_partic} a benchmark of classic functions was used to compare among Cuckoo Search (CS), PSO, DE, and Artificial Bee Colony (ABC). The study concludes that the best results were obtained by CS and DE, and the worst ones were those rendered by ABC. On the other hand, for a different problem \cite{osuna-enciso13_compar_natur_inspir_algor_multi}, ABC was found to perform best, followed by DE and PSO.

For the methodological part of the comparisons, there are far more studies. Statistical tests, for instance, lay at the core of prior contributions on this matter. However, such contributions are frequently written from a statistical point of view -- like the one by Demšar \cite{demsar} -- making it difficult for researchers in this field to embrace their methodological recommendations. More recently, some tutorials have tried to bring together the fields of meta-heuristics and inferential statistics \cite{statistics}. Some examples can be found in \cite{Whitacre_useof}, in which a statistical treatment is suggested for distinguishing between measurements of performance in adaptive evolutionary algorithms. Another good example is \cite{garcia08_study_use_non_param_tests}, which shows that in a popular real-parameter benchmark (CEC'2005), conditions needed for running parametric hypothesis tests did not hold, and non-parametric tests were thus recommended. More recently, in \cite{garcia10_tests}, some recommendations for the comparison of evolutionary algorithms are provided, which can be even extrapolated to machine learning benchmarks.

\subsection{Components analysis and parameter tuning}
\label{sec:lit_analysis}

One important research topic in the design of meta-heuristic algorithms is the selection of the values of their parameters. Indeed, parameters can be a double-edged sword. On the one hand, they grant flexibility to control the search behavior of the algorithm. On the other hand, finding the parameter values that lead to the best search performance is another optimization problem itself \cite{eiben99_param_contr_evolut_algor}. For this reason, there is a long literature record of studies dealing with the best parameter values for different meta-heuristic algorithms, such as GA \cite{grefenstette86_optim_contr_param_genet_algor}, PSO \cite{trelea03_partic_swarm_optim_algor}, or DE \cite{qin09_differ_evolut_algor_with_strat,neri09_recen_advan_differ_evolut}.

An alternative approach to parameter tuning is the self-adaptation of the parameters \cite{eiben99_param_contr_evolut_algor}. Under this approach, parameters are not given a fixed value. Instead, a process is devised to automatically adjust their value according to the feedback obtained from the optimization process. This type of adaptation mechanism has been successfully applied to DE, which is very sensitive to its parameters \cite{brest06_self_adapt_contr_param_differ_evolut,neri09_recen_advan_differ_evolut}. The work in \cite{teo17_scalab_analy_fixed_versus_self} showed the convenience of self-adaptive values versus fixed parameter settings. In \cite{qin09_differ_evolut_algor_with_strat} the first DE with self-adaptive parameters was presented, drawing parameter values by sampling a distribution which mean is updated by considering new solutions entering the population. Since then, new algorithms improving the self-adaptation mechanism \cite{JADE,SHADE2013} have been proposed. In \cite{Tanabe2014}, the previous self-adaptive parameters were complemented with an adaptive population size that linearly decreases along the search process. In \cite{brest17_jso} a tuning of parameters was applied, improving further the results of the overall algorithm.

The tuning of parameters can be carried out by means of different automatic tuning tools. There are several consolidated tools of this nature, with different features \cite{tuning_method}. F-RACE \cite{frace} and I-RACE \cite{irace} are iterative models, which, at every step, evaluate a set of candidate parameter configurations, discarding several of them along the search. These methods remove candidates upon the result of statistical comparisons, e.g. two-way analysis of variance. I-RACE is an implementation of Iterative F-RACE that includes several extensions, such as a restart using normal distributions. REVAC \cite{REVAC}, on the contrary, relies on an Estimation of Distribution Algorithm (EDA). For each parameter, REVAC starts by sampling an uniform distribution of values. Then, at each step it reduces the value range of each parameter by using specially designed transformation operators, considering an entropy measure. ParamILS \cite{ParamILS} is an iterative local search algorithm that, from a default parameter configuration, applies a local search with random perturbations to improve the configurations.

\section{Guideline \#1: Benchmarks} \label{sec:guideline1}

The first decision that a researcher must face when preparing a new contribution in the field of optimization is the selection of the benchmark to test the newly proposed algorithm(s). Once this is done, the authors must identify relevant algorithms to compare the obtained results and guarantee the significance of conclusions drawn therefrom. This first guideline deals with these two crucial aspects: the selection of the benchmark (Section \ref{sec:guideline1_benchmark}), and the reference algorithm(s) to which the proposal is compared (Section \ref{sec:guideline1_ref_algs}).

\subsection{Selection of the benchmark}
\label{sec:guideline1_benchmark}

As mentioned before, this first decision is one of the most important factors to prove the quality and performance of an algorithm. In real-world problems, this is not a decision at all, because the benchmark is the problem to tackle. By contrast, when designing and improving meta-heuristic techniques, the selection of a benchmark is an important decision to take. This issue is common for all types of optimization. During the last years, benchmarks have been proposed for several types of optimization (such as combinatorial and numerical optimization) with the main goal of becoming a standard for future comparisons. Without loss of generality, during the following section we will focus on numerical optimization, yet all conclusions and recommendations given hereafter are applicable regardless of the domain.

In the field of numerical optimization, special sessions devoted to benchmarking have taken place in reference events such as the IEEE Congress on Evolutionary Computation or the Genetic and Evolutionary Computation Conference. In these events, participants could compare their algorithms in a controlled environment with a homogeneous set of functions \cite{Molina2018a}. However, other works simply overlook these standard benchmarks. Instead, they rather choose their own subset of functions to evaluate their proposal. This is problematic for several reasons. First, as follows from Section \ref{sec:lit_benchmark}, it is very hard to know whether there is any bias in the selection of the functions from the point of view of the performance of the algorithm under consideration. Secondly, many different benchmark functions exist (or can be defined). Therefore, it becomes very difficult to appraise the different characteristics of all such benchmark functions. Finally, comparisons with other reference methods usually imply running them by the same authors of the new method, as it is very unlikely that multiple studies would have focused on the same selected functions or experimental conditions. As a result, assessing the quality of a new contribution that does not use standard benchmarks gets almost impossible to accomplish, and therefore should not be given credit by the community.

However, there are two special situations in which researchers have no other option but to use \textit{ad-hoc} generated problem instances: i) when the problem to be solved has never been tackled in the previous literature, and hence no benchmark can be found; or ii) when a real-world problem is under consideration, with specific requirements and constraints. In these cases, the instance generation process must be deeply detailed, and all the instances generated should be shared for other researchers to replicate and improve upon the presented results. Furthermore, for any of these two alternatives, practitioners should generate a benchmark as realistic and general as possible.

On the other hand, one should also be very careful when selecting a benchmark for the experimentation to be carried out. Benchmarks in the literature have been conceived with some objectives in mind, and are appropriate to test certain characteristics of the algorithms under evaluation. A non-exhaustive list of these characteristics follows:
\begin{itemize}[leftmargin=*]
\item \textbf{Bias avoidance of the search algorithm:} In order to avoid the problems described in Section \ref{sec:lit_benchmark}, it is highly advisable that the optimum is not located at the center of the domain search (e.g. by shifting). Furthermore, rotation should be enforced to test the sensibility of the algorithm to the coordinate system.

\item \textbf{Number of local optima:} the number of local optima of a function is another important characteristic of a test problem. Increasing the number of optima makes the search space harder to be explored. Multiple local optima can act as basins of attraction, preventing the algorithm from reaching the global optima if it does not correctly balance its exploration/exploitation ratio.

\item \textbf{Selected measure of performance:} In evolutionary algorithms it is usual to use the mean error obtained for the different runs. However, there are more adequate measures and indicators of performance for dynamic optimization \cite{helbig13_perfor_measur_dynam_multi_objec_optim_algor}, and multi-objective optimization \cite{mirjalili15_novel_perfor_metric_robus_multi}.
\end{itemize}

Finally, there is another relevant characteristic from a design perspective that is not specifically linked to the functions themselves, but to the algorithms that solve those functions. The algorithms use the fitness function to guide the search process, but sometimes only the ranking of the solutions computed from fitness values is actually used. In this sense, some recent algorithms such as the Firefly algorithm \cite{FA} or the Grasshopper optimization algorithm \cite{GOA} use the quantitative
information provided by the fitness function to guide the search process, whereas others propose mutation and/or selection methods \cite{DERank1} that only require to know whether one solution is better than the other. In some real-world scenarios, the last approach can be very beneficial as it simplifies the process of defining the fitness function.

\subsection{Selection of the reference algorithms} \label{sec:guideline1_ref_algs}

Another important issue, which is actually related to the previous guideline, is the selection of the reference algorithms to include in the comparison. On the one hand, if the proposed algorithm relies on some other basic algorithms, these should be included in the comparison to check the individual contribution of each of them, as we will discuss in detail in Section \ref{sec:guideline3}. On the second hand, once the benchmark has been selected, the best-so-far methods for that particular benchmark should be also considered in the comparison. Unfortunately, many papers fail to compare their proposed algorithm against competitive counterparts \cite{garcia-martinez17_since_cec_compet_real_param_optim}.

A well-informed experimentation should, at least, include the best algorithms in the special session where the benchmark was originally proposed (as it is usually the case). We refer to \cite{Molina2018a} for an updated review on special sessions and competitions on continuous optimization.

Finally, authors should also consider similar algorithms, not only from the same \emph{family} (e.g., PSO, DE, GA...) but also the base algorithm, if the proposal is an improvement over a previous algorithm, or other similar approaches (for example, different memetic algorithms with a common local search). Our claim in this regard is to stop comparing new methods with classic algorithms that have been clearly outperformed by newer ones. Comparisons adopting this misleading strategy should be avoided for the questionable scientific contribution of their proposal.

\section{Guideline \#2: validation of the Results}
\label{sec:guideline2}

Just as important as a correct experimentation design (see Guideline \#1) is a principled validation procedure for the benchmark. For this purpose, we emphasize on two different tools: statistical analysis and comparative visual analysis. Both approaches are covered in the following two subsections: statistical analysis (Section \ref{sec:guideline2_stat}), and visualization techniques for comparing meta-heuristics (Section \ref{sec:guidelines2_visualization}).

\subsection{Statistical analysis: non-parametric tests and beyond} \label{sec:guideline2_stat}

Statistical comparison of results should be deemed mandatory in current benchmarks among bio-inspired algorithms. However, even if statistical comparisons are made in studies reported nowadays, they are not always carried out properly. In inferential hypothesis testing, there are some popular methods, such as the t-test or the ANOVA family of tests. However, these tests are referred to as \emph{parametric tests} because they assume a series of hypotheses on the data on which they are applied (i.e., on the parameters of the underlying distribution of the data). If such assumptions do not hold (for example, the normality assumption for the results), the reliability of the tests is not guaranteed, and alternative approaches should be considered. Thus, either these conditions are checked to be true (i.e., by using a normality test to prove the normality in the distribution), or another type of tests that do not make these assumptions should be used instead. This is the case of \emph{non-parametric} tests, which do not assume particular characteristics for the underlying data distribution. This non-parametric nature must be seen as an advantage over the aforementioned parametric tests (for their independence with respect to data), but also as a drawback as it implies that non-parametric tests are less powerful.

As a result of this, parametric tests should be preferred whenever they can be safely used (i.e. whenever the hypotheses on the underlying data distribution are met). Unfortunately, this often fails to be the case when comparing the results of bio-inspired algorithms. Consequently, non-parametric tests should be used instead \cite{statistics}. A common error (less frequent in current research) is to apply parametric tests without checking if the required hypotheses are satisfied.

A workflow to decide which kind of test to choose is summarized in Table \ref{table:statistical_tests}, and consists of the following steps:
\begin{enumerate}[leftmargin=*]
	\item Check the conditions required for the application of the parametric test of choice (normally, Student's t-test).
	\begin{enumerate}
  		\item Normality: Shapiro-Wilk test \cite{Shapiro1965} or Kolmogorov-Smirnov. Shapiro-Wilk should be used with smaller sample sizes \cite{KS}.
		\item Homocedasticity (equal variances): Levene's test \cite{Levene1960}.
	\end{enumerate}
	\item If both conditions are satisfied, apply Student's t-test \cite{Sheskin2007}.
	\item If only normality can be guaranteed, then Welch's t-test alternative is considered \cite{Welch1947}.
	\item If none of the assumptions on the underlying distribution holds, then the non-parametric Wilcoxon signed-rank test is used \cite{Wilcoxon1945}.
\end{enumerate}
\begin{table}[!htbp]
\caption{Recommended tests according to data characteristics}
\label{table:statistical_tests}
\centering
\resizebox{\columnwidth}{!}{\begin{tabular}{lcc}
\toprule
\multicolumn{1}{l}{Conditions}     & Equal variances         & Unequal variances     \\ \midrule
\multicolumn{1}{l}{Normally distributed}     & Paired Student's t-test & Paired Welch's t-test \\ \midrule
\multicolumn{1}{l}{Not normally distributed} & \multicolumn{2}{c}{Wilcoxon signed-rank test}       \\ \bottomrule
\end{tabular}}
\end{table}

Once the appropriate test has been selected, the comparison can be carried out. First, the ranking of each algorithm over the whole benchmark must be computed, and the significance of the differences in the ranking values must be tested. Friedman rank-sum test can serve for this purpose \cite{Daniel1990}. If differences are declared to be statistically significant by the Friedman test, then we proceed to the pairwise comparisons with the test selected from Table \ref{table:statistical_tests}. In those pairwise comparisons a reference algorithm is compared against all the other methods selected for validation. Normally, the reference algorithm is selected to be the one with the best average ranking or, alternatively, the new proposal presented in the work.

Another typical oversight noted in the literature is to neglect the accumulated error. A statistical test for two samples, like the Wilcoxon's test, has an estimated error, but this error increases with each pair of comparisons. Thus, when simultaneously comparing the results of our proposal with those attained by several other algorithms, the application of Wilcoxon's test (or others such as the t-test) is totally discouraged, because it cannot ensure that the proposal is statistically better than all the other reference algorithms. Thus, once the pairwise p-values have been computed, a correction method must be used to counteract the effect of multiple comparisons, by controlling either the family-wise error rate, or the false discovery error rate \cite{Aickin1996}. Several procedures have been proposed to this end, among which Bonferroni-Dunn \cite{Dunn1961}, Holm-Bonferroni \cite{Holm1979}, Hochberg \cite{Hochberg1995} and Hommel \cite{Hommel1988} are the most widely used \cite{statistics}.

Also linked to statistical validation, another recommendation is to provide the p-values of tests carried out in the experimentation. However, we note that p-value, as such, is not a totally objective measure, as it is highly dependent on the sample size \cite{lin13_resear_commen_too_big_to_fail}. Section \ref{sec:case_study} presents an example of a comparison that goes through the methodological steps prescribed in this second guideline.

Finally, although frequentist hypothesis tests have been used extensively within the community working in metaheuristics, Bayesian approaches have emerged in recent years as an alternative for comparing algorithms' performance in optimization and classification problems \cite{benavoli2017time}. Indeed, a Bayesian trend \cite{gelman2013bayesian} has emerged with some criticisms to the well-known Null Hypothesis Statistical Tests (NHST), and there are some interesting proposals of Bayesian tests analogous to the classic frequentist tests \cite{benavoli2017time}. The Bayesian paradigm makes statements about the distribution of the difference between the two algorithms under comparison, which can be of help when the NHST does not find significant differences between them. The rNPBST package \cite{carrasco2017rnpbst} and the jMetalPy framework \cite{BENITEZHIDALGO2019100598} are useful tools to apply these tests.

The use of different tests can help put the results in context. As it is mentioned in \cite{carrasco2020recent}, authors encourage the joint use of non-parametric and Bayesian tests in order to obtain a complete perspective of the comparison of the algorithms’ results: \emph{``While non-parametric tests can provide significant results when there is a difference between the compared algorithms, in some circumstances these tests do not provide any valuable information and Bayesian tests can help to elucidate the real difference between them''} \cite{carrasco2020recent}. Practitioners must consider this possibility to complement well-know non-parametric tests when they do not provide a full difference among algorithms.

\subsection{Visualization techniques for comparative analysis} \label{sec:guidelines2_visualization}

Visualization techniques are other useful methods to report results when comparing several bio-inspired algorithms. The main advantage of these approaches over reporting raw data in tables is that they can be much easily interpreted by the reader. They have also the ability to summarize the information covered by one or even multiple tables.

In Figure \ref{fig:charts} we provide an example of some visualizations that illustrate the performance of several algorithms on the CEC'2013 LSGO benchmark. Figure \subref{fig:radar_chart} uses a radar chart to visualize the average ranking of each bio-inspired algorithm on different groups of functions. Each group has been defined according to some common characteristics present in many state-of-the-art benchmarks: degree of separability, modality, etc. Figures \subref{fig:all_funcs_chart}-\subref{fig:shifted_chart} provide an alternative view on the same data: it does not depict their average behavior, but instead the number of times in which one algorithm obtained the best overall results for problems belonging to each of the previously defined categories. In Figure \subref{fig:all_funcs_chart}, the whole benchmark is considered, whereas Figures \subref{fig:multimodal_chart} and \subref{fig:shifted_chart} show the results for multimodal and shifted functions, respectively.
\begin{figure*}[h!]
    \centering
    \subfloat[\label{fig:radar_chart}]{\includegraphics[width=0.24\linewidth]{radar}}
    \subfloat[\label{fig:all_funcs_chart}]{\includegraphics[width=0.24\linewidth]{all_functions}}
    \subfloat[\label{fig:multimodal_chart}]{\includegraphics[width=0.24\linewidth]{multimodal}}
    \subfloat[\label{fig:shifted_chart}]{\includegraphics[width=0.24\linewidth]{shifted}}
    \caption{Different visualization for the comparison of the performance of several algorithms on the CEC'2013 LSGO benchmark: (a) Average ranking of algorithms on different types of functions; (b) Fraction of functions for which each algorithm obtained the best results; (c) Fraction of multimodal functions for which each algorithm obtained the best results; (d) Fraction of shifted functions for which each algorithm obtained the best results.}
    \label{fig:charts}
\end{figure*}

The visual idioms suitable to represent information in this kind of comparisons are not limited to the two examples given in this section. There are many other alternative representations that can help to gain insight in the results under discussion. For example, another typical visual representation is that of the convergence of an algorithm. In this case, the variable being discussed is the convergence speed of the methods involved in the comparison. What should be clear is that different idioms support different types of analyses, and that visualization techniques should be carefully selected in order to present the results in a summarized yet insightful fashion. All in all, our recommendation at this point is not only to visualize the results of the comparison, but also to use these techniques to complement and/or summarize the information provided by other means.

\section{Guideline \#3: Components Analysis and Parameter Tuning of the Proposal} \label{sec:guideline3}

This third guideline could be seen as a check-list for the discussion section. It covers the full proposal analysis, from the statement of the hypotheses to be proved by the experimentation to the presentation of the results of the different comparisons needed to assess the contribution of the work at hand. This section elaborates on this list by pausing at the following aspects: origin and work hypotheses that motivate the proposal (Section \ref{sec:guid4_origin}), the identification of the search phases, with claims on them solidly informed by empirical evidences (Section \ref{sec:guid4_explorvsexploit}), the individual analysis of algorithmic components of the proposal (Section \ref{sec:guid4_components}), and parameter tuning and analysis (Section \ref{sec:guid4_parameter}).

\subsection{Origin, hypotheses and proposal} \label{sec:guid4_origin}

Before starting to discuss about the benefits of the novel approach(es) proposed in the work, it is necessary to have a clear perspective of the expected results, i.e., the work hypotheses of the present study. Furthermore, authors should clearly describe how the proposal helps to attain the targeted objectives. Most of the times we assume that the main contribution of a work is a new algorithm or a new modification capable of improving the state of the art in some particular benchmark (properly chosen as already discussed in Section \ref{sec:guideline1_benchmark}). While this assumption often holds in practice, any other contribution to be taken into account must be clearly highlighted at this point for the work to be considered relevant. We will discuss further on this issue in Section \ref{sec:guideline4}.

\subsection{Search phases identification} \label{sec:guid4_explorvsexploit}

A key issue when solving optimization problems with complex fitness landscapes is to keep an appropriate balance between exploration and exploitation \cite{Herrera-Poyatos2017,LaTorre2010d}. This is a recurrent statement in many contributions, especially when the obtained results seem to support that hypothesis (at least in terms of overall accuracy). However, most of these studies fail to provide evidence on how the exploration/exploitation balance is maintained. It is normally not enough to state that \textit{``algorithm A is better than algorithm B because it properly maintains the exploration/exploitation balance''}. This type of statements requires an empirical analysis to check to which extent this claim is supported by evidence.

The work reported in \cite{Crepinsek2013} analyzes this issue from a dual perspective. First, they inspect how different authors measure the exploration/exploitation balance, to conclude that this is mainly carried out by means of indirect measures (e.g., the diversity of the solutions). Second, they propose a taxonomy of methods that aim to promote population diversity. Authors eager to include an analysis of this type in their research works should conduct a quantitative experimental study to justify the kind of statements that we have already mentioned.

\subsection{Components analysis and simplicity/complexity} \label{sec:guid4_components}

It is common in recent literature, especially in those papers where the proposal is evaluated on a well-known benchmark, that new proposals are built upon previous existing algorithms. Those new methods normally i) improve previous algorithms by updating or adding new characteristics to their baseline search procedure; or ii) combine existing methods to create a hybrid algorithm of some kind. However, few of these works analyze individually each of the improvements/components of the new proposal. This is an important issue from an algorithmic design perspective. It is true that \emph{powerful} algorithms are usually sought (in terms of their ability to find solutions as close as possible to the global optimum). But it is not less true that \emph{simplicity} should be considered as another preferential aspect in the design of new optimization techniques. Simplicity in algorithmic design has a number of advantages:
\begin{itemize}[leftmargin=*]
	\item Simple algorithms tend to be more computationally efficient.
	\item They have less parameters to adjust.
	\item Their behavior is more predictable, as there are less components involved.
  \item They can be described and implemented more easily.
	\item It is less likely that the algorithm overfits one particular benchmark.
\end{itemize}

All these reasons are important enough to pay attention to the complexity of the new algorithm. For this reason, it is mandatory to provide an in-depth analysis of the contribution of each of the components of the new method to its overall performance. Every change or addition on top of the original algorithm must be supported by a significant contribution to the improved behavior of the novel method. Furthermore, if this contribution is shown to be small, this improvement should be considered for removal in the interest of simplicity. In this sense, we encourage the authors to use the same statistical validation methods described in Section \ref{sec:guideline2_stat} to compare each of the individual components of the algorithm. This is the same procedure that we recommend to compare the proposal with other state-of-the-art algorithms (Section \ref{sec:case_study}).

An illustrative example in this direction is \cite{Piotrowski2018}. This work analyzes one of the best performing algorithms of the IEEE CEC'2016 competition on real-parameter single objective optimization, namely, L-SHADE-EpSin \cite{Awad2016}. One of the conclusions of this analysis is that only one of the multiple additions to the base L-SHADE algorithm provides some significant improvement in the results (the initialization of the F parameter to $0.5$ during the first half of the search). The other modifications (materialized through the inclusion of several local search strategies) were found no significantly better. Moreover, they favored a bias in the search towards solutions around the origin of the search space, as also buttressed by \cite{Piotrowski2018}. This means that, even for competitive algorithms, the contribution of each component should be carefully evaluated. This is so, since a simplified version of the algorithm will always be easier to maintain, and can even lead to better results.

A second example aligned with our recommendations at this point emerges from the results of the MOS-SOCO2011 algorithm presented in \cite{LaTorre2010d}. By virtue of the Multiple Offspring Sampling (MOS) framework, this optimization technique combines two well-known algorithms: DE and the first local search method (MTS-LS1) of the Multiple Trajectory Search (MTS) algorithm \cite{Tseng2008}. The MOS-SOCO2011 hybrid algorithm was evaluated on the benchmark proposed for the Soft Computing Special Issue on the scalability of evolutionary algorithms and other metaheuristics for large-scale continuous optimization problems \cite{Lozano2011}. MOS-SOCO2011 obtained the best overall results among all the participants in the special issue. In \cite{LaTorre2010d}, authors reported not only the results for the proposed MOS-SOCO2011 algorithm, but also those of each of the independent components, DE and MTS-LS1, which are shown in Table \ref{table:1000d_res}. This threefold compilation of results allows for a direct comparison on the number of functions solved to the maximum precision (14, 1 and 4 for MOS-SOCO2011, DE and MTS-LS1, respectively), and sheds light on the synergy of both algorithms: except for functions Schwefel 2.21 and Schwefel 1.2, for which the MTS-LS1 algorithm obtained the best results, the hybrid method was able to reach the performance of the best one of its composing algorithms, normally outperforming them.

\begin{table}[h!]
\caption{Results for MOS-SOCO2011, DE and MTS-LS1 over different 1000-D functions \cite{LaTorre2010d}}
\centering
\begin{tabular}{lccc}
\toprule
Benchmark function  & MOS-SOCO2011 & DE       & MTS-LS1  \\ \midrule
Sphere            & 0.00e+00     & 3.71e+01 & 1.15e-11 \\
Schwefel 2.21     & 4.25e-01     & 1.63e+02 & 2.25e-02 \\
Rosenbrock        & 6.15e+01     & 1.59e+05 & 2.10e+02 \\
Rastrigin         & 0.00e+00     & 3.47e+01 & 1.15e-11 \\
Griewank          & 0.00e+00     & 7.36e-01 & 3.55e-03 \\
Ackley            & 0.00e+00     & 8.70e-01 & 1.24e-11 \\
Schwefel 2.22     & 0.00e+00     & 0.00e+00 & 0.00e+00 \\
Schwefel 1.2      & 1.94e+05     & 3.15e+05 & 1.23e+05 \\
Extended f10      & 0.00e+00     & 6.26e-02 & 1.99e+03 \\
Bohachevsky       & 0.00e+00     & 1.67e-01 & 0.00e+00 \\
Schaffer          & 0.00e+00     & 4.42e-02 & 1.99e+03 \\
f12               & 0.00e+00     & 2.58e+01 & 5.02e+02 \\
f13               & 8.80e+01     & 8.24e+04 & 8.87e+02 \\
f14               & 0.00e+00     & 2.39e+01 & 2.23e+03 \\
f15               & 0.00e+00     & 2.11e-01 & 0.00e+00 \\
f16               & 0.00e+00     & 1.83e+01 & 1.00e+03 \\
f17               & 2.25e+01     & 1.76e+05 & 1.56e+03 \\
f18               & 0.00e+00     & 7.55e+00 & 1.21e+03 \\
f19               & 0.00e+00     & 2.51e-01 & 0.00e+00 \\ \midrule
Solved functions & 14           & 1        & 4        \\
\bottomrule
\end{tabular}
\label{table:1000d_res}
\end{table}

Additionally, a statistical comparison was also carried out, reporting significant p-values for both comparisons (MOS-SOCO2011 versus DE, and MOS-SOCO2011 versus MTS-LS1). These two comparisons altogether provide enough confidence to support the superiority of the hybrid method over each of its composing algorithms.
This is not the only example of such a comparison. Authors of the L-SHADE algorithm follow a similar approach in \cite{Tanabe2014}, comparing the new version of their algorithm to previous ones, and evaluating the addition of new components to prove their benefits.

\subsection{Parameter tuning and analysis} \label{sec:guid4_parameter}

One important problem in the design of an algorithm is the number of free parameters that can be adjusted to modify its behavior. In general, the more flexibility, the more control parameters to adjust. Very often, the values selected for these parameters are so determinant in the search that even a well designed algorithm can yield bad results with the wrong parameter values. As a consequence, the selection of the values for these internal parameters is a critical decision that should not be underestimated nor overseen.

Unfortunately, the selection of the right parameters values is not an easy task, because most of the times there is not a clear criterion to guide that selection, and
it could be considered an optimization problem itself. The most usual approach to deal with the tuning problem is to do it experimentally, comparing the results obtained on multiple combinations of the parameters values. However, there are several pitfalls in which a researcher may fall when conducting a manual tuning:
\begin{itemize}[leftmargin=*]
\item \emph{Test each parameter on a small number of predefined values, without taking any feedback into consideration}: some works only test extreme values of the parameter(s) to be tuned (either minimum or maximum over its range). Under these circumstances, the number of values to test should be extended to check whether a better result can be obtained with other values over the range of the parameter(s).

\item \emph{Tune only a small part of their parameters}: in this case, the values of the remaining parameters are guessed or initialized to fixed values, without analyzing which parameters influence most on the performance of the algorithm. This analysis would eventually justify which parameters should be selected and carefully tuned, but it is rarely done in the literature.

\item \emph{Try to tune each parameter independently, keeping the others fixed}: this widely adopted approach poses many problems. The results obtained by varying just one parameter depend largely on the values given to the others, since it is not uncommon that multiple parameters influence on each other. Therefore, all value combinations of parameters should be optimized altogether. While it is true that exploring all the possible combinations can lead to a combinatorial explosion, there are several techniques in the field of experimental design \cite{stanley66_influen_fisher_desig_exper_educat} that can alleviate this problem, such as the fractional design \cite{lundstedt98_exper_desig_optim} or the alternative Taguchi methods \cite{taguchi}.

\item \emph{Use parameter values tuned by other authors in previous experiments}: these parameters were usually tuned for a different problem, and thus their values might not be appropriate for the problem/benchmark under consideration. Of course, these values can still be used, but they should never be considered to be the optimal ones.

\item \emph{Lack of statistical tests in the comparisons to tune the parameters values of the proposal}: due to the stochastic nature of meta-heuristic algorithms, selecting parameter values based on average fitness values is not enough. The same statistic procedures used to compare multiple techniques should be used when comparing different configurations of an algorithm. A choice of the most promising values is at discretion of prospective authors, but the use of statistical tests should be always enforced, no matter which parameter tuning approach is being carried out. In fact, as shown in \cite{Garcia2014}, the use of statistical tests for this kind of comparisons can be straightforward.
\end{itemize}

An alternative to parameter tuning is self-adaptation of the parameters \cite{eiben99_param_contr_evolut_algor}. In this scenario, parameters do not have a fixed value. Instead, there is a process to automatically adjust their value according to the feedback obtained from the optimization process. This way, algorithms that are very sensitive to certain parameters, such as DE \cite{brest06_self_adapt_contr_param_differ_evolut,neri09_recen_advan_differ_evolut}, can improve their results without having to tune them for each problem, leading to more robust algorithms \cite{teo17_scalab_analy_fixed_versus_self,qin09_differ_evolut_algor_with_strat,Tanabe2014}.

Although adaptive parameters are a clear improvement over fixed parameters, both in terms of ease of usage and robustness, not all the parameters can be self-adjusted in this way (in particular, some more internal parameters). Thus, even in self-adaptive algorithms, there are fixed parameters that must be tuned to improve the results even more (i.e., \cite{brest17_jso}). The tuning of parameters can be automatically done with the usage of one of the different automatic tuning tools. There are several useful and consolidated tools of this type with different features \cite{tuning_method}, such as I-RACE \cite{irace}, REVAC \cite{REVAC}, or ParamILS \cite{ParamILS}. In our own experience, the one than has yielded better results in the past is I-RACE. However, all the aforementioned alternatives are robust and consolidated tools, so the selection of one tool over the others will depend on the problem features and personal preferences.

To conclude with this issue, we would like to make an additional remark. The tuning of the parameters of a new proposal can have an important impact in the objectivity of the comparison. This situation can occur when the new proposal is the only algorithm which parameters are tuned for the particular benchmark used in the experimentation, whereas reference algorithms use parameters values proposed by their respective authors under different experimental conditions. This will probably mean that those algorithms are not expected to report very good results for the new experimental scenario. In this case, having the parameters of the new proposal tuned for the benchmark considered in the work could give our proposal an unfair advantage over the other ones, generating a bias in favor of the proposed algorithm in the comparison. Ideally, the solution should be to compare tuned versions of all the algorithms \cite{MolinaTuned}, but the cost of doing that could become too expensive and computationally unaffordable. However, when the algorithms are compared against standard benchmarks (not defined \emph{ad-hoc} for each paper), this risk is minimized, because all the algorithms were tested under the same experimental conditions.

\section{Guideline \#4: Why is my algorithm useful?}
\label{sec:guideline4}

The final step of a successful proposal is a thorough discussion of the results. This discussion must answer a crucial question: why is my algorithm useful?

The most obvious answer to this question is \emph{``because it outperforms current state-of-the-art methods''}. If the algorithm falls within this first category of proposals, and if this outperforming behavior is validated by principled means (as those shown in this manuscript), the contribution has a clear scientific value and can be contributed to the community in the form of a publication. However, this is not always the case, but it does not mean that the contribution is not significant.

There are a number of reasons to accept a new proposal even if it is unable to outperform the best-so-far algorithms. Nonetheless, under these circumstances it is even more important the discussion of the results. The benefits of adopting the method proposed in such a contribution should be clearly stated and highlighted accordingly. We next discuss on some of the reasons that can be considered enough for a new proposal to be accepted:

\begin{itemize}[leftmargin=*]
	\item The first of these reasons is the quality of the results. If, as mentioned before, the results clearly outperform current state-of-the-art methods, the authors have a solid argument for their paper to be accepted. Sometimes, it could be enough that the results are particularly good for a subset of the problems, given that this behavior can be identified and characterized. This does not imply that the rest of the guidelines provided in our paper can be neglected. The discussion of the results should be rigorous and the conclusions should be clearly presented, without any ambiguity nor vagueness.

	\item The second of these reasons is novelty: if a newly proposed algorithm has the potential to evolve and become competitive with current state-of-the-art methods, it should be presented to the community. Nonetheless, special attention should be paid at this point to avoid the problems described by \cite{Sorensen2015,del2019bio}: it is absolutely mandatory that, besides the bio-inspired metaphor, the new algorithmic proposal is competitive enough for a set of problems. A novel metaphor is by no means a sufficient guarantee for a significant scientific contribution.

	\item The third of these reasons is methodological, i.e., the relevance of some of the building blocks of the overall algorithm. A particular algorithm can include a given component (for example, a local optimizer) that can be of relevance even if the algorithm as a whole is not completely competitive with respect to the prevailing literature. A good example supporting this claim can be observed in co-evolutionary frameworks, which usually include a procedure to identify the subcomponents that will be individually co-evolved. In those cases, even if the subcomponent optimizer is not very sophisticated, the co-evolutionary framework can be relevant by itself. In this sense, it is important to select the appropriate framework to highlight the desired characteristic of the proposed algorithm, as discussed in Section \ref{sec:guideline1_benchmark}. Following the same example of subcomponents identification, a researcher focused on large-scale global optimization should consider the CEC'2013 benchmark that explicitly studies this issue \cite{Li2013a}. Nevertheless, this is a quite subjective consideration, so authors should clearly highlight these benefits to avoid debatable claims.
\end{itemize}

\section{Case Study: SHADE-ILS on the CEC'2013 LSGO benchmark} \label{sec:case_study}

In order to exemplify the application of the previous guidelines, this section elaborates on a case study following our proposed methodology. In particular, we simulate the situation in which we design a new algorithm, following the guidelines for properly conducting the experiments, comparisons with other reference algorithms, and the analysis to put in value the advantages of our methodological proposal.

\subsection{Selecting the benchmark by Guideline \#1}
\label{sec:case_guideline1_benchmark}

First, we have to choose the right benchmark for the experimental assessment of the performance of our newly proposed algorithm. Following the recommendations of Guideline \#1 (described in Section \ref{sec:guideline1}), we have to:
\begin{itemize}[leftmargin=*]
\item Properly select the benchmark: without any unexpected bias, with the right level of complexity, and for the type of problem addressed by the algorithm.

\item Enforce the usage of a standard benchmark that fulfills the previous requirements.
\end{itemize}

The selection of the benchmark cannot be done without considering the proposed algorithm, since it depends on the characteristics of the problem for which the algorithm was implemented (or the type of problems for which we want to test it). In our example, we have designed SHADE-ILS \cite{Molina2018}, an algorithm specially devised for real-parameter optimization problems that comprise a high number of variables. This family of optimization problems is collectively referred to as large-scale global optimization, for which several benchmarks have been proposed \cite{Tang2010,Lozano2011,Li2013a}. If any of them allows for an unbiased comparison, we should use it, avoiding in this way the design of our own benchmark. In particular, our first option is the CEC'2013 benchmark \cite{Li2013a}, since it is both the most recent and the most popular competition to date. Furthermore, its popularity yields many previous results that we can use for comparison purposes. Nevertheless, before proceeding further we have to verify whether the selected benchmark allows for good comparisons. For this purpose, information and data available about the benchmark should comply with several requirements:
\begin{todolist}[leftmargin=*]
\item[\rlap{\raisebox{0.3ex}{\hspace{0.4ex}\tiny \ding{52}}}$\square$] \textit{Clear experimental conditions}: the experimental setup is well defined, and conditions are set the same for all algorithms.
\item[\rlap{\raisebox{0.3ex}{\hspace{0.4ex}\tiny \ding{52}}}$\square$] \textit{The implementation of the benchmark is openly available}: the CEC'2013 benchmark is specially appropriate in this regard, as implementations of the problems comprising the benchmark are not only made publicly available, but also in several programming languages: C/C++, Matlab, Java, and Python\footnote{Code for the CEC'2013 Large Scale Global Optimization benchmark: \url{https://www.tflsgo.org/special_sessions/wcci2020.html\#new-code} (accessed on April 16th, 2020).}.
\item[\rlap{\raisebox{0.3ex}{\hspace{0.4ex}\tiny \ding{52}}}$\square$] \textit{The optima is not at the center of the domain search}: all functions in the chosen benchmark are shifted to guarantee this feature.
\item[\rlap{\raisebox{0.3ex}{\hspace{0.4ex}\scriptsize \ding{56}}}$\square$] \textit{Functions are rotated}: Although this feature is not present in the chosen benchmark, the importance of this requirement is not as critical as the aforementioned shifting.
\item[\rlap{\raisebox{0.3ex}{\hspace{0.4ex}\tiny \ding{52}}}$\square$] \textit{Presence of local optima}: In the benchmark there are several functions with different local optima. Actually, it is not the only criterion to provide functions with varying levels of difficulty. In particular, in this benchmark there are different degrees of interrelation between variables, which makes sense given the large dimensionality of the problems.
\end{todolist}

Summarizing, the above analysis concludes that the CEC'2013 benchmark for large-scale global optimization follows most of the requirements imposed by our methodology. This is the reason why we select it as benchmark for the experimentation.

\subsection{Selecting the performance measure as per Guideline \#1} \label{sec:case_guideline1_performance}

Another important decision to make is the choice of an adequate performance measure. In this regard, we can measure not only the final fitness error (deviation with respect to the global optimum that is known \textit{a priori}), but also the error for different number of fitness evaluations (called the \emph{accuracy level}). This way, we can fairly measure the efficiency of the algorithms. There are two possibilities in this matter: i) to report the performance for each accuracy level; and ii) to provide the performance for the maximum number of fitness evaluations considered in the experiments. To show the results concisely, we will only discuss on the latter of these alternatives (i.e. the results for the maximum number of fitness evaluations). However, the study should be done in a similar fashion for each level of accuracy.

About the performance, there are also several possibilities: we can report the fitness error function by function, or we can compute an aggregate measure of performance (such as an average). Initially, we opt for an aggregate measure, considering two options:
\begin{itemize}[leftmargin=*]
\item \emph{Average ranking}, which is calculated by sorting the algorithms for each function based on its error (lower position to best ones). Then the average ranking is calculated so that an algorithm with a lower average ranking value is declared to perform better, on average, than other with a higher ranking value.

\item \emph{A particular measure proposed in the considered benchmark}, which assigns for each function a different score to each algorithm, based on its ranking position.
\end{itemize}

The performance measure recommended in competitions with the CEC'2013 benchmark is the second one of these options. However, we will first depict the average ranking, since it evaluates the performance of algorithms in a more general and understandable way.

\subsection{Selecting the reference algorithms as per Guideline \#1}
\label{sec:case_guideline1_reference}

In order to do a right comparison, a clear criterion is needed to select the algorithms included in the comparison, aiming at fairly proving the convenience of the algorithm in regards to its competitive performance with other methods. Following the guidelines, we should:
\begin{itemize}[leftmargin=*]
\item \textit{Compare against reference algorithms}: in this benchmark DECCG \cite{Li2013a} will take this role.

\item \textit{Compare against similar algorithms}: this aspect is specially relevant when the proposed algorithm is a modified version of a previously published approach. In our case, SHADE-ILS can be deemed a new algorithm. However, other proposals featuring similar concepts were previously proposed in the literature, such as IHDELS \cite{molina2015iterative}. Following our guidelines, we have included these previous methods for their comparison to our proposal.

\item \textit{Compare against competitive algorithms}: this is often a hard decision to make, since it is difficult to scrutinize the entire state-of-the-art related to the optimization problem/algorithm/benchmark under consideration. However, since the benchmark is widely used in international competitions, we can use the winning approaches in these competitions as competitive algorithms to which to compare our proposed approach. As such, one of the solvers in this field is MOS-CEC2013 \cite{LaTorre2013c}. Nowadays, there are more competitive algorithms, but we to focus on algorithms proposed until 2018, the year in which the algorithm was presented \cite{Molina2018}.
\end{itemize}

On balance, we compare our method against a considered previous version (IHDELS), a competitive algorithm (MOS-CEC2013), and a reference algorithm (DECCG).

\subsection{Testing and validating the results as per Guideline \#2} \label{sec:case_guideline2}

After the design of the experimentation, experiments are carried out, and results are validated. Following the recommendations about statistical validation in Guidelines \ref{sec:guideline1_ref_algs} and \ref{sec:guideline2_stat}, normality or homocedasticity tests should be performed. However, it has been proven that such tests do not usually pass for a benchmark as the chosen one \cite{garcia08_study_use_non_param_tests}. Therefore, we have opted for non-parametric tests, given that it is unlikely that normality and homocedasticity hold for the CEC'2013 benchmark.

Thus, the first step to take is to calculate the average ranking, followed by the non-parametric hypothesis test. In order to compare the algorithms, we resort to Tacolab \cite{tacolab}\footnote{Tacolab website: \url{https://tacolab.org/} (accessed on April 16th, 2020)}, a web tool that eases the application of different comparison methods among algorithms.
\begin{table}[ht]
\centering
\caption{Average ranking of the algorithms considered for the statistical comparison} \label{table:ranking}
\vspace{2mm}
\begin{tabular}{lc}
\toprule
Algorithm   & Ranking \\
\midrule
SHADE-ILS   & 1.600    \\
MOS-CEC2013 & 2.067    \\
IHDELS      & 3.067    \\
DECCG       & 3.267    \\
\bottomrule
\end{tabular}
\end{table}

Table \ref{table:ranking} shows the average ranking of the four algorithms under comparison over the CEC'2013 LSGO benchmark. We recall that SHADE-ILS is the new algorithmic proposal, whereas IHDELS, MOS-CEC2013 and DECCH are the three alternatives composing the benchmark. The table depicts the average ranking computed from the relative position of the four methods when ranked for each of the functions in the benchmark. As can be observed in this table, SHADE-ILS exhibits a slightly better performance than MOS-CEC2013, and a much better rank than IHDELS and DECCG. In particular, although the preceding approach (IHDELS) performed wose than MOS-CEC2013, SHADE-ILS renders a significantly better performance. This aspect is quite important, because it is not common to directly design a competitive algorithm from scratch.

As stated in Guideline \#2 (Section \ref{sec:guideline2}), performance measures like the average ranking are not conclusive, since performance gaps may occur due to the stochastic nature of the algorithms under comparison. This is the reason why these results should be further analyzed for elucidating whether the differences are significant. For this purpose, we use the Friedman rank-sum test. The p-value reported by this test is 2.65e-03, which is clearly significant at the $\alpha=0.05$ confidence level. Now that the aforementioned differences have been assessed, we can proceed towards the multiple comparison, including a familywise error rate correction tackled with the Holm procedure.
\begin{table}[ht]
  \centering
  \caption{Statistical validation (SHADE-ILS is the control algorithm)}
  \vspace{2mm}
  \label{table:validation}
  \begin{tabular}{lcl}
    \toprule
    SHADE-ILS versus & Wilcoxon p-value & Wilcoxon p-value$^*$ \\
    \midrule
    MOS-CEC2013   & 4.79e-02    & 4.79e-02 ${\surd}$\\
    IHDELS        & 1.53e-03         & 4.58e-03 ${\surd}$\\
    DECCG         & 8.36e-03         & 1.67e-02 ${\surd}$\\
    \bottomrule
    \noalign{\vskip 2mm}   \multicolumn{3}{l}{$\surd$: statistical differences exist with significance level $\alpha=0.05$.}\\
    \multicolumn{3}{l}{$^*$: p-value corrected with the Holm procedure.}\\
  \end{tabular}
\end{table}

Table \ref{table:validation} presents the results of this analysis. As can be observed, differences are significant between SHADE-ILS and the other algorithms. This comparison should also consider different checkpoints, e.g., $1\%$, $10\%$ and $100\%$, or every $10\%$ of the maximum number of fitness evaluations available. This complementary analysis would reflect not only the final result of the algorithms, but also their convergence speed.
\begin{figure}[ht]
  \centering
  \includegraphics[width=.75\textwidth]{./visual.png}
  \caption{Average ranking of the algorithms for different number of fitness evaluations.}\label{fig:visual}
\end{figure}

Besides that, we indicated in Section \ref{sec:guidelines2_visualization} that a graphical visualization is useful for the analysis. In this case, we complement the study summarized in Table \ref{table:ranking} with Figure \ref{fig:visual}. In this figure, it is more evident that the differences between algorithms increase with the number of fitness evaluations. Ideally, a plot convergence figure could be more informative, but in the CEC'2013 benchmark the milestones posed by the competition is very reduced, so a bar plot like the depicted one results to be more informative.

\subsection{Components Analysis and Tuning as per Guideline \#3}
\label{sec:case_guideline3}

As mentioned before, a comparison of a proposed method with just reference and/or state-of-the-art algorithms is usually not enough. Following Guideline \#3 (Section \ref{sec:guideline3}), when analyzing the algorithm it is also important to clarify the objectives for the proposed design, and then show quantitative evidence of the claims about the behavior of the algorithm. This way, the study can shed light on the influence of the different components over the reported final results. In our use case, we do not explain the objectives and main ideas of the algorithm. Instead, we remark that the main changes featured by SHADE-ILS with respect to IHDELS is i) a modification of the Differential Evolution component (from SaDE to SHADE); and ii) the restart mechanism. We refer interested readers to \cite{Molina2018a} for further details.
\begin{table*}[h!]
\vspace{-2mm}
  \centering
  \caption{Comparisons between different components of the proposal}
  \vspace{2mm}
  \begin{tabular}{lcccc}
  	\toprule
  	Func. &           Using SHADE         & Using  SaDE &   Using SHADE               &       IHDELS \\
  	&    +New Restart      &     +New Restart        &   +Old Restart    &                    \\
  	\midrule
  	$F_{1}$   &           2.69e-24 &           1.21e-24 &             1.76e-28 &  \textbf{4.80e-29} \\
  	$F_{2}$   &  \textbf{1.00e+03} &           1.26e+03 &             1.40e+03 &           1.27e+03 \\
  	$F_{3}$   &           2.01e+01 &           2.01e+01 &             2.01e+01 &  \textbf{2.00e+01} \\
  	\midrule
  	$F_{4}$   &  \textbf{1.48e+08} &           1.58e+08 &             2.99e+08 &           3.09e+08 \\
  	$F_{5}$   &  \textbf{1.39e+06} &           3.07e+06 &             1.76e+06 &           9.68e+06 \\
  	$F_{6}$   &  \textbf{1.02e+06} &           1.03e+06 &             1.03e+06 &           1.03e+06 \\
  	$F_{7}$   &  \textbf{7.41e+01} &           8.35e+01 &             2.44e+02 &           3.18e+04 \\
  	\midrule
  	$F_{8}$   &  \textbf{3.17e+11} &           3.59e+11 &             8.55e+11 &           1.36e+12 \\
  	$F_{9}$   &  \textbf{1.64e+08} &           2.48e+08 &             2.09e+08 &           7.12e+08 \\
  	$F_{10}$  &  \textbf{9.18e+07} &           9.19e+07 &             9.25e+07 &           9.19e+07 \\
  	$F_{11}$  &           5.11e+05 &  \textbf{4.76e+05} &             5.20e+05 &           9.87e+06 \\
  	\midrule
  	$F_{12}$  &  \textbf{6.18e+01} &           1.10e+02 &             3.42e+02 &           5.16e+02 \\
  	$F_{13}$  &  \textbf{1.00e+05} &           1.34e+05 &             9.61e+05 &           4.02e+06 \\
  	$F_{14}$  &  \textbf{5.76e+06} &           6.14e+06 &             7.40e+06 &           1.48e+07 \\
  	\midrule
  	$F_{15}$  &  \textbf{6.25e+05} &           8.69e+05 &             1.01e+06 &           3.13e+06 \\
  	\midrule
  	\textbf{Better} &  \multicolumn{1}{c}{12} & \multicolumn{1}{c}{1} & \multicolumn{1}{c}{0} & \multicolumn{1}{c}{2}\\
  	\bottomrule
  \end{tabular}
  \label{tab:comp_analysis}
\end{table*}

Table \ref{tab:comp_analysis} shows the results obtained by the different components of the algorithm. This table clearly exposes that the outperforming behavior of the proposed method is due to all its novel contributions, rather than a subset of them. Furthermore, these changes do not add complexity to the overall search process.

Following Guideline \#3, the use of an automatic tuning mechanism is also recommended for the different algorithms in the comparison. However, in our case we use the results reported by their authors in the contributions where the algorithms were first presented, so it is expected that these results were obtained by using the best parameter values. Regarding the parameter values of the SHADE-ILS proposal, they should be obtained by a tuning process, ideally conducted by an automatic tool. In our case, a manual tuning has been conducted due to computational constraints (in particular, processing time). If more resources for computation were available, a complete tuning process could be conducted by resorting to available tools such as the ones commented in Subsection \ref{sec:guid4_parameter}.

\subsection{Justifying the usefulness of the algorithm as per Guideline \#4}
\label{sec:case_guideline4}

Following Guideline \#4 (Section \ref{sec:guideline4}), there are several ways to show the usefulness of an algorithm:
\begin{itemize}[leftmargin=*]
\item \emph{Quality of the results}: in this case, given the good results in the comparisons against \textit{state-of-the-art} and reference methods, the scientific value of the contribution is clear.

\item \emph{Technical novelty}: the combination of local search methods and the hybridization of SHADE are novel. However, for the sake of conciseness we will not elaborate here on the originality of these ingredients, as it would require an exhaustive review of the recent history of DE approaches for large-scale global optimization. We defer the reader to the analysis made in \cite{Molina2018} in this regard.

\item \emph{Methodological contribution}: SHADE-ILS improves a previous hybridization of DE with local search \cite{molina2015iterative} by embracing, among other algorithmic additions, Success-History based Adaptive Differential Evolution (SHADE) at its core, which culminates a historical series of adaptive DE solvers. This poses no doubt on the scientific contribution of this study, as can stimulate new research directions towards considering new local search methods hybridized with SHADE.

\item A special attention should be given to the \emph{simplicity} of SHADE-ILS. In this algorithm the model is not very complex, and the number of parameters is simpler than other proposals (due that its components require few parameters). Besides, changes made with respect to IHDELS do not increase its number of parameters.
\end{itemize}

\subsection{Summary of the use case}

On a closing note, the use case depicted in this section follows most of the guidelines of our proposed methodology. The main procedures followed in the use case are highlighted in Figure \ref{fig:case_checklist}. In addition, we briefly describe now the main actions taken for each of the proposed guidelines:
\begin{figure}[ht]
  \centering
  \includegraphics[width=0.85\textwidth]{figura_checklist.pdf}
  \caption{Checkpoints of the guidelines' recommendations followed by the user case\label{fig:case_checklist} }
\end{figure}

\begin{itemize}[leftmargin=*]
\item Guideline \#1: we have resorted to the standard CEC'2013 benchmark, which is widely accepted by the community working on large-scale global optimization. Also, we have checked that the benchmark follows several of the requirements imposed by the guidelines. Finally, we have compared our proposed method against similar state-of-the-art techniques and a reference baseline from the field.

\item Guideline \#2: as has been shown throughout the discussion, the validation of the results has been done according to the good practices prescribed in Section \ref{sec:guideline2}, including non-parametric hypothesis tests. Also, we have also shown how several results can be properly visualized to make the outcome of the comparisons more understandable to the audience.

\item Guideline \#3: we have clearly highlighted the objectives of the algorithms, and we have compared the influence of the different novel elements of the proposed algorithm. Thus, we have shown that the good results are not influenced by just one component, but to the synergy between the different elements. We have also shown that the proposal is not unnecessarily complex. Finally, a tuning process has been also applied.

\item Guideline \#4: in this use case, the proposal of our method is easy to justify, since SHADE-ILS not only improves a previous hybridization of DE with local search \cite{molina2015iterative}, but it also statistically surpasses MOS-CEC2013, which has dominated the competition over the last few years. This poses no doubt on the scientific contribution of this study, as can stimulate new research directions towards considering new local search methods hybridized with SHADE.

 \end{itemize}

\section{Conclusions and Outlook} \label{sec:conclusions}

In this work we have stressed on the need for circumventing common mistakes and flaws observed in the field of bio-inspired optimization, particularly when new meta-heuristic algorithms are proposed and experimentally validated over benchmarks designed to this end. Specifically, we have reviewed and critically analyzed contributions dealing with experimental recommendations and practices related to meta-heuristics. Following our literature study, we have prescribed a set of methodological recommendations for preparing a successful proposal of bio-inspired meta-heuristic algorithms, from the definition of the experimentation to the presentation of the results. A number of useful techniques (graphically summarized in Figure \ref{fig:methodology}) have been suggested for prospective studies to implement our proposed methodological framework, in an attempt at ensuring fairness, coherence and soundness in future studies on the topic.
\begin{figure}[h!]
    \centering
    \includegraphics[width=\columnwidth]{figure_cyb}
    \caption{Guidelines composing the methodological framework for comparing meta-heuristics proposed in this work.}
    \label{fig:methodology}
\end{figure}

In such a vibrant field, with new algorithmic proposals flourishing vigorously, common methodological grounds are urgently needed. Scientific advancements in years to come will only be achieved if the community reaches an agreement on how algorithms should be tested and compared to each other. This is indeed the aim of our work: to gather and group recommended practices around an unified set of systematic methodological guidelines. We sincerely hope that the material and prescriptions given herein will guide newcomers in their arrival to this exciting research avenue.

\section*{Acknowledgments}

This work was supported by grants from the Spanish Ministry of Science (TIN2016-8113-R, TIN2017-89517-P and TIN2017-83132-C2-2-R) and Universidad Polit{\'e}cnica de Madrid (PINV-18-XEOGHQ-19-4QTEBP). Eneko Osaba and Javier Del Ser would also like to thank the Basque Government for its funding support through the ELKARTEK and EMAITEK programs.  Javier Del Ser receives funding support from the Consolidated Research Group MATHMODE (IT1294-19) granted by the Department of Education of the Basque Government.

\small

\bibliographystyle{elsarticle-num}

Neural and Evolutionary Computing (cs.NE); Artificial Intelligence (cs.AI)