Version 2 de l`algorithme : Principe de la V2: Fonctionnement de la

publicité
ELEC 2311 - Projet
27-11-08 v.1
Tutoriel Algorithme Génétique - 2
Dest.: Etudiants
Auteur : JD
Version 2 de l’algorithme :
La version 2 de l’algorithme fournit avec le package travaille différemment avec les populations enfants. Lors des
différentes optimisations à fortes contraintes, il s’avère que les populations de la version 1 ne sortaient pas des
contraintes. Pourquoi ? Sur une population de 50 individus, avec de fortes contraintes, il se peut qu’il n’y ait qu’un
ou deux individus correctes pour la première génération. L’opération de croisement s’occupant de créer une
nouvelle population d’enfant va choisir aléatoirement des individus et croiser leurs gènes. Cependant, avec
seulement un ou deux bons individus et le reste avec leur chromosome dégénéré, il y a très peu de chance d’obtenir
le croisement de deux bons individus pour créer un enfant sans chromosome dégénéré. Les résultats du croisement
n’apporteront pas beaucoup de bons résultats et ne permettront pas de sortir des contraintes. Afin de donner la
possibilité à l’algorithme de sortir de cette impasse, une deuxième version de l’algorithme est proposée.
Principe de la V2:
Dans cette version 2 de l’algorithme, non seulement on crée une population d’enfant de manière traditionnelle, c'està-dire, à partir de croisement avec une mutation sur les gènes, mais en plus une population d’enfant « mutés »
provenant de la population de parents avec un taux de mutation de 100% se rajoute à l’ensemble.
La justification de cette deuxième
population d’enfant se base sur les
problèmes à fortes contraintes. En reprenant
le problème cité dans le paragraphe
précédent, les deux ou trois bons individus
se verront clonés avec une légère
modification. Au moment de la sélection,
leurs enfants mutés auront une très grande
chance de respecter les contraintes et seront
sélectionner directement pour doubler la
population respectant les contraintes. En
effectuant cette opération, à chaque
génération, la sous-population de bons
individus croît de plus en plus permettant à
l’opération de croisement d’être de plus en
plus efficace puisque la probabilité de
choisir deux bons individus augmente avec
le nombre de bons individus dans la
population.
Il faut savoir qu’en donnant de nouveaux outils à l’algorithme d’optimisation, les chances d’obtenir les résultats
souhaités augmentent, mais le processus restera toujours dans le domaine heuristique.
Fonctionnement de la V2 :
Afin de ne pas compliquer l’algorithme, il repose entièrement sur la version 1, c'est-à-dire la version avec population
d’enfants traditionnelles. Seuls quelques fichiers ont été modifiés et dont le nom a eu un ajout de « _V2 »:
−
−
−
−
GA_V2.m
selectionElite_V2.m
main_GA_V2.m
mutation_V2.m
1
Le fonctionnement du programme reste identique sur l’ensemble. En fait, l’ajout d’enfants mutés est invisible à
l’utilisateur. La seule grande différence est le temps de fonctionnement du programme puisqu’il nécessite d’évaluer
à la fois les enfants traditionnelles et à la fois les enfants mutés. On passa à ce moment à un temps de calcul de
l’ordre O(2n).
2
Téléchargement