Genetic programming

Genetic programming

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. Einerseits ist dieser Ansatz allgemeiner als bei anderen evolutionären Algorithmen, da weniger Annahmen über die potentielle Lösung vorweg genommen werden, andererseits ist jedoch die Größe des Suchraums in der Regel weit größer.

Eine typische Anwendung von GP ist die symbolische Regression. Im Gegensatz zu den klassischen Formen der Regression, wie etwa lineare oder logistische, kann die symbolische Regression für Probleme unbekannter Form eingesetzt werden. So können mittels GP Funktionen für die näherungsweise Lösung von Problemen gefunden werden, für die es keine analytische Lösung gibt, wie z. B. der Bewertung von amerikanischen Put-Optionen.

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

Literatur

  1. John R. Koza: Genetic Programming. On the Programming of Computers by Means of Natural Selection, The MIT Press 1992, ISBN 0-262-11170-5
  • Wolfgang Banzhaf, Peter Nordin, Robert E. Keller, Frank D. Francone: Genetic Programming - An Introduction
  • William B. Langdon, Riccardo Poli: Foundations of Genetic Programming.
  • Riccardo Poli, William B. Langdon, Nicholas Freitag McPhee (2008): A Field Guide to Genetic Programming, freely available via Lulu.com.
  • Christian Keber: Option Valuation with the Genetic Programming Approach
  • Thomas Weise: Global Optimization Algorithms - Theory and Application

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Genetic programming — In artificial intelligence, genetic programming (GP) is an evolutionary algorithm based methodology inspired by biological evolution to find computer programs that perform a user defined task. It is a specialization of genetic algorithms where… …   Wikipedia

  • genetic programming — noun A search heuristic that explores the space of computer programs and is based on biological evolution …   Wiktionary

  • Linear genetic programming — is unrelated to linear programming . Linear Genetic Programming (LGP) is a particular subset of genetic programming wherein computer programs in population are represented as a sequence of instructions from imperative programming language or… …   Wikipedia

  • Genetic representation — is a way of representing solutions/individuals in evolutionary computation methods. Genetic representation can encode appearance, behavior, physical qualities of individuals. Designing a good genetic representation that is expressive and… …   Wikipedia

  • Genetic algorithm — A genetic algorithm (GA) is a search heuristic that mimics the process of natural evolution. This heuristic is routinely used to generate useful solutions to optimization and search problems. Genetic algorithms belong to the larger class of… …   Wikipedia

  • Gene expression programming — (GEP) is an evolutionary algorithm that evolves populations of computer programs in order to solve a user defined problem. GEP has similarities, but is distinct to, the evolutionary computational method of Genetic Programming. In Genetic… …   Wikipedia

  • Evolutionary programming — is one of the four major evolutionary algorithm paradigms. It was first used by Lawrence J. Fogel in 1960 in order to use simulated evolution as a learning process aiming to generate artificial intelligence. Fogel used finite state machines as… …   Wikipedia

  • Schema (genetic algorithms) — A schema is a template in computer science used in the field of genetic algorithms that identifies a subset of strings with similarities at certain string positions. Schemata are a special case of cylinder sets; and so form a topological… …   Wikipedia

  • Quality control and genetic algorithms — In engineering and manufacturing, quality control is involved in developing systems to ensure products or services are designed and produced to meet or exceed customer requirements. Genetic algorithms are search techniques, used in computing to… …   Wikipedia

  • Inferential programming — In ordinary computer programming, the programmer keeps the program s intended results in mind and painstakingly constructs a computer program to achieve those results. Inferential programming refers to (still mostly hypothetical) techniques and… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”