Genetischer Algorithmus, in der künstlichen Intelligenz eine Art von evolutionärem Computeralgorithmus, bei dem Symbole (oft „Gene“ oder „Chromosomen“ genannt), die mögliche Lösungen darstellen, „gezüchtet“ werden. Dieses „Züchten“ von Symbolen umfasst in der Regel die Verwendung eines Mechanismus, der dem Crossing-Over-Prozess bei der genetischen Rekombination entspricht, und eine einstellbare Mutationsrate. Bei jeder Generation von Algorithmen wird eine Fitnessfunktion verwendet, um die Lösungen in Analogie zum Prozess der natürlichen Selektion schrittweise zu verbessern. Der Prozess der Entwicklung der genetischen Algorithmen und der Automatisierung der Auswahl wird als genetische Programmierung bezeichnet. Neben allgemeiner Software werden genetische Algorithmen manchmal in der Forschung mit künstlichem Leben, zellulären Automaten und neuronalen Netzen eingesetzt.
Obwohl John Holland nicht der erste war, der mit genetischen Algorithmen experimentierte, trug er mit seiner Arbeit in den frühen 1970er Jahren an der Universität von Michigan viel zur Entwicklung und Popularisierung dieses Bereichs bei. Wie in seinem Buch Adaptation in Natural and Artificial Systems (1975; überarbeitet und erweitert 1992) beschrieben, entwickelte er eine Methode, das so genannte Schema-Theorem, zur Bewertung jeder Generation genetischer Algorithmen. John Koza, einer von Hollands Doktoranden und Inhaber von mehr als einem Dutzend Patenten im Zusammenhang mit der genetischen Programmierung, war einer der ersten, der als Gründer des Unternehmens Scientific Games kommerzielle Anwendungen auf diesem Gebiet entwickelte. Koza teilte seine Programmiererfahrungen in einer Reihe von Büchern, beginnend mit Genetic Programming: On the Programming of Computers by Means of Natural Selection (1992).
Eine Schwierigkeit, auf die man bei der genetischen Programmierung häufig stößt, besteht darin, dass die Algorithmen in der Region einer einigermaßen guten Lösung (einer „lokal optimalen Region“) stecken bleiben, anstatt die beste Lösung (ein „globales Optimum“) zu finden. Die Überwindung solcher evolutionären Sackgassen erfordert manchmal menschliches Eingreifen. Darüber hinaus ist die genetische Programmierung sehr rechenintensiv. In den 1990er Jahren waren die Programmiertechniken noch nicht so weit entwickelt, dass sie den teuren Einsatz von Supercomputern rechtfertigten, was die Anwendungen auf eher einfache Probleme beschränkte. Als jedoch billigere Personalcomputer immer leistungsfähiger wurden, begann die genetische Programmierung einen bemerkenswerten kommerziellen Erfolg beim Entwurf von Schaltkreisen, beim Sortieren und Suchen von Daten und beim Quantencomputing zu haben. Darüber hinaus hat die National Aeronautics and Space Administration (NASA) die genetische Programmierung bei der Entwicklung von Antennen für das Space Technology 5 Project eingesetzt, bei dem es um drei „Mikro-Satelliten“ ging, die 2006 zur Überwachung der Auswirkungen der Sonnenaktivität auf die Magnetosphäre der Erde gestartet wurden.