La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 Algorithmes génétiques David E. Goldberg, Genetic algorithms in Search, Optimization and Machine Learning, Addison-Wesley,

Présentations similaires


Présentation au sujet: "1 Algorithmes génétiques David E. Goldberg, Genetic algorithms in Search, Optimization and Machine Learning, Addison-Wesley,"— Transcription de la présentation:

1 Herve.Frezza-Buet@supelec.fr 1 Algorithmes génétiques David E. Goldberg, Genetic algorithms in Search, Optimization and Machine Learning, Addison-Wesley, 1989

2 Herve.Frezza-Buet@supelec.fr 2 Téléphoner à la campagne

3 Herve.Frezza-Buet@supelec.fr 3 Téléphoner à la campagne

4 Herve.Frezza-Buet@supelec.fr 4 Téléphoner à la campagne

5 Herve.Frezza-Buet@supelec.fr 5 Téléphoner à la campagne

6 Herve.Frezza-Buet@supelec.fr 6 Téléphoner à la campagne

7 Herve.Frezza-Buet@supelec.fr 7 Téléphoner à la campagne maximum... …local !

8 Herve.Frezza-Buet@supelec.fr 8 Recherche opérationnelle Quelques définitions

9 Herve.Frezza-Buet@supelec.fr 9 Définition d'un problème Espace des solutionsFitness (à optimiser)"La" solution

10 Herve.Frezza-Buet@supelec.fr 10 Résolution ? n Se déplacer dans l'espace des solutions. n Les évaluer en cours de route. n Retenir la meilleure qu'on a trouvée. n … mais comment se déplacer ?

11 Herve.Frezza-Buet@supelec.fr 11 Résolution ? n Risquer l'exploration d'une solution tirée au hasard ? n Améliorer les solutions connues ? Conflit exlporation / exploitation

12 Herve.Frezza-Buet@supelec.fr 12 Tout explorer n C'est la seule façon pour être sûr de trouver la meilleure solution possible. n Ca peut être impossible, même pour des problèmes relativement simples, pour lesquels l'espace des solutions est énorme.

13 Herve.Frezza-Buet@supelec.fr 13 Suivre le gradient n C'est ce qu'on a fait avec le téléphone, à la campagne. n C'est ce que fait le chien qui retrouve la source d'une odeur. n Pb : Maxima locaux.

14 Herve.Frezza-Buet@supelec.fr 14 Recuit simulé n On exploite (gradient), mais on s'autorise à faire des "grands pas" de temps en temps (exploration). n Paramètre de température. n Inspiration de la physique statistique.

15 Herve.Frezza-Buet@supelec.fr 15 Algorithme génétiques n On se dote d'une population de solutions. n Pertinent si, ayant deux solutions moyenne, on peut créer une nouvelle solution, meilleure, en combinant les avantages des deux. n Lien avec la génétique...

16 Herve.Frezza-Buet@supelec.fr 16 Jouer à tétris ! Par une approche évolutionniste

17 Herve.Frezza-Buet@supelec.fr 17 Le problème à résoudre n "Lâcher" les pièces (tétris) et faire une forme compacte. n Problème de placement.

18 Herve.Frezza-Buet@supelec.fr 18 Fitness n Elle définit le problème à résoudre. n On a le choix ! 12

19 Herve.Frezza-Buet@supelec.fr 19 Codage d'une solution n On a aussi le choix, mais il faut que ce codage possède une "bonne" propriété. n Qu'est-ce qu'une solution possible ? –Choisir un ordre d'insertion des pièces –Insertion : choisir pour chaque pièce une colonne et une orientation.

20 Herve.Frezza-Buet@supelec.fr 20 Codage d'une solution n Insertion d'une pièce : on numérote les possibilités. n Ex : pour 12310111218

21 Herve.Frezza-Buet@supelec.fr 21 Codage d'une solution n Insertion d'une pièce : on numérote les possibilités. 183026321481630349

22 Herve.Frezza-Buet@supelec.fr 22 Choisir une solution au hasard 183026321481630349 1032910147227131 Taille de l'espace des solutions : (1 2... 10) 34 30 16 9 8 14 32 26 30 18 = 26820125487267840000 Les compter à 2GHz, ça prend environs 425 ans !

23 Herve.Frezza-Buet@supelec.fr 23 Population

24 Herve.Frezza-Buet@supelec.fr 24 Individu n Une solution possible est appelée un individu. Il a : Un code Un "aspect" Une valeur 12 11110143410736 Génotype / Chromosome Phénotype Fitness

25 Herve.Frezza-Buet@supelec.fr 25 Individu Génotype Phénotype Fitness

26 Herve.Frezza-Buet@supelec.fr 26 Population n On se donne une foule d'individus pour explorer l'espace des solutions… n … mais leur nombre reste ridiculement petit.

27 Herve.Frezza-Buet@supelec.fr 27 Reproduction / Sélection

28 Herve.Frezza-Buet@supelec.fr 28 Reproduction/sélection n Population : 10 individus A,B…H n Chacun est une solution, dont on évalue la fitness. n On détermine les 10 nouveaux individus par sélection probabiliste sur la fitness.

29 Herve.Frezza-Buet@supelec.fr 29 Reproduction/sélection Génération nA 9 B 2 C 4 D 9 E 1 F 7 G 3 H 1 Génération n+1F 7 D 9 A 9 D 9 B 2 A 9 A 9 G 3 Génération n+2D 9 A 9 A 9 A 9 A 9 G 3 A 9 D 9 Génération n+3D 9 A 9 A 9 A 9 A 9 A 9 A 9 A 9

30 Herve.Frezza-Buet@supelec.fr 30 Reproduction/sélection n Tendance à l'uniformité (clones du meilleur). n Pas de création de solution nouvelle.

31 Herve.Frezza-Buet@supelec.fr 31 Mutation

32 Herve.Frezza-Buet@supelec.fr 32 Mutation n A chaque génération, tout individu a une probabilité pm d'être un peu modifié aléatoirement. n Ca ressemble à un pas au hasard dans la campagne. n Dépend du codage. Pour tétris, on choisira de permuter deux pièces ou de changer un numéro d'insertion.

33 Herve.Frezza-Buet@supelec.fr 33 Mutation 11110143410736 F 7 = 11110143410736 F 7 = 111101422410736 F' 11 = 110143410736 F' 3 = Ou

34 Herve.Frezza-Buet@supelec.fr 34 Crossing-over C'est ce qui différencie les algorithmes génétiques du reste de la recherche opérationnelle.

35 Herve.Frezza-Buet@supelec.fr 35 Crossing-over n On fait des couples dans la population. n Les couples d'échangent des morceaux de chromosomes à chaque génération, avec une probabilité pc n Codage et Crossing-over doivent rendre compte du fait qu'on peut assembler des morceaux de solution.

36 Herve.Frezza-Buet@supelec.fr 36 Crossing-over pour tétris n Pour un des partenaires du couple, on définit un morceau de chromosome. n On échange les pièces choisies avec l'autre partenaire.

37 Herve.Frezza-Buet@supelec.fr 37 Crossing-over pour tétris 11110143410736 F 7 = 48 35 9 8 12 13111 G 5 = Site de crossing-over

38 Herve.Frezza-Buet@supelec.fr 38 Crossing-over pour tétris 1 10 73 1114346 F 7 = 48 35 9 8 12 13111 G 5 =

39 Herve.Frezza-Buet@supelec.fr 39 Crossing-over pour tétris 1 10 73 1114346 F 7 = 8 3 12 131 459811 G 5 = ? ? ? ? ? ? ? ? ? ?

40 Herve.Frezza-Buet@supelec.fr 40 Crossing-over pour tétris 1 10 73 1114346 F 7 = 8 3 12 131 459811 G 5 =

41 Herve.Frezza-Buet@supelec.fr 41 Crossing-over pour tétris 1 10 73 1114346 F 7 = 8 3 12 131 459811 G 5 =

42 Herve.Frezza-Buet@supelec.fr 42 Crossing-over pour tétris 1 10 73 1114346 F 7 = 8 3 12 131 459811 G' 15 =

43 Herve.Frezza-Buet@supelec.fr 43 Crossing-over pour tétris 1 10 73 1114346 = 8 3 12 131 45 9 8 11 G' 15 = F 7

44 Herve.Frezza-Buet@supelec.fr 44 Crossing-over n Si une solution est moyenne car elle résout une partie du problème… n … elle peut recevoir une partie complémentaire par crossing-over (recombinaison) n Le crossing-over peut aussi être destructif ! (mais il y aura des clones non altérés dans la population…)

45 Herve.Frezza-Buet@supelec.fr 45 Résumé n Reproduction n Crossing-over n Mutation

46 Herve.Frezza-Buet@supelec.fr 46 Fitness sharing Création de niches écologiques pour favoriser le diversité de la population.

47 Herve.Frezza-Buet@supelec.fr 47 Fitness sharing n But : maintenir la diversité, lutter contre l'uniformisation de la reproduction. n Moyen : limiter les ressources...

48 Herve.Frezza-Buet@supelec.fr 48 Fitness sharing n On définit une fonction s de similarité génotypique sur les individus. –s(A,B)=1 si A=B –s(A,B)=0 si A très différent de B –s(A,B)=.5 si A et B se ressemblent moyennement, –...

49 Herve.Frezza-Buet@supelec.fr 49 Fitness sharing n Avant la reproduction, on divise les fitness de A par la somme des s(A,I), pour tous les individus I de la population. n S'il y a n clones de A, la fitness de chacuns d'eux est divisée par n, l'union ne fait plus la force.

50 Herve.Frezza-Buet@supelec.fr 50 Fitness sharing n Interprétation : la fitness accordée à une solution est une ressource finie, les solutions identiques se la partagent. n C'est comme si les devait se partager la qualité de réception.

51 Herve.Frezza-Buet@supelec.fr 51 Fitness sharing 2 3 Sans partage

52 Herve.Frezza-Buet@supelec.fr 52 Fitness sharing 2 3 Avec partage Niches écologiques

53 Herve.Frezza-Buet@supelec.fr 53 Programmation génétique

54 Herve.Frezza-Buet@supelec.fr 54 Programmation génétique n On n'évolue pas le code qui décrit l'individu, mais un programme, à partir duquel il se construit. C'est sur l'individu construit qu'on évalue la fitness. n C'est ce qu'on a fait ici. n Exemple : Frédéric Gruau, 1995

55 Herve.Frezza-Buet@supelec.fr 55 Discussion Liens avec la biologie ? Effet Baldwin ? Catastrophes évolutionistes ?

56 Herve.Frezza-Buet@supelec.fr 56


Télécharger ppt "1 Algorithmes génétiques David E. Goldberg, Genetic algorithms in Search, Optimization and Machine Learning, Addison-Wesley,"

Présentations similaires


Annonces Google