Beruflich Dokumente
Kultur Dokumente
Avant-propos ....................................................................................
Serge FDIDA et Grard HEBUTERNE
Chapitre 1. Introduction : la modlisation et les outils ................
Serge FDTDA et Grard HEBUTERNE
1.1. Le rle de la modlisation ..........................................................
1.1.1. Le processus de modlisation ..................................................
1.1.2. La modlisation quantitative ...................................................
1.1.3. La modlisation qualitative .....................................................
1.2. Mthodologie pour l'valuation des systmes informatiques .....
1.2.1. L'outil de la file d'attente du point de vue de la modlisation...
1.2.1.1. La modlisation d'une ressource...........................................
1.2.1.2. Le comportement d'un serveur..............................................
1.2.1.3. Ressource multiple ...............................................................
1.2.1.4. Station possdant un nombre infini de serveurs ...................
1.2.1.5. Ordonnancement (scheduling) de la file d'attente ................
1.2.1.6. Cheminement des clients : la ralisation de l'activit ....
1.2.2. Le rle de l'valuation de performance ...................................
1.2.3. La mesure ................................................................................
1.2.3.1. L'instrumentation .................................................................
1.2.3.2. La caractrisation de la charge .............................................
1.2.4. L'analyse oprationnelle...........................................................
1.2.5. La modlisation analytique .....................................................
1.2.5.1. La file lmentaire ................................................................
1.2.5.2. Rseau de files d'attente .......................................................
1.2.5.3. Mthodes approximatives.....................................................
1.2.6. La simulation ...........................................................................
1.2.6.1. La simulation par trace (trace driven) ................................
1.2.6.2. La simulation d'vnements discrets (discrete event) ....
1.3. Conclusion ................................................................................
1.4. Commentaires bibliographiques................................................
1.5. Bibliographie..............................................................................
Chapitre 2. Les mthodes markoviennes, la thorie des files simples . . . .
Bruno BAYNAT et Yves DALLERY
2.1. Loi exponentielle et processus de Poisson.................................
2.1.1. La loi exponentielle.................................................................
2.1.2. Le processus de Poisson .........................................................
2.2. Les chanes de Markov temps continu (CMTC) ....................
2.2.1. Dfinition ...............................................................................
17
21
21
22
25
25
26
26
27
28
28
28
28
29
29
33
33
34
35
40
41
43
45
47
47
47
48
49
49
51
51
51
53
56
56
58
60
61
63
68
73
73
75
77
79
81
81
82
82
84
85
85
86
87
87
88
88
89
90
90
91
92
92
93
94
94
95
95
96
96
97
97
97
98
98
98
99
99
99
100
100
100
100
101
102
102
103
103
103
103
103
103
104
104
105
105
106
106
106
106
106
108
108
108
109
109
110
110
111
111
112
120
121
122
122
123
123
124
125
126
127
129
131
131
132
133
135
139
140
140
142
142
143
143
144
146
148
150
151
152
155
156
159
160
160
163
164
165
165
165
166
169
172
177
179
181
182
184
186
189
189
190
191
191
191
193
193
194
194
195
195
197
198
199
200
201
202
204
205
205
207
207
209
209
210
210
210
212
213
213
214
215
216
217
217
218
218
219
219
219
220
220
220
221
221
221
221
221
222
222
223
228
227
228
230
231
233
233
235
235
235
237
238
239
241
244
248
249
252
254
254
259
263
Avant-propos
Cet ouvrage traite des mthodes d'analyse quantitative de systmes que l'on peut rassembler sous
le vocable de systmes informatiques et de rseaux de communication. Sont concerns ici tous les
services offerts aux utilisateurs, qui mettent en jeu le transport et le traitement d'informations, aux
caractristiques et aux contraintes varies : connexions vocales sur le rseau tlphonique fixe ou
GSM, liaisons Internet ou GPRS, transport d'informations multimdia, navigation sur le Web,
partage d'informations sur des bases de donnes, etc.
A chaque fois, il va s'agir de crer, de configurer le systme , de prvoir les ressources
ncessaires, d'en optimiser l'usage, de garantir les assurances faites au client en termes de qualit
du service offert et de vrifier le respect de ces garanties.
On imaginera aisment la diversit des tudes et des comptences mises enjeu. Cet ouvrage tente
de prsenter les principes thoriques qui fondent ces tudes, au travers de leur diversit.
En prsence d'un rseau, d'un systme informatique existant, l'analyse va devoir dlivrer des
informations sur les performances effectives du systme, en termes de temps de rponse, de taux
d'efficacit, de capacit traiter un volume donn, etc. Mais le concepteur va aussi devoir
rpondre des questions relatives l'laboration d'un systme ex nihilo, partir d'informations
sur les besoins de la communaut des utilisateurs, et sa croissance - ou plus gnralement son
volution.
Pour traduire ces rflexions en termes techniques, l'analyse quantitative va devoir affronter deux
types de problmatiques
- comment concevoir le rseau ou le systme rpondant un cahier des charges donn, comment
en prvoir l'volution harmonieuse et optimale ;
- comment dimensionner la structure de manire satisfaire les contraintes de qualit qu'elle se
donne et comment vrifier, in fine, qu'elle les satisfait.
Afin de tendre vers la ralisation de ces objectifs, il convient de s'appuyer sur des fondements
mathmatiques et des outils informatiques. En particulier, il est pratique de disposer de modles
formels du systme physique tudier afin d'en simplifier la manipulation et l'observation.
Pour chacune de ces proccupations, on peut rver construire et rsoudre des modles
mathmatiques exacts, prenant en charge la totalit des contraintes et des objectifs de qualit. En
fait, mme si des modles exacts peuvent tre envisags, dans des configurations spcifiques,
il existe nanmoins des cas qui interdiront la mise en oeuvre de tels modles, forant le
spcialiste faire appel des solutions plus empiriques .
Ces considrations ont amen scinder cet ouvrage en deux volumes, le premier consacr aux
mthodes dites exactes, le second aux mthodes approches. Chaque volume aborde chacun des
aspects de la conception et de la certification des systmes et rseaux de communications. Il n'y a
pas, dans cette classification, de jugement de valeur, l'approche exacte permettant un
traitement lgant et synthtique d'une version probablement simplifie d'un problme complexe,
tandis que l'approche heuristique permet de prendre en charge des dtails plus ralistes du
systme tudier.
Ce volume prsente les mthodes d'analyse des rseaux et systmes informatiques sous le double
aspect de l'analyse des performances et de leur optimisation.
Chapitre 1
Introduction : la modlisation et les outils
1.1. Le rle de la modlisation
Les systmes informatiques et les rseaux de tlcommunications en particulier sont d'une grande
complexit. Ds lors, il convient de disposer d'outils formels permettant de les analyser, voire de
les optimiser.
La modlisation permet de reprsenter un systme physique ou virtuel par un objet capable de
dcrire son comportement, afin d'analyser ce systme. L'tude d'un systme rel n'est pas toujours
ralisable dans un environnement oprationnel. Une faon commode d'analyser un systme
consiste reprsenter son fonctionnement d'une manire plus ou moins prcise ; pour cela, on va
s'appuyer sur des outils (descriptifs, mathmatiques ou autres) permettant d'approcher le
comportement du systme. Cette phase de substitution du systme par un modle se nomme
modlisation: le rsultat fournit un symbolisme de reprsentation et de description des oprations
(logique, temporel, qualitatif et/ou quantitatif) du systme.
Dans cet ouvrage, nous nous attachons dcrire plusieurs techniques de modlisation, chacune
tant plus ou moins adapte l'tude de certains systmes ou de certaines de leurs mtriques ou
proprits.
La modlisation prsente un objectif bien dtermin qui consiste fdrer en un seul objet les
parties du systme que l'on souhaite analyser. Dans ce contexte, la modlisation est un processus
a priori qui ne conduit que trs rarement un rsultat unique. En effet, suivant les buts
recherchs, les modles vont tendre concentrer les comportements et les paramtres permettant
de cerner au mieux le fonctionnement tudier.
Ds prsent, nous soulignons le fait que l'outil de modlisation, de par sa structure, sera plus ou
moins bien adapt dcrire tel ou tel comportement, telles ou telles proprits logiques ou
temporelles, telle ou telle modlisation qualitative ou quantitative.
La modlisation peut tre exploite aussi bien pendant les phases de conception d'un systme que
durant les phases d'exploitation oprationnelle. Par ailleurs, comme nous le verrons plus loin, la
rsolution du modle n'est pas toujours aise et peut conduire l'utilisation de mthodes exactes
ou approches. Dans ce dernier cas, la qualit du rsultat doit tre value.
1.1.1. Le processus de modlisation
Le processus de modlisation s'apparente une phase de transformation d'un systme dans un
symbolisme de reprsentation qui capture les composantes principales qui caractrisent le
comportement du systme. Suivant l'objectif recherch, ces composantes pourront tre diffrentes
dans la mesure o elles sont reprsentatives de certains aspects du fonctionnement du systme.
Ce symbolisme de reprsentation s'appuie galement sur des outils thoriques qui garantissent la
structure des objets manipuls et les oprations que l'on peut leur appliquer.
Nanmoins, la modlisation d'un systme est subjective et fait appel l'exprience et l'analyse de
l'expert dans ce domaine.
Les systmes informatiques sont de plus en plus complexes. Qu'il s'agisse des systmes
centraliss ou distribus, il est aujourd'hui difficile de dimensionner correctement de tels
systmes. Il faut en effet optimiser, la plupart du temps, une dizaine de paramtres et le bon sens
est devenu tout fait insuffisant. Une premire faon de procder est de dcomposer le problme
global en problmes plus simples correspondant des sous-systmes.
La scurit et la fiabilit peuvent galement dpendre d'une bonne valuation. Nous dcrivons
dans cet ouvrage les mthodes quantitatives qui se divisent en trois domaines principaux: la
mesure, la modlisation analytique et la simulation. Chacun de ces outils possde des avantages
et des inconvnients que nous allons dcrire. Ces outils sont aujourd'hui quelquefois regroups
dans des progiciels qui deviennent plus accessibles pour des non-spcialistes.
L'valuation de performance de systmes informatiques en utilisant des techniques de
modlisation constitue un processus que l'on peut dcomposer en plusieurs tapes successives
comme indiqu dans la figure 1.1.
concernant les lments du modle. Ainsi, certains comportements trs rpandus dans les
systmes actuels sont difficilement pris en considration par les modles de files d'attente. Notons
par ailleurs que ces mcanismes sont galement dlicats dcrire directement dans un systme de
files d'attente (alors que les rseaux de Petri se prtent trs bien leur description, car ils sont
bass sur le principe mme de la description d'interactions). Dans le cas o une solution exacte ne
peut pas tre obtenue, l'alternative est reprsente soit par des mthodes approches dont il faut
vrifier la validit, soit par la simulation qui constitue le dernier recours.
L'analyse des rsultats obtenus par l'une quelconque des mthodes cites ci-dessus constitue la
dernire phase du processus d'valuation. Le dimensionnement du systme sera obtenu en
exploitant les rsultats de mesures effectues par l'intermdiaire de scnarios et en modifiant
ventuellement certains lments du modle. Les observations de ces phases d'tude du
comportement du systme au travers du modle permettront d'identifier les facteurs sensibles
(goulots d'tranglement et paramtres cls affectant les performances). Diffrents processus
peuvent alors s'appliquer en fonction des valuations recherches. L'optimisation permettra de
trouver les paramtres d'entre du modle qui donnent les meilleures performances du systme
suivant certaines contraintes. La gestion de capacit permettra d'apprhender son comportement
en fonction de l'volution de la charge ou du traitement de nouvelles applications.
Il est clair que le processus global d'valuation que nous venons de dcrire conduit des
observations approches du comportement du systme dans la mesure o une erreur est introduite
dans chacune des phases du processus. Actuellement, il n'existe pas, notre connaissance, de
mthodologie tablie permettant de passer directement du systme au modle. L'erreur (El)
engendre dans la phase 1 est difficilement quantifiable et dpend du degr de dtail du modle.
Notons cependant que l'absence de mcanismes de description dans les rseaux de files d'attente
ne peut qu'accentuer cette erreur (ou alors, il faut passer par la description de la chane de Markov
complte du systme !). L'erreur (E2) introduite dans la phase de rsolution du modle dpend
des techniques de rsolutions utilises ; elle est nulle pour les mthodes exactes, variables pour la
simulation, faibles parfois significative pour les mthodes approches.
La description fine d'un systme permet de diminuer l'erreur (El) mais conduit un modle
complexe souvent insoluble par des techniques exactes. Si l'on exclut la simulation, seule une
mthode approche peut tre envisage avec pour consquence l'accroissement de l'erreur (E2).
Inversement, la construction d'un modle simplifi ne traduit que trs gnralement le
comportement rel du systme tudi et aura pour consquence d'accrotre (El) et de diminuer
(E2). Une difficult majeure de la modlisation des systmes rside donc dans le choix d'un
compromis permettant d'atteindre l'objectif recherch avec un cot minimal. Nanmoins, la phase
d'analyse des rsultats obtenus est souvent complexe et dlicate. Il apparat ncessaire, pour
rendre le dimensionnement oprationnel dans un environnement industriel, de donner
l'utilisateur la possibilit de franchir les trois tapes. C'est dans cette optique que les progiciels
regroupant plusieurs de ces phases jouent un rle important.
1.1.2. La modlisation quantitative
Dans un premier temps, il faut dterminer les mesures que l'on veut effectuer sur un systme
informatique, permettant de quantifier ses performances : dbit, temps de rponse, nombre moyen
de ressources occupes, taux d'utilisation de ces ressources, etc. Ces paramtres sont les
principaux critres qui seront utiliss par la suite afin d'optimiser le fonctionnement du systme
ou de prdire ses performances. Ces objectifs seront atteints en exploitant des relations
fondamentales qui oprent sur les donnes d'entre du modle et produisent des rsultats
reprsentatifs des critres de performance.
Les mthodes d'valuation quantitatives se regroupent en trois grandes catgories : les mesures,
les mthodes analytiques et la simulation. Ces diffrentes mthodes ont leurs avantages et leurs
inconvnients respectifs. Les mesures connaissent un fort regain d'intrt depuis peu, car elles
contribuent une meilleure connaissance du systme rel. Les mthodes analytiques sont
recherches dans le sens o les quations mathmatiques peuvent tre drives, donc optimises.
De plus, les calculs des valeurs des paramtres sont souvent rapides. L'inconvnient majeur
rside dans le nombre restreint de modles qui possdent une solution mathmatique exacte. Ces
modles analytiques proviennent de la thorie des files d'attente. Les modles les plus simples
possdent des solutions exactes sous des hypothses strictes. Des modles plus complexes
possdent des solutions approches reposant sur des mthodes heuristiques. Enfin, le cot de
calcul de la solution constitue un lment essentiel dans l'exploitation et la sparation des
techniques possibles.
La simulation permet d'entrer beaucoup plus dans les dtails, de dcrire plus prcisment le
modle avec ses contraintes. La solution est approximative, mais on peut connatre avec une
certaine confiance (90 % ou 95 % en gnral) un intervalle dans lequel se situe le rsultat exact.
Pour obtenir un intervalle de confiance suffisamment petit, il faut un grand nombre
d'chantillons, c'est--dire utiliser un calculateur pendant un temps lev. Pour chaque simulation,
on n'obtient qu'un seul point de fonctionnement du systme. Lorsque l'on veut optimiser le
systme, cela devient trs onreux.
1.1.3. La modlisation qualitative
La complexit croissante des systmes et des applications mises en rouvre ncessite l'utilisation
de mthodes efficaces capables de contrler le comportement logique des oprations mises en
jeu. En effet, il est souvent essentiel de prouver qu'un systme fonctionne bien suivant certaines
proprits ou encore qu'il est conforme sa spcification. La typologie de rsultats observs est
complmentaire de l'analyse quantitative. Ainsi, des mthodes formelles de validation ont fait
leur apparition. En particulier, les rseaux de Petri, introduits par C.A. Petri en 1962, reprsentent
un concept largement utilis dans ce sens. Ils ont t repris en 1970 par A. Holt aux Etats-Unis
puis ont suscit un courant croissant d'intrt. Ils s'appuient sur de nombreuses mthodes
d'analyse de leurs proprits telles que la thorie des graphes ou l'algbre linaire.
Conceptuellement, un rseau de Petri est constitu de places, de transitions et d'arcs reliant les
places et transitions pour former un graphe biparti (chaque place n'est lie qu' des transitions et
chaque transition n'est lie qu' des places). Les places dfinissent gnralement les conditions de
ressources du systme ; les transitions du rseau symbolisent les informations de contrle ou les
oprations ralises. Les arcs dterminent l'excution des oprations et caractrisent la structure
du modle. Les places peuvent tre marques de manire dfinir l'tat du rseau (on dfinit
gnralement seulement l'tat initial) ; l'volution de ce marquage est observable par
l'intermdiaire de rgles de franchissement des transitions. La construction du graphe de tous les
marquages accessibles depuis le marquage initial reprsente la base de l'analyse du comportement
du modle tudi. Plusieurs proprits sont alors dcidables - telles que : le rseau est born,
vivant, etc. - qui permettent de vrifier le comportement logique du systme et de dtecter des
anomalies de fonctionnement.
De nombreuses extensions des rseaux de Petri ont t proposes telles que les rseaux de Petri
colors, prdicats, temporiss ou les rseaux de Petri stochastiques qui visent associer des
possibilits de modlisation quantitative et qualitative. Les rseaux de Petri stochastiques sont des
extensions des rseaux de Petri qui permettent d'associer des dlais alatoires au franchissement
des transitions. Ces dlais sont analogues aux temps de service des files d'attente et ils permettent
d'tendre l'utilisation des rseaux de Petri l'valuation des performances. De plus, les rseaux de
Petri sont trs utiles pour dterminer le comportement des systmes qui contiennent des
mcanismes de synchronisation et de contrle.
Cet ouvrage est dcompos en deux volumes. Le premier adresse les mthodes exactes de
rsolution des rseaux de tlcommunications: les rseaux de files d'attente, les rseaux de Petri
et les mthodes d'optimisation bases sur la thorie des graphes et la programmation linaire. Le
second volume aborde les mthodes heuristiques de rsolution de problmes rencontrs dans
l'analyse des rseaux de tlcommunications : les mthodes approches de rsolutions de
systmes base de files d'attente, la simulation et les mthodes avances en optimisation.
1.2. Mthodologie pour l'valuation des systmes informatiques
1.2.1. L'outil de la file d'attente du point de vue de la modlisation
Un objet de type file d'attente est apte modliser les phnomnes de consommation de
ressource. Le terme ressource dsigne ici toute composante physique, logique ou humaine qui
peut tre ncessaire la ralisation d'une activit. Une activit est dfinie par le processus de
cheminement d'une entit appele client et qui demande, tout au long de son cycle de vie,
l'accs une succession de ressources indispensables pour sa ralisation. La figure 1.2 symbolise
ce processus.
- PRIOR (priorit),
- PREEMPT (premption du client en service),
- PS (processor sharing) ou PP (processeur partag),
- RANDOM (alatoire).
D'autres techniques ont t proposes dans le cadre spcifique des systmes de
tlcommunications comme
- WFQ (weighted fair queueing),
- CBQ (class based queueing).
1.2.1.6. Cheminement des clients : la ralisation de l'activit
Une activit, telle que nous l'avons dfinie, est ralise par le cheminement d'un client d'une
station une autre, ce client demandant un certain service chaque serveur. Le cheminement d'un
client peut tre :
- statique : le choix de la station suivante est fig ;
- dynamique: le choix de la station suivante est dfini de manire probabiliste et/ou
conditionnelle.
Dans un premier temps, une approche de modlisation lmentaire consiste identifier
l'ensemble des ressources (actives et/ou passives) ncessaires la ralisation des activits du
systme. La notion de ressource dpendra troitement du niveau de dtails requis. Cette phase
consiste dfinir les activits des clients (cheminement global dans le rseau de ressources,
services demands chaque station). Enfin, la troisime tape demande la caractrisation de
chacune des stations et sa modlisation par une file d'attente compltement dfinie.
Les ressources sont identifiables par le fait qu'un client est amen soit attendre, soit tre
retard sans attendre, soit excuter une action.
1.2.2. Le rle de l'valuation de performance
L'optimisation conomique des systmes et rseaux informatiques actuels ncessite la mise en
oeuvre et l'exploitation d'outils performants pour mieux apprhender leur comportement et
optimiser leurs performances. Depuis plusieurs annes, l'valuation des performances des
systmes s'appuie largement sur la thorie des files d'attente et la simulation. En effet, les
phnomnes d'attente surviennent naturellement dans la plupart des environnements rencontrs
dans la vie courante et bien sr dans les systmes et rseaux informatiques. Choisissons par
exemple le cas d'un routeur de rseau de communication dont les fonctions principales sont
l'acheminement des paquets qu'il reoit vers ses lignes de sortie ; la figure 1.3 explicite ce
systme dans le cas d'une ligne de sortie unique.
Une approche primaire de modlisation d'un tel systme est fournie par une file d'attente simple
comme cela est dcrit par la figure 1.3.
Nous supposons dans cet exemple qu'un client se prsentant l'entre de la file voit le systme
dans l'tat stationnaire (tat d'quilibre que nous dfinirons dans la suite).
Nous obtenons de manire vidente les relations suivantes :
T=W+S
c'est--dire que le temps moyen de rponse est la somme du temps moyen pass dans la file
attendre que le serveur soit libr (W) et du temps moyen de service (S). De mme, le temps
d'attente d'un client est gal au temps mis par tous les clients le prcdant dans la file pour tre
servis. En moyenne, cette grandeur est obtenue par l'expression suivante :
W = N.S
Le temps de rponse est donc
T = W + S = N.S + S = (N + 1).S
soit encore
T = (N + 1) (1/)
Les grandeurs , T, W et N fourniront des mtriques d'valuation des performances du systme
tudi. Nanmoins, un certain nombre de prcisions supplmentaires sont ncessaires pour le
calcul de ces critres de performance. En particulier :
- le processus d'arrive des paquets (des clients au serveur) ;
- la distribution de la taille des paquets (la distribution des temps de service des clients dans le
serveur) ;
- l'ordonnancement de la file (scheduling) qui permettra de choisir le prochain paquet
transmettre sur la ligne (client servir).
Une approche plus prcise du comportement de la file d'attente pourra tre obtenue en calculant
directement la distribution marginale de la file, c'est--dire la probabilit que la file contienne n
clients, n = 0,1, ... (dans l'hypothse d'un nombre infini de buffers).
L'objectif du dimensionnement d'un systme est multiple :
- mieux comprendre son fonctionnement,
- cerner et combattre les goulots d'tranglement,
- optimiser les ressources du systme,
- optimiser le cot du systme,
- tester de nouvelles configurations et/ou applications, - etc.
Nous prsentons dans les paragraphes suivants les principes des grandes mthodes quantitatives.
EXEMPLE.- L'exemple simplifi du modle d'un routeur, tel qu'il a t trait dans ce chapitre,
donne les rsultats suivants (utilisation d'une file appele M/M/1 - voir notation de Kendall page
42 - , 0,1 < < 0,9. = 1, N = nombre moyen de clients dans le commutateur) illustrs dans la
figure 1.5
=0.1
= 0,2
= 0,3
= 0;4
= 0,5
= 0,6
= 0,7
= 0,8
= 0,9
: taux d'arrive
N = 0,11
N = 0,25
N = 0,428
N = 0,666
N=1
N = 1,5
N = 2,333
N=4
N=9
: dure de la mesure
X (n)
nmax
A partir de ces mesures lmentaires, nous pouvons dgager les critres de performances suivants
: dbit du systme ( la sortie)
N : nombre moyen de requtes dans le systme
T : temps moyen de rponse du systme
qui sont calculs par les relations
i : dbit de la station i
Ui : taux d'occupation de la station i, c'est--dire proportion du temps pendant lequel la station i
n'est pas vide
Si : dure moyenne de traitement d'une requte (service) dans le sous-systme i
ei : nombre moyen de visites au sous-systme i par travail
Ti : temps moyen de rponse du sous-systme i
Ni : nombre moyen de clients dans le sous-systme i
Nous retrouvons ici l'expression de la relation de Little locale (applique chaque soussystme). Nous allons par ailleurs vrifier sa validit au niveau global en calculant les grandeurs:
N : nombre moyen de travaux dans le systme
T : temps moyen de rponse dans le systme
Sous l'hypothse qu'un travail ne gnre qu'une unique requte, nous avons
Remarquons enfin que ces relations peuvent tre tendues des populations distinctes de travaux.
Nous prsentons dans la suite l'tude de la saturation d'un systme, c'est--dire l'tude de son
comportement forte charge. La caractrisation de la charge d'un systme est un phnomne
complexe que nous simplifierons par deux approches (voir figure 1.8)
- la modlisation par l'intermdiaire d'un systme ouvert soumis une charge moyenne ;
- la modlisation par le biais d'un systme ferm possdant une population fixe de clients (N).
En ralit, nous remarquerons des dgradations importantes des performances du systme avant
cette valeur limite thorique. De plus, l'hypothse effectue sur l'invariance des produits (eiSi)
constitue une hypothse forte qui doit tre leve pour obtenir une modlisation plus fine du
comportement du systme.
L'analyse oprationnelle permet d'introduire simplement les critres de performance principaux
utiliss dans la modlisation des systmes informatiques sans hypothse particulire sur le
comportement des requtes ou celui du systme. Elle permet de dgager des relations
fondamentales (Little, Chang-Lavenberg) l'quilibre (A voisin de D) qui seront vrifies dans le
contexte de la thorie des files d'attente.
Nanmoins, des limitations certaines apparaissent ds que l'on souhaite reprsenter des systmes
pour lesquels une modlisation plus fine des interactions entre arrives et services doit tre
ralise. Il apparat alors indispensable d'introduire des hypothses de nature statistique sur le
comportement des arrives (distribution des arrives), des services (distribution des temps de
service) et galement sur leurs interactions. La thorie des files d'attente fournira des extensions
qui s'avreront suffisantes dans certains cas. Dans d'autres cas, la nature du systme tudi et son
comportement ne permettront pas une modlisation analytique et seule la simulation pourra tre
utilise.
1.2.5. La modlisation analytique
Diffrentes mthodes de modlisation de systmes informatiques peuvent tre utilises, chacune
d'elles tant mieux adapte certains aspects d'analyse des performances.
Les rseaux de Petri sont principalement utiliss pour reprsenter le comportement logique d'un
systme sans faire intervenir de considrations temporelles. Ils fournissent un modle graphique
de description des oprations d'une machine informatique et sont particulirement adapts pour
dcrire les phnomnes de concurrence, de conflits et de synchronisations, etc. On obtient,
l'aide de ce type de modle, une valuation qualitative d'un systme (preuve de protocole, etc.).
Des travaux ont t mens pour inclure le facteur temps dans les rseaux de Petri et donc pour
permettre d'effectuer des valuations de performance en utilisant ces rseaux de Petri
stochastiques. Un chapitre de cet ouvrage est consacr une introduction cette technique trs
rpandue.
Le principal inconvnient de ces modles provient d'un accroissement considrable du rseau
lorsque le systme reprsenter est important (bien qu'il existe des mthodes de rduction).
Une approche diffrente d'analyse est donne par l'utilisation de chanes de Markov. Une chane
de Markov dcrit l'volution d'un systme partir de ses tats. Cette mthode analyse le
comportement d'un systme d'aprs les spcifications suivantes qui rgissent le modle
- la quantit d'informations utilises pour dcrire les tats de la chane ;
- le calcul des taux de transitions entre tats.
Le choix de la dfinition des tats de la chane est trs important, car il intervient dans la
complexit de rsolution du modle. Comme pour les rseaux de Petri, le nombre d'tats de la
chane de Markov restreint l'utilisation de cette technique, dans la plupart des cas, de petits
systmes.
Une alternative de modlisation est fournie par les rseaux de files d'attente. Cette mthode est
certainement la plus utilise pour estimer les performances d'un systme informatique. De
nombreux outils permettant une rsolution exacte ou approche ont t publis dans la littrature.
De plus, l'utilisateur dispose de langages spcialiss permettant la description et l'tude
quantitative de modles ayant la structure gnrale de rseaux de files d'attente. Cependant, la
classe des rseaux de files d'attente que l'on sait rsoudre est rduite et ne permet pas de prendre
en considration certains comportements trs rpandus dans les rseaux informatiques. On peut
citer, par exemple, la possession simultane de plusieurs ressources, le blocage d'un client, la
concurrence pour l'accs des ressources partages ou des comportements de dpendance entre
les clients (synchronisation, gnration de clients, etc.). Ignorer ces comportements restreint les
domaines d'application des rseaux de files d'attente ou conduit des erreurs dans l'valuation de
leur performance.
Nous prsentons dans la suite une brve introduction aux techniques et outils utiliss pour la
modlisation de systmes informatiques par rseaux de files d'attente. Ceux-ci seront repris en
dtail et dvelopps dans d'autres chapitres de cet ouvrage.
Les processus stochastiques permettent la modlisation de situations concrtes. Ils correspondent
des outils mathmatiques largement utiliss pour reprsenter des comportements naturels ou des
systmes (files d'attente, physique, etc.).
1.2.5.1. La file lmentaire
La reprsentation lmentaire d'un rseau de file d'attente est donne par une file un seul
serveur. Cette file lmentaire est caractrise par
- la suite 0 t1 t2 tj des instants d'arrive des clients dans la file. Notons I j = tj+1 tj,
j 1 les dures sparant ces entres successives ;
- la suite Sj, S2, Sj, ... des temps de service des clients 1, 2, , j, ;
- la discipline de service qui donne l'ordre dans lequel les clients, arrivant dans la file, sont servis
(PAPS, DAPS, etc.).
Si la discipline de service est premier arriv premier servi (PAPS), le temps d'attente wj du jime client est la dure de temps qui spare son ai -rive dans la file de l'instant tj de son dbut de
service. Pour une file serveur unique, on a
Le temps de rsidence ou temps de rponse du j-ime client correspond au temps de sjour total
dans le systme, c'est--dire (wj + SJ). La rsolution analytique de la file donne, l'tat
stationnaire, la probabilit p(n) que la file contienne n clients, n 0
Une file d'attente est gnralement reprsente suivant la notation de Kendall dfinie par
A/S/C(DS/K/L) ou A/S/C/K/L/(DS) ou A/S/C/K/L/DS
qui dcrit une file par l'intermdiaire des six composantes suivantes :
A : processus d'entre
S: processus de sortie
C : nombre de serveurs
K : capacit maximale de la file
L : population des usagers
DS : discipline de service
Les symboles suivants sont utiliss pour dfinir les principaux processus d'entre ou de service
M : loi exponentielle
D : loi constante
Ek : loi Erlang-k
Hk : loi hyperexponentielle d'ordre k
Il faut choisir le dcoupage d'une manire telle que chaque sous-systme possde une solution
connue. Pour obtenir les quations des sous-systmes, on pourra faire appel une mthode exacte
ou une mthode approximative. La rsolution de l'ensemble de ces quations conduit la
solution numrique du systme global.
1.2.6. La simulation
La simulation reprsente un outil trs utile pour l'valuation des performances des ordinateurs. L
o les techniques analytiques ont des limitations dans la gamme de comportements qu'elles
peuvent modliser, la simulation peut fournir des modles un niveau de dtail arbitraire.
Cela permet de modliser des situations trs complexes que l'on ne peut rsoudre analytiquement.
De plus, le comportement transitoire des systmes peut tre valu alors que les modles
analytiques sont gnralement utiliss pour tudier le comportement stationnaire d'un systme.
Parmi les diffrentes techniques, on peut discerner deux types distincts de simulation : la
simulation par trace et la simulation vnements discrets.
Le graphique devrait aussi jouer un rle important dans la simulation. Il peut tre utilis pour
faciliter l'injection des donnes. L'analyse des donnes, aussi bien en gnral que pour la
simulation, emploiera des techniques graphiques qui commencent
Voir le jour. Des animations graphiques en temps rel de simulations illustrent galement des
dveloppements rcents. De tels graphiques en temps rel constituent une opportunit attirante
pour le contrle interactif et l'analyse de simulation.
1.4. Commentaires bibliographiques
Dans ce chapitre, nous avons propos une introduction aux files d'attente par l'intermdiaire de
quelques thormes fondamentaux : les rseaux de Jackson [JAC 63] et les rseaux BCMP [BAS
75]. Le thorme BCMP a largi le champ d'application des rseaux de files d'attente. Ce
thorme s'applique des files possdant la proprit.M M [CHA 72, MUN 72] : si les entres
dans une station de service sont exponentielles, le processus de sortie est poissonnien et
indpendant du processus d'entre.
Les techniques approches introduites brivement seront exposes dans la suite. Un essai de
classification de ces diffrentes techniques est donn dans l'ouvrage de Gelenbe et Pujolle [GEL
82]. La mthode par valeur moyenne (MVA : mean value analysis) a t dveloppe par Reiser
[REI 791 et est base sur le thorme de Sevcik-Mlitrani [SEV 79]. La technique de
dcomposabilit introduite par Courtois est prsente dans [COU 75, COU 77]. Enfin, larticle
publi par Labetoulle et Pujolle [LAB 80] prsente la technique d'isolation. De mme, les rseaux
de Petri sont dcrits en dtail sans le chapitre 4 de cet ouvrage; ils ont t introduits par Petri
[PETR 66] et dvelopps par Peterson [PET 77] et par d'autres depuis. Une prsentation des
rseaux de Petri stochastiques pourra tre trouve dans le chapitre 4 du prsent ouvrage.
La thorie des files d'attente a pris date dans les annes 1920. Plusieurs livres J'origines diverses
prsentent la thorie des files d'attente avec un clairage particulier pour les systmes
informatiques. Le livre le plus cit est certainement le clbre ouvrage de Kleinrock dont le
volume 1 est consacr la thorie des files dattente [KLE 75] et le volume 2 aux applications
pour la modlisation des systmes informatiques [KLE 76]. D'autres ouvrages plus rcents ont t
publis depuis. De mme, quelques ouvrages sont consacrs la modlisation quantitative. Nous
citerons par exemple celui de Brams [BRA 83] qui dcrit les rseaux de Petri.
Louvrage de Raj Jain [JAI 91] prsente un panorama assez complet des techniques dvaluation
de performance. Enfin, l'ouvrage de Fiche et Hbuterne [FIC 03] illustre toutes ces techniques, en
prsentant leur mise en uvre effective sur des exemples concrets.
1.5. Bibliographie
BAS 75] BASKETT F., CHANDY K.M., MUNTZ R.R., PALACTOS F.G., Open, closed, and
mixed networks of queues with different classes of customers . JACM, vol. 22, p. 248-260,
1975.
[BRA 83] BRAMS G.W., Rseaux de Petri. Tome 1 : thorie et analyse, Masson, Paris, 1983.
[CHA 72] CHANDY K.M., The analysis and solutions for general queueing networks , dans
Proceedings of the Sixth Animal Confrence on Information Sciences and Systems, Princeton
University, 1972.
[COU 75] COURTOIS P.J., Decomposability, instabilities, and saturation in multiprogramming
systems , CACM, vol. 18, n 7, p. 371-377, 1975.
[COU 77] COURTOIS P.J., Decomposability Queueing and Computer Systems Applications,
ACM Monograph Series, Academic Press, New York, 1977.
[FER 78] FERRARI D., Computer Systems Preface Evaluation, Prentice Hall, Englewood Cliffs,
New Jersey, 1978.
[FIC 03] FICHE G., HBUTERNE G. (dir.), Trafic et performances des rseaux de
tlcommunications, Herms Science Publications, Trait IC2, Paris, 2003.
[GEL 82] GELENBE E., PUJOLLE G., Introduction aux rseaux de files d'attente, Eyrolles,
Paris, 1982.
[JAC 63] JACKSON J.R., Jobshop-like queueing systems , Management Science, vol. 10, p.
131-142, 1963.
[JAI91] JAIN R., The Art of Computer Systems Performance Analysis: Techniques for
Exprimental Design, Measurement, Simulation, and Modeling, Wiley-Interscience, New York,
avril 1991.
[KLE 75] KLEINROCK L., Queueing Systems. Volume 1: Theory, John Wiley and Sons, New
York, 1975.
[KLE76] KLEINROCK L., Queueing Systems. Volume 2: Computer Applications, John Wiley
and Sons, New York, 1976.
[LAB 80] LABETOULLE J., PUJOLLE G., Network of queues , IEEE Transaction on
Software Engineering, vol. 6, n 4, p. 373-381, 1980.
[LAZ 84] LAZOWSKA E., ZAHORJAN J., GRAHAM G., SEVCIK K., Quantitative System
Preface: Computer System Analysis Using Queueing Network Models, Prentice Hall, Englewood
Cliffs, New Jersey, 1984.
[MUN 72] MUNTZ R.R., Poisson Departure Process and Queueing Networks, IBM Research
Report n RC 4145, 1972.
[PET 77] PETERSON J.L., Petri nets , ACM Computer Surveys, vol. 9, septembre 1977.
[PETR 66] PETRI C.A., Communication with Automata, Thse de doctorat et rapport technique
n RADC-TR-65-377, New York, janvier 1966.
[REI 79] REISER M., Mean Value Analysis of Queueing Networks: A New Look at an Old
Problem, IBM Research Report n RC 7228, 1979.
[SEV 79] SEVCIK K., MITRANI I., The distribution of queueing network states at input and
output instants , dans Proceedings of the International Symposium of Preface of Computer
Systems, Vienne, Autriche, 1979.
Chapitre 2
Les mthodes markoviennes, la thorie des files simples
Dans ce chapitre, nous considrons tout d'abord un exemple de processus stochastiques temps
continu et espace d'tat discret, connu sous le nom de chanes de Markov temps continu. Ce
modle mathmatique fournit un outil simple de modlisation et d'analyse d'une classe
particulire de systmes vnements discrets. Par ailleurs, l'analyse des chanes de Markov est
un prliminaire ncessaire l'tude des systmes de files d'attente. Nous analysons alors
successivement les files M/M/l, M/M/l/K, M/M/C et M/M/. Nous gnraliserons dans un
premier temps ces diffrentes tudes par celle d'un processus de naissance et de mort, puis en
proposant une dmarche systmatique permettant analyse d'une file gnrale G/G/1 par des
techniques d'identification des lois de type phase .
2.1. Loi exponentielle et processus de Poisson
2.1.1. La loi exponentielle
La loi exponentielle est sans aucun doute, la variable alatoire la plus utilise dans la thorie des
files d'attente. Elle est, par ailleurs, un prambule ncessaire l'analyse des chanes de Markov.
Nous donnons ici les dfinitions et proprits principales de la loi exponentielle. Toutes les
preuves des proprits sont ici omises et peuvent tre trouves dans [BAY 00].
DEFINTTION 2.1.- La loi exponentielle de paramtre , est une variable alatoire continue T
valeurs positives dfinie par sa fonction densit de probabilit :
La probabilit, sachant que le phnomne que mesure T ne s'est toujours pas -2roduit au temps
t0, pour qu'il se produise avant t units de temps supplmentaires, est gale la probabilit qu'il se
soit produit pendant les t premiers instants du phnomne.
La proprit sans mmoire est la proprit essentielle de la loi exponentielle qui fait que cette
dernire est trs largement utilise.
Interprtation de la proprit sans mmoire : si T est une variable alatoire exponentielle, le
pass de cette variable ne permet en aucun cas de prdire l'avenir. Considrons l'exemple suivant
pour lequel le temps entre deux passages conscutifs d'un bus un arrt est distribu de faon
exponentielle. Supposons que l'origine des temps est choisie de telle faon qu'un bus vient juste
de quitter l'arrt au temps t = 0. Le fait de savoir qu'on a dj attendu un temps t 0 et que le
prochain bus n'est toujours pas arriv ne nous permet pas d'affirmer qu'il a plus de chances
d'arriver rapidement. En effet, la probabilit pour que le bus arrive avant t units de temps
supplmentaires, sachant qu'il n'est pas arriv au temps t 0 : P[T t + t0 | T > t0] est gale la
probabilit pour que le bus soit arriv pendant les t premires minutes P[T t]. Et donc, si les bus
passent en moyenne toutes les 15 mn et qu'on en attend un depuis 1 heure, tout ce que l'on peut
dire c'est qu'il n'arrivera en moyenne que dans 15 mn... Pas trs raliste pour des arrives de bus !
On montre facilement que la loi exponentielle est la seule variable alatoire continue possder
la proprit sans mmoire [BAY 00].
2.1.2. Le processus de Poisson
Le processus de Poisson est, au mme titre que la loi exponentielle pour les variables alatoires,
le processus stochastique le plus utilis dans la thorie des files d'attente. Il modlisera
gnralement le processus d'arrive des clients dans un systme. On parlera alors d' arrives
poissoniennes (voir figure 2.2). Plus de dtails sur le processus de Poisson et sur les processus
stochastiques en gnral peuvent tre trouvs dans [BAY 00, ROS 93].
pour
PROPRIETE 2.6. - Les variables alatoires {Tn}n = 12 sont des variables alatoires exponentielles
indpendantes de paramtre a, (donc identiquement distribues).
La deuxime proprit essentielle du processus de Poisson relie donc le processus d'arrive
(poissonien) et les variables alatoires mesurant le temps d'interarrive (exponentielle).
Arrives poissonienmes
Interarrives exponentielles
Les deux proprits suivantes concernent finalement la dcomposition probabiliste d'un processus
de Poisson et la superposition de plusieurs processus de Poisson indpendants.
PROPRIETE 2.7.- Soit un processus de Poisson de taux a, qui se dcompose de faon
probabiliste en N processus, chaque nouvelle arrive participant au processus i avec une
probabilit pi. Chaque processus i, i = 1, ..., N, est un processus de Poisson de taux pi.
A partir de la dfinition d'une CMTC homogne, on peut dmontrer la proprit suivante [BAY
Pour passer de i j entre t et t + dt, il faut d'une part quitter l'tat i entre t et t + dt et, d'autre part,
choisir, en sortant, l'tat j comme destination. Or, le temps pass dans l'tat i est distribu
exponentiellement. Grce la proprit sans mmoire de la loi exponentielle (voir proprit
2.3), on peut affirmer que la probabilit de sortir de l'tat i avant t + dt sachant que l'on est encore
en i l'instant t est exactement la probabilit d'en sortir en un temps dt. Cette probabilit est
donne par :
Par dfinition, la probabilit de se rendre dans l'tat j en quittant l'tat i est pif. Par consquent:
La probabilit de se trouver en j l'instant t + dt sachant qu'on tait en i l'instant t est donc gale
ij dt ( des termes ngligeables prs), quel que soit le temps t considr. On en dduit que le
temps de transition entre l'tat i et l'tat j est distribu selon une loi exponentielle de taux ij = i
pij. Cela nous amne la deuxime caractrisation des CMTC, strictement quivalente la
premire et reprsente figure 2.9.
a) Le temps pass dans l'tat i est exponentiel de taux i. Lorsque l'on quitte l'tat i, on se rend en
j (resp. en k) avec une probabilit pij (resp. Pik).
b) La transition de l'tat i vers l'tat j (resp. tat k) est exponentielle de taux ij (resp. ik).
2.2.3. Analyse
On associe une CMTC une matrice Q, dite gnrateur infinitsimal, dont l'lment qij est le taux
de transition ij de l'tat i vers l'tat j, i j [STE 94]. Les lments diagonaux q ij sont choisis, par
Rappelons qu'on se place toujours dans le cas particulier o p ii = 0. On traitera le cas des
rebouclages directs la fin de cette section.
On a donc
Cette relation exprime le fait que, pour se trouver dans l'tat j l'instant t + dt, soit on y tait dj
l'instant t et on n'en est pas sorti, soit on se trouvait dans un tat i diffrent de j et, pendant le
temps dt, on a effectu une transition de i vers j. On a dj montr que la probabilit P[X(t + dt) =
j 1 X(t) = i] de transiter d'un tat i vers un tat j en un temps dt est gale ij dt + o(dt). La
probabilit P[X(t + dt) = j 1 X(t) =j] de ne pas bouger de j entre t et t + dt s'exprime quant elle
de la faon suivante :
On a donc
qui, en faisant tendre dt vers 0 et en remettant l'quation sous forme matricielle, donne
avec :
DFINITION 2.6.- La CMTD incluse dans la CMTC de gnrateur infinitsimal Q, dont les
termes qij i j sont donns par qij = i pij, est une chane de Markov temps discret dont les
probabilits de transition sont les pij.
On utilise alors des rsultats classiques sur les CMTD (prsents en dtail dans [BAY 00]).
n
DEFINITION 2.7.- Soit f jj la probabilit que le premier retour en j ait lieu n tapes aprs l'avoir
quitt.
Ces quantits peuvent s'obtenir facilement partir des probabilits de transition de la CMTD
incluse [BAY 00]. Elles permettent de faire une classification des tats d'une CMTD
DEFINITION 2.8.- Un tat j d'une CMTD est dit :
- transitoire si fjj < 1 ;
- rcurrent si fjj = 1 ; de plus, il est :
- rcurrent nul si le temps moyen de retour est infini: Mj = ;
- rcurrent non nul si le temps moyen de retour est fini : Mj < .
PROPRIETE 2.10.- Tous les tats d'une CMTD irrductible sont de mme nature :
- soit tous transitoires ,
- soit tous rcurrents nuls ;
- soit tous rcurrents non nuls.
Si, de plus, E est fini, tous les tats sont rcurrents non nuls.
On peut alors faire le lien entre CMTC et CMTD incluse l'aide des deux proprits suivantes.
PROPRIETE 2.11.- Une CMTC est irrductible ssi la CMTD incluse est irrductible.
- i CMTC est transitoire i CMTD incluse est transitoire.
- i CMTC est rcurrent i CMTD incluse est rcurrent.
PROPRIETE 2.12.- Tous les tats d'une CMTC irrductible sont de mme nature
- soit tous transitoires ;
- soit tous rcurrents nuls ;
- soit tous rcurrents non nuls.
Si, de plus, E est fini, tous les tats sont rcurrents non nuls.
Comme dans le cas discret, si tous les tats sont rcurrents non nuls, on dit que la CMTC atteint
un tat stationnaire.
REMARQUE 2.1.- La premire ligne s'crit sous forme matricielle : Q = 0, ce qui correspond
bien au passage la limite sur l'quation diffrentielle liant les probabilits transitoires
d dt
t Q . En effet, dire que (t) tend vers lorsque t tend vers l'infini, c'est dire que
dt
d dt
tend vers 0.
dt
Cette quation, dite quation d'tat, ne fait rien d'autre que traduire l'quilibre entre le flux
entrant dans l'tat j et le flux sortant de l'tat j :
Pour tout tat j, flux sortant de l'tat j = flux entrant dans l'tat j
2.2.3.2.2. Cas de rebouclages directs
Considrons rapidement le cas o pii 0. A l'issue d'un temps exponentiel de taux p i, on peut
revenir dans l'tat i avec une certaine probabilit pii
La proprit suivante nous permet de caractriser la distribution de la loi mesurant le temps pass
dans l'tat i.
PROPRIETE 2.14.- Le temps de sjour dans l'tat i est distribu selon une loi exponentielle de
taux i i 1 pii .
D'aprs cette proprit, une chane avec rebouclage (pii 0) est donc quivalente une chane
sans rebouclage dans laquelle les taux 'i sont donns par i i 1 pii .. Les probabilits pij
s'obtiennent alors partir des probabilits pij par renormalisation :
Les taux de transition entre tats, les ij , sont alors donns par :
qui exprime l'quivalence reprsente figure 2.14. Lorsque l'on utilise la deuxime caractrisation
des CMTC, les rebouclages directs peuvent donc tre supprims, sans affecter d'aucune faon le
comportement de la chane.
Figure 2.14. Equivalence des CMTC avec et sans rebouclage (deuxime caractrisation)
2.2.3.2.3. Equations de frontires
Nous avons vu que, pour obtenir le rgime stationnaire de la chane, il suffit d'crire pour chaque
tat j l'quation d'tat correspondant l'galisation du flux sortant de l'tat j et du flux entrant
dans l'tat j. En partant de ces quations, on peut driver de nouvelles quations, dites quations
de frontires.
Ces dernires galisent les flux de part et d'autre d'une frontire fictive coupant l'ensemble des
tats E en deux. Si E se dcompose en deux sous-ensembles disjoints E 1 et E2 (voir figure 2.15),
l'quation de frontire correspondante s'exprime :
selon une priorit non premptive. Cela signifie que si un appel de type 1 arrive alors qu'il y a un
appel de type 2 en attente, l'appel de type 1 prend la place de l'appel de type 2 dans le buffer
d'attente du commutateur et l'appel de type 2 est rejet. En revanche tout appel en traitement, quel
que soit son type, est excut jusqu' son terme, sans qu'aucune premption ne puisse avoir lieu.
On supposera que la dure de traitement d'un appel est indpendante du type de l'appel et est
dcrite par une variable exponentielle de taux .
Il est galement possible de ne pas distinguer dans la reprsentation d'tat, le type de l'appel en
cours de traitement. La dure de traitement ne dpend, en effet, pas du type de l'appel, et aucune
premption ne peut avoir lieu sur l'appel en cours de traitement. La CMTC correspondante est la
suivante
Dans la suite, nous utiliserons la premire CMTC, mais tous les calculs peuvent tre mens (plus
simplement) partir de la seconde.
3 - Cette CMTC est clairement irrductible et finie. Tous ses tats sont donc rcurrents non nuls
et la CMTC admet donc un rgime stationnaire. Les probabilits stationnaires de se trouver dans
un des tats qu'elle comporte sont alors solutions du systme suivant :
3 p(2, 1) = 4 p(0, 1)
3 p(2, 2) = 4 p(0, 2)
La solution de ce systme est
6 -On calcule la probabilit de rejet d'un appel de type 2. Celle-ci correspond la probabilit pour
que lorsqu'un appel de type 2 arrive, il trouve le commutateur plein. Or, puisque les appels de
type 2 arrivent suivant un processus de Poisson, les probabilits aux instants d'arrives sont
gales aux probabilits stationnaires ( tout instant) calcules prcdemment (c'est la proprit
PASTA prsente paragraphe 2.4.5.1). La probabilit de rejet est donc gale la probabilit
stationnaire pour que le commutateur soit plein, soit :
Lorsqu'un appel de type 1 arrive, il est autoris entrer si un appel de type 2 est en attente. La
probabilit de rejet se rduit donc :
7 - Lorsqu'un appel de type 1 arrive et est autoris pntrer dans le commutateur, il est sr
d'aboutir. Le nombre moyen d'appels de type 1 satisfaits par unit de temps est donc tout
simplement le nombre moyen d'appels de type 1 qui arrivent par unit de temps et qui ne sont pas
rejets l'entre :
Le dbit des appels de type 2 ne peut se calculer aussi facilement, car un appel de type 2 en
attente peut tre ject, suite une premption par un appel de type 1. On peut cependant (mme
si cela n'tait pas demand) calculer le dbit des appels de type 2, puisque ceux-ci correspondent
aux appels accepts moins les appels rejets par ceux de type 1 :
8 - Pour obtenir le temps moyen de rponse d'un appel de type 1 accept entrer, il suffit
d'appliquer la loi de Little (proprit 2.7) aux seuls appels de f type 1 dans le commutateur
Q1 est le nombre moyen d'appels de type 1 prsents dans le commutateur et se calcule de la faon
suivante
- K : capacit de la file,
- m : population des usagers,
- Z : discipline de service.
T et X sont donns par :
- M : loi exponentielle (markovienne),
- G : loi gnrale,
- GI : lois gnrales indpendantes,
- D : loi constante (dterministe),
- Ek : loi de Erlang-k,
- Hk : loi hyperexponentielle-k,
- Ck : loi de Cox-k,
- PHk : loi de type phase k tages.
Ces diffrentes lois sont dcrites en dtail la fin du chapitre. Lorsque les trois derniers lments
de la notation de Kendall ne sont pas prciss, il est sous-entendu que K = +, m = + et Z =
FIFO. Le paramtre m prcise le nombre maximum d'usagers susceptibles d'arriver dans la file,
cette dernire tant plonge dans un monde ferm contenant m clients. Il est plus judicieux de
modliser un tel systme par un rseau ferm contenant deux stations : la file considre et une
station supplmentaire reprsentant l' extrieur . C'est la raison pour laquelle ce paramtre est
de peu d'intrt. On n'a, en effet, plus affaire une file simple, mais un rseau de files d'attente
(voir chapitre 3).
On va considrer dans un premier temps la file MM/1. Celle-ci est constitue d'une file de
capacit infinie et d'un unique serveur. La discipline de service de la file est FIFO (First In First
Out). Le processus d'arrive des clients dans la file est un processus de Poisson de taux k, ce qui
quivaut dire que les interarrives ont une distribution exponentielle de paramtre , (voir
proprit 2.14) et le temps de service d'un client est une variable alatoire ayant une distribution
exponentielle de taux .
Dans le domaine des rseaux commutation de paquets, une file M/M/1 pourra modliser (plus
ou moins finement) le buffer de transmission d'un noeud de commutation vers une liaison de
sortie donne. Les clients du modle sont les paquets du systme. Le taux d'arrive k de la file
modlisera alors le nombre moyen de paquets par unit de temps qui doivent tre transmis sur la
ligne de sortie considre. Le taux de service p modlisera, quant lui, le nombre moyen de
paquets par unit de temps qui peuvent tre transmis sur la ligne, soit la capacit de la ligne de
sortie. Si celle-ci possde un dbit de D bit/s et que les paquets sont d'une longueur moyenne de n
bits,
D
client/s.
n
pertes de paquets, celles-ci ne pouvant tre prise en compte dans le modle M/M/1). Le modle
suppose galement que les temps d'interarrive et de service suivent des lois exponentielles. Cette
hypothse est difficile valider a priori, mais reste ncessaire pour obtenir un modle simple tel
celui de la file M/M/1. Le modle suppose finalement que les paquets sont transmis dans leur
ordre d'arrive, ce qui exclut toute notion de priorit.
2.3.2. CMTC associe la file
On souhaite obtenir les paramtres de performances de ce systme en rgime stationnaire, tels
que le dbit moyen de la file (not X), le taux moyen d'utilisation du serveur de la file (not U), le
nombre moyen de clients dans la file (not Q) ou le temps moyen de sjour d'un client dans la file
(not R) [BAY 00]. Pour l'exemple dcrit prcdemment d'une liaison de sortie d'un noeud de
commutation, X correspond au nombre moyen de paquets transmis par unit de temps sur la
liaison de sortie, U au taux d'utilisation de la liaison, Q au nombre moyen de paquets dans le
buffer, en attente ou en cours de transmission sur la liaison de sortie considre, et R au temps
moyen de sjour d'un paquet dans le commutateur, incluant l'attente dans le buffer et le temps de
transmission.
Pour obtenir ces paramtres de performances, il faut tout d'abord choisir une description d'tat. Le
processus stochastique engendr par cette description d'tat devra alors tre tudi en utilisant un
outil appropri. Il s'agira finalement de remonter au modle afin de dduire de l'tude du
processus stochastique les paramtres de performances souhaits.
Les seuls outils simples et performants dont on dispose afin d'tudier un processus stochastique
sont les chanes de Markov. La dmarche consiste donc, en gnral, dterminer une bonne
description d'tat du systme, c'est--dire une description qui est telle que le processus engendr
est une chane de Markov. On aura affaire une bonne description d'tat si celle-ci engendre un
processus stochastique sans mmoire et donc si la rponse la question la connaissance de l'tat
prsent suffit-elle prdire l'volution future du systme (de faon probabiliste) ? est oui .
Dans le cas de la file M/M/1, considrons la description d'tat suivante :
{n(t)}t 0, o n(t) est le nombre de clients prsents dans le systme l'instant t. C'est la
description d'tat la plus simple que l'on puisse imaginer. {n(t) }t 0 est un processus stochastique
espace d'tat discret et temps continu. Puisque la file est capacit illimite, l'espace d'tat E
est infini : E = {0, 1, 2...}. Il faut alors vrifier que le processus stochastique engendr est bien
sans mmoire. Lorsqu' un instant donn t il y a n(t) clients dans systme (n(t) > 0), deux
vnements peuvent se produire :
- l'arrive d'un nouveau client
- le dpart d'un client rsultant de la fin d'un service.
Vis--vis du service, il n'est pas ncessaire de savoir depuis combien de temps le service a
commenc pour prdire quand celui-ci va se terminer. La proprit sans mmoire de la loi
exponentielle (dcrivant un temps de service) nous dit en effet, que la probabilit pour que le
service se termine avant un temps supplmentaire t0, sachant qu'il a dbut t ] instants de temps
plus tt, ne dpend pas du temps t, que le client a dj pass en service. L'information le client
est toujours en service , est donc suffisante pour prdire l'volution future du serveur. De mme,
vis--vis des arrives, il n'est pas important de savoir depuis combien de temps le dernier client
est arriv pour prdire quand le prochain client arrivera, puisque le temps entre deux arrives
conscutives est distribu selon une loi exponentielle. Le processus {n(t)}t 0 est donc un
processus stochastique temps continu, espace d'tat discret et sans mmoire. C'est donc bien
une CMTC. Le graphe associ est reprsent figure 2.19.
On en dduit immdiatement la forme de la CMTD incluse dans cette CMTC, celle-ci ne tenant
plus compte du temps pass dans les tats mais seulement des probabilits de transitions entre
tats.
2) En crivant les quations d'tat l'quilibre (flux sortant d'un tat = flux entrant dans cet tat) :
Notons que cela donne exactement les mmes quations que prcdemment. En remplaant la
premire quation dans la deuxime, la deuxime dans la troisime et ainsi de suite, on obtient les
quations dites de balances locales :
en remplaant p(n) par sa valeur calcule prcdemment, nous permet d'obtenir p(0) :
condition bien sr que la srie converge, ce qui est vrai si < 1. Dans ce cas :
Remarquons que la condition de convergence de la srie ( < 1) n'est rien d'autre que la condition
de stabilit de la file ( < ). Il y a donc heureusement cohrence entre les deux conditions.
D'ailleurs, si la condition < 1 n'est pas satisfaite, le calcul de p(0) amne p(0) = 0 et comme
p(n) = p(0) n, on obtient que p(n) = 0 pour tout n 0, ce qui est effectivement le cas si les tats
d'une CMTC sont tous transitoires ou tous rcurrents nuls.
2.3.5. Calcul des paramtres de performances
Tous les paramtres de performances sont calculs dans le cas o la file est stable ( < ) et pour
le rgime stationnaire de la file.
2.3.5.1. Dbit X
Le dbit moyen de sortie est le nombre moyen de clients ayant quitt la file par unit de temps.
Le service s'effectue avec un taux s dans chaque tat o le systme contient au moins un client
On retrouve bien que si la file est stable, le dbit moyen de sortie est gal au dbit moyen
d'entre.
Sur l'exemple du noeud de commutation, il est clair que si le noeud est stable (donc sans perte), le
nombre moyen de paquets transmis sur la liaison par unit de temps correspond bien au nombre
moyen de paquets transmettre. La capacit de la liaison n'est pas atteinte.
2.3.5.2. Taux d'utilisation du serveur U
Le taux d'utilisation du serveur est dfini comme la proportion de temps pendant laquelle le
serveur de la file est occup, ou encore comme la probabilit pour que le serveur soit occup :
Pour une valeur de donne, si augmente (tout en respectant < ), la charge du serveur
augmente jusqu' tendre vers 100 % lorsque tend vers .
Sur l'exemple du noeud de commutation, l'utilisation de la liaison augmentera linairement en
fonction de la charge soumise, jusqu' la valeur limite correspondant la capacit du lien.
2.3.5.3. Nombre moyen de clients Q
Le nombre moyen de clients prsents dans le systme se calcule partir des probabilits
stationnaires de la faon suivante :
Pour une valeur de donne, le nombre moyen de clients augmente et tend vers l'infini lorsque a,
tend vers (voir figure 2.22).
Dans l'exemple du noeud de commutation, le nombre moyen de paquets en attente de
transmission tend donc vers l'infini lorsque la charge augmente. Cela nous indique que le modle
M/M/1 devient mauvais forte charge, car le systme rel comporte ncessairement un buffer
fini et ne peut donc accepter un nombre non born de paquets.
clients). Le dbit du systme est alors indiffremment, soit le dbit d'entre, soit le dbit de sortie
X = Xs = Xe. La loi de Little s'exprime telle que dans la proprit 2.15.
[2.12]
Considrons, comme pour la file M/M/1, la description d'tat la plus simple : {n(t)t0, o n(t) est le
nombre de clients dans le systme l'instant t. L'espace d'tat E est maintenant fini : E = {0, 1,
2, ... , K}. On peut nouveau vrifier que le processus stochastique engendr est une CMTC. En
effet, les interarrives et les services sont exponentiels ; il n'est donc pas ncessaire de savoir
depuis combien de temps le client est en service, ni depuis combien de temps le dernier client est
arriv. Le graphe associ la CMTC est donn figure 2.27.
p n 1
on peut en
n 0
On obtient finalement
Lorsque K tend vers l'infini, on retrouve bien les rsultats de la file M/M/1 :
p(n) = (l - ) n pour tout n
2.4.5. Calcul des paramtres de performances
2.4.5.1. Dbit X
Le dbit du systme peut tre calcul de deux manires quivalentes : soit en mesurant le taux de
dpart des clients en sortie du serveur, Xs, soit en mesurant le taux d'arrive effectif des clients
accepts dans le systme, Xe. On s'attend bien sr obtenir l'galit de ces deux dbits.
Le dbit effectif d'entre dans la file est gal a, ds l'instant qu'un client arrive lorsque la file
n'est pas pleine :
K-1
K 1
stationnaire pour qu'un client arrive la file lorsque celle-ci contient n clients.
Nous allons maintenant utiliser un autre rsultat gnral et trs important de la thorie des files
d'attente, connu sous le nom de thorme d'arrive ou, en anglais thorme PASTA
(Poisson Arrivais See Time Average) [GRO 85, KLE 75]. Ce thorme s'applique tout systme
ergodique atteignant un rgime stationnaire (pour plus de dtails sur la notion d'ergodicit et de
stationnarit, se rfrer [BAY 00, ROS 93]). Tous les systmes qui nous intressent ici sont
supposs tre ergodiques et atteindre un rgime stationnaire. Le thorme d'arrive stipule que
pour tout systme soumis des arrives poissoniennes, les probabilits stationnaires aux instants
d'arrive sont gales aux probabilits stationnaires tout instant. Ce que voit un client en
arrivant dans un systme n'est rien d'autre que le rgime stationnaire du systme (que pourrait
voir n'importe quel client totalement extrieur au systme et n'importe quel instant).
Puisque pour notre M/M/1/K les arrives sont poissoniennes, les probabilits stationnaires p a(n)
pour qu'un client qui arrive la file lorsque celle-ci contient n clients sont gales aux probabilits
stationnaires p(n) pour que la file contienne n clients n'importe quel instant. Le dbit moyen
d'entre est donc :
Notons que lorsque K tend vers l'infini, on retrouve bien les rsultats de la M/M/1, c'est--dire X
= condition que < 1, ce qui correspond la condition de stabilit de la M/M/1.
2.4.5.2. Taux d'utilisation du serveur U
Attention, dans le cas d'une file capacit limite, le taux d'utilisation n'est plus gal . En
effet, le taux d'utilisation est toujours gal au rapport du dbit moyen d'entre sur le taux moyen
de service (loi de Little applique au serveur de la file) :
U
A nouveau, lorsque K tend vers l'infini et < 1, on retrouve les rsultats de la M/M/ 1
sjour d'un client arrivant dans le systme, RT, ou le temps moyen de sjour d'un client
effectivement admis dans la file d'attente, R. Ces deux quantits peuvent tre obtenues par deux
applications de la loi de Little.
Figure 2.29. Temps moyen de sjour des clients accepts dans une file M/M/1/K
En ne considrant que les clients effectivement admis dans le systme, on obtient : R
Q
X
On peut vrifier la cohrence entre ces deux relations. En effet, soit a la proportion de clients
admis dans le systme. a peut s'exprimer comme le rapport du nombre moyen de clients admis
par unit de temps sur le nombre moyen de clients arrivant par unit de temps
Avec une probabilit a, un client arrivant l'entre de la file est autoris y entrer ; il y passera
alors un temps moyen R. Avec une probabilit (1 - ), le client est rejet et son temps moyen de
sjour dans le systme est nul. RT s'exprime donc de la manire suivante
appel exponentielle (de taux , donc de moyenne ) et une discipline de service FIFO, ce
systme peut tre modlis par une file M/M/C.
2.5.2. CMTC associe la file
La description d'tat la plus simple considrer est toujours : {n(t) } t0, o n(t) est le nombre de
clients dans le systme l'instant t. Si un instant donn, n(t) est infrieur ou gal C, cela
signifie que tous les clients sont en service. Si n(t) est suprieur C, C clients sont en service et
les n(t) - C restant sont dans la file d'attente. Le premier client du buffer (donc le plus
anciennement en attente) obtiendra le premier des C serveurs qui se librera. L'espace d'tat E est,
comme pour la M/M/1, infini : E = {0, 1, 2...}. On peut toujours aisment vrifier que le
processus stochastique engendr est une CMTC, interarrives et services tant distribus de faon
exponentielle. Lorsque le processus est dans un tat n < C, tous les clients sont en service et sont
donc susceptibles de quitter la file au bout d'un temps exponentiel de taux .i. Le taux avec
lequel un des n clients quitte la file, qui n'est rien d'autre que le taux de transition de l'tat n vers
l'tat n- 1, est donc gal n.
Pour s'en convaincre, il suffit de s'intresser la probabilit de passer d'un certain tat n, l'tat n
- 1, en un temps trs court dt. Pour passer de n clients n -1 clients en un temps dt, il faut qu'un
des n clients termine son service et que les autres ne terminent pas le leur, ceci pouvant se
produire pour le premier, le deuxime... ou le n ime client. Pour tre prcis, il faut galement
rajouter qu'aucun client n'arrive pendant ce temps dt. La proprit caractristique de la loi
exponentielle nous dit que la probabilit pour qu'un client termine son service en un temps dt est
pdt +o(dt), la probabilit pour qu'un client ne termine pas son service est donc 1 - dt + o(dt) et la
probabilit pour qu'aucun client n'arrive est 1 - t + o(dt). La probabilit recherche se calcule
donc de la faon suivante
Le taux de transition de l'tat n vers l'tat n - 1 de la CMTC associe est donc bien gal n. De
la mme faon, lorsque n > C, seuls C clients sont en service et sont donc susceptibles de quitter
la file, donc de faire passer le processus de l'tat n l'tat n-1. Le taux de transition correspondant
est donc gal C. Dans tous les cas, une transition d'un tat n vers un tat n + 1 correspond
une arrive de client, soit en un temps dt, une probabilit dt + o(dt). Le taux de transition est
donc gal X. Le graphe associ la CMTC est finalement reprsent figure 2.32.
En remplaant les expressions obtenues pour les probabilits p(n) et p(0), on retrouve bien que si
la file est stable, le dbit moyen de sortie est gal au dbit moyen d'entre :
Pour la file M/M/C, il est plus simple (au niveau des calculs mis en jeu) de calculer d'abord le
temps moyen de sjour et d'en dduire le nombre moyen de clients.
2.5.5.2. Temps moyen de sjour R
Le temps moyen de sjour d'un client se dcompose en un temps moyen d'attente dans le buffer
de la file, plus un temps moyen de service. Il suffit alors d'appliquer la loi de Little au seul buffer
de la file :
Il reste alors calculer le nombre moyen de clients en attente dans le buffer de la file, Qw
Cette formule, plus connue sous le nom de formule Erlang-C ou formule d'Erlang avec
attente est utilise depuis plusieurs dizaines d'annes dans les rseaux tlphoniques afin de
dimensionner le nombre de lignes ncessaires pour que la probabilit d'attente soit infrieure un
seuil donn. Le dimensionnement requiert le traage d'abaques l'aide de la relation [2.29]. Cette
formule s'utilise conjointement avec celle donnant le temps moyen d'attente avant traitement W,
directement issue de la relation [2.27] :
W
C
p 0
2
C 1! C
[2.30]
p n 1 pour n = 1, , C 1
n
Ou :
n
p 0 pour n = 1, , C
n!
[2.31]
Avec :
p 0
1
n
n 0 n!
C
[2.32]
n 1
n 1!
C
X p n n n 1 C n
n 1
n 0 n!
C
[2.33]
n 1!
Q np n n 1 C n
n 1
n 0 n!
C
[2.34]
au temps service.
Dans le domaine des rseaux, la file IS permet de modliser simplement le temps propagation sur
une liaison (celui-ci ne dpendant pas du nombre simultan de paquets qui sont en cours de
propagation). L'inverse du taux de service modlise alors le temps moyen de propagation sur la
liaison considre :
Il est noter qu'en ralit, le temps de propagation sur une liaison donne est constant et ne
dpend que de la vitesse de propagation du signal et de la longueur du cble. Le modle M/M/oc ,
suppose ce temps de propagation exponentiel, ce qui constitue une approximation difficile
justifier a priori, mais gnralement trs robuste.
2.7.2. CMTC associe la file
A nouveau, la description d'tat la plus simple, {n(t)} t 0, o n(t) est le nombre de clients dans le
systme l'instant t, suffit engendrer un processus stochastique espace d'tat discret, temps
continu et sans mmoire, donc une CMTC. Comme cela a t fait pour la file M/M/C, on peut
facilement dmontrer que le taux de transition d'un tat n quelconque vers l'tat n - 1 est gal n
et correspond au taux de sortie d'un des n clients en service. De mme, le taux de transition d'un
tat n vers l'tat n + 1 est gal et correspond au taux d'arrive d'un client. Le graphe associ
est reprsent figure 2.36.
p n
p n 1 pour tout n 1
n
n
p 0 pour tout n 1
n!
1
e
n
n 0 n!
n
Notons que la srie
converge pour toutes valeurs de (donc de et de ), ce qui est
n 0 n!
Q 1
X
laquelle les interarrives et les services sont des variables alatoires sans mmoire, dont le taux
dpend du nombre de clients prsents dans la file. Plus prcisment, lorsqu' un instant donn, la
file contient n clients, le temps au bout duquel le prochain client arrivera est suppos exponentiel
de taux (n) et le temps au bout duquel le client en service terminera son service et quittera la file
est suppos exponentiel de taux (n). On parle alors de lois markoviennes dpendant de l'tat
ou, par abus de langage, de lois exponentielles dpendant de l'tat .
k 1
1
k
n 1 k 1
Soit :
n 1
k 1
k
k 1
Q np n
n 1
Q
X
systme est connu sous le nom de file M/G/1. En fait, on suppose implicitement que les services
successifs sont indpendants les uns des autres et distribus selon la mme loi (donc que les
variables alatoires mesurant le temps de service des diffrents clients sont iid). Il faudrait alors
parler d'une file M/GI/1, GI faisant rfrence des lois gnrales et indpendantes les unes
des autres.
Pour tudier simplement ce systme en rgime stationnaire, il faudrait, comme cela a t fait dans
le cadre des files markoviennes, dterminer une bonne description d'tat, c'est--dire une
description qui engendre un processus stochastique sans mmoire . La description d'tat la
plus simple tester est toujours {n(t)}t 0, o n(t) est le nombre de clients dans le systme
l'instant t.
dveloppe dans [BAY 00]. L'ide de cette mthode est de ne s'intresser qu' des instants
particuliers de l'volution de l'tat du systme, ce qui revient discrtiser l'observation du
systme. Le but est de se ramener une description d'tat plus simple tudier, donc d'liminer
l'information Y(t). Pour cela, le plus simple est de considrer le systme aux instants de dbut
de service ou aux instants de fin de service . A ces instants, le temps de service coul Y(t)
est en effet nul (notons que ces instants concident sauf lorsque la file se vide). Bien sr, tout cela
n'a d'intrt que parce que l'on est capable de revenir au problme initial qui est de dterminer les
paramtres de performances du systme en rgime stationnaire, tout instant. Nous ne prsentons
pas ici les dtails de cette mthode et renvoyons le lecteur vers [BAY 00] pour une description
complte de cette mthode. Nous donnons ici simplement les rsultats, savoir les paramtres de
performance moyens en rgime stationnaire d'une file stable, donc pour laquelle < o
1
m
[2.42]
[2.43]
Il est intressant de noter que le taux d'utilisation ne dpend que des moyennes des temps de
service et d'interarrive. On retrouve donc le mme rsultat que pour la file M/M/1.
2.9.1.3. Nombre moyen de clients Q
La formule de Pollaczeck-Kinchin (P-K) [BAY 00, KLE 75] nous donne l'expression du nombre
moyen de clients Q en fonction des deux premiers moments de la loi G (ou de sa moyenne m et
de son cv2) :
o n'est rien d'autre que le taux d'utilisation du serveur et cv 2 est le carr du coefficient de
variation de la loi de service et n'est rien d'autre que la variance de la loi de service rapporte sa
moyenne au carr
A nouveau, on voit que le temps moyen de sjour est au moins gal au temps moyen de service,
mais ayant le mme taux d'arrive et les deux mmes premiers moments pour la loi de service,
ces deux files ont exactement les mmes paramtres de performances moyens.
2.9.2. Extensions de la file M/G/1
Nous avons prsent succinctement l'analyse de la file M/G/1 par la mthode de la chane de
Markov incluse. L'tude de la file G/M/1, pour laquelle les interarrives suivent des lois gnrales
(iid) et les services sont exponentiels, est totalement duale et peut tre mene de faon trs
similaire [BAY 00, KLE 75]. Comme dans le cas de la file M/G/1, la description d'tat {n(t)} t0
n'est pas suffisante pour engendrer un processus stochastique sans mmoire. Il faut lui rajouter
une information continue, note Z(t), comptabilisant chaque instant t le temps dj coul
depuis l'arrive du dernier client. Le processus {n(t), Z(t)}t0 est alors sans mmoire. Cependant, il
s'agit d'un processus dont l'espace d'tat est mixte car form d'une variable discrte n(t) et d'une
variable continue Z(t). Afin d'liminer cette information continue, l'ide est alors d'tudier le
processus des instants particuliers o le systme est sans mmoire. On choisit naturellement les
instants d'arrive . La chane de Markov incluse dcrivant l'volution du systme ces instants
d'arrive peut alors tre analyse en rgime stationnaire. Et de l'analyse de cette CMTD incluse,
on peut remonter aux paramtres de performance moyens de la file suppose stable.
Dans les deux cas, pour obtenir une description d'tat qui engendre un processus stochastique
sans mmoire, il faut rajouter au nombre de clients n(t) prsents dans le systme l'instant t, une
information continue indiquant le temps coul depuis la dernire occurrence du processus
gnral (donc depuis la dernire fin de service pour la M/G/1 et depuis la dernire arrive pour la
G/M/1). La difficult vient alors du fait que cette description d'tat mixte, puisque comportant
une information discrte et une information continue, engendre, certes un processus stochastique
sans mmoire, mais qui n'est pas une chane (processus stochastique espace d'tat discret),
donc a fortiori par une chane de Markov. L'ide a donc t, pour les deux files, de ne s'intresser
qu' des instants particuliers de l'volution du systme. On a naturellement choisi les instants de
dpart pour la file M/G/1 et les instants d'arrive pour la file G/M/1. Dans les deux cas, cela a
permis d'liminer de la description d'tat l'information continue et donc de rduire l'analyse de la
file celle d'une CMTD dite incluse . Des rsultats de la CMTD incluse, on a alors t capable
de dduire les paramtres de performances moyens en rgime stationnaire pour les deux files.
Examinons diffrentes extensions des files M/G/1 et G/M/1, afin de voir si on peut leur appliquer
une technique similaire. Plus de dtails sur ces diffrentes extensions peuvent tre trouvs par
exemple dans [KLE 75] ou dans [GRO 85].
de mmoire. La question est donc de savoir si, partant d'une loi gnrale, on peut toujours se
ramener une loi exponentielle ou une combinaison de lois exponentielles, ce qui, nous le
verrons un peu plus loin, prsente l'norme avantage de rduire l'tude du systme celle d'une
chane de Markov temps continu.
Si l'on remplace directement la loi gnrale par une loi exponentielle de mme moyenne, on
risque d'obtenir des paramtres de performances assez loigns de la ralit. En effet, on
remplace la loi d'origine par une loi de mme moyenne, mais pouvant avoir une variance trs
diffrente de celle de la loi exponentielle, auquel cas la distribution de remplacement reprsente
mal la distribution relle. Illustrons cette remarque l'aide d'une file M/G/1 dans laquelle la loi de
service X est remplace par une loi exponentielle de mme moyenne.
de mme moyenne (soit pour le nombre moyen de clients, Q 1 5 ), sont assez proches de
ceux de la file M/G/1 d'origine. Bien entendu, si le cv 2 est exactement gal 1, les paramtres de
performances calculs partir de la file M/M/l associe sont exacts.
En effet, nous avons vu au paragraphe 2.9.1 que les paramtres de performances moyens de la
file M/G/1 ne dpendent que des deux premiers moments de la loi de service. Mais qu'en est-il si
le cv2 est loign de la valeur 1 ? Il est clair d'aprs les rsultats de l'exemple prcdent, que les
paramtres de performances de la file M/G/1 peuvent tre trs loigns de ceux de la file M/M/1
associe.
Tableau 2.1. Nombre moyen de clients dans une file M/G/1, fonction du cl
Lorsque le cv2 < 1, l'ide est alors de remplacer la loi gnrale, non plus par une simple
exponentielle, mais par une loi constitue de deux tages exponentiels de taux 2. Le service
1
1
. On obtient ainsi une loi
2
qui, tout en conservant la mme moyenne que la loi d'origine, a une variabilit infrieure celle
de la loi exponentielle (cv2 < 1). Cela s'explique par le fait que les variabilits des deux tages de
la loi de service se compensent pour donner une loi dont la variabilit est infrieure celle d'un
seul tage (exponentiel). En rsum, pour une loi gnrale dont le cv 2 est proche de 1, la loi
exponentielle constitue une bonne approximation, alors que pour un cv 2 proche de
1
, une loi de
2
Figure 2.41. Modlisation d'une file M/G/1 par une file M/E2/1
Mais avant d'aller plus loin sur la liste des lois pouvant se substituer une loi gnrale, posonsnous la question suivante : quel est l'intrt de substituer une loi gnrale par une loi constitue
d'une combinaison de lois exponentielles ? Prenons pour simplifier l'exemple d'une file M/G/1 o
la loi de service est modlise par une loi de Erlang-2 de mme moyenne (figure 2.41). Aprs
substitution, le processus stochastique {n(t)}t 0 n'est toujours pas un processus sans mmoire. On
peut cependant observer que pour la nouvelle loi, quel que soit l'instant d'observation et quel que
soit celui des deux tages dans lequel le client en service se trouve, le temps pass dans cet tage
est exponentiel donc sans mmoire. Sachant quel tage de service le client se trouve, il n'est
donc pas ncessaire de savoir depuis combien de temps il s'y trouve pour prdire quand cet tage
de service va se terminer.
Par consquent, pour prdire l'volution du systme, on a seulement besoin, en plus du nombre de
clients, de savoir dans lequel des deux tages de service on se trouve. Autrement dit, le processus
{n(t), j(t)} t 0 o j(t) = 1 ou 2, est un processus stochastique temps continu, espace d'tat
discret et sans mmoire. C'est donc une CMTC qui peut tre facilement tudie. La figure 2.42
donne la CMTC associe la file M/E2/1.
1
. Une file M/Ek/1 peut tre dcrite par une CMTC espace d'tats discret {n(t), j(t)
k
avec j(t) = 1, ... , k. Les lois d' Erlang permettent donc de modliser les valeurs des
cv 2 1,
1 1
1
, , ,
2 3
k
On peut affiner les valeurs du cv 2 en autorisant des taux de service diffrents pour les
diffrents tages de la loi. On parle alors de loi hypo-exponentielle . On montre qu'en faisant
varier les taux des diffrents tages, on peut obtenir pour le cv 2 toutes les valeurs comprises entre
0 et l.
1
;
1
1
;
2
Ce type de loi pourra, par exemple, reprsenter le service d'un guichet SNCF o le client peut ou
non avoir effectu une rservation Minitel avant de se prsenter au guichet, les deux cas
reprsentant deux services de nature et de longueur diffrentes de la part de l'employ. A
nouveau, le processus {n(t), j(t)}t 0, o j(t) dtermine la tche en cours d'excution, est sans
mmoire.
La forme la plus gnrale d'une loi hyperexponentielle comporte k tages et est reprsente figure
2.46. On peut facilement vrifier que le cv2 d'une telle loi est suprieur ou gal 1.
Une premire gnralisation de ce type de loi a t propose par Cox et porte son nom. Une loi
de Cox-k est constitue de k tages exponentiels de taux diffrents, soit i pour l'tage i, i =
1, ..., k. A l'issue d'un premier tage exponentiel de taux 1, le service se termine avec une
probabilit 1 - a1 et se poursuit au second tage avec une probabilit a 1. A l'issue de chaque tage
(sauf le dernier), le service peut donc, soit se terminer, soit se poursuivre l'tage suivant. Le
temps total de service est donc, au minimum, constitu d'un seul tage exponentiel (le premier)
et, au maximum, constitu d'une succession de k tages exponentiels.
1
, on peut identifier les deux premiers moments de la loi, ou encore sa
2
moyenne et son cv2, l'aide d'une loi de Cox-2 dont les paramtres sont
Finalement, il est important de comprendre que ce type d'approche, prsent dans le cadre de la
file M/G/l et consistant identifier la loi gnrale une loi PH, est extensible l'tude des
diffrentes files que l'on n'avait pas pu tudier par la mthode de la chane incluse, par exemple la
file G/G/1.
La figure 2.51 donne l'exemple d'une file G/G/1 pour laquelle le temps d'interarrive est identifi
une loi E3 et le temps de service est identifi une loi H 2. Cela permet de passer d'un processus
markovien {n(t), Y(t), Z(t)}t0 ayant deux variables continues, une CMTC {n(t), j(t), k(t)1, t0, o
j(t) et k(t) sont des variables discrtes qui prennent ici leurs valeurs respectivement dans {l, 2} et
dans {l, 2, 3}. Pour une valeur de n(t) > 0, la CMTC compte donc 6 tats. Cette approche
Chapitre 3
Les rseaux de files d'attente
Un rseau de files d'attente est un ensemble de files d'attente interconnectes. On classe les
rseaux de files d'attente en deux catgories :
- les rseaux de files d'attente monoclasses, dans lesquels circule une seule classe de clients, c'est-dire un seul type d'entits statistiquement indiffrenciables ;
- les rseaux de files d'attentes multiclasses, dans lesquels circulent plusieurs classes de clients,
ces diffrentes classes pouvant se distinguer par un schma de routage spcifique et par des
comportements diffrents au niveau de chaque station, tant au niveau du service que de
l'ordonnancement dans le buffer d'attente.
Dans le cas de rseaux monoclasses, on fait galement la distinction
- rseaux ouverts : les clients arrivent de l'extrieur, circulent dans le rseau travers les
diffrentes stations, puis quittent le rseau. Le nombre de clients pouvant se trouver un instant
donn dans un rseau ouvert n'est donc pas limit ;
- rseaux ferms : les clients sont en nombre constant. Il n'y a donc pas d'arrive ni de dpart de
clients.
Dans le cas de rseaux multiclasses, il faut prciser pour chaque classe de clients s'il s'agit d'une
classe ouverte ou d'une classe ferme. Si toutes les classes de clients sont des classes ouvertes, on
parlera de rseaux purement ouverts et si toutes les classes de clients sont des classes fermes,
on parlera de rseaux purement ferms . Un rseau parcouru la fois par des classes ouvertes
et par des classes fermes, sera qualifi de rseau mixte .
Finalement, dans les rseaux multiclasses, on diffrencie les rseaux avec et sans changement de
classe, qui se distinguent par la possibilit ou l'impossibilit pour les clients d'une classe donne
de changer de classe lors de leur cheminement dans le rseau.
Le formalisme des rseaux de files d'attente est prsent en section 3.1. Quelques exemples de
modles de rseaux de communication sont donns au paragraphe 3.1.6.
En ce qui concerne l'analyse, nous nous intresserons uniquement dans ce chapitre, une classe
particulire de rseaux de files d'attente, connue sous le nom de rseaux forme produit, qui ont
la particularit de possder une solution analytique trs simple. Nous considrerons
successivement les rseaux monoclasses ouverts (section 3.2), les rseaux monoclasses ferms
(section 3.3), puis les rseaux multiclasses (section 3.4).
3.1. Les rseaux de files d'attente
Un rseau de files d'attente est un ensemble de files simples (stations) interconnectes. Soit M le
nombre de stations du rseau.
3.1.1. Les rseaux ouverts
Dans un rseau de files d'attente ouvert, les clients arrivent de l'extrieur, circulent dans le rseau
travers les diffrentes stations, puis quittent le rseau. Le nombre de clients pouvant se trouver
un instant donn dans un rseau ouvert n'est donc pas limit. Afin de spcifier compltement un
rseau ouvert, il faut bien sr caractriser chaque station, mais galement le processus d'arrive
des clients et le routage (cheminement) des clients dans le rseau. La figure 3.1 donne un
exemple d'un rseau de files d'attente ouvert comportant quatre stations.
p
i 1
0i
Si les arrives dans le systme sont poissoniennes de taux , on montre que le processus d'arrive
des clients (venant uniquement de l'extrieur) la station i est poissonien de taux p 0i, [BAY 00,
ROS 93].
3.1.1.2. Routage des clients
Lorsqu'un client termine son service une station, il faut prciser o ce client va se rendre : soit
une autre station, soit l'extrieur (le client quitte alors le rseau). A nouveau, le routage des
clients est trs souvent caractris de faon probabiliste soit p ij la probabilit pour qu'un client qui
quitte la station i se rende la station j et soit p i0 la probabilit pour qu'un client qui quitte la
station i quitte le systme. Les pij sont tels que
M
p
j1
ij
Il existe cependant d'autres types de routage. Donnons deux exemples trs simples :
- le routage vers la file la plus courte (routage dynamique) : un client quittant une station choisira
parmi toutes les destinations possibles, la station qui comporte le moins de clients (voir figure
3.2) ;
- le routage cyclique (routage dterministe) : les clients quittant une station choisiront tour de
rle chacune des stations parmi toutes les destinations possibles (voir figure 3.3).
contrainte de population implique que le rseau n'est ni rellement un modle ouvert, puisque le
nombre de clients qui peuvent s'y trouver est limit, ni rellement un rseau ferm, puisque le
nombre total de clients dans le systme n'est pas constant. On parlera de modle ouvert
contrainte de population . Lorsqu'un client arrive dans le rseau alors que celui-ci est plein (la
contrainte de population est atteinte), deux cas peuvent tre envisags. Soit le client est rejet ,
ce qui rejoint le modle de la section prcdente, soit le client est mmoris et se place en
attente dans une file externe (gnralement FIFO).
Par la suite, on ne s'intressera qu'au cas o le client est mmoris. La figure 3.8 donne un
exemple d'un rseau ouvert comportant une contrainte de population N et une file externe servant
faire patienter les clients ne pouvant entrer dans le rseau.
statique), ou en temps rel (routage dynamique). Dans un mcanisme de routage statique, chaque
nud se charge de transmettre les paquets qui y parviennent indpendamment de ltat (de la
charge) du rseau. Dans un mcanisme de routage dynamique, c'est au moment o un paquet
arrive un certain noeud que celui-ci dcidera, en fonction de sa destination et de la charge
actuelle du rseau (ou plus exactement, de la vision qu'il en a cet instant), de la liaison sur
laquelle il l'enverra.
1
i
Pour la file M/M/1, la condition de stabilit , traduisait le fait que le temps moyen entre
deux arrives devait tre suprieur au temps moyen ncessaire au traitement d'un client. Ici, en
1 ei
, pour i =
appliquant le mme raisonnement chacune des files, on obtient la condition
i
1, ... , M, soit en posant i = ei le taux d'arrive des clients la station i, on a :
Condition de stabilit du systme : i < i i = 1, , M
Le nombre moyen de clients qui entrent dans la station i par unit de temps, i, doit tre infrieur
au nombre moyen de clients que la station est capable de traiter par unit de temps, i, et ce, pour
toutes les stations qui constituent le rseau.
3.2.3. Calcul des taux de visite
On suppose que le rseau est stable et donc que pour chaque station i < i. i mesure le trafic la
station i. C'est donc la fois le dbit moyen d'entre et le dbit moyen de sortie de la station i. Ce
trafic se dcompose en plusieurs parties
- le trafic venant de l'extrieur : p0i ;
- le trafic venant de la station j : j pji, pour toutes les stations j = 1, ... , M.
On a donc :
Comme i e i , on en dduit le systme d'quations que doivent satisfaire les taux de visite
Il s'agit donc de rsoudre un systme de M quations M inconnues. Notons que dans la majorit
des cas, ce systme est extrmement simple rsoudre et ce, spcialement dans le cas d'un rseau
sans rebouclage. L'exemple 3.1 en est une illustration.
EXEMPLE 3.1.- On considre le rseau ouvert suivant :
1
, dont on tire :
2
1 1
5
e1
2 4
8
et, finalement:
e3
3
1
1
1
e1 e 2 et e 4 e 3
4
5
2
2
, 2
, 3 et 4
2
8
2
2
On a bien sr
4
2 4 , qui exprime l'galit entre le taux d'entre et le taux de sortie du
5
rseau.
En pratique
- on calcule les taux de visite ci l'aide du systme [3.2] et l'on en dduit les taux d'arrive aux
diffrentes stations : i = ei , i = 1, ... , M ;
- on vrifie la condition de stabilit du rseau : i < i, i = 1, ... , M ;
- si la condition est satisfaite, on peut poursuivre l'tude du rseau, sinon il faut modifier les
paramtres du systme.
3.2.4. Analyse du rgime permanent
On adopte ici la mme dmarche que pour les files simples, en essayant de trouver une bonne
description d'tat, c'est--dire une description qui est telle que le processus stochastique engendr
est un processus sans mmoire. Pour la file M/M/1, on a vu que la description d'tat {n(t)} t 0
suffisait engendrer un processus stochastique sans mmoire, espace d'tat discret et temps
continu, donc une CMTC. Pour un rseau de Jackson, considrons galement la description d'tat
la plus simple : le vecteur d'tat {n(t) = (n 1(t), ... , nM(t))}t 0, o ni(t) est le nombre de clients
prsents dans la station i au temps t. La question se poser est alors : La connaissance du
nombre de clients dans chacune des stations un instant donn suffit-elle pour prdire l'volution
future du systme ? . La rponse est oui . En effet, vis--vis des arrives, il n'est pas
important de savoir depuis combien de temps le dernier client est arriv, puisque le processus
d'arrive est poissonien (pour plus de dtails, voir chapitre 2). Vis--vis des services, il n'est pas
ncessaire de savoir depuis combien de temps les clients sont en service aux diffrentes stations,
puisque toutes les lois de service sont exponentielles. Maintenant, vis--vis des routages,
lorsqu'un client arrive dans le systme ou lorsqu'un client termine son service une station, sa
destination est choisie selon une certaine distribution de probabilit, indpendamment de l'tat et
de l'volution passe du systme. Le processus {n(t) = (n i(t), ... , nM(t))} t 0 est donc bien un
processus sans mmoire. Son tat (nt, ... , nM) est une variable discrte M dimensions. On a donc
affaire une CMTC.
L'ensemble des tats de cette chane est E = {n = (n1, ... , nM) 1 ni 0}. Le nombre d'tats qu'elle
comporte est infini, puisque le nombre de clients pouvant se trouver dans le rseau un instant
donn n'est pas limit. De faon gnrique, regardons toutes les transitions de sortie d'un certain
tat (nl, n2, n3, n4) d'un rseau de files d'attente gnral comportant quatre stations (voir figure
3.14). Partant d'un tat (n1, n2, n3, n4), avec pour simplifier la prsentation, ni > 0 pour i = 1, 2, 3 et
4, cinq vnements peuvent avoir lieu : soit la fin du service d'un des clients en service chacune
des quatre stations, soit l'arrive d'un nouveau client dans le systme. Si le premier de ces cinq
vnements se produire est, par exemple, la fin de service du client la station 1 (vnement
exponentiel de taux 1), ce client quittera le rseau avec une probabilit p 10, ce qui amnera le
processus dans l'tat (ni - 1, n2, n3, n4) et se rendra la station 2 (par exemple) avec une
probabilit P12, ce qui amnera le processus dans l'tat (n 1 - 1, n2 + 1, n3, n4). Si le premier des
cinq vnements se produire est l'arrive d'un client dans le rseau (vnement exponentiel
de taux a.), ce client se rendra la station 1 (par exemple) avec une probabilit p 01, ce qui
amnera le processus dans l'tat (ni + 1, n2, n3, n4).
Figure 3.14. Transitions de sortie d'un tat d'une CMTC associe un rseau monoclasse ouvert
forme produit
De faon plus gnrale, on peut crire les quations d'quilibre du rseau. galisant le flux sortant
d'un certain tat n au flux entrant dans ce mme tat
Ce systme d'quations qui semble a priori fort compliqu possde en ralit une solution
extrmement simple. Cette solution nous est donne par la proprit suivante, connue sous le
nom de thorme de Jackson [JAC 57] et dmontre dans [BAY 00].
PROPRIETE 3.1.- La probabilit stationnaire du rseau possde la forme produit suivante
M
p n p i n i
i 1
o pi(ni) est la probabilit stationnaire d'une file M/M/1 ayant un taux d'arriv j et un taux de
service i.
Soit
pi(ni) =(1-Pi)Pin,
o
i
i
i
REMARQUE 3.1.- Un rseau de Jackson est donc quivalent un ensemble de files M/M/1 et la
probabilit stationnaire p(n) du rseau est gale au produit des probabilits marginales p i(ni) de
chacune des files tudies en isolation (voir figure 3.15).
Tout se passe donc comme si les flux d'arrive aux diffrentes stations du rseau taient
poissoniens. Or, gnralement, ces flux ne sont pas poissoniens. En fait, dans certaines
configurations de routage, on peut montrer que les flux d'arrives certaines stations ne sont
mme plus des processus de renouvellement [BAY 00]. Mais le thorme de Jackson nous dit que
la solution stationnaire de ce rseau est exactement la mme que celle obtenue si tous les flux
d'arrive taient poissoniens. Ce rsultat est surprenant et donne toute sa force au thorme de
Jackson.
Il est important galement de noter que la solution stationnaire du rseau forme produit vrifiant
les hypothses de Jackson ne dpend du routage des clients dans le rseau qu'au travers des taux
de visite. En d'autres termes, la solution dpend explicitement des ci mais pas des p ij. En
consquence, les deux rseaux de la figure 3.16 possdent, par exemple, la mme solution
stationnaire (en termes de probabilits), mme s'ils ont des routages foncirement diffrents. En
effet, on peut facilement vrifier que ces deux rseaux possdent les mmes taux de visite : e t = e2
= 1. Pour caractriser un rseau forme produit, il suffit donc de donner pour chaque station i, le
taux de service 1 et le taux de visite ei.
Figure 3.15. Illustration de l'quivalence d'un rseau de Jackson et d'un ensemble de files M/M/1
Station i
Xi
Qi
Ri
Rseau
X
Q
R
Un client qui arrive dans le rseau passe en moyenne c i fois par la station i et y reste en moyenne
un temps Ri. Son temps moyen de sjour dans le systme est donc la somme des temps moyens
de sjour chaque station pondre par le nombre moyen de passage par les diffrentes stations.
3.2.6. Extension au cas de stations multiserveurs
On conserve les hypothses prcdentes, except que chaque station peut comporter plusieurs
serveurs identiques (et indpendants les uns des autres). Soit Ci le nombre de serveurs de la
station i. Chacun de ces serveurs est exponentiel et de mme taux i. Les taux de visite c i et les
taux moyens d'arrive i se calculent alors de la mme faon que dans le cas monoserveur. La
condition de stabilit du rseau est alors la suivante
Condition de stabilit du systme : i < Ci i
i = 1, , M
Elle exprime que le taux d'arrive chaque station doit tre infrieur la capacit de service
maximale de la station. Cette dernire est obtenue en supposant que les C i serveurs travaillent en
permanence et dbitent donc globalement un taux C i i. Sous cette condition, le rseau est
quivalent un ensemble de files M/M/C, et la probabilit stationnaire p(n) du rseau est gale au
produit des probabilits marginales pi(ni) de chacune des files tudies en isolation.
PROPRIETE 3.2.- La probabilit stationnaire du rseau possde la forme produit suivante
M
p n i n i
i 1
o pi(ni) est la probabilit stationnaire d'une file M/M/C ayant un taux d'arrive i = ei, un taux
de service i et comportant Ci serveurs.
L'analyse du rseau se rduit donc, comme dans le cas monoserveur, l'analyse de M files
Les taux de visite ei et les taux moyens d'arrive i se calculent alors de la mme faon que dans
le cas monoserveur. La condition de stabilit du rseau exprime nouveau que le rseau est stable
si les diffrentes stations qui le composent sont stables.
Le taux d'arrive la station i tant i, nous avons vu au chapitre 2, que la condition de stabilit
de la station pouvait s'exprimer :
Sous cette condition, le rseau est quivalent un ensemble de files M/M/(n), et la probabilit
stationnaire p(n) du rseau est gale au produit des probabilits marginales p i(ni) de chacune des
files tudies en isolation.
PROPRIETE 3.3.- La probabilit stationnaire du rseau possde la forme produit suivante :
o pi(ni) est la probabilit stationnaire d'une file M/M/(n) ayant un taux d'arrive i = ei, et un
taux de service i(ni) dpendant de l'tat.
L'analyse du rseau se rduit donc nouveau l'analyse de M files simples qui sont cette fois-ci
des M/M/(n). Une telle file est un cas particulier de la file markovienne dcrite au chapitre 2,
pour laquelle le taux d'arrive est indpendant du nombre de clients dans la file. (Donc pour la
file i, (n) = i et (n) = i(n) pour tout n). Notons galement que cette extension permet de
prendre en compte des files IS (voir chapitre 2) dans lesquelles le nombre de serveurs est infini.
3.3. Les rseaux monoclasses ferms forme produit
3.3.1. Dfinition
Dans un rseau ferm, les clients initialement dans le systme y circulent sans jamais en sortir et
sans qu'aucun client de l'extrieur n'y entre. Ils sont donc en nombre constant.
Comme dans le cas ouvert, on s'intressera tout d'abord aux rseaux de files d'attente ferms
comportant :
- une seule classe de clients,
Ces rseaux sont connus sous le nom de rseaux de Jackson ferms ou encore rseaux de Gordon
et Newell [GOR 67, JAC 63]. On note M le nombre de stations, N le nombre total de clients, g i le
taux de service de la station i, i = 1, ... , M et p ij la probabilit qu'un client qui termine son service
la station i se rende la station j. Les probabilits pij sont telles que :
M
p
j1
ij
i = 1, , M
[3.11]
3.3.2. Stabilit
Dans un rseau ferm, il n'y a bien entendu aucun problme de stabilit puisque le nombre de
clients chaque station est limit la population du rseau et ne peut donc crotre l'infini : pour
toute station i, ni(t) < N tout instant t.
La contrainte de population du rseau impose de plus que la condition
M
n t N
i 1
e i e jp ji
j1
i = 1, , M
[3.12]
Mais, contrairement au cas ouvert, comme les e i ne sont dfinis qu' une constante prs, ce
systme admet une infinit de solutions. Il suffit alors de choisir une station de rfrence, par
exemple la station 1, et de poser et = 1.
Les autres taux de visite se dduisent alors du systme [3.12] sans ambigut et s'interprtent
comme le nombre moyen de passages par les diffrentes stations du rseau entre deux passages
par la station 1.
EXEMPLE 3.2.- On considre le rseau ferm suivant :
Il reste une indtermination, que l'on lve en choisissant, par exemple, la station 1 comme station
de rfrence et donc en posant el = 1. Les autres taux de visite s'en dduisent immdiatement :
e 2 e3
1
2
Entre deux passages par la station 1, un client passe bien, en moyenne, 1 fois par 2 la station 2 (et 1
fois par la station 3). Notons qu'il tait tout fait possible de choisir la station 2 (ou encore la
station 3) comme station de rfrence. On obtient alors el = 2. Entre deux passages conscutifs
par la station 2, un client passe bien, en moyenne, 2 fois par la station 1.
3.3.4. Analyse du rgime permanent
Encore une fois, il s'agit de trouver une bonne description d'tat, c'est--dire une description
qui est telle que le processus stochastique engendr est une CMTC. Pour un rseau ouvert, on a
vu que la description d'tat {n(t) = (n, (t), ... , nM(t))}t 0, o ni(t) est le nombre de clients prsents
la station i tout instant, suffisait engendrer un processus stochastique sans mmoire espace
d'tat discret et temps continu, donc une CMTC. Pour un rseau ferm, on peut de la mme
manire que dans le cas ouvert s'assurer que cette description d'tat suffit engendrer un
processus sans mmoire. Mais puisque l'on a maintenant affaire un rseau ferm, on a tout
instant la contrainte supplmentaire :
Cette contrainte fait que l'tat n(t) contient une information de trop (une des composantes n i(t) est
n j t ).
en permanence gale N
j i
En fait, pour ne pas dissymtriser le problme, on garde comme tat courant le vecteur n(t)
avec toutes ses composantes.
La CMTC engendre a cette fois-ci un nombre d'tats fini. L'ensemble E(M, N) de tous les tats
possibles du systme est :
On peut facilement montrer que le nombre d'tat de la CMTC est gal :
E M, N n n1 , , n M
n
j1
[3.13]
Il correspond en effet au nombre de faons de rpartir les N clients dans les M stations du rseau.
1
CM
N M 1
N M 1!
N! M 1!
La partie de la chane correspondant toutes les transitions de sortie d'un certain tat n est
reprsente figure 3.18.
Figure 3.18. Transitions de sortie d'un tat d'une CMTC associe un rseau monoclasse ferm
forme produit
Les quations d'tats s'crivent alors plus simplement que dans le cas ouvert :
Ce systme d'quations possde, comme dans le cas ouvert, une solution trs simple.
PROPRIETE 3.4.- La probabilit stationnaire du rseau possde la forme produit suivante :
Il est important de noter qu'on n'a plus ici, comme dans le cas ouvert, l'quivalence avec un
ensemble de files M/M/l. Cela s'explique par le fait que dans un rseau ferm, il y a une trs forte
dpendance entre les diffrentes stations, cette dpendance tant bien entendu lie la contrainte
de population du rseau. La deuxime difficult, inhrente aux rseaux ferms, concerne le calcul
de la constante de normalisation G(M, N). Un calcul direct de cette constante conduirait des
sommations multiples dont la complexit est exponentielle. Heureusement, cette constante peut
tre obtenue beaucoup plus simplement, l'aide d'algorithmes dits de convolution .
3.3.5. Calcul de la constante de normalisation
G(M, N) est la constante de normalisation du rseau contenant M stations et dans lequel circulent
N clients. Cette constante est telle que :
Notons qu'il peut tre intressant de considrer G(M, N) comme une fonction de N et d'exprimer
G(M) sous forme d'un produit de convolution (d'o le nom de l'algorithme de calcul)
Buzen [BUZ 73] a t le premier dvelopper un algorithme efficace de calcul de la constante de
normalisation. Cet algorithme est connu sous le nom d' algorithme de Buzen ou algorithme
de convolution (voir galement [BRU 80]). Son principe est expos ci-dessous.
o E0 est l'ensemble de tous les tats de E(M, N) ayant leur dernire composante nulle, c'est-dire de toutes les configurations du rseau dans lesquelles la dernire station est vide
et E1 est l'ensemble de tous les tats de E(M, N) ayant leur dernire composante non nulle, c'est-dire de toutes les configurations du rseau dans lesquelles la dernire station comporte au
moins un client :
Cette relation de rcurrence extrmement simple permet de calculer toutes les constantes de
normalisation G(m, n) pour m = 1, ... , M et n = 0, ... , N en partant des conditions initiales
G(1,n)=p1n
n = 0,...,N
G(m,0)=1
m = 1,...,M
Le problme est qu'un calcul des probabilits marginales par la relation [3.17] ncessite
d'effectuer des sommations multiples qui, ds l'instant o le rseau comporte un grand nombre de
stations, sont trop complexes mettre en oeuvre. Cependant, comme pour le calcul de la
constante de normalisation, on peut viter ces sommations multiples. En remplaant dans la
relation [3.17] l'expression des probabilits stationnaires, on obtient en effet :
On note alors Ei(M, n) l'ensemble de tous les vecteurs d'tat n de E(M, N) qui sont tels que la
somme des clients dans toutes les stations autres que la station i :
est gale n (et donc tels que le nombre ni de clients dans la station i, est gal N - n) :
Les probabilits marginales pi(k) s'expriment alors simplement en fonction de ces constantes qu'il
faut donc tre capable de calculer :
3.3.6.1. Calcul des constantes de normalisation du rseau complmentaire
Dans un premier temps, il est important de constater que la quantit G(M - 1, n) dfinie
prcdemment n'est rien d'autre que la constante du rseau complmentaire prive de la dernire
station, GM(M - 1, n). La relation [3.16] peut alors s'crire :
Et comme il n'y a aucune raison de particulariser la station M, cette relation peut s'obtenir pour
toute station i de faon rigoureusement identique :
Cette relation nous permet, en l'inversant, d'obtenir par dconvolution sur les constantes G(M,
n), les constantes de normalisation complmentaires
Il est intressant de noter partir de la relation [3.27], que les dbits des diffrentes stations sont
contraints par la relation [3.30]. Cette relation est connue sous le nom de loi des flots forcs ,
ou en anglais forced flow law.
On aboutit finalement l'algorithme de convolution [BRU 80, BUZ 73] suivant dont la
complexit est clairement en O(MN).
L'algorithme repose sur la relation rcursive suivante, exprimant le temps moyen de sjour d'un
client la station i, dans le rseau contenant N clients, en fonction du nombre moyen de clients
de la station i, dans le rseau contenant N - 1 clients (cette relation est dmontre dans [BAY 00])
Cette relation de rcurrence extrmement simple possde galement une explication intuitive trs
simple. Lorsqu'un client arrive la station i et trouve en arrivant n ia clients devant lui, il devra
attendre avant de commencer son propre service, que le client occupant le serveur au moment de
son arrive termine son service, et que les n ia 1 clients suivants effectuent un service complet.
La proprit sans mmoire de la loi de service (exponentielle) nous dit que le temps moyen
rsiduel de service est gal au temps moyen de service
1
. Avant de commencer son service, il
1
n ia
devra donc attendre un temps moyen
, correspondant au temps ncessaire pour que tous les
1
clients qui sont devant lui (au moment o il arrive) quittent la station. Pour obtenir son temps de
sjour dans la station i, il suffit alors d'y ajouter son propre temps moyen de service
1
. Si
1
Q ia N dnote le nombre moyen de clients vus par l'arrive d'un client dans la station i, le
temps moyen de sjour d'un client quelconque s'exprime alors :
La relation [3.35] rsulte du fait que dans un rseau forme produit, le nombre moyen de clients
vus par l'arrive d'un client dans la station i est gal au nombre moyen de clients dans la
station i ( tout instant, donc vus par un observateur extrieur), mais lorsqu'un client est retir
du rseau, c'est--dire lorsque la population du rseau est gale N -1 : Q ia N Q i N 1 .
Sevcik et Mitrani [SEV 79], ainsi que Lavenberg et Reiser [LAV 80], ont dmontr la validit de
ce rsultat pour tout rseau possdant une solution forme produit.
La deuxime relation-cl de l'algorithme MVA est tout simplement la loi de Little applique sur
l'ensemble du rseau. On place dans la bote noire de la loi de Little toutes les stations du
rseau et l'on considre comme boucle externe toutes les transitions d'entre dans une certaine
station de rfrence, soit une station i pour laquelle on a choisi de poser ei = 1 dans la rsolution
du systme [3.12]. Sur l'exemple de la figure 3.19, le rseau comporte M = 3 stations et la station
1 est choisie comme station de rfrence. Les paramtres de performances concerns par
l'application de la loi de Little sont alors : X(N), le dbit de rebouclage, qui par convention est le
dbit (d'entre ou de sortie) de la station de rfrence (soit pour l'exemple de la figure 3.19,
X1(N)) ; R(N), le temps moyen ncessaire un client pour effectuer un tour de boucle , qui
n'est autre que le temps moyen entre deux passages conscutifs d'un client la station de
rfrence et donc gal la somme des temps moyens de sjour chacune des stations, pondre
1
2
1
2
nii si 0 ni Ci
i n i
Cii si Ci ni N
Nous allons donc dcrire le calcul des constantes de normalisation et l'obtention des paramtres
de performances du rseau pour le cas plus gnral de stations taux de service dpendant de
l'tat (mme si la complexit de certains de ces algorithmes peut tre lgrement rduite dans le
cas multiserveurs [BRU 80]).
3.3.9. Extension au cas de stations taux de service dpendant de l'tat
Le thorme de Jackson s'tend galement au cas de stations ayant un taux de service dpendant
de l'tat. Soit pi(ni) le taux de service de la station i. Celui-ci dpend du nombre n i de clients
prsents la station i un instant donn.
PROPRIETE 3.6.- La probabilit stationnaire du rseau possde la forme produit suivante :
p n
M
1
f1 n i
G M, N i 1
f1 n i
ei
ni
ni
k
k 1
G M, N
f n
nE M , N i 1
Comme dans le cas monoserveur, il est possible d'obtenir une relation de rcurrence simple
reliant les constantes de normalisation et permettant d'viter un calcul direct [BRU 80, BUZ 73] :
Cette relation de rcurrence permet de calculer facilement toutes les constantes de normalisation
G(m, n) pour m = 1, ... , M et n = 0, ... , N en partant des conditions initiales :
Cette relation de rcurrence extrmement simple permet de calculer toutes les constantes de
normalisation complmentaires Gi(M - 1, n) pour n = 0, ... , N en partant des conditions initiales
Les paramtres de performances de chaque station s'en dduisent alors immdiatement [BAY
00] :
Dans le cas de taux de service dpendants de l'tat, l'algorithme de convolution est donc en
O(MN2).
Algorithme 3.3. Algorithme de convolution pour des stations taux dpendant de l'tat
3.3.10. Algorithme MVA taux dpendant de l'tat
L'algorithme MVA s'tend galement au cas de stations ayant un taux de service dpendant de
l'tat [REI 80, REI 81]. Les relations permettant d'obtenir les probabilits marginales et les
paramtres de performances moyens du rseau contenant N clients, s'expriment en fonction des
constantes de normalisation de la faon suivante :
L'algorithme repose toujours sur une relation rcursive. Celle-ci exprime le temps moyen de
sjour d'un client la station i, dans le rseau contenant N clients, en fonction des probabilits
marginales du rseau contenant N - 1 clients :
Compare son quivalent monoserveur [3.35], cette relation de rcurrence entrane, outre la
perte de l'explication intuitive associe, la ncessit de calculer les probabilits marginales.
Heureusement, on peut facilement obtenir une quation de rcurrence simple reliant ces
probabilits [BAY 00, REI 80, REI 81]
La relation [3.48] ne peut tre utilise pour calculer pi(0, N), cette probabilit s'obtenant bien
videmment partir de la condition de normalisation
Notons cependant que l'utilisation de cette relation peut engendrer des problmes d'instabilit
numrique [CHA 80]. Une extension stable de l'algorithme MVA (mais qui en augmente la
complexit) a t dveloppe par Reiser [REI 81]. Pour le reste, le principe de l'algorithme est
conserv. Notons que sa complexit est la mme que celle de l'algorithme de convolution ( taux
de service dpendants de l'tat), soit O(MN2).
Finalement, chaque station peut tre de quatre types diffrents : FIFO, PS, IS ou LCFS-PR (voir
le tableau 3.2). A chaque type correspond une discipline de service particulire laquelle est
associe une loi de service. On constate que seule la discipline FIFO (premier arriv, premier
servi) impose une restriction quant la loi de service autorise, puisque celle-ci doit tre
exponentielle et, de plus, indpendante de la classe du client en service. Cela signifie que tous les
clients, quelles que soient leurs classes, auront un temps de service distribu selon une loi
exponentielle de taux i. Les trois autres disciplines de service, PS (temps partag), IS (nombre
infini de serveurs) et LCFS-PR (dernier arriv, premier servi, avec premption du service),
n'imposent comme seule contrainte sur la loi de service, que la transforme de Laplace associe
cette dernire puisse s'exprimer sous forme d'une fraction rationnelle. Or, nous avons vu au
chapitre 2 que cela n'est pas limitatif puisque toute distribution peut, en thorie, tre approche
d'aussi prs que l'on veut par une telle loi (notons galement que toute loi PH possde bien une
transforme de Laplace rationnelle). Les services successifs peuvent donc tre distribus selon
des lois gnrales qui doivent cependant tre indpendantes les unes des autres et identiquement
distribues (variables iid). De plus, chaque classe de clients pourra avoir une distribution
spcifique. Par exemple, le service des clients de classe l pourra tre distribu selon une loi
exponentielle de taux gll, tandis que le service des clients de classe 2 sera distribu selon une loi
de Erlang-2 de taux i2.
Type
Discipline de service
Lois de service
2
3
PS (temps partag)
IS (nombre de serveurs infinis)
1
ir
Dans un rseau multiclasse purement ouvert (O = {1, ... , R}), toutes les classes de clients sont
des classes ouvertes. On connat alors le taux moyen d'arrive des clients de classe r une station
i donne :
Dans cette expression, le taux de visite eir est bien entendu nul si la classe r ne visite pas la station
i. Le taux moyen d'arrive des clients, toutes classes confondues, la station i est donc :
Un client de classe r induira chaque passage la station i une charge de travail moyenne
1
.
ir
Un client d'une classe quelconque induira donc chaque passage la station i une charge de
R
q ir
travail moyenne
. On dfinit alors le taux moyen de service de la station i comme
r 1 ir
l'inverse de cette quantit :
Prcisons que la notation pi est cohrente avec celle utilise dans le cas d'une station de type 1. En
effet, pour une station FIFO, la loi de service doit tre exponentielle et indpendante de la classe
du client en service. Donc ir = is pour toutes classes r et s qui visitent la station i. En prenant en
compte cette galit dans la relation [3.54], on a bien i = ir pour tout r.
La condition de stabilit exprime alors, comme dans le cas monoclasse, que le taux moyen
d'arrive des clients la station i (quelles que soient leurs classes) doit tre infrieur au taux
moyen de service :
Condition de stabilit du systme : i < i
i = 1, ... , M
A partir de la relation [3.54], on en dduit immdiatement que le rseau est stable si pour toute
station i :
monoclasse, il n'y a bien sr aucun problme de stabilit puisque le nombre de clients de chaque
classe chaque station est limit Nr le nombre total de clients de classe r dans le rseau.
3.4.2.3. Rseaux mixtes
Pour un rseau mixte, ce sont bien entendu les classes ouvertes qui vont pouvoir poser un
problme de stabilit. Celles-ci se partagent, en gnral, les mmes stations que les classes
fermes. Cependant, lorsque l'on atteint les limites de la stabilit du systme, le nombre de clients
prsents la station la plus limitative (en termes de stabilit), tend vers l'infini. Ce sont bien
entendu les clients des classes ouvertes qui s'accumulent cette station. On comprend alors que la
charge de travail induite par les clients des classes fermes, cette mme station, tend vers une
quantit ngligeable. La condition de stabilit du systme est donc naturellement lie aux seules
classes ouvertes. Elle s'exprime de la mme faon que dans le cas d'un rseau purement ouvert,
les taux i et i s'obtenant partir des relations [3.52] et [3.54] en n'effectuant les sommations
que sur l'ensemble des classes ouvertes (r O). Le rseau est donc stable si :
e ir e jr Pji r
i = 1, , M
j1
[3.56]
Mais, nouveau, ce systme admet une infinit de solutions et les e i, ne sont dfinis qu' une
constante prs. Il suffit alors de choisir une station de rfrence, une station j visite par les
clients de classe r et de poser ejr = 1. Les autres taux de visite se dduisent alors sans ambigut.
Sur l'exemple de la figure 3.20, pour la classe 1, si p 01 1 = p02 1 =
1
, les taux de visite des clients
2
1
2
Pour la classe 2, si p 30 2 p 31 2
1
, les taux de visite des clients de classe 2 se calculent
2
de rfrence pour obtenir e23 = e43 = 1 (et bien sr e13 = e33 -= 0).
3.4.4. Analyse du rgime permanent
La drivation des quations en rgime permanent et l'obtention de leur solution sont beaucoup
plus compliques que dans le cas monoclasse. Elles dpendent, de plus, du type des stations qui
constituent le rseau. Nous ne donnerons donc pas ici les quations en rgime stationnaire, ni les
(nombreuses) tapes ncessaires pour parvenir au rsultat du thorme BCMP [BAS 75] et
noncerons directement ce thorme (proprit 3.7).
Notons :
- nir(t) : le nombre de clients de classe r prsents la station i tout instant t ;
- ni(t) = (nit(t), ... , niR(t)) : le vecteur d'tat de la station i tout instant t ;
- n(t) = (n1(t), ... , nM(t)) : le vecteur d'tat du rseau tout instant t.
PROPRIETE 3.7.- La probabilit stationnaire du rseau possde la forme produit suivante
classes. Lorsqu'une station donne est de type 1 (FIFO), l'ordre de classement des clients dans le
buffer, apparaissant ncessairement dans les quations, disparat de la solution. Pour une station
de type 2, 3 ou 4 (PS, IS ou LCFS-PR), c'est l'tage de la loi de service (reprsente sous forme
d'une loi PH) qui disparat de la solution. De plus, pour ce type de stations, la solution est
insensible la distribution de service des diffrentes classes de clients. Une station PS ayant des
lois de service Erlang-2 aura donc exactement le mme impact sur la solution stationnaire qu'une
station PS ayant des lois de service exponentielles (de mme moyenne). Notons finalement la
prsence dans l'expression de la solution d'une constante de normalisation G, qui est telle que les
probabilits se somment 1, ainsi que d'un terme A(n), qui est le seul faire apparatre les taux
d'arrive des clients des classes ouvertes.
L'ensemble E(M, N) de tous les tats possibles du systme est :
o N =(N1, ... , NR) est le vecteur de population des classes fermes du rseau. Notons que mme si
le vecteur N contient R composantes, seules les composantes correspondant aux classes fermes
(r F) sont significatives. On peut, par pure convention, considrer que N r = pour toute classe
r ouverte (r O). Ds l'instant o le rseau contient des classes ouvertes (O ), l'ensemble
E(M, N) des tats du systme est donc infini.
On en dduit l'expression de la constante de normalisation (cette constante, rappelons-le, tant
telle que la somme des probabilits de tous les tats possibles du systme est gale 1)
Plus encore que dans le cas monoclasse, la prsence de cette constante de normalisation rend trs
difficile l'application du thorme BCMP dont l'nonc est pourtant fort simple. L'obtention des
paramtres de performance du systme devra en effet passer par le calcul de cette constante. Or,
mme si le rseau est purement ferm (donc si l'ensemble des tats E(M, N) est fini), et de la
mme faon qu'en monoclasse (ferm), un calcul direct conduirait des sommations multiples
dont la complexit est exponentielle, et en pratique bien plus importante encore que celle d'un
rseau monoclasse. Nous verrons par la suite, qu'il existe heureusement des cas pour lesquels le
calcul de la constante de normalisation peut tre simplifi, ou tout simplement vit.
Dans le cas monoclasse, nous avons vu qu'un rseau ouvert s'analysait beaucoup plus simplement
qu'un rseau ferm. Le thorme de Jackson (ouvert) nous prouvait en effet l'quivalence du
rseau avec un ensemble de files M/M/1. Existe-t-il une telle simplification dans le cas d'un
rseau multiclasse purement ouvert? C'est la question laquelle nous allons rpondre au
paragraphe 3.4.5.
3.4.5. Rseau purement ouvert
Si toutes les classes de clients sont des classes ouvertes : O = {l, ... , R}, il existe une premire
simplification du thorme BCMP, applicable ds l'instant o l'on s'intresse uniquement au
nombre total de clients prsents aux diffrentes stations du rseau [BAS 75, BAY 00]. Les
probabilits stationnaires ainsi que les paramtres moyens de performances seront calculs toutes
classes confondues. On parlera de probabilits marginales (vis--vis des classes) et de
du thorme BCMP.
Il n'est finalement pas inutile de noter que les probabilits marginales de chaque station se
dduisent immdiatement de la proprit 3.8, puisque p i(ni) n'est rien d'autre que la probabilit
marginale pour que la station i contienne n i clients (quelles que soient leurs classes). Pour une
station i de type 1, 2 ou 4, les probabilits marginales p i(ni) possdent une expression strictement
identique celle d'une file M/M/1 (ayant un taux d'arrive i et un taux de service i), alors que
pour une station i de type 3, les probabilits marginales pi(ni) sont celles d'une file M/M/oc (voir
chapitre 2). On peut alors calculer les paramtres de performances marginaux toutes classes
confondues) pour chaque station partir des relations monoclasses [3.4] [3.6] (les relations
[3.5] et [3.6] devant tre remplaces par les relations de la file M/M/ dans le cas d'une station i
de type 3) ou pour le rseau tout entier partir des relations [3.7] [3.9].
On peut maintenant s'intresser aux probabilits stationnaires et noncer la proprit 3.9. Celle-ci
constitue la deuxime simplification du thorme BCMP pour des rseaux purement ouverts et
peut tre considre comme la gnralisation du thorme de Jackon ouvert monoclasse.
PROPRIETE 3.9.- La probabilit stationnaire du rseau possde la forme produit suivante :
Il est trs important de noter que le terme pi(ni) apparaissant dans cette proprit n'est autre que la
probabilit marginale pour que la station i soit dans l'tat n i, et donc pour qu'elle comporte ni,
clients de classe r, pour toute classe r visitant la station i, et ce, indpendamment du nombre de
clients prsents aux autres stations.
Comme dans le cas monoclasse (proprit 3.1), la probabilit stationnaire du rseau est gale au
produit des probabilits marginales pi(ni) de chacune des stations tudies en isolation. On peut
en effet vrifier que pi(ni) est la probabilit stationnaire d'une file simple multiclasse ayant la
mme discipline et la mme distribution de service que la station i et soumise un flux d'arrive
poissonien des clients de classe r, de taux ir = eirr, pour toute classe r visitant la station i. A
nouveau, tout se passe donc comme si les flux d'arrive aux diffrentes stations du rseau taient
poissoniens alors qu'en ralit ces flux ne le sont pas (et ne sont mme pas, dans le cas gnral
d'un rseau avec rebouclages, des processus de renouvellement).
3.4.6. Rseau purement ferm
Toutes les classes de clients sont maintenant des classes fermes : F = { 1, ... , R}. Rcrivons,
dans ce cas, l'expression de la constante de normalisation en y faisant apparatre explicitement la
dpendance avec le nombre M de stations et le vecteur N = (N1, ... , NR) de population du rseau :
Comme dans le cas monoclasse, on peut tablir une relation de rcurrence permettant d'viter un
calcul direct de la constante de normalisation [BAY 00] :
Cette relation de rcurrence permet, en thorie, de calculer toutes les constantes de normalisation
G(m, n) pour m = 1, ... , M et n = (0, ... , 0), ... , N en partant des conditions initiales :
G(1, n) = fl(n)
G(m,(0,...,0))=1
m = 1,...,M
complexit O MR
r 1
N r
l'expression [3.60]. Cette simplification n'est toutefois possible que si les stations du rseau ne
sont pas de type 3. Si la station M est de type 1, 2 ou 4, l'expression [3.60] peut en effet se
simplifier de la faon suivante [BAY 001
Bien entendu, les relations [3.60] et [3.61] restent valables si l'on remplace dans lexpression des
constantes de normalisation, M par m (pour tout m = 2, ... , M) et N par n (pour tout n = (0, ... ,
0), ... , N), les dmonstrations tant strictement dentiques. Cette remarque permet d'aboutir
l'algorithme de calcul des constantes de normalisation suivant.
Initialisation :
O MR N r
r 1
En dfinissant Ei(M, k) l'ensemble de tous les vecteurs d'tat n de E(M, N) qui sont tels que la
somme des clients de classe r dans toutes les stations autres que la station i :
est gale kr pour toutes les classes r = 1, ... , R, (et donc tels que le nombre n i, de clients de
classe r dans la station i, est gal Nr - kr) :
G i M 1, k
f n
M
nE , M , k j1
j i
on obtient immdiatement
Si la station i est de type 3, une manipulation simple de la relation [3.60], nous donne de la mme
manire
Il est noter que, dans le cas d'une station i de type 3, l'expression [3.66] peut avantageusement
tre remplace par :
Le taux d'utilisation est un paramtre qui n'a de sens que pour une station de type 1, 2 ou 4. On
dfinit alors Ulr comme la proportion de temps que le serveur de la station i passe servir des
clients de classe r. U;r se calcule partir des constantes de normalisation de la faon suivante :
Il n'est finalement pas inutile de rappeler que les paramtres de performances marginaux, toutes
classes confondues, s'obtiennent directement par sommation sur les paramtres de performances,
classe par classe
pas plus d'une station IS (et que celle-ci, si elle existe, porte le numro 1).
Algorithme 3.6. Algorithme de convolution pour les rseaux BCMP calcul des performances
moyennes
3.4.7. Algorithme MVA pour les rseaux purement ferms
L'algorithme MVA prsent en dtail dans le cadre des rseaux monoclasses ferms peut tre
gnralis au cas d'un rseau multiclasse purement ferm [BRU 80, REI 79, REI 80, SCH 91]. Le
principe de base reste le mme puisque l'algorithme consiste exprimer les paramtres de
performances du rseau ayant une population N = (N 1, ..., NR), en fonction de ceux du mme
rseau, mais contenant un client de classe r en moins (et donc ayant une population N - lr =
(N1, ..., Nr 1, Nr - 1, Nr+ 1, ..., NR)). Nous ne ferons, dans ce paragraphe, qu'une prsentation
succincte de cet algorithme en nous concentrant essentiellement sur la relation-cl autorisant la
rcursivit. Nous renvoyons le lecteur vers la description monoclasse de l'algorithme (chapitre 2)
ainsi que vers [BAY 00] pour de plus amples explications sur le fonctionnement rcursif de
l'algorithme et pour plus d'interprtations intuitives.
Les relations donnant les paramtres de performances doivent tre rcrites, en y faisant
clairement apparatre la population du rseau :
La relation la plus importante de l'algorithme MVA multiclasse est celle exprimant le temps
moyen de sjour d'un client de classe r la station i (de type 1, 2 ou 4), dans le rseau ayant une
population N, en fonction du nombre moyen de clients prsents la station i, toutes classes
confondues, dans le rseau ayant une population N lr [BAY 00] :
Si la station i est de type 3, le temps moyen de sjour d'un client de classe r cette station se
rduit bien videmment son temps moyen de service :
Les autres relations impliques dans l'algorithme MVA sont, comme dans le cas monoclasse,
fondes sur l'application de la loi de Little, soit au rseau tout entier, soit une station
particulire. La seule diffrence avec ce qui a t dcrit dans le cas monoclasse est que la loi de
Little doit tre applique classe par classe. La loi de Little applique aux seuls clients de classe r
au travers de l'ensemble du rseau nous donne alors l'quivalent multiclasse de la relation [3.36] :
L'algorithme MVA possde la mme complexit que l'algorithme de convolution, condition que
R
le rseau ne comporte pas plus d'une station de type 3, soit O MR N r . Il possde donc
r 1
l'avantage sur l'algorithme de convolution ds l'instant o le rseau comporte plus d'une station de
type 3.
Soit :
La forme la plus gnrale de stations taux de service dpendant de l'tat concerne une station
dont le taux moyen de service ir, peut dpendre de la classe du client en service ( condition que
la station ne soit pas de type 1), mais doit tre multipli par un facteur correctif x i(ni), o xi(ni) est
une fonction arbitraire (strictement positive) de ni, le nombre total de clients prsents dans la
station. Ainsi, si un instant donn, la station i contient n i clients (quelles que soient leurs
classes) et qu'un client de classe r est en service, celui-ci terminera son service au bout d'un temps
1
exponentiel de moyenne
( condition, bien sr, qu'aucun autre client n'arrive dans la
x i n i ir
station). Une station i multiserveur comportant Ci serveurs identiques est un cas particulier d'une
telle station pour laquelle :
Une station de type 3 (IS) peut galement tre considre comme un cas particulier d'une station
taux dpendant de l'tat pour laquelle :
xi(ni) = ni
pour tout ni
1
La proprit 3.7 s'tend en multipliant les termes fi(ni) par
n1
x k
, soit :
k 1
Il existe galement plusieurs extensions du thorme BCMP aux cas de taux d'arrive dpendant
de l'tat (pour un rseau ouvert ou mixte). Nous n'en prsenterons ici qu'une seule (et renvoyons
le lecteur vers [BAY 00] pour plus de prcisions sur ces extensions). Le taux d'arrive des clients
d'une classe donne dans le rseau peut dpendre du nombre total de clients de cette classe,
prsents un instant donn dans le rseau. Soit r(Kr) le taux d'arrive des clients de classe r dans
le rseau. Il dpend du nombre total de clients de classe r prsents dans l'ensemble du rseau un
M
ir
K r 1
k , soit :
r
k 0
Dans le cas d'un rseau purement ouvert, il n'existe pas de simplification du thorme BCMP
similaire celle prsente au paragraphe 3.3.5, lorsque les taux d'arrive sont dpendants de
l'tat. Cela signifie que mme si l'on ne s'intresse qu'aux performances marginales du rseau
(toutes classes confondues), il n'existe pas de rsultat simple, tel celui de la proprit 3.8, ds
l'instant o les taux d'arrive des clients ont une dpendance quelconque vis--vis de l'tat du
systme. Il faudra donc en passer par des manipulations complexes de l'expression multiclasse de
la forme produit.
En revanche, il existe des extensions des rsultats prsents prcdemment dans le cas de stations
ayant des taux de service dpendant de l'tat, la fois dans le cas d'un rseau purement ouvert et
d'un rseau purement ferm.
3.4.8. 1. Rseaux purement ouverts
On ne s'intresse plus aux diffrentes classes de clients, mais uniquement au nombre total de
clients prsents chaque station du rseau. La proprit 3.9 peut tre tendue au cas de stations
taux de service dpendant de l'tat (selon la premire forme). Pour chaque station i ayant un taux
de service dpendant de l'tat, il suffit de remplacer dans l'expression de la probabilit
stationnaire marginale p(n1, ... , nM), le terme pi(ni) correspondant par :
pi n i pi 0
ni
ni
k
k 1
[3.83]
pi(ni) est la probabilit marginale de la station i (probabilit pour que la station contienne ni
clients quelles que soient leurs classes et quel que soit le nombre de clients prsents aux autres
stations), et peut tre considre comme la probabilit d'une file monoclasse ayant un taux de
service i(ni) dpendant de l'tat et dans laquelle les clients arrivent selon un processus poissonien
de taux i.
3.4.8.2. Rseaux purement, ferms (algorithme de convolution)
L'algorithme de convolution peut tre directement tendu afin de prendre en compte des stations
taux de service dpendant de l'tat [BRU 80]. En fait, tout ce qui a t prsent au paragraphe
3.3.6 s'applique immdiatement, en prenant soin de traiter une station ayant un taux de service
dpendant de l'tat au mme titre qu'une station de type 3 (IS). Ainsi, si une station i donne (de
type 1, 2 ou 4) possde un taux de service dpendant de l'tat global ni de la station, il suffit de
remplacer dans toutes les relations relatives une station de type 3, le terme fi(ni), par celui
provenant de l'expression [3.80] ou [3.81]. Les constantes de normalisation et les constantes de
normalisation complmentaires s'expriment partir des relations [3.60] et [3.64]. Les paramtres
de performances s'expriment alors exactement de la mme faon (relations [3.65] [3.67]). Seule
l'expression du taux d'utilisation (relation [3.69]) n'est plus valable. Uir doit alors tre calcul
partir de sa dfinition (proportion de temps pass par le serveur de la station i traiter des clients
de classe r) :
Dans les algorithmes, une station i taux de service dpendant de l'tat doit tre traite de la
mme faon qu'une station de type 3 (avec bien sr un terme fi(ni) diffrent, donn par la relation
[3.80] ou [3.81]). Si toutes les stations sont taux dpendant de l'tat, la complexit de
2
N r
.
r 1
R
Algorithme 3.8. Algorithme de convolution pour les rseaux BCMP taux dpendant de l'tat
3.4.8.3. Rseaux purement ferms (algorithme MVA)
L'algorithme MVA multiclasse s'tend galement au cas de stations taux de service dpendant
de l'tat [BRU 80, REI 79, REI 80, SCH 91].
La relation-cl de l'algorithme (relation [3.77]) qui exprimait le temps moyen de sjour d'un
client de classe r la station i (de type 1, 2 ou 4), n'est alors plus valable. Elle doit tre remplace
par la relation suivante [BAY 00] :
est le nombre total de clients dans le systme et p i(k, N) est la probabilit marginale pour que la
station i contienne k clients, quelles que soient leurs classes, dans ur rseau ayant une population
N.
Les probabilits marginales apparaissant dans cette expression se calculent l'aide de la relation
rcursive suivante :
Algorithme 3.9. Algorithme MVA pour les rseaux BCMP taux dpendant de l'tat
3.5. Bibliographie
[BAS 75] BASKETT F., CHANDY K.M., MUNTZ R.R., PALACios-GoMEZ F., Open, Closed
and Mixed networks of queues with diffrent classes of customers , J. ACM, vol. 22, n 2, p.
248-260, 1975.
[BAY 91] BAYNAT B., Une Mthode Approximative d'Analyse des Rseaux de Files d'Attente
Ferms Multiclasses, Thse de l'universit Pierre et Marie Curie, Paris 6, 1991.
[BAY 00] BAYNAT B., Thorie des files d'attente, Herms, Paris, 2000.
[BRU 80] BRUEL S., BALBO G., Computational Algorithms for Closed Queueing Networks ,
dans P.J. Denning (dir.), Operating and progrmmning systems sertes, Elsevier, North-Holland,
Chapitre 4
Les rseaux de Petri tendus et mthodologie pour l'analyse de
performances
4.1. Introduction
L'volution technologique de ces dernires annes a induit un fort dveloppement d'applications
informatiques distribues qui ncessitent des architectures de communication labores. Ces
architectures, qui ont un rle fondamental pour assurer le bon fonctionnement des applications,
font appel des mcanismes nombreux et complexes qu'il est essentiel de pouvoir vrifier et
valuer, que ce soit lors de la conception de nouveaux systmes ou de l'analyse de systmes
existants.
Cette activit de validation ncessite l'utilisation de techniques ou modles formels qui
permettent, tout d'abord, de reprsenter les diffrents mcanismes et, ensuite, de proposer une
mthodologie permettant d'analyser la fois leur comportement et les consquences de ce
comportement. La formalisation des architectures de communication demande des modles
ayant, en particulier, les attributs suivants :
- expression du paralllisme, de la synchronisation, du partage des ressources, des interactions ;
- expression des caractristiques temporelles et stochastiques associes aux mcanismes ;
- possibilit d'analyse qualitative (vrification de la logique des mcanismes non temporels et/ou
temporels) ;
- possibilit d'analyse quantitative (valuation de performances fonctionnelles et/ou de sret de
fonctionnement).
L'approche prsente ici repose sur le formalisme rseaux de Petri qui offre un cadre bien adapt
et progressif pour la reprsentation et l'analyse des communications. Plus prcisment, nous
considrons trois modles dont les pouvoirs d'expressions et d'analyse vont croissant, ce qui
permet donc des tudes de plus en plus compltes :
- le premier modle est le modle rseaux de Petri places transitions arcs inhibiteurs (modle
RdP) ,
- le deuxime modle est une extension temporelle du modle RdP (c'est le modle rseaux de
Petri temporels : RdPT) ,
- le troisime modle est une extension stochastique du modle RdPT (c'est le modle rseaux de
Petri temporels stochastiques : RdPTS).
L'objet de ce chapitre est donc de prsenter ces modles, d'expliciter la mthodologie suivie lors
de leur utilisation pour l'analyse de comportement et de performances des architectures de
communication et d'exposer des exemples d'application montrant l'intrt de ces modles et de la
mthodologie. En consquence, ce chapitre est structur en quatre parties :
- la premire partie concerne la prsentation de ces modles, d'une part, au niveau de leur pouvoir
d'expression et, d'autre part, au niveau de leurs possibilits de validation, ce qui permet de dfinir
une mthodologie pour l'analyse ;
- la deuxime partie dveloppe un exemple d'application de la mthodologie en considrant le
modle RdPTS (modle qui permet une tude complte de performances) ,
- la troisime partie prsente un bilan des expriences acquises avec les diffrents formalismes ;
- et enfin la quatrime partie propose une synthse de l'utilisation de ces techniques dans l'optique
d'une contribution l'valuation de la qualit de service des systmes communicants.
4.2. Les modles
Cette section introduit le modle RdP (pour une prsentation dtaille, voir les ouvrages de
Michel Diaz sur les rseaux de Petri : Les rseaux de Petri . modles fondamentaux, et,
Vrification et mise en oeuvre des rseaux de Petri, dans la collection Trait IC2 , srie
Informatique et systmes d'information des ditions Herms, [DIA 01, DIA 03]).
4.2.1. Le modle RdP
4.2.1.1. Elments de base
Le comportement d'un systme peut tre vu en termes de conditions et actions (ou vnements) :
une action est ralise quand un certain nombre de conditions (conditions d'entre de l'action)
existent ; la ralisation d'une action induit la gnration de nouvelles conditions ( conditions de
sortie de l'action) qui, elles-mmes, vont tre les conditions d'entre d'une autre action... et
ainsi de suite.
Le modle rseau de Petri places-transitions est trs bien adapt pour reprsenter cette vue
comportementale d'un systme. Un rseau de Petri places-transitions est dfini comme un
ensemble de places (elles reprsentent des conditions), un ensemble de transitions (elles
reprsentent des actions) et un ensemble d'arcs nots par des flches, certains arcs joignant les
places aux transitions (ces places et ces arcs sont appels respectivement les places et arcs
d'entre des transitions) et d'autres arcs joignant les transitions aux places (ces places et ces arcs
sont appels respectivement les places et arcs de sortie des transitions).
A tout arc est associ un poids (nombre entier). L'existence des conditions reprsentes par une
place est matrialise par la prsence de jetons dans cette place. Une distribution de jetons dans
les places dfinit un marquage (tat).
Lorsque toutes les conditions d'entre ncessaires pour raliser une action existent (en termes de
rseau de Petri places-transitions, on a un marquage o le nombre de jetons dans les places
d'entres de la transition, reprsentant l'action, est suprieur ou gal aux poids des arcs d'entre),
alors on ralise cette action (on dit que l'on tire la transition, c'est--dire on enlve, des places
d'entre de la transition, un nombre de jetons gal aux poids des arcs d'entre et on met dans les
places de sortie un nombre de jetons gal aux poids des arcs de sortie). Ce dernier aspect traduit
l'obtention de nouvelles conditions (on obtient un nouveau marquage). Le tir (franchissement) de
transition est l'lment-cl du comportement dynamique du modle. Le tir d'une transition
s'effectue de faon indivisible. Notons qu' l'initialisation du modle, il faut spcifier une
distribution de jetons dans les places (le marquage initial).
Cette prsentation informelle avait pour but de donner les intuitions du modle RdP que nous
prsentons formellement maintenant.
4.2.1.2. Rseaux de Petri places-transitions : prsentation formelle
DEFINITION.- Un rseau de Petri places-transitions est dfini par le tuple R = {P, T, Pre, Post},
avec :
- P = { pl, ... , pn }, un ensemble de places,
dont les noeuds sont des marquages et les arcs des relations entre marquages, dfini par : Mo G
et si M G et M - t M alors M G et l'arc (M',M") G va de M M.
Ainsi, chaque arc du G est tiquet par la transition dont le tir transforme le marquage de dpart
de l'arc en marquage d'arrive de l'arc.
4.2.1.4. Pouvoir d'expression
Les principales consquences de la dfinition du tir des transitions dans les rseaux de Petri
places-transitions sont que ce modle permet d'exprimer les composantes de base des
comportements distribus, telles que :
- la causalit, qui indique qu'un vnement prcde toujours un autre vnement, traduisible par
un rseau dans lequel le tir de t prcde toujours le tir de t' ;
- le paralllisme, en considrant un rseau dans lequel deux transitions t et t' sont sensibilises,
donc potentiellement tirables en parallle ;
- l'attente, survenant lors du manque de jetons dans les places, c'est--dire l'attente d'tats partiels
donns ou de ressources prcises ;
- l'accroissement et la diminution du paralllisme, respectivement par l'augmentation et la
diminution des jetons aprs un tir, la premire proprit en remarquant qu'un accroissement de
jetons peut conduire des fonctionnements spcifiques pour chacun d'eux
- le non-dterminisme, squentiel ou parallle, qui dnote une possibilit multiple de tir, donc des
conditions qui imposent l'un des tirs aux dtriments des autres ;
- et les conflits, pour lesquels le tir d'une transition tirable parmi d'autres supprime les conditions
de tir d'une ou de plusieurs des autres transitions tirables avant le tir.
4.2.1.5. Remarques
4.2.1.5.1. Notion de rseau de Petri places-transitions avec des arcs inhibiteurs (modle RdP)
Le modle rseau de Petri places-transitions ne permet pas de faire le test zro (s'il y a zro
jeton dans une place d'entre d'une transition, on ne peut pas tirer cette transition). Afin de
permettre ce test, la notion d'arc inhibiteur a t introduite. Un arc inhibiteur est un arc d'entre
d'une transition : un arc non flch et qui se termine par un rond sur la transition. La transition est
tirable si la place correspondante ne possde aucun jeton. Avec ces arcs, les matrices Pre et C
perdent leur sens.
4.2.1.5.2. Notion de RdP tiquet
Un RdP tiquet est une RdP (avec ou sans arcs inhibiteurs) dans lequel des tiquettes sont
associes aux transitions. Les tiquettes sont de la forme condition/action et permettent
d'exprimer les relations du rseau de Petri avec un environnement. Par exemple, la condition peut
tre la rception d'un message X (not ?X) et l'action peut tre l'envoi d'un message X (not !X).
Ce formalisme est trs utilis pour modliser des entits de protocoles et des milieux de
transmission, et galement pour faire de la composition de modles (synchronisation entre
transitions tiquetes avec ?X et !X).
4.2.1.6. Exemple
4.2.1.6.1. Modle RdP
Considrons un protocole de transfert de donnes en mode bidirectionnel l'alternat (envoi d'un
message de donnes (not DT) par une entit source de donnes - envoi (suite la rception de
DT) d'un accus de rception (not ACK) par une entit puits de donnes - le message DT peut se
perdre et on a un mcanisme de time-out dans l'entit source qui contrle cette situation - le
message ACK ne peut pas tre perdu).
Le modle RdP de ce protocole est donn sur la figure 4.1.
Les places P1 et P3 reprsentent l'entit source respectivement dans l'tat prt envoyer DT et
dans l'tat attente d'ACK . La transition t3 reprsente l'envoi de DT (le message DT est
reprsent par la place P2). La transition t8 reprsente la rinitialisation de l'entit source suite
la rception du message ACK (place P4).
La transition t2 reprsente le transfert du message DT de l'entit Source l'entit Puits. La
transition t3 visualise la perte (place P9) et la transition t4 visualise la dtection, dans l'tat
d'attente, de la perte, et le renvoi du message DT avec le retour dans l'tat d'attente.
I0 : T Q Q
t i a i , b i avec 0 a i b i , i1 i n , n = Card T
La fonction Io dfinit les intervalles temporels initiaux pour les transitions du rseau de Petri.
Le modle RdPT est donc un modle qui, au pouvoir d'expression du modle RdP, ajoute
l'expression de contraintes temporelles. On peut remarquer que le modle RdP est le modle
RdPT dans lequel : ti, ai, = 0, bi = (c'est--dire on n'a plus de contrainte temporelle).
DEFINITION.- Un tat S est un couple S = (M,I) o M est le marquage du modle RdP sousjacent et I est la fonction intervalle de temps qui associe, chaque transition sensibilise dans le
marquage M, l'intervalle de temps pendant lequel elle est autorise tre tire.
DEFINITION.- A partir d'un tat S = (M,I), une transition t est tirable un instant si et
seulement si les conditions suivantes sont satisfaites :
i) la transition t est sensibilise dans le marquage M ;
ii) le temps est compris entre le EFT de la transition t et le plus petit des LFT (smallest LFT :
sLFT) de toutes les transitions sensibilises dans le marquage M.
DEFINITION.- Le nouvel tat S, atteint partir de l'tat S en tirant la transition t l'instant est
calcul en utilisant l'algorithme suivant :
i) le nouveau marquage M' est dfini comme pour le modle RdP sous-jacent ;
ii) la nouvelle fonction intervalle de tir I est dfinie comme suit : pour toute transition t i
sensibilise dans le marquage prcdent M et toujours sensibilise dans le marquage M
(transition ti en parallle avec la transition t) : Ii = [max(0, EFTi - ), LFTi-] ; toute transition ti
nouvellement sensibilise est associ son intervalle de tir spcifi initialement lors de la
dfinition du modle.
Ces caractristiques de la nouvelle fonction intervalle de tir l' traduisent la considration d'une
mmoire temporelle du type de la dernire sensibilisation (voir modle RdPTS au paragraphe
4.2.3).
4.2.2.3. Comportement dynamique
Le comportement dynamique du modle RdPT est reprsent par un graphe d'tats bas sur le
triptyque (tat/tir de transition/tat suivant). Il est important de remarquer (voir dernire
dfinition du paragraphe 4.2.2.2) que, pour toute transition ti en parallle avec la transition t, l'tat
S conserve la trace du tir de t ( travers le paramtre ) qui peut prendre sur l'intervalle continu
[EFTi, LFT] un nombre infini de valeurs donnant donc un nombre infini d'tats suivants (tats
avec le mme marquage, mais avec des fonctions intervalles de temps diffrentes). C'est pourquoi
le concept de classe d'tat [BER 83, BER 91] a t introduit afin de reprsenter le comportement
dynamique du modle RdPT.
DEFINITION.- Une classe d'tat C est un couple : C = (M,D) o M est un marquage et D est la
fonction domaine de tir (c'est--dire l'union des fonctions intervalles de tir). Le domaine de tir
peut tre exprim comme l'ensemble des solutions de systmes d'inquations linaires dont les
expressions canoniques sont les suivantes (appelons aussi pour simplifier ti,t i.., les instants de tir
des transitions) :
sont respectivement la plus petite et la plus grande valeur possible de l'instant de tir de t i ; tj est la
plus grande diffrence possible entre les instants de tir ti et t~.
4.2.2.4. Exemple 4.2.2.4.1. Modle RdPT
graphe qui ramne la classe 2 mais o la transition t 4 n'est jamais tire) que nous n'avons pas
reprsente pour des raisons de place. C'est partir de ces graphes que des analyses peuvent tre
faites.
f x dx 1
i
ai
On peut avoir les associations suivantes entre les intervalles de temps Ii et les densits de
probabilit fi (x) :
- intervalle Ii tel que ai = 0 et bi = : une densit de probabilit exponentielle de taux i permet de
reprsenter des phnomnes d'arrives d'vnements sans mmoire temporelle ;
- intervalle Ii tel que ai = bi = d : on a une densit de probabilit dterministe d ( fi(x) = (x - d))
o d peut tre diffrent de 0 (reprsentation d'actions qui ont une dure constante) ou gal 0
(reprsentation d'actions immdiates et, dans ce cas, la transition est encore appele une transition
immdiate) ;
- intervalle Ii tel que ai bi et bi fini (ceci permet de reprsenter des actions dont la dure fluctue
entre deux bornes et on peut ainsi modliser un gigue) :
- on peut avoir une densit de probabilit uniforme
fi(x) = ci pour a x b, et fi (x) = 0 pour x [ai, bi ]
- on peut avoir une densit de probabilit mixte (combinaison de densits de probabilit
uniformes et dterministes).
L'objectif de ces types de densits de probabilit est, la fois, de pouvoir faire des valuations de
performances sur des systmes qui n'ont pas de contraintes temporelles (cas o seulement des
j est compris entre la borne minimale de l'intervalle de tir associe tj et la plus petite des bornes
maximales des intervalles de tir de toutes les transitions sensibilises (c'est le sLFT) ; pj est la
probabilit de tirer tj entre la borne minimale de l'intervalle de tir associ tj et le sLFT.
En ce qui concerne la valeur de l'instant de tir, cinq rgles de tir ont t dfinies [GAL 97] : rgle
MIN (on tire la borne minimale de l'intervalle de tir associe tj ; rgle moyen (tir la valeur
moyenne) ; rgle MAX (tir au sLFT) ; rgle min (tir
instant gal valeur moyenne - cart type) et rgle max (tir instant gal valeur moyenne +
cart type). Il n'y a pas de restriction sur les combinaisons de ces rgles de tir pour les diffrentes
transitions d'un modle ROTS, ce qui permet d'envisager de grandes varits de scnarios.
La combinaison de l'utilisation des rgles MIN et MAX doit permettre d'tudier des cas pires. Les
expressions de j et pj sont donnes dans [ATA 94, GAL 97].
En ce qui concerne les rgles de tir, ce modle, dans sa version initiale [ATA 94], ne comportait
que la rgle moyen, ce qui donne un graphe d'tats probabilis qui ne reprsente pas l'exhaustivit
comportementale, en particulier si l'on a des distributions uniformes et mixtes (l'exhaustivit est
obtenue si les distributions sont exponentielles et/ou dterministes). Les autres rgles de tir (en
particulier les rgles MIN et MAX) ont t introduites prcisment pour traiter diffrents
scnarios dans les cas de distributions uniformes et mixtes.
Notons que les systmes que l'on modlise (compte tenu de toutes les distributions considres)
ne sont gnralement pas Markoviens mais comme le graphe d'tats probabilis est bas sur les
instants de changement d'tat, il est isomorphe une chane de Markov temps discrets et donc il
accepte les techniques d'analyse markovienne et de parcours de graphes pour analyser et valuer
les performances.
Notons enfin, pour terminer cette prsentation du graphe d'tats probabilis, que la structure de ce
graphe dpend des contraintes temporelles (lorsqu'il y en existe) et donc ce graphe est
reprsentatif de l'influence de ces contraintes sur le fonctionnement du systme modlis.
4.2.3.3. Exemple
4.2.3.3.1. Modle RdPTS
Considrons le modle RdPT de la figure 4.3 avec les deux spcifications considres pour les
intervalles de temps et nous associons dans chaque cas les densits de probabilit dfinies cidessous
- spcification temporelle 1 :
L'environnement logiciel TINA (Time Petri Net Analyser) - http://www.laas.fr/tina - propose ces
deux constructions. Plus gnralement, cet environnement permet l'dition et l'analyse de rseaux
de Petri et Temporels [BER 03b].
Une originalit de TINA est de proposer la construction d'espaces d'tats abstraits permettant la
vrification de classes de proprits spcifiques. Diffrentes classes de proprits sont proposes :
proprits gnrales d'accessibilit (absence de blocage, vivacit), proprits spcifiques bases
sur la structure linaire de l'espace d'tats concrets (logique temporelle linaire, quivalences de
test) ou sur sa structure arborescente (logique temporelle arborescente, bisimulation).
Les abstractions proposes oprent sur des systmes temporiss ou non. Dans le cas de systmes
temporiss, pouvoir considrer un espace d'tats abstrait est un impratif car l'espace d'tats
concret est en gnral infini. Dans le cas de systmes atemporels, offrir un espace d'tat abstrait
permet de limiter les risques d'explosion combinatoire. La technique des graphes de classes et ses
volutions ultrieures sont mises en uvre pour obtenir les abstractions dans les systmes
temporiss. Les techniques de rduction base d' ordre partiel sont utilises pour les systmes
atemporels.
4.2.4.3. Le modle ROTS
4.2.4.3.1. Les types d'analyse
Trois grands types d'analyse peuvent tre effectus au moyen d'un graphe d'tats probabiliss :
- une analyse qualitative (les valeurs de pi et i, associes aux transitions, ne sont pas
considres ; seuls les noms des transitions du rseau de Petri sous-jacent et des tiquettes
qualitatives reprsentant l'action associe la transition (envoie de message (!R) ou rception de
message (?R) par exemple) sont reprsents) ;
- une analyse quantitative (seules les valeurs de p; et de O sont considres) ;
- une analyse qualitative quantifie (combinaison des deux types d'analyse prcdents).
4.2.4.3.2. Analyse qualitative
L'analyse qualitative que l'on peut faire comporte tous les aspects de l'analyse d'accessibilit
dveloppe sur le graphe des marquages du modle RdP (analyse globale et de points de vue). En
effet, ici contrairement au cas du graphe des classes d'tats (avec le modle RdPT), tous les
chemins sont temporellement ralisables (mais par contre, on n'a pas tous les chemins, c'est-dire le graphe n'est pas complet).
4.2.4.3.3. Analyse quantitative
Le graphe d'tats probabilis est isomorphe une chane de Markov instants discrets. On peut
donc utiliser les techniques d'analyse markovienne et de parcours de graphe pour analyser et
valuer des performances.
Quand le graphe est cyclique, on obtient des performances en rgime stationnaire (probabilit des
tats, temps de sjour dans les tats) partir desquelles on peut valuer des performances sur le
rseau de Petri (nombre moyen de jetons dans les places, frquence de tir des transitions, temps
moyen de sjour dans une place).
Avec des graphes cycliques et acycliques, on peut obtenir des vues abstraites quantitatives
(graphe relatif un sous-ensemble d'tats (tats observs) [ATA 94]) : ce graphe est tiquet avec
les probabilits et les temps de premier passage entre tats observs (ces probabilits et ces temps
dpendent videmment des chemins travers les tats non observs).
Les vues abstraites quantitatives permettent de calculer
- des temps de rponse ou des temps jusqu' l'occurrence de pannes,
- des distributions relatives un phnomne du systme modlis (il faut pour ceci que la vue
abstraite soit un graphe cyclique).
4.2.4.3.4. Analyse qualitative quantifie
Dans le contexte des systmes temps rel o il faut valuer des qualits de service, il est
ncessaire de ne plus faire une sparation entre analyses qualitatives et quantitatives mais de
combiner les deux [GAL 97, JUA 97]. Plus prcisment, il faut considrer des points de vues
comportementaux (c'est--dire reprsentant des relations entre des vnements) quantifis.
Ainsi, partir du graphe d'tats probabilis, on peut obtenir des vues abstraites qualitatives
quantifies qui permettent de rpondre au besoin que nous venons d'exprimer : c'est--dire, une
fois qu'une vue abstraite qualitative a t obtenue, les transitions entre classes d'tats et les classes
d'tats elles-mmes (vue abstraite quantifie du comportement d'une classe entre ses tats d'entre
et ses tats de sortie) sont quantifies.
4.2.4.4. Mthodologie d'analyse
Une analyse d'un systme de communication dpend du type de spcification qui est fait
relativement ce systme
- spcification 1 : c'est une spcification qui est dfinie uniquement en termes d'vnements
(primitives, PDU), de ressources et de relations de causalit ;
- spcification 2 : c'est le type spcification 1 auquel on adjoint des caractristiques temporelles
sous la forme d'intervalles de temps ;
- spcification 3 : c'est le type spcification 2 avec des densits de probabilits associes aux
intervalles de temps.
Une spcification 1 se prte une modlisation RdP et donc l'analyse d'accessibilit dcrite
dans le paragraphe 4.2.4.1.
Une spcification 2 se prte une modlisation RdPT et donc l'analyse d'accessibilit dcrite
dans le paragraphe 4.2.4.2.
Une spcification 3 se prte une modlisation RdPTS et donc aux trois types d'analyse
dvelopps dans le paragraphe 4.2.4.3. Notons encore que si l'on considre, dans un premier
temps, seulement les intervalles de temps, on peut faire l'analyse permise par le modle RdPT
(vrification des contraintes temporelles).
En conclusion, il faut dire que dans un contexte d'valuation de performances au sens large
(aspects qualitatifs mais surtout quantitatifs), le modle ROTS est le modle tout naturellement
indiqu et c'est celui que nous considrons dans l'exemple d'application de la mthodologie
propose.
4.3. Exemple d'application de la mthodologie
Nous considrons donc le systme producteur-consommateur tudi avec le modle ROTS (le
modle RdP sous-jacent est donn sur la figure 4.3, les spcifications temporelles et stochastiques
sont donnes aux paragraphes 4.2.2.4 et 4.2.3.3). Les types d'analyse que l'on peut faire sont
obtenues partir des deux graphes d'tats probabiliss des figures 4.6 et 4.7.
4.3.1. Spcification temporelle 1
4.3.1.1. Analyse qualitative
1. Proprits gnrales : le graphe d'tats probabilis (figure 4.6) est born (sept tats) et prsente
un rgime transitoire (S0 S1) ; il n'y a pas d'tat de blocage ; la transition t 4 n'est pas tirable ce
qui prouve qu'il n'y a pas crasement du buffer. On peut donc en conclure que la synchronisation
temporelle entre le producteur et le consommateur est correcte.
2. Proprits spcifiques (elles permettent de qualifier les actions du consommateur par rapport
celles du producteur) :
- approche logique : aprs des productions (tats S1 et S4), il est invitable que l'on ait des
consommations (tats S5 et S6) ;
- approche abstraite : en considrant les deux actions observables (production (transition tt) et
consommation (transition t5)), on obtient le graphe quotient ou vue abstraite qualitative de la
figure 4.8 ; on voit qu'il existe plusieurs types de cycles production-consommation (c'est--dire en
faisant rfrence la figure 4.3 : il t5 ; t1t1 t5 t1 t5 ... ; t1 t1 t5 t5...).
Les densits de probabilits f(x) des phnomnes de production et de consommation sont donnes
sur la figure 4.9 avec en ce qui concerne la vue abstraite du phnomne de production : P(S 1) =
0,805 et P(S4) = 0,195 ; pour la vue abstraite du phnomne de consommation, on a : P(S 5) =
0,195 et P(S6) = 0,805.
Au moyen de ces densits de probabilits, on peut calculer le temps moyen de production (4,2
unit de temps) et le temps moyen de consommation (4,2 units de temps), ce qui constitue une
autre manire de voir qu'il n'y a pas d'crasement.
En ce qui concerne l'aspect analyse d'un rseau existant, on peut utiliser des descriptions
formelles pour vrifier des proprits et valuer des performances (c'est comme le niveau 2
prsent relativement l'aspect conception). Les rsultats de ces tudes peuvent amener une
remise en cause de mcanismes du rseau.
D'une manire gnrale, l'intervention d'une technique formelle se focalise sur un mcanisme (un
service de communication entre deux entits ou un service de communication de groupe ; une
technique d'accs un mdium ; une technique d'ordonnancement ; une application particulire
(par exemple de type multimdia, de contrle-commande...)) ou un sous-ensemble de
mcanismes car il est difficile de pouvoir traiter un rseau dans sa globabilit.
4.5.2. Sur la qualit de service
Nous ne dfinissons pas ici la qualit de service. Nous pouvons cependant dire que la qualit de
service possde deux volets : un aspect qualitatif (est-ce qu'un service est potentiellement ou
invitablement fourni ?) et un aspect quantitatif (les performances souhaites sont-elles
obtenues ?). C'est surtout ce dernier aspect qui a donn sa rsonance actuelle au terme qualit de
service (ceci tant d aux diffrentes applications que l'on peut raliser avec les rseaux, comme
des applications multimdias ou de commande de processus industriels...) et qui a induit
l'utilisation de paramtres tels que : temps de rponse, temps d'accs, gigue, taux de pertes...
Cependant, l'tude de l'aspect qualitatif (qui doit prcder l'tude de l'aspect quantitatif) est trs
importante, en particulier pour dfinir les mcanismes d'changes ncessaires la ralisation d'un
service. Nous indiquons maintenant quelques exemples d'utilisation des techniques formelles qui
ont contribu l'valuation de la qualit de service.
4.5.3. Exemples
4.5.3.1. Qualit (qualitative) d'un service de communication
L'tude faite avec le modle RdP sur le mcanisme CCR [AYO 90] a permis de lever une
ambigut et donc de proposer une spcification propre. Les tudes faites avec le modle RdPT
sur le protocole liaison et le service de transfert de buffer dans le rseau FIP [ATA 94] ont permis
de vrifier des relations entre des valeurs de diffrents temporisateurs.
Ces deux tudes sont des tudes partielles dans le contexte rseau (elles sont relatives un lien de
communication).
4.5.3.2. Qualit (qualitative) d'un service d'accs une ressource de transmission
Les tudes faites avec le modle RdPT [ROU 85] relativement au protocole MAC du rseau
Proway, ont permis de vrifier que la technique du jeton temporis considre permet le partage
en mutuelle exclusion d'un bus.
Cet exemple, par rapport aux exemples prcdents, a un caractre plus global (vue complte d'un
rseau au niveau d'une couche).
4.5.3.3. Qualit (quantitative) d'un service d'accs une ressource de transmission
Les tudes faites avec le modle RdPTS relativement au rseau DQDB [CAR 94] et au rseau
ISA SP50 [VAS 96] ont permis respectivement :
- d'valuer les temps d'accs des diffrentes stations et de vrifier l'inquit inhrente au protocole
d'accs (mcanisme QA) ;
[ALU 90] ALUR R., COURCOUBETIS C., DILL D., Model-checking for real-time systems ,
Proc of 51h IEEE Symp. on Logic in Computer Science, 1990.
[ALU 96] ALUR R., HENZINGER T.A. (DIR.), Computer aided verification , LNCS, vol.
1102, Springer-Verlag, 1996.
[ARN 92] ARNOLD A., Systmes de transitions finis et smantique des processus
communicants, Masson, Paris, 1992.
[ATA 94] ATAMNA Y., Rseaux de Petri temporiss stochastiques classiques et bien forms :
dfinition, analyse et application aux systmes distribus temps rel, Thse de Doctorat,
Universit Paul Sabatier, Toulouse, octobre 1994.
[AUD 90] AUDUREAU E., FARINAS DEL CERRO L., ENJALBERT P., Logique temporelle,
smantique et validation des programmes parallles, Masson, Paris, 1990.
[AYO 90] AYOUB M., Contribution la spcification formelle et vrification d'architectures de
communication pour les transactions distribues (couches hautes du modle de rfrence OSI de
l'ISO), Thse de Doctorat, Universit Paul Sabatier, Toulouse, 1990.
[BEN 83] BEN-ARI M., PNUELI A., MANNA Z., The temporal logic of branching finie ,
Acta Informatica 20, p.207-226, 1983.
[BER 83] BERTHOMIEU B., MENASCHE M., An enumerative approach for analysing finie
Peti nets , IFIP Congress 1983, Paris, septembre 1983.
[BER 91] BERTHOMIEU B., DIAZ M., Modeling and verification of time dpendant systems
using time Petri nets , IEEE Transactions on Software Engineering, 1991.
[BER 96] BERGE N., Modlisation au moyen des rseaux de Petri temporiss stochastiques
d'une application de contrle-commande de poste de transformation d'nergie lectrique rpartie
sur le rseau de terrain FIP, Thse de Doctorat, Universit Paul Sabatier, Toulouse, mai 1996.
[BER 03a] BERTHOMIEU B., VERNADAT F., State class constructions for branching
analysis of Time Petri nets , 9th International Conference on Tools and Algorithms for the
Construction and Analysis of Systems (TACAS'2003), LNCS, vol. 2619, Varsovie (Pologne),
Springer Verlag, 7-11 avril 2003.
[BER 03b] BERTHOMIEU B., R1BET P.O., VERNADAT F., L'outil TINA. Construction
d'espaces d'tats abstraits pour les rseaux de Petri et rseaux temporels , Colloque
Francophone sur la Modlisation des Systmes Ractifs (MSR'03), Herms, octobre 2003.
[BRA 83] BRAMS G.W., Rseaux de Petri : thorie et pratique, vol. 1 et 2, Masson, Paris, 1983.
[BRA 96] BRAYTON R.K., CLARKE E.M., Special issue on symmetries in automatic
verification, Formal Method in System design 9(1/2), 1996.
[BRI 88] BRINKSMA E., A theory for the derivation of tests , dans S. Aggrawal et K. Sabani
(dir.), PSTV, vol. VIII, Elsevier Science Publishers B.V., North Holland, 1988.
[BRO 881 BROWNE M.C., CLARKE E.M., GRUMBERG O., Characterizing finite Kripke
structures in propositional temporal logic , Theoretical Comput. Scien, 59, p. 115-131, 1988.
[BUR 90] BURCH J.R., CLARK E.M., MCMILLAN K.L., DIES D.L., HWANG J.L.,
Symbolic model-checking: states and beyond , Proc of 5th IEEE Symp. on Logic in Computer
Science, 1990.
Verlag, 1997.
[MAR 96] MARGARIA T., STEFFEN B. (DIR.), Tools and algorithms for the construction and
analysis of systems , LNCS, vol. 1055, Springer-Verlag, 1996.
[MER 76] MERLIN P.M., FARBER D.J., Recoverability of communication protocols implications of a theoretical study , IEEE Transactions on Communications, vol. 24, n 9, p.
1036-1043, septembre 1976.
[MIL 89] MILNER R., Communication and concurrency, Prentice Hall, New York, 1989.
[MOL 81] MOLLOY M.K., On the integration of delay and throughput measures in distributed
processing models, Thse de Doctorat, Universit de Californie, Los Angeles, Etats-Unis, 1981.
[NAT 80] NATKIN S., Les rseaux de Petri stochastiques, Thse de Doctorat, Docteur-Ingnieur,
CNAM, Paris, 1980.
[PAR 81] PARK D., Concurrency and automata on infinite sequences , 5 Conf. On
theoretical Computer Sciences, LNCS, vol. 104, p.167-183, Springer-Verlag, 1981.
[PNU 86] PNUELI A., Applications of temporal logic to the specification and verification of
reactive systems: a survey of current trends , LNCS, vol. 224, Springer-Verlag, 1986.
[RAM 74] RAMCFIANDANI C., Analysis of asynchronous concurrent systems by timed Petri
nets, Thse de Doctorat, MIT, Project MAC TR-120, fvrier 1974.
[ROU 85] Roux J.-L., Modlisation et analyse des systmes distribus par les rseaux de Petri
temporels, Thse de Doctorat, Docteur-Ingnieur, INSAT, Toulouse, 1985.
[SEN 96] SENAC P., Contribution la modlisation des systmes multimdia et hypermdia,
Thse de Doctorat, Universit Paul Sabatier, Toulouse, juin 1996.
[SIF 77] SIFAKIS J., Use of Petri nets for performance evaluation , 3'`d International
Symposium on Modeling and Performance Evaluation of Computer Systems, North-Holland,
1977.
[SIF 82] SIFAKIS J., A unified approach for studying the properties of transition systems ,
Theoretical Computer Science, vol. 18, p. 227-258, 1982.
[VAL 891 VALMARI A., Stubbom sets for reduced state space generation , ICATPN'89,
LNCS, vol. 483, Springer-Verlag, 1989.
[VAS 96] VASQUES F., Sur l'intgration de mcanismes d'ordonnancement et de communication
dans la sous-couche MAC de rseaux locaux temps rel, Thse de Doctorat, Universit Paul
Sabatier, Toulouse, juin 1996.
[VER 96] VERNADAT F., AZMA P., MICHEL F., Covering step graphs , ICATPN'96,
LNCS, vol. 1091, Springer-Verlag, 1996.
[WOL 93] WOLPER P., GODEFROID P., Partial order methods for temporal verification ,
CONCUR'93, LNCS, vol. 715, Springer-Verlag, 1993.
Chapitre 5
La conception optimale de rseaux de tlcommunications
5.1. Introduction
Nous nous intressons dans ce chapitre la modlisation et la rsolution exacte
de problmes de conception optimise de rseaux de tlcommunications.
Exprime en termes trs gnraux, la problmatique de la conception de rseaux peut se rsumer
de la faon suivante. Etant donne une liste de centres metteurs ou rcepteurs de trafic
(tlphonie, donnes, multimdia) ainsi que des prvisions relatives aux dbits de donnes devant
tre changs entre ces centres, il s'agit de construire un rseau connectant les diffrents centres
et capable d'couler simultanment toutes les demandes en trafic prvues. Ceci suppose la
rsolution simultane de deux types de problmes :
- la dfinition de la topologie donner au rseau : il s'agit de dterminer quelles paires de centres
doivent tre relies par des moyens de transmission ; la topologie du rseau n'est donc rien d'autre
que le graphe spcifiant la manire dont les diffrents centres doivent tre interconnects ;
- le choix d'un dimensionnement : il s'agit de dterminer la nature et, en particulier, la capacit
des moyens de transmission installer sur chaque liaison construire pour raliser le rseau
selon la topologie choisie.
Une solution du problme de conception de rseau (correspondant au choix d'une topologie et
d'un dimensionnement) sera dite admissible ou ralisable si le rseau ainsi construit permet
d'couler simultanment toutes les demandes en trafic entre les diffrentes paires de centres.
Remarquons ici que pour vrifier le caractre admissible d'un rseau (topologie +
dimensionnement), il faut s'assurer que l'on peut trouver, pour chaque demande, un ou plusieurs
chemins pour couler le trafic correspondant : c'est le problme gnralement dnomm routage
du trafic . Tout problme de conception de rseau suppose donc une prise en compte, directe ou
indirecte, de problmes de routage. Evidemment, un problme de conception de rseau tel que
dcrit ci-dessus admet en gnral de trs nombreuses solutions admissibles, mais parmi toutes ces
solutions certaines auront un cot plus lev que d'autres, ce cot pouvant reprsenter, suivant
le contexte d'application, diffrents critres conomiques minimiser (cot d'achat, cot de
location...) ou maximiser (redevances provenant des usagers du rseau par exemple).
Dans cet article, nous supposerons que le critre d'optimisation choisi consiste minimiser le
cot total du rseau, calcul comme la somme des cots des quipements de transmission
installer sur les diffrentes artes du graphe reprsentatif de la topologie.
Nous verrons, dans la suite de ce chapitre, que la difficult de rsolution des problmes de
conception optimise de rseaux dpend beaucoup de la structure de la fonction objectif utilise
suivant la prcision avec laquelle elle permettra d'approcher les cots rels des quipements. Par
exemple, si l'approximation des cots par des fonctions linaires est acceptable, la rsolution du
problme se ramne soit des calculs de plus courts chemins dans un graphe (il existe pour cela
de nombreux algorithmes de plus courts chemins trs efficaces), soit la rsolution de
programmes linaires en variables continues. Par contre, si l'on souhaite reprsenter beaucoup
plus finement la ralit, on est amen travailler avec des fonctions objectifs en escalier , ce
qui conduit des problmes d'optimisation en nombres entiers, beaucoup plus difficiles
rsoudre.
D'autres sources possibles de difficult dans les problmes d'optimisation rsoudre sont lies
la prsence de contraintes supplmentaires provenant, soit de rgles d'utilisation des matriels,
soit de rgles de gestion des rseaux. Nous en verrons quelques exemples dans les paragraphes
5.3.2 et 5.4.4.
5.2. Les modles de base : graphes, flots et multiflots
Les modles de base utiliss pour formuler des problmes de conception optimise de rseaux
font appel la thorie des graphes et la programmation linaire (continue ou entire) dont les
fondements sont supposs connus. Pour des ouvrages introductifs, on pourra se reporter Berge
[BER 70], Gondran et Minoux [GON 95] et Minoux [MIN 86a]. L'ensemble des topologies
possibles pour le rseau construire est suppos dcrit par la donne d'un graphe G = [T; 21] o :
- l'ensemble N des sommets reprsente les diffrents centres metteurs et/ou rcepteurs de trafic
interconnecter entre eux ;
- l'ensemble V des artes correspond l'ensemble des paires de centres entre lesquels il est a
priori possible d'installer des quipements de transmission (cbles, fibres optiques, etc.).
Nous faisons appel ici un modle de graphe non orient, qui est le plus couramment utilis, car
un quipement de transmission install entre deux centres i et j permettra d'couler du trafic aussi
bien de i vers j que de j vers i. Seule comptera, pour dfinir le cot total du rseau, la valeur de la
capacit totale installe entre deux centres i et j, quel que soit le sens des flux de trafic qui
emprunteront l'arte (i, j).
REMARQUE.- Naturellement, si dans le cadre d'une tude de rseaux dtermine, il tait
ncessaire de considrer comme diffrents les moyens de transmission installs entre deux
centres i et j pour le trafic de i vers j et pour le trafic de j vers i, les modles discuts ici se
gnraliseraient de faon immdiate : il suffirait de considrer G comme un graphe orient plutt
que non orient.
Le graphe G, dfini ci-dessus, reprsente toutes les topologies possibles de rseaux pouvant tre
construits pour interconnecter les N = N centres donns, en n'utilisant que les possibilits
reprsentes par l'ensemble V des artes de G. Ainsi toute topologie possible correspondra un
graphe partiel G de G (rappelons que G est appel graphe partiel de G = [N, U] s'il est construit
sur le mme ensemble de sommets N et si l'ensemble de ses artes est un sous-ensemble de U ).
Un modle de base naturel pour reprsenter la faon dont le trafic entre paires de sommets de G
s'coule sur un rseau en utilisant les ressources de transmission installes sur les artes est celui
de la thorie des flots dans les graphes [AHU 93, FRA 73, GON 95]. M = U dsignant le
nombre d'artes de G, un flot entre deux sommets s (source) et t (puits) dans G est dcrit par un
M-vecteur = (1, 2, ... , M)T tel que :
-
- ayant choisi une orientation arbitraire sur l'arte u = (i, j) (par exemple u > 0 si le flot s'coule
de i vers j, u < 0 si le flot s'coule de j vers i), la premire loi de Kirchhoff (loi de conservation
aux nuds) est vrifie en chaque nud k (k s, k t), autrement dit :
k N, k s, k t
Dans les relations [5.1] et [5.2], +(k) (resp. = -(k) dsigne le sous-ensemble d'arcs ayant k pour
extrmit initiale (resp. : k pour extrmit, terminale). La valeur commune des expressions [5.2],
note v (), est appele la valeur du flot. Dans les problmes discuts ici, la valeur de chaque flot
sera gnralement impose et devra tre gale la demande entre le nud source s et le nud
destination t. D'autre part, la quantit totale de ressource de transmission disponible sur chaque
arte u U du rseau pourra tre caractrise par un nombre rel cu 0 appel la capacit de
l'arte u. Bien entendu, les capacits des artes et les valeurs des flots seront exprimes dans les
mmes units.
Rappelons maintenant les deux modles de base qui seront utiliss dans la suite.
5.2.1. Modle de flot simple
On dit que le M-vecteur = (1, 2, ..., M) est un flot simple (ou flot un seul produit) entre la
source s et la destination t, si et seulement si il vrifie les quations de Kirchhoff [5.1] et [5.2] qui
peuvent se rcrire de faon matricielle sous la forme :
~
o A est la matrice d'incidence sommets/arcs du graphe orient G
dduit de G en remplaant
chaque arte (i, j) par un arc (i, j) orient de i vers j (le choix de l'orientation est arbitraire) ; b est
~
un N-vecteur dont les composantes bi correspondent aux sommets de G
et vrifient :
Ainsi, chaque demande en trafic entre deux sommets s et t, on associera un flot simple vrifiant
la relation [5.3] o v () sera gal la demande en trafic devant s'couler entre s et t.
5.2.2. Modle de multiflot
Le modle de flot simple n'est pas suffisant pour reprsenter l'coulement simultan d'un grand
nombre de flux de trafic entre origines et destinations multiples dans un rseau de
tlcommunications. En effet, des flux n'ayant pas la mme origine ni la mme destination ne
peuvent se mlanger, ce qui doit se traduire dans les modles, par le fait que les vecteurs qui les
reprsentent ne peuvent se combiner algbriquement. Pour illustrer ce point, essentiel, de
modlisation, considrons l'exemple du rseau reprsent par le graphe G 5 sommets et 7 artes
de la figure 5.1. Les artes sont numrotes de 1 7 et le sens des flches port sur les artes
~
correspond au choix d'une orientation arbitraire pour dfinir le graphe orient G
.
Un second flux de trafic de. 10 Mbits/sec galement entre Bordeaux et Lyon passant par Toulouse
et Marseille peut tre reprsent par un flot 2 de valeur 10 et de composantes
Pour illustrer le fait que ces diffrents flots ne peuvent se combiner algbriquement, considrons
la somme algbrique des vecteurs (1 et 2, qui donne le vecteur :
Ce vecteur correspond deux flux distincts : un flux de 10 Mbits/sec entre Marseille et Lyon et
un flux de 10 Mbits/sec entre Bordeaux et Toulouse. Ainsi, Toulouse qui attendait des donnes en
provenance de Paris, les reoit de Bordeaux alors que Lyon, qui attendait des donnes en
provenance de Bordeaux va les recevoir de Marseille !
Pour reprsenter correctement la ralit, il faudra donc ajouter les diffrents vecteurs
reprsentatifs des flux de trafic non pas algbriquement mais en valeur absolue : sur chaque arte
u U, le dbit total des informations qui y transitent, quel qu'en soit le sens, est la somme des
valeurs absolues des composantes sur l'arte u des diffrents flots parcourant le rseau. Ainsi,
dans l'exemple de la figure 5.1, le bilan total de l'utilisation des ressources de transmission sur
chaque arte u est donn par la somme
Ceci donne
Le vecteur ainsi obtenu dcrit une utilisation possible du rseau par les diffrents flux de trafic
qui le parcourent. L'ensemble des relations [5.4], qui dfinissent le vecteur-bilan partir des
vecteurs descriptifs des diffrents flux, correspond ce que l'on appelle le modle de flot
plusieurs produits ou multiflot. Bien sr le vecteur obtenu dpend de la faon dont sont
achemins sur le rseau les diffrents flux. Dans l'exemple de la figure 5.1, si l'on prend 1 = (5,
5, 0, 0, 0, 5, -5) (flux Paris Toulouse divis en deux flux gaux sur les chemins
Paris/Bordeaux/ Toulouse et Paris/Marseille/Toulouse) et 2 = (-10, 0, +10, 0, 0, 0, 0) (flux
Bordeaux/ Lyon passant intgralement sur le chemin Bordeaux/Paris/Lyon), le vecteur bilan
serait : = (15, 5, 10, 0, 0, 5, 5).
D'une faon gnrale, un modle de multiflot est dfini par la donne de K flots simples
(numrots k = 1, 2 ... K) o, pour chaque k, s (k) et t (k) dsignent les indices des sommets
source et destination du kime flot, et dk la valeur du kime flot couler sur le rseau. Alors un
vecteur u u 1,, M est dit reprsentatif du multiflot si et seulement si il satisfait le systme
d'quations suivant :
Dans le systme ci-dessus, A est la matrice d'incidence sommets/arcs de G et cpk dsigne le Mvecteur reprsentant le kime flot simple de valeur dk entre s (k) et t (k), et b k est le N-vecteur de
k
k
composantes toutes nulles except b s k 1 et b t k 1 .
5.3. Modlisation du problme de conception optimise de rseau : modle de multiflot
cot minimum et variantes
Nous introduisons dans cette section un modle trs gnral, utilisant le concept de multiflot
introduit prcdemment, pour exprimer le problme de conception de rseau sous la forme d'un
problme d'optimisation.
5.3.1. Le modle de multiflot cot minimum
~
Soit G = [N, U] le graphe reprsentant l'ensemble des topologies possibles, G
le graphe orient
associ (obtenu en choisissant une orientation arbitraire de chaque arte), A la matrice d'incidence
~
sommets-arcs de G
. Par ailleurs, on suppose donn un multiflot sous forme d'une liste de K
demandes de valeurs dk entre s (k) et t (k) (pour k = 1, ..., K). Enfin, associe chaque arte u =
(i, j) U sur laquelle il est possible d'installer un ou plusieurs quipements de transmission, on
suppose donne une fonction de cot u qui, toute valeur relle xu 0 reprsentant la valeur du
multiflot sur l'arte u (c'est--dire le flux total parcourant l'arte u), associe le cot u(xu)
d'installation des quipements ncessaires pour couler ce flux entre les sommets i et j extrmits
de l'arte u. Bien entendu, dans la plupart des applications, les fonctions de cot u seront
croissantes (au sens large) et valeurs positives ou nulles. Nous ferons galement l'hypothse,
raliste, que la fonction u n'est dfinie que sur un intervalle [0, u] de largeur limite (u
reprsentant la capacit totale maximale des quipements pouvant tre ventuellement installs
pour relier i et j).
Le problme de la conception optimale d'un rseau capable d'couler simultanment l'ensemble
des flux demands au moindre cot peut alors se formuler comme un problme de multiflot
cot minimum de faon suivante :
Minimiser x u x u
5.5
k 1
MFCM u : x u ku
k 1,2,..., K : A.k d b k
k
u : 0 x u u
5.6
5.7
5.8
Dans ce modle, les quations [5.6] et [5.7] permettent de dfinir x comme vecteur reprsentatif
du multiflot, xu tant le flux total passant sur l'arte u. Les contraintes [5.7] expriment la
satisfaction de chacune des demandes composant le multiflot. Les contraintes [5.8] imposent que
le flux total sur chaque arte u n'excde pas la limite prescrite u. Enfin, la relation [5.5] dfinit la
fonction objectif, minimiser, comme somme des cots ncessaires, sur les diffrentes artes,
pour couler tous les flux. Ce modle comporte donc au total (K + 1) M variables : M variables xu
et K vecteurs 1, 2,, K inconnus, chacun de dimension M. Le nombre de contraintes est 2M +
KN : les contraintes [5.6] sont au nombre de M, les contraintes [5.7] au nombre de K x N (N tant
le nombre de lignes de la matrice A), et les contraintes de bornes [5.8] au nombre de M.
(MFCM) est un modle trs gnrique en ce sens qu'il permet de reprsenter de nombreux types
de problmes de conception optimise de rseaux, suivant la faon dont sont dfinies les
fonctions de cot u. Le modle le plus simple rsoudre correspond au cas o les fonctions u
sont linaires (voir paragraphe 5.4.1) mais la linarisation des fonctions de cot se fait souvent au
prix d'approximations trop grossires de la ralit. C'est pourquoi nous tudierons galement des
modles permettant de mieux approcher la ralit : fonction de cot linaire avec cot fixe (voir
paragraphe 5.4.2), fonctions concaves linaires par morceaux (voir paragraphe 5.4.3) ou
fonctions de cot croissantes en escalier (voir paragraphe 5.4.4). Le cas des fonctions de cot
convexes croissantes, qui apparat, par exemple dans les problmes de routage minimisant les
dlais moyens dans un rseau, sera galement tudi au paragraphe 5.4.5.
5.3.2. Flexibilit du modle : quelques exemples
Le modle (MFCM) est aussi gnrique en ce sens qu'il est souvent facile d'en driver des
variantes incorporant des contraintes ou des spcificits du problme traiter. Nous allons en
~
o (i) est la notation habituelle pour dsigner l'ensemble des arcs de G
ayant i comme
extrmit (initiale ou terminale). Par suite, on aura, i N :
On voit que l'quation [5.9] est similaire l'quation [5.6], le problme obtenu a donc une
structure tout fait analogue celle de (MFCM). De fait, on peut montrer que (MFCMI) peut se
ramener exactement au modle (MFCM), avec cots sur les arcs seulement, condition de le
~
~
~ , diffrent de G
formuler partir d'un autre graphe orient G
, dduit de G de la faon suivante :
~
~ . On notera
- chaque arte u = (i, j) de G, on associe deux arcs u = (i, j) et u = (j, i) de G
~
~ de la forme u = (i, j) et (u i) pour u parcourant l'ensemble U;
V l'ensemble des arcs de G
~
~ . Les
Les diffrents flots k considrer dans le modle seront maintenant des flots sur G
quations qui les dfinissent seront de la forme [5.7] mais utiliseront maintenant la matrice
~
~
~ au lieu de celle de G
d'incidence sommets-arcs de G
.
En imposant chaque flot yk d'tre positif sur G et de n'emprunter aucun des arcs (s (k), s (k)),
(s (k), s (k)), (t (k), t (k)), (t (k), t (k)), on voit que, d u cm u U, xu peut s'exprimer
comme :
(le flux total transitant sur l'arte u = (i, j) de G est la somme du flux sur l'arc (i, j) et sur l'arc
~
~ ).
(j, i) de G
D'autre part, on voit que, i N, yi peut s'exprimer comme :
(la somme des flux sur les arcs (i, i) et (i, i) reprsente le flux total transitant par le sommet
i).
On obtient donc un problme de multiflot cot minimum avec cots sur les arcs seulement,
exactement conforme au modle (MFCM), mais sur un graphe ayant davantage de sommets et
d'arcs.
REMARQUE.- En vertu de ce qui prcde, les problmes (MFCM) et (MFCM1) apparaissent
donc comme essentiellement quivalents : toute mthode de rsolution pour (MFCM) peut tre
utilise pour rsoudre (MFCM1). Cette remarque, importante, explique sans doute en partie
pourquoi la plupart des travaux antrieurs dans le domaine de l'optimisation de rseaux se sont
limits la rsolution de problmes avec cots sur les artes seulement.
Un autre exemple, illustrant la flexibilit du modle (MFCM), concerne la prise en compte de
contraintes de scurit. Il sera dcrit en dtail dans la section 5.5.
5.4. Mthodes de rsolution exacte du problme de multiflot cot minimum (MFCM)
Nous tudions dans ce paragraphe les principales mthodes exactes connues pour la rsolution
des quelques variantes les plus importantes du modle (MFCM). Comme nous l'avons dj dit,
les problmes correspondants se distinguent essentiellement par la nature des fonctions de cot
u intervenant dans le modle, laquelle conditionne, pour une trs large part, la difficult de
rsolution.
5.4.1. Cas des fonctions de cot linaires : problme (P1)
Il s'agit de la variante du problme pour laquelle l'expression de u(xu) est simplement donne
par :
u(xu) = u xu
o u est un coefficient rel, ncessairement 0 (puisque u doit tre croissante au sens large). Le
problme (MFCM) peut alors tre reformul comme un simple programme linaire (en variables
continues) de la faon suivante.
Chaque vecteur k pouvant avoir des composantes 0 ou 0, peut tre rexprim comme k+ k- c'est--dire comme la diffrence de deux vecteurs composantes 0, nots k+ et k-, tels que,
k
k
u : u et u ne peuvent tre simultanment > 0.
Alors il est facile de voir que
Les problmes de type (P1) sont donc des programmes linaires ordinaires (en variables
continues) mais souvent de trs grande taille et de structure particulire.
Leur rsolution a t abondamment tudie depuis le dbut des annes 1970. Les premires
approches proposes ont exploit le fait que (P1) possde la structure adquate pour tre trait par
la mthode de dcomposition de Dantzig-Wolfe, (encore appele dcomposition par les prix ,
voir par exemple [MIN 86a] et les articles de synthse de Assad [ASS 78], Kennington [KEN
78]). D'autres approches exploitant la structure dcomposable du problme ont galement t
proposes application de la dualit lagrangienne et application d'algorithmes de sous-gradient
(Kennington et Shalaby [KEN 77]), mthode de dcomposition par les ressources (pour le
problme du multiflot maximum, voir [SAK 66]), mthode de partitionnement (voir [GRI 72]).
Plus rcemment, les dveloppements importants autour des mthodes de points intrieurs en
programmation linaire (algorithme de Karmarkar et mthodes drives) ont motiv l'tude de
nouvelles approches pour les problmes de multiflots de type (P1), voir [CHA 02, CHO 90, SCH
91]. Des approches exploitant le calcul parallle ont galement t tudies [PIN 92].
Notons qu'un cas particulier bien rsolu de (P1) est celui dans lequel les contraintes de capacit xu
u sont absentes ou n'interviennent pas dans le problme (par exemple si, sur chaque arc, la
valeur Ru est suprieure la somme de toutes les demandes). Dans ce cas, il est facile de voir que
la solution optimale est simplement obtenue en faisant passer chaque flot k sur une chane de cot
minimum (relativement aux valuations u) entre s (k) et t (k). La rsolution se ramne donc, dans
ce cas, un calcul de plus courts chemins entre sources et puits dans le graphe.
Cette proprit est exploite dans de nombreux algorithmes de rsolution du problme de
multiflot avec contraintes de capacits, en particulier ceux utilisant la dcomposition de DantzigWolfe et la relaxation lagrangienne.
5.4.2. Cas des fonctions de cot linaires avec cots fixes :problme (P2)
Il s'agit de la variante du problme pour laquelle l'expression de cu (xu) est donne par
On voit que ce minorant peut tre calcul trs efficacement puisqu'il se ramne des calculs
d'arbre minimum et de plus courts chemins. Les expriences de calcul ralises montrent que
l'utilisation de ce minorant permet d'liminer typiquement 50 80 % des noeuds de
l'arborescence, ce qui permet d'obtenir des solutions exactes jusqu' des tailles de rseaux ne
dpassant pas une trentaine d'artes. Au-del, on doit se contenter de solutions approches qui
peuvent tre obtenues, par exemple, en utilisant un algorithme glouton acclr (Minoux [MIN
89]) ou l'une des mthodes dcrites dans le chapitre 1 du second volume, Mthodes heuristiques
d'analyse de performance des rseaux).
5.4.3. Cas des fonctions concaves linaires par morceaux (P3)
Si l'on souhaite amliorer le ralisme des modles d'optimisation de rseaux, un phnomne
essentiel prendre en compte est celui connu sous le nom d'conomie d'chelle . Il s'agit d'une
loi de rendements croissants selon laquelle, sur chaque liaison du rseau, plus la capacit des
systmes de transmission installs est grande, plus le cot moyen (cot par unit de capacit)
dcrot. Des tudes conomiques ont montr (voir [ELL 75] par exemple) que si l'on reprsente
dans un diagramme capacit/cot les points correspondant diffrents systmes de transmission
(chacun tant repr par sa capacit xu en abscisse et son cot c u en ordonne), alors ceux-ci se
placent avec une bonne approximation sur une courbe d'quation c u = ku (xu) o ku est un
coefficient > 0 dpendant de l'arte u, et o l'exposant a est un nombre proche de 0,5,
typiquement dans l'intervalle [0,4 ; 0,6].
La rsolution approche d'une problme de multiflot de cot minimum avec des fonctions de cot
de la forme u (xu) = ku (xu) est possible, par exemple, en utilisant une version gnralise de
l'algorithme glouton acclr ([MIN 76b, MIN 89]) mais la rsolution exacte n'est possible, avec
les moyens actuels, que pour des rseaux de taille extrmement rduite, ne dpassant pas,
typiquement, une quinzaine de noeuds. Une faon de contourner la difficult est alors
d'approximer la fonction de cot ku(xu) par une fonction concave linaire par morceaux, obtenue
par exemple par approximation tangentielle, en un certain nombre de points bien choisis. On voit
qu'une telle fonction peut tre considre comme le minimum point point, d'une famille finie de
fonctions linaires avec cot fixe (du type de celles du paragraphe 5.4.2). A titre d'illustration,
considrons l'exemple de la figure 5.3 o la fonction 200 x 0.5 est approxime par la fonction
linaire par morceaux (avec cot fixe)
(on notera que les trois fonctions affines intervenant dans la dfinition de u ci-dessus sont les
linarises de 200 x0.5 aux points xu = 100, xu = 400 et xu = 900 respectivement).
Figure 5.3. Approximation de z = 200 P 5 par une fonction concave linaire par morceaux
Si l'on note :
(Du peut donc tre reprsente comme le minimum point--point, des trois fonctions : 1u , 2u et
3u .
D'une faon gnrale, montrons maintenant qu'un problme de type (P3) peut se ramener un
problme de type (P2). Pour chaque u U, soit qu le nombre de fonctions linaires avec cot fixe
dfinissant u par la formule :
, dduit de G en remplaant
Il suffira alors de considrer le problme sur un nouveau graphe G
chaque arte u = (i, j) U par qu artes u1 , u2 , ... , u q u joignant les deux mmes sommets i et j.
. Il est alors facile de vrifier que le problme (P3) se
Notons U l'ensemble des artes de G
Notons que la fonction u(xu) n'est dfinie que pour des valeurs de xu comprises entre 0 et
u v qu u , le modle (P4) comprend donc, par construction, des contraintes de borne sur les
variables xu.
Diffrents cas particuliers du problme (P4) ont t tudis dans la littrature, correspondant
des formes particulires de fonctions de cot en escalier. Ainsi la figure 5.5 correspond au cas o
un seul type de module de capacit c et de cot y peut tre install (Magnanti et Mirchandani
[MAG 93]).
La figure 5.6 correspond au cas o deux types de modules (un module de faible capacit et un
module de forte capacit respectant la loi d'conomie d'chelle) peuvent tre installs (voir [MAG
95]).
Figure 5.5. Fonction de cot correspondant au problme (P4) avec un seul type de module
Figure 5.6. Fonction de cot correspondant au problme P(4) avec deux types de modules
L'intrt de considrer des fonctions de cot en escalier de forme quelconque rside dans une
flexibilit accrue apporte la modlisation, par exemple pour prendre en compte des contraintes
additionnelles. Une contrainte typique, souvent rencontre du fait de la croissance gnralement
trs rapide des flux de trafic, est la suivante. Si, pour une valeur x u du flux total sur la liaison u,
on a utilis un ou plusieurs modules de capacit c, alors, pour toutes les valeurs suprieures de x u,
seuls des modules de capacit au moins c peuvent tre utiliss. Une telle rgle (de nonrgression ) applique au cas o trois types de modules (cl, l), (c2, 2), (c3,
3) sont disponibles (avec c1 c 2 c 3 et
celle de la figure 5.7.
1 2 3
) conduit une fonction de cot telle que
c1 c 2 c3
Figure 5.7. Fonction de cot avec trois modules respectant la rgle de non-rgression
Concernant les mthodes de rsolution, diffrentes approches pour la rsolution exacte ont t
proposes, d'une part pour des versions particulires du problme (P4), d'autre part, pour la
version gnrale (avec fonctions de cot en escalier quelconques).
Toutes ces approches ont ceci en commun qu'elles partent d'une modlisation du problme
comme programme linaire en nombres entiers, lequel est ensuite rsolu en utilisant, de faon
combine, les techniques de recherche arborescente (dites par sparation et valuation ,
Branch and Bound en anglais) et par des techniques dites de plans scants (cutting planes)
exploitant des rsultats de combinatoire polydrique (ingalits valides ou facettes du polydre
des solutions entires).
Nous nous contenterons de donner ici un aperu de ces mthodes, pour plus de dtails on se
reportera l'article de synthse [MIN 01], ou aux publications cites.
5.4.4.1. Mthodes de rsolution exacte pour des cas particuliers
Les versions particulires de (P4) tudies sont essentiellement celles faisant intervenir, soit un
seul type de module (cette version est dnomme single facility network loading problem en
anglais), soit deux types de modules (dnomme two-facility network loading problem en
anglais). Les principales rfrences connues relatives la version un seul type de module sont
[BAR 96, BIE 98, MAG 93], et pour la version deux types de modules [BIE 96, GUN 99, MAG
95]. Dans ces rfrences, plusieurs types d'ingalits valides sont proposs pour renforcer la
formulation du problme afin d'obtenir de meilleures valuations par dfaut (donc de rduire le
nombre de noeuds examins dans les procdures de recherche arborescente).
Rappelons qu'une ingalit valide est une inquation ncessairement satisfaite par toutes les
solutions entires du problme mais qui, une fois ajoute au problme, permet d'liminer de
nombreuses solutions fractionnaires. Parmi les ingalits valides les plus simples et les plus
frquemment utilises par les auteurs cits, on peut mentionner les ingalits de coupe (cutset
inequalities) qui, pour le cas o un seul type de module de capacit c est utilis, peuvent
est une ingalit valide ( dsigne le plus petit entier suprieur ou gal ).
Dans l'tat actuel, les expriences de calcul publies par les diffrents auteurs cits ne
mentionnent l'obtention de solutions optimales exactes que pour des problmes de taille
relativement rduite (au plus 27 sommets et 51 artes) et seulement pour des matrices de
demandes de faible densit (la densit est le rapport entre le nombre de flots simples K
N N 1
intervenant dans le problme et le nombre maximum possible :
).
2
5.4.4.2. Mthodes de rsolution exacte pour le cas gnral
La version gnrale du problme (P4), qui correspond au cas des fonctions de cot croissantes
en escalier quelconques, a t tudie par Stoer et Dahl [DAH 98, STO 94], Gabrel et Minoux
[GAB 97] et Gabrel, Knippel et Minoux [GAB 99].
L'approche tudie dans [DAH 98] et [STO 94] utilise les mmes techniques que celles
mentionnes dans le paragraphe 5.4.4.1, savoir la mise en vidence d'ingalits valides
permettant de renforcer la formulation du problme exprime comme un programme linaire
en nombres entiers. Les rsultats de calcul prsents dans [DAH 98] concernant quelques
exemples de taille jusqu' 45 noeuds et 53 artes, mais dans ces exemples les matrices de
demandes sont de faible densit (infrieure 7 %). Seul un des exemples est rsolu de faon
exacte ; pour les autres les diffrences entre les valeurs optimales entires et continues sont
trs importants (entre 22 % et 66 % en valeur relative).
L'approche tudie dans [GAB 99] est sensiblement diffrente et peut tre vue comme une
spcialisation de la mthode dite de Benders [BEN 62]. Elle conduit rsoudre, de faon
itrative, des sous-problmes en nombres entiers dduits les uns des autres par ajout de
contraintes supplmentaires, selon un processus dit de gnration de contraintes. A chaque
itration, le sous-problme est rsolu (de faon exacte) l'aide d'un logiciel standard de
programmation linaire en nombres entiers.
Donnons maintenant quelques explications complmentaires sur les traitements effectus. A
l'itration courante k, le sous-problme rsoudre, not (Rk), est une relaxation de (MFCM)
o les contraintes [5.6], [5.7] et [5.8] sont remplaces par un ensemble de contraintes
(appeles ingalits mtriques) exprimant, chacune, une condition ncessaire de ralisabilit.
Chaque ingalit mtrique correspond un choix de valeurs relles u 0 (u U associes
aux diffrentes artes de G et s'crit :
o, k, l *k dsigne la longueur de la plus courte chane entre s(k) et t(k) au sens des
longueurs u. On dmontre, de plus, que x = (X u) u U est une solution ralisable du
problme de multiflot si et seulement si toutes les ingalits [5.11] sont satisfaites, pour tous les
0.
Si l'on dsigne par jk l'ensemble des indices des ingalits mtriques intervenant l'itration k,
alors le sous-problme (Rk) s'crit :
Soit x une solution optimale de (Rk). C'est aussi une solution optimale du problme (P4) si
elle est ralisable pour (P4), c'est--dire si elle satisfait toutes les ingalits mtriques [5.11] (et
pas seulement celles explicites dans (Rk)). L'algorithme consiste donc, chaque itration,
rechercher s'il existe des ingalits mtriques non satisfaites par la solution courante x . S'il
n'en existe pas, x est solution optimale de (P4) et l'algorithme se termine. Si de telles
ingalits sont mises en vidence, elles sont ajoutes au sous-problme (R k) pour constituer le
sous-problme (Rk + 1) pour l'itration k + 1. C'est le processus dit de gnration de contraintes.
Bien entendu, il peut tre mis en oeuvre de bien des faons diffrentes, par exemple :
- on peut rechercher une seule ingalit, la plus viole , c'est--dire celle pour laquelle l'cart
entre les deux membres de l'ingalit [5.11] est le plus grand (suivant un critre dfinir). C'est
la technique dite de gnration simple ;
- on peut chercher identifier plusieurs ingalits non satisfaites et les ajouter toutes au sousproblme (Rk). C'est la technique dite de gnration multiple ;
- avant de gnrer des ingalits mtriques gnrales, on peut d'abord essayer de gnrer des
ingalits particulires, telles que les ingalits de bipartition qui peuvent tre traites plus
efficacement (les ingalits de bipartition sont des ingalits mtriques particulires obtenues
en posant u = 1 pour toutes les artes u appartenant une coupe sparant deux sous-ensembles
de sommets dans G).
La rfrence [GAB 99] dcrit une procdure originale de gnration de contraintes multiples
combinant l'utilisation d'ingalits de bipartition avec des ingalits mtriques gnrales, et o
les ingalits sont slectionnes suivant le critre du ratio :
(une valeur > 1 indiquant une ingalit non satisfaite par la solution courante x ).
Des rsultats d'exprience sont prsents sur une srie de 50 problmes-test jusqu' 20
noeuds et 37 artes (avec des fonctions de cot ayant 6 points de discontinuit en moyenne).
Un chantillon de ces rsultats apparat dans le tableau 5.1. N est le nombre de noeuds ; M le
nombre d'artes du rseau ; Iter le nombre total d'itrations ncessaires pour obtenir
l'optimalit exacte ; NC le nombre total de contraintes gnres au cours du processus et
IMG le nombre d'ingalits mtriques gnrales (autres que les ingalits de bipartition) ; T
est le temps de calcul total (en secondes) et T(GC) le temps pris pour gnrer les contraintes.
Le solveur de programmation linaire en nombres entiers utilis est CPLEX version 4.0.
N
Iter
IMG
NC
10
10
10
12
12
12
15
15
15
20
20
20
16
17
18
21
20
20
26
27
26
36
35
35
7
9
6
11
7
12
9
12
8
12
9
12
0
2
0
0
0
0
0
0
0
0
0
0
25
53
30
68
37
68
79
132
69
183
103
147
T
(Total)
26
171
48
1 471
150
361
1 621
10 911
984
18 795
2 139
12 476
T
(GC)
1,l
2,4
1,1
4
2,4
4,2
8
11,2
7,2
35
25
34
dont la structure peut tre exploite de diffrentes faons par des techniques de dcomposition.
On pourra consulter ce sujet les rfrences [DAH 98, GOE 93, MIN 81, MIN 84b, STO 94]
ainsi que les articles de synthse [GRO 95, MIN 89]. Mentionnons galement d'autres travaux
dans lesquels les contraintes de scurit sont prises en compte, de faon indirecte et
approximative par l'introduction de divers types de contraintes de connectivit (par exemple
des contraintes de k-connexit) : voir [GRO 90, GRO 92].
Nous examinerons plus particulirement ici des travaux plus rcents concernant la prise en
compte des contraintes de scurit dans la version (P4) du problme, c'est--dire dans le cas o
les fonctions de cot sont croissantes en escalier quelconques (voir paragraphe 5.4.4.2). Pour
simplifier la prsentation du modle, nous nous restreindrons la prise en compte des
dfaillances sur les artes du rseau (l'extension la prise en compte des dfaillances aux
noeuds ne faisant que compliquer les notations). Enfin, nous supposerons que, lorsqu'une
dfaillance se produit sur une arte (i, j) quelconque du rseau, tous les systmes de
transmission affects la liaison (i, j) sont dfaillants. Le modle prsent ci-dessous
s'tendrait sans difficult une reprsentation plus fine des dfaillances o, entre deux noeuds
quelconques i et j, un seul des systmes installs devient inutilisable la fois (il suffirait pour
cela de considrer autant d'artes (i, j) que de systmes de transmission pouvant tre installs
entre i et j, chacun tant caractris par son cot et sa capacit).
Pour exprimer la rsistance du rseau la dfaillance d'une arte quelconque, introduisons,
pour chaque v U, l'oprateur V, dfini de la faon suivante. Pour tout vecteur x RM
(o, u U, xu reprsente le flux total passant sur l'arte u).
V (x) = x avec
Dans le cas o les fonctions de cot u(xu) sont croissantes en escalier et o, sur chaque
arte u U, Vu dsigne l'ensemble des points de discontinuit de la fonction u, la
contrainte 0 xu u doit tre remplace par : xu Vu. On obtient alors une variante du
problme (P4), note (P4S).
Des mthodes de rsolution exacte du problme (P4S) ont t tudies essentiellement par
Dahl et Stoer [DAH 98, STO 94] et par Gabrel, Knippel et Minoux [GAB 00], les approches
proposes gnralisant, dans chacun des cas, celles dcrites dans le paragraphe 5.4.4.2.
Dans la rfrence [DAH 98], des rsultats de calcul sont fournis sur 23 problmes-test
concernant des rseaux de taille allant jusqu' 118 nuds, 134 artes (les fonctions de cot
ayant jusqu' 6 points de discontinuit). Pour tous les exemples traits, les matrices de
demande sont de trs faible densit (infrieure 7 %). Des solutions optimales exactes sont
obtenues pour 8 exemples sur 23 ; pour les autres exemples les carts l'optimalit sont en
moyenne faibles mais peuvent atteindre des valeurs importantes dans certains cas (jusqu'
66 %), ce qui suggre une grande variabilit dans la difficult des problmes considrs.
La rfrence [GAB 00] dcrit une extension de l'approche par gnration de contraintes
(voir [GAB 99] et paragraphe 5.4.4.2) au problme (P4S). Plusieurs stratgies alternatives
de gnration de contraintes sont proposes et exprimentes sur 14 problmes-test
correspondant des graphes de 15 et 20 nuds analogues ceux de [GAB 99].
La principale conclusion des expriences prsentes est que la rsolution du problme (P4S) se
fait en des temps de calcul comparables ceux obtenus pour le cas du problme (P4) (sans
contrainte de scurit). Les temps de calcul moyens ncessaires pour obtenir l'optimalit exacte
sont importants (typiquement de l'ordre de deux heures de temps de calcul avec le solveur de
programmation linaire en nombres entiers CPLEX version 4.0), mais il faut remarquer que,
dans tous les exemples traits, les matrices de demandes sont 100 % denses. La comparaison
des rsultats avec ceux de [DAH 98] semble bien indiquer que la difficult de ces problmes
d'optimisation de rseaux avec cots discontinus augmente trs rapidement avec la densit des
matrices de demandes. Dans la plupart des applications relles, il n'est pas raliste de se limiter
des matrices de demandes de faible densit.
5.6. Conclusion
Nous avons propos un modle trs gnral de multiflot cot minimum permettant de
formuler et de rsoudre de nombreux problmes de conception optimise de rseaux de
tlcommunications. La flexibilit de ce modle a t mise en vidence par sa capacit
prendre en compte de nombreuses contraintes additionnelles, souvent rencontres dans la
pratique de l'ingnierie des rseaux. Nous avons ensuite pass en revue les mthodes de
rsolution exacte disponibles ce jour pour les principales variantes du problme suivant la
forme des fonctions de cot considres et suivant que des contraintes de scurit doivent, ou
non, tre prises en compte.
Pour les versions les plus difficiles du problme, qui correspondent au cas des fonctions de cot
discontinues en escalier , les possibilits actuelles des mthodes exactes sont limites des
rseaux d'une vingtaine de nuds et une quarantaine d'artes (lorsque les matrices de demandes
sont 100 % denses). Bien que les applications ncessitent souvent le traitement de problmes de
plus grandes tailles, un des intrts essentiels des mthodes exactes est de fournir des solutions
de rfrence permettant de valider des mthodes approches (ou heuristiques) qui seules sont
applicables des problmes de grande taille [GAB 03].
L'tude des mthodes approches fait l'objet du chapitre 1 du second volume, Mthodes
heuristiques d'analyse de performance des rseaux.
5.7. Bibliographie
[AHU 93] AITUJA R., MAGNANTI T., ORLIN J., Networks Flows, Algorithms and
Applications. Prentice Hall, New York, 1993.
[ASS 78] ASSAD A.A., Multicommodity Network Flows - A Survey , Networks 8, p. 3791, 1978.
[BAR 96] BARAHONA F., Network Design Using Cut Inequalities , SIAM Journal on
Optimization, 6, 1996.
[BEN 62] BENDERS J.F., Partitioning Procedures for Solving Mixed-variable Programming
Problems , Num. Math. 4, p. 238-252, 1962.
[BER 70] BERGE C., Graphes etHypergraphes, Dunod, Paris, 1970.
[BIE 96] BIENSTOCK D., GNLK O., Capacitated Network Design-Polyhedral Structure
and Computation , INFORMS Journal on Computing, p. 243-259, 1996.
[BIE 98] BIENSTOCK D., CHOPRA S., GNLK O., TSAI C.Y., Minimum Cost Capacity
Installation for Multicommodity Network Flows , Mathematical Programming, 81, p. 177199, 1998.
[CHA 02] CHARDAIRE P., LISSER A., Simplex and Interior Point Specialized Algorithms
for Solving Non-Oriented Multicommodity Flow Problems , Operations Research, 50, 2, p.
260-276, 2002.
[CHO 90] CHOI I.C., GOLDFARB D., Solving Multicommodity Network Flow Problems
by an Interior-Point Method , SIAMProc. in Appl. Math., 46, p. 58-69, 1990.
[CHOP 96] CHOPRA S., GILBOA I., TRILOCHAN-SASTRY S., Algorithms and Extended
Formulations for One and Two Facility Network Design , Proceedings 5th IPCO Conf,
Lecture Notes in Computer Science, p. 44-57, 1996.
[DAH 98] DAHL G., STOER M., A Cutting-Plane Algorithm for Multicommodity
Survivable Network Design Problems , Informs J. on Computing, 10, 1, 1998.
[ELL 75] ELLIS L.W., La loi des volumes conomiques applique aux Tlcommunications
, Rev. Telecom, 1, 50, p. 4-20, 1975.
[FOR 62] FORD L.R., FULKERSON D.R., Flows in Networks, Princeton University Press,
Princeton, 1962.
[FRA 73] FRATTA L., GERLA M., KLEINROCK L., The Flow-Deviation Method: An
Approach to Store-and-Forward Communication Network Design , Networks 3, p. 97133,
1973.
[GAB 96] GABREL V., MiNoux M., Large Scale LP-Relaxations for Minimum Cost
Multicommodity Network Flow Problems with Step-increasing Cost Functions and
Computational Results, Rapport interne, MASI 96/17, Universit Paris 6, 1996.
[GAB 97] GABREL V., MNOUx M., LP Relaxations Better than Convexification for
Multicommodity Network Optimization Problems with Step-increasing Cost Functions ,
Acta Mathematica Vietnamica, 22, 128-145, 1997.
[GAB 99] GABREL V., KNIPPEL A., MINoux M., Exact Solution of Multicommodity
Network Optimization Problems with General Step Cost Functions , Operations Research
Letters, 25, p. 15-23, 1999.
[GAB 00] GABREL V., KNIPPEL A., MINOUX M., Exact Solution of Survivable Network
Problems with Step-Increasing Cost Functions , Pi-oc. ALGOTEL 2, mai 2000.
[GAB 03] GABREL V., KNIPPEL A., Mi oux M., A comparison of Heuristics for the
Discrete Cost Multicommodity Network Optimization Problem , Journal ofHeuristics 9, p.
429-445, 2003.
[GEO 74] GEOFFRION A., GRAVES G., Multicommodity Distribution System Design by
Benders Decomposition , Management Science 5, p. 822-844, 1974.
[GEN 99] GENDRON B., CRAINIC T.G., FRANGIONI A., Multicommodity Capacitated
Network Design , dans B. Sanson et P. Soriano (dir.), Telecommunications Network
Planning, Kluwer Acadernic Publisher, Dordrecht, p. 1-19, 1999.
[GER 771 GERLA M., KLEINROCK L., On the Topological Design of Distributed
Computer Networks . IEEE Trans. Com., COM-25, p. 48-60,1977.
[GOE 93] GOEMANS M., BERTSIMAS D., Survivable Networks, Linear Programming
Relaxations and the Parsimonious Property , Mathematical Programming, 60, 2, p. 145-166,
1993.
[GOM 62] GoMORY R.E., Hu T.C., An Application of Generalized Linear Programming to
Network Flows , SIAMJ. Appl. Math. 10, p. 260-283, 1962.
[GON 95] GONDRAN M., MrNOUx M., Graphes et Algorithmes, Eyrolles, Paris, 3e dition,
1995.
[GRI 72] GRIGORIADIS M.D., WHITE W.W., A Partitionning Algorithm for the
Multicommodity Network Flow Problem , Mathematical Programming, 3, 2, p. 157-177,
1972.
[GRO 90] GRiTSCHEL M., MONMA C., Integer Polyhedron Associated with Certain
Network Design Problems with Connectivity Constraints , SIAM J. Discrete Math., 3, p.
502-523, 1990.
[GRO 921 GRTSCHEL M., MONMA C., STOER M., Computational Results with a
Cutting-Plane Algorithm for Designing Communication Networks with Low Connectivity
Constraints , Operations Research 40, p. 309-330, 1992.
[GRO 95] GRTSCHEL M., MONMA C., STOER M., Design of Survivable Networks ,
Handbook in OR and MS, vol. 7, p. 617-672, 1995.
[GUN 99] GNILK O., A Branch-and-Cut Algorithm for Capacitated Network Design
Problems , Math. Prog. A, 86, p. 17-39, 1999.
[HOA 82] HOANG H.H., Topological Optimization of Networks: A Nonlinear Mixed Integer
Model Employing Generalized Benders Decomposition , IEEE Trans. Automatic Control,
AC-27, p. 164-169, 1982.
[KER 701 KERNIGHAN B.W., LIN S., An Efficient Heuristic Procedure for Partitioning
Graphs , Bell Syst. Techn. J., 49, 2, p. 291-307, 1970.
[KEN 77] KENNINGTON J., SHALABY M., An Effective Subgradient Procedure for Minimal
Cost Multicommodity Flow Problems , Management Science, 23, 9, p. 994-1004, 1977.
[KEN 78] KENNINGTON J., Multicommodity flows: A state-of-the art survey of linear
models and solution techniques , Opns. Res. 26, p. 209-236, 1978.
[MAG 84] MAGNANTI T.L., WONG R.T., Network Design and Transportation Planning
Models and Algorithms , Transportation Science, 18, 1, p. 1-55, 1984.
[MAG 86] MAGNANTI T.L., MIREAULT P., WONG R.T., Tailoring Benders
Decomposition for Uncapacitated Network Design , Mathematical Programming Study, 26,
p. 112-154, 1986.
[MAG 93] MAGNANTI T.L., MIRCHANDANI P., Shortest Paths, Single OriginDestination Network Design and Associated Polyhedra , Networks, 23, p. 103-121, 1993.
[MAG 95] MAGNANTI T.L., MIRCHANDANI P., VACHANI R., Modeling and Solving
the Two-facility Network Loading Problem , Operations Research 43, 1, p. 142-157.
[MIN 76a] MINOUX M., Optimisation et planification des rseaux de
Tlcommunications . dans G. Goos, J. Hartmanis et J. Cea (dir.), Optimization Techniques,
Lecture Notes in Computer Science 40 , Springer-Verlag, p. 419-430, 1976.
[MIN 76b] MINOUX M., Multiflots de cot minimal avec fonctions de cot concaves ,
Annales des Tlcommunications, 31, p. 77-92, 1976.
[MIN 81] MINOUX M., Optimum Synthesis of a Network with Nonsimultaneous
Multicommodity Flow Requirements , dans P. Hansen (dit.), Studies on Graphs and
Discrete Programming, Annals of Discrete Mathematics, 11, p. 269-277, 1981.
[MIN 84a] MINOUX M., Subgradient Optimization and Benders Decomposition for Large
Scale Programming , dans R.W. Cottle, M.L. Kelmanson et B. Korte (dir.), Mathematical
Programming, North-Holland, p. 271-288, 1984.
[MIN 84b] MINOUX M., SERREAULT J.Y., Subgradient optimization and large scale
programming: an application to network synthesis with security constraints , RAIRO 15, p.
185-203, 1984.
[MIN 86a] MINOUX M., Mathematical Programming. Theory and Algorithms, John Wiley
& Sons, 1986.
[MIN 86b] MINOUX M., Network Synthesis and Dynamic Network Optimization ,
Annals of Discrete Mathematics, 31, p. 283-324, 1986.
[MIN 89] MINOUX M., Network Synthesis and Optimum Network Design Problems:
Models, Solution Methods and Applications , Networks, 19, p. 313-360, 1989.
[MIN 01] MINOUX M., Discrte Cost Multicommodity Network Optimization Problems
and Exact Solution Methods , Annals of Operations Research, 106, p. 19-46, 2001.
[MON 89] MONMA C., SHALLCROSS D., Methods for Designing Communication
Networks with Certain Two-Connected Survivability Constraints , Operations Research,
37, p. 531-541, 1989.
[OUO 95] OUOROU A., Dcomposition proximale des problmes de multiflots critre
convexe. Application aux problmes de routage dans les rseaux de communication, Thse
de Doctorat, Universit de Clermont-Ferrand, 1995.
[PIN 92] PINAR M.C., ZENIOS S.A., Parallel Decomposition of Multicommodity Network
Flows Using a Linear Quadratic Penalty Algorithm , ORSA Journal on Computing, 4, 3, p.
235-249, 1992.
[SAK 66] SAKAROVITCH M., The Multicommodity Maximum Flow Problem , ORC
Report, 65-25, Universit de Californie, Berkeley, 1966.
[SCH 91] SCHULTz G.L., MEYER R.R., An Interior-Point Method for Block-Angular
Optimization , SIAM J. Optimization, 1, 4, p. 583-602, 1991.
[STO 94] STOER M., DAHL G., A Polyhedral Approach to Multicommodity Survivable
Network Design , Numerische Mathematik, 68, p. 149-167, 1994.
[YAG 71] YAGED B., Minimum Cost Routing for Static Network Models , Networks, 1,
2, p. 139-172, 1971.
Index
A, B, C
analyse
d'accessibilit 206
structurelle 205
arc inhibiteur 194
BCMP 44, 45, 160,167
Branch and Bound 241, 248
capacit finie (ou limite) 85, 127
caractrisation de la charge 34, 35
chane de Markov 56
temps
continu (CMTC) 56,135
discret (CMTD) 63
incluse 63, 108
Chang-Lavenberg 38
classes de clients 121, 125
combinatoire 240
convolution (algorithme) 146, 158, 173, 183
Cox (loi) 117
D, E
dimensionnement 227
discipline de service 41
quations d'tat 66
Erlang-B (formule) 100
Erlang-C (formule) 97
Erlang-k (loi) 113-115
exponentielle (loi) 51
F, G
FIFO 74
flot simple 230
flots forcs (loi des) 151
fonction de cot 233, 234
forme produit 137, 140, 146, 167
G/M/. 109
gnrateur infinitsimal 60
gestion de capacit 24
Gordon-Newell (rseau) 142
graphe des marquages 195
H, I, J, K
hyperexponentielle (loi) 116
intervalle de confiance 25
Jackson (rseau de) 132
Kendall (notation) 73
L, M
LOFS (discipline) 162
Little (loi de) 36, 38, 39, 83
loi de Kirchhoff 229, 230
M/G/1 106
M/M/. 73-106
marquage 192
matrice d'incidence 192
mesure 22, 33
modle
analytique 23
formel 189
modlisation 21, 22
multiflot 231, 232, 233, 234, 242, 244, 254
WA (Mean Value Analysis) 152, 178, 184
N, O, P
normalisation (condition de) 81
notation de Kendall 42
optimisation 24
PASTA (proprit) 89
PH-k (loi) 118
Pollaczeck-Kinchin (formule) 109
processus
d'arrive 53, 123
de naissance et de mort 77, 104
de Poisson 53
producteur-consommateur 199
programme linaire 238
PS (Processor Sharing) 162
Q, R
qualit de service 220
rseau
de files d'attentes
ferms 124, 142
ouvert 122
de Jackson 44
de Petri 189
tiquet 194
places transitions 190, 191
stochastiques 190, 200, 207
temporels 190, 195, 207
routage (dans un rseau de files) 123
S, T, V