2-1/m

publicité
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
Ordonnancement P||Cmax
m
machines identiques
 n tâches
 toute tâche i a une longueur li
M1
M2
M1
M2
Objectif : minimiser le makespan (la plus
grande date de fin)
MAO - 25/01/2007
2
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
MAO - 25/01/2007
3
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
MAO - 25/01/2007
4
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
MAO - 25/01/2007
li
5
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.
MAO - 25/01/2007
6
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.
MAO - 25/01/2007
7
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]
MAO - 25/01/2007
8
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

Pas de paiements
MAO - 25/01/2007
9
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.
bi = 3
MAO - 25/01/2007
li = 2
10
Bornes pour un système centralisé
Déterministe
LB
Fort
UB
2-1/m *
Randomisé
LB
UB
2-(5/3+1/(3m))/(m+1)
**
Souple
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
MAO - 25/01/2007
11
Bornes pour un système centralisé
Déterministe
Fort
LB
UB
?
2-1/m *
Randomisé
LB
UB
2-(5/3+1/(3m))/(m+1)
**
Souple
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
MAO - 25/01/2007
12
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

M1
1
1
M2
1
1
M3
1
1
MAO - 25/01/2007
1
Au moins une tâche t se
termine à la date m.
13
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
fin(t) ≥ 3
La tâche t a intérêt à déclarer m plutôt que 1 :
Ordonnancement optimal
3
3
1
1
1
1
1
1
OPT = 3
MAO - 25/01/2007
Ordonnancement (2-1/m-ε)-approché
Makespan < (2-1/m) OPT = 5
début(t) < 2, fin(t) < 3
14
Bornes pour un système centralisé
Déterministe
Fort
Randomisé
LB
UB
LB
UB
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]
MAO - 25/01/2007
15
Bornes pour un système centralisé
Déterministe
Fort
Souple
Randomisé
LB
UB
LB
UB
2–1/m
2-1/m *
3/2-1/(2m)
2-(5/3+1/(3m))/(m+1)
**
?
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
MAO - 25/01/2007
16
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

MAO - 25/01/2007
17
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é.
MAO - 25/01/2007
18
Bornes pour un système centralisé
Déterministe
Fort
Souple
Randomisé
LB
UB
LB
UB
2–1/m
2-1/m *
3/2-1/(2m)
2-(5/3+1/(3m))/(m+1)
**
m=2: ρ≥1.1
m≥3: 7/6
4/3-1/(3m)
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
MAO - 25/01/2007
19
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
M2
10
M3
9
MAO - 25/01/2007
9
3
2
5
4
3
20
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)
ij

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)
MAO - 25/01/2007
21
Bornes pour un système centralisé
Déterministe
Fort
Souple
Randomisé
LB
UB
LB
UB
2–1/m
2-1/m *
3/2-1/(2m)
2-(5/3+1/(3m))/(m+1)
**
4/3-1/(3m)
1
1
m=2: ρ≥1.1
m≥3: 7/6
* [Christodoulou, Nanavati, Koutsoupias, ICALP 2004]
** [Angel, Bampis, Pascual, TCS 2006]
MAO - 25/01/2007
22
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]
MAO - 25/01/2007
23
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.
MAO - 25/01/2007
24
Bornes pour un système distribué
Déterministe
Fort
Souple
MAO - 25/01/2007
Randomisé
LB
UB
LB
UB
2–1/m
2-1/m
3/2-1/(2m)
2-1/m
?
2-1/m
2-1/m
25
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
MAO - 25/01/2007
26
Bornes pour un système distribué
Déterministe
Fort
Souple
LB
UB
LB
UB
2–1/m
2-1/m
3/2-1/(2m)
2-1/m
2-1/m
1+(√13-3)/4>1.15
2-1/m
(1+√17)/4 > 1.28
MAO - 25/01/2007
Randomisé
27
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

MAO - 25/01/2007
28
MAO - 25/01/2007
29
Modèle fort, algorithme randomisé,
borne inférieure
Hyp : Existence d’un algorithme à véracité
garantie, randomisé et de rapport
d’approximation 3/2 - 1/(2m) - ε


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
MAO - 25/01/2007
30
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
MAO - 25/01/2007
31
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}

MAO - 25/01/2007
32
Modèle souple, algorithme
déterministe, borne inférieure
MAO - 25/01/2007
(2)
33
Modèle souple, algorithme
déterministe, borne inférieure
MAO - 25/01/2007
(3)
34
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
MAO - 25/01/2007
35
Téléchargement