1 / 20

Défi en Optimisation Combinatoire sur Grilles de Calcul Résolution du Flow-Shop

Défi en Optimisation Combinatoire sur Grilles de Calcul Résolution du Flow-Shop. M. Mezmaz , N. Melab & E-G. Talbi. L aboratoire d’ I nformatique F ondamentale de L ille {mezmaz,melab,talbi}@lifl.fr École Grid’5000, Grenoble, le 10 Mars 2006. Problématique.

stasia
Download Presentation

Défi en Optimisation Combinatoire sur Grilles de Calcul Résolution du Flow-Shop

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Défi en Optimisation Combinatoire sur Grilles de CalculRésolution du Flow-Shop M. Mezmaz, N. Melab & E-G. Talbi Laboratoire d’Informatique Fondamentale de Lille {mezmaz,melab,talbi}@lifl.fr É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 plusieurssolution(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 Méthodes exacts Heuristiquesspécifiques Méta-heuristiques Méthodes Arborescentes Non Arborescentes Branch & Bound Branch & Cut Branch & Prise 3 1 4 4 2 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

  6. Processus B&B Processus B&B Processus B&B Processus B&B Parallèlisation du B&B sur Grilles • 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 GrillesProblé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éeObjectifs 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. [0,6[ 6 [0,2[ [4,6[ 2 5 3 2 0 0 4 0 4 1 [2,4[ 2 1 [1,2[ [0,1[ [4,5[ [5,6[ [2,3[ [3,4[ Approche Parallèle Gridifiée ProposéePrincipe • 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[

  10. Approche Parallèle Grille Proposée Processus B&B (1) • Processus B&B • [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) • Processus Coordinateur • 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. M1 M2 M3 Problème du Flow-ShopDé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)

  15. Problème du Flow-ShopInstances • Instances d’ E.Talliard • Instances de référence pour le Flow-Shop • EJOR 64, 1993 • http://ina2.eivd.ch/Collaborateurs/etd/default.htm • 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 Univ. Lille1(468) =~1/4 Grid’5000(1421)=~3/4 ClusteRs non Utilisés (496) IEEA-FIL(157) Lille(108) Polytech-Lille (128) IUT-Lille(183) Orsay(432) Nancy (96) Rennes(128+129+200+64) Lyon(108) Bordeaux(94) Grenoble (208+20) Toulouse(116) Sophia Antipolis (214)

  17. Résolution de TA056 • Solution optimale de Ta056 • 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: 1245 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 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 11 802 proc. ont rejoint le calcul 129 958 allocations de travaux effectuées & 4 094 176 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 (4 094 176 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 contraintesminimal 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»

More Related