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

M. Mezmaz, N. Melab & E-G. Talbi

Présentations similaires


Présentation au sujet: "M. Mezmaz, N. Melab & E-G. Talbi"— Transcription de la présentation:

1 M. Mezmaz, N. Melab & E-G. Talbi
Défi en Optimisation Combinatoire sur Grilles de Calcul Résolution du Flow-Shop M. Mezmaz, N. Melab & E-G. Talbi Laboratoire d’Informatique Fondamentale de Lille École Grid’5000, Grenoble, le 10 Mars 2006

2 Problématique Télécommunications, bio-informatique, transport, etc.
Nature combinatoire Problème d’optimisation combinatoire Existence d’un nombre exponentiel de solutions Chaque solution a un coût Trouver une ou plusieurs solution(s) de coût optimal Problèmes NP-difficiles Utilisation indispensable du parallélisme à grande échelle sur grilles de calcul

3 Objectif S’attaquer au Flow-Shop, un défi relevé dans le projet Dolphin Large éventail d’applications Ce problème est très étudié L’utilisation du Branch & Bound (B&B) Problème NP-difficile [D.S.Jhonson et R.Sethi, 1976] Le recours à une grille de calcul, pour le résoudre, est amplement justifiée La grille et le B&B, sont donc les deux approches utilisées pour s’attaquer à ce problème

4 Plan Branch & Bound Parallélisation du B&B sur Grilles
Approche Parallèle Gridifiée Proposée Résolution du Flow-Shop Conclusions & Perspectives

5 Heuristiques spécifiques
Branch & Bound Méthodes exactes Deux sous-catégories Méthodes arborescentes Construction et exploration d’un arbre Le nœud racine est le problème originale Les autres nœuds sont des sous-problèmes B&B, B&C, B&P, etc. Branch & Bound Opérateurs de Division, Borne, Élagage, et Sélection Heuristiques Heuristiques spécifiques Méta-heuristiques Méthodes exacts Non Arborescentes Méthodes Branch & Bound & Cut & Prise 4 2 1 3

6 Parallèlisation du B&B sur Grilles
Processus B&B Modèles Parallèles du B&B Multi-paramétrique parallèle Exploration parallèle arborescente Évaluation parallèle des bornes & Évaluation parallèle d’une borne Exploration Parallèle Arborescente De loin le plus étudié et le plus utilisé Plusieurs processus B&Bs explore simultanément le même arbre Equilibrage de charge  Ils s’échangent du travail Souvent le travail échangé est un ensemble de nœuds

7 Parallèlisation du B&B sur Grilles Problématiques
Exploration Parallèle Arborescente Arbre à explorer est irrégulier Équilibrage de charge est plus difficile Grilles Un grand nombre de machines impliquées dans le calcul Machines hétérogènes, volatiles, et non forcement dédiée Communications assez coûteuses Possibilité d’existence de pare-feux

8 Approche Parallèle Gridifiée Proposée Objectifs
Répondre à ces problématiques Minimisation des coûts des communications Proposition d’un mécanisme de tolérance aux pannes à faible coût Supporter le passage à l’échelle Détection implicite de la fin des traitements Équilibrer la charge Opérer un vol de cycles sur les machines hôtes & Contourner les pare-feux avec un minimum de contraintes

9 Approche Parallèle Gridifiée Proposée Principe
Exploration Parallèle Arborescente Stratégie de parcours d’arbre de type profondeur d’abord Fermier Travailleurs Processus Coordinateur (Fermier) Processus B&Bs (Travailleurs) Nœuds numéro(N) poids(N) intervalle(N)=[numéro(N),numéro(N)+poids(N)[ Travail échangé N’est pas un ensemble de nœuds, mais un intervalle de nœuds Exemples de travail: exploration les nœuds [0,5[ [0,1[ [1,2[ [2,3[ [3,4[ [4,5[ [5,6[ 1 2 3 4 5 [0,2[ [4,6[ [0,6[ [2,4[ 6

10 Approche Parallèle Grille Proposée Processus B&B (1)
[A,B[: Intervalle en cours d’exploration N: Ensemble minimal de nœuds permettant d’explorer [A,B[ [A,B[  N N ={N/intervalle(N)  [A,B[ et intervalle(père(N))  [A,B[} A=min{numéro(N)/ N  N} B=max{numéro(N)+poids(N)/N  N} [A,B[  Communications N  Exploration de l’arbre du B&B

11 Approche Parallèle Grille Proposée Processus B&B (2)
Au départ, Récupérer du coordinateur un [A,B[ à explorer [A,B[  N Explorer cet ensemble Régulièrement, En prévision d’une panne, informer le coordinateur son [A,B[ actuel A la fin de l’exploration d’un [A,B[, Récupérer du coordinateur un nouveau intervalle à explorer

12 Approche Parallèle Grille Proposée Processus Coordinateur(1)
I: Ensemble des intervalles en cours d’exploration Initialement I= {intervalle(Racine)} Un processus B&B P demande un intervalle Sélectionner un certain intervalle [A,B[ de I Le découper en deux intervalles [A,C[ et [C,B[ Actualiser I remplacer, dans I, [A,B[ par [A,C[ Ajouter [C,B[ à I Accorder [C,B[ à P

13 Approche Parallèle Grille Proposée Processus Coordinateur(2)
Existence de deux copies d’un même intervalle [A,B[: intervalle en cours d’exploration par un processus P [A’,B’[: la copie de [A,B[ dans I (processus coordinateur) Exploration  Processus P incrémente A Découpages  Processus coordinateur décrémente B’  Actualisation et sauvegarde d’un intervalle [A,B[ [A,B[^[A’,B’[[max(A,A’),min(B,B’)[ Tolérance aux pannes du fermier sauvegarder régulièrement I dans un fichier Initialiser I par ce fichier en cas de panne Fin des traitements I={ }

14 Problème du Flow-Shop Définition
Ordonnancer N travaux sur M machines Une machine traite un travail à la fois Sur toutes les machines, l’ordre de passage des travaux est le même Objectif Minimiser le temps total de traitement (Minimiser le Cmax) Exemple (Flow-Shop de 7 travaux et 3 machines) M1 M2 M3

15 Problème du Flow-Shop Instances
Instances d’ E.Talliard Instances de référence pour le Flow-Shop EJOR 64, 1993 Ta056 6ème instance, 50 travaux et 20 machines Meilleure solution connue de Ta056 Cmax = 3681 Ruiz & Stutzle, 2004, méthode heuristique

16 Grille de 1889 processeurs Bordeaux(94) Toulouse(116)
Rennes( ) Orsay(432) Sophia Antipolis (214) Lille(108) IEEA-FIL(157) Polytech-Lille (128) IUT-Lille(183) Grid’5000(1421)=~3/4 Univ. Lille1(468) =~1/4 ClusteRs non Utilisés (496) Lyon(108) Grenoble (208+20) Nancy (96) Grille de 1889 processeurs

17 Résolution de TA056 Solution optimale de Ta056 Résolution en deux fois
Cmax = 3679 Mezmaz, Melab & Talbi, 4 décembre 2005 Résolution en deux fois Première Résolution Borne initiale: 3681 Durée: ~1 mois et 3 semaines Pic: processeurs Deuxième Résolution Récupérer davantage de statistiques Borne initiale: 3680 Durée: ~25 jours et 46 minutes Pic: 1195 processeurs 6,50874 e+12 nœuds explorés (0,39 % redondants)

18 Deuxième Résolution 22 ans 185 jours 16h
1 195 Nbr. De proc. utilisés 97 % CPU des Trav. 1,7 % CPU du Ferm. Bordeaux(88) Lille(98) Orsay(360) Rennes(456) Sophia(190) Toulouse(112) Univ.(304) 328 22 ans 185 jours 16h 25 jours 46 minutes 05 jan. 2006 18h50 11 déc. 2005 18h03 proc. ont rejoint le calcul allocations de travaux effectuées & opérations de sauvegarde faites par les travailleurs

19 Conclusions Proposition d’ une Approche Parallèle Gridifiée du B&B
Résolution du Flow-Shop? Atteint Minimisation des coûts des communications? Une communication= Un intervalle : A une taille de deux entiers Mécanisme de tolérance aux pannes à faible coût? Travailleur: Communication d’un intervalle ( sauvegardes) Fermier: Sauvegarde de l’ensemble des intervalles I dans un fichier Passage à l’échelle? (En moy. 1,7% CPU fermier) Équilibrage de charge? (En moy. 97% CPU travailleurs) Vol de cycles? Processus B&B en veille, si utilisateur se connecte sur leur machine & Nombre de contraintes minimal sur les pare-feux ? La seule contrainte imposée est que le fermier doit être visible

20 Perspectives Étude théorique comparative de complexité
Approche proposée versus Autres approches de la littérature Réalisation d’une interface Web pour le suivi d’une résolution Projet 1ère Année Master Informatique, Lille & Résolution Q3AP (QAP 3D) Projet CHOC (CHallenge en Optimisation Combinatoire) de l’ANR «Calcul Intensif et Grilles de Calcul»


Télécharger ppt "M. Mezmaz, N. Melab & E-G. Talbi"

Présentations similaires


Annonces Google