algorithmes dapproximation pour loptimisation en ligne dordonnancements et de structures de...
TRANSCRIPT
Algorithmes d’approximation pour l’optimisation en ligned’ordonnancements et de structures de communications
Nicolas Thibault
Thèse préparée au laboratoire IBISC de l’université d’Évry Val d’Essonne,sous la direction de Christian Laforest
1 / 22
Introduction
Introduction
Réseau de communications : ensemble de liens qui connectent des membres
→ Méthodes on-line avec garanties sur la qualité des solutions
Comment réserver les liens du réseau de la meilleure façon possible ?
2 / 22
Dans chaque partie : • définition des modèles on-line • proposition d’algorithmes avec garanties de performance
1.
2. Quels liens du réseau réserver ? → Groupes dynamiques dans un graphe
1. Comment réserver les sous-canaux d’un lien réseau ? → Ordonnancements on-line
Ordonnancements on-lineComment réserver les sous-canaux d’un lien réseau ?
3 / 22Ordonnancements on-line
Ordonnancements on-line : introduction
Opérateur : gère le lienClients : utilisent le lien
temps
Problème on-line : lorsque la demande d’un client est révélée, l’opérateur peut• la rejeter ou• l’ordonnancer (puis éventuellement l’interrompre)
Objectif : satisfaire• l’opérateur : maximisation du poids (somme des longueurs des tâches ordonnancés)
4 / 22Ordonnancements on-line
• les clients : principe de dédommagement pour chaque tâche interrompue
Poids d’une tâche = (r,d,p) : w() = p
Compétitivité : Un algorithme est c-compétitif si à chaque étape, c . wp(S) w(S*)
Poids avec pénalités
Poids d’une tâche avec pénalités : wp() = w() - . w(’)’ : ’ interrompue par
Objectif : Maximiser wp(S)
constante de pénalité
Poids d’un ordonnancement S avec pénalités : wp(S) = wp() S
Une tâche : définie par un triplet (r,d,p)r d
p d – r
Exemple : si = 0.2, l’opérateur rembourse 120 % du poids des tâches interrompues (100 % de remboursement + 20 % de pénalité)
5 / 22Ordonnancements on-line
Résultat : un algorithme f() – compétitif (avec la constante de pénalité)
Rôle de : lien entre les modèles on-lines avec et sans interruption. Il n’existe pas d’algorithme compétitif sans interruption [Lipton et al. 1994 ].
6 / 22Ordonnancements on-line
f()
0.2 100
810
14.6
0
13.3
Compétitivité
[Woeginger 1994 ][Bar-Noy et al. 2001 ][Bar-Noy et al. 1999 ]notre contribution
on-line tâches nombre de machines pénalités
xx
xxx
k = 1
k 3k quelconquek quelconque x
r dr d
Soit une constante choisie par l’opérateur (en fonction de ) Lorsque = (r, d, p) est révélée :
SI peut être ordonnancé en interrompant • aucune tâche ou• un ensemble de tâches E satisfaisant . w(E) w()
ALORS ordonnancer SINON rejeter
m1
m2
Exemple, avec = 2 :
L’algorithme
7 / 22Ordonnancements on-line
Notations :
• T l’historique de S (tâches acceptées par l’algorithme)
• S* = S*A S*B (S*A et S*B sont disjoints)
• S*A les tâches de S* acceptées par l’algorithme (appartenant à T)• S*B les tâches de S* rejetées par l’algorithme (n’appartenant pas à T)
Compétitivité : idée de la preuve ( 1 / 6 )
Première étape : comparaison de w(T) et w(S*B)
8 / 22Ordonnancements on-line
Sj*B
Tj ()
w() 2 w(Tj ())
Sur chaque machine j , avec = 2 et = 0 :
Compétitivité : idée de la preuve ( 2 / 6 )
w() 2
w() 2
9 / 22Ordonnancements on-line
Sj*B
Tj
Sj*B, w() 2 w(Tj ())
w(S*B) 8 w(T)
Compétitivité : idée de la preuve ( 3 / 6 )
Sur chaque machine j :
10 / 22Ordonnancements on-line
w(S*) 9 w(T)
w(S*) 9 w(S*A) ou bien w(S*) > 9 w(S*A)
comme S*A T, on a w(S*A) w(T)
w(S*) 9 w(T)
w(S*) 9 w(T)
w(S*B) 8 w(T)
Compétitivité : idée de la preuve ( 4 / 6 )
Deux cas possibles :
w(S*) w(S*B)98
comme w(S*) = w(S*A) + w(S*B)
w(S*) w(S*) + w(S*B)19
11 / 22Ordonnancements on-line
Comparaison entre S et T :
T
S
w(T) 2 w(S) w(S*) 18 w(S)
Compétitivité : idée de la preuve ( 5 / 6 )
w(S*) 9 w(T)
12 / 22Ordonnancements on-line
Raffinement de la preuve et prise en compte du poids avec pénalités wp :
le gain est de - fois le poids des tâches interrompues (au lieu de 2)
Compétitivité : idée de la preuve ( 6 / 6 )
w(S*) 18 w(S) (2 + 3) 1 + +( -
1 - - 1)w(S*) wp(S)
Remarque : résultat valable quelque soit l’ordre de présentation des tâches
13 / 22Ordonnancements on-line
Résultat présenté : Un algorithme d’ordonnancement on-line sur k machines• avec prise en compte
• de l’opérateur (poids)• des clients (pénalités)
• avec un rapport de compétitivité• constant• paramétrable
Résultats
Autres résultats :• maximisation on-line de la taille (nombre de tâches ordonnancées)• résultat bicritère on-line dans le cas particulier des intervalles
14 / 22Ordonnancements on-line
[B.B.L.T. COCOON 05 ] [B.B.L.T. Euro-Par 05 ] [T.L. ISPAN 05 ]
Groupes dynamiques dans un graphe
Quels liens du réseau réserver ?
15 / 22Groupes dynamiques dans un graphe
Groupes dynamiques : ajout de membres
Données :• un réseau (représenté par un graphe fixé)• des membres dévoilés un par un, au fur et à mesure (online)
Objectif : incrémenter une structure couvrante
16 / 22Groupes dynamiques dans un graphe
Contraintes à chaque étape :• contrainte arbre → facilite la gestion des communications• contrainte emboîtement (pas de réarrangement dans l’arbre) → ne perturbe pas les communications en cours
Modèle sans reconstruction
Objectif : minimiser la distance moyenne entre les membres dans l’arbre
Théorème : Tout algorithme est (i) - compétitif (avec i le nombre de membres révélés).
modèle sans reconstruction trop contraignant
17 / 22Groupes dynamiques dans un graphe
Compétitivité : Un algorithme est r - compétitif, si à chaque étape CT(M) r . CT*(M)avec :
• T l’arbre couvrant M• T* l’arbre optimal couvrant M• CT(M) la somme des distances de M dans T
remise en cause de la contrainte emboîtementObjectif : minimiser le nombre d’étapes critiques (nécessitant la remise en cause de l’arbre) → une étape critique perturbe les communications en cours
Modèle avec reconstructions
Contraintes à chaque étape :• contrainte arbre• contrainte qualité : les arbres successifs doivent vérifier
CT(M) c . CT*(M) avec c constant
Ti -1
Exemple d’étape critique :
Ti -1 Ti
18 / 22Groupes dynamiques dans un graphe
Théorème : Pour toute constante de qualité c fixée, il existe un graphe et une séquence d’ajouts tels que tout algorithme respectant les contraintes arbre et qualité implique (log i) étapes critiques.
Question : Est-ce que O(log i) étapes critiques est un bon résultat ?
Évaluation : L’algorithme induit O(log i) étapes critiques (ième groupe : i = 2R R = log2 i ).
Résultats
Notre algorithme pour c = 12 :• reconstruit totalement l’arbre lorsque la taille du groupe double• sinon, ajoute un plus court chemin entre le nouveau membre et le médian du groupe de la dernière reconstruction.
Qualité de l’arbre construit : respecte la contrainte qualité avec c = 12.
19 / 22Groupes dynamiques dans un graphe
c+1
(log i) étapes critiques : idée de la preuve
20 / 22Groupes dynamiques dans un graphe
c+1c+1
2
s1
c+1
4 s2
c+1
sj
2j
c+1c+1c+1c+1c+1
c+1
2j
2j+1
CT(M) (c+1)22j
c+1
CT(M) (c+1)22j
CT* (M) 22j
2j
2j+1
c+1
CT(M) (c+1)22j+2Rc
CT* (M) 22j+2Rc
2j+R(c+1)
2j+1+R(c+1)
i 2(c+1)+2+R(c+1) = a2bR (a,b constants)
R (log i)
Remarque : résultat indépendant de la non connaissance du futur
Résultats
ajouts Sans recons. (compétitivité) Avec recons. (étapes critiques)
retraits
ajouts et retraits
Somme des distances
(i)
(i)
(i) (log i) et O(log i) (log i) et O(i)
(i)
21 / 22Groupes dynamiques dans un graphe
ajouts Sans recons. (compétitivité) Avec recons. (étapes critiques)
retraits
ajouts et retraits
Diamètre
(i)
(i)
2 0
(i)
(log i) et O(log i)
[T.L. AWIN – Globecom workshop 04 ] [T.L. SIROCCO 06 ] [T.L. Journal of Interconnection Networks 06 ]
[Imaze and Waxman 1991 ] : Minimisation du poids de l’arbre (arbre de Steiner dynamique)
Conclusion générale
Synthèse : Pour chaque partie, nous avons proposé
• des algorithmes on-line à garanties de performance• principe de remise en cause maîtrisée de la solution courante :
• maximisation du poids avec pénalité• minimisation du nombre d’étapes critiques
Principales perspectives :
• amélioration des bornes supérieures et inférieures
22 / 22Conclusion générale
• l’ordonnancement on-line bicritère d’intervalles• la minimisation simultanée du diamètre et de la somme des distances
Nous avons déjà des résultats pour :• résultats analytiques plus fins que dans le pire cas
• approche multicritère des problèmes on-line.
• étudier les versions incrémentales des problèmes d’optimisation• identification plus fine des difficultés • proposition de modèles intermédiaires entre off-line et on-line
[K.L.P.T. AOR 06 ]