Professional Documents
Culture Documents
G. BENCHEIKH
SOMMAIRE
Introduction aux mtaheuristiques Algorithme Gntique Principe de lalgorithme Les tapes de lalgorithme
Codage Gnration de la population initiale valuation Slection Croisement Mutation Test darrt
2
Application
Les mtaheuristiques sont des mthodes rapproches de recherche dune solution de bonne qualit dun problme donne Des mthodes stochastiques, do leur robustesse face aux problmes de grande taille, Ne ncessitent pas de conditions sur la fonction objectif optimiser, Elles sont inspires de la vie relle : biologie (Algorithme gntique, Colonie de fourmis) physique (Recuit simul),
voluer une seule solution en se dplaant de cette solution vers une autre voisine au cours des itrations (Recherche Taboue, Recuit Simul)
4
ALGORITHME GNTIQUE
LAlgorithme Gntique est une Mtaheuristique de population, D John Holland de lUniversit de Michigan en 1975 Inspir du principe de lvolution naturelle base sur le principe de slection naturelle de DARWIN
Les individus les plus aptes survivre (les meilleurs ) se reproduiront plus souvent et auront plus de descendants. Ainsi, ladaptation de lensemble des individus de la population sera augmente, les gnes plus efficaces deviendront plus frquents et la population samliore.
ALGORITHME GNTIQUE
Simulation du principe de lvolution naturelle Dfinir un ensemble dindividus appel Population o chaque individu reprsente une solution du problme trait. Appliquer un ensemble doprateurs de reproduction Mettre jour la population Rpter ces tapes jusqu vrifier un certain test darrt.
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 7
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 8
ALGORITHME GNTIQUE
Codage
Le codage permet de dfinir une reprsentation adquate dune solution. On dsigne par individu une solution du problme. Il est sous forme dune chane ou de plusieurs chanes appel (s) chromosome(s). Chaque chromosome est rang sous forme dune chane dont les composants sont appels gnes. Un ensemble dindividus constitue une population, elle peut tre vue, donc, comme un sous ensemble de lespace de recherche du problme tudi.
ALGORITHME GNTIQUE
Exemple de Codage
10
ALGORITHME GNTIQUE
Exemple de Codage
R M C
A
11
ALGORITHME GNTIQUE
Exemple de Codage
Travail 3
Le problme consiste trouver un ordre de passage dun ensemble de travaux sur une machine unique
Temps
Travail 2
6
12
ALGORITHME GNTIQUE
Exemple de Codage
Problme daffectation
Position du problme : Affecter un ensemble de personnes un ensemble de poste dans le but de maximiser la satisfaction des employs.
A B C D 1 2 3 4
2
A
1
D
4
C
5
B
3
F
6
E
13
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 14
ALGORITHME GNTIQUE
La population initiale
Individu 3
Individu 4 Individu N
Espace de recherche
Population
15
ALGORITHME GNTIQUE
La
population
initiale
mais
est
souvent
le
gnre
alatoirement,
lorsque
problme
population.
16
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 17
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution
Non
Stop?
Remplacement
Oui
Meilleur individu 18
ALGORITHME GNTIQUE
Associer, chaque individu de la population, une valeur numrique, appele Force ou Fitness, La fitness permet de dterminer la qualit de la solution reprsente par cet individu si cette dernire prend une grande valeur alors, lindividu correspondant est dit plus adapt au problme et il a plus de chance dtre slectionn pour les tapes de reproduction. La Fitness de lindividu dpend fortement de lobjectif atteindre en ce point.
19
ALGORITHME GNTIQUE
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 21
ALGORITHME GNTIQUE
Slection
Choisir, parmi les individus de la population, un ensemble de gniteurs (individus) qui seront susceptibles de donner de meilleurs individus. Le nombre de gniteurs est dtermin par la probabilit de croisement (ou de mutation) qui est lune des donnes dun algorithme gntique. La slection peut tre dterministe, par tournois ou proportionnelle.
22
ALGORITHME GNTIQUE
Slection
Slection dterministe : consiste choisir un sous ensemble compos des meilleurs individus parmi la population La slection par tournois est une mthode de slection qui, ne demande pas une grande quantit de calcul. Elle consiste choisir alatoirement un nombre k dindividus dans la population et de slectionner lindividu qui est de meilleure qualit. Ce processus est rpt jusqu atteindre le nombre ncessaire dindividus reproduire. Slection proportionnelle : Les individus sont slectionns selon leurs fitness. Les deux mthodes les plus connues sont la slection par roulette (Roulette Wheel Selection RWS) et la slection dchantillonnage stochastique universel (Stochastic Universal Selection SUS).
23
ALGORITHME GNTIQUE
Slection proportionnelle
Pi =
fi
i 1
fi
24
ALGORITHME GNTIQUE
Slection proportionnelle
Slection par roulette : La slection dun individu revient choisir alatoirement un point k du segment [0 , 1] : Lindividu sur lequel est tomb le point k est alors slectionn.
I1 0 I2 I3 k I4 I5 I6 1
Slection dchantillonnage stochastique universel : les individus sont choisis par un ensemble de points quidistants.
I1 0 I2 I3 I4 I5 I6
25
ALGORITHME GNTIQUE
Elle reprsente le pourcentage des individus slectionner par rapport la taille de la population. Si par exemple, Pc = 0.8, dans certains cas, il suffit de slectionner 80% des individus de la population, dans dautre cas, les individus sont slectionns tant que la somme de leur probabilit Pi est infrieure 0.8. Avec fi P i n fi
i 1
26
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 27
ALGORITHME GNTIQUE
Ltape
Reproduction
Le croisement La mutation
Ils
ont le rle dexplorer lespace de recherche en visitant de nouveaux individus partir de ceux qui ont t slectionns
28
ALGORITHME GNTIQUE
Oprateur
Croisement
On
ALGORITHME GNTIQUE
Croisement
Croisement
1-point :
Enfant 2
30
ALGORITHME GNTIQUE
Croisement
Croisement
2-point :
2 points de croisement choisis alatoirement
Enfant 1
Enfant 2
31
ALGORITHME GNTIQUE
Croisement
Croisement
k-point :
Parent 1 Parent 2
Aprs Croisement :
Enfant 1
Enfant 2
32
ALGORITHME GNTIQUE
Croisement
Croisement
uniforme :
Parent 1 Parent 2
Masque de saisie
Enfant 1
Enfant 2
33
ALGORITHME GNTIQUE
Croisement
Cas o le croisement produit un individu qui reprsente une solution non ralisable (exemple de voyageur de commerce)
A T T R R M C F M A F C O O
Parent 1 Parent 2
Aprs le croisement
A T
T R
R M
C F
A M
C F
O O
Enfant 1
Enfant 2
Les deux enfants ne sont pas ralisables : la ville A par exemple figure deux fois dans la tourne et la ville M ny figure pas.
34
ALGORITHME GNTIQUE
On
Croisement
Le
On copie la premire partie du premier parent on complte par les villes qui manquent mais dans lordre du 2me parent
A T R C
Enfant 1
35
ALGORITHME GNTIQUE
On
Croisement
Le
On copie la premire partie du premier parent on complte par les villes qui manquent mais dans lordre du 2me parent
A T R C M
Enfant 1
36
ALGORITHME GNTIQUE
On
Croisement
Le
On copie la premire partie du premier parent on complte par les villes qui manquent mais dans lordre du 2me parent
A T R C M F
Enfant 1
37
ALGORITHME GNTIQUE
On
Croisement
Le
On copie la premire partie du premier parent on complte par les villes qui manquent mais dans lordre du 2me parent
A T R C M F O
Enfant 1
38
ALGORITHME GNTIQUE
Une
Mutation
reproduction utilisant uniquement loprateur de croisement peut tre pige dans des optimums locaux. gnes des enfants sont limits par les gnes des parents, et si un gne nest pas prsent dans la population initiale (ou sil disparat cause des reproductions), il ne pourra jamais se dvelopper chez les descendants.
Les
39
ALGORITHME GNTIQUE
Loprateur
Mutation
de mutation a pour rle dassurer la diversit des solutions pour sortir des minima locaux. Elle consiste modifier un ou plusieurs gnes dun individus slectionn par ltape de slection. existe plusieurs types de mutation :
40
Il
ALGORITHME GNTIQUE
Modification
1 Mutation 0 0 1 0 1 0 1
Mutation
Permutation
41
ALGORITHME GNTIQUE
Permutation
Mutation
42
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 43
ALGORITHME GNTIQUE
Aprs
Remplacement
ltape de reproduction, de nouveaux individus sont crs. que la population garde le mme nombre dindividus. Il faut choisir les individus garder de ceux qui seront rejets de la population, cest le rle de ltape de remplacement. avons le choix entre remplacer les parents par les enfants ou de garder les meilleurs parmi les parents et les enfants.
Pour
Nous
44
ALGORITHME GNTIQUE
Schma gnral
Codage
Slection
Reproduction
Evolution Non
Stop?
Remplacement
Oui
Meilleur individu 45
ALGORITHME GNTIQUE
Il peut tre soit :
Atteindre
Atteindre
Critre darrt
Obtenir
obtenue.