Was ist genetische Programmierung?

genetische Programmierung ist der Prozess der Verwendung eines Computerprogramms zum Schreiben eines anderen Computerprogramms mit evolutionärer Algorithmus-basierter Methodik. Dieser Prozess wird häufig mit der linearen Programmierung verglichen, bei der der Programmierer spezifische Anweisungen für den Computer schreibt. LISP und Schema sind aufgrund ihrer hohen Funktionalität und Flexibilität die häufigsten Programmiersprachen für diese Art von Arbeit. Aufgrund seiner konzeptionellen Ähnlichkeit mit der biologischen Evolution wird die genetische Programmierung häufig als Beispiel für bio-inspiriertes Computing bezeichnet. Zum Beispiel könnte ein GP verwendet werden, um ein Programm zum Zeichnen einer Skizze eines Fotos zu erstellen. Das erste, was der GP tun würde, ist eine Reihe von Programmen, die verschiedene Computerzeichnungsfunktionen in zufälligen Kombinationen verwenden. Dann würde der Hausarzt jedes dieser Programme in der Reihenfolge ausführen und die Ergebnisse jeder zum Bild ausgebenDateien.

Der nächste Schritt für den GP ist die Auswahl der besten dieser Programme aus dem Set. Dieser Prozess ist im Allgemeinen der schwierigste Teil der genetischen Programmierung. Im Falle des Zeichnungsprogramms würde der GP die Bildvergleichssoftware verwenden, um zu bestimmen, welcher der Zufallszeichnungen dem Bild am ähnlichsten war, das die Software zu zeichnen versuchte. Von den zufällig erzeugten Programmen würde der GP die oberen Mehrheit auswählen und den Rest verwerfen. Der Auswahlprozess wird als Fitness -Bewertung bezeichnet und wird allgemein als der schwierigste Teil der genetischen Programmierung angesehen.

Sobald die besten Programme ausgewählt wurden, wird der GP sie als Grundlage für eine neue Gruppe von Programmen verwenden. Jede neue Charge wird als Generation bezeichnet. Die beiden Möglichkeiten zur Schaffung der neuen Generation sind Mutation und Crossover. Mutation funktioniert, indem er eines der vorhandenen Programme annimmt und zufällige Änderungen vornimmt, hoffentlich fürdesto besser. Crossover, auch Zucht genannt, arbeitet mit zwei der Top -Programme und kombiniert Elemente von ihnen, um neue Programme zu erstellen.

Nachdem der GP eine neue Gruppe von Programmen erstellt hat, wiederholt er den Prozess des Ausführens und der Bewertung und dann die Auswahl, Eliminierung und Erzeugungsprozesse. GPS wird häufig Hunderte von Generationen ausführen, bevor ein einzelnes Programm mit einem zufriedenstellenden Ergebnis findet. Trotz dieser Einschränkung ist die genetische Programmierung eine häufige Möglichkeit, einige Arten von schwierigen Rechenproblemen zu lösen, einschließlich Robotertechnik und künstlichen Intelligenzproblemen.

ANDERE SPRACHEN

War dieser Artikel hilfreich? Danke für die Rückmeldung Danke für die Rückmeldung

Wie können wir helfen? Wie können wir helfen?