Vous êtes sur la page 1sur 34

Algorithmes genetiques

Jean-Marc Alliot, Nicolas Durand


March 14, 2005

1 Principes generaux
Les algorithmes genetiques sont des algorithmes doptimisation sappuyant sur des techniques derivees de
la genetique et de levolution naturelle1 : croisements, mutations, selection, etc. Les algorithmes genetiques
ont dej`a une histoire relativement ancienne puisque les premiers travaux de John Holland sur les syst`emes
adaptatifs remontent a` 1962 [Hol62]. Louvrage de David Goldberg [Gol89c] a largement contribue a` les
vulgariser.
Un algorithme genetique recherche le ou les extrema dune fonction definie sur un espace de donnees.
Pour lutiliser, on doit disposer des cinq e lements suivants :
1. Un principe de codage de lelement de population. Cette e tape associe a` chacun des points de
lespace detat une structure de donnees. Elle se place generalement apr`es une phase de modelisation
mathematique du probl`eme traite. La qualite du codage des donnees conditionne le succ`es des
algorithmes genetiques. Le codage binaires ont e te tr`es utilises a` lorigine. Les codages reels
sont desormais largement utilises, notamment dans les domaines applicatifs pour loptimisation de
probl`emes a` variables reelles.
2. Un mecanisme de generation de la population initiale. Ce mecanisme doit e tre capable de produire
une population dindividus non homog`ene qui servira de base pour les generations futures. Le choix
de la population initiale est important car il peut rendre plus ou moins rapide la convergence vers
loptimum global. Dans le cas o`u lon ne connat rien du probl`eme a` resoudre, il est essentiel que la
population initiale soit repartie sur tout le domaine de recherche.
3. Une fonction a` optimiser. Celle-ci retourne une valeur de <+ appelee fitness ou fonction devaluation
de lindividu.
4. Des operateurs permettant de diversifier la population au cours des generations et dexplorer lespace
detat. Loperateur de croisement recompose les g`enes dindividus existant dans la population,
loperateur de mutation a pour but de garantir lexploration de lespace detats.
5. Des param`etres de dimensionnement : taille de la population, nombre total de generations ou crit`ere
darret, probabilites dapplication des operateurs de croisement et de mutation.
Le principe general du fonctionnement dun algorithme genetique est represente sur la figure 1 : on
commence par generer une population dindividus de facon aleatoire. Pour passer dune generation k a` la
generation k + 1, les trois operations suivantes sont repetees pour tous les e lements de la population k. Des
couples de parents P1 et P2 sont selectionnes en fonction de leurs adaptations. Loperateur de croisement
leur est applique avec une probabilite Pc (generalement autour de 0.6) et gen`ere des couples denfants
C1 et C2 . Dautres e lements P sont selectionnes en fonction de leur adaptation. Loperateur de mutation
leur est applique avec la probabilite Pm (Pm est generalement tr`es inferieur a` Pc ) et gen`ere des individus
mutes P 0 . Le niveau dadaptation des enfants (C1,C2 ) et des individus mutes P 0 sont ensuite e values avant
insertion dans la nouvelle population. Differents crit`eres darret de lalgorithme peuvent e tre choisis :
1 Il est int
eressant de trouver dans luvre dun specialiste de zoologie, Richard Dawkins [Daw89], un exemple informatique
tendant a` prouver la correction de lhypoth`ese darwinienne de la selection naturelle. La methode utilisee est presque semblable aux
techniques genetiques.

POPULATION
Gnration k

REPRODUCTION

PROBABILITE Pm

P1

MUTATION

P2

PROBABILITE Pc

CROISEMENT

E1

E2

EVALUATION

POPULATION
Gnration k+1

Figure 1: Principe general des algorithmes genetiques


Le nombre de generations que lon souhaite executer peut e tre fixe a` priori. Cest ce que lon est
tente de faire lorsque lon doit trouver une solution dans un temps limite.
Lalgorithme peut e tre arrete lorsque la population nevolue plus ou plus suffisamment rapidement.
Nous allons maintenant detailler chacun de ces points.

2 Description detaillee
2.1 Codage des donnees
Historiquement le codage utilise par les algorithmes genetiques e tait represente sous forme de chanes de
bits contenant toute linformation necessaire a` la description dun point dans lespace detat. Ce type de
codage a pour interet de permettre de creer des operateurs de croisement et de mutation simples. Cest
e galement en utilisant ce type de codage que les premiers resultats de convergence theorique ont e te
obtenus.
Cependant, ce type de codage nest pas toujours bon comme le montrent les deux exemples suivants :
deux e lements voisins en terme de distance de Hamming ne codent pas necessairement deux e lements
proches dans lespace de recherche. Cet inconvenient peut e tre e vite en utilisant un codage de Gray.
Pour des probl`emes doptimisation dans des espaces de grande dimension, le codage binaire peut
rapidement devenir mauvais. Generalement, chaque variable est representee par une partie de la
chane de bits et la structure du probl`eme nest pas bien refletee, lordre des variables ayant une
importance dans la structure du chromosome alors quil nen a pas forcement dans la structure du
probl`eme.

Les algorithmes genetiques utilisant des vecteurs reels [Gol91, Wri91] e vitent ce probl`eme en conservant les variables du probl`eme dans le codage de lelement de population sans passer par le codage binaire
intermediaire. La structure du probl`eme est conservee dans le codage.

2.2 Generation aleatoire de la population initiale


Le choix de la population initiale dindividus conditionne fortement la rapidite de lalgorithme. Si la
position de loptimum dans lespace detat est totalement inconnue, il est naturel de generer aleatoirement
des individus en faisant des tirages uniformes dans chacun des domaines associes aux composantes de
lespace detat en veillant a` ce que les individus produits respectent les contraintes [MJ91]. Si par contre,
des informations a` priori sur le probl`eme sont disponibles, il parait bien e videmment naturel de generer les
individus dans un sous-domaine particulier afin daccelerer la convergence. Dans lhypoth`ese o`u la gestion
des contraintes ne peut se faire directement, les contraintes sont generalement incluses dans le crit`ere a`
optimiser sous forme de penalites. Il est clair quil vaut mieux, lorsque cest possible ne generer que des
e lements de population respectant les contraintes.

2.3 Gestion des contraintes


Un e lement de population qui viole une contrainte se verra attribuer une mauvaise fitness et aura une
probabilite forte detre e limine par le processus de selection.
Il peut cependant e tre interessant de conserver, tout en les penalisant, les e lements non admissibles car
ils peuvent permettre de generer des e lements admissibles de bonne qualite. Pour de nombreux probl`emes,
loptimum est atteint lorsque lune au moins des contraintes de separation est saturee, cest a` dire sur la
fronti`ere de lespace admissible.
Gerer les contraintes en penalisant la fonction fitness est difficile, un dosage simpose pour ne pas
favoriser la recherche de solutions admissibles au detriment de la recherche de loptimum ou inversement.
Disposant dune population dindividus non homog`ene, la diversite de la population doit e tre entretenue
au cours des generations afin de parcourir le plus largement possible lespace detat. Cest le role des
operateurs de croisement et de mutation.

2.4 Operateur de Croisement


Le croisement a pour but denrichir la diversite de la population en manipulant la structure des chromosomes. Classiquement, les croisements sont envisages avec deux parents et gen`erent deux enfants.
Initialement, le croisement associe au codage par chanes de bits est le croisement a` decoupage de
chromosomes (slicing crossover). Pour effectuer ce type de croisement sur des chromosomes constitues
de M g`enes, on tire aleatoirement une position dans chacun des parents. On e change ensuite les deux
sous-chanes terminales de chacun des deux chromosomes, ce qui produit deux enfants C1 et C2 (voir
figure 2).
On peut e tendre ce principe en decoupant le chromosome non pas en 2 sous-chanes mais en 3, 4,
etc [BG91]. (voir figure 3).
Ce type de croisement a` decoupage de chromosomes est tr`es efficace pour les probl`emes discrets. Pour
les probl`emes continus, un croisement barycentrique est souvent utilise : deux g`enes P1 (i) et P2 (i) sont
selectionnes dans chacun des parents a` la meme position i. Ils definissent deux nouveaux g`enes C1 (i) et
C2 (i) par combinaison lineaire :

C1 (i) = P1 (i) + (1 )P2 (i)
C2 (i) = (1 )P1 (i) + P2 (i)
o`u est un coefficient de ponderation aleatoire adapte au domaine dextension des g`enes (il nest pas
necessairement compris entre 0 et 1, il peut par exemple prendre des valeurs dans lintervalle [0.5, 1.5]
ce qui permet de generer des points entre, ou a` lexterieur des deux g`enes consideres).
Dans le cas particulier dun chromosome matriciel constitue par la concatenation de vecteurs, on peut
e tendre ce principe de croisement aux vecteurs constituant les g`enes (voir figure 4) :

P1

P2

CROISEMENT

C1

C2
Figure 2: Slicing crossover

P1

P2

CROISEMENT

C1

C2
Figure 3: Slicing crossover a` 2 points

C1

P1

C2

P2
Figure 4: Croisement barycentrique

chromosome initial
g1

gi

gi

g1

gn

gi

gi

gn

chromosome mut

Figure 5: Principe de loperateur de mutation

~ 1 (i) = P~1 (i) + (1 )P~2 (i)


C
~
C2 (i) = (1 )P~1 (i) + P~2 (i)

On peut imaginer et tester des operateurs de croisement plus ou moins complexes sur un probl`eme
donne mais lefficacite de ce dernier est souvent lie intrins`equement au probl`eme.

2.5 Operateur de mutation


Loperateur de mutation apporte aux algorithmes genetiques la propriete dergodicite de parcours despace.
Cette propriete indique que lalgorithme genetique sera susceptible datteindre tous les points de lespace
detat, sans pour autant les parcourir tous dans le processus de resolution. Ainsi en toute rigueur, lalgorithme
genetique peut converger sans croisement, et certaines implantations fonctionnent de cette mani`ere [FOW66].
Les proprietes de convergence des algorithmes genetiques sont donc fortement dependantes de cet operateur
sur le plan theorique.
Pour les probl`emes discrets, loperateur de mutation consiste generalement a` tirer aleatoirement un
g`ene dans le chromosome et a` le remplacer par une valeur aleatoire (voir figure 5). Si la notion de distance
existe, cette valeur peut e tre choisie dans le voisinage de la valeur initiale.
Dans les probl`emes continus, on proc`ede un peu de la meme mani`ere en tirant aleatoirement un g`ene
dans le chromosome, auquel on ajoute un bruit generalement gaussien. Lecart type de ce bruit est difficile a`
choisir a priori. Nous discutons ce probl`eme de facon plus detaillee, en presentant une amorce de solution,
dans la section 4.2.

2.6 Principes de selection


A linverse dautres techniques doptimisation, les algorithmes genetiques ne requi`erent pas dhypoth`ese
particuli`ere sur la regularite de la fonction objectif. Lalgorithme genetique nutilise notamment pas ses
derivees successives, ce qui rend tr`es vaste son domaine dapplication. Aucune hypoth`ese sur la continuite nest non plus requise. Neanmoins, dans la pratique, les algorithmes genetiques sont sensibles a` la
regularite des fonctions quils optimisent.
Le peu dhypoth`eses requises permet de traiter des probl`emes tr`es complexes. La fonction a` optimiser
peut ainsi e tre le resultat dune simulation.
La selection permet didentifier statistiquement les meilleurs individus dune population et deliminer
les mauvais. On trouve dans la litterature un nombre important de principes de selection plus ou moins

adaptes aux probl`emes quils traitent. Dans le cadre de notre travail, les deux principes de selection suivants
ont e te testes et e values:
Roulette wheel selection [Gol89c];
Stochastic remainder without replacement selection [Gol89c];
Le principe de Roulette wheel selection2 consiste a` associer a` chaque individu un segment dont la
longueur est proportionnelle a` sa fitness. On reproduit ici le principe de tirage aleatoire utilise dans les
roulettes de casinos avec une structure lineaire. Ces segments sont ensuite concatenes sur un axe que lon
normalise entre 0 et 1. On tire alors un nombre aleatoire de distribution uniforme entre 0 et 1, puis on
regarde quel est le segment selectionne. Avec ce syst`eme, les grands segments, cest-`a-dire les bons
individus, seront plus souvent adresses que les petits. Lorsque la dimension de la population est reduite,
il est difficile dobtenir en pratique lesperance mathematique de selection en raison du peu de tirages
effectues. Un biais de selection plus ou moins fort existe suivant la dimension de la population.
La Stochastic remainder without replacement selection e vite ce genre de probl`eme et donne de bons
resultats pour nos applications. Decrivons ce principe de selection :
Pour chaque e lement i, on calcule le rapport ri de sa fitness sur la moyenne des fitness.
Soit e(ri ) la partie enti`ere de ri , chaque e lement est reproduit exactement e(ri ) fois.
La roulette wheel selection precedemment decrite est appliquee sur les individus affectes des fitness
ri e(ri ).
Compte-tenu du fait que des faibles populations seront utilisees par la suite, ce principe de selection
sav`erera le plus efficace dans les applications pratiques et sera donc utilise par la suite.

3 Ameliorations classiques
3.1 Introduction
Les processus de selection presentes sont tr`es sensibles aux e carts de fitness et dans certains cas, un tr`es
bon individu risque detre reproduit trop souvent et peut meme provoquer lelimination compl`ete de ses
congen`eres; on obtient alors une population homog`ene contenant un seul type dindividu. Ainsi, dans
lexemple de la figure 6 le second mode M2 risque detre le seul representant pour la generation suivante
et seule la mutation pourra aider a` atteindre lobjectif global M1 au prix de nombreux essais successifs.
Pour e viter ce comportement, il existe dautres modes de selection (ranking) ainsi que des principes
(scaling, sharing) qui empechent les individus forts deliminer compl`etement les plus faibles. On peut
e galement modifier le processus de selection en introduisant des tournois entre parents et enfants, base sur
une technique proche du recuit.
Enfin, on peut e galement introduire des recherches multi-objectifs, en utilisant la notion de dominance
lors de la selection.

3.2 Scaling
Le scaling ou mise a` lechelle, modifie les fitness afin de reduire ou damplifier artificiellement les e carts
entre les individus. Le processus de selection nop`ere plus sur la fitness reelle mais sur son image apr`es
scaling. Parmi les fonctions de scaling, on peut envisager le scaling lineaire et le scaling exponentiel. Soit
fr la fitness avant scaling et fs la fitness modifiee par le scaling.
2 Dans

la litterature, cette methode porte parfois le nom de methode de Monte-Carlo.

y
M1

M2

x
individus

Figure 6: Exemple o`u les selections classiques risquent de ne reproduire quun individu
3.2.1 Scaling lineaire
Dans ce cas la fonction de scaling est definie de la facon suivante [Mic92] :
fs = afr + b
max0 min0
min0 .max min.max0
; b=
.
max min
max min
En r`egle generale, le coefficient a est inferieur a` un, ce qui permet de reduire les e carts de fitness et
donc de favoriser lexploration de lespace. Ce scaling est statique par rapport au numero de generation et
penalise la fin de convergence lorsque lon desire favoriser les modes dominants.
a=

3.2.2 Scaling exponentiel


Il est defini de la facon suivante [Mic92] (voir figure 7):
fs = (fr )k(n)
o`u n est la generation courante.
Pour k proche de zero, on reduit fortement les e carts de fitness ; aucun individu nest vraiment
favorise et lalgorithme genetique se comporte comme un algorithme de recherche aleatoire et permet
dexplorer lespace.
Pour k proche de 1 : le scaling est inoperant.
Pour k > 1 les e carts sont exageres et seuls les bons individus sont selectionnes ce qui produit
lemergence des modes.
Dans la pratique, on fait generalement varier k des faibles valeurs vers les fortes valeurs au cours des
generations. Pour cela on peut utiliser la formule suivante :
 p



n
k = tan
N +1 2

fs
fs =

f rk

max
k<1
k=1

avg

k>1
min

min

avg

fr

max

Figure 7: Fonction de scaling exponentielle

Figure 8: Allure de levolution de k en fonction des generations

SANS SHARING (sans mutation)

AVEC SHARING (sans mutation)

Figure 9: Objectif du sharing


n e tant la generation courante, N le nombre total de generations prevues, p un param`etre a` choisir. Le
choix de p = 0.1 sest avere pertinent dans les applications. Levolution de k en fonction de la generation
n est donnee par la figure 8.
Ce dernier principe de scaling donne effectivement de meilleurs resultats sur nos probl`emes que le
scaling lineaire et sera donc systematiquement utilise. Dans le cas des fonctions objectifs multi-modes
presentant des optimaux quasi-equivalents, cette technique de scaling, en amplifiant les e carts de fitness
en fin de convergence, va effectivement favoriser le mode dominant mais aussi masquer les modes sousoptimaux qui peuvent tout de meme presenter un interet. Le scaling permet donc une bonne exploration
de lespace detat mais ne favorise pas la repartition des individus sur les differents modes de la fonction
objectif.

3.3 Sharing
3.3.1 Introduction
Lobjectif du sharing est de repartir sur chaque sommet de la fonction a` optimiser un nombre dindividus
proportionnel a` la fitness associee a` ce sommet. La figure 9 presente deux exemples de repartitions de
populations dans le cas dune fonction a` cinq sommets : le premier sans sharing, le second avec sharing.
3.3.2 Principe
De la meme facon que le scaling, le sharing consiste a` modifier la fitness utilisee par le processus de
selection. Pour e viter le rassemblement des individus autour dun sommet dominant, le sharing penalise
les fitness en fonction du taux dagregation de la population dans le voisinage dun individu. Il requiert
lintroduction dune notion de distance. Dans la pratique, il faut definir une distance indiquant la dissimilarite entre deux individus. Cette distance est alors utilisee pour calculer la nouvelle fitness de la facon
suivante :
N

fi0 =
avec

X
fi
0
;
m
=
S(d(xi , xj ))
i
m0i
j=1

S(d) = 1

d
share

si d < share

S(d) = 0 si d > share


9

1
>1
=1
SH(d)

<1
d

share

d
Figure 10: Allure de S( share
)

Le param`etre share permet de delimiter le voisinage dun point et depend du probl`eme traite. La
figure 10 donne lallure de S(d) pour differentes valeurs de . Suivant la valeur donnee a` le sharing sera
plus ou moins efficace. Ainsi pour < 1, on penalise les groupes tr`es agglomeres.
Dans la pratique ce type de sharing donne effectivement de bons resultats mais au prix de N 2 calculs
de distances entre chromosomes a` chaque generation pour une population de taille N . Or les algorithmes
genetiques induisent une complexite en N sans sharing et le fait de passer en N 2 peut e tre penalisant,
notamment pour N grand.
Pour reduire ce nombre, on utilise un sharing clusterise.

3.4 Sharing clusterise


Pour effectuer ce type de sharing [YG93], on commence par identifier les differents clusters dindividus
dans la population. Ce dernier utilise deux param`etres dmin et dmax respectivement pour fusionner des
clusters ou en creer de nouveaux. Initialement, chaque individu de la population est considere comme le
centre dun cluster. On applique alors successivement les deux principes suivants :
si deux centres sont a` une distance inferieure a` dmin , on fusionne ces derniers dans un cluster unique
dont le centre resultant est le barycentre des deux centres initiaux.
un nouvel individu est agrege a` un cluster si sa distance au centre le plus proche est inferieure a` dmax .
Dans ce cas, on recalcule le centre du cluster global. Sinon, on cree un nouveau cluster contenant ce
seul individu.
Ce principe de fusion-agregation permet dobtenir un nombre de clusters fluctuant avec la repartition
des individus dans lespace detat. On applique ensuite le principe de sharing en modifiant les fitness de la
facon suivante :
 


dic
fi
0
0
;
f i = 0 ; mi = n c 1
mi
2dmax
avec
nc : nombre dindividus contenus dans le cluster auquel appartient lindividu i.
: coefficient de sensibilite.

10

POP(n)

P1

P2

croisement

P1

P2

C2

C1

TOURNOI
tirage aleatoire des couples E-P
selection par RS sur chacun des couples

C1

C2

Figure 11: Principe du croisement avec recuit simule


dic : distance entre lindividu i et le centre du cluster c.
On montre que ce type de sharing induit une complexite en O(N log N )[YG93] pour des resultats tout
a` fait comparables a` ceux fournis par le sharing classique. Dans la pratique, on remarque que le reglage
des coefficients dmin et dmax est assez delicat car lefficacite de ces derniers depend essentiellement de
la connaissance a priori des distances inter-modes dans lespace detat, distance quil est tr`es difficile
destimer. Nous presentons dans la section 4.3 une technique permettant de calculer automatiquement ces
quantites.

3.5 Algorithmes genetiques et recuit simule


3.5.1 Introduction
Les algorithmes genetiques et le recuit simule e tant deux techniques doptimisation stochastique travaillant
sur les memes types de probl`emes, il est logique de chercher a` les associer afin de tirer partie de leurs
avantages respectifs. Apr`es plusieurs e valuations de ces deux techniques sur les memes probl`emes test, on
remarque que le recuit simule converge generalement plus vite vers la solution optimale lorsque le probl`eme
est de taille raisonnable. Toutefois, il ne donne quune solution dans le cas des probl`emes multi-modes,
ceci confirme les resultats donnes dans [IR92]. A linverse, les algorithmes genetiques fournissent plusieurs
solutions quasi-optimales mais au prix dun temps de convergence generalement plus long. Il semble alors
naturel dassocier ces deux techniques afin dameliorer la convergence des algorithmes genetiques.
Il y a eu de nombreuses tentatives de fusion entre les algorithmes genetiques et le recuit simule, les
travaux les plus interessants e tant ceux de Mahfoud et de Goldberg [MG92].
3.5.2 Principe du croisement avec recuit simule
Pour appliquer ce principe de croisement, on commence par selectionner deux parents P1 et P2 dans la
population (voir figure 11). On applique ensuite loperateur de croisement classique qui gen`ere deux enfants C1 et C2 . Un tournoi est alors effectue entre les parents et les enfants pour lequel les deux vainqueurs
sont selectionnes par le schema de recuit suivant. On consid`ere lindividu C1 . On tire ensuite aleatoirement
un des deux parents, soit Pi ce parent :
si C1 est meilleur que Pi C1 est selectionne.

11

sinon C1 est selectionne avec la probabilite :


P =e

|fC fP |
1
i
Cn

o`u c(n) est un coefficient decroissant en fonction de la generation courante (n).


On fait de meme pour C2 avec le parent restant et lon determine ainsi deux individus C10 et C20 .
Levolution de la variable C(n) se fait de la facon suivante. On utilise un schema de recuit standard
geometrique a` un palier de basculement. Pratiquement, on calcule trois temperatures dont les valeurs
dependent de la connaissance des e carts min et max des fitness de la population initiale.

Cs = lnfmax

)
( k1

fmax
Cx = ln 1
( k1 )

Cf = fmin
1
ln( k1
)

k = 0.75

Temperature initiale

k = 0.99 Temperature de basculement


k = 0.99

Temperature finale

o`u fmin , fmax representent les e carts minimum et maximum des fitness de la population initiale.
Le schema geometrique fait e voluer la temperature courante de la facon suivante :

C0 = Cs

Cn+1 = 1 Cn pour Cs > Cn > Cx ;

Cn+1 = 2 Cn pour Cx > Cn > Cf ;


avec 0 < 1 < 2 < 1.
Pour chaque palier, on calcule le nombre diterations de stabilisation a` laide des formules :
N1 =

x
ln( C
Cs )
ln 1

N2 =

C
ln Cfx
ln 2

Ces deux formules, nous permettent de calculer le nombre total de generations pour un probl`eme donne.
Ce meme principe de recuit simule a e te essaye sur loperateur de mutation en faisant un schema de
recuit entre lindividu mute et lindividu dorigine mais il ne produit pas leffet escompte. En effet, on peut
supposer que dans ce cas le recuit simule reduit le brassage de la population provoque par la mutation en
limitant lespace explore aux zones qui ameliorent statistiquement la fitness en interdisant les domaines
qui la degradent. Lexploration de du domaine admissible est fragilisee. Ce constat sur les probl`emes que
nous avons testes ne permet pas de generaliser.

3.6 Recherche multi-objectifs


3.6.1 Introduction
Dans le cadre de la recherche multi-objectifs, on cherche a` optimiser une fonction suivant plusieurs crit`eres,
dont certains peuvent dailleurs e tre antagonistes. On definit alors la classique notion de dominance : on
dit que le point A domine le point B si, i, fi (A) > fi (B), o`u les fi representent les crit`eres a` maximiser.
Lensemble des points qui ne sont domines par aucun autre point forme la surface de Pareto. Tout point de
la surface de Pareto est optimal, dans la mesure o`u on ne peut ameliorer la valeur dun crit`ere pour ce
point sans diminuer la valeur dau moins un autre crit`ere.
Les algorithmes genetiques peuvent permettre de trouver lensemble de la surface de Pareto, car il est
possible de repartir la population de lalgorithme genetique sur la dite surface.
3.6.2 Technique employee
La technique que nous employons derive directement des travaux de Jeffrey Horn et Nicholas Nafpliotis
([HN93]). Le principal changement induit concerne le processus de selection : en multi-objectifs, comment
va t-on decider quun individu est meilleur quun autre3 ? On introduit alors une variante de la notion de
3 En ce qui concerne les autres op
erateurs de base a` savoir le croisement et la mutation il ny a aucune modification car ceux-ci
travaillent dans lespace detat et non dans lespace resultat.

12

dominance que lon definit ainsi : on peut par exemple decider que lelement Ei domine Ej si le nombre
des valeurs contenues dans son vecteur dadaptation qui sont superieures aux valeurs correspondantes dans
Ej depasse un certain seuil. A partir de l`a, la technique proposee pour effectuer la selection est simple :
on tire deux individus au hasard ainsi quune sous-population4 a` laquelle ils nappartiennent pas et qui va
servir a` les comparer.
Trois cas se presentent alors :
si le premier e lement domine tous ceux de la sous-population et que ce nest pas le cas pour le second
alors le premier sera selectionne.
inversement si seul le second domine lensemble de la sous-population alors cest lui qui sera conserve.
restent maintenant deux possibilites : soit les deux sont domines, soit les deux dominent. On ne peut
se prononcer sans ajouter un autre test, cest pourquoi dans ce cas il est fait usage dun nouveau type
de sharing qui op`ere sur lespace objectif.
Le sharing va conduire a` selectionner celui des deux individus qui a le moins de voisins proches,
autrement dit on e limine celui qui se situe dans une zone dagregation pour conserver celui qui est dans
une region moins dense.
Encore une fois, le terme voisin proche na pas de signification precise mais il est possible de definir
un voisinage (aussi appele niche) correct en se servant de la distance de Holder :
! p1
n
X
k
k p
dH (Ei , Ej ) =
|fi fj |
k=1

fik designant la k-i`eme composante du vecteur adaptation de lelement i. Le param`etre p permet de faire
varier la forme et la taille du voisinage. A linterieur des voisinages ainsi definis dans lespace objectif,
il suffit de compter le nombre dindividus pour favoriser les zones les moins denses et de cette facon
maintenir la diversite de la population. Ainsi la figure 12 montre comment les voisinages sont choisis
autour des individus de la region de Pareto lorsque ceux-ci ne peuvent e tre departages sans sharing.
Voisinages

Ej

Element conserv => Ej

Ei

Rgion de Pareto

Figure 12: Surface de Pareto et voisinages

3.7 Association des AG avec des methodes locales


La grande force des algorithmes genetiques est leur capacite a` trouver la zone de lespace des solutions
contenant loptimum de la fonction. En revanche, ils sont inefficaces lorsquil sagit de trouver la valeur
4 La sous-population tir
ee aura une taille proportionnelle a` celle de la population de depart. Seule une partie des individus est
utilisee, ce qui permet de reduire le temps de calcul.

13

exacte de loptimum dans cette zone. Or, cest precisement ce que les algorithmes locaux doptimisation
realisent le mieux.
Il est donc naturel de penser a` associer un algorithme local a` lalgorithme genetique de facon a` trouver
la valeur exacte de loptimum. On peut aisement le faire en appliquant a` la fin de lalgorithme genetique un
algorithme local sur le meilleur e lement trouve. Cette technique est dautant plus efficace que lon utilise
simultanement du clustering, et que lalgorithme local est applique a` chaque meilleur e lement de chaque
cluster. En effet, on constate souvent que le meilleur e lement trouve par lalgorithme genetique ne reste
pas le meilleur e lement apr`es amelioration par lalgorithme local de tous les meilleurs e lements de clusters.
Une autre technique consiste a` utiliser un algorithme local associe a` lalgorithme genetique pour calculer la fitness dun e lement. On peut, par exemple dans un espace fortement combinatoire, rechercher
avec lalgorithme genetique les zones interessantes de lespace en generant les e lements, ladaptation de
chaque e lement e tant calculee par un programme doptimisation local (lineaire par exemple). Un exemple
de ce type est donne dans la section ??.
En fait, lassociation AGmethodes locales est une quasi-necessite. Les deux methodes sont complementaires
et ont des champs dapplication differents. Lalgorithme genetique permet de faire disparatre la combinatoire du probl`eme, laissant alors le champ libre aux methodes locales dans chacune des zones connexes
quil pense susceptible de contenir loptimum global.

4 Autres ameliorations
Les raffinements decrits dans cette section ont e te developpes au sein de notre e quipe, et sont donc, en
principe, originaux. Notons que lalgorithme genetique que nous avons developpe implante lintegralite
des techniques presentees dans la section precedente, celles presentees dans cette section, ainsi que les
differents types de parallelismes decrits dans la section 5. Nous pensons quil sagit dun des programmes
les plus efficaces actuellement.

4.1 Croisement adapte pour les fonctions partiellement separables


4.1.1 Introduction
Dans beaucoup de probl`emes doptimisation, la fonction a` optimiser depend de nombreuses variables, et
peut se decomposer comme somme de sous-fonctions prenant en compte une partie des variables seulement
([GT82]). Les algorithmes genetiques sav`erent e tre de bons outils doptimisation globale en raison de
leur capacite a` sortir des minima locaux. Neanmoins, leurs performances sont souvent penalisees par
le caract`ere tr`es aleatoire des operateurs de croisement et de mutation. Pour remedier a` ce phenom`ene,
certains e volutionnistes utilisent des heuristiques qui permettent de favoriser les bons croisements ou les
bonnes mutations et deviter les mauvaises. Nous presentons ici un operateur de croisement efficace,
utilisable dans des probl`emes o`u la fonction a` optimiser peut se decomposer en somme de sous-fonctions
positives ne dependant pas de toutes les variables du probl`eme.
Apr`es une presentation formelle du type de probl`emes auxquels sadresse cette methode, nous presenterons
loperateur de croisement. Une illustration de lefficacite de cette methode sera ensuite proposee au travers
de plusieurs exemples simples comportant jusqu`a une cinquantaine de variables. Enfin, [DAN94] propose une application de cet outil au classique probl`eme du Voyageur de Commerce, largement e tudie dans
la litterature, aussi bien pour son interet pratique quen raison de sa grande complexite [Bra90, GL85,
GGRG85, HGL93, OSH89, WSF89]. En effet, pour tester la performance dun algorithme doptimisation
globale, le probl`eme du Voyageur de commerce, NP-Complet, permet doffrir de nombreux exemples de
tr`es grande taille comportant beaucoup doptima locaux dont on connat les solutions.
4.1.2 Probl`emes concernes
Il sagit de probl`emes ou fonctions partiellement separables, a` savoir des probl`emes o`u la fonction F a`
optimiser depend de plusieurs variables x1 , x2 , .., xn , et peut se decomposer en somme de fonctions Fi
positives ne dependant pas de toutes les variables. On remarquera que bon nombre de fonctions multiplicatives peuvent se transformer en fonction additives grace a` des transformations simples. On sinteresse donc
14

aux fonctions pouvant secrire :


F (x1 , x2 , .., xn )

m
X

Fi (xj1 , xj2 , .., xjni )

i=1

Soit Ek lensemble des indices i tels que xk soit une variable de Fi :


Ek

{i/xk variables de Fi }

Pour definir notre operateur de croisement, nous allons introduire pour chaque variable xk sa fitness
locale Gk (x1 , x2 , .., xn ) definie comme suit :
X
Fi (xj1 , xj2 , .., xjni )
Gk (xk , x1 , x2 , .., xn ) =
iEk

La fitness locale associee a` une variable isole sa contribution. Le but de cette section est de montrer comment utiliser cette fitness locale pour definir un operateur de croisement permettant de reduire la taille des
populations et de converger plus rapidement vers la solution optimale. Ces operateurs sont particuli`erement
efficaces lorsquon les combine avec le sharing.
4.1.3 Loperateur de croisement
Loperateur de croisement consiste, a` partir de deux chromosomes parents, a` creer deux nouveaux chromosomes.
Le codage que nous adopterons pour appliquer notre croisement consiste a` representer le chromosome
par la liste brute des variables du probl`eme. Sil sagit de bits, nous aurons une liste de bits, sil sagit
de variables reelles, nous aurons une liste de reels. On pourra e ventuellement avoir un panachage de
differents types de variables. Lidee intuitive est la suivante : dans le cas dun probl`eme compl`etement
separable, optimiser le probl`eme global peut se reduire a` loptimisation de chaque variable separement.
Nous essayons dadapter ce raisonnement au cas de fonctions partiellement separables. La technique que
nous proposons consiste donc a` retenir pour chaque variable, lors de la conception des fils, celle des deux
parents qui a la meilleure fitness locale, ceci a` un facteur pr`es. Par exemple, dans le cas o`u lon cherche
un minimum pour F , pour la k i`eme variable, si :
Gk (pere1 ) < Gk (pere2 )
alors le fils 1 se verra affecter la variable xk du p`ere 1. Si par contre :
Gk (pere1 ) > Gk (pere2 ) +
il se verra affecter la variable xk du p`ere 2. Si enfin :
kGk (pere1 ) Gk (pere2 )k

la variable xk du fils 1 sera choisie aleatoirement.


Lors du croisement, on souhaite creer deux fils a` partir de deux parents. Si lon applique la meme
strategie pour le fils 2 que celle decrite ci-dessus pour le fils 1, les deux fils risquent de se ressembler
fortement, surtout si est faible. Ceci nest pas souhaitable. On peut donc pour le deuxi`eme fils choisir
une autre valeur de ce qui permet detre plus ou moins deterministe, ou alors, comme pour les techniques
de croisement classiques choisir le complementaire du fils 1, a` savoir affecter au fils 2 la variable des deux
p`eres non affectee au fils 1.
On peut remarquer quil est facile dintroduire un operateur de mutation qui sappuie sur le meme
principe et modifie avec une plus forte probabilite les variables ayant une mauvaise fitness locale.

15

4.2 Mutation adaptative


Un des gros inconvenients de lalgorithme genetique est sa mauvaise convergence locale. Il est possible de
raffiner le comportement des AGs en utilisant une technique que nous qualifions de mutation adaptative
dans tous les probl`emes a` variable reelle.
Le principe est le suivant : dans les probl`emes a` variable reelle, loperateur de mutation consiste
generalement a` ajouter un bruit gaussien a` lelement de population concerne. Le probl`eme est de bien
choisir ce bruit gaussien. Sil est trop petit, les deplacements dans lespace sont insuffisants en debut de
convergence, et lalgorithme peut rester bloque dans un optimum local. Si le bruit est trop fort, lAG trouvera certes une zone contenant loptimum, mais sera incapable de converger localement. Il sagit donc de
modifier le bruit au fil des generations. Pour ce faire, on calcule lecart moyen pour chacune des coordonnees entre le meilleur e lement a` la generation n et tous les autres e lements : ce nombre est alors utilise
comme e cart type du bruit gaussien sur la coordonnee en question a` la generation n + 1.
Lefficacite de cette methode est demontree dans la section ??.

4.3 Clustering adaptatif


Nous avons vu dans la section 3.4 une technique de sharing clusterise permettant de diminuer la complexite
du sharing traditionnel. Cependant, comme nous lavons souligne, les quantites dmin et dmax sont difficiles
a` calculer a` priori. Nous presentons ici un algorithme permettant de calculer automatiquement ces quantites
de facon adaptative pendant lexecution de lalgorithme genetique.
Au depart on initialise le processus avec dmoy = 0 et = 2.0. Ensuite a` chaque generation on utilise
ce qui suit :
1. Calcul de dmin et dmax :

dmax = moy

dmin = dmax
3

2. Evaluation
de la distance moyenne des individus par rapport aux centrodes des clusters :

Pn PNc
j=1 d(Ei , Cj )
i=1
dmoy =
nNc
si lon note Cj le centre du groupe j et Nc le nombre total de clusters.
3. on compte ensuite le nombre de clusters dont le meilleur individu a une fitness superieure a` un certain
pourcentage5 de celle du meilleur e lement de la population , on le note Nopt
4. on met a` jour le param`etre en utilisant la r`egle :

Nopt

= 1.05 si Nc > S1 et < 100


N
< S2 et > 1
= 0.95 si Nopt
c

reste inchange dans


les autres cas

Les valeurs S1 et S2 designent deux seuils : si beaucoup de clusters sont suffisamment bons (cest a` dire
quand leur proportion depasse S1 ) alors on diminue dmin et dmax pour accrotre le nombre total de groupes
et ainsi chercher dautres optima. Au contraire, sils sont peu nombreux alors on va diminuer la quantite
de clusters en augmentant les deux distances afin de rechercher des zones interessantes de lespace detat.
Les valeurs utilisees habituellement pour les seuils sont S1 = 0.85 et S2 = 0.75.
Cette technique donne dexcellents resultats pour rechercher les optima multiples de fonctions reelles.
5 Egal

au taux de sharing.

16

MASTER
Rsultats

Rsultats

Paramtres initiaux

SLAVE 1

Rsultats

SLAVE 2

Population taille n

SLAVE N

Population taille n

Population taille n

Envoi des meilleurs lments

Figure 13: Principe de fonctionnement du parallelisme par lots

5 Parallelisme
Linteret de la parallelisation des algorithmes genetiques est de gagner en temps de calcul. Il existe pour cela
au moins deux methodes utilisees classiquement (on pourra se reporter a` [BD93],[CJ91],[Muh89],[PLG87]
et [SPF93] pour plus de precisions sur les mod`eles de parallelisme utilisables dans les AG) :
la premi`ere consiste a` diviser la population de taille n en N sous-populations et a` les repartir sur
lensemble des machines dont on dispose.
la seconde maintient la population totale sur une seule machine mais se sert des autres pour y envoyer
les e valuations afin quelles se fassent en meme temps.
Dans les deux cas il est necessaire davoir un mecanisme de communication inter-processus. Les resultats
presentes ici ont e te obtenus en utilisant PVM. PVM a e te realise par le Oak Ridge National Laboratory.
Il permet a` un reseau heterog`ene de machines dapparatre comme une seule entite ayant plusieurs processeurs capables de communiquer entre eux (comparable a` un ordinateur a` memoire distribuee). La communication entre les divers composants de cette machine virtuelle se fait par lenvoi de paquets contenant
des donnees ou encore des messages de controle. Pour plus de details, on peut se reporter a` [GBD+ 94].

5.1 Parallelisme par lots


Lidee ici est de faire fonctionner plusieurs algorithmes genetiques en parall`ele avec une population reduite
pour chacun. Le programme matre lance N occurrences du programme dalgorithmes genetiques appelees esclaves sur des machines differentes en passant a` chacune les param`etres necessaires a` leur bon
fonctionnement comme le montre la figure 13.
Ensuite chaque processus fait e voluer sa population independamment jusqu`a ce quil decide (selon une
probabilite fixee a` lavance) de rassembler ses meilleurs individus pour en transmettre une certaine quantite
(proportionnelle a` la taille de la population) a` une autre machine de son choix. La machine receptrice
int`egre alors ces nouveaux e lements dans sa propre population en e liminant les moins bons de ses individus.
Linteret du parallelisme par lots est quil offre la possibilite de travailler sur de grandes populations (n0 )
tout en donnant des resultats dans un temps raisonnable puisque la duree necessaire est a` peu de choses
pr`es celle quil faudrait pour une population de taille nN0 si N est le nombre dordinateurs disponibles et si
lon neglige les temps de communication.
La methode introduit un clustering force car chaque lot peut e tre considere comme un cluster subdivise
en petits groupes. Chaque machine a la possibilite de converger vers des optima qui seront differents de
ceux calcules sur les autres ce qui correspond au comportement introduit avec le clustering. Dautre part, le
surcout de temps passe pour les communications nest a priori pas excessif puisquil ny a de gros paquets

17

a` transmettre que de temps en temps. Il faut tout de meme garder a` lesprit quune subdivision en souspopulations de taille trop reduite risque de conduire a` faire tourner des algorithmes genetiques non fiables
statistiquement. En effet, il faut quand meme quune population contienne suffisamment dindividus pour
que lespace detat puisse e tre explore de facon correcte afin que les resultats aient une certaine valeur.
Des tests ont e te faits par Yann LeFablec [LeF95]pour determiner lefficacite de la methode (voir figure
14). Il ne faut sattacher qu`a la forme generale de la courbe, dans la mesure o`u les charges locales des ma1800

1600

1400

1200

1000

800

600

400

200

0
1

Figure 14: Evolution


des temps de calcul
chines peuvent modifier de facon sensible les resultats. Lefficacite de la methode est cependant largement
mise en e vidence.

5.2 Parallelisation des calculs


Contrairement a` la methode qui vient detre decrite qui divise la population totale, on utilise ici des demons
de calcul de fitness dont la seule fonction est de recevoir un individu et de renvoyer son adaptation. Pour
utiliser la puissance de calcul parall`ele offerte de mani`ere optimale, il faut retarder au maximum les calculs
pour les envoyer en blocs aux demons et faire en sorte quaucun ne reste inactif. Le principe se trouve
resume sur la figure 15 : le programme matre se charge de faire la selection, les croisements, etc. . . en
dautres termes il fait e voluer la population, puis repartit les calculs dont il a besoin sur lensemble des
demons. Enfin, d`es quil a recu tous les resultats, lalgorithme commence une nouvelle generation.
Il faut noter que ce mecanisme demande un grand nombre de communications pour envoyer les donnees
et les e valuations. La methode nest donc interessante que si le temps passe pour un calcul dadaptation
est grand devant le temps de communication, elle sera par consequent utilisee pour des probl`emes dont les
e valuations de fitness prennent du temps, on pense essentiellement a` des cas faisant appel a` des reseaux de
neurones ou a` de gros calculs matriciels.
La courbe 16 montre comment e volue le temps de calcul en fonction du nombre de machines et du
temps de communications. On constate que plus on utilise de machines, plus la penalisation due aux
communications est forte.

18

Population taille n

MASTER

Envoi du rsultat
et de la donne
Envoi dune donne
valuer

DEMON 1

DEMON 2

DEMON N

Figure 15: Principe de fonctionnement de la parallelisation des calculs

200
180
160
140

Temps

120
100
80
60
40
20
0
0

10

15
Nombre de machines

20

25

30

450
communication*1
communication*20
communication*40

400

350

300

250

200

150

100

50
8

10

12

14

Figure 16: Evolution


du temps de calcul

19

16

18

20

22

24

26

28

30

5.3 Conclusion
La parallelisation est extremement efficace pour accelerer les temps de resolution des algorithmes genetiques.
Il faut certes bien e tudier le probl`eme afin dutiliser le bon mecanisme de parallelisme, mais les gains en
temps sont alors importants.

6 Resultats theoriques sur les algorithmes binaires


Historiquement, les algorithmes genetiques binaires sont les plus anciens et ont donc e te les plus e tudies
sur le plan theorique. Goldberg [Gol89a] a largement developpe cette theorie resumee dans [AS92]. Nous
allons tout dabord les e tudier avant de presenter les modelisations theoriques basees sur les chanes de
Markov.

6.1 Definitions fondamentales


Definition 1 (Sequence). On appelle sequence A de longueur l(A) une suite A = a1 a2 . . . al avec i
[1, l], ai V = {0, 1}.
En codage binaire, les chromosomes sont des sequences.
Definition 2 (Schema). On appelle schema H de longueur l une suite H = a1 a2 . . . al avec i
[1, l], ai V + = {0, 1, }.
Une en position i signifie que ai peut e tre indifferemment 0 ou 1.
Definition 3 (Instance). Une sequence A = a1 . . . al est une instance dun schema H = b1 . . . bl si pour
tout i tel que bi 6= on a ai = bi .
Ainsi, H = 010 0101 est un schema et les sequences 01000101 et 01010101 sont des instances de H
(ce sont meme les seules).
Definition 4 (Position fixe, position libre). Soit un schema H. On dit que i est une position fixe de H si
ai = 1 ou ai = 0. On dit que i est une position libre de H si ai = .
Definition 5 (Ordre dun schema). On appelle ordre du schema H le nombre de positions fixes de H. On
note lordre de H o(H).
Par exemple, le schema H = 01 10 1 a pour ordre o(H) = 5, le schema H 0 = 101 a pour
ordre o(H 0 ) = 3. On remarquera quun schema H de longueur l(H) et dordre o(H) admet 2(l(H)o(H))
instances differentes.
Definition 6 (Longueur fondamentale). On appelle longueur fondamentale du schema H la distance
separant la premi`ere position fixe de H de la derni`ere position fixe de H. On note cette longueur fondamentale (H).
Ainsi, le schema H = 1 01 a pour longueur fondamentale (H) = 5 1 = 4, le schema
H 0 = 1 1 a pour longueur fondamentale (H 0 ) = 8 1 = 7, et pour le schema H 00 = 1
nous avons (H 00 ) = 3 3 = 0.
Definition 7 (Adaptation dune sequence). On appelle adaptation dune sequence A une valeur positive
que nous noterons f (A).
f est la fonction objectif ou fitness du probl`eme a` resoudre.
Definition 8 (Adaptation dun schema). On appelle adaptation dun schema H la valeur
P2(l(H)o(H))
f (Ai )
f (H) = i=1(l(H)o(H))
2

o`u les Ai decrivent lensemble des instances de H, cest-`a-dire la moyenne des adaptations de ses instances.
20

6.2 Effets de la reproduction


Soit un ensemble S = {A1 , . . . , Ai , . . . , An } de n sequences de bits tirees aleatoirement. Durant la
reproduction, chaque sequence Ai est reproduite avec une probabilite :
f (Ai )
pi = P n
i=1 f (Ai )

Supposons quil y ait a` linstant t un nombre m(H, t) de sequences representant le schema H dans la
population S. A linstant t + 1, statistiquement, ce nombre vaut :
f (H)
m(H, t + 1) = m(H, t).n. Pn
i=1 f (Ai )

Posons

ft =

Pn

f (Ai )
n

i=1

ft represente la moyenne de ladaptation des sequences a` linstant t. La formule precedente devient :


m(H, t + 1) = m(H, t)
Posons ct (H) =

f (H)
ft

f (H)
ft

1. On obtient alors :
m(H, t + 1) = (1 + ct (H))m(H, t)

Il est donc clair quun schema, dont ladaptation est au-dessus de la moyenne, voit son nombre de representants
augmenter, suivant une progression qui est de type geometrique si nous faisons lapproximation que ct (H)
est constant dans le temps. Alors :
m(H, t) = (1 + c(H))t .m(H, 0)
Si la reproduction seule e tait en jeu, les schemas forts e limineraient tr`es rapidement les schemas faibles.

6.3 Effets des croisements


Nous allons nous interesser a` la probabilite de survie ps (H) dun schema H lors dune operation de croisement. Par exemple, soit le schema H = 10 1 . Supposons quune instance de ce schema soit
croisee avec une autre instance. Quelle est la probabilite pour que la sequence resultante soit encore une
instance de H ? Il est impossible de repondre exactement a` la question, tout au plus peut-on donner une
borne inferieure de cette valeur. Il est clair que H ne sera pas detruit si le site de croisement qui est tire au
sort est inferieur a` 3 (avant le premier 1) ou sil est superieur a` 6 (apr`es le dernier 1)6 .
On voit donc immediatement quune borne inferieure de la probabilite de detruire un schema H est
(H)/(l 1). Donc la probabilite de survie dans un croisement est 1 (H)/(l 1). Si dautre part on
ne croise quune fraction pc de sequences dans une population donnee, la probabilite de survie est donnee
par :
(H)
ps 1 pc
l1
De ce resultat et des resultats precedents decoule la loi devolution dune population7 :
m(H, t + 1) m(H, t)(1 + ct (H))(1 pc
6 Dans
7 Les

(H)
)
l1

tous les autres cas, H peut e tre (ou ne pas e tre) detruit.
croisements et les mutations se font sur la population reproduite, et non sur la population initiale.

21

6.4 Effets des mutations


Soit pm la probabilite de mutation dun bit dans une sequence. Dans un schema H, seules les positions fixes
peuvent e tre detruites. La probabilite de survie dun bit e tant 1 pm , la probabilite de survie dun schema
H contenant o(H) positions fixes est (1pm)o(H) . La probabilite de mutation e tant supposee petite devant
1, un developpement limite au premier ordre donne une probabilite de survie e gale a` 1 o(H)pm .
Lequation finale secrit donc :
m(H, t + 1) m(H, t)(1 + ct (H))(1 pc

(H)
o(H)pm )
l1

6.5 Conclusion sur le codage binaire


Des calculs precedents decoulent deux resultats :
les schemas dont la longueur fondamentale est petite sont plus favorises que les autres, lors de la
generation dune nouvelle population.
les schemas dont lordre est petit sont plus favorises que les autres, lors de la generation dune
nouvelle population.
Ces resultats conditionnent la qualite du codage des donnees. En effet, les schemas qui codent les
donnees interessantes pour le probl`eme considere doivent avoir un ordre et une longueur fondamentales
faibles8 , alors que les donnees sans interet doivent e tre codees par des schemas qui ont un ordre et une
longueur fondamentale e leves.
Les resultats presentes ci-dessus ne sont quune introduction a` la theorie des schemas, il existe de nombreux approfondissements. On trouvera dans les references suivantes les principaux mod`eles theoriques
sur la theorie des schemas et ses extensions :[Gol89c, Vos91, BM93, Gol89b, BG87, CS88, BM94, DM92,
SGE91]

7 Modelisation par chane de Markov


Cette derni`ere approche est la plus satisfaisante tant sur le plan mathematique, que sur celui de la modelisation,
les differents operateurs e tant presentes comme perturbant un processus Markovien representant la population a` chaque e tape. Ici encore il apparat que seul loperateur de mutation est important, le croisement
pouvant e tre totalement absent.
Les principaux resultats asymptotiques portant directement sur les algorithmes genetiques, ont e te
developpes par R. Cerf [Cer94] sur la base des travaux de Catoni [Cat90] et de Trouve [Tro93]. Ces
travaux se fondent sur la theorie des petites perturbations aleatoires dun processus dynamique de type
Markovien. Plus particuli`erement, la theorie de Freidlin et Wentzell [FW83] constitue la pierre dangle
de ces e tudes. Nous donnons ici, quelques uns des resultats de la dynamique des algorithmes genetiques
developpes par Cerf. Nous les presentons simplifies et dans un cadre restreint, laissant le lecteur interesse
se reporter a` la difficile lecture des references citees.
Nous travaillerons sur la base dun codage binaire, P representant le nombre de bits utilises pour
le codage. La fonction devaluation, f est definie sur lespace E = {0, 1}P a` valeurs dans <+ . Le
probl`eme est donc de localiser lensemble des maxima globaux de f , ou, a` defaut, de trouver rapidement
et efficacement des regions de lespace o`u se situent ces maxima.
Comme nous lavons vu, lalgorithme genetique est un algorithme stochastique iteratif qui op`ere sur
des ensembles de points, et qui est bati a` laide de trois operateurs: mutation, croisement et selection, que
nous presentons plus formellement a` present.
8 Les donn
ees interessantes sont bien entendu les donnees qui sont proches de la solution optimale. Un bon codage des donnees
implique donc davoir une idee de la forme de loptimum.

22

7.1 Description rapide dun algorithme genetique


Soit N la taille (fixe) de la population, notons Xk la population de la generation k : il sagit dune matrice
Xk = (Xk1 , Xk2 , .. XkN ) de E N dont les N e lements sont des chanes de bits (chromosomes) de taille P .
Le passage de la generation k a` la generation k + 1, cest a` dire de Xk a` Xk+1 se decompose en trois e tapes
:
Mutation
Croisement
Selection
Xk

Yk

Zk

Xk+1
Chacune de ces e tapes peut e tre modelisee formellement.
Mutation Xk Yk :
Loperateur considere ici est le suivant : pour chaque composante de chaque e lement Xki , une variable de Bernouilli de param`etre Pm est tiree independamment et suivant le resultat lelement binaire
examine est change ou non. (0 est change en 1 et 1 en 0).
La probabilite Pm de mutation doit e tre prealablement choisie et est generalement faible.
Comme nous le verrons par la suite, cet operateur joue un role cle dans la convergence de lalgorithme
genetique.
Croisement Yk Zk :
Loperateur e tudie ici est loperateur a` un point (slicing crossover). Ici encore, la probabilite de
croisement Pc est fixee initialement. Pour construire la population Zk , N/2 couples sont formes
a` partir de la population Yk (par exemple en appariant les individus consecutifs de Yk , ou bien en
choisissant au hasard et uniformement des individus dans Yk ). Pour chaque couple, une variable de
Bernoulli de param`etre Pc est tiree pour decider si le croisement a lieu. Si cest le cas, un site de
coupure est tire au hasard, et les segments finaux des deux chromosomes sont e changes.
Une nouvelle paire dindividus est ainsi obtenue (identique a` lancienne sil ny a pas eu de croisement) et est stockee dans la population Zk . En general, le param`etre Pc est choisi grand.
Remarquons que les operateurs de mutation et de croisement ne font pas intervenir la fonction f , ce
sont des operateurs stochastiques dexploration. Cest le troisi`eme et dernier operateur, la selection,
qui guide la population vers les valeurs e levees de la fonction f.
Selection Zk Xk+1
Les N individus de la population Xk+1 sont obtenus apr`es selection des individus de Zk . On conserve ainsi les meilleurs individus de Zk , independamment a` laide dune distribution de probabilite qui favorise les individus de Zk les mieux adaptes.
Le choix le plus frequent est lunique distribution telle que la probabilite dun individu soit proportionnelle a` son adaptation, i.e la probabilite de selection de lindividu Zki est :
Pi = P (Zki ) =

f (Zki )
N
P
f (Zkj )

j=1

En tirant les individus dans la population Zk conformement aux probabilites Pi , on constitue la


nouvelle generation Xk+1 .

7.2 Modelisation
La presentation rapide des operateurs nous permet de modeliser la suite des (Xk )kN en une chane de
N
Markov, despace detats E = {0, 1}P . Lalgorithme genetique ne doit donc pas e tre interprete comme
une procedure doptimisation mais plutot comme une marche aleatoire dans lespace detat, attiree vers les
fortes valeurs de f .
La propriete premi`ere de cette formalisation est que la loi de Xk est determinee de mani`ere unique par :

23

la loi de la generation initiale X0


le mecanisme de transition de Xk a` Xk+1 , mecanisme scinde en trois e tapes detaillee precedemment.
Ce mecanisme de transition poss`ede toutefois des proprietes essentielles qui font linteret et la puissance
de cette formalisation, (voir [Cer94]) :
Il est homog`ene (cest a` dire independant de la generation, k, consideree)
Il est irreductible, (la probabilite de joindre deux points quelconques de lespace detat, en un nombre
fini de generations est non nulle) soit :
x, y E

r N

P [Xk+r = y | Xk = x] > 0

Le mecanisme permet donc dexplorer tout point de lespace detat, avec une probabilite non nulle.
Il est aperiodique, cette hypoth`ese nest cependant pas fondamentale.
Ces proprietes permettent de conclure a` lergodicite de la chane de Markov, et a` lexistence dun
processus limite.
Theor`eme 1. Une chane de Markov homog`ene irreductible aperiodique despace detats fini est ergodique
et poss`ede une unique mesure de probabilite stationnaire ou invariante.
Cette mesure stationnaire correspond a` la loi regissant lequilibre du processus, elle est definie , pour
tout y, comme :
(y) = lim P [Xk = y | X0 = x]
k

Nous savons e galement que tout e lement de lespace detat est de probabilite non nulle pour cette
mesure.
Toutefois, si ce resultat nous permet de savoir quil existe une dynamique de fond de lalgorithme
genetique, il nous reste a` en determiner les proprietes, linfluence des operateurs (et des param`etres associes) qui jouent un grand role dans le processus.
Pour cela nous introduisons les notations suivantes :
Si x = (x1 , ..., xN ) est un e lement de E N et i un point de E, nous noterons :
fb(x)

x
b =

[x] =

fb(x1 , ..., xN ) = max {f (xi ) : 1 i N }


n
o
xk arg max f (x)

{xk : 1 k N }

De mani`ere generale, les lettres z, y, z, u, v.. designent des populations, i.e. des e lements de E N , et
les lettres i, j des points de E.
7.2.1 Processus de fond (Xk )
Cest a` partir de ce processus de fond quest reconstitue lalgorithme genetique en e tudiant ses perturbations
aleatoires par les differents operateurs. Il est defini comme processus limite, lorsque les perturbations ont
disparu. Cest e galement une chane de Markov sur E N dont le mecanisme de transition est tr`es simple
puisque correspondant a` la situation limite suivante :

Les N composantes de Xk+1


sont choisies independamment et suivant la loi uniforme sur lensemble

d.
X
k
Les individus dont ladaptation nest pas maximale en k, sont e limines et napparaissent pas dans la
generation k + 1,
Les individus dont ladaptation est maximale, ont des chances de survies e gales
24

Cette chane est tout dabord piegee dans lensemble S des populations ayant la meme adaptation (ou
ensemble des population dequi-adaptation),


S = x = (x1 , ..., xN ) E N : f (x1 ) = f (x2 ) = = f (xN )

Cette population represente les attracteurs de la chane (voir 7.3 plus loin), puis elle est absorbee par
une population uniforme, de sorte que :
x E N

P [xi x
b K

k K

Xk = xi | X0 = xini ] = 1

Lorsque la population est devenue uniforme et en labsence ici de perturbations, il ne se passe plus rien.
Ceci peut e galement se traduire en definissant les populations uniformes comme les e tats absorbants
de la chane Xk . Nous allons maintenant e tudier la situation o`u ce processus est perturbe.
7.2.2 Processus perturbe (Xkl )
La modelisation proposee par Cerf, part du processus de fond (Xk ),decrit ci-dessus, qui est perturbe
aleatoirement, les perturbations sont indicees par le param`etre l. La chane de Markov (Xk ) devient donc
une suite de chanes de Markov (Xkl ), dont le mecanisme de transition est donne par la succession des
transformations generees par les operateurs.
Xkl

Mutation

Croisement

Ukl

Vkl

Selection

l
Xk+1

Il nous faut pour cela modeliser precisement les operateurs.


Mutation Xkl Ukl :
Les mutations sont definies comme de petites perturbations aleatoires independante des individus,
de la population Xkl . Il est assez naturel dintroduire la probabilite pl (i, j) de transition9 de mutation
entre les points i et j de E, comme un noyau Markovien pl .
Trivialement on a :
X

i E

pl (i, j) = 1

jE

Sur la chane Xkl , la probabilite de transition entre les points x et u de E N est :




P Ukl = u | Xkl = x = pl (x1 , u1 ) pl (x2 , u2 ) pl (xN , uN )

Plus precisement et afin danalyser la dynamique de (Xkl ) lorsque l tend vers linfini, nous reportons
ici les hypoth`eses sur le mode et la vitesse de convergence des probabilites de transition. Pour cela
nous supposons lexistence dun noyau irreductible, , sur E, i.e. : i, j E, io , i1, , ir
(cest a` dire un chemin dans E) tels que i0 = i et ir = j tels que :
Y
(ik , ik+1 ) > 0
0sr1

Lhypoth`ese dirreductibilite du noyau est essentielle, elle assure que tout point de lespace est
potentiellement visitable.
La vitesse de convergence du noyau pl , est caracterisee par le reel positif a, tel que pl admette le
developpement suivant :

si i 6= j
(i, j) la + o(ls )
i, j E
s
pl (i, j) =
(1)

1 (i, j) la + o(ls )
si i = j

9 Cest

la probabilite Pl (i, j) pour un point i de E de se transformer par mutation en un point j de E

25

La condition de positivite de a nous permet de faire disparatre les perturbations lorsque l tend vers
linfini.

0
si i 6= j
i, j E
lim pl (i, j) = (i, j) =
(2)
1
si i = j
l
Croisement Ukl Vkl : Ici encore loperateur est modelise comme effectuant de petites perturbations aleatoires sur des couples de la population Ukl . Ces couples sont ici formes par les e lements
successifs de la population, les transitions sont gerees par le noyau Markovien ql sur E E, cette
fois, de sorte que :


P Vkl = v | Ukl = u = ql ((u1 , u2 ) (u3 , u4 ) (uN 1 , uN ))
Pour ce noyau ql nous supposerons lexistence dun noyau irreductible sur E E, la vitesse de
convergence est alors parametree par le reel positif b tel que :
(i1 , j1 ) E E

(i2 , j2 ) E E

ql ((i1 , j1 ) , (i2 , j2 )) =

((i1 , j1 ) , (i2 , j2 )) lb + o(ls )

1 ((i1 , j1 ) , (i2 , j2 )) lb + o(ls )

si (i1 , j1 ) 6= (i2 , j2 )

(3)

si (i1 , j1 ) = (i2 , j2 )

Levanouissement asymptotique des croisements est e galement imposee par la positivite de b :


i1 , i2 , j1 , j2 E

lim ql ((i1 , i2 )(j1 , j2 )) = (i1 , i2 ) (j1 , j2 )

(4)

l
Selection Vkl Xk+1
: Cest loperateur le plus complique et e galement le plus important puisquil
permet la convergence vers les optima de f.

Il est modelise a` laide dune fonction de selection Fl dont Cerf nous donne une definition precise,
pouvant e tre resumee par :
Fl

: {1, , N } (<+ )
(i, f1 , f2 , fN )

[0, 1]
Fl (i, f1 , f2 , , fN )

telle que :
1. F (, f1 , f2 , fN ) est une probabilite sur {1, , N }
2. Cette probabilite est independante de lindexation des f1 , f2 , fN (on peut permuter les fi )
3. La probabilite favorise les e lements i associes a` des valeurs e levees (i.e.)
Si

f1 f2 fN

Alors

Fl (1, f1 , f2 , , fN ) Fl (2, f1 , f2 , , fN ) Fl (N, f1 , f2 , , fN )


Cet outil nous permet decrire la probabilite de transition correspondant a` la derni`ere e tape.
P

l
Xk+1

=x|

Vkl

=v =

N
Y

l (xr , vr )

r=1

Ceci signifie que la probabilite de transition est le produit des probabilites sur chacune des N composantes de E.

26

La probabilite l entre deux composantes (xr , vr ) est donnee par :


X
Fl (k, f (v1 ), f (v2 ), , f (vN ))
l (xr , vr ) =
k : vk =xk

De meme que pour les autres operateurs, la fonction de selection doit e tre choisie et sa vitesse de
convergence caracterisee :
Fl (i, f1 , f2 , , fN ) =

exp (c fi ln(l))
N
P
exp (c fr ln(l))

(5)

r=1

Ce choix correspond bien a` une probabilite de selection avantageant les fortes adaptations au detriment
des faibles, le reel positif c indexant cette fonction.
Le mecanisme de selection operant sur le processus de fond (Xk ), correspond a` la fonction de
selection F definie par :
F (k, f (x1 ), f (x2 ), , f (xN )) =

1b
x (xk )
card(b
x)

Cest a` dire, la loi uniforme sur lensemble x


b = {xk arg max f (x)}

La suite (Fl )lN des fonctions de selection tend vers cette loi uniforme
x E N

k
(6)

liml Fl (k, f (x1 ), f (x2 ), , f (xN )) = F (k, f (x1 ), f (x2 ), , f (xN ))


Les conditions 2, 4, et 6 nous permettent dassurer que le mecanisme de transition de la chane (Xkl )
converge vers celui du processus de fond (Xk ) :
 l



y, z E N
lim P Xk+1
= z | Xkl = y = P Xk+1
= z | Xk = y
l

Cest e galement en ce sens que lon interpr`ete la chane (Xkl ) comme une perturbation de la chane
(Xk ).
Les vitesses de convergence intervenant dans chacun des operateurs jouent un role important. La formulation proposee en (1), (3) et (5), permet un ajustement e quitable de ces vitesses (elles sont logarithmiquement
du meme ordre) de sorte quaucun operateur ne domine les autres dans la dynamique. lorsque l tend vers
linfini, les conditions (2), (4), et (6) nous permettent dassurer que le mecanisme de transition de la chane
(Xkl ) converge vers celui du processus de fond (Xk ), et on a :
 l



y, z E N
lim P Xk+1
= z | Xkl = y = P Xk+1
= z | Xk = y
l

La chane (Xkl ) se comporte alors comme le ferait (Xk ). La theorie de Freidlin-Wentzell nous donne
les outils pour simplifier letude de ces processus a` temps continu.

7.3 Application de la theorie de Freidlin et Wentzell


7.3.1 Principe
Soit le syst`eme differentiel de <N satisfaisant les e quations deterministes :

dxt = b(xt ) dt
x0 = xini
27

(7)

Sous de bonnes hypoth`eses, il existe une solution (trajectoire) unique, x(t) a` lequation (7) et a` la
condition initiale associee. lune des preoccupation immediates est de savoir si cette solution va, ou non,
tendre vers un e quilibre (qui nest pas forcement unique). Et si oui, quel en est lensemble de stabilite.
Lequilibre est defini comme une fonction constante x telle que x = lim xt , et lensemble de stabilite
t

comme lensemble K( x ) des points de depart qui m`enent a` cet e quilibre10 . On peut e largir cette notion,
dequilibre et de stabilite, par celles, tr`es proches, dattracteur et de bassin dattraction.
Un attracteur du syst`eme est le voisinage compact Ki dun point visite une infinite de fois, et le bassin
dattraction lensemble des points de depart qui m`enent a` cet attracteur. Nous supposerons que <d poss`ede
un nombre fini dattracteurs K1 , , Kr .
La theorie de Freidlin-Wentzell e tudie levolution du syst`eme 7 lorsquil subit des perturbations Browni`enes,
dintensite . Le syst`eme deterministe 7 devient alors un syst`eme differentiel stochastique.

dXt = b(Xt ) dt + dt
(8)
X0 = xini
Le processus (Xt )t<+ est maintenant un processus stochastique perturbe par le mouvement brownien
(t )t<+ et dependant de . La situation change alors puisque les perturbations brownienne permettent au
processus de sechapper de nimporte quel bassin dattraction, et en fait le processus les visite tous.
De plus, le processus est ergodique et admet une unique mesure de probabilite invariante, i.e.
B borelien <d

lim P [Xt B | X0 = xini ] = (B)

existe et (B) est la probabilite de presence du processus dans le Borelien B , lorsque le syst`eme a atteint
son e tat dequilibre. Cette probabilite est invariante avec le point de depart xini .
Lorsque les perturbations cessent, le processus se comporte comme dans 7 et reste presque surement
au voisinage V (K1 Kr ) des attracteurs, tandis que la probabilite de presence dans nimporte quel
Borelien A disjoint de K1 Kr disparat.
lim (V (K1 Kr ))

= 1

lim (A)

= 0

Le resultat principal de Freidlin et Wentzell repose sur lequivalence du processus (Xt )t<+ a` temps
continu et espace detat <d et du processus (Zn )nN a` temps discret et espace detat fini {1, .r}
decrivant les visites au ni`eme attracteur.
La construction precise de (Zn )nN , nest pas reportee ici mais nous en donnons un apercu afin de
mieux comprendre ce dernier processus.
Si xini est proche de lattracteur Kh alors Zo = h {1, .r}
puis le processus, sous linfluence de (t ), est attire par Ks et Z1 = s
etc..
La chane de Markov11 ainsi cree e a pour espace detats {1, .r}, est irreductible, et poss`ede une
unique mesure de probabilite invariante .
Theor`eme 2. Letude du comportement asymptotique de la mesure est equivalente a` letude du
comportement asymptotique de la mesure
10 Lensemble

de stabilite de lequilibre x est :


ff

K(x ) = xini <N , t.q. pour xt solution de 7 ; lim xt = x


t

Pour chaque e quilibre on definit ainsi son ensemble de stabilite. Cet e quilibre est stable sil contient un voisinage de lequilibre, et
instable sil existe des points de depart infiniment proche de lequilibre qui ne m`enent pas a` celui-ci.
11 La nature Markovienne de , nous permet de montrer quil sagit bien l`
a dune chaine de Markov.
t

28

Nous passons sous silence letude des probabilite de transition P [Zn = i | Zn = j] de la chane (Zn )nN
qui secrivent comme des integrales sur lensemble des fonctions qui lient les attracteurs Ki et Kj , laissant le lecteur interesse se reporter a` la lecture de Freidlin et Wentzell, ou de Cerf.
Notons toutefois que ces probabilite de transition secrivent :
P [Zn = i | Zn = j]

V (i, j)
exp
ln
2


R1

o`u V (i, j) = inf{V (), () continue [0.1] 7 < , (0) Ki , (T ) Kj } et V () = 0 (t) b ( (t)) dt.
est une constante associee a` et caracterisant sa vitesse de convergence.
La quantite V (i, j) ou cout de communication, mesure le cout de passage de lattracteur Ki a` lattracteur
Kj .
Les intensites de transitions de la chane (Zn )nN , nous ouvrent la voie pour determiner la mesure
invariante .
d

7.3.2 Mesure invariante


Les outils qui permettent de determiner cette mesure invariante ont e te developpes, une nouvelle fois par
Freidlin et Wentzell, nous aurons besoin de certains dentre eux.
Definition 9. Soit i un e lement de {1, ..., r}. Un igraphe sur {1, ..., r} est un graphe g sur {1, ..., r}
possedant les proprietes suivantes :
j 6= i, le graphe g contient une unique fl`eche issue de j
Il existe un chemin dans g qui m`ene de j a` i
g ne contient pas de fl`eche issue de i
Il sagit donc dun graphe sans cycles forme de chemins qui aboutissent en i. On note G(i) lensemble
des igraphes sur {1, ..., r}.
Definition 10. La fonction denergie virtuelle W est la fonction de {1, ..., r} dans <+ definie par :
X
V (, )
i {1, ..., r}
W (i) = min
gG(i)

()g

A cette fonction est associe lensemble W des minima globaux de W.


Finalement, la mesure invariante est caracterisee par :
i {1, ..., r}

(i)

W (i) W (W )
exp
ln
2

o`u W (W ) = min {W (i) : i {1, ..., r}} .


Le comportement asymptotique de (et par la meme occasion de ) est donc connu : la mesure
se concentre sur les attracteurs dont lindice est dans W et decrot vers zero a` la vitesse exp Cste
2 pour
les autres attracteurs. Il existe donc un sous-ensemble de W de lensemble des attracteurs sur lequel se
concentre la mesure invariante du processus.
"
!
#
[

lim lim P Xt V
Ki | X0 = xini = 1
0 t

iW

La dynamique du processus est donc caracterisable.

29

7.3.3 Dynamique du processus


Dans sa th`ese, Cerf nous donne une tr`es claire interpretation de la hierarchie des cycles qui caracterisent la
dynamique du processus. Supposons que le processus soit initialement dans le bassin dattraction de K1 .
Il quitte K1 au bout dun temps fini. Parmi toutes les trajectoires de sortie, il en existe une plus probable
que les autres, qui lam`ene vers un nouvel attracteur; par exemple K2 puis, bientot K3 . Lensemble des
attracteurs e tant par hypoth`ese fini, le processus finit par revisiter un attracteur formant un cycle dordre
1 sur lequel le processus tourne longtemps, tr`es longtemps. Englobons maintenant ces trois attracteurs
dans une bote. Comme toujours, les perturbations browniennes finissent par pousser le processus hors de
cette bote, et ici encore, il existe une trajectoire de sortie canonique qui fait tomber le processus dans un
nouveau bassin dattraction, ou plus generalement, dans un autre cycle dordre 1.
Les cycles dordre 1 sont aussi en nombre fini, et le processus finit par revisiter un cycle dordre 1:
un cycle dordre 2 est alors forme, dans lequel le processus reste piege tr`es longtemps. En continuant de
la sorte, il est possible de construire toute une hierarchie de cycles qui e puise lensemble des attracteurs
et fournit une image tr`es precise de la dynamique asymptotique du processus. A chaque transition entre
cycles est associee une constante qui caracterise la difficulte de la transition.
Enfin, lorsque decrot avec le temps ( = (t) est une fonction de t qui tend en decroissant vers 0),
nous obtenons un processus de Markov inhomog`ene (le mecanisme de transition depend du temps).
Si (t) decrot tr`es lentement, de sorte qu`a chaque instant la loi de Xt soit proche de letat dequilibre
associe au niveau de perturbation (t), la situation ne change pas fondamentalement. La loi limite
correspond a` la limite de la suite des lois dequilibre.
Si au contraire (t) decrot tr`es rapidement, le processus risque de rester piege dans certains sousensembles dattracteurs: plus precisement, dans la hierarchie des cycles, certaines transitions ne
pourront e tre effectuees quun nombre fini de fois, alors que dautres, plus faciles, seront realisees
une infinite de fois avec probabilite 1. La loi limite depend alors fortement du point de depart.
La hierarchie des cycles permet ainsi de decrire les dynamiques possibles de (Xt ) en fonction de la
vitesse de decroissance de (t).
7.3.4 Resultats de convergence
Lorsque l croit vers linfini, les perturbations affectant le processus (Xkl ) diminuent de sorte que cette
chane se comporte, presque surement, comme la chane (Xk ). Plus precisement, nous savons que les
attracteurs de la chane (Xk ) sont les populations dequi-adaptation S et les populations uniformes (attracteurs stables). La chane (Xkl ) va donc e tre attiree par ses attracteurs, en commencant par lensemble
S.
La theorie de Freidlin et Wentzell nous permet de reporter cette e tude sur celle de la chane des (Zkl )
des visites successives de (Xkl ) a` lensemble S. Nous poserons donc Zkl = XTl k o`u Tk est linstant de la
ki`eme visite de (Xkl ) dans S.
Les probabilites de transition de la chane (Zkl ), sont estimees a` laide des operateurs definis en 7.2 et
selon le schema developpe ci-dessus. Les fonctions de cout de communication V (i, j) et denergie virtuelle
W sont definies et estimees.
Nous savons alors que la suite des mesures stationnaires de la chane (Xkl ) se concentre sur lensemble

W des minima de W :


xini E N
lim lim P Xkl W | X0l = xini = 1
l k

Lun des principaux resultats indique quil existe une taille de la population de (Xkl ), (taille critique)
telle que les maxima de f soient atteints asymptotiquement avec la probabilite 1.

30

7.3.5 Taille critique


Supposons fixes lespace detat E, la fonction dadaptation f, les noyaux de transition de mutation et de
croisement , ainsi que les constantes positives gerant les trois operateurs a, b, et c.
Theor`eme 3. (Cerf 1993)
Il existe une valeur critique N , telle que lorsque la taille de la population de lalgorithme genetique
depasse N , lensemble f des maxima globaux de f, contient lensemble W .
Cette taille critique N , depend fortement de lespace detat E, de la fonction dadaptation f, des
noyaux de transition de mutation et de croisement , ainsi que des param`etres a, b, et c.
Une borne grossi`ere, mais lisible de N est :
N

aR + c(R 1)
min(a, b2 , c)

o`u :
R est le nombre minimal de transition permettant de joindre deux points arbitraires de E par mutation
et sont des param`etres dechelle :
= max {|f (i) f (j)| : i, j E} param`etre mesurant les e carts maximaux de f
= min {|f (i) f (j)| : i, j E, f (i) 6= f (j)} mesurant les e carts minimaux de f .
Il est interessant de relever que le resultat est obtenu sans faire intervenir loperateur de croisement, qui
nest donc pas indispensable. Lexploration par mutation et la selection suffisent a` assurer la convergence
vers f ([Zhi91]).
Ce premier resultat nous indique que d`es que N N , la suite des mesures stationnaires de la chane
(Xkl ) se concentre asymptotiquement sur f lorsque l tend vers linfini. On peut dans une e tape suivante
faire e voluer l , et donc lintensite des perturbations, en fonction de la generation. Nous obtenons alors une
l(k)
chane de Markov inhomog`ene (Xk ) dont le mecanisme de transition depend alors de la generation k.
7.3.6 Vitesse de convergence
Le principal probl`eme est de savoir si cette chane inhomog`ene peut avoir un comportement proche de
celui de la chane homog`ene (Xkl ), et si oui, sous quelles conditions. La vitesse de croissance de l(k) vers
linfini, est bien e videmment, au centre du debat.
Si l(k) crot lentement, alors la loi de Xk sera proche de la loi stationnaire (l(n)) de niveau de
perturbation (l(n)) associe a` l(n).
Si l(k) crot rapidement, alors Xk risque de rester piege dans des bassins dattraction ne correspondant pas aux maxima de f, lintensite des perturbations devenant trop faible pour pouvoir sen
e chapper.
La vitesse recherchee se situe entre ces deux extremes, permettant a` Xk de sechapper des mauvais
bassins dattraction (ne correspondant pas a` des maxima de f ) et de rester piege dans le bon (celui des
points de f ).
La vitesse de convergence de la suite l(k) est caracterisee par lexposant de convergence12, .
Definition 11. Lexposant de convergence de la suite l(k) est lunique reel tel que :
X

kN
12 Egalement

converge pour >

diverge pour <

l(k)

appele rayon de convergence.

31

Deux conditions pour la colonisation de f sont e galement donnees par Cerf, lune necessaire, lautre
suffisante.
Theor`eme 4. Condition necessaire pour la colonisation de f
Pour que :
xini E N

P [K

k K

[XTk ] f | X0 = xini ] = 1

cest a` dire, pour que la chane Zk = XTk des visites successives des attracteurs soit piegee dans f
apr`es un nombre fini K de transitions, il est necessaire que lexposant de convergence de la suite l(k)
appartienne a` lintervalle ], [ .
Les constantes et sont des caracteristiques du probl`eme,lintervalle ], [ est alors non vide pour
N assez grand.
Theor`eme 5. Condition suffisante pour la colonisation de f
Il existe deux constantes et telles que si lexposant de convergence de la suite l(k) appartient a`
lintervalle ], [ , alors :
i
h
ck f | X = xini = 1
xini E N
P K k K [XTk ] f , X
0

ce qui signifie quapr`es un nombre fini de transitions, nous avons presque surement, la situation suivante :
la chane XTk est piegee dans f ,
la population Xk contient toujours un ou des individus appartenant a` f .

7.3.7 En guise de conclusion


Dautres resultats existent, tant dans le travail de Cerf, que dans la litterature citee dans cette section. Ils
demandent cependant un investissement supplementaire dans la comprehension des outils developpes. Le
but de cette section e tait de convaincre le lecteur que letude theorique des algorithmes genetiques donne
(dej`a) de substantiels resultats. De nombreuses interrogations demeurent cependant concernant les relations
reelles entre les differents param`etres caracterisant lalgorithme genetique et les choix pratiques de ceux-ci.
Dans ce domaine, la pratique devance encore la theorie, meme si les mecanismes commencent a` e tre plus
clairs. Il reste e galement a` e tudier les nombreux raffinements (tels que le scaling, sharing, le clustering,
lelitisme) indispensables dans la pratique.

References
[AS92]

Jean-Marc Alliot and Thomas Schiex. Intelligence Artificielle et Informatique Theorique.


Cepadues, 1992. ISBN: 2-85428-324-4.

[BD93]

A. Bertoni and M. Dorigo. Implicit parallelism in genetic algorithms. Artificial Intelligence,


61(2):307314, 1993.

[BG87]

C.L Bridges and D.E Goldberg. An analysis of reproduction and crossover in a binary-coded
genetic algorithm. In Proceedings of the Second International Conference on Genetic Algorithm. ICGA, 1987.

[BG91]

C.L Bridges and D.E Goldberg. An analysis of multipoint crossover. In Proceedings of the
Foundation Of Genetic Algorithms. FOGA, 1991.

[BM93]

T.N Bui and B.R Moon. Hyperplane synthesis for genetic algorithms. In Proceedings of the
Fifth International Conference on Genetic Algorithm. ICGA, 1993.

32

[BM94]

T.N Bui and B.R Moon. Analysing hyperplane synthesis in genetic algorithms using clustered
schemata. Technical Report Cse-94-026, Dep. of Comp. Sci. and Engineering, Penn. State
University, March 1994.

[Bra90]

H. Braun. On traveling salesman problems by genetic algorithms. In 1st Workshop on Parallel


Problem Solving from Nature, October 1990.

[Cat90]

O. Catoni. Large deviations for Annealing. PhD thesis, Universite de Paris XI, 1990.

[Cer94]

R Cerf. Une Theorie Asymptotique des Algorithmes Genetiques. PhD thesis, Universite Montpellier II (France), 1994.

[CJ91]

R.J. Collins and D.R. Jefferson. Selection in massively parallel genetic algorithms. In Proceedings of the Fourth International Conference on Genetic Algorithms, 1991.

[CS88]

R.A Caruana and J.D Schaffer. Representation and hidden bias : Gray versus binary coding for genetic algorithms. In Proceedings of the Fifth International Conference on Machine
Learning, 1988.

[DAN94]

Nicolas Durand, Jean-Marc Alliot, and Joseph Noailles. Algorithmes genetiques : un croisement pour les problemes partiellement separables. In Proceedings of the Journees Evolution
Artificielle Francophones. EAF, 1994.

[Daw86]

Richard Dawkins. The blind watchmaker. Norton, New-York, 1986.

[Daw89]

Richard Dawkins. Lhorloger aveugle. Robert Laffont, 1989. Edition orignale [Daw86].

[DM92]

D Dasgupta and D.R McGregor. A structured genetic algorithm. Technical Report IKBS-8-92,
Dep. of Computer Science. University og Strathclyde, Clasgow. UK, 1992.

[FOW66]

L.J Fogel, A.J Owens, and M.J Walsh. Artificial Intelligence Through Simulated Evolution.
Wiley and sons. NY, 1966.

[FW83]

M.I Freidlin and A.D Wentzell. Random Perturbations of Dynamical Systems. Springer-verlag,
New-York, 1983.

[GBD+ 94] A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek, and V. Sunderam. Pvm 3 users
guide and reference manual. Technical report, Oak Ridge National Laboratory, 1994.
[GGRG85] J. Grefenstette, R. Gopal, B. Rosmaita, and D. Gucht. Genetic algorithms for the traveling
salesman problem. In 1st International Conference on Genetic Algorithms and their Applications, 1985.
[GL85]

D. Goldberg and R. Lingle. Alleles, loci, and the travelling salesman problem. In 1st International Conference on Genetic Algorithms and their Applications, 1985.

[Gol89a]

David Goldberg. Genetic Algorithms. Addison Wesley, 1989. ISBN: 0-201-15767-5.

[Gol89b]

D.E Goldberg. Genetic algorithms and walsh functions. part 1 and 2. Complex Systems,
3:129171, 1989.

[Gol89c]

D.E Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning. Reading
MA Addison Wesley, 1989.

[Gol91]

D.E Goldberg. Real-coded genetic algorithms, virtual alphabets and blocking. Complex Systems, 5:139167, 1991.

[GT82]

A. Griewank and Ph. L. Toint. On the unconstrained optimization of partially separable functions. In M. J. D. Powell, editor, Nonlinear Optimization 1981, pages 301312, London and
New York, 1982. Academic Press.
33

[HGL93]

A. Homaifar, S. Guan, and G. Liepins. A new genetic approach on the traveling salesman
problem. In Fifth International Conference on Genetic Algorithms, July 1993.

[HN93]

J. Horn and N. Nafpliotis. Multiobjective optimization using the nitched pareto genetic algorithm. Illigal Report 93005, University of Illinois at Urbana, 1993.

[Hol62]

John Holland. Outline for a logical theory of adaptive systems. Journal of the Association of
Computing Machinery, 3, 1962.

[IR92]

L Ingber and B Rosen. Genetic algorithms and very fast simulated re-annealing. Mathematical
Computer Modeling, 16(11):87100, 1992.

[LeF95]

Yann LeFablec. Optimisation par algorithmes gntiques parallles et multi-objectifs. Masters


thesis, Ecole Nationale de lAviation Civile (ENAC), 1995.

[MG92]

S.W Mahfoud and D.E Goldberg. Parallel recombinative simulated annealing : A genetic
algorithm. Illigal report 92002, University of Illinois, Urbana, IL 61801-2996, April 1992.

[Mic92]

Z Michalewicz. Genetic algorithms + Data Structures = Evolution Programs. Springer-verlag,


1992.

[MJ91]

Z Michalewicz and C.Z Janikov. Handling constraints in genetic algorithms. In Proceedings


of the Fourth International Conference on Genetic Algorithm. ICGA, 1991.

[Muh89]

H. Muhlenbein. Parallel genetic algorithms, population genetics and combinatorial optimization. In Proceedings of the Third International Conference on Genetic Algorithms, 1989.

[OSH89]

I. Oliver, D. Smith, and J. Holland. Permutation crossover operators on the travelling salesman
problem. In Second International Conference on Genetic Algorithms, July 1989.

[PLG87]

C. Pettey, M. Leuze, and J. Grefenstette. A parallel genetic algorithm. In Proceedings of the


Second International Conference on Genetic Algorithms, 1987.

[SGE91]

R.E Smith, D.E Goldberg, and J.A Earickson. SGA-C: A C-language implementation of a
Simple Genetic Algorithm, May 1991. TCGA report No. 91002.

[SPF93]

R.E. Smith, A.S. Perelson, and S. Forrest. Searching for diverse, cooperative populations with
genetic algorithms. Evolutionary Computation, 1(2):127149, 1993.

[Tro93]

A. Trouve. Parallelisation massive du recuit simule. PhD thesis, Universite de Paris XI, 1993.

[Vos91]

M.D Vose. Generalizing the notion of schema in genetic algorithms. Artificial Intelligence,
50:385396, 1991.

[Wri91]

A.H Wright. Genetic algorithms for real parameter optimization. In Proceeding of the Foundation Of Genetic Algorithms. FOGA, 1991.

[WSF89]

D. Whitley, T. Starkweather, and D. Fuquay. Scheduling problems and traveling salesman:


The genetic edge recombination operator. In Third International Conference on Genetic Algorithms, 1989.

[YG93]

X Yin and N Germay. A fast genetic algorithm with sharing scheme using cluster analysis
methods in multimodal function optimization. In Proceedings of the Artificial Neural Nets
and Genetic Algorithms, 1993.

[Zhi91]

Anatoly A. Zhigljavsky. Theory of Global Random Search. Kluwer Academic Plubishers,


1991.

34