1 / 25

Algorithmes génétiques

Algorithmes génétiques. Ivan Boelle Joffrey Tourret Ingénieurs 2000 – IR3. Algorithmes génétiques. Présentation Problèmes « non classiques » Algorithmes basés sur les heuristiques Algorithmes génétiques Fonctionnement Principes de base Optimisation Utilisation Modélisation Démos

armand
Download Presentation

Algorithmes génétiques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorithmes génétiques Ivan Boelle Joffrey Tourret Ingénieurs 2000 – IR3 Exposé Système - IR3

  2. Algorithmes génétiques • Présentation • Problèmes « non classiques » • Algorithmes basés sur les heuristiques • Algorithmes génétiques • Fonctionnement • Principes de base • Optimisation • Utilisation • Modélisation • Démos • Cas réels • Conclusion • Bibliographie Exposé Système - IR3

  3. Présentation • Problèmes « non classiques » • Pas de méthode pour résoudre • Déplacement d’un robot • Modélisation trop complexe • Comportement social • Évolution / Adaptation / Tolérance à l’erreur • Systèmes de perception, d’analyse Exposé Système - IR3

  4. Présentation • Une solution basée sur les heuristiques • Approche différente du problème • Recherche de la meilleure solution (moins mauvaise) • Exploration du domaine de solutions Exposé Système - IR3

  5. Présentation R = {x,y} tel que g( f(x,y) ) est optimal avec (x,y) є I • R: Meilleure solution • (x,y): Solution • I: Ensemble des solutions • f(x,y) : Fonction coût • g(): Fonction objectif Exposé Système - IR3

  6. Présentation • Une solution: les heuristiques • Principaux algorithmes • Brute force (Monte Carlo) • Hill climbers(gradient descent , annealing, tabu search) • Evolutionary algorithm (Genetic, ant colony, neurals networks) • Constraints algorithms (Local consistency, hybrid algorithms) Exposé Système - IR3

  7. Présentation • Algorithmes génétiques • Origine : Théorie Darwinienne de l’évolution • Struggle for life • Sélection naturelle • AG inspirés du paradigme • Terminologie identique (population, individu, chromosome, gène) • Traduction du phénomène • Opérateurs d’évolution • Sélection • Croisement • Mutation

  8. Présentation • Algorithmes génétiques • Gène et génotype • Crossing over

  9. Présentation • Algorithmes génétiques • Individus différents • Sélection des mieux adaptés • Hérédité

  10. Fonctionnement • Principes de base • Modélisation de la sélection naturelle • Etape d’évaluation • C’est donc une sélection artificielle • Intervention humaine

  11. Fonctionnement • Principes de base • Génération • Création d’un population aléatoire • Evaluation • Comparaison des individus • Sélection • On ne garde que les meilleurs • Croisement/Mutation • On les fait se reproduire / Évoluer • Retour à l’évaluation

  12. Fonctionnement Optimisations: Algorithmiques Critère d’arrêt Algorithmes hybrides (Hill climbers) Élitisme Configuration du degré mutation / croisements Modélisation Exposé Système - IR3 12

  13. Fonctionnement Optimisations: Implémentation Gestion mémoire Problèmes: Algorithmes avec de très nombreuses itérations Variables temporaires nombreuses Solutions: Utilisation de tampons (buffers) Stratégies de réutilisation Design pattern Flyweight Exposé Système - IR3 13

  14. Utilisation • Modélisation • Cas concret : Problème • f(x1, x2, x3, …, xn) = x1 * x2 + x3 - … / xn • f(x1, x2, x3, …, xn) = 1000 • x1 = ?, x2 = ?, x3 = ?, …, xn = ? • La suite des opérations aléatoirement choisie en début d’algorithme • Comment modéliser le problème ? • Que cherche-t-on ? • On définit la population, les individus, les gènes

  15. Utilisation • Modélisation • Population • Ensemble de suites de valeurs (solutions potentielles) • Individu • Suite de valeurs • Gène • Une des valeurs • On définit alors les opérateurs nécessaires à l’algorithme

  16. Utilisation • Modélisation • Evaluation • Calcul de f(x,y,z,…) avec les opérandes de la fonction • Ecart du résultat / résultat attendu • Sélection • On ne retient que les meilleurs solutions en les triant • Croisement • Deux suites parent donnent deux suites enfant • Le début de l’une devient le début de l’autre en coupant aléatoirement • Mutation • On modifie une des valeurs de certaines suites de manière aléatoire

  17. Utilisation • Modélisation générer population Pour i de 0 a nb_essai_max{ pour tous les individus{ evaluer(individu) } Si meilleur_individu == resultat_attendu{ arret } sélectionner(population) croiser(population) muter(population) } • Solution = meilleur_individu • Il est possible de ne pas exiger l’égalité et de se contenter d’une valeur approchée

  18. Utilisation Exemple JAVA avec JGAP JGAP: Algorithme génétique « fin » Problème: f(x,y,z,…) = x / y * z + … f(x,y,z,…) = 10000 x = ?, y = ? z = ?, … Modélisation Java: CalculChromosome CalculGene CalculFitnessFunction Operation Exposé Système - IR3 18

  19. Utilisation • Démo • Problème classique : le voyageur de commerce: • Recherche d’un cycle hamiltonien de plus courte distance dans un graphe • Comparaison de l’algorithme Monte Carlo avec un algorithme génétique.

  20. Utilisation Démo: biobloc Évolution  Problème: Apprendre a un robot a effectuer des opérations sans connaître ses capacités exactes. Modélisation subodorée: Robot « Biobloc » Fonctions d’adéquations simples (meilleur performance retenue) Exposé Système - IR3 20

  21. Utilisation Cas réels Total: Sismage Introduction: Réservoir pétroliers Problème: Petro Elastic Model  PEM(statiques, inconnus) = IP/IS mesurés Inconnus = PEM_Inverse(statiques,IP/IS) Problématiques supplémentaire: performances Exposé Système - IR3 21

  22. Conclusion Conclusion Algorithmes génétiques: Une solution basée sur l’optimisation Un algorithme évolutionniste Problématiques associées Modélisation Optimisation Algorithmique Implémentation Applications / Avenir Exposé Système - IR3 22

  23. Bibliographie • Démonstrations • http://www.caplet.com/MannaMouse.html • http://www.rennard.org/alife/french/gav.html • http://www.lalena.com/AI/Ant/Ant.aspx • http://math.hws.edu/xJava/GA/ • http://magnin.plil.net/anciensite/coursag/voyageur/voyageur.html Exposé Système - IR3

  24. Bibliographie • Sites explicatifs • http://cs.felk.cvut.cz/~xobitko/ga/ • http://en.wikipedia.org/ • http://animatlab.lip6.fr/papers/Mouret_LMag_05_ga.pdf • http://magnin.plil.net/spip.php?rubrique8 • http://fr.wikipedia.org/wiki/Algorithme_g%C3%A9n%C3%A9tique Exposé Système - IR3

  25. Bibliographie • Sites pour le développement / API • http://www.genetic-programming.org/ • http://jaga.sourceforge.net/ • http://jgap.sourceforge.net/ Exposé Système - IR3

More Related