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