slides - Equipe MAGE
Transcription
slides - Equipe MAGE
Idol-Guided Backtracking Search Optimization Algorithm Mathieu Brévilliers, Omar Abdelkafi, Julien Lepagnot, Lhassane Idoumghar Équipe MAGE, Laboratoire LMIA, Université de Haute-Alsace 25ème Journée Evolutionnaire Thématique 12 juin 2015 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 1 / 24 Présentation personnelle I Profil initial : géométrie algorithmique I Thèse en 2008 I I Poste de MCF depuis 2009 I I Construction de la triangulation de Delaunay de segments par un algorithme de flip Equipe MAGE (Modélisation et Algorithmique GEométrique) Conversion thématique depuis septembre 2014 I I Métaheuristiques sur GPU Premier contact avec la communauté EA : JET 25 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 2 / 24 Objectifs 1. Proposer un nouveau concept dans le domaine des algorithmes évolutionnaire (Idol). 2. Appliquer ce nouveau concept pour améliorer un algorithme évolutionnaire récent (BSA ⇒ Idol-Guided BSA). 3. Comparer cette approche avec des algorithmes de la littérature (CMAES, SPSO 2011). M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 3 / 24 Plan Backtracking Search Optimization Algorithm (BSA) Idol-Guided BSA algorithm Etude expérimentale M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 4 / 24 Backtracking Search Optimization Algorithm (BSA) Plan Backtracking Search Optimization Algorithm (BSA) Idol-Guided BSA algorithm Etude expérimentale M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 5 / 24 Backtracking Search Optimization Algorithm (BSA) Algorithme BSA P. Civicioglu,“Backtracking Search Optimization Algorithm for numerical optimization problems”. Applied Mathematics and Computation, Volume 219, Issue 15, 1 April 2013, Pages 8121-8144. I Algorithme évolutionnaire pour résoudre des problèmes d’optimisation continue I Particularités I I I Mémoire pour conserver une population d’une génération précédente Un seul paramètre, qui contrôle le taux maximal de croisement Structure générale 1. Initialisation Tant que les conditions d’arrêt ne sont pas satisfaites faire 2. Sélection 1 3. Mutation 4. Croisement 5. Vérification 6. Sélection 2 Fin M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 6 / 24 Backtracking Search Optimization Algorithm (BSA) Algorithme BSA 1. Initialisation I La population initiale Pop de N individus à D dimensions est générée aléatoirement dans l’espace de recherche I Idem pour la population historique initale oldPop I Les individus de Pop sont évalués I On mémorise le meilleur individu rencontré Best 2. Sélection 1 I oldPop est remplacée par Pop avec une probabilité de 0, 5 I Les individus de oldPop sont permutés aléatoirement 3. Mutation I Mutant = Pop + 3 × randN × (oldPop − Pop) I randN : généré aléatoirement avec une distribution normale standard N(0, 1) M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 7 / 24 Backtracking Search Optimization Algorithm (BSA) Algorithme BSA 4. Croisement I I I Génération d’un masque binaire map de taille N × D pour croiser Mutant et Pop 2 stratégies différentes appliquées avec une probabilité de 0,5 Stratégie 1 I I I I Stratégie 2 I I Pour chaque individu, on sélectionne aléatoirement dmixRate × randU × De dimensions qui subiront le croisement mixRate : paramètre de contrôle choisi dans [0, 1] randU : généré aléatoirement dans [0, 1] Pour chaque individu, 1 dimension est choisie aléatoirement pour subir le croisement Si map[i][j] = 1, I I alors Trial[i][j] = Pop[i][j], sinon Trial[i][j] = Mutant[i][j]. M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 8 / 24 Backtracking Search Optimization Algorithm (BSA) Algorithme BSA 5. Vérification I Pour chaque individu de Trial I I Si une dimension est hors de l’espace de recherche Alors elle est re-générée aléatoirement dans l’espace de recherche 6. Sélection 2 I I I Les individus de Trial sont évalués L’individu Trial[i] remplace Pop[i] s’il est plus performant On met à jour le meilleur individu rencontré Best M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 9 / 24 Backtracking Search Optimization Algorithm (BSA) Paramétrage pour le benchmarking I Taille de la population : N = 30 I Taux de croisement : mixRate = 1 I Conditions d’arrêt : I I I I I Valeur absolue de la solution inférieure à 10-16 Pas d’amélioration après 200 000 appels à la fonction d’évaluation Le nombre d’appels à la fonction d’évaluation atteint 2 000 000 Le nombre maximum de générations est atteint Nombre d’exécutions : nbRun = 30 ⇒ Des tests statistiques montrent que BSA est généralement meilleur que SPSO 2011, CMAES, ABC, JDE, CLPSO, SADE M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 10 / 24 Idol-Guided BSA algorithm Plan Backtracking Search Optimization Algorithm (BSA) Idol-Guided BSA algorithm Etude expérimentale M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 11 / 24 Idol-Guided BSA algorithm Concept général I Une idole I I I I I I a un haut niveau de compétence/performance, influence les générations futures, n’est pas unique, appartient au présent ou au passé, peut être oubliée et remplacée. Intégration dans un algorithme évolutionnaire I I Idoles = 2ème population Mises à jour systématiques I I I à chaque génération avec des individus plus performants Evolution : les idoles influencent les individus courants M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 12 / 24 Idol-Guided BSA algorithm Intégration dans BSA I Idoles = population historique de BSA I Mise à jour individuelle de chaque idole à chaque génération I I L’individu i remplace l’idole i s’il est meilleur Evolution selon le schéma de BSA I Mutation : l’idole i influence l’individu i avec Mutant = Pop + 3 × randU × (idolPop − Pop) M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 13 / 24 Idol-Guided BSA algorithm Stratégie anti-stagnation I Constat dans BSA : I I I Budget de 2 000 000 d’évaluations Mais stop après 200 000 évaluations sans amélioration Notre proposition : épuiser le budget I Re-générer aléatoirement 2/3 des individus après 4 000 générations sans amélioration M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 14 / 24 Idol-Guided BSA algorithm Idol-Guided BSA - Initialiser aléatoirement Pop et idolPop. - Evaluer Pop et idolPop. - Initialiser Best. Tant que la condition d’arrêt n’est pas satisfaite faire - Selection 1 : Pop[i] remplace idolPop[i] s’il est meilleur. Puis, permuter idolPop. - Mutation : générer Mutant à partir de Pop and idolPop. - Croisement : générer Trial à partir de Mutant et Pop. - Vérification : re-générer aléatoirement chaque dimension qui est sortie de l’espace de recherche. - Selection 2 : évaluer Trial, puis Trial[i] remplace Pop[i] s’il est meilleur. Mettre à jour Best. - Anti-stagnation : après 4 000 générations sans amélioration, re-générer aléatoirement 2/3 de Pop. Fin M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 15 / 24 Etude expérimentale Plan Backtracking Search Optimization Algorithm (BSA) Idol-Guided BSA algorithm Etude expérimentale M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 16 / 24 Etude expérimentale Fonctions de benchmark ID Name Low Up D F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 Sphere Ackley Michalewics Rastrigin Rosenbrock Schaffer Schwefel 2 22 Shifted sphere Schwefel 1 2 Shifted Schwefel 1 2 Shifted Schwefel 1 2 with noise Shifted Rosenbrock Shifted Rastrigin Shifted rotated high conditioned elliptic function Griewank Shifted rotated Griewank Shifted rotated Ackley Shifted rotated Rastrigin Schwefel 2 6 -100 -32 0 -5.12 -30 -100 -10 -100 -100 -100 -100 -100 -5 -100 -600 0 -32 -5 -100 100 32 3.1416 5.12 30 100 10 100 100 100 100 100 5 100 600 600 32 5 100 30 30 10 30 30 2 30 10 30 10 10 10 10 10 30 10 10 10 10 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 17 / 24 Etude expérimentale Paramétrage pour le benchmarking I 2 versions testées : I I IG-BSA-1 : BSA avec idoles IG-BSA-2 : BSA avec idoles et anti-stagnation I Taille de la population : N = 30 I Taux de croisement : mixRate = 1 I Conditions d’arrêt : I I I Valeur absolue de la solution inférieure à 10-16 Le nombre d’appels à la fonction d’évaluation atteint 2 000 000 Nombre d’exécutions : nbRun = 30 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 18 / 24 Etude expérimentale Résultats numériques ID Statistics F1 Mean Std Best 0,0000000000000000 0,0000000000000000 0,0000000000000000 IG-BSA-1 0,0000000000000000 0,0000000000000000 0,0000000000000000 IG-BSA-2 0,0000000000000000 0,0000000000000000 0,0000000000000000 BSA 0,0000000000000000 0,0000000000000000 0,0000000000000000 CMAES 0,0000000000000000 0,0000000000000000 0,0000000000000000 SPSO2011 F2 Mean Std Best 0,0000000000000075 0,0000000000000000 0,0000000000000075 0,0000000000000075 0,0000000000000000 0,0000000000000075 0,0000000000000105 0,0000000000000034 0,0000000000000080 11,7040011684582000 9,7201961540865200 0,0000000000000080 1,5214322973725000 0,6617570384662600 0,0000000000000080 F3 Mean Std Best -9,6601517156413500 0,0000000000000000 -9,6601517156413500 -9,6601517156413500 0,0000000000000000 -9,6601517156413500 -9,6601517156413500 0,0000000000000007 -9,6601517156413500 -7,6193507368464700 0,7904830398850970 -9,1383975057875100 -8,9717330307549300 0,4927013165009220 -9,5777818097208200 F4 Mean Std Best 0,0331653019031099 0,1816538397880230 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 95,9799861204982000 56,6919245985100000 29,8487565993415000 25,6367602258676000 8,2943512684216700 12,9344677422129000 F5 Mean Std Best 0,1328874618100310 0,7278546044296030 0,0000000000000000 0,1328874618100310 0,7278546044296030 0,0000000000000000 0,3986623854300930 1,2164328622195200 0,0000000000000000 0,3986623855035210 1,2164328621946200 0,0000000000000000 2,6757043114269700 12,3490058210004000 0,0042535368984501 F6 Mean Std Best 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,4651202457398910 0,0933685176073728 0,0097159098775144 0,0000000000000000 0,0000000000000000 0,0000000000000000 F7 Mean Std Best 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 F8 Mean Std Best F9 Mean Std Best F10 Mean Std Best -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000259 0,0000000000000000 0,0000000000000350 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 19 / 24 Etude expérimentale Résultats numériques ID Statistics F11 Mean Std Best F12 Mean Std Best F13 IG-BSA-1 IG-BSA-2 BSA CMAES SPSO2011 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 77982,4567046980000000 -450,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000259 131376,7365456010000000 0,0000000000000460 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 390,0000000000000000 0,0000000000000000 390,0000000000000000 390,0000000000000000 0,0000000000000000 390,0000000000000000 390,1328859704120000 0,7278464357038200 390,0000000000000000 390,5315438816460000 1,3783433976378300 390,0000000000000000 393,4959999056240000 16,0224965900462000 390,0000000000150000 Mean Std Best -330,0000000000000000 -330,0000000000000000 -330,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 -330,0000000000000000 -330,0000000000000000 -330,0000000000000000 -306,5782069681560000 21,9475396048756000 -327,0151228287200000 -324,6046006320200000 2,5082306041521000 -329,0050409429070000 F14 Mean Std Best -449,9999999602650000 -449,9999996829340000 -449,9999567867430000 0,0000001752868304 0,0000015805427038 0,0001175386756044 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 -450,0000000000000000 0,0000000000000000 -450,0000000000000000 -44,5873911956554000 458,5794120016290000 -443,9511286079800000 F15 Mean Std Best 0,0011498935321349 0,0036449413521107 0,0000000000000000 0,0068943694819713 0,0080565201649587 0,0000000000000000 F16 Mean Std Best F17 Mean Std Best -119,9041359889820000 0,0331327067417176 -119,9570345995910000 -119,8590496540750000 0,0408238910142128 -119,9414090542270000 -119,8356122057440000 0,0704515460477787 -119,9802847896350000 -119,9261073509850000 0,1554021446157740 -120,0000000000000000 -119,8190232990920000 0,0720107560874199 -119,9302772694110000 F18 Mean Std Best -320,6431145192100000 -326,2200101370480000 3,8773088040728100 1,2089000307254200 -327,0151228287200000 -329,0050409429070000 -319,2544515903510000 3,3091959975390800 -325,0252097523530000 -314,7871102989330000 8,3115989308305500 -327,0151228287200000 -324,3311322538170000 3,0072222933667300 -327,1650513120000000 F19 Mean Std Best 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0000000000000000 0,0004930693556077 0,0018764355751644 0,0000000000000000 1087,0459486286000000 1087,0459486286000000 1087,0459486286000000 0,0000000000000000 0,0000000000000000 0,0000000000004428 1087,0459486286000000 1087,0459486286000000 1087,0459486286000000 -309,9999999999990000 -310,0000000000000000 -309,9999999999980000 0,0000000000016225 0,0000000000010604 0,0000000000023443 -310,0000000000000000 -310,0000000000000000 -310,0000000000000000 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm 1087,2645466786700000 1091,0644335162500000 0,5365230018001780 3,4976948942723200 1087,0459486286000000 1087,0696772583000000 -310,0000000000000000 -310,0000000000000000 0,0000000000000000 0,0000000000000000 -310,0000000000000000 -310,0000000000000000 JET 25 20 / 24 Etude expérimentale Analyse I F1, F7, F8, F9 sont résolus par tous les algorithmes I Pour F2, les 2 versions de IG-BSA sont meilleures que les autres algorithmes I Pour F18, IG-BSA-2 est meilleur que les autres algorithmes I Pour 16 problèmes sur 19, IG-BSA-2 est équivalent ou meilleur que les autres algorithmes I Test statistique de Friedman : I I I BSA est meilleur que CMAES et SPSO 2011 IG-BSA-1 est meilleur que CMAES et SPSO 2011 IG-BSA-2 est meilleur que BSA, CMAES et SPSO 2011 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 21 / 24 Etude expérimentale Black Box Optimization Competition I Compétition organisée à l’occasion de CEC 2015 I Black box : aucune connaissance des problèmes à résoudre I Problèmes en dimensions 2, 4, 5, 8, 10, 16, 20, 32, 40, 64 I 1000 problèmes au total I Budget = 100 × dim2 évaluations I 1 seule tentative autorisée ⇒ Idol-Guided BSA classé 16ème sur 25 participants M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 22 / 24 Conclusion Conclusion I Nouvelle variante de BSA : Idol-Guided BSA I I I Etude expérimentale I I I Intégration du concept d’idole Stratégie anti-stagnation Avec 19 fonctions de benchmark Test statistique : IG-BSA meilleur que BSA, CMAES et SPSO 2011 Perspectives I I I I Comparaison avec davantage de fonctions Comparaison à d’autres algorithmes (SHADE, HS, ABC, ACO) Implémentation sur GPU pour problèmes en grandes dimensions Application à un problème industriel M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 23 / 24 Conclusion Idol-Guided Backtracking Search Optimization Algorithm Mathieu Brévilliers, Omar Abdelkafi, Julien Lepagnot, Lhassane Idoumghar Équipe MAGE, Laboratoire LMIA, Université de Haute-Alsace 25ème Journée Evolutionnaire Thématique 12 juin 2015 M. Brévilliers & al. (Université de Haute-Alsace) Idol-Guided BSA Algorithm JET 25 24 / 24