• Aucun résultat trouvé

4.3 Relations de dispersion des modes propres

5.1.2 Principe d’un algorithme génétique

La théorie de l’évolution et la génétique décrivent les mécanismes qui interviennent au sein d’une population lors du brassage génétique. Ces différents mécanismes sont repris par les AG pour la recherche de solutions optimales. La figure 5.2 présente les principales étapes d’un AG. L’ensemble des étapes présentées sur cet organigramme correspond aux différentes étapes

5.1. Optimisation par algorithme génétique

identifiées par Darwin dans sa théorie de l’évolution et celles associées aux mécanismes de reproduction de la génétique moderne. Nous allons maintenant détailler ces différentes étapes.

1. Génération aléatoire d’une population

La première étape consiste à créer aléatoirement une population constituée d’un nombre fini d’individus (fig. 5.3). La taille de la population (i.e. le nombre d’individus) dépend fortement du problème que l’on souhaite résoudre et résulte le plus souvent d’un com- promis entre temps de calcul et qualité de la solution recherchée.

Fig. 5.3 – Représentation schématique d’une population de structures binaires générées aléatoirement. Les

séquences de 0 et 1 représentent respectivement des structures composées de matériaux de permittivité diélec- trique ε1et ε2.

2. Évaluation

L’évaluation des performances des individus est l’étape qui distingue deux AGs et qui donne sa spécificité à un AG. C’est en effet à ce moment que les propriétés physiques à optimiser sont évaluées et que l’éloignement par rapport à la cible est calculé. On définit pour cela un critère J qui permet d’évaluer la performance des individus au sein de la population. Ce critère à optimiser est ce que l’on dénomme la fonction "fitness" (traduc- tion anglaise du mot adaptation). Cette fitness mesure l’écart entre la solution calculée (problème direct) et la fonction objectif, c’est à dire la cible. En notant respectivement Acible et Acalcj, la propriété cible et les propriétés calculées de l’individu j, la fitness J se

définie sous la forme

J = kAcible− Acalcjk

2,

où k k mesure l’écart entre la cible et la solution du problème direct Acalcj. Le but

d’un AG sera alors de déterminer l’extremum global de cette fonction dans l’espace des solutions admissibles. Notons que cette étape est généralement la plus consommatrice en temps de calcul car elle nécessite le calcul des propriétés radiatives des structures, c’est à dire d’effectuer la résolution du problème direct non linéaire suivant

Étant donnée V = (0, 1, ...0) ∈ (0, 1)N une structure multicouche.

5.1. Optimisation par algorithme génétique

nelle(s) Acalcj(V ; λ, θ) de cette structure sur le domaine spectral [λ1, λ2] et

angulaire [θ1, θ2].

3. Sélection

Une fois l’évaluation terminée, une sélection des individus à conserver pour l’étape du croisement est effectuée. Cette sélection est basée sur la valeur de la fitness de chaque in- dividu. Pour cela, soit une valeur limite de fitness est prédéterminée et seuls les individus possédant une fitness inférieure à cette limite seront sélectionnés, soit un pourcentage d’individus retenus parmi la génération courante est choisi préalablement, ce pourcen- tage pouvant être fixé ou évolué au cours des générations.

4. Croisement

La sélection étant faite, on passe maintenant à l’étape cruciale de l’AG : le croisement. Pour ce faire, les individus sont alors regroupés par couples (les parents) et les gènes (en- semble des couches) sont copiés et recombinés pour former deux enfants qui possèdent une combinaison des caractéristiques des deux parents. Une nouvelle génération est ainsi créée. La méthode utilisée dans ce mémoire est le croisement à un point, qui consiste à séparer en deux les gènes des parents, et de constituer les deux enfants en combinant les deux séquences de gènes issues de chaque parent (fig. 5.4).

Fig. 5.4 – Représentation schématique du croisement à un point. 5. Mutation

La mutation est une étape accidentelle essentielle. Elle consiste à remplacer un gène (i.e. une couche) par un autre de manière aléatoire. Elle permet d’éviter une dérive gé- nétique, c’est à dire d’éviter de converger vers des extremums locaux (fig. 5.5) pendant le processus d’optimisation. Pour mettre en œuvre ces mutations, nous générons un taux de mutation pm qui définit la probabilité pour un gène (= une couche d’un des matériaux de base) dans une structure, à la nieme génération, d’être modifié ou non. Cette étape

est essentielle pour conserver une certaine diversité dans la population enfant. Un choix approprié de ce paramètre est extrêmement important pour la convergence du processus de recherche. En effet, si pm est trop grand, l’AG recherche aléatoirement dans tout l’espace des solutions possibles et la fitness de l’individu (=la structure) sélectionné peut être très éloignée de la fitness optimale. Au contraire, lorsque pm est trop petit, l’al- gorithme de recherche converge rapidement, mais vers l’extremum local le plus proche. C’est pourquoi, un choix approprié de pm est essentiel pour équilibrer la convergence locale et la recherche globale. L’expérience montre (Holland, 1992) que les mécanismes de croisement et de mutation sont efficaces si la fitness moyenne de toute la population, à une génération donnée, a une valeur elle même moyenne par rapport à la fitness optimale pour cette même génération. Il est donc nécessaire d’ajuster pm à différents paliers du

Fig.5.5 – Illustration schématique du processus de mutation. La modification d’un gène permet d’échapper

aux extremums locaux.

processus d’évolution. Dans ce mémoire, nous avons choisi d’ajuster le taux de mutation toutes les iemes générations selon la loi d’incrémentation suivante

∆pm=            +ξ, γ < 1/3 0, 1/3 < γ < 2/3 −ξ, γ > 2/3 , (5.2)

où ξ correspond au changement de la probabilité de mutation et γ est le rapport de la fitness moyenne de toute la population sur la fitness optimale.

5.2

Design de sources thermiques quasimonochromatiques et