Cet article est la version actualisée de l’article S7218 intitulé Algorithmes génétiques et algorithmes évolutionnaires rédigé par Évelyne LUTTON et paru en 2006
RECHERCHEZ parmi plus de 10 000 articles de référence ou pratiques et 4 000 articles d'actualité
PAR DOMAINE D'EXPERTISE
PAR SECTEUR INDUSTRIEL
PAR MOTS-CLES
NAVIGUER DANS LA
CARTOGRAPHIE INTERACTIVE
DÉCOUVREZ toute l'actualité, la veille technologique GRATUITE, les études de cas et les événements de chaque secteur de l'industrie.
Article précédent
Machines à noyaux pour l’apprentissage statistiqueArticle de référence | Réf : S7218 v2
ARTICLE INTERACTIF
Auteur(s) : Évelyne LUTTON
Date de publication : 10 déc. 2020
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes (215 articles en ce moment)
Cette offre vous donne accès à :
Une base complète et actualisée d'articles validés par des comités scientifiques
Un service Questions aux experts et des outils pratiques
Des Quiz interactifs pour valider la compréhension et ancrer les connaissances
Présentation
Lire l'article interactif
Bibliographie & annexes
Quiz & Test
Inclus dans l'offre
Cet article est la version actualisée de l’article S7218 intitulé Algorithmes génétiques et algorithmes évolutionnaires rédigé par Évelyne LUTTON et paru en 2006
Les principes de base des algorithmes évolutionnaires (AE), dont les plus connus sont les algorithmes génétiques (AG), sont directement inspirés de la théorie de l’évolution selon Darwin. Ces méthodes de résolution de problèmes, d’optimisation stochastique, copient de façon très simplifiée la capacité de populations d’organismes vivants à s’adapter à leur environnement à l’aide de mécanismes de sélection et d’héritage génétique. Cet article donne un panorama rapide du « darwinisme artificiel » et de la variété de ses applications.
Evolutionary Algorithms (EA), including the most famous ones, Genetic Algorithms (GA), are based on Darwin’s theory. These problem-solving or stochastic optimization methods mimic in a very simplified manner the capabilities of populations of living organisms to adapt to their environments thanks to selection and genetic inheritance mechanisms. This paper provides a brief panorama of artificial Darwinism and its varied and numerous applications.
Évelyne LUTTON : Directrice de recherche INRAE - UMR MIA 518, AgroParisTech/INRAE - Institut des systèmes complexes, 113 rue Nationale, 75013, Paris, France.
Depuis les années 1970, de nombreuses méthodes d’optimisation stochastique ont été développées sur la base de principes simplifiés d’évolution darwinienne. L’anglicisme « algorithmes évolutionnaires (AE) » choisi pour désigner ces méthodes est intentionnel : la communauté française employant ces méthodes a jugé important de distinguer les travaux évolutionnistes, portant sur des modèles biologiques très complexes, des approches évolutionnaires, utilisant des modèles informatiques ultra-simplifiés.
Actuellement, les algorithmes dits « génétiques » (AG) sont les plus médiatisés parmi ces techniques, mais il en existe d’autres (programmation génétique, stratégies d’évolution, évolution grammaticale, par exemple) qui diffèrent par leur interprétation des principes darwiniens. La composante commune de ces techniques est qu’elles font évoluer des populations organisées en générations – qui représentent par exemple des points d’un espace de recherche quand on souhaite optimiser une fonction – sous l’action conjuguée de deux catégories d’opérateurs stochastiques produisant :
une pression de sélection permettant de sélectionner des individus autorisés à se reproduire : « les meilleurs » au regard d’une fonction définie sur l’espace de recherche considéré, dite « fonction d’évaluation », « fonction de performance », ou « fitness », et qui traduit le problème que l’on cherche à résoudre ;
des variations aléatoires qui produisent de nouveaux individus, afin de constituer la génération suivante : croisement par échange d’informations entre plusieurs points, mutation par perturbation locale sur un point, pour faire un parallèle avec la génétique.
L’efficacité de ce schéma est fondée sur l’hypothèse que l’action des opérateurs génétiques sur des individus sélectionnés produit statistiquement des individus de plus en plus proches de la solution recherchée. En d’autres termes, le processus stochastique figuré par les populations successives doit être correctement calibré et paramétré pour converger vers ce que l’on souhaite, c’est-à-dire le plus souvent l’optimum global de la fonction de performance. Une grande part des recherches théoriques sur les algorithmes évolutionnaires est consacrée à cet épineux problème de convergence et à celui de savoir ce qui rend la tâche aisée ou difficile pour un algorithme évolutionnaire (notion d’AE-difficulté). Comme nous le verrons dans ce panorama, des réponses théoriques rassurantes existent (oui, cela converge, si l’on respecte certaines hypothèses), mais d’autres questions cruciales d’un point de vue pratique restent ouvertes (vitesses de convergence, notamment). On peut cependant dire que les résultats théoriques justifient l’efficacité des algorithmes évolutionnaires en tant qu’heuristiques de recherche aléatoire, confortant ainsi leur large usage empirique.
Du point de vue de l’optimisation, le grand intérêt des algorithmes évolutionnaires est que ce sont des méthodes stochastiques d’ordre 0, c’est-à-dire que seule la connaissance des valeurs de la fonction à optimiser aux points d’échantillonnage est nécessaire (il n’y a pas nécessité de connaître des dérivées), ce qui en fait des méthodes d’optimisation utilisables pour des fonctions très irrégulières, mal conditionnées ou complexes à calculer. En revanche, un algorithme évolutionnaire a un coût calculatoire qui peut devenir important. Ces deux caractéristiques en font des méthodes adaptées aux cas où les méthodes standard plus rapides du point de vue du calcul (par exemple, des méthodes de gradient requérant l’existence et le calcul de dérivées) ne sont plus applicables, du fait qu’elles se trouvent trop rapidement piégées dans des optima locaux : espace de recherche trop vaste, fonctions trop irrégulières, jeu de variables mixtes, par exemple. Nous verrons plus loin que d’autres problèmes – comme les problèmes dynamiques ou les problèmes interactifs – peuvent être traités à l’aide d’une approche évolutionnaire. Enfin, il est souvent avantageux d’hybrider les approches évolutionnaires avec d’autres approches d’optimisation (descente de gradient, recherche Tabou, recuit simulé, etc.).
Malgré l’apparente simplicité d’un processus évolutionnaire (ce qui a conduit de nombreux programmeurs à écrire très vite « leur » algorithme génétique, parfois bien décevant), fabriquer un algorithme évolutionnaire efficace est une tâche difficile, car les processus évolutionnaires sont très sensibles aux choix algorithmiques et paramétriques, aux représentations du problème notamment. Le design des ingrédients de base d’un algorithme évolutionnaire efficace n’est pas si simple et l’expérience prouve que les grandes réussites sont fondées sur une très bonne connaissance du problème à traiter, sur une bonne compréhension des mécanismes évolutionnaires et sur une bonne dose de créativité. Il est tout bonnement hasardeux de considérer ces techniques en « boîte noire », comme un « optimiseur universel », que l’on utilise sans faire aucun réglage.
Cela dit, les « success-stories » sont nombreuses, et les techniques évolutionnaires font partie de notre quotidien ; il suffit par exemple de suivre ce qui se fait dans les conférences internationales du domaine (EvoStar, CEC, GECCO, PPSN, EA) pour s’en convaincre. En effet, le champ d’application des algorithmes évolutionnaires est très large : il va des applications réelles complexes comme le contrôle du flux de pipelines de gaz, le design de profils d’ailes, le routage aérien ou la planification de trajectoires de robots, à des problèmes plus théoriques et combinatoires, en théorie des jeux, en modélisation économique, en finance, en commande de processus et en apprentissage.
Algorithmes évolutionnaires | Algorithmes génétiques | Optimisation stochastique | Darwinisme artificiel
Evolutionary algorithms | Genetic algorithms | Stochastic optimisation | Artificial darwinism
Accueil > Ressources documentaires > Innovation > Éco-conception et innovation responsable > Conception durable inspirée du vivant : le biomimétisme > Algorithmes génétiques, algorithmes évolutionnaires
Accueil > Ressources documentaires > Automatique - Robotique > Automatique et ingénierie système > Automatique avancée > Algorithmes génétiques, algorithmes évolutionnaires
Vous êtes abonné à cette offre ?
Connectez-vous !
Vous souhaitez découvrir cette offre ?
Cet article est inclus dans l'offre :
TECHNOLOGIES LOGICIELLES ARCHITECTURES DES SYSTÈMES
Cet article vous permet de préparer une certification CerT.I.
Le test de validation des connaissances pour obtenir cette certification de Techniques de l’Ingénieur est disponible dans le module CerT.I.
(1) - ALTENBERG (L.) - Evolutionary Computation Models from Population Genetics, Part 2: An Historical Toolbox, - in Congress on Evolutionary Computation (2000).
(2) - ANGELINE (P.J.), POLLACK (J.B.) - Competitive Environments Evolve Better Solutions for Complex Tasks, - in Proceedings of the Fifth International Conference on Genetic Algorithms, San Mateo, California: Morgan Kaufmann (1993).
(3) - GOERTZEL (B.) - Fractal image compression with the genetic algorithm, - Complexity International, 1 (1994).
(4) - BAECK (T.), HOFFMEISTER (F.), SCHWEFEL (H.P.) - A Survey of Evolution Strategies, - in International Conference on Genetic Algorithms, pp. 2-10 (1991).
(5) - BANZHAF (W.) - Handbook of Evolutionary Computation, - in Oxford University Press (1997).
(6) - BEN HAMIDA (S.) - Algorithmes...
Inspyred, bibliothèque dalgorithmes bioinspirés en langage python
https://pythonhosted.org/inspyred/
GAlib - C++ Genetic Algorithms Library
https://sourceforge.net/projects/galib/
Matlab Global Optimization Toolbox (inclut des algorithmes génétiques)
https://fr.mathworks.com/help/gads/genetic-algorithm.html
GPLAB, A Genetic Programming Toolbox for MATLAB
DEAP, Genetic Programming in Python
https://deap.readthedocs.io/en/master/
Evolving Objects (EO), a template-based, ANSI-C++ evolutionary computation
Langage de spécification EASEA, multi plates-formes
http://easea.unistra.fr/index.php/EASEA_platform
HAUT DE PAGE
Association Évolution artificielle
Elle regroupe les chercheurs français de ce domaine et organise conférences internationales (EA), journées et écoles
Vous êtes abonné à cette offre ?
Connectez-vous !
Vous souhaitez découvrir cette offre ?
Cet article est inclus dans l'offre :
TECHNOLOGIES LOGICIELLES ARCHITECTURES DES SYSTÈMES
Entraînez vous autant que vous le voulez avec les quiz d'entraînement.
Lorsque vous êtes prêt, vous passez le test de validation. Vous avez deux passages possibles dans un laps de temps de 30 jours.
Entre les deux essais, vous pouvez consulter l’article et réutiliser les quiz d'entraînement pour progresser. L’attestation vous est délivrée pour un score minimum de 70 %.
DÉTAIL DE L'ABONNEMENT :
TOUS LES ARTICLES DE VOTRE RESSOURCE DOCUMENTAIRE
Accès aux :
Articles et leurs mises à jour
Nouveautés
Archives
Articles interactifs
Formats :
HTML illimité
Versions PDF
Site responsive (mobile)
Info parution :
Toutes les nouveautés de vos ressources documentaires par email
DES ARTICLES INTERACTIFS
Articles enrichis de quiz :
Expérience de lecture améliorée
Quiz attractifs, stimulants et variés
Compréhension et ancrage mémoriel assurés
DES SERVICES ET OUTILS PRATIQUES
Votre site est 100% responsive,
compatible PC, mobiles et tablettes.
FORMULES
Formule monoposte | Autres formules | |
---|---|---|
Ressources documentaires | ||
Consultation HTML des articles | Illimitée | Illimitée |
Quiz d'entraînement | Illimités | Illimités |
Téléchargement des versions PDF | 5 / jour | Selon devis |
Accès aux archives | Oui | Oui |
Info parution | Oui | Oui |
Services inclus | ||
Questions aux experts (1) | 4 / an | Jusqu'à 12 par an |
Articles Découverte | 5 / an | Jusqu'à 7 par an |
Dictionnaire technique multilingue | Oui | Oui |
(1) Non disponible pour les lycées, les établissements d’enseignement supérieur et autres organismes de formation. |
||
Formule 12 mois 1 945 € HT |
Autres formules |
INTRODUCTION
1 - ALGORITHMES GÉNÉTIQUES, ÉVOLUTIONNAIRES, DARWINISME ARTIFICIEL
2 - PROGRAMMER ET UTILISER UN ALGORITHME ÉVOLUTIONNAIRE
3 - APERÇU THÉORIQUE : POURQUOI ET COMMENT ÇA MARCHE ?
9 - SIGLES, NOTATIONS ET SYMBOLES
Information
Quiz d'entraînement bientôt disponible
TECHNIQUES DE L'INGENIEUR
L'EXPERTISE TECHNIQUE ET SCIENTIFIQUE
DE RÉFÉRENCE
ÉDITION - FORMATION - CONSEIL :
Avec Techniques de l'Ingénieur, retrouvez tous les articles scientifiques et techniques : base de données, veille technologique, documentation et expertise technique
LOGICIELS
Automatique - Robotique | Biomédical - Pharma | Construction et travaux publics | Électronique - Photonique | Énergies | Environnement - Sécurité | Génie industriel | Ingénierie des transports | Innovation | Matériaux | Mécanique | Mesures - Analyses | Procédés chimie - bio - agro | Sciences fondamentales | Technologies de l'information
ACCUEIL | A PROPOS | EXPERTS SCIENTIFIQUES | NOUS REJOINDRE | PUBLICITÉ | PLAN DU SITE | CGU | CGV | MENTIONS LÉGALES | RGPD | COOKIES | AIDE | FAQ | NOUS CONTACTER
PAIEMENT
SÉCURISÉ
OUVERTURE RAPIDE
DE VOS DROITS
ASSISTANCE TÉLÉPHONIQUE
+33 (0)1 53 35 20 20