Ordonnancement de tâches on-line avec pénalités Nicolas Thibault et Christian Laforest Laboratoire IBISC (Évry) 1 / 12
Introduction Opérateur : gère les k machines identiques Clients : utilisent les machines temps Problème on-line : lorsque la demande dun client est révélée, lopérateur peut la rejeter ou lordonnancer (puis éventuellement linterrompre) Objectif : satisfaire lopérateur : maximisation du poids (somme des longueurs des tâches ordonnancés) 2 / 12Ordonnancements on-line les clients : principe de dédommagement pour chaque tâche interrompue
Poids dune tâche = (r,d,p) : w( ) = p Compétitivité : Un algorithme est c-compétitif si à chaque étape, c. w p (S) w(S * ) Poids avec pénalités Poids dune tâche avec pénalités : w p ( ) = w( ) -. w( ) : interrompue par Objectif : Maximiser w p (S) constante de pénalité Poids dun ordonnancement S avec pénalités : w p (S) = w p ( ) S Une tâche : définie par un triplet (r,d,p) rd p d – r Exemple : si = 0.2, lopérateur rembourse 120 % du poids des tâches interrompues (100 % de remboursement + 20 % de pénalité) 3 / 12Ordonnancements 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 nexiste pas dalgorithme compétitif sans interruption [ Lipton et al ]. 4 / 12Ordonnancements on-line f( ) Compétitivité [ Zheng et al ] [ Bar-Noy et al ] [ Bar-Noy et al ] notre contribution on-line tâches nombre de machines pénalités xxxxxx xxxx k = 1 k quelconque x x k 3
r d rd Soit une constante choisie par lopérateur (en fonction de ) Lorsque = (r, d, p) est révélée : SI peut être ordonnancé en interrompant aucune tâche ou sinon un ensemble de tâches E satisfaisant. w(E) w( ) ALORS ordonnancer SINON rejeter m1m1 m2m2 Exemple, avec = 2 : Lalgorithme 5 / 12Ordonnancements on-line
Notations : T lhistorique de S (tâches acceptées par lalgorithme) S * = S *A S *B (S *A et S *B sont disjoints) S *A les tâches de S * acceptées par lalgorithme (appartenant à T) S *B les tâches de S * rejetées par lalgorithme (nappartenant pas à T) Compétitivité : idée de la preuve ( 1 / 6 ) Première étape : comparaison de w(T) et w(S *B ) 6 / 12Ordonnancements on-line
S j *B T j ( ) w( ) 2 w(T j ( )) Sur chaque machine j, avec = 2 et = 0 : Compétitivité : idée de la preuve ( 2 / 6 ) w( ) 2 w( ) 2 7 / 12Ordonnancements on-line
S j *B TjTj S j *B, w( ) 2 w(T j ( )) w(S *B ) 8 w(T) Compétitivité : idée de la preuve ( 3 / 6 ) Sur chaque machine j : 8 / 12Ordonnancements 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 *B ) 8 w(T) Compétitivité : idée de la preuve ( 4 / 6 ) Deux cas possibles : w(S*) w(S *B ) 9898 comme w(S*) = w(S *A ) + w(S *B ) w(S*) w(S * ) + w(S *B ) / 12Ordonnancements 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) 10 / 12Ordonnancements on-line
Raffinement de la preuve et prise en compte du poids avec pénalités w p : 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 ++ ( ) w(S * ) w p (S) Remarque : résultat valable quelque soit lordre de présentation des tâches 11 / 12Ordonnancements on-line
Résultat présenté : Un algorithme dordonnancement on-line sur k machines avec prise en compte de lopé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 12 / 12Ordonnancements on-line Principale perspective : amélioration des bornes supérieures et inférieures