Algorithme génétique, en intelligence artificielle, un type d’algorithme informatique évolutionnaire dans lequel des symboles (souvent appelés « gènes » ou « chromosomes ») représentant des solutions possibles sont « élevés ». Cette « reproduction » des symboles comprend généralement l’utilisation d’un mécanisme analogue au processus de croisement dans la recombinaison génétique et un taux de mutation réglable. Une fonction d’adéquation est utilisée sur chaque génération d’algorithmes pour améliorer progressivement les solutions, par analogie avec le processus de sélection naturelle. Le processus d’évolution des algorithmes génétiques et d’automatisation de la sélection est connu sous le nom de programmation génétique. En plus des logiciels généraux, les algorithmes génétiques sont parfois utilisés dans la recherche sur la vie artificielle, les automates cellulaires et les réseaux neuronaux.
Bien qu’il ne soit pas le premier à expérimenter les algorithmes génétiques, John Holland a beaucoup fait pour développer et populariser le domaine avec son travail au début des années 1970 à l’Université du Michigan. Comme il l’a décrit dans son livre, Adaptation in Natural and Artificial Systems (1975 ; révisé et augmenté en 1992), il a conçu une méthode, ou théorème des schémas, pour évaluer chaque génération d’algorithmes génétiques. John Koza, l’un des étudiants de doctorat de Holland et détenteur de plus d’une douzaine de brevets liés à la programmation génétique, a été l’un des premiers à développer des applications commerciales de ce domaine, en tant que fondateur d’une société connue sous le nom de Scientific Games. Koza a partagé ses expériences de programmation dans une série de livres, à commencer par Genetic Programming : On the Programming of Computers by Means of Natural Selection (1992).
Une difficulté souvent rencontrée en programmation génétique est celle des algorithmes qui restent bloqués dans la région d’une solution raisonnablement bonne (une « région localement optimale ») plutôt que de trouver la meilleure solution (un « optimum global »). Le dépassement de ces impasses évolutives nécessite parfois une intervention humaine. En outre, la programmation génétique est gourmande en ressources informatiques. Dans les années 1990, les techniques de programmation n’étaient pas suffisamment développées pour justifier l’utilisation coûteuse de superordinateurs, ce qui limitait les applications à des problèmes plutôt simplistes. Toutefois, à mesure que les ordinateurs personnels bon marché sont devenus plus puissants, la programmation génétique a commencé à connaître un succès commercial notable dans la conception de circuits, le tri et la recherche de données et l’informatique quantique. En outre, la National Aeronautics and Space Administration (NASA) a utilisé la programmation génétique dans la conception d’antennes pour le Space Technology 5 Project, qui concerne trois « micro-satellites » lancés en 2006 pour surveiller les effets de l’activité solaire sur la magnétosphère de la Terre.