RenPar17 - PowerPoint PPT Presentation

1 / 85
About This Presentation
Title:

RenPar17

Description:

PRiSM-CNRS. INPG Grenoble, France Univ.de Versailles,France. cung_at_gilco. ... Architecture, fonctionnalit et interface de programmation. Parall lisme dans Bob ... – PowerPoint PPT presentation

Number of Views:316
Avg rating:3.0/5.0
Slides: 86
Provided by: mariele5
Category:
Tags: renpar17 | cnrs

less

Transcript and Presenter's Notes

Title: RenPar17


1
RenPar17
3-6 Octobre 2006 Perpignan
Expérimentation dun Nouveau Solveur Parallèle
pour les Problèmes dOptimisation Combinatoire
NP-difficiles Abdelaziz Djerrah Van
Dat Cung Bertrand Le Cun Catherine
RoucairolLab. GILCO
Lab.
PRiSM-CNRS INPG Grenoble, France
Univ.de
Versailles,France cung_at_gilco.inpg.fr
prénom.nom_at_prism.uvsq.fr
 
2
Plan de la Présentation
  • Problèmes dOptimisation Combinatoire (POCs)
  • Exemples dapplications
  • Méthodes de résolution
  • Outils de résolutions (solveurs et bibliothèques)
  • La bibliothèque Bob
  • Architecture, fonctionnalité et interface de
    programmation
  • Parallélisme dans Bob
  • Exemples dapplications en OC avec Bob
  • Conclusion et Perspectives

3
Applications concernées
  • Problèmes dOptimisation Combinatoire (POCs)
  • F fonction économique/objectif
  • X domaine de solutions
  • But trouver x tq F(x)Min / Max F(x)/ x e X
  • Exemples de de POCs
  • Sac à dos (Knapsack problem)
  • Voyageur de commerce (PVC/TSP)
  • Affectation quadratique (QAP)
  • Ordonnancement Flow-Shop
  • Points commun des POCs
  • Très importants, modélisent plusieurs
    applications réelles
  • Faciles à définir
  • Très difficiles à résoudre NP-complets

4
Sac à Dos (KP)
  • un sac à capacité limité W
  • n objets (Wi poids, Pi valeur ) de lobjet i
  • But  quel objets prendre pour maximiser la
    valeur
  • du sac sans dépasser W 
  • Domaines dapplication
  • Cryptographie
  • aide à la spéculation boursière pour maximiser
    les
  • retours d'un capital à placer sur des actions
  • chargement de bateau ou davion  tous les
    bagages à
  • destination doivent être amenés, sans être en
    surcharge 
  • découpe de matériaux pour minimiser les chutes
    lors de
  • la découpe de sections de longueurs diverses
    dans des barres en fer.
  • Plusieurs variantes 01KP, LKP (continue),
    UKP(exemplaires de i), BKP (borné), d-KP
    (multidimensionnel), MOKP(multi-objectifs), QKP
    (quadratique), MCKP (choix multiples), MKP
    (multiple)

5
Voyageur de Commerce (PVC/TSP)
  • n villes
  • Dik distance entre les villes i et k
  • But  trouver un cycle haméltonien pour visiter
  • toutes les villes une et une seule fois et
    revenir
  • à la ville de départ .
  • Domaines dapplication
  • Transport (ramassage scolaire, ordures,
    personnel)
  • Logistique (livraison, enlèvement de
    marchandises)
  • Industrie (bras dun robot pour percer les trous
    dun
  • circuit électronique).

6
Affectation Quadratique (QAP)
  • n usines et n sites
  • Fik (flux entre usines) et Djl distance entre
    sites
  • But  affecter les usines aux sites pour
  • minimiser les coûts dinteraction 
  • Domaines dapplication
  • VLSI, cockpits davion,
  • services hospitaliers, parcs forestiers
  • clavier ergonomique, turbines hydrauliques
  • Imagerie, sport, calcul parallèle, ordonnancement
  • etc

7
Méthodes de résolution
Borne supérieure
Borne inférieure
Bsup
Binf
F
Méthodes approchéesBsupf(x0)
Méthodes exactes
  • Enumération implicite
  • (Branch-and-X, PDyn, A, DC, )
  • Solveurs
  • PL(CPLEX, XPRESS-MP, ),PNL
  • PPC Programmation par contraintes
  • Heuristiques spécifiques
  • Metaheuristiques

--Optimales, Rapides
Optimales, --Complexes
8
Méthodes de résolution
Méthodes Approchées
Méthodes Exactes
Heuristiques
A, DC
Métaheuristiques
Programmation dynamique
Branch-and-X
  • Approchées faciles à implémenter, rapides,
  • -- sans garantie de la solution
    trouvée.
  • Exactes garantissent loptimalité de la
    (les) solution(s),
  • -- complexes, temps de résolution exponentiel.

9
Besoin dune bibliothèque. Pourquoi?
  • Optimisation
  • Réduire les coûts de développement de nouvelles
    applications
  • Concentrer les efforts sur les parties
    application
  • Développement dapplications portables
  • Parallélisme
  • plus vite, plus grand
  • réduction temps de calcul
  • augmentation de la taille des applications
  • meilleur, plus robuste
  • amélioration de la qualité de la solution
  • facilité de fixation des paramètres

10
PVC
Applegate, Bixby, ChvatalCook 1998-2001, Rutgers
University
  • Branch-and-Cut (parcours parallèle pool de
    coupes géré en //, maître-esclaves)
  • usa13509 48 machines (AlphaServer 4100,
    UltraSparc, PII et Pros.)
  • - d15112 110 machines
  • (Alpha 21264 500-667, 21164 400,
    Athlon 800, PIII 450-1G)
  • Runtime support POSIX threads NFS sockets
    (Concorde)
  • http//www.math.princeton.edu/tsp/index.html

11
QAP
Anstreicher, Brixius, GouxLinderoth, 2000, Univ.
Iowa et Argone National Lab
Branch-and-Bound (parcours arborescent parallèle,
maître-esclaves, tolérant aux fautes),
Relaxation Convexe Quadratique. 2510 machines
(MPP inclus) Runtime support MW Condor PVM
(projet Globus) http//www-unix.mcs.anl.gov/metane
os/
12
Librairies pour Branch-and-X //
  • Commercial softwares
  • CPLEX (iLog)
  • XPRESS-MP (Dash Associates)
  • FORTMP (NAG Ltd.)
  • ABACUS ? (Univ. of Köln)
  • Branch-and-Bound
  • BOB (Univ. of Versailles)
  • MetaNEOS / FATCOP
  • (Argonne NL Univ. of Wisconsin)
  • PUBB (Univ. of Tokyo)
  • PPBB-Lib (Univ. of Paderborn)
  • ZRAM (Eth Zürich)
  • Mallba(Spain)
  • Branch-and-X
  • BOB (Bobo -) )
  • COIN (IBM)
  • PARINO (Georgia Tech.)
  • PICO (Sandia Lab. Rutgers Univ.)
  • Symphony (Rice Univ.)
  • Quelques limitations
  • non maintenues
  • spécifiques à 1 classe de problème (IP, MIP
  • 1 méthode de résolution
  • machine dépendante code non portable
  • machines // avec nombre limité de CPUs

13
Plan de la Présentation
  • Problèmes dOptimisation Combinatoire (POCs)
  • Exemples dapplications
  • Méthodes de résolution
  • Outils de résolutions (solveurs et bibliothèques)
  • La bibliothèque Bob
  • Architecture, fonctionnalité et interface de
    programmation
  • Parallélisme dans Bob
  • Exemples dapplications en OC avec Bob
  • Conclusion et Perspectives

14
Bibliothèque daide au développement BOB/BOB
www.prism.uvsq.fr/ blec/Research/BOBO
  • BoB créé en 1994 pour capitaliser le savoir-
    faire en BX//
  • BOB Langage Orienté objet C, types
    paramétrés (template), réentrance
  • Caractéristiques
  • Choix des algorithmes de résolution
    (implantées)
  • Divide-and-Conquer, Branch-and-Bound,
    Programmation dynamique, A
  • Une API unique pour les applications
  • Un seul programme pour une exécution séquentielle
    ou //
  • Architecture
  • Classes de base
  • Structures de données
  • Nuds
  • Stratégies de parcours
  • Algorithmes de résolution
  • Applications

APPLICATION XX
Algo
BobXXInfoAlgo
BobXXNode
BobSDCAlgo
BobBBAlgo
BobCDCAlgo
BobSchedAlgo
BobSchedNode
BobAlgo
BobNode
BobInfoAlgo
BobGDS
15
Fonctionnalités
  • Méthodes communes aux algorithmes virtuelles
  • Initialisation du root (GetROOT()) et solution
    initiale (GetSol())
  • Initialisation de linfo lecture des données et
    options (Init())
  • Opérateur de génération de sous-problèmes
    (GenChildoperator())
  • Généricité de la procédure

Gestionnaire du pool
Opérateur de génération
16
Parallélisme ATHAPASCAN / KAAPI Apache
(ID-IMAG), 96
  • Open Source, Orienté objet (C)
  • Objectif faciliter la mise au point de
    programmes parallèles portables
  • mémoire virtuellement partagée VSM (Virtual
    Shared Memory)
  • Grain de donnée objet partagé Sharedlt
    user_type gt x
  • Grain de calcul tâche (appel de procédure)
    Fork ltfoogt()(args )
  • Ordonnancement, communications, synchronisations
    gérées par Kaapi
  • Ordonnancement dynamique Work Stealing (receiver
    initiative)

17
Documentation Bob
  • Lien http//wwwex.prism.uvsq.fr/users/blec/Resear
    ch/BOBO/
  • Exemples de bases
  • Affectation quadratique (QAP)
  • Voyageur de Commerce (PVC/TSP)
  • Reines
  • Sac à Dos (Knapsack)

18
Plan de la Présentation
  • Problèmes dOptimisation Combinatoire (POCs)
  • Exemples dapplications
  • Méthodes de résolution
  • Outils de résolutions (solveurs et bibliothèques)
  • La bibliothèque Bob
  • Architecture, fonctionnalité et interface de
    programmation
  • Parallélisme dans Bob
  • Exemple dapplication en OC avec Bob
  • Conclusion et Perspectives

19
Application QAP avec Bob
  • Projets DOC-G e-Toile
  • 5000 lignes de code
  • 2 code Bob
  • Version séquentielle AZQAP
  • Algorithme Branch-and-Bound BobBBAlgo
  • BobQAPInfoAlgo Size, matrices F et D, sym, UB
  • BobQAPNode Size, costtab, sol, ..
  • Version parallèle AZQAP
  • Version séquentielle 2 opérateurs demballage
    et déballage

20
Méthodes exactes BX
  • Progrès spectaculaire depuis début des années 90
  • Augmentation de la puissance des processeurs
  • Amélioration des bornes inférieures
  • Continue (simplexe, PL), relaxation
    lagrangienne,(Bound)
  • Génération de colonnes (Price)
  • Approche polyédrale (Cut), Lift and project
  • autres relaxations Programmation quadratique,
    Programmation semi définie positive SDP
  • programmation par contraintes PPC (Infer)
  • ? tendance à la sophistication, calcul plus
    long,mais candidat potentiel à la
    parallélisation
  • Détection de symétries et de dominances
  • Parallélisme massif dans les parcours
    arborescents
  • Arbre critique de taille énorme
  • Nugent 24 48 455 496 sommets dans 3488,3490
  • Nugent 30 12.10 9 sommets pour 677 valeurs

21
Algorithme Branch-and-Bound
Procédure BB ? minimisation, récupérer borne
supbsup f(x0) ?créer une nouvelle file de
priorité h contenant x0 h makeheap(x0) Tant
que h nest pas vide ? choisir le meilleur
sommet à explorer X deletemin(h) ?
Pour chaque sommet fils y de x (opérateur
de génération) ? mise à jour et
élagage Si y est une solution de
réalisable, meilleure que la borne
sup actuelle, Bsup f(y)
Deletegreater(bsup,h)
? insertion nouveau sommet
Si y nest pas une solution
et v(y)ltbsup, Insert(y,h)
Finpour Fin tant que
  • ?Principe Séparation et Evaluation
  • ? Eléments de base
  • Bornes inférieure
  • Valeur de la meilleure solution connue
  • Opérateur de génération
  • Fonction dévaluation v
  • Stratégie de parcours
  • ? Conditions délagage
  • v(sommet)? f(x0)
  • ? Condition darrêt
  • Toutes les branches explorées

Solution Optimale
22
Différentes stratégies de parcours arborescent en
//
  • Granularité dune tâche affectée à un processeur
    Nombre de sommets explorés entre deux
    communications
  • Contrôle de la recherche
  • Gestion des nuds
  • Stratégie centralisée (un pool central)/Distribuée
    (plusieurs pools)
  • Ordonnancement
  • Information complète (priorités,bsup)/
    incomplète
  • Rôle des processeurs
  • Contrôle centralisé Maître/esclaves
  • Distribué, collégial
  • Plusieurs niveaux
  • Equilibrage de charge stratégies équivalentes

23
Tendance actuelle
  • Utilisation de processeurs ou machines
    élémentaires commerciales puissantes PCs,
    serveur
  • Machines faites à façon par agglomération
    (cluster) de processeurs via des réseaux locaux
    rapides à faible latence (Quadrix,
    Myrinet,Infiniband, GigabitEthernet)
  • Nud PCs, serveurs (quadriprocesseurs, 8 à 128
    proc.), mémoire partagée
  • Nombre de nuds variable 1 Teraflop/Gigaflop 10
    12 /10 9 opérations flottantes par seconde
  • 50 Teraflops crête 10 000 x 5 Gigaflops/proc
  • 125 (16 x
    5 Gigaflops/proc)

24
2 Mesures de Performances
  • Accélération ou Speedup
  • rapidité
  • T1temps avec 1 processeur
  • Tptemps avec p processeurs
  • SpT1/Tp
  • T1 temps pour algo séquentiel le plus rapide
    (absolu) ou algo parallèle avec 1 processeur
    (relatif)
  • Efficacité
  • Taux dactivité des p processeurs
  • Ep Sp/p

Speedup linéaire Spp, Ep1 Speedup
superlinéaire (nondeterministic search cache
uses) Spgtp, Epgt1 Speedup défavorable Spltltp,
Epltlt1
25
Parcours séquentiel et //
Consistance avec le parcours Séquentielrespecter
le plus possible lordre du parcours
séquentiel B. Mans and C. Roucairol,
Performances of Parallel Branch and Bound
Algorithms with Best-First Search DAM Discrete
Applied Mathematics, 66(1), pp. 57-76, 1996.
26
Deuxième succès Affectation quadratique(QAP)
  • Problème daffectation quadratique à 30 villes et
    30 sites Nugent30
  • résolu exactement par Anstreicher, Brixius,
    GouxLinderoth, 2000,
  • Univ. Iowa et Argone National Lab.

Applications VLSI, cockpits davion, services
hospitaliers, clavier ergonomique ...
14,5,28,24,1,3,16,15,10,9,21,2,4,29,25,22,13,26,17
,30,6,20,19,8,18,7,27,12,11,23 6124 Annoncé
dans la presse Chicago Tribune, Chicago Sun
Times,HPCWire,WCNA Access magazine Infoscience,
Le Monde, Transfert,..
27
Parcours // point de vue algorithmique et
modèle de programmation
6
28
Début du millénaire deux succès médiatisés
  • Voyageur de commerce
  • VdC symétrique à 13509 et 15112 A. Rohe villes
    résolues exactement
  • par Applegate, Bixby, ChvatalCook 1998-2001

29
Retour sur deux succès Challenges TSP et QAP
9 539 sommets Réseau de 48 stations Séq DEC
Alpha server 400Mhz 10 ans
Traveling Salesman Size gt Usa 13 509
11 892 208 412 sommets Grille sur un réseau 2510
machines PC,Sun et SGI O2000 2 lab nat. (Arg.
lab.,NCSA) 5 universités américaines (Wisconsin,Ge
orgia tech., New mexico, Colombia, North
western) IFN réseau italien MW Arg.Lab,Condor
Univ.Wisconsin,PVM 7 jours Séq HPC3000 7 ans
Quadratic Assignment Size gt Nug30
30
Plan
  • Les applications concernées
  • Problèmes difficiles
  • Les machines
  • Tendances actuelles
  • Parallélisation des Méthodes exactes
  • BX
  • Parallélisation des Méthodes approchées
  • Metaheuristiques
  • Grilles de calcul?

31
(No Transcript)
32
Parcours séquentiel
Binf2
FMin f(x)/xeX
Sommet critique V(S)lt f Sommet éliminé V(S)gt
Bsup Sommet indécidable V(S) f Sommet terminal
V(S) f solution réalisable S
4
5
7
V(S) évaluation dun sommet S
9
10
Enveloppe de larborescence critique
13
15
18
V(S)lt f
F20
25
V(S) f
28
Bsup 30
33
Parcours //
34
Caractéristiques des méthodes de résolution dOC
  • Des applications irrégulières
  • Irrégularité CAPA 1995, STRATAGEM
    1996Parallélisme et applications irrégulières,
    G.Authié, J.M.Garcia, A.Ferreira, J.M.Geib,
    J.L.Roch et G.Villard, J.Roman, C.Roucairol,
    B.Virot, Hermès, 1995.
  • Graphe de dépendance imprévisibleaucune partie
    du graphe de dépendance peut être défini à la
    compilation ou avant lexécution (recherche
    arborescente BB, exploration dun espace de
    solutions)
  • Partitionnement, regroupement Affectation
    Ordonnancement dynamique à lexécution
  • (Equilibrage partage de tâches)
  • Granularité
  • Méthode arborescente moyenne à forte
  • Méthode approchée faible

35
Convaincre la communauté RO?
  • Combattre lexplosion combinatoire
  • Mise à disposition récente de librairies
    permettant un développement plus facile
  • Problèmes rencontrés Partitionnement, Allocation
    et Ordonnancement dynamique, Problèmes
    difficiles de RO
  • Un cluster de 8 PCs 1 Serveur pour 15K 1
    teraflops 10 12 opérations flottantes par
    seconde? 2,5 M d
  • 1 machine n, T2n
  • 1024 x plus vite n n10
  • Trop difficile
  • mieux vaut consacrer du temps à la recherche de
    meilleures bornes,
  • Demande des connaissances poussées plus en
    Programmation parallèle quen RO
  • Machines parallèles trop chères, difficiles
    daccès

36
Conception dune méthode de résolution parallèle
? partition en tâches ?communication graphe de
dépendance entre tâches ? Regroupement ?
Allocation Affectation ordonnancement
37
Discrete Optimization Challenges on GRIDDéfis
en Optimisation Combinatoire sur Grille de
machines
Un projet de 3 ans
www.prism.uvsq.fr/DOC-G/
PARADISEO OPAC
BOB/BOB OPALE
Athapascan P3 O2
38
Borne inférieure RLT niveau-1
Adams Sherali 1986 Resende, Ramakrishnan
Drezner 1995
Soient yijklxijxkl et CijklFikDjl , le PL
relaxé au niveau 1
Contraintes daffectation linéaire
paires complémentaires
n2(n-1)2/2 variables yijkl, n2 variables xij,
2n2(n-1)2n contraintes n30, 379 350 variables
et 52 260 contraintes.
39
Procédure duale de Peter Hahn Fondé sur Méthode
Hongroise O(n3) décomposition Lagrangienne itérée
Borne inférieure Super leader
Cijkl
cij
Dijklpq
40
IMACS05
Lowe Bound
linear cost quadratic cost nul costs
Example N4
41
IMACS05
Lowe Bound
linear cost quadratic cost nul costs
Example N4
42
IMACS05
Lowe Bound
linear cost quadratic cost nul costs
Example N4
43
IMACS05
Lowe Bound
linear cost quadratic cost nul costs
Example N4
44
IMACS05
Lowe Bound
linear cost quadratic cost nul costs
Example N4
45
Résultats expérimentaux
Pareo2005
  • BOB/Athapascan
  • BB parallèle
  • branchement Polytomique
  • Tests pour éliminer les affectations
    symétriques

usine i
sites
46
Sequential results (Level_1 RLT)
Pareo2005
On Pentium Xeon (2.4 Ghz, 2Go RAM, gcc-3.3)
47
Résultats sur des exemples de taille petite à
moyenneCung, Guignard-Spielberg, Hahn, Mautor
RoucairolThèse en cours Abdelaziz Djerrah
  • BOB Charm/Converse (charm.cs.uiuc.edu)
  • Branchement simple (pas de look-ahead)
    détection des symétries
  • RLT niveau-1 pour borne inf

48
Parallel Results on a small Cluster
5 nodes Xeon bi-proc, 2.4Ghz, 2 Gbytes RAM
49
Résultats sur taille moyenneA.Djerrah,
VDCung,TMautor,CRoucairol 2003
  • Instance Nugent 18
  • Machines
  • 7 bi-Xeons 2.4GHz, 512 Ko, 2Go (cocteau,
    prism)
  • SpeedUp12.79
  • Efficacité92

50
Résultats Niveau1_RLT (1)
Scaling100
Diff 5
51
Résultats sur des tailles plus grandes
  • Grappe de PCs, I-Cluster 2
  • 100 PCs 733Mhz 256 Mbytes, Linux, Univ.Grenoble,
    cluster.imag.fr
  • Nombre de sommets
  • Temps en secondes

10mn
52
Résultats sur des tailles plus grandes
  • I-Cluster 2
  • Temps en secondes
  • ngt30 taille mémoire limitéede chaque PC à
    256Mo

53
? Parallélisation de metaheuristiques
54
Pourquoi paralléliser les metaheuristiques?
  • plus vite, plus grand
  • meilleur, plus robuste
  • amélioration de la qualité de la solution
  • facilite fixation des paramètres

55
Recherche locale
  • Graphe des voisinages
  • sommets solutions
  • arcs connectant les solutions du voisinage
  • Recherche locale Itération basique
  • à partir d'un sommet ou solution initiale,
    répéter jusquà un certain critère d arrêt
  • évaluer les solutions dans le voisinage de la
    solution courante,
  • évaluer leur coût,
  • effectuer un mouvement vers un des voisins (règle
    de pivotage) qui devient la solution courante.
  • Marche chemin reliant les solutions visitées
    durant la recherche dans le graphe des
    voisinages
  • Metaheuristique marche dans le graphe des
    voisinages pour échapper aux minima locaux

56
Deux types de parallélisation
  • parallèlisation interne - une seule marche
  • recherche du meilleur voisin effectuée de manière
    concurrente
  • soit par parallélisation du calcul du coût
    (fonction complexe)
  • soit par décomposition du voisinage (ou du
    problème) sur différents processus
  • parallèlisation externe - plusieurs marches
  • indépendantes
  • exploration en // à partir de plusieurs sommets ?
    du graphe des voisinages
  • partition du problème en sous problèmes (en
    fixant certaines variables), exploration des sous
    problèmes en parallèle
  • coopératives

57
Une seule marche
  • recherche du meilleur voisin effectuée de manière
    concurrente
  • par parallélisation du calcul du coût (fonction
    complexe)
  • Temps réduit, pas de modification de la marche
    séquentielle
  • par décomposition du voisinage (ou du problème)
    sur différents processus
  • Plus grande portion du voisinage étudiée,
    possibilité de trouver de meilleures solutions

58
Une seule marche
  • fréquentes synchronisations
  • conserve propriètés de convergence RS recuit
    Simulé
  • technique fréquente pour RS recuit Simulé ou AG
    algorithmes génétiques
  • Grain fin à moyen
  • Problème de tournées VRP
  • partition des clients en sous ensembles
  • en //, construction par metaheuristique de
    différentes routes sur chaque sous ensemble
  • Synchronisation combinaison des routes pour
    obtenir une solution complète du VRP améliorée
    par recherche Tabou TS

59
Plusieurs marches Indépendantes
  • exploration en // de plusieurs marches
  • partant de sommets différents dans le graphe des
    voisinages
  • intersection en 1 sommet ou plus
  • exécution successive de p marches en séquentiel
  • exploration en // de sous graphes du graphe des
    voisinages obtenus par décomposition du
    problème

60
Plusieurs marches Indépendantes
  • PLUS facile à implanter, bonnes accélérations
    pour certains problèmes (cf théorème), utile pour
    la fixation de paramètres MOINS stratégie un
    peu pauvre du point de vue de linformation
    échangée, manque de coopération entre les
    différentes marches, peut générer des problèmes
    déquilibrage ou de travail redondant

En //
61
Complexité des metaheuristiques parallèles
  • Indices de performances d un algorithme
    parallèle
  • speed-up absolu/relatif, efficacité, anomalie
  • Speed up pour un algorithme de recherche locale
    parallèle
  • pour des instances de même taille, rapport entre
    temps moyen pris pour trouver une solution
    dépassant l'optimum global de ? avec un
    algorithme séquentiel, et le temps moyen pour
    trouver une solution dépassant l'optimum global
    de ? avec un algorithme parallèle utilisant p
    processeurs (qualité fixée)

62
Théorème de marches multiples indépendantes
  • si Qp(t)est la probabilité de ne pas trouver une
    solution excédant l'optimum de ? en t unités de
    temps avec p marches indépendantes, et si Q1(t)
    e -t/l avec l ? R alors Qp(t) Q1(pt)
  • possible d'obtenir un speed-up linéaire avec des
    marches multiples indépendantes si trouver une
    solution optimale (ou sous optimale) en un nombre
    d'unités de temps fixé suit une loi de
    probabilité exponentielle
  • Comportement vérifié
  • Affectation Quadratique
  • Recherche Tabou sur, Battiti et Tecchiolli, 92,
    Taillard, 91,
  • Recuit Simulé, Dodd, 90
  • GRASP Aiex et al, 2000
  • arbre de Steiner, Osborne et Gillett 91
  • Min independent set, planarisation graphe

63
Plusieurs marches coopératives
  • les marches échangent et partagent linformation
    obtenue tout au long de leur traversée
  • linformation partagée
  • solutions d élite, meilleure solution trouvée,
    liste tabou, taille des populations des ilôts,
    nombre, etc.
  • Variables globales ou pool en mémoire locale
    d un processeur spécialisé accessible par tous
    les autres
  • stratégie plus générale, plus prometteuse mais
    demandant plus deffort à limplantation

64
Plusieurs Marches coopératives
  • But accélérer la convergence vers de très bonnes
    solutions et trouver en moins de temps quavec
    des marches indépendantes de meilleures solutions
  • Difficultés nature de l information à partager
    ou échanger sans engendrer trop de surcoût de
    communication ou de stockage

65
De très nombreux exemples!
  • Tabou, Grasp,VNS, Méthodes évolutionaires,
  • Exemples commentés dans
  • V.D.Cung, C.Roucairol Implémentations parallèles
    des metaheuristiques Résolution de problèmes de
    RO par les Metaheuristiques, eds. Marc Pirlot,
    Jacques Teghem, Traité IC2, série Informatique
    et systèmes dinformation, 2003.
  • V.D. Cung, S. Martins, C.Ribeiro and C. Roucairol
  • Strategies for the Parallel Implementation of
    MetaheuristicsEssays and Surveys in
    Metaheuristics, Guest Editors C.C. Ribeiro and
    P. Hansen, Kluwer Academic Publishers , 263-308,
    2001. www.optimization-online.org/DB_HTML/2001/05
    /321.html
  • Journal of Heuristics, Vol 10, number 3, May
    2004Special issue New advances on parallel
    metaheuristics for complex problems

66
Un exemple Recherche par dispersion pour
lAffectation Quadratique
  • A scatter search based approach for the QAP
    Proc.of IEEE-ICEC97, VDCung, T.Mautor
    P.Michelon, A.Tavares
  • Ensemble de solutions de référence (dispersé)
  • 2n solutions obtenues par permutation circulaire
    sur une permutation (solution initiale)
  • Combinaison convexe sur 2 à 5 solutions délite
  • Si solution non réalisable Heuristique pour
    trouver la plus proche
  • amélioration recherche tabou
  • Mouvement échange entre 2 usines
  • Mouvement inverse tabou
  • intensification
  • diversification
  • Statut tabou sur solutions délite
  • Faible affectations peu utilisées jusqualors

67
Robustesse des parallélisations
10 exécutions // de Sko56
68
Deux types de parallélisation étudiées
  • Marches indépendantes
  • Plusieurs marches coopératives
  • Diffusion 1 dune bonne solution locale à tous
    les autres
  • Insérée si meilleure que la pire de lensemble de
    référence, sinon rejetée
  • Diffusion 2 vers une autre marche aléatoirement
    choisie
  • Réseau de stations de travail type PC connectées
    par Ethernet 10Mbits /PVM

2500 itérations
69
Deux types de parallélisation étudiées
70
Robustesse
5 exécutions // de tai100a
5 exécutions // de thp150a
3 processeurs, ensemble de référence 2n
71
Parallélisme et metaheuristiques font-ils bon
ménage?
  • NON
  • une metaheuristique demande peu de temps
    d'exécution
  • les gains sont de toute façon faibles pour des
    accélérations pas très intéressantes
  • l'implémentation d'une metaheuristique est déjà
    bien complexe, sa parallélisation demande un
    effort supplémentaire
  • OUI
  • importants gains de temps même avec une stratégie
    basique face à des metaheuristiques de plus en
    plus sophistiquées et coûteuses
  • un moyen facile et rapide
  • de régler des paramètres d'une méthode
  • d'améliorer la qualité des solutions fournies
    via une diversification naturelle de la
    recherche (plus grande diversité génétique ou
    meilleure exploration de l'espace de recherche)

72
? Et les grilles?
73
Et les grilles?
  • Caractéristiques
  • Nombre important de machines
  • Hétérogènes
  • Disponibilité variable
  • Vaste réseau dinterconnexion
  • Applications à forte granularité
  • Nécessité denvironnements de programmationpermet
    tant
  • Tolérance aux pannes
  • Auto-adaptation des applications à
    lenvironnement
  • Exemples
  • MWCondorPVM
  • MARSPM2

74
Algorithme centralisé modèle Maître-Esclaves
  • Modèle simple à implémenter et efficace si
  • 1Possibilité de régler la granularité dune
    tâche
  • taille des sous arbres à explorer
  • 2 Peu déchanges entre maître et esclaves
  • racine des sous arbres (début dune tâche)
  • 3 Peu de synchronisation entre esclaves
  • Borne supérieure? Globale (fin dune tâche)
  • Chaque esclave explore indépendamment des autres
    son sous arbre
  • Stratégie déquilibrage de charge
  • Tolérance aux fautes
  • Ajout ou retrait dun esclave gérées au niveau du
    maître
  • Sauvegarde des données du maître
  • Beaucoup dexpériences positives
  • ClausenPerregaard 1994, Mans, MautorRoucairol
    1995,
  • Bruengger, Clausen, MarzettaPerregaard 1996,
  • Dennelin, Le cun,Mautor, Méhaut 1996, CungLe cun
    2000,

75
Mais, attention à la généralisation!
  • Préférer un algorithme distribué
  • si les conditions précédentes ne sont pas
    vérifiées
  • TSP usa13509, évaluation de chaque sommet 33 060
    s gt 9h.
  • Vertex-Cover avec borne par SDP CungRoupin
    1999, évaluation gt1 minute pour problèmes
    (100-250 sommets), très peu de sommets pour pbs
    (10-50).
  • Condition 1 non satisfaite (équilibrage
    difficile)
  • Difficulté à adapter la granularité des sous
    arbres explorés
  • Conditions 2 3 non satisfaite (surcoût de
    communication)
  • applications avec structures globales (CLOSED
    list in A, 2D Guillotine Cutting)
  • programmes parallèles plus mauvais que
    séquentiel!

76
Projet RNTL e-Toile 2001-2003
Universités Industriels CNRS (STIC, UREC,
IBCP), ENSL/LIP, INRIA/RESO, ID-IMAG,
IRISA/Paris, University (UVSQ/PRISM), CEA, CS,
EDF, SUN Utilisateurs CEA, EDF, IBCP, PRISM
77
e-Toile (Juin 2003)
e-Toile 1 grid platform 7 sites 10
grid nodes 200 heteregeneous processors OS
(partners ownership on full time or
vacations basis) 10 Gbps IPV6 network
VTHD 10 Gb/s
ENS-LYON
UREC
RESO
supervision administration
LIP
CERN (Datagrid, Datatag)
poi0 à poi23
78
Expériences sur e-Toile
  • Nug20 (20 usines et 20 sites)
  • Temps
  • 1648secondes, gt4h sur la grappe du CEA composée
    de 20 AMD MP,1800
  • 499 secondes (8.3mn) sur quatre grappes
    totalisant 84 processeurs
  • 7bi-Xeons 2.4Ghz, 2Go (PRiSM)
  • 10bi-AMD MP 1800, 1Go (CEA)
  • 10bi-Xeons, 2.2Ghz, 2Go (EDF)
  • 15bi-PIII, 1.4Ghz, 1Go (ENS-Lyon)
  • accélération brute àT20/T84 3,1

79
Conclusions
  • Les implémentations parallèles ne devraient pas
    rester le domaine de spécialistes et devraient
    être à la portée de n'importe quel utilisateur
  • La mise en place de librairies daide au
    développement méthodes séquentielles et
    parallèles est nécessaire
  • Méthodes exactes BX//
  • Méthodes approchées
  • recherche locale EA alg. Évolutionaires,
    hybridation
  • Paradiseo, Univ.Lille, MALLBA 2002, Espagne
  • restreint EA
  • DREAM 2002,ECJ O2, JDEAL 99, DBEAGLE 03

80
  • Parallel Optimization, Crainic T., Roucairol C.,
    Annals of Operations Research 90, Baltzer Science
    publ, 1999.
  • Algorithmes parallèles analyse et conception,
    G.Authié, A.Ferreira, J.L.Roch et G.Villard,
    J.Roman, C.Roucairol, B.Virot, Hermès, 1994.

81
EURO Working group PAREO
  • PAREO 2005 au Québec
  • January 17-20 , 2005.
  • Submission deadline
  • Contact
  • pareo2002_at_prism.uvsq.fr
  • www.prism.uvsq.fr/blec/PAREO/

82
Level_1 RLT bound results
Pareo2005
  • Lower bounds
  • Hahn-and-Grant 2000 iterations on SPARC 10
    (75Mhz Super Spare processor)

83
e-Toile experiments
  • e-Toile project
  • French Grid initiative
  • Very high speed network
  • 6 locations, clusters and supercomputers
  • Goals
  • Replaces or changes some parts of the Globus
    System
  • Our experiments
  • Same code Athapascan BOB

84
Résultats(2)
85
Resolution with Peter Hahns DUAL procedure
(Iterated Lagrangian decomposition) Slightly
worse solutions,but faster than CPLEX.
Nugent 12 1995, CPLEX 3.0, Silicon Graphics
250Mhz, 1.2GB RAM ADP (conjugate gradient based
interior point method) spent 6504 seconds. The
best CPLEX 3.0 methods have not been able to
solve instances for size ngt8 and ADP is reported
to be at least 200 times faster than CPLEX 3.0
barrier.
Write a Comment
User Comments (0)
About PowerShow.com