Vous êtes sur la page 1sur 25

46

CHAPITRE 2
FILES D'ATTENTE

1. Généralités.

La théorie des files d'attente s’attache à modéliser et à analyser de nombreuses situations en


apparence très diverses, mais qui relèvent néanmoins toutes du schéma descriptif général
suivant. Des clients arrivent à intervalles aléatoires dans un système comportant plusieurs
serveurs auxquels ils vont adresser une requête. La durée du service auprès de chaque
serveur est elle-même aléatoire. Après avoir été servis (ce qui suppose un arrêt chez un ou
plusieurs serveurs selon le cas), les clients quittent le système.

arrivée
départs
clients
clients

Figure 1. Structure générale d’un système


de files d’attente

Le but de l'analyse est de caractériser le degré de performance du système en répondant à


des questions du type suivant:
• en moyenne, combien de temps attend un client avant d'être servi?
• quel est le nombre moyen de clients dans le système?
• quel est le taux d'utilisation moyen des serveurs?
• ...
Illustrons cette description générale par quelques exemples spécifiques.

Agence bancaire
Ici, les serveurs sont les guichets de l'agence. Typiquement, tous les guichets offrent le
même service, et chaque client ne devra donc visiter qu'un seul guichet.

Atelier de production
Les 'clients' sont les ordres de fabrication à exécuter, et les 'serveurs' sont les machines
nécessaires à l'exécution de chaque ordre de fabrication.
47

Parking
Les 'clients' sont les véhicules qui cherchent à stationner (plutôt que les occupants, en
nombre variable, de ces véhicules). Les 'serveurs' sont les emplacements de parking, et la
'durée de service' est la durée pendant laquelle chaque véhicule reste stationné.

On remarque que les situations considérées peuvent différer énormément les unes des
autres. Pour mettre un peu d'ordre au milieu du chaos, les théoriciens ont été amenés à
classifier les systèmes rencontrés en précisant certaines de leurs caractéristiques. En
particulier, on distingue ainsi:

• Les systèmes à serveurs parallèles, où chaque client ne requiert le service que d'un seul
serveur et tous les serveurs sont capables de fournir ce service.

arrivées départs

Figure 2. Serveurs parallèles

• Les systèmes à serveurs en série, où chaque client doit visiter plusieurs serveurs
successifs dans un ordre fixe pour recevoir satisfaction.

arrivées départs

Figure 3. Serveurs en série

L'agence bancaire, le supermarché et le parking fournissent des exemples de systèmes à


serveurs parallèles, et la chaîne de montage automobile est un exemple de système en série.
Plus généralement, les ateliers de production peuvent présenter une structure parallèle, ou
en série, ou une organisation plus générale encore (si les divers ordres de fabrication
visitent les machines selon des séquences différentes).

• Les arrivées de clients peuvent être groupées ou individuelles; de même pour le


service par chaque serveur.
48

• Les clients forment une ou plusieurs files d'attente, éventuellement caractérisées par
des priorités différentes (par exemple, dans un atelier, commandes urgentes ou non). Au
sein de chaque file, le prochain client à servir est sélectionné sur base d'une règle
prédéterminée, appelée discipline de service. Les disciplines de service les plus courantes
sont: premier arrivé premier servi (First In First Out, First Come First Served) (surtout
utilisée dans les services, par souci d'équité), temps de service le plus court d'abord (utilisé
dans les ateliers de production), dernier arrivé premier servi, sélection aléatoire, etc.

• La capacité du système, c’est-à-dire le nombre de clients pouvant être simultanément


présents dans le système, est limitée ou non. Dans le premier cas, on suppose que les clients
qui arrivent lorsque le système est déjà saturé le quittent immédiatement sans obtenir le
service désiré. On dit que ces clients sont perdus. Dans le cas d'un système à capacité
illimitée, bien sûr, aucun client n'est perdu (mais la longueur des files d'attente peut grandir
indéfiniment !).

Dans ce bref exposé, nous nous limiterons à l'étude de systèmes


- à serveurs parallèles
- à arrivées et service individuels.
Nous supposerons également que tous les clients demandent le même service et que les
serveurs sont identiques.

2. Mesures de performance - Comportement à long terme.

Nous appelons état d'un système à l'instant t le nombre n(t) de clients présents dans le
système à cet instant (un client est « présent dans le système » si il est en file d’attente ou
en cours de service). Les quantités fondamentales auxquelles s'intéresse l'analyste dans le
cadre des modèles de files d'attente sont les probabilités d'état, que nous définissons de la
façon suivante: pour n = 0, 1, 2, ... et t ≥ 0,
pn(t) = probabilité de l'état n à l'instant t (1)
= probabilité que n clients soient présents dans le système à l'instant t
= Pr[n(t) = n].

Sous certaines conditions, les probabilités à long terme ou probabilités stationnaires

p n = lim p n (t) (2)


t →∞
existent pour n = 0, 1, 2, ... et définissent effectivement une mesure de probabilité :
49


∑ p n = 1.
n=0

On interprète alors pn comme la probabilité que, à un instant quelconque dans le long


terme, exactement n clients soient présents dans le système. Sous des hypothèses assez
faibles, on montre que pn représente également la proportion du temps (à long terme) où le
système contient n clients. L'existence des limites (2) implique donc que, dans le long
terme, le système atteint un état d'équilibre stable, indépendant de son état initial. Lorsque
c'est le cas, on se contentera souvent de la description à long terme du système fournie par
(2) plutôt que de calculer les distributions de probabilité (1) qui caractérisent le système
dans sa phase 'non-stabilisée'.

Remarque. Il faut se garder de confondre l'existence des probabilités stationnaires (2) et la


disparition (à long terme) des fluctuations aléatoires du système. Pour bien comprendre
ceci, il faut remarquer que l'état d'un système stochastique est en général soumis à deux
sources de variabilité: d'une part, les fluctuations aléatoires qui affectent le système en
permanence, et qui, même dans un très court laps de temps, sont responsables des
variations du système autour de son état moyen; d'autre part, l’évolution temporelle du
système à plus long terme, qui peut être vue comme un déplacement de l’état moyen lui-
même. (Par exemple, la valeur d’un titre boursier peut enregistrer de légers gains ou pertes
quotidiens tout en affichant une tendance - un trend - à la hausse dans le long terme.)
L'existence des probabilités stationnaires signifie seulement que, au fil du temps,
l’évolution temporelle tend à disparaître, sans que l'état du système devienne parfaitement
prédictible (déterministe) pour la cause.

Lorsque les probabilités (1) et/ou (2) sont connues, il est possible de calculer de
nombreuses mesures de performance du système de files d’attente à étudier. Parmi les plus
importantes, on considérera les mesures à long terme suivantes:
Ls = nombre espéré de clients dans le système (à un instant quelconque dans le long
terme)
Lq = nombre espéré de clients dans la file d'attente (à un instant quelconque dans le long
terme)
Ws = temps espéré passé par chaque client dans le système (dans le long terme)
Wq = temps espéré passé par chaque client dans la file d'attente (dans le long terme).

Par définition, on a:

Ls = ∑ n p n (3)
n= 0
50

De plus, si le système comporte c serveurs parallèles, alors



Lq = ∑ (n − c) p n , (4)
n = c +1

puisqu'il y a (n-c) clients dans la file si et seulement si il y a n clients dans le système.

La relation entre les paramètres L et W est plus subtile, mais joue un rôle primordial dans la
théorie des files d’attente. Pour la décrire, notons:
λeff = taux d'entrée moyen des clients dans le système (nombre moyen de clients entrant
dans le système par unité de temps).

L’équation suivante, désignée sous le nom de loi de Little, lie les paramètres LS, WS et λeff
et permet donc de calculer l’une de ces quantités lorsque les deux autres sont connues:

Proposition 1. (Loi de Little) Pour tout système de files d’attente,


Ls = λeff × Ws. (5)

Démonstration. Sans vouloir entrer dans les détails d’une démonstration formelle, la
validité de l’équation (5) peut être justifiée intuitivement par le raisonnement suivant (voir
Ross, 1989). Supposons qu'un gestionnaire décide de payer 1 euro à chaque client par unité
de temps que ce client passe dans le système. Calculons de deux façons différentes combien
le gestionnaire dépense au cours d'une période suffisamment longue, disons de longueur T,
située dans le long terme (plus précisément, nous allons calculer l’espérance de la somme
dépensée).
1ère façon: puisque, en moyenne, Ls clients se trouvent dans le système à chaque instant, la
somme déboursée se monte à Ls T euros.
2ème façon: pendant la période considérée, λeff T clients entrent dans le système, et chacun
d'eux y reste, en moyenne, Ws unités de temps; au total, les clients reçoivent donc λeff T
Ws euros du gestionnaire.
Par conséquent, Ls T = λeff T Ws , et l'équation (5) s'ensuit. CQFD

La loi de Little est valide sous des hypothèses très générales et sous une interprétation très
large du mot « système ». En particulier, elle reste valide lorsque la file d'attente elle-même
est interprétée comme un système:
Lq = λeff Wq . (6)
Il suffit pour s'en persuader de répéter l'argument esquissé dans la démonstration
précédente, en ne payant cette fois que les clients qui se trouvent en file d'attente.
51

Notons enfin que de nombreuses autres mesures de performance (à long terme) peuvent
être déduites simplement de celles introduites ci-dessus. Par exemple, puisque les clients en
cours de service sont précisément ceux qui sont présents dans le système mais pas en file
d’attente, on obtient:
durée moyenne du service, par client = Ws - Wq (7)
nombre moyen de serveurs occupés = Ls - Lq. (8)
Si le système comporte c serveurs, le taux moyen d’occupation de chaque serveur (c’est-à-
dire, la proportion du temps pendant laquelle chaque serveur est occupé) est alors obtenu
par la formule
LS − Lq
.
c
Nous allons à présent illustrer quelques-uns des concepts introduits sur un exemple
numérique simple.

Exemple 1.
Le gestionnaire d'un petit atelier enregistre en moyenne 5 commandes par jour. Les 6
ouvriers employés dans l’atelier sont très polyvalents, si bien que chaque commande peut
être réalisée par n’importe lequel d’entre eux. Néanmoins, le gestionnaire est inquiet car il
constate que les ouvriers sont occupés en permanence et que son carnet de commandes
contient, en moyenne, une vingtaine de commandes en cours (enregistrées, mais non
satisfaites).
Pour mieux comprendre la situation, le gestionnaire aimerait estimer le temps moyen
consacré par les ouvriers à chaque commande. Il voudrair également pouvoir annoncer à
ses clients, au moment de la passation de commande, un délai de livraison attendu.

On a: λeff = 5 et Ls = 20. Donc, par la loi de Little, Ws = 20/5 = 4: le gestionnaire peut


annoncer un délai de livraison de 4 jours.
Par ailleurs, Ls - Lq = 6 (puisque les ouvriers sont occupés en permanence). Donc,

Ls − L q 6
Ws − Wq = = ,
λ eff 5
et chaque commande requiert en moyenne 1,2 jours de travail effectif.

En pratique, les modèles de files d'attente sont souvent utilisés dans des situations où les
seules caractéristiques directement observables ou prédictibles du système concernent le
processus d'arrivée des clients et la distribution du temps de service (c'est par exemple le
cas dans la phase de conception d'un système). Le but de l'analyse est de calculer les
paramètres Ls, Lq, Ws, Wq, ... sur base de ces données.
52

Dans de nombreux cas, il est impossible de dériver des expressions analytiques pour ces
mesures de performance et il faut alors recourir à des procédures de calcul numérique ou à
des simulations du système étudié pour estimer leur valeur. Dans d'autres cas, par contre,
les processus d'arrivée et de service possèdent des propriétés autorisant une analyse très
complète du système. Nous allons maintenant présenter les plus typiques de ces propriétés.

3. Processus de Poisson.

Nous notons N(t) le nombre d'arrivées de clients survenues dans l'intervalle de temps [0, t),
pour t ≥ 0. La quantité N(a+t) − N(a) représente alors le nombre d’arrivées enregistrées
entre les instants a et a+t, pour tout a ≥ 0 et t ≥ 0.

En règle générale, pour chaque t ≥ 0, N(t) est une variable aléatoire. L’ensemble de ces
variables aléatoires fournit une représentation mathématique, c’est-à-dire un modèle, des
arrivées de clients dans le système. On baptise processus (stochastique) d'arrivée cet
ensemble { N(t) : t ≥ 0 }.

Le processus d'arrivée peut bien sûr présenter des caractéristiques variées en fonction de la
situation modélisée. Mais il est fréquent dans la pratique que ce processus soit (du moins en
première approximation) un processus de Poisson, ce qui signifie qu'il existe un paramètre
λ > 0 (appelé taux du processus) tel que:

(i) le nombre d'arrivées dans tout intervalle [a,a+t) de longueur t suit une loi de Poisson
de moyenne λt, c'est-à-dire: pour a, t ≥ 0 et n = 0, 1, 2, ...
n
−λt (λ t)
Pr [ N(a + t) − N(a) = n] = e ;
n!

(ii) si [a,b) et [c,d) sont des intervalles de temps disjoints, alors le nombre d'arrivées
dans [a,b) est indépendant du nombre d'arrivées dans [c,d).

(iii) N(0) = 0.

Quelques commentaires s'imposent au sujet de cette définition. La propriété (iii) est


évidemment requise si { N(t) : t ≥ 0 } doit pouvoir être interprété comme un processus
d’arrivée. Par contre, la propriété (ii) n’est pas satisfaite par tous les processus d’arrivée:
intuitivement, elle implique que le nombre d'arrivées enregistrées dans un intervalle [a,b)
53

(par exemple, [0,5)) ne fournit aucune indication sur le nombre d'arrivées à attendre dans
un intervalle disjoint [c,d) (par exemple l’intervalle [5,8)).

La propriété (i), quant à elle, est encore plus restrictive et beaucoup moins intuitive. Elle
implique en particulier que le processus d’arrivée est stationnaire, ce qui veut dire que les
nombres d’arrivées enregistrés dans deux intervalles distincts de même durée suivent la
même loi de probabilité (ceci, en dépit de leur indépendance mutuelle, exprimée par la
propriété (ii)). Pour un intervalle de longueur t fixée, disons [0,t), le nombre espéré
d'arrivées se calcule comme suit:


E[ N(t)] = ∑ n Pr[ N(t) = n]
n= 0

(λ t) n
= ∑ ne − λt

n= 0 n!

(λ t) n −1
= λ t e − λt ∑ (n − 1)!
n =1

xn ∞
Si l'on se souvient que e = ∑
x
, on obtient
n=0 n!
E[ N(t)] = λ t e − λt e λt
= λ t.

En posant t = 1, on voit que λ est exactement le nombre espéré d'arrivées par unité de
temps, ce qui explique l’appellation « taux du processus » donnée à λ .

De façon similaire, on démontre que

Var[ N(t)] = E[ N(t)] = λt.

Nous avons déjà mentionné que le processus de Poisson fournit une bonne approximation
de nombreux processus d'arrivée observés empiriquement. Un théorème remarquable dû à
Palm et Khintchine fournit une justification théorique de cette omniprésence des processus
de Poisson. Considérons un processus d’arrivée qui peut être envisagé comme résultant de
la superposition de m processus d'arrivée indépendants les uns des autres (qui décrivent, par
exemple, les processus d'arrivée de m classes de clients distinctes). Plus précisément, si N1,
N2, ..., Nm désignent les m processus indépendants, alors N(t) = N1(t) + N2(t) + ... + Nm(t).
Supposons par ailleurs que chacun des processus N1, N2, ..., Nm est stationnaire (attention:
nous ne faisons pas l’hypothèse que ces processus sont poissonniens !!). Le théorème de
54

Palm-Khintchine affirme que, sous ces conditions (et quelques hypothèses plus techniques),
le processus d'arrivée obtenu par superposition des m processus individuels se comporte
approximativement comme un processus de Poisson lorsque m est assez grand (voir
Heyman et Sobel, 1982 pour plus de détails). Le théorème de Palm-Khintchine indique
donc que les processus de Poisson jouent vis-à-vis de la superposition des processus
d'arrivée un rôle de « loi universelle » similaire à celui rempli par la loi normale vis-à-vis
de l'addition des variables aléatoires (rôle exprimé par le théorème central limite).

4. Distribution exponentielle.

Intuitivement, il existe deux façons de décrire le processus selon lequel les arrivées de
clients surviennent dans un système: on peut en effet vouloir placer l’accent sur
• le nombre de clients qui arrivent dans un intervalle de temps donné (par exemple, 10
clients par heure), ou sur
• l’intervalle de temps écoulé entre deux arrivées successives (par exemple, une arrivée
toutes les 6 minutes).
La description adoptée dans la section précédente était du premier type, puisqu’elle reposait
sur la considération du processus d’arrivée { N(t) : t ≥ 0 }.

Dans l'hypothèse où le processus d'arrivée considéré est poissonnien, on peut aisément


passer d’un type de description à l’autre. En effet, considérons un instant a quelconque (par
exemple, celui correspondant à l’arrivée d’un client) et désignons par X le temps écoulé
jusqu’à la première arrivée de client observée après l’instant a. Calculons la loi de
probabilité qui régit l'intervalle de temps X. Pour tout t ≥ 0, on a:

Pr[ X > t] = probabilité qu’aucune arrivée ne soit enregistrée entre a et a+t


= Pr[N(a + t) − N(a) = 0]
= e − λt .

Par définition, on dit que la variable aléatoire X suit une distribution exponentielle de
paramètre λ. En combinant ce résultat avec la propriété (ii) des processus de Poisson, on
obtient ainsi aisément une « moitié » du résultat fondamental suivant (la réciproque est plus
délicate et nous l'énonçons sans démonstration).

Proposition 2. Un processus d'arrivée est un processus de Poisson de taux λ si et


seulement si les durées entre arrivées successives sont indépendantes et suivent toutes une
loi exponentielle de paramètre λ.
55

Ce résultat montre que les processus de Poisson d’une part et les variables aléatoires à
distribution exponentielle d’autre part ne procurent en réalité que deux visions différentes,
mais équivalentes, d’un même phénomène stochastique: simplement, le processus de
Poisson focalise l’attention sur le nombre d’arrivées par unité de temps, alors que la
distribution exponentielle modélise plus directement l’intervalle de temps qui s’écoule
entre deux arrivées successives.

Mentionnons encore que, si X suit une loi exponentielle de paramètre λ, alors E[X] = 1/λ et
Var[X] = 1/λ2. La valeur de E[X], en particulier, est bien celle que l'on attend
intuitivement: puisque λ est le nombre moyen de clients arrivant par unité de temps,
l'intervalle de temps moyen séparant deux arrivées successives doit valoir 1/λ.

Notons enfin une dernière propriété caractéristique de la loi exponentielle:

Proposition 3. (« Evergreen property ») Si X est une variable aléatoire distribuée


exponentiellement, alors Pr [X > t + s | X > s] = Pr [X > t ] quels que soient t, s ≥ 0, .

Première démonstration.

Pr [X > t + s | X > s]
Pr[ X > t + s et X > s ]
=
Pr [ X > s ]
Pr[ X > t + s ]
=
Pr [ X > s ]
e − λ (t + s)
=
e − λs
= e −λ t
= Pr [X > t ].
CQFD

Deuxième démonstration. Soit P = Pr [X > t + s⏐ X > s ]. En vertu de la Proposition 2, on


peut interpréter X comme le temps écoulé entre la première et la deuxième arrivées d’un
processus de Poisson. Supposons, pour fixer les idées, que la première arrivée a eu lieu à
l’instant 0. Alors, P est la probabilité qu'il n'y ait pas d'arrivée entre les instants s et t + s
sachant qu'il n'y en a pas eu entre 0 et s. Par la propriété d’indépendance (ii) des processus
de Poisson, P est donc la probabilité qu'il n'y ait pas d'arrivée dans l’intervalle [s, t + s), et,
par la propriété de stationnarité (i), P = Pr [X > t]. CQFD
56

On traduit la Proposition 3 de façon imagée en disant que la distribution exponentielle n'a


pas de mémoire: si la durée de vie d'un être humain était distribuée exponentiellement, alors
la probabilité qu'une personne âgée de s = 80 ans survive jusqu'à t + s = 120 ans serait
identique à la probabilité qu'un nouveau-né atteigne l'âge de t = 40 ans (cette observation
nous donne donc de bonnes raisons de penser que la longévité humaine ne suit pas une loi
exponentielle !).

Exemple 2.
A Lilliput, les trains arrivent à la gare centrale selon un processus de Poisson, à raison de 2
trains par heure en moyenne. Gulliver arrive à la gare, où un employé lui signale que le
dernier train est passé il y a une heure déjà. Quelle est la probabilité que Gulliver doive
attendre plus de 10 minutes avant de voir arriver le train suivant?

Réponse: La durée d'attente X entre deux trains successifs est distribuée exponentiellement,
avec paramètre λ = 2. La Proposition 3 nous montre que l'information donnée par l'employé
n’affecte pas la probabilité à calculer:
Pr [X > 1 1/6 ⏐ X > 1] = Pr [X > 1/6] = e-1/3 .
Un raisonnement alternatif conduit (heureusement) au même résultat. La probabilité
recherchée est exactement celle qu'il n'y ait pas d'arrivée du processus de Poisson dans un
intervalle de longueur 1/6, c'est-à-dire
(2 / 6) 0
Pr[ N(1 / 6) = 0 ] = e −2/6 = e −1/3 .
0!

5. Processus de service.

Nous avons centré la discussion précédente autour de la modélisation du processus


d’arrivée des clients, mais les mêmes concepts s’appliquent à la modélisation du processus
de service. Plus précisément, on décrit généralement le processus de service par une suite
de variables aléatoires X1, X2, ..., où Xi est la durée de service du client i (i = 1, 2, ...). Si
l’on suppose que chaque serveur fournit le même service, il est assez naturel d’admettre
que les variables X1, X2, ... sont indépendantes et identiquement distribuées. Ainsi, dans la
pratique des modèles de files d'attente, on posera souvent l’hypothèse que les durées de
service des différents clients sont des variables indépendantes suivant toutes la même
distribution exponentielle de paramètre µ (dans toute application spécifique, cette
57

hypothèse devrait être infirmée ou validée par un test d’hypothèse classique, comme par
exemple le test du chi-carré). On dit que µ est le taux de service moyen des serveurs.

Pour compléter cette discussion, supposons que le processus de service d’un serveur unique
satisfait aux hypothèses précédentes: en particulier, les durées X1, X2, ... sont indépendantes
et suivent toutes une loi exponentielle de même paramètre µ. Remarquons que, si le serveur
est occupé en permanence, alors ces durées peuvent être vues comme des ‘durées entre
sorties successives’ du système (par analogie avec les ‘durées entre arrivées successives’
dans le système). Notons S(t) le nombre de clients servis par le serveur dans l’intervalle de
temps [0,t) ou, de façon équivalente, le nombre de sorties de clients enregistrées dans
l’intervalle [0,t). Si le serveur est occupé en permanence, la Proposition 2 implique donc
que { S(t) : t ≥ 0 } est un processus de Poisson de taux µ, et µ représente l’espérance du
nombre de clients servis par unité de temps.

En général, cependant, le serveur n’est pas occupé en permanence (en raison du caractère
aléatoire du processus d’arrivée, ou par suite d’un taux d'arrivée relativement faible). Dans
ce cas, le processus de service diffère du processus de sortie et, en particulier, le taux de
sortie du système est inférieur à µ. Il est utile de bien comprendre cette distinction entre
taux de service et taux de sortie; nous y reviendrons dans notre discussion des processus de
naissance et de mort.

6. Notations de Kendall.

Suivant une suggestion de Kendall, on décrit souvent les caractéristiques essentielles d'un
système de files d'attente par une notation abrégée de la forme a/b/c/N, où
• a ∈ {M, G, ...} précise le processus d'arrivée: M (Markovien) pour un processus de
Poisson, G (général) pour un processus quelconque non précisé, ...;
• b ∈ {M, G, ...} précise la distribution des durées de service: M (Markovien) pour des
durées indépendantes et distribuées exponentiellement avec moyenne identique pour
chaque serveur, G pour des durées quelconques, ...;
• c ∈ {1, 2, ..., ∞} indique le nombre de serveurs;
• N ∈ {1, 2, ..., ∞} précise la capacité du système, c'est-à-dire le nombre de clients qui
peuvent simultanément s'y trouver.

Le paramètre N est souvent omis lorsqu’il vaut +∞. Ainsi, on parlera de systèmes M/M/1,
M/M/5/8, M/G/1, etc. Par ailleurs, la notation a/b/c/N est parfois complétée par des champs
58

supplémentaires indiquant par exemple la discipline de service (FIFO, aléatoire, ...), le


nombre de clients existant dans l'univers considéré, etc.

Dans la suite de cet exposé, nous nous limiterons à l’étude des systèmes de type M/M/c/N
(systèmes de file d'attente à arrivées poissonniennes et à durées de service exponentielles)
pour lesquels les processus de naissance et de mort fournissent un cadre d’analyse
uniforme.

7. Processus de naissance et de mort: le cas général.

Rappelons que l’état d'un système de files d'attente à l'instant t, noté n(t), est simplement le
nombre de clients présents dans le système à l’instant t. L'ensemble des variables aléatoires
d’état décrit un processus stochastique {n(t): t ≥ 0}. Considérons à présent un système très
général, dans lequel nous ferons abstraction (du moins, à première vue) des caractéristiques
telles que nombre de serveurs, capacité, etc. On peut utilement visualiser un tel système
comme une ‘boîte noire’, simplement caractérisée par un processus d’arrivée, un processus
de sortie et un processus d’état résultant de la combinaison des arrivées et des départs : à
chaque instant t+∆t, l’état n(t+∆t) du système résulte des arrivées et sorties enregistrées
entre t et t+∆t. Sans être parfaitement rigoureuse, la définition suivante permet d’introduire
les caractéristiques d’un tel système auxquelles nous allons nous intéresser.

Définition. Le processus d’état stochastique {n(t): t ≥ 0} est un processus de naissance et


de mort si, pour chaque n = 0, 1, 2, ..., il existe des paramètres λn et µn (avec µo = 0) tels
que, lorsque le système est dans l'état n, le processus d'arrivée est poissonnien de taux λn et
le processus de sortie est poissonnien de taux µn.

Dans un processus de naissance et de mort, les taux d’arrivée et de service sont donc
variables en fonction de l’état du système. Ceci semble nous éloigner des modèles de files
d’attente M/M/c/N, puisque le taux d’arrivée des clients et le taux de sortie sont
apparemment constants dans ces modèles (égaux à λ et µ, respectivement). Mais en réalité,
les processus de naissance et de mort fournissent un cadre d’analyse idéal pour les modèles
M/M/c/N, dans lequel les notions de « nombre de serveurs » et de « capacité du système »
peuvent être traitées à un niveau d'abstraction élevé, à travers des variations des taux
d'arrivée et de sortie. Plus précisément, nous montrerons ci-dessous que le processus {n(t): t
≥ 0} associé à un système M/M/c/N est toujours un processus de naissance et de mort.
59

Pour comprendre intuitivement ces remarques, il suffit de revenir à la remarque formulée à


la fin de la Section 5. Nous y avons en effet observé que, même dans un système M/M/c, le
taux moyen de sortie n’est généralement pas constant: pour un système à un seul serveur,
par exemple, le taux moyen de sortie ne vaut µ que lorsqu’il y a des clients dans le système,
et tombe à 0 sinon. Similairement, dans un système M/M/c/N à capacité finie, le taux
d’arrivée des clients s’annule dès que le nombre de clients présents dans le système est égal
à N. Dans de tels cas, les taux d’arrivée et de sortie peuvent donc être utilement modélisés
comme des fonctions du nombre de clients présents.

Nous allons maintenant procéder à une présentation plus systématique de quelques


processus de naissance et de mort particuliers.

7.1. Processus de naissance pur.


Dans un processus de naissance pur, λn = λ et µn = 0 pour n = 0, 1, ... Donc, les arrivées ont
lieu à taux constant et il n'y a pas de départs. Pour un tel processus, le nombre de clients
dans le système est évidemment égal au nombre d’arrivées enregistrées pour un processus
de Poisson classique, si bien que
pn (t) = probabilité que l'état du système à l'époque t soit égal à n

- λt ( λ t) n
= e (n = 0,1,...) .
n!

7.2. Processus de mort pur.


Dans un processus de mort pur, l’ensemble des états possibles du système est {0,1,...,N} et
λn = 0 pour n = 0, 1, ..., N
⎧0 si n = 0
µn = ⎨
⎩µ si n = 1, 2, ..., N.
Intuitivement, l'état initial d’un tel système vaut N, il n'y a pas d'arrivées et les départs se
produisent à taux (moyen) constant jusqu'à ce que le système soit vide. En interprétant les
départs comme des « arrivées à l'extérieur du système », on conclut facilement que:
pn(t) = probabilité que N-n départs se produisent dans l'intervalle [0, t)

−µt
(µ t) N − n
= e (n = 1, 2, ..., N)
(N − n)!
et
60

p0(t) = probabilité que N départs au moins se produisent dans l’intervalle [0, t)



(µ t) j
= ∑ e −µ t
j= N j!
N −1
(µ t) j
= 1− ∑ e −µ t

j= 0 j!
N
= 1 − ∑ p n (t)
n =1
N
(une autre façon de calculer p0(t) consiste à remarquer que l'identité ∑p
n =0
n ( t ) = 1 doit être

satisfaite par les probabilités d’état).

7.3. Système M/M/1.


Un système M/M/1 définit un processus de naissance et de mort caractérisé par les
paramètres d’arrivée λn = λ pour n = 0, 1, ..., et les paramètres de sortie µ0 = 0 et µn = µ
pour n = 1,2,...

7.4. Système M/M/c.


On obtient une description d’un système M/M/c en posant λn = λ pour n = 0, 1, ..., et
⎧ nµ si n ≤ c
µn = ⎨
⎩cµ si n ≥ c
En effet, lorsque le nombre de clients présents dans le système est inférieur au nombre de
serveurs, alors les n serveurs occupés donnent lieu à un processus de départ poissonnien de
taux nµ (que le taux soit égal à nµ est évident; que le processus de départ soit poissonnien
l'est moins, mais peut être démontré rigoureusement). Si le nombre de clients présents
excède c, alors le taux du processus de départ reste limité à cµ, comme illustré par la figure
ci-dessous.

µ
λ µ cµ

µ
61

7.5. Système M/M/c/N.


Dans un système de file d’attente dont la capacité est finie (égale à N), les états possibles
du système sont n = 0, 1, ..., N, et
⎧λ si n < N
λn = ⎨
⎩0 si n = N
⎧nµ si n ≤ c
µn = ⎨
⎩cµ si n ≥ c,

puisqu'aucun client n'a accès au système lorsque n = N.

7.6. Probabilités à long terme.

Dans le cas simple d’un processus de naissance pur ou de mort pur, il est possible de
calculer directement les probabilités d'état pn(t) sous forme analytique (voir ci-dessus). Par
contre, pour des processus de naissance et de mort plus généraux, le calcul de ces
probabilités devient difficile ou tout simplement impossible. On se contente donc souvent
d’établir des formules analytiques pour les probabilités à long terme pn, n = 0, 1, 2, ... (voir
Section 2). Nous allons à présent énoncer un résultat général permettant de dériver de telles
formules.

Proposition 4. Lorsqu’elles existent, les probabilités à long terme pn (n = 0, 1, ...) d'un


processus de naissance et de mort satisfont aux équations d'équilibre
λ n p n = µ n + 1 p n + 1 (n = 0, 1, 2,...) (9)
et à l’équation de normalisation

∑ p n = 1. (10)
n=0

Nous ne donnerons pas de démonstration de ce résultat, et nous contenterons d’observer


que les équations d’équilibre admettent une visualisation et une interprétation naturelles.
Tout d’abord, considérons le graphe de transition associé à un processus de naissance et de
mort arbitraire.

pn-1 pn pn+1
λn-1 λn
0 1 … n-1 n n+1 …
µn µn+1
62

Dans ce graphe, les sommets correspondent aux états possibles du système, et chaque arc
indique une transition possible d'un état vers un autre (remarquer que les arcs de la forme
(n,n+2), (n,n-2), (n,n+3), ... ne figurent pas dans ce graphe, puisque les arrivées et les
départs d'un processus de Poisson sont toujours individuels).

Lorsque le système est dans l’état n, il passe à l’état n+1 au taux moyen λn (attention: il
s’agit là d’un taux conditionnel au fait que le système est dans l’état n). Cette valeur se
retrouve sur l’arc (n,n+1) du graphe de transition. Puisque pn est, intuitivement, la
proportion du temps pendant laquelle le système se trouve dans l'état n, on en déduit:

λn pn = taux espéré auquel le système passe de l'état n à l’état n+1.

De même, lorsque le système est dans l'état n+1 (ce qui se produit durant une proportion
pn+1 du temps), il passe dans l’état n au taux moyen µn+1. On obtient ainsi:
µn+1 pn+1 = taux espéré auquel le système passe de l'état n+1 à l’état n.

Les équations d'équilibre traduisent donc simplement le fait que, en régime stationnaire,
c’est-à-dire à l’équilibre, le système connaît autant de transitions (par unité de temps) de
l’état n vers l’état n+1 que de l'état n+1 vers l’état n.

Exemple 3.
Supposons que pour un système particulier p2 = 0,25 et λ2 = 20 (clients par heure): si il y a
deux clients présents dans le système (ce qui se produit un quart du temps environ), le taux
d’arrivée moyen est donc de 20 clients par heure. En moyenne, on assiste donc 5 fois par
heure (0,25 × 20) à une transition de l’état ‘2 clients présents’ vers l’état ‘3 clients
présents’.

Lorsque µn > 0 pour n = 1, 2, ... (ce qui est par exemple le cas pour tout système M/M/c/N
avec µ > 0), les équations d'équilibres peuvent être facilement résolues en terme de p0. En
effet, on obtient successivement

λo
p1 = p ,
µ1 0
λ
p 2 = 1 p1
µ2
λ λ
= ο 1 po ,
µ1µ 2
63

et, plus généralement:

λ ολ 1 ... λ n −1
pn = p o pour n = 1, 2, ... (11)
µ1µ 2 ... µ n

Pour que (11) détermine une distribution de probabilité, il faut et il suffit qu'il existe une

valeur de p0 telle que ∑p
n= 0
n = 1.

En résumé, si les probabilités stationnaires d'un processus de naissance et de mort existent,


alors ces probabilités définissent l'unique solution du système (9)−(10). Lorsque ces
probabilités sont connues, l'analyse du comportement à long terme d'un tel système peut
être complétée par le calcul des mesures de performance Ls, Lq, Ws, Wq, ...

Remarquons, en particulier, que l'utilisation de la loi de Little (formules (5)−(6)) requiert la


détermination préalable du paramètre λeff, le taux d'entrée moyen des clients dans le
système. Dans le cadre d'un processus de naissance et de mort, λeff n’est rien d’autre que la
valeur espérée des taux d’arrivée λn et est donc calculé par la formule

λ eff = ∑ λ n p n .
n=0
Dans la section suivante, nous allons illustrer cette discussion générale par l'étude de
quelques cas particuliers.

8. Processus de naissance et de mort: cas particuliers.

8.1. Processus de naissance pur.

Si λn = λ > 0 et µn = 0 pour n = 0, 1, 2, ..., alors les équations d'équilibre deviennent:

λ pn = 0 ( n = 0,1, 2,...).

Ce système a pour unique solution: pn = 0 pour n = 0, 1, 2, ..., et donc les pn ne forment pas
une distribution de probabilité (l’équation de normalisation (10) n'est satisfaite). Cette
conclusion aurait pu être anticipée: dans un processus de naissance pur, l’état du système
croît indéfiniment, ce qui interdit l'existence de probabilités stationnaires.
64

8.2. Processus de mort pur.

Ici, λn = 0 pour n = 0, 1, ... et

⎧0 si n = 0
µn = ⎨
⎩µ si n = 1, 2, ..., N.

Les équations d'équilibre s’écrivent

⎧µ p1 = 0

⎩µ p n+1 = 0 (n = 1, ..., N - 1)

et donc p n = 0 pour n = 1, 2, ..., N. (A la différence du cas précédent, la valeur de p0 n’est


pas déterminée par les équations d’équilibre). En substituant ces valeurs dans l'équation de
normalisation (10), on obtient les probabilités stationnaires:

⎧p 0 = 1

⎩p n = 0 ( n = 1, 2,...)

Ce résultat est bien celui attendu intuitivement. (Pourquoi ?)

8.3. Système M/M/1.

Lorsque λn = λ pour n ≥ 0 et µn = µ pour n ≥ 1, les équations d'équilibre prennent la


forme:

⎧ λ p o = µ p1

⎩λ p n = µ p n + 1 (n ≥ 1)

La solution de ce système est donnée par la formule (11) qui devient ici:

λ
pn = ( ) n po ( n ≥ 1). (12)
µ

λ
La quantité ρ = ( ) est baptisée intensité du trafic. Si les probabilités stationnaires existent,
µ
alors elles doivent satisfaire à (12) et à (10), c'est-à-dire à
65

∑ρ n
p0 = 1 (13)
n=0

On sait que, si ρ ≥ 1, alors la série ∑ρ n
diverge, et donc (13) n'a pas de solution. Par
n=0

∑ρ
1
contre, si ρ < 1, alors n
= , et les probabilités stationnaires sont définies par les
n=0 1− ρ
relations:
p n = ρn (1 − ρ). (n = 0, 1, ...)

La condition ρ = λ/µ < 1, nécessaire pour l'existence des probabilités à long terme, peut
être intuitivement justifiée. En effet, si λ > µ, alors le taux d'arrivée dans le système est
supérieur au taux de service, et le nombre moyen de clients dans le système tend à croître
sans limite.

Si ρ < 1, on calcule encore:



LS = ∑ n p n
n=0

= ∑ n ρ n (1 −ρ)
n=0

[
= (1- ρ) ρ + 2ρ 2 + 3ρ 3 +... ]
[ ] [
= ρ + 2ρ 2 + 3ρ 3 + ... − ρ 2 + 2ρ 3 + 3ρ 4 + ... ]
= ρ + ρ + ρ + ...
2 3

ρ
= .
1− ρ

Il est intéressant de remarquer que lim− L S = + ∞ : ceci signifie que, lorsque λ est très
ρ→1

proche de µ, le nombre de clients dans le système est généralement élevé même si λ < µ. En
particulier, l'intuition selon laquelle le système est « en équilibre » si ρ = 1 est donc
trompeuse.

Puisque le taux d'arrivée est constant, λeff = λ dans un système M/M/1. La loi de Little (5)
implique alors:
1 1
WS = L S = .
λ µ(1 − ρ)
En observant que la durée moyenne de service de chaque client vaut 1/µ, la relation (7)
devient
1
WS − Wq =
µ
66

et donc
ρ
Wq = .
µ (1 − ρ )

Finalement, la loi de Little (6) permet de calculer


ρ2
L q = λ Wq = .
1− ρ

La relation (8) implique alors:


taux espéré d'utilisation du serveur = Ls - Lq = ρ .

Remarquons à nouveau que la performance d'un système M/M/1 (en terme de temps
d'attente des clients) se dégrade rapidement lorsque ρ est proche de 1 (c'est-à-dire lorsque le
serveur est très utilisé). Par exemple, si les clients arrivent au rythme de λ = 1 par heure et
1
si le temps de service moyen est de = 0,9 heure = 54 minutes, alors le serveur sera
µ
occupé 90% du temps (ρ = 0,9), la file d'attente contiendra en moyenne plus de 8 clients
(Lq = 8,1), et le temps d’attente moyen de chaque client sera donc supérieur à 8 heures (Wq
= 8,1) !!

8.4. Système M/M/c.


Dans un système M/M/c,

λn = λ (n = 0, 1, ...)

⎧n µ si n ≤ c
µn = ⎨
⎩c µ si n ≥ c

1
Donc, λeff = λ et la durée moyenne du service par client vaut . En utilisant la formule
µ
(11), on obtient pour n ≤ c :

λn λn
pn = p = p .
(1µ) (2µ) (3µ)...( nµ) 0 n ! µ n 0

De même, pour n ≥ c,
λn λn
pn = p = p .
(1µ) (2µ)...(cµ) (cµ) n− c 0 c! c n− c µ n 0
67


En exprimant que ∑p n = 1, on peut à nouveau déduire la valeur de po. Il vient
n= 0

successivement:

∞ c −1 ∞

∑ p = ∑ p +∑ p
n n n
n=0 n=0 n= c
c −1
λn ∞
λn
=∑ p +∑ p
n=0 n! µ n o n= c c! c n− c µ n o
⎡ c−1 λn λc ∞
λn− c ⎤
= ⎢∑ + ∑c n−c n−c ⎥ p o
⎣ n= 0 n! µ c! µc µ ⎦
n
n= c

⎡ c−1 λn λc ∞
⎛λ⎞ ⎤
k

= ⎢∑ + ∑ ⎜⎝ cµ ⎟⎠ ⎥ po .
⎣ n= 0 n! µ c! µc
n
k=0 ⎦

λ
Si ρ = ≥ c, alors la série infine contenue dans le dernier terme diverge et les probabilités
µ
stationnaires n'existent pas. Par contre, si ρ < c, alors on obtient:

⎡ ⎤
⎢ c−1 ρn ρc
1 ⎥
⎢ ∑ +
ρ ⎥ 0
p = 1, (14)
n= 0 n! c!
⎢ (1− ) ⎥
⎣ c ⎦

d'où la valeur de po peut être déduite. Notons que la condition ρ < c est susceptible de la
même interprétation que dans le cas c = 1, puisque cµ est le taux de service cumulé des c
serveurs.

Au prix de quelques calculs, on obtient encore:

ρc +1
Lq = p (15)
(c − 1)!(c − ρ) 2 o

et, puisque λeff = λ et le temps moyen de service de chaque client vaut 1/µ :

Lq
Wq =
λ
1
WS = Wq +
µ
LS = λ WS = Lq + ρ.
68

Exemple 3. Gulliver est directeur de l'agence de banque de Lilliputville. Les clients se


présentent à l'agence au rythme moyen de 10 clients par heure. Ils y sont servis par l'unique
employé de l'agence, auprès duquel chaque client passe 5 minutes en moyenne. Selon les
données recueillies par Gulliver, les arrivées de clients et les temps de service semblent
caractéristiques de processus de Poisson. L'agence peut donc être vue comme un système
M/M/1, avec λ = 1/6 (client par minute) et µ = 1/5 (client par minute). Il s'ensuit: ρ = 5/6 et

ρ
LS = = 5 clients
1− ρ
L
WS = S = 30 minutes .
λ

Gulliver juge que ces 30 minutes passées (en moyenne) par chaque client dans le système
sont inacceptablement longues et envisage différentes façons de remédier au problème.

Option a. Gulliver pourrait engager un second employé de qualifications similaires à celles


de l'employé actuel et laisser chaque client s'adresser au premier employé disponible.

Option b. Dans cette variante de l'option a, l'employé actuel (qui se trouve être un Géant) se
limiterait à servir les clients Géants et Gulliver engagerait un Nain pour servir les clients
Nains. Cette option paraît raisonnable dans la mesure où la clientèle de l'agence compte
50% de Géants et 50% de Nains, et où les clients pourraient y voir une personnalisation du
service offert.

Option c. Gulliver envisage également la possibilité de licencier son employé et de le


remplacer par un employé plus qualifié, deux fois plus rapide que l’employé actuel.

Comparons les trois options considérées sur base du temps moyen passé par les clients dans
l'agence.

Option a. Selon cette option, l'agence deviendrait un système M/M/2, avec λ = 1/6, µ = 1/5
et ρ = 5/6. En utilisant la relation (14), on obtient
17
p =1
7 0
et donc po ≈ 0,4. En substituant dans (15), on en déduit que Lq ≈ 0,175, et finalement Ls ≈
1 client et Ws ≈ 6 minutes. Le dédoublement des employés entraîne donc une diminution
spectaculaire du temps moyen passé par les clients dans l'agence, par un facteur de 5
environ.
69

Option b. Selon cette option, l'agence va se comporter comme une paire de systèmes
M/M/1 indépendants. Analysons un de ces systèmes, disons celui des Géants (celui des
Nains est identique). On peut supposer que le processus d'arrivée des Géants reste
poissonnien avec λ = 1/12 et µ = 1/5. Donc, pour ce système, ρ = 5/12 et
ρ 5
LS = = ≈ 0,7 clients.
1− ρ 7
L 60
WS = S = ≈ 8,6 minutes.
λ 7
Remarquons que Ls est le nombre moyen de clients dans la section ‘Géants’: au total, il y a
10
donc en moyenne ≈ 1,4 clients (Géants ou Nains) présents dans l'agence. Chacun de ces
7
clients séjourne en moyenne 8,6 minutes dans l'agence. En terme de temps passé dans
l'agence, l'option a est donc préférable à l'option b. Il s'agit là d'un principe généralement
valide dans les systèmes à serveurs multiples: il est plus efficace de constituer une file
d'attente unique et d'orienter chaque client vers le premier serveur disponible que de
constituer des files distinctes pour chaque serveur.

Option c. On retrouve ici un seul système M/M/1, comme dans la situation initiale, mais à
présent λ = 1/6 et µ = 2/5, soit ρ = 5/12. On calcule:
ρ 5
LS = = ≈ 0,7 clients.
1− ρ 7
L 30
WS = S = ≈ 4,3 minutes.
λ 7
Cette dernière option est donc la meilleure des trois.
La supériorité de l'option c sur l'option a peut être justifiée intuitivement. En effet, les taux
de service dans ces deux options sont toujours égaux sauf lorsqu'il y a exactement un client
présent dans le système; dans ce dernier cas (qui se présente assez souvent − calculez p1
pour vous en persuader), l'option c est plus efficace.
Par contre, l'amplitude du gain de performance réalisé par l'option c, relativement à la
situation intiale, pose un plus grand défi à l'intuition: comment une diminution du temps de
service moyen par un facteur de 2 peut-elle entraîner une diminution du temps de séjour
des clients par un facteur de 7 ?? Cette conclusion surprenante souligne la nécessité
d'utiliser des modèles mathématiques précis pour l'analyse des systèmes stochastiques: trop
souvent, le sens commun s’y révèle en effet mauvais juge !
70

Références.

W. Feller, An Introduction to Probability Theory and its Applications, Vol. 1, Wiley &
Sons, 1950.
W. Feller, An Introduction to Probability Theory and its Applications, Vol. 2, Wiley &
Sons, 1966.
J.A. Fitzimmons and R.S. Sullivan, Service Operations Management, McGraw-Hill, 1982.
D.P. Heyman and M.J. Sobel, Stochastic Models in Operations Research, Vol. 1, McGraw
Hill, 1982.
S.M. Ross, Introduction to Probability Models, Academic Press, 1989.
H.A. Taha, Operations Research: An Introduction (5ème éd.), McMillan Publishing
Company, 1992.