Der größte Teil der Literatur, die ich über GAs gelesen habe, schlägt vor, einen Crossover-Wert von etwa 0,7 zu verwenden. Sie nehmen also die ersten 70% der Gene eines Chromosoms und die letzten 30% des anderen, um ein neues Chromosom zu produzieren.
Wenn Sie die Elternchromosomen auswählen, indem Sie die ersten beiden (nach Fitness geordnet) nehmen, kann ich die Logik hier sehen, da Sie den Genen des höher bewerteten Chromosoms mehr Gewicht beimessen. Wenn Sie jedoch eine stochastische Methode (z. B. ein Roulette-Rad) verwenden, um die Eltern auszuwählen, was bringt es dann, etwas anderes als 0,5 als Crossover-Wert zu verwenden? Angesichts der Tatsache, dass Sie die Chromosomen A und B wie die Eltern ausgewählt haben, ist es genauso wahrscheinlich, dass Sie zuerst A und dann B als B und A auswählen, nicht wahr?
Bisher habe ich nur eine GA geschrieben (immer noch ganz unten in der Lernkurve, aber dank einer großen Hilfe hier schnell aufwärts!), Aber Experimente dazu zeigen, dass 0,5 eine schnellere Konvergenz der Lösung ergibt als jeder andere Wert.
Oder fehlt mir etwas?
Most of the literature I've read about GAs suggests using a crossover value of around 0.7
<- Eine Sache, die zu beachten ist, ist, dass viele dieser Arten von Werten bei der heuristischen Optimierung mehr oder weniger darauf basieren, welche Werte zu guten Ergebnissen zu führen schienen (und nicht zu einer empirischen Ableitung). Ich bin mit GA weniger vertraut, aber ich weiß, dass bei anderen populationsbasierten Optimierungsmethoden die Konstanten ziemlich willkürlich bestimmt wurden, indem einige Forscher einige grundlegende Experimente durchführten, Werte fanden, die besser funktionierten, und diese Werte dann von der Optimierungsgemeinschaft insgesamt übernommen wurden .