210 likes | 372 Views
03 Juillet 2000. Université de Nice - Sophia Antipolis. 1. Etude de l'influence de la neutralité sur la dynamique des Algorithmes Génétiques. Francis BONNIN. Soutenance du stage de DEA. Encadreurs : Philippe Collard & Manuel Clergue. 03 Juillet 2000. 1. Introduction.
E N D
03 Juillet 2000 Université de Nice - Sophia Antipolis 1 Etude de l'influence de la neutralité sur la dynamique des Algorithmes Génétiques Francis BONNIN Soutenance du stage de DEA. Encadreurs : Philippe Collard & Manuel Clergue
03 Juillet 2000 1. Introduction Université de Nice - Sophia Antipolis 2 1. Introduction • Algos génétiques : inspirés de la nature • Algos génétiques : technique d’optimisation • Théorie biologique : la neutralité (dérive aléatoire > pression sélective) Objectif : étudier l’influence de la neutralité intrinsèque sur la dynamique d’un AG.
03 Juillet 2000 2. Etat de l’art Université de Nice - Sophia Antipolis 3 2. Etat de l’art 2.1 Algorithmes génétiques • Phénotype Génotype • Fitness valeur d’adaptation : sélection des individus • Action d’opérateurs génétiques
03 Juillet 2000 2.1. Algorithmes génétiques Décodage des solutions Croisement et mutation Evaluation des solutions Sélection des individus Université de Nice - Sophia Antipolis 4 • Population : ensemble d’individus • générations : • Critère d’arrêt : qualité des solutions, nombre de générations, individus identiques, ...
03 Juillet 2000 2.2. Concept de neutralité Université de Nice - Sophia Antipolis 5 2.2 Concept de neutralité • Points d’iso-fitness réseaux de neutralité • création de diversité • un nouvel opérateur : l’opérateur neutre • avantage de la mutation sans les inconvénients • difficulté : trouver l’opérateur pour une neutralité intrinsèque L’opérateur neutre est un moyen d’utiliser de la connaissance.
03 Juillet 2000 3. Présentation du travail Université de Nice - Sophia Antipolis 6 3. Présentation du travail 3.1 Méthodologie de travail • Documentation sur l’état de l’art • valider des hypothèses (ou observer un comportement à l’aide de simulations • programmation en C. Utilisation de la librairie SUGAL • étude de la neutralité de divers problèmes • tests volumineux car les AG sont non déterministes
03 Juillet 2000 3.2 La neutralité sur un exemple Université de Nice - Sophia Antipolis 7 3.2 La neutralité sur un exemple But : • trouver un problème contenant une neutralité intrinsèque • adapter le problème à l’AG • trouver un opérateur neutre efficace • trouver un opérateur de croisement adapté Etude du problème du TSP concentrique :
03 Juillet 2000 3.2 La neutralité sur un exemple tests tests tests Université de Nice - Sophia Antipolis 8 Mauvais résultats : pb : croisement mal adapté changement d’op de croisement. PMX croisement glouton L’opérateur de symétrie dégrade les performances : pb : mauvaise implémentation. Ajout d’une inversion. (adéquation entre le croisement et l’op neutre) Bons résultats. Amélioration grâce à l’op neutre
03 Juillet 2000 4. Travaux réalisés Université de Nice - Sophia Antipolis 9 4. Travaux réalisés Etude de fonctions simples : • Unitation • Alternation Etude du rôle du croisement dans la neutralité Etude de classes de fonctions paramétrées par le degré de neutralité • Fonctions d’Unitation Neutres • Fonctions d’Alternation Neutres Etude de fonctions plus complexes : • problème du TSP concentrique • problème des rectangles chromatiques
03 Juillet 2000 4.1 Fonction d’Unitation Après Inversion Chromosome d’origine Après Permutation 1 0 1 0 1 1 1 0 0 0 0 1 0 1 1 1 1 0 0 0 1 1 0 0 Fonction d'unitation (Inversion+Mutation): Fitness Max Fonction d'unitation (Inversion+Mutation) : Diversite Genotypique 1 1 Taux = 0.00 Taux = 0.00 Taux = 0.02 Taux = 0.02 0.9 0.9 Taux = 0.08 Taux = 0.08 Taux = 0.50 Taux = 0.50 Taux = 1.00 0.8 0.8 0.7 0.7 0.6 0.6 Entropie Fitness 0.5 0.5 0.4 0.4 0.3 0.3 0.2 0.2 0.1 0.1 0 0 0 50 100 150 200 0 50 100 150 200 Generation Generation Université de Nice - Sophia Antipolis 10 4.1 Fonction d’Unitation Les chromosomes 0100110 et 1110000 ont même fitness • croisement classique à un site • opérateurs neutres : permutation et inversion Taux = 1.00
03 Juillet 2000 4.1 Fonction d’Alternation Université de Nice - Sophia Antipolis 11 4.2 Fonction d’Alternation Les chromosomes 0100110 et 0010100 ont même fitness Plus difficile :Croisement identique. Opérateur neutre identique : utilisation d’un mapping pour passer de l’Alternation vers l’Unitation • épistasie • solutions de fitness voisines très différentes (000010101 et 000001010)
03 Juillet 2000 4.1 Fonction d’Alternation Université de Nice - Sophia Antipolis 12 Plus le taux d’inversion est élevé, plus la diversité est élevée Sans l’opérateur neutre, l’AG converge vers un minimum local
03 Juillet 2000 4.3 Rôle du croisement dans la neutralité Université de Nice - Sophia Antipolis 13 4.3 Rôle du croisement dans la neutralité La neutralité n’apporte aucune nouvelle solution Le croisement en crée grâce à des recombinaisons Tests sur l’unitation en faisant varier le taux de croisement :
03 Juillet 2000 4.4 Fonctions d’Unitation neutres Université de Nice - Sophia Antipolis 14 4.4 Fonctions d’Unitation neutres Les deltai sont calculés en fonction d’une probabilité p si p=0 : unitation (distribution binomiale) si p=1 : tous les chromosomes ont une fitness différente Distribution des réseaux de neutralité
03 Juillet 2000 4.4 Fonctions d’Unitation neutres Université de Nice - Sophia Antipolis 15 Opérateur neutre de l’unitation modifié. Tests pour différentes valeurs de p : Plus p est petit plus l’AG converge rapidement Il vaut mieux avoir de gros réseaux que de petits réseaux.
03 Juillet 2000 4.5 Fonctions d’Alternation neutres Université de Nice - Sophia Antipolis 16 4.5 Fonctions d’Alternation neutres Opérateur neutre du même type que l’Unitation neutre.
03 Juillet 2000 4.6 problème du TSP concentrique Université de Nice - Sophia Antipolis 17 4.6 problème du TSP concentrique NP-complet problème de minimisation codage sur les entiers opérateur neutre de symétrie croisement glouton Croisement des courbes
03 Juillet 2000 4.7 problème des rectangles chromatiques 1 1 1 2 2 0 2 2 2 1 0 2 2 0 1 1 2 2 1 2 0 0 1 1 2 0 0 1 2 2 2 2 2 1 1 1 1 0 2 0 2 0 1 0 2 2 1 2 1 0 grille avec 0 conflit grille avec 1 conflit Université de Nice - Sophia Antipolis 18 4.7 problème des rectangles chromatiques But : minimiser le nombre de rectangles ayant les 4 coins de la même couleur Problème étudié : un tableau de taille 10*10 avec 3 couleurscodage sur les symboles, ligne après ligne.Opérateur neutre : permutations de lignesCroisement : coupure horisontale du tableau 2 2 1 1 2 0 1 1 0 0 1 1 0 0 2 2 2 1 0 2 0 0 1 2 0 1 2 2 1 1 0 2 0 2 1 2 0 1 1 0 2 1 2 2 1 1 1 0 0 2 1 0 2 0 2 2 1 2 1 0 0 2 2 0 1 0 2 1 2 1 Echec des tests ... 1 2 0 1 0 1 0 2 2 2 1 0 0 2 2 0 1 0 2 1 2 1 1 0 0 2 0 0 2 1 Opérateur neutre augmenté par la connaissanceCroisement : coupure d ’un coin du tableau 7 conflits Inachevé ...
03 Juillet 2000 5. Conclusion Université de Nice - Sophia Antipolis 19 5. Conclusion • Bonne combinaison d’op neutre et de croisement • Gains en vitesse de convergence ou en qualité des solutions trouvées • Difficulté de trouver ces opérateurs • opérateur neutre = utilisation de la connaissance sur le problème • nécessaire pour être compétitif • utilité pratique de l’opérateur neutre. Perspectives : Tests sur des applications plus réalistesEtude plus approfondie sur le concept même de neutralité