2016-07-26 27 views
1

Nachdem ich den Pseudocode für die Implementierung der Steady-state-Selektion in Genetic Algorithms in Essentials of Metaheuristics und site, gelesen habe, sollte ich die Kinder immer mutieren oder sollte ich sie einer Mutationswahrscheinlichkeit von 50% unterziehen?Sollte ich die Nachkommenschaft immer im stationären Zustand mutieren?

Ich war ein wenig, dass Bevölkerung besorgt nicht konvergieren, wenn ich tun Mutation immer bei jeder Generation, weil die Chromosomen durch reelle Zahl Werte von 0 bis 1

Antwort

1

Das Verhalten eines genetischen Algorithmus dargestellt werden, ist Sehr sinnvoll in Bezug auf die Gewichtswerte, die Sie heuristisch wählen.

Die Wahrscheinlichkeit jeder Aktion zugewiesenen Werte wirklich hängen von die bestimmte genetische Schema, das Sie sich bewerben, die Art und Weise, in der Daten vertreten und betroffen durch Mutation und Crossover, die ursprüngliche Bevölkerung und das Problem selbst.

Also, um zu heuristisch wählen die besten Gewichtswerte für Ihr Problem, ich beraten Sie den Überblick über die folgenden Daten zu behalten:

  • die Evolution des Entropic Diversity Index (ref: Wikipedia) Ihrer Bevölkerung wie die Zeit vergeht
  • die evolution der beste fitness fu nction Wert innerhalb Ihrer Bevölkerung wie die Zeit vergeht
  • die Evolution des durchschnittlichen Fitness-Funktion Wertes innerhalb Ihrer Bevölkerung, wie die Zeit
  • die Rate von neuen Individuen, die mit den gleichen erscheinen geht genetischer Code als vorhandenen (oder Vergangenheit) Personen

Hier lege ich eine Handlung, die zeigt, s die Entwicklung dieser Parameter in einer der frühesten Ausführungen (ich musste es immer noch ausgleichen)AGER, ein maßgeschneiderter genetischen Algorithmus, der in der Lage ist, automatisch die beste Annäherung des idealen Designs zu finden ein eingebetteter Mikroprozessor basierend auf der SimpleScalar Architektur zum Ausführen einer bestimmten Anwendung.

enter image description here (click to enlarge picture)

Idealerweise sollten Sie Ihre Gewichtswerte setzen, so dass die anfängliche Steigung so gering wie möglich ist, aber nicht bis zu dem Punkt, dass durchschnittliche Fitness-Funktion Wert nicht verbessert entlang mehrerer Generationen (es sollte jedoch erlaubt sein, sich vorübergehend zu verschlechtern). Die Vielfalt sollte so lange wie möglich relativ hoch gehalten werden, während der Durchschnittswert der Fitness-Funktion sollte sehr langsam wachsen (im Gegensatz zum Bild). Der beste Fitnesswert sollte stattdessen als monoton steigende Funktion überprüft werden.


Nachdem dies gesagt ist, scheint eine Mutationsrate gleich 50% sehr hoch zu sein.