• Aucun résultat trouvé

Chapitre 2 : Les algorithmes évolutionnaires

5. Stratégies d‟évolution d‟un algorithme génétique

5.4 Les opérateurs génétiques

5.4.1 L‟opérateur de sélection

5.4.1 L’opérateur de sélection

Cet opérateur est chargé de définir quels seront les individus de la population P qui vont être dupliqués dans la nouvelle population P' et vont servir de parents (application de l'opérateur de croisement). Il permet d'identifier statistiquement les meilleurs individus d'une population et d'éliminer les mauvais. On trouve dans la littérature un nombre important de principes de sélection plus ou moins adaptés aux problèmes qu'ils traitent. Les méthodes de sélection les plus utilisées sont les suivants :

5.4.1.1 La sélection par roulette de casino (loterie biaisée)

C‟est la sélection naturelle la plus connue et la plus utilisés dans la littérature. [41] Chaque chromosome occupe un secteur de roulette dont l‟angle est proportionnel à son indice de qualité. Un chromosome est considéré comme bon aura un indice de qualité élevé, un large secteur de roulette et alors il aura plus de chance d‟être sélectionné. On fait tourner la roue et quand elle cesse de tourner, on sélectionne l'individu correspondant au secteur désigné par un curseur; qui pointe sur un secteur particulier de celle-ci après qu'elle se soit arrêtée de tourner. Cette méthode, bien que largement répandue, a pas mal d'inconvénients :

• En effet, elle a une forte variance. Il n'est pas impossible que sur

n

sélections successives destinées à désigner les parents de la nouvelle génération P', la quasi-totalité, voire pire la totalité des

n

individus sélectionnés soient des individus ayant une fitness vraiment mauvaise et donc que pratiquement aucun individu voire aucun individu a forte fitness ne fasse partie des parents de la nouvelle génération. Ce phénomène est bien sûr très dommageable car cela va complètement à l'encontre du principe des algorithmes génétiques qui veut que les meilleurs individus soient sélectionnés de manière à converger vers une solution la plus optimale possible.

• A l'inverse, on peut arriver à une domination écrasante d'un individu localement supérieur. Ceci entrainant une grave perte de diversité. Imaginons par exemple qu'on ait un individu ayant une fitness très élevée par rapport au reste de la population, disons dix fois supérieure, il n'est pas impossible qu'après quelques générations successives on se retrouve avec une population ne contenant que des copies de cet individu. Le problème est que cet individu avait une fitness très élevée, mais que cette fitness était toute relative, elle était très élevée mais seulement en comparaison des autres individus. On se retrouve donc face à problème connu sous le nom de convergence prématurée, l'évolution se met donc à stagner et on atteindra alors jamais l'optimum, on restera bloqué sur un optimum local.

59

5.4.1.2 La sélection élitiste

C'est le principe de sélection le plus simple, il consiste à attribuer à chaque individu son classement par ordre d'adaptation. Le meilleur (c'est à dire celui qui possède la meilleure fitness) sera numéro un, et ainsi de suite. On tire ensuite une nouvelle population dans cet ensemble d'individus ordonnés, en utilisant des probabilités indexées sur les rangs des individus. Cette procédure semble toutefois assez simpliste et exagère le rôle du meilleur élément au détriment d'autres élément potentiellement exploitables. Le second, par exemple, aura une probabilité d'être sélectionné nettement plus faible que celle du premier, bien qu'il puisse se situer dans une région d'intérêt. [16]

Il est inutile de préciser que cette méthode est encore pire que celle de la loterie biaisée dans le sens où elle amènera à une convergence prématurée encore plus rapidement et surtout de manière encore plus sûre que la méthode de sélection de la loterie biaisée, en effet la pression de la sélection est trop forte, la variance nulle et la diversité inexistante, du moins le peu de diversité qu'il pourrait y avoir ne résultera pas de la sélection mais plutôt du croisement et des mutations. Là aussi il faut opter pour une autre méthode de sélection. [71]

5.4.1.3 La sélection par tournoi

Choisir aléatoirement deux individus et on compare leur fonction d‟adaptation (combattre) et on accepte la plus adapte pour accéder à la génération intermédiaire, et on répète cette opération jusqu' à remplir la génération intermédiaire (N/2 composants). Les individus qui gagnent à chaque fois on peut les copier plusieurs fois ce qui favorisera la pérennité de leurs gènes.

5.4.2 L’opérateur de croisement

Le phénomène de croisement est une propriété naturelle de l‟ADN, c‟est analogiquement qu‟on fait les opérations de croisement dans les AG. Il a pour but d'enrichir la diversité de la population en manipulant les composantes des individus (chromosomes). Classiquement, les croisements sont envisagés avec deux parents et génèrent deux enfants. Initialement, le croisement associé au codage par chaînes de bits ou chromosomes, est le croisement à découpage de chromosomes (slicing crossover). Pour effectuer ce type de croisement sur des chromosomes constitués de M gènes, on tire aléatoirement une position de découpage. On échange ensuite les deux sous-chaînes terminales de chacun des deux chromosomes (les parents) P1 et P2, ce qui produit deux nouveaux chromosomes (les enfants) C1 et C2 [41]. On distingue les types suivants du croisement.

60

5.4.2.1 Le croisement binaire: On distingue deux types de croisement binaire:

- Croisement en un point: On choisit au hasard un point de croisement, pour chaque couple.

Notons que le croisement s‟effectue directement au niveau binaire, et non pas au niveau des gènes. Un chromosome peut donc être coupé au milieu d‟un gène.

Figure 2.4 Représentation schématique du croisement en 1 point.

- Croisement en deux points: On choisit au hasard deux points de croisement. Par la suite,

nous avons utilisé cet opérateur car il est généralement considéré comme plus efficace que le précédent. Néanmoins nous n‟avons pas constaté de différence notable dans la convergence de l‟algorithme.

Figure 2.5 : Représentation schématique du croisement en 2 points . Notons que d‟autres formes de croisement existent, du croisement en k points jusqu‟au cas

limite du croisement uniforme.

5.4.2.2 Le croisement réel

Le croisement réel ne se différencie du croisement binaire que par la nature des

éléments qu'il altère, ce ne sont plus des bits qui sont échangés à droite du point de

croisement, mais des variables réelles.

5.4.2.3 Le croisement arithmétique

Le croisement arithmétique est propre à la représentation réelle. Il s'applique à une paire de chromosomes et se résume à une moyenne pondérée des variables des deux parents.

61

Soient [ai, bi, ci] et [aj, bj, cj] deux parents, et p un poids appartenant à l'intervalle [0, 1], alors les enfants sont [pai + (1-p)aj, pbi + (1-p)bj, pci + (1 - p)cj]. Si nous considérons que p est un pourcentage, et que i et j sont nos deux parents, alors l'enfant i est constitué à p% du parent i et à (100-p)% du parent j, et réciproquement pour l'enfant j.

5.4.2.4 Le croisement uniforme

Le croisement uniforme très utilisée dans le cas des problèmes modélisés par un codage binaire, La mise en œuvre de ce procédé consiste à définir de manière aléatoire un masque, c'est-à-dire une chaîne de bits de même longueur que les chromosomes des parents sur lesquels il sera appliqué. Ce masque est destiné à savoir, pour chaque locus, de quel parent le premier fils devra hériter du gène s'y trouvant, si face à un locus le masque présente un 0, le fils héritera le gène s'y trouvant du parent n° 1, s‟il présente un 1 il en héritera du parent n° 2. La création du fils n° 2 se fait de manière symétrique; si pour un gène donné le masque indique que le fils n° 1 devra recevoir celui-ci du parent n° 1 alors le fils n° 2 le recevra du parent n°2, et si le fils n° 1 le reçoit du parent n° 2 alors le fils 2 le recevra du parent n° 1. [74]