Diskussion zum Artikel "Algorithmen zur Optimierung mit Populationen: Binärer genetischer Algorithmus (BGA). Teil I"
Lesen. Was fehlt, ist ein Diagramm, das die allgemeine Darstellung eines Optimierungsalgorithmus zeigt.
Bei ausnahmslos allen Optimierungsalgorithmen, nicht nur bei GA, ist die Reihenfolge der Operatoren (Methoden) immer die gleiche, in der Reihenfolge wie im Inhaltsverzeichnis:
1. Auswahl.
2. Kreuzung.
3. die Mutation.
Jedem einzelnen Algo können ein oder zwei Operatoren fehlen, aber die Reihenfolge ist immer gleich. Diese Reihenfolge lässt sich sicherlich logisch begründen und mit Wahrscheinlichkeiten in Verbindung bringen, und das Ziel eines jeden Optimierungsalgorithmus besteht darin, eine Kombination von Wahrscheinlichkeiten zu Gunsten der Lösung des Problems zu addieren.
Es gibt auch noch eine vierte Methode, die Methode der Platzierung neuer Individuen in einer Population, aber sie wird normalerweise nicht als eigenständige Methode erkannt.
Vielleicht ist es ja sinnvoll, ein Diagramm der Struktur eines "Optimierungsalgorithmus" zu zeichnen, ich werde darüber nachdenken.
Bei ausnahmslos allen Optimierungsalgorithmen, nicht nur bei GA, ist die Reihenfolge der Operatoren (Methoden) immer die gleiche
for (uint i = epochCount; (bool)i--;) { AO.Moving() // Bewegen(i) for (uint set = ArraySize(AO.aName); (bool)set--;) AO.aName[set].f = FF(AO.aName[set].c); AO.Revision(); }
Ich konnte nicht herausfinden, warum einige Moving-Algorithmen Moving ohne Eingaben und andere mit Eingaben haben.
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Algorithmen zur Optimierung mit Populationen: Binärer genetischer Algorithmus (BGA). Teil I :
In diesem Artikel werden wir verschiedene Methoden untersuchen, die in binären genetischen und anderen Populationsalgorithmen verwendet werden. Wir werden uns die Hauptkomponenten des Algorithmus, wie Selektion, Crossover und Mutation, und ihre Auswirkungen auf die Optimierung ansehen. Darüber hinaus werden wir Methoden der Datendarstellung und ihre Auswirkungen auf die Optimierungsergebnisse untersuchen.
Die Parameter von Optimierungsproblemen werden oft als „Merkmale“ bezeichnet und müssen in einer bestimmten Weise dargestellt werden, damit sie in der Logik des Optimierungsalgorithmus verwendet werden können. In der Genetik werden diese Merkmale in Phänotyp und Genotyp unterteilt. Der Phänotyp ist das Erscheinungsbild des zu optimierenden Parameters, und der Genotyp ist die Art und Weise, wie er im Algorithmus dargestellt wird. In den meisten Optimierungsalgorithmen ist der Phänotyp derselbe wie der Genotyp und wird als reelle Zahl dargestellt. Ein Gen ist ein optimierter Parameter, ein Chromosom wiederum ist ein Satz von Genen, d.h. ein Satz von optimierten Parametern.
Die Darstellung von reellen Daten wird zur Darstellung von Bruchzahlen verwendet. Reelle Zahlen können einen Vor- und Nachkommateil haben, die durch einen Dezimalpunkt getrennt sind. „3,14“ und „0,5“ sind beispielsweise reelle Zahlen.
Bei der binären Datendarstellung hingegen wird ein binäres Zahlensystem verwendet, in dem Zahlen durch zwei Symbole dargestellt werden: „0“ und „1“, wobei jede Stelle ein Bit genannt wird. Die Zahl „5“ kann zum Beispiel in binärer Form als „101“ dargestellt werden.
Der Hauptunterschied zwischen der reellen und der binären Darstellung von Daten ist die Art und Weise, wie die Zahlen kodiert werden. Reelle Zahlen werden in der Regel nach Standards wie IEEE 754 kodiert, der Formate für die Darstellung von Gleitkommazahlen definiert. In der Sprache MQL5 wird der Datentyp „double“ für reelle Zahlen verwendet. Sie kann insgesamt 16 signifikante Stellen in einer Zahl beschreiben. Das bedeutet, dass die Gesamtzahl der Stellen sechzehn nicht überschreiten darf, z. B. haben „9 999 999 999 999 999,0“ und „9 999 999,999 999 99“ und „0,999 999 999 999 999 9“ insgesamt sechzehn „9“-Ziffern vor und nach dem Dezimalpunkt. Warum das so wichtig ist, werde ich später noch erklären.
Reelle Zahlen eignen sich zum Schreiben von Programmen und für das tägliche Leben, während binäre Zahlen in Computersystemen und bei der Durchführung von Operationen auf niedriger Ebene, einschließlich logischer und bitweiser Operationen, verwendet werden.
Autor: Andrey Dik