Abstract-Tuning the parameters of an evolutionary algorithm (EA) to a given problem at hand is essential for good algorithm performance. Optimizing parameter values is, however, a non-trivial problem, beyond the limits of human problem solving.In this light it is odd that no parameter tuning algorithms are used widely in evolutionary computing. This paper is meant to be stepping stone towards a better practice by discussing the most important issues related to tuning EA parameters, describing a number of existing tuning methods, and presenting a modest experimental comparison among them. The paper is concluded by suggestions for future researchhopefully inspiring fellow researchers for further work. Index Terms-evolutionary algorithms, parameter tuning Evolutionary Algorithms (EA) form a rich class of stochastic search methods that share the basic principles of incrementally improving the quality of a set of candidate solutions by means of variation and selection [7] , [5] . Algorithms in this class are all based on the same generic framework whose details need to be specified to obtain a particular EA. It is customary to call these details EA parameters, and designing an EA for a given application amounts to selecting good values for these parameters. Setting EA parameters is commonly divided into two cases, parameter tuning and parameter control [6] . In case of parameter control the parameter values are changing during an EA run. In this case one needs initial parameter values and suitable control strategies, that in turn can be deterministic, adaptive, or self-adaptive. Parameter tuning is easier in that the parameter values are not changing during a run, hence only a single value per parameter is required. Nevertheless, even the problem of tuning an EA for a given application is hard because there is a large number of options, but only little knowledge about the effect of EA parameters on EA performance. EA users mostly rely on conventions (mutation rate should be low), ad hoc choices (why not use uniform crossover), and experimental comparisons on a limited scale (testing combinations of three different crossover rates and three different mutation rates). The main objective of this paper is to illustrate the feasibility of using tuning algorithms, thereby motivating their usage. To this end, we describe three different approaches to algorithmic parameter tuning (meta-EA, meta-EDA, SPO) and show their (dis)advantages when tuning EA parameters for solving the Rastrigin function. While the limited scale (one single fitness landscape and one algorithm to be tuned) prevents general conclusions, we do obtain a convincing Vrije Universiteit Amsterdam, The Netherlands, {sksmit, gusz}@cs.vu.nl showcase and some very interesting insights whose generalization requires much more experimental research. Intuitively, there is a difference between choosing a good crossover operator and choosing a good value for the related crossover rate p c . This difference can be formalized if we distinguish parameters by their domains. The parameter crossoveroperator has a finite domain with no sensible distance metric, e.g., {onepoint, uniform, averaging}, whereas the domain of the parameter p c is a subset of IR with the natural metric for real numbers. This difference is essential for searchability. For parameters with a domain that has a distance metric, one can use heuristic search and optimization methods to find optimal values. For the first type of parameters this is not possible because the domain has no exploitable structure. The only option in this case is enumeration. For a clear distinction between these cases we can use the terms symbolic parameter, e.g., crossoveroperator, and numeric parameter, e.g., crossover rate. For both types of parameters the elements of the parameter's domain are called parameter values and we instantiate a parameter by allocating a value to it. It is important to note that the number of parameters of EAs is not specified in general. Depending on particular design choices one might obtain different numbers of parameters. For instance, instantiating the symbolic parameter parent-selection by tournament implies a numeric parameter tournamentsize. However, choosing for roulette-wheel does not add any parameters. This example also shows that there can be a hierarchy among parameters. Namely, symbolic parameters may have numeric parameters under them. If an unambiguous treatment requires we can call such parameters sub-parameters, always belonging to a symbolic parameter. For positioning algorithms for parameter tuning it is helpful to distinguish three layers: application layer, algorithm layer, and design layer, see Figure 1 . The lower part of this three-tier hierarchy consists of an EA on the algorithm layer trying to find an optimal solution for the problem on the application layer, e.g., the traveling salesman problem. Simply put, the EA is iteratively generating (candidate) solutions, e.g., permutations of city names, whose quality is determined by the given problem on the application layer. The upper part of the hierarchy contains a design method that is trying to find optimal parameters for the EA on the 399 978-1-4244-2959-2/09/$25.00 c 2009 IEEE
To help distinguish between the different parts of the control parameter tuning process, a three-layered hierarchy can be used REF , where:
Comparing parameter tuning methods for evolutionary algorithms
2009 IEEE Congress on Evolutionary Computation
2009 IEEE Congress on Evolutionary Computation
Computer Science