Vous êtes sur la page 1sur 40

Modèles de files d’attente

Modèle général de files d’attente, étude des lois d’arrivées et de service du


système, distribution exponentielle, propriétés d’un système de file d’attente.
Processus de naissance et de mort. Étude de cas particuliers : une ou plusieurs
files, une ou plusieurs stations, un nombre limité ou non de clients, distributions
non exponentielles, etc. Politiques de service. Aspect économique des
phénomènes d’attente. Applications.
Généralités
Nous sommes souvent en présence d’un phénomène de files d’attente.
CONGESTION :
Lorsque la demande de service dépasse la capacité de service,
il y a formation de files d’attente.
Caractéristiques d’un tel phénomène :
Arrivées d’unités à des intervalles de temps irréguliers ou non,
à un centre de service.
Exemple : arrivée de camions à un poste de chargement,
entrée de clients dans un magasin,
arrivée de bateaux dans un port,
etc.
Un ou plusieurs canaux de service ou stations.
Exemple : guichet, vendeur, etc.
Les unités doivent éventuellement attendre qu’une station soit disponible
pour être servies.
Les intervalles de temps de service des unités sont irréguliers ou non.
2
Généralités
Cas non intéressant :

Des intervalles constants des entrées et des temps de service,


avec une durée de service plus élevée que l’intervalle entre 2 entrées,

La file d’attente augmente régulièrement et indéfiniment.

Schéma de file d’attente :


Système d’attente

Source 1 Station 1
File d’attente 1 Processus
Source 2 de service Station 2
Processus File d’attente 2
des unités
d’arrivée
(durée et
d’unités
ordre de
File d’attente F service, …)
Source U Station S
3
Modèle général de file d’attente
Posons
M  nombre d’unités dans l’ensemble du phénomène (peut être infini)
(dans les sources, les files et les stations),

N  nombre d’unités dans le système (dans les files et les stations),

Q  nombre d’unités dans les files d’attente,

Qmax  nombre maximum d’unités dans les files d’attente,

R  nombre d’unités en cours de service,

S  nombre de stations,

SI  nombre de stations inoccupées,

SO  nombre de stations occupées,

F  nombre de files d’attente,


4
Quelques résultats préliminaires ….
R si N ≤ S
Trivialement, N=
S+Q sinon.

En général, N  N(t), Q  Q(t) et R  R(t) varient en fonction du temps et sont


aléatoires suivant une loi de probabilité que nous chercherons à connaître.

Posons maintenant
pn = Prob(N = n)  la probabilité qu’il y ait n unités dans le système.

En général, pn  pn(t) varient aussi en fonction du temps.

M
On obtient alors : E[N] =  k pk le nombre moyen d’unités dans le système.
k=0
M
Dans le cas d’une seule file d’attente (F = 1), E[Q] =  (k – S) pk
k = S+1
désigne le nombre moyen d’unités dans la file.
5
Quelques résultats préliminaires ….
S
E[SI] =  (S – k) pk désigne le nombre moyen de stations inoccupées.
k=0

On peut vérifier assez facilement que :

E[N] = E[Q] + S – E[SI] (en exercice)

Afin de poursuivre plus avant notre étude d’un phénomène d’attente, il nous faut
connaître les probabilités pn qu’il y ait n unités dans le système.

Pour y arriver, il nous faut étudier les lois d’arrivées et de service du système.

6
Arrivée d’une unité dans le système
Considérons un intervalle de temps de durée t et n le nombre d’unités qui arrivent
dans le système dans cet intervalle,
n est une variable aléatoire.
Hypothèses :

La probabilité qu’il y ait n arrivées dans l’intervalle de durée t ne dépend que


de t et non de l’instant initial à partir duquel on a comptabilisé les arrivées
dans le système.
Homogénéité ou stationnarité dans le temps.
La probabilité qu’une arrivée se produise plus d’une fois dans un intervalle
de temps infinitésimal dt est infiniment petite par rapport à dt.

Il n’y a pas d’arrivées en groupe (plusieurs arrivées simultanées).

La probabilité qu’une arrivée se produise une fois exactement dans un


intervalle de temps infinitésimal dt est proportionnelle à dt, disons  dt.

Il n’y a pas d’heures de pointe (répartition uniforme).


7
Arrivée d’une unité dans le système
Nous pouvons poser

pn(t)  la probabilité qu’il y ait n arrivées dans l’intervalle de durée t.

Sous les hypothèses précédentes, on peut montrer que le nombre d’arrivées dans
un intervalle de temps t, soit N(t), suit une distribution de Poisson de paramètre t
égal au nombre moyen d’arrivées pendant un temps t i.e.

pn(t)  ( t)n e-t n = 0, 1, 2, …


n!

On a aussi que : E[N] = t et Var[N] = t.

La loi des arrivées est entièrement déterminée par le nombre moyen 


des arrivées par unité de temps.

8
Temps de service d’une unité dans le système
Après une période d’attente, les entités dans le système reçoivent le service.

Le service est aléatoire; il est donc décrit par une distribution de probabilité.

Si le nombre d’arrivées dans un intervalle de temps obéit à une loi de


Poisson, alors la durée séparant deux arrivées est exponentielle.

Nous considérerons donc que la durée de service suit une loi exponentielle
de paramètre  dont la fonction de densité est :

f(t) =  e-t t  [0, ),  > 0.

La loi des services est entièrement déterminée par le taux moyen 


des services égal à l’inverse de la durée moyenne d’un service.

Note : Nous supposons que  <  sans quoi la file va augmenter indéfiniment.

À moins d’avis contraire, les premiers arrivés sont les premiers servis.
9
Processus de naissance et de mort
Une arrivée : une naissance, un départ : une mort.

Hypothèses :

Soit N = n, le temps écoulé jusqu’à la prochaine naissance suit


une loi exponentielle de paramètre n,

le temps écoulé jusqu’à la prochaine mortalité suit


une loi exponentielle de paramètre n,

seul une naissance ou une mort arrive à la fois,

n : taux d’arrivée lorsqu’il y a n clients dans le système,


n : taux de service lorsqu’il y a n clients dans le système.

Problème :

Trouver une formule pour pn(t) = Prob(N(t) = n)  la probabilité qu’il y ait n


unités dans le système au temps t.
10
Processus de naissance et de mort : résolution

Régime transitoire : pn(t) dépend de t (résolution difficile).

Régime stationnaire : pn(t) est indépendant de t.

En supposant le régime transitoire très court, notre intérêt va porter sur le régime
stationnaire.

PRINCIPE PERMETTANT D’ÉCRIRE UNE ÉQUATION D’ÉQUILIBRE POUR


TOUT ÉTAT n :
pour tout état n = 0, 1, 2, …, le taux d’entrée moyen de clients doit être
égal au taux de départ moyen.

diagramme
d’états

11
Calcul de Pn  pn(t)

12
Calcul de Pn  pn(t)

13
1er cas : modèle S/F/M/Qmax  modèle 1/1//
Une file d’attente de capacité illimitée, une station, une source illimitée.

Intensité
de trafic

diapositive
suivante

14
Modèle 1/1// : calcul de P0

Vous jouez à pile-ou-face. Vous décidez de jouer jusqu'à ce qu'apparaisse "Pile"


pour la première fois. Le nombre L de lancers nécessaires est donc une variable
aléatoire dont la distribution est géométrique.
15
Modèle 1/1// : intensité de trafic
Max Pn correspond à  = n .
 n+1

Exemple :
La probabilité la plus élevée de rencontrer 3 unités dans le système
a lieu lorsque  = 3 / 4 et a pour valeur : 27 / 256  0.1054.

Pour calculer Prob(N ≤ n), on a :


n n
 Pi = (1 - )  n
i=0 i=0

= 1 - n+1

Par conséquent, Prob(N > n) = n+1 et la probabilité qu’il y ait au moins une
unité dans le système est Prob(N > 0) =  = intensité de trafic = 1 – probabilité
de ne pas attendre.
16
Modèle 1/1// : nombre moyen d’unités dans le système

N =  / (1 - )

Note : Si   , alors   1 et N  .
La quantité  est l’essence même du problème; cela reflète un compromis
entre le gain issu de la réduction de N et le coût associé des installations
et du personnel constituant le service. 17
Modèle 1/1// : nombre moyen d’unités dans la file d’attente

18
Modèle 1/1// : temps moyen passé dans le système

Formule de Little :

Temps moyen passé dans le système (temps de service inclus) :

N/ = [ / (1 - )] /  = 1 / ( - )
= [1 / (1 - )] / 

Temps d’attente moyen dans la file :

Q/ = [2 / (1 - )] /  =  / [( - )]


= [ / (1 - )] / 
=N/

Note : N/-Q/= 1/ ce qui représente bien le temps moyen de service.

19
Modèle 1/1// : exemple I
Dans une usine de fabrication de meubles, on peint 20 unités à l’heure.

Celles-ci arrivent à la salle de peinture à un rythme moyen de 12 à l’heure.

Nombre moyen de meubles dans la salle de peinture


 = 12
N =  / (1 - ) = (12 / 20) / (1 – 12 / 20)
 = 20 = 1.5 meuble.

Temps moyen passé dans la salle de peinture

N /  = 1.5 / 12 = 1/8 heure = 7.5 minutes.

Temps moyen d’attente avant d’être peint

N /  = 1.5 / 20 = 3/40 heure = 4.5 minutes.

20
Modèle 1/1// : exemple II
Dans un grand magasin, on a observé les arrivées suivantes de clients :

Arrivées pendant Fréquences


une période observées
de 5 min. (fn)
(n)

0 29
1 34
2 24
3 8
4 4
5 1
6 0 Total sur 100

Nombre moyen d’arrivées par période de 5 minutes :


6
1  n fn = 1.27
100 n=0 21
Le paramètre 1.27 est-il admissible comme celui de
la loi de Poisson associée aux arrivées ?
Effectuons donc un test du 2.
Règle à suivre : On doit retrouver 4 à 5 éléments par classe au
minimum pour un échantillon de taille 100.

Regroupons les 3 dernières classes en une.

Arrivées pendant Fréquences


Fréquences Différence : fd
une période théoriques
observées |fn – 100 pn(t) |2
de 5 min. (100 pn(t) ) 100 pn
(fn) (fd)
(n) où  t = 1.27

0 29 28 1 .0357
1 34 36 4 .1111
2 24 23 1 .0435
3 8 9 1 .1111
≥4 5 4 1 .2500

100 – ce qui précède 22


Le paramètre 1.27 est-il admissible comme celui de
la loi de Poisson associée aux arrivées ?
Nous avons alors exp2 = 0.0357 + 0.1111 + 0.0435 + 0.1111 + 0.2500 = 0.5514.

Étant donné que nous avons estimé un paramètre et que nous possédons
5 classes, nous sommes en présence d’une 2 à 3 degrés de liberté.

À un niveau  = 5 %, on obtient t2 = 7.8147 et vu que t2 > exp2 on accepte


l’hypothèse que :
 = 1.27 / 5 minutes = 0.254 / minute.

23
Durée des services
La durée des services s’est répartie comme suit :

Durée Fréquence
[0, 1) 23
[1, 2) 20
[2, 3) 14
[3, 4) 12
[4, 5) 9
[5, 6) 5
[6, 7) 4 Durée moyenne de service (1 /  ) :
[7, 8) 5 (0.5 x 23 + 1.5 x 20 + … + 11.5 x 1) / 100
[8, 9) 3 = 3.27
[9, 10) 2
[10, 11) 2
valeur médiane
[11, 12) 1  = 1 / 3.27  0.3 / minute
[12, ) 0 de l’intervalle

Vérifions par un test de 2 si cette hypothèse


est fondée.
24
Durée des services
Regroupons quelques classes :

Durée Fréquences Fréquences Différence : fd


|fn – 100 pn |2 100 pn
observées théoriques (fd)
(fn) (100 pn)
où   0.3

[0, 1) 23 26 9 .3962
[1, 2) 20 19 1 .0526
[2, 3) 14 14 0 0
[3, 4) 12 11 1 .0909
[4, 6) 14 14 0 0
[6, 8) 9 7.5 2.25 .3000
[8, ) 8 9 1 .1111

exp2 = 0.9008

qui correspond à un 2 à 5 degrés de liberté. À 5 %, on a t2 = 11.1; on accepte


donc l’hypothèse. 25
Caractéristiques de la file d’attente
S=1

 =  /  = 0.8467

Nombre moyen d’unités dans le système N =  / (1 - ) = 5.52

Temps moyen d’attente N /  = 5.52 / 0.3 = 18.4 min.

Nombre moyen de clients 0.254 x 8 x 60 = 121.92


une Durée
moyenne
journée Temps perdu en attente 121.92 x 18.4 min. de service
de 8 h.
Temps pendant lequel le caissier est occupé 121.92 x 3.27 min.
26
Modèle S/1//

Arrivée d’une unité

Les S stations
sont occupées.

non oui

L’unité L’unité attend.


est servie
immédiatement
27
Modèle S/1// : nombre moyen d’unités dans la file
Q

Temps d’attente moyen :

Q/

Q=
28
Modèle S/1// : nombre moyen de stations inoccupées

SI

SI
29
Modèle S/1// : nombre moyen d’unités dans le système

N = Q + S – SI

N=Q +/

Modèle S/1// : temps moyen passé dans le système

Q/+1/

Note : S    P0  e - / 

La probabilité qu’il y ait 0 unité dans la file lorsque S   est égale à 1.


30
Modèle S/1// : probabilité qu’une unité attende dans la file


Prob(N ≥ S) =  pn
n=S


= p0 SS  n
S! n=S

= p0 ( / )S
S! (1 - )

31
Exemple : salle d’urgence d’un hôpital
Arrivées de patients suivent un processus de Poisson.
Durée de traitement par patient obéit à une loi exponentielle.
 = 2 patients / heure
 = 3 patients / heure
Question : Doit-on affecter un ou deux médecins ?
S=1 S=2
  /  = 2/3 < 1  / 2 = 2/6 = 1/3 < 1
P0 1/3 1/2
P1 2/9 1/3
Pn (2/3)n/3 (1/3)n n≥2

Q 4/3 1 / 12 Nombre moyen d’unités dans la file

N 2 3/4 Nombre moyen d’unités dans le système

2/3 Nette amélioration  1/24 Temps moyen d’attente dans la file

32
3ième cas : modèle S/F/M/Qmax  modèle 1/1//q
Une file d’attente de capacité limitée q, une station, une source illimitée.

Lorsqu’il y a q + 1 unités dans le système, les nouveaux arrivants partent sans


recevoir de service.
Ex. : Salle d’attente de capacité limitée.
 si n = 0, 1, 2, …, q
Taux d’arrivée : n =
0 si n > q

Taux de service : n =  pour tout n.

(/)n = n si n = 0, 1, 2, …, q, q + 1
Cn =
0 si n > q + 1

P0 = [ 1 - ] / [1 - q+2] et Pn = [ (1 - ) n] / [1 - q+2] n ≤ q + 1

33
3ième cas : modèle S/F/M/Qmax  modèle 1/1//q
 q+1
N=  n Pn = [ (1 - )] / [1 - q+2]  n n
n=0 n=0

= [ / (1 - )] - [ (q + 2) q+2 / (1 - q+2)]

Q = N – (1 – P0).

q
 = taux d’arrivée moyen =  n Pn =  (1 – Pq+1)
n=0

Temps passé dans le système : N / .

Temps d’attente dans la file : Q / .

34
4ième cas : modèle S/F/M/Qmax  modèle s/1//q
Une file d’attente de capacité limitée q, s stations, une source illimitée.
Lorsqu’il y a q + s unités dans le système, les nouveaux arrivants partent sans
recevoir de service.
Ex. : Salle d’attente de capacité limitée.
 si n = 0, 1, 2, …, q + s - 1
Taux d’arrivée : n =
0 si n ≥ q + s

Taux de service : n = n si n ≤ s
s si n > s

(/)n / n! si n = 0, 1, 2, …, s
Cn =
[(/)s (/s)n-s] / s! si n = s + 1, s + 2, …, q + s
0 si n > q + s
On peut alors calculer P0 et, ensuite, Pn pour tout n = 1, 2, …, q + s.
etc.
35
5ième cas : modèle S/F/M/Qmax  modèle 1/1/m/
Une file d’attente de capacité illimitée, une station, une source limitée m.
Exemple :

Considérons un atelier dans lequel sont utilisées m machines identiques qui


fonctionnent indépendamment les unes des autres. Des pannes se produisent
sur ces machines, d’une façon aléatoire selon une loi de Poisson avec un taux
 pour chacune.

Pour les réparer, on dispose d’un mécanicien qui constitue ainsi la station par
où doivent passer les machines. La durée des réparations est distribuée selon
la loi exponentielle avec un taux .
(m - n)  si n = 0, 1, 2, …, m
Taux d’arrivée : n =
0 si n ≥ m
Taux de service : n =  si n = 1, 2, …, m.
où n désigne le nombre de machines dans le système (n ≤ m).
/ désigne le facteur de service ou facteur d’entretien.
36
5ième cas : modèle S/F/M/Qmax  modèle 1/1/m/
Cn = m!(/)n / [(m – n)!] si n = 1, 2, …, m.

Pn = Cn P0 si n = 1, 2, …, m.

Pour calculer P0, on se sert du fait que : P0 = 1 - P1 - … - Pm.

m
Le nombre moyen d’unités dans la file est :  (n – 1) Pn = m - (1 – P0) (1 +  / )
n=2

m
Le nombre moyen d’unités dans le système est :  n Pn = m -  (1 – P0) / 
n=0
m
La probabilité d’une attente de durée quelconque est :  Pn = 1 – P0
n=1

37
5ième cas : modèle S/F/M/Qmax  modèle 1/1/m/

Le temps moyen d’attente dans la file est : nombre moyen d’unités dans la file
taux moyen des arrivées
c’est-à-dire, # moyen d’unités dans la file
 (m - # moyen d’unités dans le système)

= [m / (1 – P0) – (1 +  / )] / 

Le temps moyen d’attente dans le système est :


# moyen d’unités dans le système
= [m / (1 – P0) -  / ] / 
 (m - # moyen d’unités dans le système)

38
6ième cas : modèle S/F/M/Qmax  modèle s/1/m/

Généralisation du cas précédent : s mécaniciens au lieu d’un seul.

(m - n)  si n = 0, 1, 2, …, m
Taux d’arrivée : n =
0 si n ≥ m
Taux de service : n = n si n = 1, 2, …, s.
s si n = s+1, s + 2, …, m.

où n désigne le nombre de machines dans le système (n ≤ m).

n
Pn = m  P0 si n = 1, 2, …, s
n 

n
Pn = n! m  P0 si n = s + 1, s + 2, …, m
s! sn-s n 
etc.
39
Conclusion

Il existe plusieurs autres types de phénomènes d’attente avec des lois d’arrivées
et/ou de service différentes. Mais les principes généraux demeurent les mêmes.

Exemples :

Un taux de service qui dépend de l’état du système (n).

Des durées de services non exponentielles.

etc.

40