Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes F. Pascual - LIG En collaboration avec : G. Christodoulou, L. Gourvès, E. Koutsoupias E. Angel, E. Bampis, A. Tchetgnia
2 MAO - 25/01/2007 Ordonnancement P||C max m machines identiques n tâches toute tâche i a une longueur li Objectif : minimiser le makespan (la plus grande date de fin) M2M2 M2M2 M1M1 M1M1
3 MAO - 25/01/2007 Algorithmes dapproximation SPT (Shortest Processing Time first) 2-1/m approché LPT (Largest Processing Time first) 4/3-1/(3m) approché Schéma dapproximation
4 MAO - 25/01/2007 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 MAO - 25/01/2007 Stratégies des agents Lalgorithme dordonnancement est connu. Le but de chaque tâche est de minimiser sa date de fin dexécution. Chaque tâche i déclare une valeur bi représentant sa longueur. Hyp : bi li (exécution incomplète si bi<li) li bi
6 MAO - 25/01/2007 Un exemple Le protocole utilise lalgorithme 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 dexécution.
7 MAO - 25/01/2007 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 MAO - 25/01/2007 Retour sur lexemple Le protocole utilise lalgorithme SPT Cest un algorithme déterministe, à véracité garantie et 2-1/m approché. [Christodoulou et al. ICALP04]
9 MAO - 25/01/2007 Objectif Borner la performance dun protocole (algorithme) à véracité garantie dans divers contextes Déterministe ou randomisé Modèle dexécution fort ou souple Pas de paiements
10 MAO - 25/01/2007 Modèles dexécution Modèle fort 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
11 MAO - 25/01/2007 Bornes pour un système centralisé DéterministeRandomisé LBUBLBUB Fort 2-1/m * 2-(5/3+1/(3m))/(m+1) ** Souple * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] ** [Angel, Bampis, Pascual, TCS 2006]
12 MAO - 25/01/2007 Bornes pour un système centralisé DéterministeRandomisé LBUBLBUB Fort ? 2-1/m * 2-(5/3+1/(3m))/(m+1) ** Souple * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] ** [Angel, Bampis, Pascual, TCS 2006]
13 MAO - 25/01/2007 Modèle fort, algorithme déterministe, borne inférieure (1/2) m machines m(m-1)+1 tâches de longueur 1 Au moins une tâche t se termine à la date m. Hyp : Algorithme déterministe et de rapport dapproximation < 2-1/m. 1 M1M1 M2M2 M3M
14 MAO - 25/01/2007 Modèle fort, algorithme déterministe, borne inférieure (2/2) la tâche t déclare 1 : fin(t) 3 début(t) < 2, fin(t) < 3 OPT = 3 3 Makespan < (2-1/m) OPT = 5 Ordonnancement optimalOrdonnancement (2-1/m-ε)-approché La tâche t a intérêt à déclarer m plutôt que 1 :
15 MAO - 25/01/2007 Bornes pour un système centralisé DéterministeRandomisé LBUBLBUB Fort 2–1/m2-1/m *3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) ** Souple * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] ** [Angel, Bampis, Pascual, TCS 2006]
16 MAO - 25/01/2007 Bornes pour un système centralisé DéterministeRandomisé LBUBLBUB Fort 2–1/m2-1/m *3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) ** Souple ? * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] ** [Angel, Bampis, Pascual, TCS 2006]
17 MAO - 25/01/2007 Un algorithme déterministe pour le modèle souple Idée : bénéficier de lavantage de LPT (son rapport dapprox) mais pas de son inconvénient (les tâches mentent pour être exécutées en premier) Construire un ordonnancement LPT puis lexécuter en sens opposé, i.e. du makespan (C max ) à la date 0
18 MAO - 25/01/2007 LPT mirror Toute tâche t se commençant en d(t) dans LPT se termine à la date C max - d(t) dans LPT mirror. Si t déclare une valeur plus grande que sa longueur réelle alors C max ne peut quaugmenter tandis que d(t) ne peut que diminuer. LPT mirror est à véracité garantie et 4/3 – 1/(3m) approché.
19 MAO - 25/01/2007 Bornes pour un système centralisé DéterministeRandomisé LBUBLBUB Fort 2–1/m2-1/m *3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) ** Souple m=2: ρ1.1 m3: 7/6 4/3-1/(3m) * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] ** [Angel, Bampis, Pascual, TCS 2006]
20 MAO - 25/01/2007 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 M1M1 M2M2 M3M3
21 MAO - 25/01/2007 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= OPT li. E[ fin de i ] = ½ (OPT li + li) - i déclare bi>li : Makespan= OPT bi OPT li. E[ fin de i ] = ½ (OPT bi + bi) i j
22 MAO - 25/01/2007 Bornes pour un système centralisé DéterministeRandomisé LBUBLBUB Fort 2–1/m2-1/m *3/2-1/(2m) 2-(5/3+1/(3m))/(m+1) ** Souple m=2: ρ1.1 m3: 7/6 4/3-1/(3m)11 * [Christodoulou, Nanavati, Koutsoupias, ICALP 2004] ** [Angel, Bampis, Pascual, TCS 2006]
23 MAO - 25/01/2007 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 dordonnancement. Cet algorithme ne dépend que des tâches ayant choisi j : mécanisme de coordination [Christodoulou et al. ICALP04]
24 MAO - 25/01/2007 Prix de lanarchie É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 lAnarchie = max {Mak Éq. Nash / Mak OPT } Objectif : borner le prix de lanarchie pour les mécanismes de coordination à véracité garantie.
25 MAO - 25/01/2007 Bornes pour un système distribué DéterministeRandomisé LBUBLBUB Fort 2–1/m2-1/m3/2-1/(2m)2-1/m Souple ? 2-1/m
26 MAO - 25/01/2007 Modèle souple, mécanisme de coordination déterministe, borne inf ρ < (2+ε)/2 et ρ 2/(1+ε) ρ (1+17)/4 > 1.28 M1M1 M1M1 M1M1 M1M1 M2M2 M2M2 M2M2 M2M2
27 MAO - 25/01/2007 Bornes pour un système distribué DéterministeRandomisé LBUBLBUB Fort 2–1/m2-1/m3/2-1/(2m)2-1/m Souple (1+17)/4 > /m1+(13-3)/4> /m
28 MAO - 25/01/2007 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
29 MAO - 25/01/2007
30 MAO - 25/01/2007 Modèle fort, algorithme randomisé, borne inférieure m machines identiques xm(m-1)+m tâches de longueur 1 (x entier) Existence dune tâche t telle que : E[C(t)] (x(m-1))/2 + 1 Hyp : Existence dun algorithme à véracité garantie, randomisé et de rapport dapproximation 3/2 - 1/(2m) - ε
31 MAO - 25/01/2007 Modèle fort, algorithme randomisé, borne inférieure Si x>1/(2εm)-1/(2εm²)-1/m alors la tâche t peut déclarer xm+1 plutôt que 1 et diminuer lespérance de sa date de fin E[C(t)] + xm = E[C(t)] (3/2 - 1/2m - ε)OPT E[C(t)] + xm (3/2 - 1/2m - ε)(xm + 1) E[C(t)] < (x(m-1))/2 + 1
32 MAO - 25/01/2007 Modèle souple, algorithme déterministe, borne inférieure (1) Hyp : algorithme à véracité garantie de rapport dapproximation 11/10 – ε 2 machines et 5 tâches de longueurs {5,4,3,3,3}
33 MAO - 25/01/2007 Modèle souple, algorithme déterministe, borne inférieure (2)
34 MAO - 25/01/2007 Modèle souple, algorithme déterministe, borne inférieure (3)
35 MAO - 25/01/2007 Modèle fort, algorithme déterministe, borne inférieure C(t) + m - 1 = C(t) (2-1/m-ε)OPT C(t) + m – 1 2m – 1 - εm C(t) (1-ε)m < m