Académique Documents
Professionnel Documents
Culture Documents
évolutionnaires
Les AG
1
Exemples de la vie de tous les jours
2
Les grands opérateurs
3
Élaboration d’un algorithme génétique
4
5
Génération de la population initiale
• Un mécanisme de génération de la population initiale.
• Ce mécanisme doit être capable de produire une population d’individus non homogène
qui servira de base pour les générations futures.
• Le choix de la population initiale est important car il peut rendre plus ou moins rapide la
convergence vers l’optimum global.
• Dans le cas où l’on ne connaît rien du problème à résoudre, il est essentiel que la
population initiale soit répartie sur tout le domaine de recherche.
• Les opérateurs permettant de diversifier la population au cours des générations et
d’explorer l’espace d’état.
• L’opérateur de croisement recompose les gènes d’individus existant dans la population,
• L’opérateur de mutation a pour but de garantir l’exploration de l’espace d’état., pour
améliorer la qualité de la nouvelle génération.
• Les paramètres de dimensionnement : taille de la population, nombre total de
générations, critère d’arrêt, probabilités d’application des opérateurs de croisement
et de mutation.
6
Sélection
• On sélectionne les meilleurs individus en fonction de leur évaluation ou fitness,
• Il existe plusieurs méthodes de sélection.
• Sélection par rang :
• Il s'agit également d'implémenter une roulette, mais cette fois-ci les secteurs de la roue ne sont plus
proportionnels à la qualité des individus, mais à leur rang dans la population triée en fonction de la qualité des
individus.
• Il faut trier la population en fonction de la qualité des individus puis leur attribuer à chacun un rang. Les
individus de moins bonne qualité obtiennent un rang faible (à partir de 1). Et ainsi en itérant sur chaque individu
on finit par attribuer le rang N au meilleur individu (où N est la taille de la population).
• En fait, si N individus constituent la population, la sélection appliquée consiste à conserver les k meilleurs individus
(au sens de la fonction d'évaluation),
7
Sélection
• Sélection par roulette:
• La sélection des individus par le système de la roulette s'inspire des roues de
loterie.
• Les tirages des individus sont ainsi pondérés par leur qualité. Et presque
logiquement, les meilleurs individus ont plus de chances d'être croisés et de
participer à l'amélioration de notre population.
8
Sélection
• Sélection par tournoi:
• Le principe de la sélection par tournoi augmente les chances pour les individus de médiocre qualité de
participer à l'amélioration de la population.
• Le principe est très rapide à implémenter. Un tournoi consiste en une rencontre entre plusieurs individus
pris au hasard dans la population.
• Le vainqueur du tournoi est l'individu de meilleure qualité.
• Vous pouvez choisir de ne conserver que le vainqueur comme vous pouvez choisir de conserver les deux
meilleurs individus ou les trois meilleurs.
• À vous de voir, selon que vous souhaitez créer beaucoup de tournois, ou bien créer des tournois avec
beaucoup de participants ou bien mettre en avant ceux qui gagnent les tournois haut la main. Vous pouvez
faire participer un même individu à plusieurs tournois. Une fois de plus, vous êtes totalement libre quant à
la manière d'implémenter cette technique de sélection.4. L'élitisme
• Sélection uniforme:
10
Croisement
11
Mutation
• Un procédé de mutation est utilisé pour diversifier les solutions au fur et à mesure des générations.
• La mutation est importante pour éviter de tomber dans le problème de l’optimum local, c’est-à-dire
éviter de rester « coincé » autour d'une solution pas forcément optimale.
• Cette mutation consiste à modifier aléatoirement une petite partie d’un caractère dans certains
individus de la nouvelle génération.
• Cette étape est effectuée avec une très faible probabilité, et consiste par exemple à échanger deux
villes consécutives dans un individu
12
Mutation
• Dans certains cas, après chaque croisement et mutation, une
étape d’optimisation des descendants est appliquée.
• L’utilisation d’un algorithme de type recherche locale est adapté
pour effectuer cette optimisation rapidement.
• Nous parlerons alors d’algorithme mimétique.
• L’algorithme mimétique est intéressant pour obtenir plusieurs
solutions de bonne qualité.
• En effet, à la fin de l’algorithme, la population est constituée des
meilleures solutions trouvées.
13
Test d'arrêt
• Puisque c’est un algorithme itératif, Différents critères d'arrêt
peuvent être choisis. Les plus courants pour arrêter la processus
:
• Le nombre de générations que l’on souhaite exécuter peut être fixé a priori. C’est ce
que l’on est tenté de faire lorsque l’on doit trouver une solution dans un temps limité.
• L’algorithme peut être arrêté lorsque la population n’évolue plus ou plus suffisamment
rapidement.
• Après qu’un certain nombre d'itérations ou un certain temps de calcul aient été
effectuées sans qu'il y ait eu d'amélioration de la population (la solution ).
14
Problème du voyageur de commerce (1)
15
Problème du voyageur de commerce (2)
Un voyageur de commerce doit visiter une et une seule fois un nombre
fini de villes et revenir à son point de départ. On veut trouver le chemin
de visite des villes qui minimise la distance totale parcourue par le
voyageur. En théorie des graphe, e problème du voyageur de commerce
consiste à calculer un cycle hamiltonien de coût minimal dans G.
• On va Résoudre le TSP Suivant par l’Algorithme Génétique:
16
Problème du voyageur de commerce (3)
• Le problème du voyageur de commerce peut être modélisé à l’aide d’un graphe complet pondéré,
• Comme il existe une arête entre chaque paire de sommets, on dit que ce graphe est complet.
• Chaque sommet représente une ville,
• une arête représente le passage d’une ville à une autre,
• Le poids pouvant représente une distance, un temps de parcours ou encore un coût. Notons que les
poids ne sont pas nécessairement symétriques, (dans notre cas, on les considère symétriques).
• Le graphe peut être représenté par une matrice de poids. En lignes figurent les sommets d’origine
des arêtes et en colonnes les sommets de destination ;
• le poids sur chaque arête apparaît à l’intersection de la ligne et de la colonne correspondantes.
17
- Donner la matrices d’incidences ou de poids du modèle suivant:
18
19
Les paramètres a fixer au début de l’AG
• Notre objectif: l’inconnue est le chemin hamiltonien minimal: Une liste dans un certain ordre contenant tous les
sommets: x
• Structuration du chromosome: comment représenter les informations du problème?
21
Les paramètres choisis
• On réitère jusqu’à atteindre le teste d’arrêt:
• Exemple: Test d’arrêt nombre de générations = 50.
• Génération initiale : Dimensionnement n=5,
• Fonction d’évaluation: minimisation de la distance du chemin parcouru,
• Dimensionnement :nombre d’individus sélectionnés: N =3
• Operateur de croisement: prendre les 2 gènes de partir du 1 gènes selon la
probabilité Pc=0.8.
• Opérateur de mutation: muter le 3 gène selon la probabilité Pm=0.001
• Test d’arrêt nombre de générations = 50,
22