Etude théorique de radars géologiques - Epublications - Université ...

Etude théorique de radars géologiques - Epublications - Université ... Etude théorique de radars géologiques - Epublications - Université ...

epublications.unilim.fr
from epublications.unilim.fr More from this publisher
10.08.2013 Views

150 3.2­ Introduction aux algorithmes génétiques 3.2.a Qu'est­ce­que l'algorithme génétique PARTIE III : INTERPRETATION DES ECHOS RADAR ­ PROBLEME INVERSE L'algorithme génétique est une méthode d'optimisation globale mimant l'évolution naturelle des espèces. Les algorithmes génétiques opèrent sur une population de solutions potentielles en appliquant le principe de survie des individus les mieux adaptés afin de produire de meilleures approximations de la solution. A chaque génération, une nouvelle série d'approximations est générée à partir des meilleurs individus eux­même sélectionnés d'après leur degré d'adaptation au problème posé. Cette phase de reproduction s'inspire de la nature en mélangeant les caractères propres à chaque individu suivie d'une étape de mutations introduisant de nouveaux gènes dans la population. Ce procédé d'évolution conduit à une population mieux adaptée à son environnement que la population de laquelle elle est issue. Les individus (solutions potentielles) sont codés en chaînes (chromosomes) grâce à un alphabet de telle sorte que le génotype (valeurs des chromosomes) reste cantonné à l'intérieur d'un domaine de décision. La représentation la plus communément employée dans les algorithmes génétiques utilise un alphabet binaire {0, 1} bien que les variables puissent également être codées par des entiers ou des réels. Par exemple, un problème à deux variables (deux gènes) x1 et x2 peut être codé par un chromosome de la façon suivante (voir figure 144) où x1 et x2 sont respectivement codés sur 11 et 15 bits. Le nombre de bits avec lesquels est codée une variable peut aussi bien refléter son intervalle de recherche que sa précision. 01100011010 101110001110110 x 1 Figure 144 : Chromosome constitué de deux gènes dans une représentation binaire L'évaluation des performances d'un individu face au problème posé se fait grâce à la fonction objectif. Dans la nature, cela revient à déterminer la capacité d'un individu à survivre à son environnement. Une variable d'erreur est affectée à chaque individu, la probabilité que l'individu se reproduise est d'autant plus grande que cet individu est adapté. Ainsi la fonction objectif établit l'ensemble des individus qui pourront se reproduire. Une fois que les individus destinés à la reproduction ont été sélectionnés, une série d'opérateurs génétiques manipulent les gènes. Un opérateur de recombinaison échange les gènes de deux individus ou d'un ensemble d'individus. L'opérateur de recombinaison le plus simple est le single­point crossover (voir figure 145). Soit deux individus composés de N gènes, la coupure repérée par l'indice i∈[1, N­1] peut avoir lieu avec la même probabilité entre deux gènes contigus. Les gènes situés avant la coupure x 2

Samuel BESSE : Étude Théorique de Radars Géologiques ­ Analyses de sols, d'antennes et interprétation des signaux 151 restent identiques alors que ceux situés après sont intervertis avec l'autre individu, créant ainsi deux nouveaux individus. Cette étape de crossover n'est pas systématique mais s'applique avec une certaine probabilité Px. Figure 145 : Illustration de l'opérateur "single­point crossover" pour un problème à quatre variables L'opérateur de recombinaison n'est pas suffisant, une autre étape essentielle appelée mutation est appliquée avec une probabilité Pm. Cet opérateur modifie aléatoirement la valeur de certains gènes. Dans la représentation binaire, cela se traduit par la substitution d'un 0 par un 1 ou l'inverse (voir figure 146). Lorsque les variables sont exprimées par des nombres réels, il existe des algorithmes spécifiques comme celui proposé par Mühlenbein and D. Schlierkamp­Voosen [86] dont l'idée est la suivante : lorsqu'il y a mutation, celle­ci peut être radicale (la valeur mutée est très différente de la valeur de départ) ou au contraire minime (la valeur mutée est très proche de la valeur de départ) mais dans tous les cas la variable mutée reste dans le génotype. La probabilité de mutation Pm doit être faible afin de ne pas dénaturer la population. Cependant, la mutation est indispensable puisqu'elle permet d'introduire de nouveaux gènes donc d'élargir l'espace de recherche des solutions. Cela a pour effet d'éviter la convergence vers un minimum local et augmente les chances d'atteindre le minimum global. 010011 1001101001 010001 1001101001 Figure 146 : Opération de mutation (le cinquième bit du premier gène a subi une mutation) Après recombinaison et mutation, les performances des nouveaux individus sont évaluées à l'aide de la fonction objectif et comparées avec les performances des individus plus anciens. Ainsi, à chaque génération, une partie de l'ancienne population meurt et est remplacée par l'ensemble des descendants les plus performants (enfants viables). De cette manière, la performance moyenne des individus composant la population augmente. L'algorithme génétique s'arrête après un nombre prédéterminé de générations ou lorsque la fonction objectif qui est souvent une fonction d'erreur devient inférieure à une certaine valeur.

Samuel BESSE : Étu<strong>de</strong> Théorique <strong>de</strong> Radars Géologiques ­ Analyses <strong>de</strong> sols, d'antennes et interprétation <strong>de</strong>s signaux 151<br />

restent i<strong>de</strong>ntiques alors que ceux situés après sont intervertis avec l'autre individu, créant ainsi <strong>de</strong>ux<br />

nouveaux individus. Cette étape <strong>de</strong> crossover n'est pas systématique mais s'applique avec une<br />

certaine probabilité Px.<br />

Figure 145 : Illustration <strong>de</strong> l'opérateur "single­point crossover" pour un problème à quatre variables<br />

L'opérateur <strong>de</strong> recombinaison n'est pas suffisant, une autre étape essentielle appelée mutation<br />

est appliquée avec une probabilité Pm. Cet opérateur modifie aléatoirement la valeur <strong>de</strong> certains<br />

gènes. Dans la représentation binaire, cela se traduit par la substitution d'un 0 par un 1 ou l'inverse<br />

(voir figure 146). Lorsque les variables sont exprimées par <strong>de</strong>s nombres réels, il existe <strong>de</strong>s<br />

algorithmes spécifiques comme celui proposé par Mühlenbein and D. Schlierkamp­Voosen [86]<br />

dont l'idée est la suivante : lorsqu'il y a mutation, celle­ci peut être radicale (la valeur mutée est très<br />

différente <strong>de</strong> la valeur <strong>de</strong> départ) ou au contraire minime (la valeur mutée est très proche <strong>de</strong> la<br />

valeur <strong>de</strong> départ) mais dans tous les cas la variable mutée reste dans le génotype. La probabilité <strong>de</strong><br />

mutation Pm doit être faible afin <strong>de</strong> ne pas dénaturer la population. Cependant, la mutation est<br />

indispensable puisqu'elle permet d'introduire <strong>de</strong> nouveaux gènes donc d'élargir l'espace <strong>de</strong><br />

recherche <strong>de</strong>s solutions. Cela a pour effet d'éviter la convergence vers un minimum local et<br />

augmente les chances d'atteindre le minimum global.<br />

010011 1001101001 010001 1001101001<br />

Figure 146 : Opération <strong>de</strong> mutation (le cinquième bit du premier gène a subi une mutation)<br />

Après recombinaison et mutation, les performances <strong>de</strong>s nouveaux individus sont évaluées à<br />

l'ai<strong>de</strong> <strong>de</strong> la fonction objectif et comparées avec les performances <strong>de</strong>s individus plus anciens. Ainsi, à<br />

chaque génération, une partie <strong>de</strong> l'ancienne population meurt et est remplacée par l'ensemble <strong>de</strong>s<br />

<strong>de</strong>scendants les plus performants (enfants viables). De cette manière, la performance moyenne <strong>de</strong>s<br />

individus composant la population augmente. L'algorithme génétique s'arrête après un nombre<br />

prédéterminé <strong>de</strong> générations ou lorsque la fonction objectif qui est souvent une fonction d'erreur<br />

<strong>de</strong>vient inférieure à une certaine valeur.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!