2. 1. Les mécanismes naturels
2. Structure d’un algorithme évolutionniste
3. Un exemple sur un problème de classement
4. Avantages et inconvénients
5. Pour quelles utilisations
6. Conclusion
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 2 / 14
3. Les mécanismes naturels
La génétique
Patrimoine génétique hérité
Diversité
La théorie de l’évolution
Les mieux adaptés survivent, se reproduisent et transmettent leurs
gènes
Sélection naturelle fait le tri entre variations favorables ou non
Concept d’algorithme évolutionniste
S’inspire de ces mécanismes
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 3 / 14
4. Structure d’un algorithme évolutionniste
Sélection
Reproduction
Mutation
Evaluation
Nouvelle
population
Population initiale
+ Evaluation
Solution(s)
(Hall of fame)
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 4 / 14
5. Exemple : classement d’animaux
Jeu de données
Liste d’animaux sous la forme d’un fichier CSV
Nom de l’animal, 16 attributs (à plumes, vertébré, prédateur, nb
pattes...) et sa classe (mammifère, poisson, batracien...)
Objectif
Découvrir des règles de classement
SI attribut=valeur ET SI...ET SI...ALORS classe
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 5 / 14
6. Modèle informatique
Un individu = Une règle
. . . 0.8 1 [0,1] . . . 0.5 0 [1,0,0,0,0,0]
P Op V P Op V
Gène 12 Gène 16
SI nageoires = FAUX ET SI pattes <> 0
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 6 / 14
7. Modèle informatique
L’évaluation mesure la performance d’un individu
Pour chaque animal, on évalue la justesse du classement donné par
l’individu
Plus la règle s’avère pertinente, plus l’individu sera jugé performant
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 7 / 14
8. Modèle informatique
Reproduction
Parents
G1 G2 G3 G4 G5
Ga Gb Gc Gd Ge
Enfants
G1 G2 Gc Gd Ge
Ga Gb G3 G4 G5
Mutation
Avant
G1 G2 G3 G4 G5
Après
G1 G2 G3’ G4 G5
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 8 / 14
9. Exécution
0 10 20 30 40 50
G´en´eration
0.0
0.2
0.4
0.6
0.8
1.0Evaluation(fitness)
Moyenne
Maximum
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 9 / 14
10. Résultats
Individu numéro 1 (fitness = 1.0)
plumes = faux ET ovipare = vrai
ET lait = faux ET aquatique = vrai
ET vertébré = vrai ET poumons = vrai
ET nageoires = faux
Individu numéro 2 (fitness = 1.0)
ovipare = vrai ET aquatique = vrai
ET dents = vrai ET vertébré = vrai
ET nageoires = faux ET taille chat = faux
ET pattes <> 0
Individu numéro 3 (fitness = 1.0)
ovipare = vrai ET aquatique = vrai
ET dents = vrai ET vertébré = vrai
ET nageoires = faux ET taille chat = faux
ET pattes <> 8
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 10 / 14
11. Avantages et inconvénients
Les +
Résolution problèmes
complexes
Générique et adaptable
Parallélisation
Pas d’a priori
Les -
Paramétrage délicat
Part d’aléatoire
Pas optimal
Peut être assez lent
Quand s’arrêter ?
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 11 / 14
12. Pour quelles utilisations
Conception acoustique, aéronautique, électronique, mécanique
Jeu d’échecs
Tactiques militaires
Reconnaissance de formes
Robotique
Recherche de routes optimales
Nouvelles molécules chimiques
Marchés financiers
Marketing
Planning et allocation de ressources
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 12 / 14
13. Conclusion
Efficace dans la pratique
Complémentaire aux algorithmes "classiques"
Peut conduire à des solutions surprenantes/novatrices
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 13 / 14
14. Merci de votre attention
Questions ?
Stéphane Legrand (ENG221) Les algorithmes évolutionnistes Mai 2014 14 / 14