Zum Inhalt springen

„Genetische Programmierung“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[ungesichtete Version][ungesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
Keine Bearbeitungszusammenfassung
HaSee (Diskussion | Beiträge)
KKeine Bearbeitungszusammenfassung
Zeile 3: Zeile 3:
'''GP''' wird wie andere EA verwendet, um [[Problem]]e zu lösen, die auf klassischem Wege nicht oder nur schwer lösbar sind, etwa wegen hoher [[Komplexität (Informatik)|Komplexität]], Nichtlinearität oder zu großem Suchraum. Wie in EA üblich, werden nach dem Vorbild der [[Evolution|biologischen Evolution]] vom Algorithmus initiale Individuen erzeugt, welche eine mögliche Lösung für das bearbeitete Problem darstellen und im folgenden problemspezifisch durch Bewertung, Selektion und Variation verbessert werden. Im Gegensatz zu GA und ES wird ein Individuum als eigenes [[Computerprogramm|Programm]] interpretiert, als Suchraum dient ein Raum ganzer Programme. Dieser Ansatz ist allgemeiner als bei anderen Evolutionäre Algorithmen, da weniger Annahmen über die potentielle Lösung vorweg genommen werden, andererseits ist die Größe des Suchraums damit in der Regel weit größer.
'''GP''' wird wie andere EA verwendet, um [[Problem]]e zu lösen, die auf klassischem Wege nicht oder nur schwer lösbar sind, etwa wegen hoher [[Komplexität (Informatik)|Komplexität]], Nichtlinearität oder zu großem Suchraum. Wie in EA üblich, werden nach dem Vorbild der [[Evolution|biologischen Evolution]] vom Algorithmus initiale Individuen erzeugt, welche eine mögliche Lösung für das bearbeitete Problem darstellen und im folgenden problemspezifisch durch Bewertung, Selektion und Variation verbessert werden. Im Gegensatz zu GA und ES wird ein Individuum als eigenes [[Computerprogramm|Programm]] interpretiert, als Suchraum dient ein Raum ganzer Programme. Dieser Ansatz ist allgemeiner als bei anderen Evolutionäre Algorithmen, da weniger Annahmen über die potentielle Lösung vorweg genommen werden, andererseits ist die Größe des Suchraums damit in der Regel weit größer.


Die zwar nicht erste, aber grundlegende Arbeit zu '''GP''' verfasste John Koza, als Individuen verwendete er Programme in der syntaktisch einfachen funktionalen Programmiersprache [[LISP]], die in Baumstruktur vorliegen. Bei anderen Ansätzen wird auf linearen Programmen (z.B. direkt auf [[Assemblersprache|Assembler]]) oder auf [[Graph (Graphentheorie)|Graphen]] operiert, zuletzt wurden diese Möglichkeiten auch kombiniert (sg. Linear-Graphen-GP).
Die zwar nicht erste, aber grundlegende Arbeit zu '''GP''' verfasste John Koza, als Individuen verwendete er Programme in der syntaktisch einfachen funktionalen Programmiersprache [[LISP]], die in Baumstruktur vorliegen. Bei anderen Ansätzen wird auf linearen Programmen (z. B. direkt auf [[Assemblersprache|Assembler]]) oder auf [[Graph (Graphentheorie)|Graphen]] operiert, zuletzt wurden diese Möglichkeiten auch kombiniert (so genannte Linear-Graphen-GP).


== Literatur ==
== Literatur ==

Version vom 22. Februar 2006, 10:58 Uhr

Die Genetische Programmierung (GP) ist wie der Genetische Algorithmus (GA) und die Evolutionsstrategie (ES) ein heuristisches Optimierungsverfahren und gehört in die Klasse der Evolutionären Algorithmen (EA).

GP wird wie andere EA verwendet, um Probleme zu lösen, die auf klassischem Wege nicht oder nur schwer lösbar sind, etwa wegen hoher Komplexität, Nichtlinearität oder zu großem Suchraum. Wie in EA üblich, werden nach dem Vorbild der biologischen Evolution vom Algorithmus initiale Individuen erzeugt, welche eine mögliche Lösung für das bearbeitete Problem darstellen und im folgenden problemspezifisch durch Bewertung, Selektion und Variation verbessert werden. Im Gegensatz zu GA und ES wird ein Individuum als eigenes Programm interpretiert, als Suchraum dient ein Raum ganzer Programme. Dieser Ansatz ist allgemeiner als bei anderen Evolutionäre Algorithmen, da weniger Annahmen über die potentielle Lösung vorweg genommen werden, andererseits ist die Größe des Suchraums damit in der Regel weit größer.

Die zwar nicht erste, aber grundlegende Arbeit zu GP verfasste John Koza, als Individuen verwendete er Programme in der syntaktisch einfachen funktionalen Programmiersprache LISP, die in Baumstruktur vorliegen. Bei anderen Ansätzen wird auf linearen Programmen (z. B. direkt auf Assembler) oder auf Graphen operiert, zuletzt wurden diese Möglichkeiten auch kombiniert (so genannte Linear-Graphen-GP).

Literatur

  • John R. Koza: Genetic Programming.
  • Riccardo Poli, William B. Langdon: Foundations of Genetic Programming.

Siehe auch