Department of Computer Science, University of the West of England, Bristol, BS161QY, United Kingdom.
Evol Comput. 2010 Fall;18(3):491-514. doi: 10.1162/EVCO_a_00006.
The choice of mutation rate is a vital factor in the success of any genetic algorithm (GA), and for permutation representations this is compounded by the availability of several alternative mutation operators. It is now well understood that there is no one "optimal choice"; rather, the situation changes per problem instance and during evolution. This paper examines whether this choice can be left to the processes of evolution via self-adaptation, thus removing this nontrivial task from the GA user and reducing the risk of poor performance arising from (inadvertent) inappropriate decisions. Self-adaptation has been proven successful for mutation step sizes in the continuous domain, and for the probability of applying bitwise mutation to binary encodings; here we examine whether this can translate to the choice and parameterisation of mutation operators for permutation encodings. We examine one method for adapting the choice of operator during runtime, and several different methods for adapting the rate at which the chosen operator is applied. In order to evaluate these algorithms, we have used a range of benchmark TSP problems. Of course this paper is not intended to present a state of the art in TSP solvers; rather, we use this well known problem as typical of many that require a permutation encoding, where our results indicate that self-adaptation can prove beneficial. The results show that GAs using appropriate methods to self-adapt their mutation operator and mutation rate find solutions of comparable or lower cost than algorithms with "static" operators, even when the latter have been extensively pretuned. Although the adaptive GAs tend to need longer to run, we show that is a price well worth paying as the time spent finding the optimal mutation operator and rate for the nonadaptive versions can be considerable. Finally, we evaluate the sensitivity of the self-adaptive methods to changes in the implementation, and to the choice of other genetic operators and population models. The results show that the methods presented are robust, in the sense that the performance benefits can be obtained in a wide range of host algorithms.
选择突变率是任何遗传算法(GA)成功的关键因素,对于排列表示法,由于有几种替代突变算子,情况变得更加复杂。现在已经清楚的是,没有一个“最佳选择”;相反,情况会随着问题实例和进化过程而变化。本文研究了是否可以通过自适应将这种选择留给进化过程,从而将此非平凡任务从 GA 用户中删除,并减少由于(无意的)不当决策而导致的性能不佳的风险。自适应已被证明对连续域中的突变步长以及二进制编码的位突变概率有效;在这里,我们研究了这是否可以转化为排列编码的突变算子的选择和参数化。我们检查了在运行时自适应选择算子的一种方法,以及几种不同的方法来适应所选择的算子的应用速率。为了评估这些算法,我们使用了一系列基准 TSP 问题。当然,本文并不是要介绍 TSP 求解器的最新技术;相反,我们使用这个众所周知的问题作为许多需要排列编码的问题的典型示例,我们的结果表明自适应可以证明是有益的。结果表明,使用适当的方法自适应其突变算子和突变率的 GA 找到的解决方案与具有“静态”算子的算法的解决方案具有可比性或更低的成本,即使后者已经经过了广泛的调整。虽然自适应 GA 往往需要更长的运行时间,但我们表明这是值得的,因为为非自适应版本找到最佳突变算子和速率所需的时间可能相当长。最后,我们评估了自适应方法对实现更改、对其他遗传算子和群体模型的选择的敏感性。结果表明,所提出的方法具有鲁棒性,即可以在广泛的宿主算法中获得性能优势。