Algorithme génétique

Fonctionnement

Heuristique

Pour résoudre ces problèmes, nous utilisons des heuristiques afin de trouver la solution optimale, ou à défaut, la moins mauvaise, pour le problème.

L'idée principale des heuristiques est d'explorer l'espace des solutions en essayant de converger vers la meilleure solution.
Cependant, il est important d’éviter une convergence prématurée de l'algorithme vers un extremum, ou optimum, local.
Un extremum local est la meilleure solution dans une zone restreinte, en opposition à l’extremum global, qui est la meilleure solution dans l’ensemble.

Voici un exemple d'une heuristique où la meilleure solution est la valeur la plus proche de 4 :

Heuristique

Principes

Les algorithmes génétiques utilisent la théorie de Darwin sur l’évolution des espèces.
Elle repose sur trois principes : le principe de variation, le principe d'adaptation et le principe d'hérédité.

Le principe de variation : Chaque individu au sein d’une population est unique. Ces différences, plus ou moins importantes, vont être décisives dans le processus de sélection.
Principe de variation
Le principe d'adaptation : Les individus les plus adaptés à leur environnement atteignent plus facilement l'âge adulte. Ceux ayant une meilleure capacité de survie pourront donc se reproduire davantage.
Principe d'adaptation
Le principe d’hérédité : Les caractéristiques des individus doivent être héréditaires pour pouvoir être transmises à leur descendance. Ce mécanisme permettra de faire évoluer l’espèce pour partager les caractéristiques avantageuse à sa survie.
Principe d’hérédité

Paradigme

Ce paradigme, associé avec la terminologie de la génétique, nous permet d’exploiter les algorithmes génétiques : Nous retrouvons les notions de Population, d’Individu, de Chromosome et de Gène.

Paradigme génétique

Avec ces notions, nous obtenons trois opérateurs d’évolution…

Opérateurs d'évolution

Il y a trois opérateurs d'évolution dans les algorithmes génétiques :

Sélection

La sélection consiste à choisir les individus les mieux adaptés afin d'avoir une population de solution la plus proche de converger vers l'optimum global.
Cet opérateur est l'application du principe d'adaptation de la théorie de Darwin.

Il existe plusieurs techniques de sélection. Voici les principales utilisées :

Voici un exemple avec des individus en représentation binaire une fois la sélection effectuée :

Sélection

On réalise ensuite un croisement entre deux chromosomes parmi la population restante...

Croisement

Le croisement, ou enjambement, crossing-over, est le résultat obtenue lorsque deux chromosomes partage leurs particularités.
Celui-ci permet le brassage génétique de la population et l'application du principe d’hérédité de la théorie de Darwin.

Il existe deux méthodes de croissement : simple ou double enjambement.

On réalise ensuite une mutation sur les enfants obtenues lors du croisement...

Mutation

La mutation consiste à altérer un gène dans un chromosome selon un facteur de mutation. Ce facteur est la probabilité qu'une mutation soit effectuée sur un individu.
Cet opérateur est l'application du principe de variation de la théorie de Darwin et permet, par la même occassion, d'éviter une convergence prématurée de l'algorithme vers un extremum local.

Voici un exemple de mutation sur un individu ayant un seul chromosome :

Double enjambement

Avec ces trois opérateurs d'évolution, nous pouvons appliquer les algorithmes génétiques.

Algorithme

Les principes de bases étant expliqués, voici le fonctionnement des algorithmes génétiques :

Algorithme

Quelques explications :