14. Introduction aux files d’attente
MTH2302D
S. Le Digabel, ´Ecole Polytechnique de Montr´eal
A2017
Plan
1. Introduction
2. Mod`ele M/M/1
1. Introduction 2. Mod`ele M/M/1 3. Mod`ele M/M/1/K
Introduction
La th´eorie des files d’attente consiste en l’´etude de syst`emes o`u des clients se pr´esentent `a un dispositif de service, appel´e serveur. Puisqu’un client occupe le serveur pendant un certain temps, les autres clients doivent attendre avant d’ˆetre servis, formant ainsi une file d’attente. Quelques exemples d’application :
I R´eseaux informatiques : serveur = routeur, client = paquet.
I Ateliers (job shop) : serveur = machine, client = tˆache. En ing´enierie, on s’int´eresse `a des m´etriques de performance des files d’attente, par exemple :
I Taille moyenne de la file d’attente.
I Taux d’utilisation du serveur.
Mod`
ele ´
el´
ementaire de file d’attente
En g´en´eral, pour ´etudier l’impact de diff´erents choix de conception sur la performance d’une file d’attente, il faut construire un mod`ele de simulation. On peut aussi utiliser un mod`ele simplifi´e pour lequel les m´etriques s’expriment par des ´equations analytiques. Le mod`ele de base en files d’attente se nomme M/M/1 et se g´en´eralise en notation de Kendall A/B/C/K/N/D :
I A : processus d’arriv´ee (M = markovien ou memoryless).
I B : processus de service (M = markovien ou memoryless).
I C : nombre de serveurs.
I K : capacit´e du syst`eme (file + serveurs).
I N : taille de la population des clients (habituellement infinie).
I D : discipline de service (par d´efaut, FIFO, ou PAPS : 1er arriv´e 1er servi, mais aussi RANDOM ou PRIORITY).
1. Introduction 2. Mod`ele M/M/1 3. Mod`ele M/M/1/K
Mod`
ele M/M/1
I Les clients se pr´esentent au syst`eme al´eatoirement selon un processus de Poisson de taux λ.
I Le temps de service suit une loi exponentielle de taux µ, ind´ependamment d’un client `a l’autre.
I La file d’attente peut s’´etendre `a l’infini. Rappel sur le processus de Poisson :
I Le nombre A(t) d’arriv´ees dans l’intervalle de temps [0; t] suit une loi de Poisson de param`etre c = λt.
I Les arriv´ees dans deux intervalles de temps disjoints sont ind´ependantes.
I Le temps qui s’´ecoule entre deux arriv´ees suit une loi exponentielle de taux λ.
Exemple 1
Soit Tn le temps d’arriv´ee du ni`eme client dans une file M/M/1.
On dit que Tn suit une loi d’Erlang de param`etres n et λ, i.e.
Tn∼ Γ(α = n, λ).
1. Trouver la fonction de r´epartition de Tn (utiliser le processus
de Poisson).
Arriv´
ee avant un d´
epart et d´
epart avant une arriv´
ee
I Temps pour qu’une nouvelle arriv´ee se produise :A ∼ Exp(λ).
I Temps pour qu’un nouveau d´epart se produise : D ∼ Exp(µ).
(A et D sont ind´ependantes).
I Probabilit´e qu’une arriv´ee se produise avant un d´epart : P (A < D) = λ
λ + µ.
I Probabilit´e qu’un d´epart se produise avant une arriv´ee : P (D < A) = µ
Analyse en r´
egime stationnaire
Il est difficile d’´etudier la variable al´eatoire N (t) repr´esentant le nombre de clients au temps t dans le syst`eme. On s’int´eresse plutˆot `a N = limt→∞N (t). On parle alors d’analyse en r´egime
stationnaire (ou analyse `a l’´equilibre). Pour qu’une file M/M/1 puisse atteindre l’´equilibre, il faut que λ < µ(sinon la taille de la file augmentera `a l’infini). `A l’´equilibre, on peut montrer que
P (N = n) = λ
λ + µP (N = n − 1) + µ
λ + µP (N = n + 1) . Il s’agit de la r`egle des probabilit´es totales. Le terme λ+µλ
repr´esente la probabilit´e qu’un nouveau client arrive avant que le client en service quitte le syst`eme, et λ+µµ est la probabilit´e que le client en service quitte avant qu’un nouveau client n’arrive.
´
Equations d’´
equilibre
Soit πn= P (N = n). En posant les ´equations
π1= λ+µλ π0+ λ+µµ π2, π2 = λ+µλ π1+ λ+µµ π3, . . . ,
πn= λ+µλ πn−1+λ+µµ πn+1, . . . , etP∞n=0πn= 1, on trouve que
πn= (1 − ρ)ρn
pour n = 0, 1, 2, 3, . . ., o`u ρ = λµ < 1 est d´efini comme l’intensit´e du trafic.
Notations
I NQ : nombre moyen de clients faisant la queue.
I NS : nombre moyen de clients en train d’ˆetre servis.
I N = E(N ) = NQ+ NS : nombre total (attente + service)
moyen de clients dans le syst`eme en ´equilibre.
I NQ, NS et N sont les v.a. correspondantes.
I On a P (N = k) = πk. I TQ : temps moyen d’attente.
I TS : temps moyen de service.
I T = TQ+ TS : temps moyen qu’un client passe dans le
syst`eme.
La loi de Little
La loi s’´enonce ainsi :
N = λeT
o`u λe est le taux d’entr´ee dans le syst`eme (λe= λ pour une file
M/M/1). Puisque N = NQ+ NS et T = TQ+ TS, on trouve
´egalement que
NQ = λeTQ et NS= λeTS .
Remarque : La loi de Little s’applique `a tous les mod`eles de file d’attente rencontr´es en pratique (pas seulement `a la file M/M/1).
Exemple 2
On consid`ere une file d’attente M/M/1 de taux λ = 1 et µ = 2. Calculer (`a l’´equilibre) :
1. Le nombre moyen de clients dans le syst`eme, N .
2. Le nombre moyen de clients en service, NS.
Mod`
ele M/M/1 : formules
I ρ = λ/µ. I N = ρ 1 − ρ. I NS =1 − π0 =ρ. I NQ=N − NS = ρ2 1 − ρ. I T =N /λ = ρ λ(1 − ρ) = 1 µ − λ. I TS = 1/µ. I TQ=T − TS= λ µ(µ − λ).Mod`
ele M/M/1 : formules (suite)
I Un seul serveur : NQ = 0 si N = 0 ou N = 1, N − 1 si N > 1 . I P (NQ= 0) =P (N = 0) + P (N = 1) = π0+ π1 = 1 − ρ + ρ(1 − ρ) =(1 − ρ)(1 + ρ). I P (NQ= k) =P (N = k + 1) = πk+1 =ρk+1(1 − ρ), pour k > 0.Mod`
ele M/M/1 : formules (suite)
I Si N est le nombre de clients dans le syst`eme `a l’´equilibre, alors N + 1 = N1 ∼ Geom(p = 1 − ρ).
I Nombre de clients en train d’ˆetre servis : NS ∼ Bern(ρ).
I Temps total (attente + service) pass´e dans la file : T ∼ Exp(µ − λ).
I Temps d’attente TQ (variable mixte) :
I P (TQ= 0) = π0= 1 − ρ. I TQ
Exemple 3
On consid`ere une file d’attente M/M/1 de taux λ = 1 et µ = 2. Calculer (`a l’´equilibre) :
1. Le temps moyen de s´ejour d’un client dans le syst`eme, T .
2. Le temps moyen d’attente d’un client dans la file, TQ.
1. Introduction 2. Mod`ele M/M/1 3. Mod`ele M/M/1/K
Mod`
ele M/M/1/K
Pour un syst`eme de capacit´e K (taille maximale de la file de K − 1) avec ρ = λµ 6= 1, on peut montrer que pour
n = 0, 1, . . . , K : I Si ρ < 1 : πn= P (Y = n+1|Y ≤ K+1) = P (Y = n + 1) P (Y ≤ K + 1) = ρn(1 − ρ) 1 − ρK+1 avec Y ∼ Geom(1 − ρ). I Si ρ > 1 : πn= P (Y = K − n + 1|Y ≤ K + 1) = P (Y = K − n + 1) P (Y ≤ K + 1) = ρ n(1 − ρ) 1 − ρK+1 avec Y ∼ Geom(1 − 1/ρ).
Mod`
ele M/M/1/K (suite)
I L’´equilibre est atteint pour tout ρ :
I Si ρ 6= 1, πn= ρn 1 − ρ 1 − ρK+1.
I Si ρ = 1, on consid`ere des ´etats ´equiprobables : πn= 1 K + 1 pour n = 0, 1, . . . , K .
I Le syst`eme est `a pleine capacit´e avec probabilit´e πK.
Exemple 4
Pour le syst`eme M/M/1/2 avec λ = µ, trouver l’esp´erance et la variance du nombre de clients dans le syst`eme en ´equilibre.
Exemple 5
On consid`ere une file d’attente M/M/1/5 de taux λ = 1 et µ = 2. Calculer (`a l’´equilibre) :
1. Le nombre moyen de clients dans le syst`eme.
2. Le nombre moyen de clients dans la file d’attente.
3. La proportion de clients ne pouvant entrer dans le syst`eme.
4. Le temps moyen de s´ejour d’un client dans le syst`eme.
Exemple 6
On consid`ere une file d’attente M/M/1 avec priorit´e : Les clients de classe 1 ont une priorit´e absolue sur les clients de classe 2, c’est-`a-dire qu’ils d´epassent automatiquement tous les clients de classe 2 dans la file. De plus, un client de classe 2 en service retourne imm´ediatement dans la file d’attente si un client de classe 1 se pr´esente. On a λ1 = 1 pour les clients de classe 1,
λ2 = 2 pour les clients de classe 2, et µ = 4. Calculer (`a
l’´equilibre) :
1. Le nombre moyen de clients de chaque classe dans le syst`eme.
2. Le temps moyen de s´ejour dans le syst`eme pour chaque classe. Indication : On peut montrer que les ´equations d’´equilibre de la file M/M/1 ne d´ependent pas de la politique de service de la file.