1 / 39

Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes

Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes. F. Pascual - Laboratoire d’Informatique de Grenoble En collaboration avec : G. Christodoulou, L. Gourvès, E. Koutsoupias E. Angel, E. Bampis, A. Tchetgnia. Ordonnancement P||C max.

uttara
Download Presentation

Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes

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. Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes F. Pascual - Laboratoire d’Informatique de Grenoble En collaboration avec : G. Christodoulou, L. Gourvès, E. Koutsoupias E. Angel, E. Bampis, A. Tchetgnia

  2. Ordonnancement P||Cmax • m machines identiques • n tâches • toute tâche i a - une longueur li - un numéro d’identification M1 M1 M2 M2 Objectif : minimiser le makespan (la plus grande date de fin)

  3. Algorithmes d’approximation • SPT (Shortest Processing Time first) • 2-1/m approché • LPT (Largest Processing Time first) • 4/3-1/(3m) approché • Schéma d’approximation

  4. Ordonnancement de tâches individualistes • Chaque tâche i est contrôlée par un agent qui seul connaît li (tâche ≡ agent) • Les tâches communiquent leur longueur à un protocole qui doit les ordonnancer de sorte à minimiser le makespan

  5. bi Stratégies des agents • L’algorithme d’ordonnancement est connu. • Le but de chaque tâche est de minimiser sa date de fin d’exécution. • Chaque tâche i déclare une valeur bireprésentant sa longueur. • Hyp : bi ≥ li(exécution incomplète si bi<li) li

  6. Un exemple • Le protocole utilise l’algorithme LPT • 3 tâches de longueurs {2,1,1}, 2 machines La tâche rouge a intérêt à mentir sur sa longueur afin de minimiser sa date de fin d’exécution.

  7. Algorithmes à véracité garantie Algorithme à véracité garantie : algorithme avec lequel les tâches ne peuvent pas diminuer leur date de fin en mentant sur leur longueur.

  8. Retour sur l’exemple • Le protocole utilise l’algorithme SPT C’est un algorithme déterministe, à véracité garantie et 2-1/m approché.[Christodoulou et al. ICALP’04]

  9. Objectif • Borner la performance d’un protocole (algorithme) à véracité garantie • Pas de paiements

  10. Autres travaux en ordonnancement • Algorithmes à véracité garantie : économie • Paiement des agents • Ordonnancement : • Les agents sont les tâches : veulent minimiser la charge de leurs machines [Auletta et al, SPAA’04] • Les agents sont les machines • Mécanisme de coordination [Christodoulou et al, ICALP’04]

  11. Objectif Borner la performance d’un protocole (algorithme) à véracité garantie dans divers contextes • Déterministe ou randomisé • Modèle d’exécution fort ou souple

  12. bi = 3 li = 2 Modèles d’exécution • Modèle fort • Une tâche i ayant déclaré biobtiendra son résultatliunités de temps après le début de son exécution. • Modèle souple • Une tâche i ayant déclaré biobtiendra son résultatbiunités de temps après le début de son exécution.

  13. Bornes pour un système centralisé * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]

  14. Bornes pour un système centralisé * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]

  15. M1 1 1 1 M2 1 1 M3 1 1 Modèle fort, algorithme déterministe, borne inférieure (1/2) Hyp : Algorithme déterministe et de rapport d’approximation < 2-1/m . • m machines • m(m-1)+1 tâches de longueur 1 Au moins une tâche t se termine à la date m.

  16. 1 1 1 3 1 1 1 1 1 1 1 1 1 1 3 Modèle fort, algorithme déterministe, borne inférieure (2/2) • la tâche t déclare 1 : fin(t) ≥ 3 • La tâche t a intérêt à déclarer m plutôt que 1 : Ordonnancement optimal Ordonnancement (2-1/m-ε)-approché Makespan <(2-1/m) OPT = 5 OPT = 3 début(t) < 2, fin(t) < 3

  17. Bornes pour un système centralisé

  18. Bornes pour un système centralisé

  19. Modèle fort, algorithme randomisé • Idée : combiner : - un algorithme avec véracité garantie - un algorithme pas à véracité garantie mais avec un meilleur rapport d’approximation. • Exemple : algorithme SPT-LPT - avec une probabilité p : retourner un ordonnancement SPT - avec une probabilité (1-p) : retourner un ordonnancement . LPT

  20. Modèle fort, algorithme randomisé J’ai intérêt à déclarer 2.5 plutôt que 1 • SPT-LPT n’est pas à véracité garantie. • On a trois tâches : , , - La tâche 1 déclare sa vraie longueur : 1 - La tâche 1 déclare une fausse valeur : 2.5 3 2 1 E[C1] = p + 3(1-p) = 3 - 2p 1 3 3 SPT : LPT : 1 2 2 2.5 LPT : 3 E[C1] = 1 SPT : 2 2.5 2 3

  21. 12 0 1 2 3 4 5 6 7 8 9 11 10 Algorithme DSPT • Ordonnancer les tâches t.q. b1< b2< … < bn. La tâche i+1 commence quand 1/m de la tâche i a été exécuté. • Exemple : (m=3) 1 4 7 2 8 5 3 6 9

  22. 1 4 7 2 5 8 3 6 9 12 0 1 2 3 4 5 6 7 8 9 11 10 Algorithme DSPT • Propriété : DSPT est (2-1/m)-approché • Idée de la preuve : Temps d’inactivité : inactivite_avant(i) = ∑ (1/3 lj) inactivite_milieu(i) = 1/3 ( li-3 + li-2 + li-1 ) – li-3 inactivite_fin(i) = li+1 – 2/3 li+ inactivite_fin(i+1)

  23. 1 4 7 2 5 8 3 6 9 12 0 1 2 3 4 5 6 7 8 9 11 10 Algorithme DSPT • Propriété : DSPT est (2-1/m)-approché • Idée de la preuve : Cmax Cmax = (∑(idle times) + ∑(li)) / m ∑(idle times) ≤ (m-1) ln and ln≤ OPT Cmax ≤ ( 2 – 1/m ) OPT

  24. Un algorithme à véracité garantie • Algorithme DSPT-LPT : - Avec une probabilité m/(m+1), retourner DSPT - Avec une probabilité 1/(m+1), retourner LPT. • Le rapport d’approximation de DSPT-LPT est inférieur à celui de SPT. si m=2, rapport(SPT-LPT) < 1.39, rapport(SPT)=1.5 • Propriété : DSPT-LPT is à véracité garantie.

  25. Un algorithme à véracité garantie Je n’ai pas intérêt à mentir. • DSPT-LPT est à véracité garantie. • On a trois tâches : , , - La tâche 1 déclare sa vraie longueur : 1 - La tâche 1 déclare une fausse valeur : 2.5 3 2 1 E[C1] = 5/3 1 3 3 DSPT : LPT : 1 2 2 LPT : 3 E[C1] = 5/3 2 3 DSPT : 2 2.5 2.5

  26. Un algorithme à véracité garantie • Propriété :DSPT-LPT est à véracité garantie. • Idée de la preuve : Supposons que i déclare b>li. Elle est maintenant plus grande que les tâches 1,…, x, plus petite que la tâche x+1. l1 < … < li < li+1 < … < lx < b < lx+1 < … < ln • LPT : diminution de Ci(lpt) ≤(li+1 + … + lx) • DSPT : augmentation de Ci(dspt) = 1/m (li+1 + … + lx) • DSPT-LPT: changement = - m/(m+1) Ci(lpt) + 1/(m+1) Ci(dspt)≥ 0 b <

  27. Bornes pour un système centralisé

  28. Un algorithme déterministe pour le modèle souple • Idée : bénéficier de l’avantage de LPT (son rapport d’approx) mais pas de son inconvénient (les tâches mentent pour être exécutées en premier) • Construire un ordonnancement LPT puis l’exécuter en sens opposé, i.e. du makespan (Cmax) à la date 0

  29. LPT mirror Toute tâche t se commençant en d(t) dans LPT se termine à la date Cmax - d(t) dans LPT mirror. Si t déclare une valeur plus grande que sa longueur réelle alors Cmax ne peut qu’augmenter tandis que d(t) ne peut que diminuer. LPT mirror est à véracité garantie et 4/3 – 1/(3m) approché.

  30. Bornes pour un système centralisé

  31. Block : un algorithme randomisé pour le modèle souple • Ordonnancer les tâches de façon optimale. Makespan = OPT; Sommes des longueurs sur Mi = Li. • Ajouter une tâche fictive de longueur OPT-Li sur Mi. • Sur chaque machine, ordonnancer les tâches dans un ordre aléatoire. M1 9 9 10 3 5 M2 9 2 4 3 M3

  32. Block : un algorithme randomisé pour le modèle souple • Lemme : Soit un ensemble de tâches à ordonnancer selon un ordre aléatoire. E[ fin de i ] = li + ½ (lj)= ½ ((lj) + li) • Block est à véracité garantie. -i déclare li : Makespan= OPTli. E[ fin de i ] = ½ (OPTli + li) - i déclare bi>li : Makespan= OPTbi ≥OPTli. E[ fin de i ] = ½ (OPTbi + bi) i j

  33. Bornes pour un système centralisé

  34. Système distribué • Les tâches décident sur quelle machine elles vont être exécutées. • La stratégie de la tâche i est (bi,mi) • Chaque machine j a un algorithme local d’ordonnancement. Cet algorithme ne dépend que des tâches ayant choisi j : mécanisme de coordination [Christodoulou et al. ICALP’04]

  35. Prix de l’anarchie • Équilibre de Nash : Situation dans laquelle aucune tâche ne peut se terminer plus tôt en changeant unilatéralement de stratégie. • Prix de l’Anarchie = max {MakÉq. Nash / MakOPT} Objectif : borner le prix de l’anarchie pour les mécanismes de coordination à véracité garantie.

  36. Bornes pour un système distribué

  37. Modèle souple, mécanisme de coordination déterministe, borne inf M1 M1 M2 M2 M1 M1 M2 M2 ρ < (2+ε)/2 et ρ≥ 2/(1+ε) →ρ≥(1+√17)/4 > 1.28

  38. Bornes pour un système distribué

  39. Perspectives • Réduire les écarts entre bornes sup et inf • Mécanismes de coordination avec véracité garantie • Agents contrôlant plusieurs tâches • Machines avec vitesses

More Related