Telechargé par Othman farhaoui

14 files attente

publicité
1/3
2/3
3/3
14. Introduction aux files d’attente
MTH2302D
S. Le Digabel, École Polytechnique de Montréal
A2017
(v1)
MTH2302D: Files d’attente
1/24
1/3
2/3
3/3
Plan
1. Introduction
2. Modèle M/M/1
3. Modèle M/M/1/K
MTH2302D: Files d’attente
2/24
1/3
2/3
3/3
1. Introduction
2. Modèle M/M/1
3. Modèle M/M/1/K
MTH2302D: Files d’attente
3/24
1/3
2/3
3/3
Introduction
La théorie des files d’attente consiste en l’étude de systèmes où des
clients se présentent à un dispositif de service, appelé serveur.
Puisqu’un client occupe le serveur pendant un certain temps, les
autres clients doivent attendre avant d’être servis, formant ainsi
une file d’attente. Quelques exemples d’application :
I
Réseaux informatiques : serveur = routeur, client = paquet.
I
Ateliers (job shop) : serveur = machine, client = tâche.
En ingénierie, on s’intéresse à des métriques de performance des
files d’attente, par exemple :
I
Taille moyenne de la file d’attente.
I
Taux d’utilisation du serveur.
I
Temps moyen d’attente d’un client.
MTH2302D: Files d’attente
4/24
1/3
2/3
3/3
Modèle élémentaire de file d’attente
En général, pour étudier l’impact de différents choix de conception
sur la performance d’une file d’attente, il faut construire un modèle
de simulation. On peut aussi utiliser un modèle simplifié pour
lequel les métriques s’expriment par des équations analytiques. Le
modèle de base en files d’attente se nomme M/M/1 et se
généralise en notation de Kendall A/B/C/K/N/D :
I
I
I
I
I
I
A : processus d’arrivée (M = markovien ou memoryless).
B : processus de service (M = markovien ou memoryless).
C : nombre de serveurs.
K : capacité du système (file + serveurs).
N : taille de la population des clients (habituellement infinie).
D : discipline de service (par défaut, FIFO, ou PAPS : 1er
arrivé 1er servi, mais aussi RANDOM ou PRIORITY).
MTH2302D: Files d’attente
5/24
1/3
2/3
3/3
1. Introduction
2. Modèle M/M/1
3. Modèle M/M/1/K
MTH2302D: Files d’attente
6/24
1/3
2/3
3/3
Modèle M/M/1
I
Les clients se présentent au système aléatoirement selon un
processus de Poisson de taux λ.
I
Le temps de service suit une loi exponentielle de taux µ,
indépendamment d’un client à l’autre.
I
La file d’attente peut s’étendre à l’infini.
Rappel sur le processus de Poisson :
I
Le nombre A(t) d’arrivées dans l’intervalle de temps [0; t] suit
une loi de Poisson de paramètre c = λt.
I
Les arrivées dans deux intervalles de temps disjoints sont
indépendantes.
I
Le temps qui s’écoule entre deux arrivées suit une loi
exponentielle de taux λ.
MTH2302D: Files d’attente
7/24
1/3
2/3
3/3
Exemple 1
Soit Tn le temps d’arrivée du nième client dans une file M/M/1.
On dit que Tn suit une loi d’Erlang de paramètres n et λ, i.e.
Tn ∼ Γ(α = n, λ).
1. Trouver la fonction de répartition de Tn (utiliser le processus
de Poisson).
2. Calculer E(Tn ) et V(Tn ).
MTH2302D: Files d’attente
8/24
1/3
2/3
3/3
Arrivée avant un départ et départ avant une arrivée
I
Temps pour qu’une nouvelle arrivée se produise :
A ∼ Exp(λ).
I
Temps pour qu’un nouveau départ se produise :
D ∼ Exp(µ).
(A et D sont indépendantes).
I
Probabilité qu’une arrivée se produise avant un départ :
P (A < D) =
I
λ
.
λ+µ
Probabilité qu’un départ se produise avant une arrivée :
µ
P (D < A) =
.
λ+µ
MTH2302D: Files d’attente
9/24
1/3
2/3
3/3
Analyse en régime stationnaire
Il est difficile d’étudier la variable aléatoire N (t) représentant le
nombre de clients au temps t dans le système. On s’intéresse
plutôt à N = limt→∞ N (t). On parle alors d’analyse en régime
stationnaire (ou analyse à l’équilibre). Pour qu’une file M/M/1
puisse atteindre l’équilibre, il faut que λ < µ (sinon la taille de la
file augmentera à l’infini). À l’équilibre, on peut montrer que
P (N = n) =
µ
λ
P (N = n − 1) +
P (N = n + 1) .
λ+µ
λ+µ
λ
Il s’agit de la règle des probabilités totales. Le terme λ+µ
représente la probabilité qu’un nouveau client arrive avant que le
µ
client en service quitte le système, et λ+µ
est la probabilité que le
client en service quitte avant qu’un nouveau client n’arrive.
MTH2302D: Files d’attente
10/24
1/3
2/3
3/3
Équations d’équilibre
Soit πn = P (N = n). En posant les équations
µ
µ
λ
λ
π1 = λ+µ
π0 + λ+µ
π2 , π2 = λ+µ
π1 + λ+µ
π3 , . . . ,
P
∞
µ
λ
πn = λ+µ πn−1 + λ+µ πn+1 , . . . , et n=0 πn = 1, on trouve que
πn = (1 − ρ)ρn
pour n = 0, 1, 2, 3, . . ., où ρ =
du trafic.
λ
µ
< 1 est défini comme l’intensité
On remarque que N + 1 ∼ Geom(1 − ρ).
MTH2302D: Files d’attente
11/24
1/3
2/3
3/3
Notations
I
N Q : nombre moyen de clients faisant la queue.
I
N S : nombre moyen de clients en train d’être servis.
I
N = E(N ) = N Q + N S : nombre total (attente + service)
moyen de clients dans le système en équilibre.
I
NQ , NS et N sont les v.a. correspondantes.
I
On a P (N = k) = πk .
I
T Q : temps moyen d’attente.
I
T S : temps moyen de service.
I
T = T Q + T S : temps moyen qu’un client passe dans le
système.
I
TQ , TS et T sont les v.a. correspondantes.
MTH2302D: Files d’attente
12/24
1/3
2/3
3/3
La loi de Little
La loi s’énonce ainsi :
N = λe T
où λe est le taux d’entrée dans le système (λe = λ pour une file
M/M/1). Puisque N = N Q + N S et T = T Q + T S , on trouve
également que
N Q = λe T Q et N S = λe T S .
Remarque : La loi de Little s’applique à tous les modèles de file
d’attente rencontrés en pratique (pas seulement à la file M/M/1).
MTH2302D: Files d’attente
13/24
1/3
2/3
3/3
Exemple 2
On considère une file d’attente M/M/1 de taux λ = 1 et µ = 2.
Calculer (à l’équilibre) :
1. Le nombre moyen de clients dans le système, N .
2. Le nombre moyen de clients en service, N S .
3. Le nombre moyen de clients dans la file d’attente, N Q .
MTH2302D: Files d’attente
14/24
1/3
2/3
3/3
Modèle M/M/1 : formules
I
I
ρ = λ/µ.
ρ
.
N=
1−ρ
I
N S =1 − π0 = ρ.
I
N Q =N − N S =
I
T =N /λ =
I
T S = 1/µ.
I
T Q =T − T S =
MTH2302D: Files d’attente
ρ2
.
1−ρ
ρ
1
=
.
λ(1 − ρ)
µ−λ
λ
.
µ(µ − λ)
15/24
1/3
2/3
3/3
Modèle M/M/1 : formules (suite)
0
N −1
si N = 0 ou N = 1,
si N > 1 .
I
Un seul serveur : NQ =
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.
MTH2302D: Files d’attente
16/24
1/3
2/3
3/3
Modèle M/M/1 : formules (suite)
I
Si N est le nombre de clients dans le système à l’équilibre,
alors N + 1 = N1 ∼ Geom(p = 1 − ρ).
I
Nombre de clients en train d’être servis : NS ∼ Bern(ρ).
I
Temps total (attente + service) passé dans la file :
T ∼ Exp(µ − λ).
I
Temps d’attente TQ (variable mixte) :
I
I
P (TQ = 0) = π0 = 1 − ρ.
TQ {NQ > 0} ∼ Exp(µ − λ) (comme T ).
MTH2302D: Files d’attente
17/24
1/3
2/3
3/3
Exemple 3
On considère une file d’attente M/M/1 de taux λ = 1 et µ = 2.
Calculer (à l’équilibre) :
1. Le temps moyen de séjour d’un client dans le système, T .
2. Le temps moyen d’attente d’un client dans la file, T Q .
3. Le temps moyen de service d’un client, T S .
MTH2302D: Files d’attente
18/24
1/3
2/3
3/3
1. Introduction
2. Modèle M/M/1
3. Modèle M/M/1/K
MTH2302D: Files d’attente
19/24
1/3
2/3
3/3
Modèle M/M/1/K
Pour un système de capacité 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)
ρn (1 − ρ)
=
P (Y ≤ K + 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 − ρ)
avec Y ∼ Geom(1 − 1/ρ).
1 − ρK+1
(même formule dans les deux cas).
MTH2302D: Files d’attente
20/24
1/3
2/3
3/3
Modèle M/M/1/K (suite)
I
L’équilibre est atteint pour tout ρ :
1−ρ
.
1 − ρK+1
I
Si ρ 6= 1, πn = ρn
I
Si ρ = 1, on considère des états équiprobables : πn =
pour n = 0, 1, . . . , K .
I
Le système est à pleine capacité avec probabilité πK .
I
Taux d’entrée : λe = λ(1 − πK ).
MTH2302D: Files d’attente
1
K +1
21/24
1/3
2/3
3/3
Exemple 4
Pour le système M/M/1/2 avec λ = µ, trouver l’espérance et la
variance du nombre de clients dans le système en équilibre.
MTH2302D: Files d’attente
22/24
1/3
2/3
3/3
Exemple 5
On considère une file d’attente M/M/1/5 de taux λ = 1 et µ = 2.
Calculer (à l’équilibre) :
1. Le nombre moyen de clients dans le système.
2. Le nombre moyen de clients dans la file d’attente.
3. La proportion de clients ne pouvant entrer dans le système.
4. Le temps moyen de séjour d’un client dans le système.
5. Le temps moyen d’attente d’un client dans la file.
MTH2302D: Files d’attente
23/24
1/3
2/3
3/3
Exemple 6
On considère une file d’attente M/M/1 avec priorité : Les clients
de classe 1 ont une priorité absolue sur les clients de classe 2,
c’est-à-dire qu’ils dépassent automatiquement tous les clients de
classe 2 dans la file. De plus, un client de classe 2 en service
retourne immédiatement dans la file d’attente si un client de
classe 1 se présente. On a λ1 = 1 pour les clients de classe 1,
λ2 = 2 pour les clients de classe 2, et µ = 4. Calculer (à
l’équilibre) :
1. Le nombre moyen de clients de chaque classe dans le système.
2. Le temps moyen de séjour dans le système pour chaque classe.
Indication : On peut montrer que les équations d’équilibre de la
file M/M/1 ne dépendent pas de la politique de service de la file.
MTH2302D: Files d’attente
24/24
Téléchargement