The problem-solving performance of many evolutionary algorithms, including genetic programming systems used for program synthesis, depends on the values of hyperparameters including mutation rates. The mutation method used to produce some of the best results to date on software synthesis benchmark problems, Uniform Mutation by Addition and Deletion (UMAD), adds new genes into a genome at a predetermined rate and then deletes genes at a rate that balances the addition rate, producing no size change on average. While UMAD with a predetermined addition rate outperforms many other mutation and crossover schemes, we do not expect a single rate to be optimal across all problems or all generations within one run of an evolutionary system. However, many current adaptive mutation schemes such as self-adaptive mutation rates suffer from pathologies like the vanishing mutation rate problem, in which the mutation rate quickly decays to zero. We propose an adaptive bandit-based scheme that addresses this problem and essentially removes the need to specify a mutation rate. Although the proposed scheme itself introduces hyperparameters, we either set these to good values or ensemble them in a reasonable range. Results on software synthesis and symbolic regression problems validate the effectiveness of our approach.
翻译:包括用于程序合成的遗传编程系统在内的许多进化算法,其问题求解性能取决于变异率等超参数的取值。在软件合成基准问题上取得迄今最佳结果之一的变异方法——基于添加与删除的均匀变异(UMAD)——以预设速率将新基因插入基因组,随后以平衡添加速率的速率删除基因,从而在平均意义上不产生规模变化。尽管采用预设添加速率的UMAD优于许多其他变异与交叉方案,但我们并不认为单一速率在进化系统的所有问题或单次运行的所有代际中均能保持最优。然而,当前许多自适应变异方案(如自适应变异率)存在诸如变异率消失问题等缺陷,即变异率迅速衰减至零。本文提出一种基于自适应臂机策略的方案以解决该问题,其本质上无需指定变异率。虽然所提方案本身引入了超参数,但我们将其设定为较优值或在合理范围内进行集成。在软件合成与符号回归问题上的实验结果验证了本方法的有效性。