• Aucun résultat trouvé

Bien que nous ne soyons pas soumis aux contraintes biologiques limitant ` a deux le nombre d’individus participant ` a un croisement, nous avons choisi des op´erateurs de croisement utilisant

a des solutions partielles optimales et de les associer, par le jeu des croisements entre individus,

afin de constituer des solutions compl`etes optimales. Un bon codage doit donc encourager la

formation de BB en veillant `a ce que les g`enes qui contribuent de mani`ere jointe `a la maximisation

de la fonction de performance soient proches les uns des autres au sein du g´enome. Cela doit

permettre de les identifier et de les r´eassocier plus efficacement, le risque lors d’un croisement

´etant de ((casser))des BB. Cela arrive lorsque seule une fraction des g`enes virtuels composant

une BB est ´echang´ee entre deux individus parents. Dans les probl`emes d’optimisation complexes,

il arrive cependant que les interactions entre g`enes virtuels soient `a la fois trop nombreuses et

trop importantes pour qu’il soit possible de ranger les g`enes virtuels correspondant cˆote `a cˆote

au sein d’un chromosome.

5.1.3.2 Mutation

L’op´erateur de mutation modifie al´eatoirement un individu pour en former un autre qui le

remplacera. La plupart des mutations modifient un individu de telle fa¸con que le r´esultat de la

transformation lui soit proche. De cette fa¸con, l’op´erateur assure une recherche locale al´eatoire

autour de chaque individu. Dans cet ordre d’id´ee, la mutation peut am´eliorer consid´erablement

la qualit´e des solutions d´ecouvertes. En effet, le croisement perd de son importance lorsqu’une

grande partie de la population est localis´ee dans les voisinages des maxima de la fonction de

performance. Dans ce cas, les individus situ´es sur un mˆeme maximum sont souvent identiques

par le jeu de la reproduction et ne subissent aucune modification, ou alors, s’ils appartiennent

`

a des maxima diff´erents, les descendants montreront g´en´eralement de faibles performances. En

revanche, la recherche al´eatoire locale due aux mutations donne une chance `a chaque individu

de s’approcher des positions exactes des maxima.

La mutation avec un taux suffisamment ´elev´e participe au maintien de la diversit´e utile `a une

bonne exploration de l’espace de recherche. Cet op´erateur peut combattre les effets n´egatifs d’une

forte pression de s´election ou d’une forte d´erive g´en´etique, ph´enom`enes qui tendent `a r´eduire la

variance de la distribution des individus dans l’espace de recherche.

Si le taux de mutation est trop ´elev´e et que la mutation est si forte que l’individu produit

est quasiment ind´ependant de celui qui l’a engendr´e, l’´evolution des individus de la population

´equivaut `a une marche al´eatoire dans l’espace de recherche et l’algorithme ´evolutionnaire mettra

un temps excessif pour converger.

Classiquement, l’op´erateur de mutation sur des chaˆınes binaires modifie al´eatoirement les

symboles d’un g´enotype avec une faible probabilit´e, typiquement de 0,1 `a 0,001 par individu,

´egale au taux de mutation. Il existe plusieurs vari´et´es de mutations. L’une des plus classiques est

la mutation bit-flip avec laquelle chaque bit peut ˆetre invers´e (un 1 devient un 0 et vice versa)

ind´ependamment des autres avec une faible probabilit´e. Si le taux de mutation est trop ´elev´e

avec un grand nombre de bits mut´es par individu, l’´evolution des individus de la population

´equivaut `a une marche au hasard dans l’espace de recherche et l’algorithme g´en´etique perd son

efficacit´e.

5.1.3.3 Croisement

Bien que nous ne soyons pas soumis aux contraintes biologiques limitant `a deux le nombre

d’individus participant `a un croisement, nous avons choisi des op´erateurs de croisement utilisant

deux parents pour former deux descendants. Un op´erateur de croisement est g´en´eralement

sto-chastique dans la mesure o`u le croisement r´ep´et´e d’un mˆeme couple de parents distincts donnera

119

Troisi`eme partie Apprentissage ´evolutionnaire des r´eseaux Bay´esiens

A1 A2 A3 A4 A5 A6 A7 A8 A9 B4 B5 B6 B7 B8 B9 A4 A5 A6 A7 A8 A9

enfants parents enfants

Recombinaison Recombinaison un point uniforme Chromosomes Chromosomes Chromosomes A1 A2 A1 A3 A6 A7 A8 A2 A4 A5 A9 B9 B8 B7 B6 B4 B3 B2 B1 B1 B2 B3 A3 B2 B4 B5 B9 B8 B7 B6 B3 B1 B5

Fig. 5.1 – Exemple de recombinaison uniforme et un point.

des descendants diff´erents. Il respecte g´en´eralement les propri´et´es suivantes :

– le croisement de deux parents identiques donnera des descendants identiques aux parents ;

– par extension, un indice de proximit´e d´ependant de la repr´esentation choisie ´etant d´efini

dans l’espace de recherche, deux parents proches l’un de l’autre dans l’espace de recherche

engendreront des descendants qui leur seront proches.

Pour une repr´esentation binaire ou discr`ete, il existe trois variantes de croisement classiques

respectant les propri´et´es ´enonc´ees ci-dessus :

– le croisement un point;

– le croisement deux points;

– le croisement uniforme.

Les croisements un point et deux points Apr`es avoir s´electionn´e un couple d’individus

au sein de la population, le croisement un point se d´eroule en deux ´etapes :

– choix al´eatoire d’un point de coupure identique sur les deux chaˆınes binaires ;

– coupure des deux chaˆınes et ´echange des deux fragments situ´es au-dessous.

Ce processus produit deux descendants `a partir de deux parents. Le croisement un point est le

plus simple et le plus classique pour des codages utilisant un alphabet `a faible cardinalit´e comme

le codage binaire. Une g´en´eralisation imm´ediate de cet op´erateur consiste `a multiplier les points

de coupure sur chaque chaˆıne. Pour C points de coupure, on produit ainsi C+ 1 sous-chaˆınes,

la moiti´e d’entre elles ´etant ´echang´ees entre les deux parents. Par exemple, pour un croisement

4 points, on produit 5 fragments de chromosome et on ´echange la deuxi`eme et la quatri`eme

sous-chaˆıne.

En pratique, les croisements un point et deux points sont couramment employ´es pour leur

simplicit´e et leur bonne efficacit´e. Selon de Jong [DJ75], le croisement deux points constitue

une am´elioration notable du croisement un point. Dans le mˆeme temps, il avance que le fait

d’augmenter le nombre de points de cassure diminue les performances de l’algorithme. Une

explication `a ce ph´enom`ene est que l’augmentation du nombre de points de coupure augmente

la probabilit´e de casser des briques de base. Pour leur part, les tests que nous avons effectu´es

n’ont montr´e aucune diff´erence significative entre les croisements un point et deux points. C’est

pourquoi par la suite, nous n’´evoquons que le croisement un point, le croisement deux points

nous ´etant apparu comme redondant.

Algorithmes ´evolutionnaires pour l’apprentissage de structure Chapitre 5

Le croisement uniforme Le croisement uniforme peut ˆetre vu comme un croisement

multi-points dont le nombre de coupures est ind´etermin´ea priori. Pratiquement, on utilise un masque

de croisement, qui est un mot binaire de mˆeme longueur que les individus. Un 0 `a lan

e

position

du masque laisse inchang´es les symboles `a la n

e

position des deux chaˆınes. Un 1 d´eclenche

un ´echange des symboles correspondants. Le masque est engendr´e al´eatoirement pour chaque

couple d’individus. Les valeurs 0 ou 1 des ´el´ements du masque sont g´en´eralement tir´ees avec une

probabilit´e 0,5.

Il est difficile d’argumenter en faveur de l’une ou de l’autre des m´ethodes de recombinaison

que nous venons de pr´esenter [ECS89]. Selon Syswerda [Sys89], la recombinaison uniforme est

plus efficace, notamment parce qu’elle est moins d´ependante que les recombinaisons un ou deux

points de la structure des chromosomes. En effet, les performances de ces deux m´ethodes chutent

consid´erablement lorsque les recommandations que nous avons ´enonc´ees concernant les BB ne

sont pas respect´ees [BBM93]. `A l’inverse, la recombinaison uniforme continue `a bien se

compor-ter. Bien qu’ils estiment que les recombinaisons un et deux points sont optimales, Spears et de

Jong [SD91] remarquent que ces derni`eres ne parviennent plus `a g´en´erer de nouvelles solutions

candidates — et donc `a ´echantillonner de nouveaux points dans l’espace de recherche — lorsque

l’algorithme converge. La recombinaison uniforme semble plus `a mˆeme de produire des nouvelles

solutions `a partir de parents similaires. Toujours selon Spears et de Jong [JS91], la recombinaison

deux points est la plus efficace pour de grandes populations mais la recombinaison uniforme est

plus indiqu´ee quand la taille de la population est faible par rapport `a la complexit´e du probl`eme.

5.2 Un algorithme ´evolutionnaire pour les r´eseaux Bay´esiens

Nous pr´esentons `a pr´esent les diff´erents ´el´ements que nous avons souhait´e utiliser pour

´elaborer notre algorithme ´evolutionnaire. Nous pr´esentons les m´ethodes de s´election retenues

ainsi que les r´epr´esentations et les m´ethodes de recombinaison que nous testons dans le chapitre

suivant. Enfin, nous introduisons les m´ethodes de sp´eciation qui nous semblent ˆetre un point

fondamental dans la construction d’un algorithme ´evolutionnaire. Pour finir, nous r´ecapitulons

nos choix et nous pr´esentons une vue d’ensemble de l’algorithme que nous allons utiliser.

5.2.1 Op´erateurs de s´election

Dans ces travaux, les individus participant `a la reproduction sont choisis al´eatoirement.

Cela permet de laisser libre cours `a l’algorithme pour recombiner des individus tr`es diff´erents,

qui peuvent avoir des ´ecarts de performance importants, afin de produire une grande vari´et´e

de solutions candidates. Il est cependant n´ecessaire d’assurer un biais en faveur des meilleures

solutions `a l’issue de chaque g´en´eration. Nous appliquons donc la s´election lors de la phase

de remplacement. Pour cela, nous avons consid´er´e une strat´egie de remplacement stationnaire,

elle-mˆeme fond´ee sur une approche ´elitiste.

5.2.1.1 Remplacement stationnaire

`

A chaque g´en´eration, un certain nombre de descendants sont engendr´es. Ils remplacent un

nombre inf´erieur ou ´egal de parents, pour former la population `a la g´en´eration suivante.

Histo-riquement, la plupart des travaux ont consid´er´e un remplacement ((g´en´erationnel)) consistant

`

a remplacer l’ensemble des individus de la population par leurs descendants. Par la suite une

approche diam´etralement oppos´ee s’est d´evelopp´ee : `a chaque g´en´eration, seulement un petit

121

Troisi`eme partie Apprentissage ´evolutionnaire des r´eseaux Bay´esiens

nombre (typiquement 2) d’individus sont remplac´es. Cette approche, appel´eeremplacement

sta-tionnaire, donne en r`egle g´en´erale de meilleurs r´esultats. Les algorithmes utilisant cette approche