ResearchTrend.AI
  • Papers
  • Communities
  • Events
  • Blog
  • Pricing
Papers
Communities
Social Events
Terms and Conditions
Pricing
Parameter LabParameter LabTwitterGitHubLinkedInBlueskyYoutube

© 2025 ResearchTrend.AI, All rights reserved.

  1. Home
  2. Papers
  3. 1703.03334
17
204

Fast Genetic Algorithms

9 March 2017
Benjamin Doerr
H. P. Le
Régis Makhmara
Ta Duy Nguyen
ArXivPDFHTML
Abstract

For genetic algorithms using a bit-string representation of length~nnn, the general recommendation is to take 1/n1/n1/n as mutation rate. In this work, we discuss whether this is really justified for multimodal functions. Taking jump functions and the (1+1)(1+1)(1+1) evolutionary algorithm as the simplest example, we observe that larger mutation rates give significantly better runtimes. For the \jumpm,n\jump_{m,n}\jumpm,n​ function, any mutation rate between 2/n2/n2/n and m/nm/nm/n leads to a speed-up at least exponential in mmm compared to the standard choice. The asymptotically best runtime, obtained from using the mutation rate m/nm/nm/n and leading to a speed-up super-exponential in mmm, is very sensitive to small changes of the mutation rate. Any deviation by a small (1±\eps)(1 \pm \eps)(1±\eps) factor leads to a slow-down exponential in mmm. 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\alpha/nα/n, where α\alphaα is chosen from a power-law distribution. We prove that the (1+1)(1+1)(1+1) EA with this heavy-tailed mutation rate optimizes any \jumpm,n\jump_{m,n}\jumpm,n​ function in a time that is only a small polynomial (in~mmm) factor above the one stemming from the optimal rate for this mmm. 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}.

View on arXiv
Comments on this paper