Der flexible evolutionäre Algorithmus (flex-EA) ist ein elitistischer (1+1)-Typ-evolutionärer Algorithmus, der seine Mutationsrate in jeder Iteration gemäß einer Wahrscheinlichkeitsverteilung wählt, die durch einen Vektor (den Frequenzvektor) gegeben ist. Der flex-EA aktualisiert seinen Frequenzvektor in jeder Iteration, um vielversprechenden Raten eine hohe Wahrscheinlichkeit zu geben.
Der Algorithmus unterteilt die Mutationsraten in "aktive" Raten, die eine hohe Wahrscheinlichkeit erhalten, und "inaktive" Raten, die eine niedrige Wahrscheinlichkeit erhalten. Erfolgreiche Raten werden dem Archiv hinzugefügt, während erfolglose Raten nach einer bestimmten Zeit verworfen werden. Wenn keine Rate aktiv ist, wählt der flex-EA die Nachfolgerrate der zuletzt aktiven Rate, ähnlich wie bei der Stagnationserkennung.
Der flex-EA erlaubt die Anpassung vieler Parameter, um problemspezifisches Wissen zu integrieren. Ohne solches Wissen empfehlen die Autoren, die Wahrscheinlichkeiten für inaktive Raten gemäß einer schwanzlastigen Verteilung (Power-Law) zu wählen und die Verwerfungszeiten für aktive Raten ähnlich wie bei der Stagnationserkennung.
Die Autoren analysieren den flex-EA auf einer Reihe von Problemen, darunter unimodale Funktionen, Jump-Funktionen, Minimum-Spannbaum-Probleme und hürdenartige Funktionen. In allen Fällen ist die Leistung des flex-EA nahe an oder sogar besser als die besten bekannten Ergebnisse für Stagnationserkennung und schwanzlastige Mutationen.
Іншою мовою
із вихідного контенту
arxiv.org
Ключові висновки, отримані з
by Martin S. Kr... о arxiv.org 04-08-2024
https://arxiv.org/pdf/2404.04015.pdfГлибші Запити