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

La parallélisation des algorithmes d’évolution basés sur des populations pour la résolution de problèmes d’optimisation combinatoire Patrice Calégari.

Présentations similaires


Présentation au sujet: "La parallélisation des algorithmes d’évolution basés sur des populations pour la résolution de problèmes d’optimisation combinatoire Patrice Calégari."— Transcription de la présentation:

1 La parallélisation des algorithmes d’évolution basés sur des populations pour la résolution de problèmes d’optimisation combinatoire Patrice Calégari Laboratoire d’Informatique Théorique Département d'Informatique Ecole Polytechnique Fédérale de Lausanne CH-1015 Lausanne, Suisse

2 Plan de la présentation
Le parallélisme Les problèmes d’optimisation combinatoire Les algorithmes d’évolution (AE) Une nouvelle taxonomie pour les AE Les règles de parallélisation La librairie APPEAL Résultats expérimentaux (accélérations) Conclusion et perspectives

3 Le parallélisme

4 Le parallélisme

5 L’optimisation combinatoire
Espace de recherche Solutions Solutions candidates Meilleure(s) solution(s)

6 1er exemple : la coloration de graphes

7 2ème exemple : placement d’antennes
1 2 3 4 1 2 3 4 2 3 P. Calegari, F. Guidec, P. Kuonen., D. Kobler “Parallel Island-based Genetic Algorithm for Radio Network Design”, JPDC, 47(1):86-90, 1997

8 Trois principes de recherche
Approche constructive Algorithme glouton Performances théoriques souvent connues Facile à implémenter Exécution rapide Facilement attiré par des optima locaux en pratique Difficile à paralléliser Approche itérative Recuit simulé, tabou Bonne exploration de l’espace Peu de preuves théoriques sur les performances Nécessite une puissance de calcul et un espace mémoire important Approche évolutionaire Algorithme génétique

9 Algorithmes d’évolution
Individu codé valeur de qualité + Population 2 3

10 Codage : la coloration de graphes
= 0 = 1 = 2 1 2

11 Codage : placement d’antennes
1 2 3 4 2 3 1 1

12 Exemples d’algorithmes d’évolution
Algorithme génétique Séléction Mutation Accouplement Croisement

13 Exemples d’algorithmes d’évolution
Stratégie d'évolution m Mutation m+l Séléction

14 Exemples d’algorithmes d’évolution
PBIL Chaîne booléenne vecteur P 0.456 0.239 1.000 0.012 0.837 Mise à jour de P Evolution

15 Exemples d’algorithmes d’évolution
Système de fourmis trace t 0.456 0.239 1.000 0.012 0.837 Mise à jour de t Evolution

16 Exemples d’algorithmes d’évolution
Algorithme génétique Stratégie d'évolution m Séléction Mutation m+l Mutation Accouplement Croisement Séléction PBIL Chaîne booléenne Système de fourmis vecteur P 0.456 0.239 1.000 0.012 0.837 Mise à jour de P trace t 0.456 0.239 1.000 0.012 0.837 Mise à jour de t Evolution Evolution

17 Huit caractéristiques principales
(1) La taille de la population (2) La topologie de la population (3) Les sources d’information (nombre de parents, histoire de la population, taux d’échange) (4) Les individus non admissibles (à réparer, à pénaliser, à détruire, n’apparaissent jamais) (5) L’histoire d’un individu (6) L’amélioration des individus ( AE hybride) (7) Le bruit (mutation, etc.) (8) L’évolution (génération, continue, asynchrone)

18 Plusieurs populations : les îles
Exemple : 4 îles sur un anneau migration migration migration migration

19 La table des algorithmes d’évolution
TEA: Table of Evolutionary Algorithms Information sources Improving algo. S(e) Set of elements e Structured S Infeasible e S = cst Evolution Noise he Classification fine des AE Proposition de nouveaux AE Base pour étudier le rôle des caractéristiques des AE Base pour la parallélisation des AE

20 Un algorithme génétique à îles
Exemple d’une TEA Un algorithme génétique à îles Information sources Improving algo. S(e) Set of elements e Structured S Infeasible e S = cst Evolution Noise he Island(Individual) Yes compl (pc) nvr No No Yes gr Archipelago(Island) Yes ring / No No No gr P. Calegari, G. Coray, A. Hertz, D. Kobler, P. Kuonen. “A Taxonomy of Evolutionary Algorithms in Combinatorial Optimization”, Journal of Heuristics, 5(2): , 1999

21 Les règles de parallélisation
Aident à choisir une parallélisation efficace : minimisation raisonnable des communications et de la gestion du parallélisme. Basées sur la description de la TEA d’un AE. Simples (accessibles, faciles à utiliser). Exemple de règle (colonne « Structured S ») : « Si la topologie est complète, alors il faut éviter de partitionner l’élément décrit dans cette ligne de la TEA. »

22 Différentes parallélisations
Au niveau du codage Au niveau de l'individu (niveau L-1) (niveau L0) Au niveau de la population (niveau L1)

23 Exemple d’application des règles
pour un système de fourmis à îles Nîles  Nprocesseurs Nîles < Nprocesseurs E migration M trace migration

24 Advanced Parallel Population-based Evolutionary Algorithm Library
La librairie APPEAL Advanced Parallel Population-based Evolutionary Algorithm Library Buts Intégrer les fonctions liées au parallélisme, être réutilisable et modulaire pour permettre le test de différents AE avec différents problèmes et différents codages, faciliter l’implémentation des AE (hybrides). Choix librairie orientée objet, langage C++, librairies LEDA et PVM.

25 La répartition des classes d’APPEAL
Population Individu GeneticParameter GeneticEvolution Evolution Genotype Algorithme BoolGT IntegerGT Codage Graph ColoringParameter Problème ColoringTranscoder Transcoder

26 Conditions expérimentales
Réseau peu chargé de 80 ordinateurs (stations de travail Sun Sparc-4). Algorithme paramétré par le nombre de processeurs exclusivement. Sur p processeurs, l’espace mémoire total est multiplié par p.

27 Système de fourmis à îles : 40 îles
10 20 30 40 50 60 70 80 Théorique Expérimentale (placement d’antennes) Expérimentale (coloration de graphe) Accélération 10 20 30 40 50 60 70 80 Nombre de processeurs

28 Système de fourmis à îles : 4 îles
10 20 30 40 50 60 70 80 Théorique Expérimentale (placement d’antennes) Expérimentale (coloration de graphe) Accélération 10 20 30 40 50 60 70 80 Nombre de processeurs

29 Bilan L’efficacité est bonne pour des AE classiques : les règles sont satisfaisantes. La connaissance préalable des caractéristiques du problème est cependant parfois nécessaire. Remarques sur la qualité des solutions : Robustesse. Les AE sont mal appropriés pour traiter des instances de problèmes simples.

30 Perspectives Evolution de la taxonomie (et de la TEA)  nouvelle vision des AE Affinement des règles de parallélisation par des règles quantitatives Etudes complémentaires : AE asynchrones agents autonomes. Extensions de la librairie APPEAL

31 Contributions majeures
Proposition d'une nouvelle taxonomie pour les AE, associée à un outil de classification (TEA). Nouvelle approche des AE parallèles: dissociation de la parallélisation et des considérations algorithmiques. Conception de la librairie APPEAL (prévue pour être étendue, modèle objet « propre »).  Mesures d’accélération sur un grand réseau: 80 stations. Etude de ces accélérations pour un nombre quelconque de processeurs. Application d’une partie de ce travail au projet européen STORMS.

32 Questions ?

33 Merci à tous !

34


Télécharger ppt "La parallélisation des algorithmes d’évolution basés sur des populations pour la résolution de problèmes d’optimisation combinatoire Patrice Calégari."

Présentations similaires


Annonces Google