„Genetische Programmierung“ – Versionsunterschied
| [ungesichtete Version] | [ungesichtete Version] |
Keine Bearbeitungszusammenfassung |
K Bot: Ergänze: sl |
||
| Zeile 24: | Zeile 24: | ||
[[en:Genetic programming]] |
[[en:Genetic programming]] |
||
[[pl:Programowanie genetyczne]] |
[[pl:Programowanie genetyczne]] |
||
[[sl:Genetsko programiranje]] |
|||
[[zh:遗传编程]] |
[[zh:遗传编程]] |
||
Version vom 1. Dezember 2005, 21:50 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 (sg. Linear-Graphen-GP).
Literatur
- John R. Koza: Genetic Programming.
- Riccardo Poli, William B. Langdon: Foundations of Genetic Programming.
Siehe auch
Weblinks
- http://www.genetic-programming.com
- Genetische Programmierung einer Turingmaschine Umfangreicher, gut dokumentierter Sourcecode mit ausführlicher Dokumentation(SOURCE+PDF+UML, 2.7MB ZIP)