Une plate-forme pour l optimisation parallèle approchée sur environnements de Métacomputing S. Cahon, N. Melab et E-G. Talbi. LIFL/CNRS - Projet INRIA Dolphin NP-Par 05, Le Croisic (5/4/05)
Introduction Problèmes d optimisation de grande taille et complexes dans de nombreux secteurs de l industrie Télécommunications, génomique, transport, Problèmes de taille sans cesse croissante (explosion combinatoire) et/ou délais de plus en plus courts à résoudre avec la puissance des grilles de machines (POC) min f ( x) x S (PMO) min f( x) = ( f ( x), f ( x),..., f ( x ) 1 2 n s.c. x S n 2
Une taxonomie des méthodes de résolution Algorithmes exacts Heuristiques Branch and X Prog. dynamique A* Heuristiques spécifiques Métaheuristiques Solution unique Population Recherche locale Recuit simulé Recherche tabou Algorithmes évol. Colonies de fourmis Méthodes exactes : optimalité et exploitation sur des instances de taille raisonnable Métaheuristiques : solutions approchées sur des instances de taille supérieure
Métaheuristiques à populations de solutions «Amélioration» d une population Tendance à l exploration Solutions réparties dans l espace La recombinaison est exploratrice Recombinaison Remplacement Parents Remplacement Enfants
Métaheuristiques à solution unique «Amélioration» d une solution Tendance à l exploitation Basée sur la descente Exploration du voisinage (intensification) Voisinage Remplacement Optimum local
Hybridation Pouvoirs intensificateurs et diversificateurs Améliorer la qualité et la robustesse des solutions Taxinomie Algorithme génétique Métaheuristique hybride Recherche tabou Haut niveau Bas niveau Relai Coévolutionnaire
Problématique Traitement efficace d une combinatoire importante et coûteuse en temps de calcul Utilisation des métaheuristiques Réduire l espace de recherche mais ce n est pas suffisant! Exploitation du parallélisme à large échelle
Finalités du parallélisme Faire coopérer différents algorithmes de résolution en exécution concurrente, Réduire le temps d obtention des résultats par une distribution des calculs.
Classification des métaheuristiques parallèles Métaheuristiques à solution unique Métaheuristiques à populations de solutions Évaluation parallèle du voisinage Exécution multi-départ Évaluation parallèle d une solution Synchrone Centralisé Insulaire Cellulaire Asynchrone Hybride coopération Partitionnement des données Partitionnement des objectifs
ParadisEO (PARAllel and DIStributed Evolving Objects) Plate-forme logicielle pour la conception de métaheuristiques hybrides et/ou coopératives dans un environnement parallèle et/ou distribué http://www.lifl.fr/opac/paradiseo/ Action Concertée Incitative [ACI] Globalisation des Ressources Informatiques et des Données [GRID] Projet DOC-G
Principales caractéristiques Une librairie Open Source C++ (STL-Template) Indépendante de tout paradigme, Flexible / problème traité Composants génériques (opérateurs de recherche, sélection, remplacement, terminaison, ) Nombreux services (visualisation, définition de paramètres en ligne, sauvegarde/reprise de l état d exécution, )
Organisation PARAllel and DIStributed Evolving Objects (Conception de métaheuristiques Parallèles hybrides) LAM MPI / Posix threads Support Cluster, SMP et Grid dédié Athapascan / Inuktitut Support Cluster et Grid non dédié Condor / MW / Condor- G ParadisEO ParadisEO-ath ParadisEO-cmw EO MO MOEO Evolving Objects (Algorithmes évolutionnaires) Moving Objects (Métaheuristiques à base de solution unique) Multi Objective Evolving Objects (Opérateurs et outils pour l optimisation multi-objectif)
Positionnement Haut niveau Grid Computing Métacomputing ParadisEO-ath (Athapascan/ Inuktitut) Bas niveau ParadisEO-cmw (Condor/MW) Cluster Computing High Throughput Computing Internet Computing Grid 5000 (France) ParadisEO (MPICH-G) Icluster2 (IMAG - Grenoble) Université (Lille) Seti@home (International)
Illustration avec le réseau enseignement de Polytech-Lille Réseau de 122 stations hétérogènes, associé à une puissance CPU cumulée potentielle de 30 Giga Flops Evolution du nombre de stations «propriétaires» durant une journée de la semaine
Problématiques liées à la «gridification» Une disponibilité dynamique Un caractère volatile Bande passante à faible débit L hétérogénéité La scalabilité
Architecture ParadisEO-CMW Evolving Objects Moving Objects EO MO Application ParadisEO-cmw Plate-forme pour la conception de métaheuristiques parallèles hybrides Multi Objective Evolving Objects MOEO Gestion de ressources distribuées MW Condor API pour le développement d applications // reposant sur le paradigme M/E. Un pool de stations
Condor High Throughput Computing (HTC) Gestion et exploitation de ressources distribuées dynamiques dans l espace et le temps Simple interface pour l environnement d exécution Mécanismes importants Matchmaking, Checkpointing, Sécurité, Gridification Globus Condor-G http://www.cs.wisc.edu/condor
M Condor MW W Support pour le développement d applications parallèles basées sur le paradigme «Master/Worker» Décomposition de l application principale en tâches Déploiement de tâches / Collecte de résultats Interfaces de communications multiples au sein d une couche sous-jacente (Sockets, PVM, Condor I/O) http://www.cs.wisc.edu/condor/mw
Application. Résolution du nug30 Number Arch/OS Location 414 Intel/Linux Argonne The MetaNEOS Project 96 SGI/Irix Argonne 1024 SGI/Irix NCSA 16 Intel/Linux NCSA 45 SGI/Irix NCSA 246 Intel/Linux Wisconsin 146 Intel/Solaris Wisconsin 133 Sun/Solaris Wisconsin 190 Intel/Linux Georgia Tech 94 Intel/Solaris Georgia Tech 54 Intel/Linux Italy (INFN) 25 Intel/Linux New Mexico 12 Sun/Solaris Northwestern 5 Intel/Linux Columbia U. 10 Sun/Solaris Columbia U. http://www-unix.mcs.anl.gov/metaneos/index.html
ParadisEO-cmw Déploiement de métaheuristiques parallèles sur réseaux de stations non dédiés Applications SPMD Transparence du parallélisme à l utilisateur Parallélisme inhérent aux métaheuristiques et non à ses applications Traitement parallèle des solutions manipulées Checkpointing automatique http://www.lifl.fr/~cahon/paradiseo/cmw
Adaptation au paradigme «Maître/Esclave» sync/async Application principale sync/async A.Gs coopératifs insulaires sync/async Déploiement de tâches en exécution concurrente Déploiement de R.L. Distribution des évaluations sync/async sync Evaluation parallèle (Modèle partitionnement)
Applications Sélection d attributs en Data Mining Design de réseaux cellulaires en téléphonie mobile
Spectroscopie PIR (Proche Infra Rouge) Source de rayonnements PIR (Proche Infra Rouge) Échantillon Capteurs Absorbances à différentes longueurs d onde (1024) Analyse de spectres (contrôle, qualité, ). Domaines d application : Production alimentaire, Industrie pharmaceutique et pétrolière, Matériaux, Application à la sucrerie betteravière (Collaboration LASIR/CNRS)
Méthodes pour l analyse quantitative Loi de Beer Lambert Emergence des méthodes chimiométriques inspirées de la statistique Analyse en composantes principales (ACP) Régression en composantes principales (PCR) Méthode de régression par les moindres carrés partiels (PLS)
Problématique de la sélection d attributs Elimination des attributs Non pertinents, dont leur valeur n affecte en rien la procédure de traitement Redondants, n apportant pas ou peu d information supplémentaire Motivations Accroître la précision des prédictions Simplifier le modèle
Motivations d une sélection préalable des attributs Corrélation entre absorbances et variations de concentration Interdépendance entre absorbances
Deux approches à la sélection d attributs en Data Mining Ensemble complet d attributs Ensemble complet d attributs Sélection d attributs Sélection d attributs Exploitation des données réduites Approche filtrante Exploitation des données réduites Approche enveloppante (plus robuste, plus coûteuse)
Analyse de complexité Deux caractéristiques majeures associés à l approche enveloppante. Un nombre de combinaisons très élevé 2 1020 sélections candidates Une évaluation coûteuse (calcul matriciel intensif, ) Entre 1 et 10s. sur une station moderne.
Un algorithme génétique parallèle coopératif Codage binaire des sélections Multiples opérateurs de variation (1, 2 points, uniforme) combinés Hybridation et Parallélisation Approche enveloppante Evaluation d une sélection par régression PLS Fréquences retenues 1 0 0 1 0 0 0 0 Régression PLS 1 A.G. a 1 a 2 a n RMSEP Données
Identification du parallélisme Deux niveaux hiérarchiques 1. Modèle coopératif insulaire (qualité) 2. - Evaluation en parallèle des sélections (temps)
Coopération insulaire Robustesse accrue, de meilleures solutions Paramètres Communication synchrone (fréquence) ou asynchrone (liée à un «événement») Migrations (taille, composition, intégration) Topologie A.E. A.E. Migration A.E. A.E. A.E.
Distribution des sélections Ne modifie pas le comportement de l algorithme évolutionnaire original Mêmes résultats obtenus plus rapidement Bonne accélération si le «grain» (calculs / communication) est important. A.E. Fitness complet Solution
Un modèle parallèle à plusieurs niveaux Distribution des évaluations A.Gs coopératifs insulaires Distribution des calculs Bases de données répliquées Hybridation co-évolutionnaire
Résultats expérimentaux Contribution de l hybridation Performances et efficacité du parallélisme à l exécution
Effets de la coopération Aucune sélection A.G. simple A.G. coop. en anneau (x4) RMSEP 0.150 0.1057 0.1035 Gain en précision X 41,91% 44,92% A.G. coop. en tore (x16) 0.1015 47,78%
Résultats Élimination de 88% des fréquences Temps d analyse d un échantillon donné de 2930 à 394 µs. (PC. 1 Ghz). Erreur de prédiction de 0.150 à 0.1015 g./100g. (Amélioration de 48%)
Résultats Élimination de 88% des fréquences Temps d analyse d un échantillon donné de 2930 à 394 µs. (PC. 1 Ghz). Erreur de prédiction de 0.150 à 0.1015 g./100g. (Amélioration de 48%)
Mesures de performances pour environnements non dédiés Mesures de performances standard inadaptées ici (MIPS ou KFLOPS) Caractère naturellement hétérogène et dynamique de la grille
Définitions α (i) Performance normalizée du worker i (i I), U (i) Durée cumulée de «disponibilité» du worker i, w (j) Index du worker qui a accompli la tâche j (j J), t (j) Temps CPU consacré à accomplir la tâche j, W Temps total de disponibilité des workers i I U ( i) T Durée cumulée totale à l exécution des tâches j J t ( j)
Statistiques T - Temps cumulé normalizé P - Performance équivalente du pool N - Nombre moyen de workers n - Efficacité parallèle = J j j t j w ) ( )) ( α ( Τ = I i I i i U i U i ) ( ) ( ) α( P W N = I i i U ) ( = I i J j i U j t n ) ( ) (
Statistiques mesurées à l exécution de l A.G. coopératif en tore Expérimentations à Polytech-Lille http://www.polytech-lille.fr/~scahon/ Number of (different) workers Wall clock time for this job Total wall clock time of workers Average number present workers Average number active workers Overall parallel performance 122 36953 s. (10 hours) 2363571 s. (27 days) 115 78 0.82
Conclusions Déploiement de métaheuristiques parallèles hybrides adapté aux environnements de Métacomputing asynchronisme, grain elévé, extensibilité, checkpointing applicatif trivial et peu coûteux, Gestion totalement centralisée avec MW Goulot d étranglement
Perspectives Implantation et expérimentation de grilles par l agrégation de ressources réparties sur plusieurs domaines administratifs Technologie Condor-G.