arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1703.03334cs.NE
收藏

快速遗传算法

Fast Genetic Algorithms

Benjamin Doerr, Huu Phuoc Le, Régis Makhmara, Ta Duy Nguyen

摘要:

对于使用长度为~ $n$的位串表示的遗传算法,一般建议将$1/n$作为变异率。在这项工作中,我们讨论这是否真的是合理的多峰函数。以跳跃函数和$(1+1)$进化算法为最简单的例子,我们观察到,较大的变异率,得到显着更好的运行时间。对于$\jump_{m,n}$功能,与标准选择相比,$2/n$和$m/n$之间的任何突变率都会导致$m$的速度至少呈指数级增长。渐近最佳运行时,从使用突变率$m/n$,并导致在$m$的加速超指数,是非常敏感的突变率的小变化。任何小$(1 \pm \eps)$因子的偏差都会导致$m$的指数减慢。因此,任何固定的突变率给出了强烈的次优结果,大多数跳跃函数。基于这一观察,我们建议使用随机突变率$α/n$,其中$α$是从幂律分布中选择的。我们证明,$(1+1)$ EA与此重尾突变率优化任何$\jump_{m,n}$功能的时间,只有一个小的多项式(在~ $m$)的因素以上的一个源于此$m$的最佳速率。我们的重尾变异算子产生类似的速度加快(在最好的已知性能保证)的顶点覆盖问题的二分图和匹配问题的一般图。以快速模拟退火、快速进化策略和快速进化规划为例,我们提出了使用重尾变异算子\emph{fast genetic algorithms}来调用遗传算法。

英文摘要:

For genetic algorithms using a bit-string representation of length~$n$, the general recommendation is to take $1/n$ as mutation rate. In this work, we discuss whether this is really justified for multimodal functions. Taking jump functions and the $(1+1)$ evolutionary algorithm as the simplest example, we observe that larger mutation rates give significantly better runtimes. For the $\jump_{m,n}$ function, any mutation rate between $2/n$ and $m/n$ leads to a speed-up at least exponential in $m$ compared to the standard choice. The asymptotically best runtime, obtained from using the mutation rate $m/n$ and leading to a speed-up super-exponential in $m$, is very sensitive to small changes of the mutation rate. Any deviation by a small $(1 \pm \eps)$ factor leads to a slow-down exponential in $m$. Consequently, any fixed mutation rate gives strongly sub-optimal results for most jump functions. Building on this observation, we propose to use a random mutation rate $α/n$, where $α$ is chosen from a power-law distribution. We prove that the $(1+1)$ EA with this heavy-tailed mutation rate optimizes any $\jump_{m,n}$ function in a time that is only a small polynomial (in~$m$) factor above the one stemming from the optimal rate for this $m$. Our heavy-tailed mutation operator yields similar speed-ups (over the best known performance guarantees) for the vertex cover problem in bipartite graphs and the matching problem in general graphs. Following the example of fast simulated annealing, fast evolution strategies, and fast evolutionary programming, we propose to call genetic algorithms using a heavy-tailed mutation operator \emph{fast genetic algorithms}.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑