performance des algorithmes à véracité garantie pour l'ordonnancement de tâches...
TRANSCRIPT
Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes
F. Pascual - LIGEn collaboration avec : G. Christodoulou, L. Gourvès, E. Koutsoupias E. Angel, E. Bampis, A. Tchetgnia
2MAO - 25/01/2007
Ordonnancement P||Cmax
m machines identiques n tâches toute tâche i a une longueur li
Objectif : minimiser le makespan (la plus grande date de fin)
M2 M2
M1 M1
3MAO - 25/01/2007
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
4MAO - 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
5MAO - 25/01/2007
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)
li
bi
6MAO - 25/01/2007
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.
7MAO - 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.
8MAO - 25/01/2007
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]
9MAO - 25/01/2007
Objectif
Borner la performance d’un protocole (algorithme) à véracité garantie dans divers contextesDéterministe ou randomiséModèle d’exécution fort ou souple
Pas de paiements
10MAO - 25/01/2007
Modèles d’exé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
11MAO - 25/01/2007
Bornes pour un système centralisé
Déterministe Randomisé
LB UB LB UB
Fort 2-1/m *2-(5/3+1/(3m))/(m+1)
**
Souple
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
12MAO - 25/01/2007
Bornes pour un système centralisé
Déterministe Randomisé
LB UB LB UB
Fort ? 2-1/m *2-(5/3+1/(3m))/(m+1)
**
Souple
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
13MAO - 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 d’approximation < 2-1/m .
1M1
M2
M3
1 1
1 1
1 1
14MAO - 25/01/2007
Modèle fort, algorithme déterministe, borne inférieure (2/2) la tâche t déclare 1 : 1 1 1
1 1
1 1
3
11 1
1 1 1
fin(t) ≥ 3
début(t) < 2, fin(t) < 3OPT = 3
3
Makespan < (2-1/m) OPT = 5
Ordonnancement optimal Ordonnancement (2-1/m-ε)-approché
La tâche t a intérêt à déclarer m plutôt que 1 :
15MAO - 25/01/2007
Bornes pour un système centralisé
Déterministe Randomisé
LB UB LB UB
Fort 2–1/m 2-1/m * 3/2-1/(2m)2-(5/3+1/(3m))/(m+1)
**
Souple
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
16MAO - 25/01/2007
Bornes pour un système centralisé
Déterministe Randomisé
LB UB LB UB
Fort 2–1/m 2-1/m * 3/2-1/(2m)2-(5/3+1/(3m))/(m+1)
**
Souple ?
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
17MAO - 25/01/2007
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
18MAO - 25/01/2007
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é.
19MAO - 25/01/2007
Bornes pour un système centralisé
Déterministe Randomisé
LB UB LB UB
Fort 2–1/m 2-1/m * 3/2-1/(2m)2-(5/3+1/(3m))/(m+1)
**
Souplem=2: ρ≥1.1
m≥3: 7/64/3-1/(3m)
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
20MAO - 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.
9 9
10
9
3 5
2 4 3
M1
M2
M3
21MAO - 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= OPTli.
E[ fin de i ] = ½ (OPTli + li)
- i déclare bi>li : Makespan= OPTbi ≥ OPTli.
E[ fin de i ] = ½ (OPTbi + bi)
i j
22MAO - 25/01/2007
Bornes pour un système centralisé
Déterministe Randomisé
LB UB LB UB
Fort 2–1/m 2-1/m * 3/2-1/(2m)2-(5/3+1/(3m))/(m+1)
**
Souplem=2: ρ≥1.1
m≥3: 7/64/3-1/(3m) 1 1
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
23MAO - 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
d’ordonnancement. Cet algorithme ne dépend que des tâches ayant choisi j : mécanisme de coordination [Christodoulou et al. ICALP’04]
24MAO - 25/01/2007
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.
25MAO - 25/01/2007
Bornes pour un système distribué
Déterministe Randomisé
LB UB LB UB
Fort 2–1/m 2-1/m 3/2-1/(2m) 2-1/m
Souple?
2-1/m 2-1/m
26MAO - 25/01/2007
Modèle souple, mécanisme de coordination déterministe, borne inf
ρ < (2+ε)/2 et ρ ≥ 2/(1+ε)
→ ρ ≥(1+√17)/4 > 1.28
M1
M1 M1
M1
M2 M2
M2 M2
27MAO - 25/01/2007
Bornes pour un système distribué
Déterministe Randomisé
LB UB LB UB
Fort 2–1/m 2-1/m 3/2-1/(2m) 2-1/m
Souple (1+√17)/4 > 1.28 2-1/m 1+(√13-3)/4>1.15 2-1/m
28MAO - 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
29MAO - 25/01/2007
30MAO - 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 d’une tâche t telle que :
E[C(t)] ≥(x(m-1))/2 + 1
Hyp : Existence d’un algorithme à véracité garantie, randomisé et de rapport d’approximation 3/2 - 1/(2m) - ε
31MAO - 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 l’espé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
32MAO - 25/01/2007
Modèle souple, algorithme déterministe, borne inférieure (1) Hyp : algorithme à véracité garantie de
rapport d’approximation 11/10 – ε 2 machines et 5 tâches de longueurs
{5,4,3,3,3}
33MAO - 25/01/2007
Modèle souple, algorithme déterministe, borne inférieure (2)
34MAO - 25/01/2007
Modèle souple, algorithme déterministe, borne inférieure (3)
35MAO - 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