Vous êtes sur la page 1sur 6

Introduction

Beaucoup de problèmes sont difficilement solubles exactement. La difficulté ne vient pas de la


complexité du problème mais de la taille excessive de l'espace des solutions. Par exemple, le
problème du voyageur de commerce a une taille de l'espace de solutions qui varie en factorielle (n-1)
où n est le nombre de villes où il faut passer. On s'aperçoit qu'à seulement 100 villes, il y a 9,3.10153
solutions. Il est alors impensable de pouvoir les tester toutes pour trouver la meilleure.

Certains problèmes sont trop complexes pour que l'on puisse proposer un algorithme, ou lorsqu'il
n'y a aucune méthode exacte pour les résoudre, d'une modélisation délicate et/ou confuse où la
solution au problème est inconnue. Ou alors un algorithme tolérant aux variations de données,
susceptible de s'adapter à une nouvelle situation, pour qu'il évolue.

Par exemple, comment effectuer le déplacement d'un robot ? Comment faire réagir ce robot suite à
une bousculade, une perte d'équilibre ? Comment adapter le comportement du robot face au danger
?

C'est pourquoi, des heuristiques approchées ont été essayées pour la résolution de tout un tas de
problèmes où la recherche systématique n'est pas possible. Ces heuristiques doivent être peu
coûteuses en temps machine et doivent permettre de trouver une solution pas trop mauvaise qui
justifie leur utilisation à la place d'une recherche par Monte-Carlo (hasard quadrillé) ou par toute
autre méthode.

Ainsi sont nés beaucoup d'algorithmes comme le recuit simulé, la méthode tabou, les approches min
max, alpha-beta ou encore les algorithmes génétiques. Nous nous intéresserons essentiellement à
ces derniers.

Les heuristiques de calcul sont souvent issus d'un processus ou phénomène physique / naturel
duquel ils s'inspirent. Les algorithmes génétiques ne dérogent pas à cette règle et sont directement
inspirés du mécanisme d'évolution d'une espèce, la génétique.
Historique

L'utilisation d'algorithmes génétiques, dans la résolution de problèmes, est à l'origine le fruit


des recherches de John Holland et de ses collègues et élèves de l'Université du Michigan qui
ont, dès 1960, travaillé sur ce sujet. La nouveauté introduite par ce groupe de chercheurs a
été la prise en compte de l'opérateur d'enjambement (cross-over) en complément des
mutations. Et c'est cet opérateur qui permet le plus souvent de se rapprocher de l'optimum
d'une fonction en combinant les gènes contenus dans les différents individus de la
population. Le premier aboutissement de ces recherches a été la publication en 1975
d’Adaptation in Natural and Artificial System.

La popularisation des algorithmes génétiques sera l'œuvre de David Goldberg à travers son
livre Genetic Algorithms in Search, Optimization, and Machine Learning1 (1989). Ce livre est
encore édité aujourd'hui. En Europe, la première conférence sur ce type de sujet fut
l'European Conference on Artificial Life en 1991 (elle a fêté ses 20 ans en 20112),
coorganisée par Francisco Varela et Paul Bourgine. Un des premiers ouvrages à présenter en
Français les algorithmes génétiques sera le livre3 Intelligence Artificielle et Informatique
Théorique qui lui consacrera un chapitre dès 1993. La première conférence francophone
avec actes4 sur le sujet sera organisée en 1994 par Jean-Marc Alliot (IRIT), Evelyne Lutton
(INRIA), Marc Schoenauer (INRIA) et Edmund Ronald.
Définition

L’algorithme génétique (AG) est un algorithme de recherche basé sur les mécanismes de la sélection
naturelle et de la génétique. Il combine une stratégie de ”survie des plus forts” avec un échange
d’information aléatoire mais structuré. Pour un problème pour lequel une solution est inconnue, un
ensemble de solutions possibles est créé aléatoirement. ´ On appelle cet ensemble la population. Les
caractéristiques (ou variables à déterminer) sont alors utilisées dans des séquences de gènes qui
seront combinées avec d’autres gènes pour formmerdes chromosomes et par après des individus.
Chaque solution est associée à un individu, et cet individu est évalué et classifié selon sa
ressemblance avec la meilleure, mais encore inconnue, solution au probléme
L’origine

L'idée des algorithmes génétiques vient, comme beaucoup d'autres (fourmilière, métallurgie, ...),
d'une observation de la vie réelle. Ainsi, le principe de base des AG provient de la théorie de Darwin
sur l'évolution des espèces.

Cette théorie est simple, elle se base sur quatre observations :

 Le monde est constitué d'un ensemble toujours croissant d'espèces, dont chaque individu est
différent de ses pairs et possède ses propres capacités ou particularités.

 L'environnement de ces espèces est limité (en nourriture, en espace, etc.).

 Le struggle for life ou "combat pour la survie" : dans un environnement limité, la nourriture
est rare et il faut soit se battre avec les autres, soit être plus malin pour pouvoir en profiter.
Chaque individu de l'espèce fait jouer ses particularités pour acéder aux ressources vitales.
Le résultat de ces observations conduit à la sélection naturelle : seuls ceux qui ont pu accéder
aux ressources vitales (les plus forts, ou malins, ou rapides...) peuvent réellement survivre,
les plus "faibles" ou moins adaptés à leur environnement se voient disparaître.

 L'hérédité d'une génération à la suivante : ce qui a fait la survie de certains individus se


retrouve dans la descendance qui peut ainsi profiter de "meilleures" capacités venant de
parents différents. On obtient une combinaison de particularités au dessus de la moyenne
des individus, et par croisement, on aura des individus de plus en plus adaptés à leur
environnement.

AG inspirés de ce paradigme

Etant donné l'origine des algorithmes génétiques, nous retrouverons la terminologie de la biologie, et
plus précisément de la génétique (population, individu, chromosome, gène), qui s'est aussi inspiré de
la théorie Darwinienne.

Pour la modélisation, le passage de la théorie de Darwin aux AG, le phénomène a tout simplement


été traduit, à partir des quatre observations ci-dessus. Darwin a également identifié des opérateurs
qui régissent l'évolution des espèces.

Opérateurs d'évolution

 Sélection : choix des individus les mieux adaptés .

 Croisement : mélange par la reproduction des particularités des individus choisis.

 Mutation : altération aléatoire des particularités d'un individu

Vous aimerez peut-être aussi