Most evolutionary algorithms (EAs) used in practice employ crossover. In contrast, only for few and mostly artificial examples a runtime advantage from crossover could be proven with mathematical means. The most convincing such result shows that the $(\mu+1)$ genetic algorithm (GA) with population size $\mu=O(n)$ optimizes jump functions with gap size $k \ge 3$ in time $O(n^k / \mu + n^{k-1}\log n)$, beating the $\Theta(n^k)$ runtime of many mutation-based EAs. This result builds on a proof that the GA occasionally and then for an expected number of $\Omega(\mu^2)$ iterations has a population that is not dominated by a single genotype. In this work, we show that this diversity persist with high probability for a time exponential in $\mu$ (instead of quadratic). From this better understanding of the population diversity, we obtain stronger runtime guarantees, among them the statement that for all $c\ln(n)\le\mu \le n/\log n$, with $c$ a suitable constant, the runtime of the $(\mu+1)$ GA on $\mathrm{Jump}_k$, with $k \ge 3$, is $O(n^{k-1})$. Consequently, already with logarithmic population sizes, the GA gains a speed-up of order $\Omega(n)$ from crossover.
翻译:大多数实践中使用的进化算法(EA)都采用交叉操作。然而,仅对少数且多为人工构造的示例,才能通过数学手段证明交叉能带来运行时间优势。其中最令人信服的结果表明:种群规模为$\mu=O(n)$的$(\mu+1)$遗传算法(GA)能在$O(n^k / \mu + n^{k-1}\log n)$时间内优化间隙大小为$k \ge 3$的跳跃函数,优于许多基于突变的进化算法的$\Theta(n^k)$运行时间。该结果基于以下证明:遗传算法偶尔会在预期$\Omega(\mu^2)$次迭代中保持不被单一基因型主导的种群。在本研究中,我们证明这种多样性以高概率持续指数级时间(相对于$\mu$而言,而非二次时间)。基于对种群多样性的更深入理解,我们获得了更强的运行时间保证,其中包括:对于所有满足$c\ln(n)\le\mu \le n/\log n$的种群规模(其中$c$为适当常数),$(\mu+1)$遗传算法在$\mathrm{Jump}_k$($k \ge 3$)上的运行时间为$O(n^{k-1})$。因此,即使使用对数级别的种群规模,遗传算法也能通过交叉获得$\Omega(n)$量级的加速。