Ich stimme den vorherigen Antworten zu und füge auch Folgendes hinzu.
Wir kümmern uns normalerweise nicht um die zeitliche Komplexität eines genetischen Algorithmus. In der Regel ist es uns wichtig, wie gut die Ergebnisse im Vergleich zu einigen Benchmarks sind und wie hoch die Konvergenzrate ist.
Sie können jedoch sehen, dass genetische Algorithmen in Iterationen ausgeführt werden. Zu Beginn wird eine Reihe von Lösungen zufällig erzeugt ( wird als Population bezeichnet). Die Kosten der Lösungen von werden berechnet. Einige Operationen werden über die Lösungen von in jeder Iteration ausgeführt, wie z. B. Überkreuzung, Mutation usw. Die besten Lösungen in werden in und wir fahren wie zuvor fort. Nach der letzten Iteration geben wir die beste Lösung aus, die wir gefunden haben.SSSSkkS
Sie können hier feststellen, dass die Zeitkosten einer Iteration von den inneren Operationen abhängen (z. B. Überkreuzungen, Mutationen und andere, Finden der besten unterschiedlichen Lösungen, Generieren zufälliger Lösungen, Berechnen der Kosten der Lösungen von usw.), die normalerweise einfach zu handhaben sind implementieren und auch problemabhängig. Im Allgemeinen hängen sie von der Größe einer Lösung ab.kS
Die Ausführungszeit eines genetischen Algorithmus hängt auch von der Anzahl der Iterationen ab (offensichtlich!). Normalerweise möchten wir aufhören, wenn wir zu einer Lösung konvergieren , die kaum verbessert wird. Wie finde ich die Anzahl der Iterationen, die dies garantieren? Es gibt einige probabilistische Analysen, um die durchschnittliche Konvergenzzeit zu ermitteln. Siehe zum Beispiel [1] (ziemlich interessante Ergebnisse). Sie werden jedoch feststellen, dass wir die Analyse der komplexen Probleme, bei denen genetische Algorithmen verwendet werden, noch nicht erreicht haben. Daher wird in vielen Fällen die Anzahl der Iterationen in einem genetischen Algorithmus experimentell bestimmt.
[1] Oliveto, Pietro S., Jun He und Xin Yao. "Zeitliche Komplexität evolutionärer Algorithmen zur kombinatorischen Optimierung: Ein Jahrzehnt der Ergebnisse." Internationales Journal für Automatisierung und Datenverarbeitung 4.3 (2007): 281-293.