Télécharger la présentation
Publié parMarine Guillemot Modifié depuis plus de 10 années
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) SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
5
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 bi représentant sa longueur. Hyp : bi ≥ li (exécution incomplète si bi<li) bi SOGEA - 16/02/2007 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. SOGEA - 16/02/2007
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. SOGEA - 16/02/2007
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] SOGEA - 16/02/2007
9
Objectif Borner la performance d’un protocole (algorithme) à véracité garantie Pas de paiements SOGEA - 16/02/2007
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] SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
12
Modèles d’exécution Modèle fort Modèle souple
Une tâche i ayant déclaré bi obtiendra son résultat li unités de temps après le début de son exécution. Modèle souple Une tâche i ayant déclaré bi obtiendra son résultat bi unités de temps après le début de son exécution. li = 2 bi = 3 SOGEA - 16/02/2007
13
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort 2-1/m * Souple * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] SOGEA - 16/02/2007
14
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort ? 2-1/m * Souple * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] SOGEA - 16/02/2007
15
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 1 M1 M2 M3 Au moins une tâche t se termine à la date m. SOGEA - 16/02/2007
16
Modèle fort, algorithme déterministe, borne inférieure (2/2)
la tâche t déclare 1 : 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é 3 3 1 Makespan < (2-1/m) OPT = 5 OPT = 3 début(t) < 2, fin(t) < 3 SOGEA - 16/02/2007
17
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) Souple SOGEA - 16/02/2007
18
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) ? Souple SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
20
Modèle fort, algorithme randomisé
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 J’ai intérêt à déclarer 2.5 plutôt que 1 3 2 1 E[C1] = p + 3(1-p) = 3 - 2p 1 3 3 SPT : LPT : 2 2 1 2.5 LPT : 3 E[C1] = 1 SPT : 2 3 2.5 2 SOGEA - 16/02/2007
21
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 5 8 3 6 9 1 2 3 4 5 6 7 8 9 10 11 12 SOGEA - 16/02/2007
22
Algorithme DSPT Propriété : DSPT est (2-1/m)-approché
Idée de la preuve : 1 2 3 4 5 6 7 8 9 10 11 12 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) SOGEA - 16/02/2007
23
Algorithme DSPT Propriété : DSPT est (2-1/m)-approché
Idée de la preuve : Cmax 1 2 3 4 5 6 7 8 9 10 11 12 Cmax = (∑(idle times) + ∑(li)) / m ∑(idle times) ≤ (m-1) ln and ln ≤ OPT Cmax ≤ ( 2 – 1/m ) OPT SOGEA - 16/02/2007
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. SOGEA - 16/02/2007
25
Un algorithme à véracité garantie
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 Je n’ai pas intérêt à mentir. 3 2 1 E[C1] = 5/3 1 3 3 DSPT : LPT : 2 2 1 2 3 LPT : 3 E[C1] = 5/3 DSPT : 2.5 2.5 2 SOGEA - 16/02/2007
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 < SOGEA - 16/02/2007
27
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) Souple ? SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
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é. SOGEA - 16/02/2007
30
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) Souple m=2: ρ≥1.1 m≥3: 7/6 4/3-1/(3m) SOGEA - 16/02/2007
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 M2 10 3 5 M3 9 2 4 3 SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
33
Bornes pour un système centralisé
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) Souple m=2: ρ≥1.1 m≥3: 7/6 4/3-1/(3m) 1 SOGEA - 16/02/2007
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] SOGEA - 16/02/2007
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. SOGEA - 16/02/2007
36
Bornes pour un système distribué
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) Souple ? SOGEA - 16/02/2007
37
Modèle souple, mécanisme de coordination déterministe, borne inf
ρ < (2+ε)/2 et ρ ≥ 2/(1+ε) → ρ ≥(1+√17)/4 > 1.28 SOGEA - 16/02/2007
38
Bornes pour un système distribué
Déterministe Randomisé inf. sup. Fort 2–1/m 2-1/m 3/2-1/(2m) Souple (1+√17)/4 > 1.28 1+(√13-3)/4>1.15 SOGEA - 16/02/2007
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 SOGEA - 16/02/2007
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.