Académique Documents
Professionnel Documents
Culture Documents
Chapitre 4
ALGORITHMES GÉNÉTIQUES
INTRODUCTION :
Les algorithmes génétiques ont été proposés par HOLLAND en 1975. Ils reposent sur
l’analogie entre la théorie de l’évolution naturelle de DARWIN et l’optimisation. Selon la
théorie de DARWIN, les individus d’une population les mieux adaptés à leur environnement
ont une plus grande probabilité de survivre et de se reproduire, en donnant des descendants
encore mieux adaptés. Comme dans les mécanismes naturels de la reproduction, les principaux
opérateurs qui affectent la constitution d’un chromosome, qui code les caractéristiques des
individus, sont le croisement et la mutation.
1- Principes et fonctionnalités :
Les algorithmes génétiques sont des approches d'optimisation qui utilisent des techniques
dérivées de la science génétique et de l'évolution naturelle : la sélection, la mutation et le
croisement. Pour utiliser ces approches, on doit disposer des éléments suivants :
Le codage d'un élément de population : une fonction qui permet de modéliser les données du
problème réel dans des données utilisables par l'algorithme génétique.
Une fonction pour générer la population initiale : la génération de la population initiale est
importante puisque cette génération représente le point de départ de l'algorithme et son
choix influe sur la rapidité et l'optimalité de la solution finale.
Une fonction à optimiser (la fonction objectif) : une fonction qui retourne une valeur
d'adaptation pour chaque individu. Cette valeur permet de déterminer la solution pertinente
puisque le problème se restreint à chercher le groupe d'individus qui ont les valeurs
optimums.
Des opérateurs : qui permettent d'évoluer d'une population à une autre tout en améliorant la
fonction objectif. L'opérateur de croisement recompose les gènes d'individus existant dans la
population, alors que l'opérateur de mutation a pour but de garantir l'exploration de l'espace
d'états.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 4 : Algorithmes génétiques 2
1.2- Fonctionnement :
Étape 3 : Sélection : on définit les individus de la génération P qui vont être dupliqués dans la
nouvelle population. À chaque génération il y a deux opérateurs de sélection : la sélection de
reproduction, ou plus simplement sélection, qui détermine les individus qui vont se reproduire
durant une génération et la sélection pour le remplacement, ou plus simplement le
remplacement, qui détermine quels individus devront disparaître de la population.
Évaluation de N individus
Évaluation de M enfants
Critère d’arrêt
NON satisfait
OUI
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 4 : Algorithmes génétiques 3
2) Évaluer P
2.1- Le codage :
Le codage est une fonction qui permet de passer de la donnée réelle du problème traité à la
donnée utilisée par l'algorithme génétique (Figure 02). Le choix du codage est l'élément le plus
important dans la conception de l'algorithme puisqu'il permet d'une part de représenter les
données, les paramètres et les solutions et d'autre part il influe sur la mise en œuvre des
opérations génétiques telles que le croisement et la mutation qui influent directement sur le bon
déroulement de l'algorithme génétique et de leur convergence vers la bonne solution.
Population
Individus
Chromosomes
Gènes
Figure 02- Les quatre niveaux d'organisation d'une population d'un algorithme génétique
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 4 : Algorithmes génétiques 4
Représentation binaire : Chaque gène dispose du même alphabet binaire 0, 1. Un gène est alors
représenté par un entier, les chromosomes, qui sont des suites de gènes sont représentés par des
tableaux de gènes et les individus de l'espace de recherche sont représentés par des tableaux de
chromosomes.
Représentation avec réels : Contrairement au codage binaire, un gène est représenté par une
suite de bits (un bit dans le code binaire) qui est associé à un réel. Ce type de codage peut être
utile notamment dans le cas où l'on recherche le maximum d'une fonction réelle.
Ce type de codage peut être utilisé lorsque la taille du problème ou de la solution n'est pas finie.
Son inconvénient est qu'on peut trouver des arbres de solutions de taille importante difficile à
analyser.
La reproduction est le processus qui permet de construire une population k + 1 à partir d'une
population k. Ce processus est constitué par l'utilisation de l'opération de sélection, de
l'opération de croisement ou/et de l'opération de mutation (Figure 03).
3.1- La sélection :
L'opération de sélection permet de déterminer quels individus sont plus enclins à obtenir les
meilleurs résultats. On trouve deux types de sélection :
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 4 : Algorithmes génétiques 5
Sélection par rang : Choisir toujours les individus possédant les meilleurs scores.
Population
Génération k
Reproduction
P P1 P2
Mutation Croisement
E E1 E2
Évaluation
Population
Génération k+1
Figure 03- Principe général de l'évolution d'une population d'un algorithme génétique
3.2- Le croisement :
Dans le cas d'une représentation binaire, le croisement de deux chromosomes peut se faire en
un seul point de coupure (figure 04), en deux points de coupure (figure 05) ou d’une façon
uniforme (figure 06).
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 4 : Algorithmes génétiques 6
3.3- La mutation :
Le rôle de cet opérateur est de modifier aléatoirement, avec une certaine probabilité, la valeur
d'un composant de l'individu. La figure 07 présente un exemple de mutation de chromosome tel
que le gène gi est retiré aléatoirement et est remplacé par la gène gi’.
La mutation est un phénomène rare mais permet d'explorer de nouvelles zones dans l'espace
de recherche et aide l'algorithme génétique à possiblement aller vers une solution optimale
globale, sans rester pris dans une solution optimale locale.
Les conditions de convergence changent avec la taille de la population N ; lorsque celle-ci est
grande, sa diversité augmente ce qui diminue la convergence vers un optimum local, le temps
d’exécution de chaque génération augmente, la recherche risque de s’effectuer d’une façon
redondante et l’efficacité de l’algorithme est globalement affectée. Par contre, si la taille de la
population est petite, alors la probabilité de s’attarder sur des minima locaux est grande. La
taille selon le cas se situe entre 25 et 100.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 4 : Algorithmes génétiques 7
Il détermine la proportion des individus qui sont croisés parmi ceux qui remplaceront
l'ancienne génération. L’opérateur de croisement est appliqué avec une probabilité Pc, et plus
cette valeur est élevée plus de nouvelles structures (individus) sont introduites dans la nouvelle
génération, les structures performantes sont trop fréquemment détruites. Par contre, si ce taux
est trop bas, la population n’évolue pas assez vite. En général, Pc varie entre 0,25 et 0,70.
L’opérateur de mutation est appliqué avec une probabilité Pm ; si ce taux est grand alors la
recherche devient purement aléatoire, la population est diversifiée et l'AG perd de son
efficacité. Si au contraire ce taux est faible, la population est moins diversifiée et en plus il y a
risque de stagnation. Des études empiriques conseillent pour l’obtention de bons résultats une
fréquence qui se situe autour d’une mutation tous les 1000 bits.
À noter que ces paramètres dépendent étroitement du type de problème à résoudre. Trouver
les bonnes paramètres est un problème parfois délicat. La valeur de N dépend fort du problème
(en particulier de la longueur l du chromosome), tandis que des valeurs de bonne pratique pour
le Pm (0,005) et Pc (0,7) sont souvent utilisées.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique