Documente Academic
Documente Profesional
Documente Cultură
'
Traditionnellement, la place de X et Y, on utilise les symboles suivants :
G.I. : variable alatoire des dures inter arrives de la loi Gnrale Indpendante.
G : variable alatoire des dures de services de la loi gnrale
H
k
: loi darrive ou service hyper exponentielle :
i
k
t
i i
i 1
f (k) e
avec
k
i i
i 1
1 et 0
E
k
: loi darrive ou service Erlang dordre k :
1
1
( )
( 1)! ( ) 0
0 0
k kt
k kt e
k f t pour t
pour t
'
<
M : loi darrive ou service Exponentielle ou Markovienne.(arrive de poisson et service
exponentiel ngatif
D : loi darrive ou service dterministe, cest dire certaine (dure constantes)
R peut indiquer une discipline de service :
- FIFO : premier arriv, premier servi. Cest le cas par dfaut
- LIFO : dernier arriv, premier servi
- PS :partage de processeur. La puissance du processeur est partage entre les
clients prsents (les temps de service sont multiplis par le mme facteur)
- Random : les clients sont choisis au hasard
- SPF : plus court temps dexcution dabord
-
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
2-2 Variables alatoires caractrisant un systme de files dattente.
Figure 3Variables alatoires caractrisants les systmes dattente
N : nombre de clients dans le systme.
N
Q
: nombre de clients dans la file.
Y : dure de service.
W : temps de sjour dans le systme.
W
Q
: temps de sjour dans la file.
N : variable alatoire tat du systme
N
Q
: variable alatoire tat de la file
L=E(N) : nombre moyen de clients dans le systme.
L
Q
=E(N
Q
) : nombre moyen de clients dans la file
W : variable alatoire, dure dattente
dans le systme.
W
Q
: variable alatoire, dure dattente
dans la file
W=E(W) : dure moyenne de sjour dans le systme.
Q
W =E(W
Q
) : dure moyenne de sjour dans la file.
Serveur 1
Serveur i
Serveur n
Clientle :
Limite ou non
Files dattente
Units de service
W
Q
W
Y
N
Q
N
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Avec :
1
E(X)
: taux moyen darrive par unit de temps.
E(X) : intervalle moyen entre 2 arrives successives.
1
E(Y)
: taux moyen de service (pour 1 serveur) par unit de temps.
E(Y) : dure moyenne dun service.
[ ]
1/ 2
X 2
Var(X)
C
E(X)
' ;
: coefficient de variation de la variable alatoire X, servant caractriser
la nature de
X
F (t) .
Par exemple :
2
X
C 0 arrives rgulires, X est constante.
2
X
C 1 arrives markoviennes, X est exponentielle.
2
X
1
C
k
arrives au hasard, X est du type Erlang-k
2
X
1
C
k
arrives au hasard, X est du type hyper exponentielle dordre k..
Dans la suite on va utiliser W(respectivement W
q
) au lieu de W(respectivement W
q
) pour
allger lcriture.
2-3 Critres de performances.
- Intensit de trafic (mesure en Erlangs)
E(Y)
A
E(X)
- Facteur dutilisation :
A
S
( galement mesur en Erlangs) avec S est le
nombre de serveurs en parallle.
Remarque : Dans un intervalle de temps T, arrive en moyenne T clients, qui consommeront
T E(Y) units de temps de service.
Si A 1 il faudra plus dun serveur.
La demande moyenne de service par unit de temps est donne par T E(Y)/T= . En gnral,
le nombre de serveurs ncessaire minimal pour faire face la demande est donn par
A
1
S
< .
Notations :
W : dure moyenne de sjour dans le systme.(temps de service compris)
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Q
W : dure moyenne de sjour dans la file. .(temps de service exclu)
L : nombre moyen de clients dans le systme.
L
Q
: nombre moyen de clients dans la file.
n
p ( t )
: probabilit de trouver n clients dans le systme linstant t.
n
p
: probabilit de trouver n clients dans le systme en rgime permanent.
2-4 Formule de Little :
Cest la loi de conservation des clients.
Le nombre de clients dans le systme = (le nombre de clients qui arrivent par unit de temps)
multipli par (le temps pass par un client dans le systme).
Le nombre de clients dans la file = (le nombre de clients qui arrivent par unit de temps)
multipli par (le temps pass par un client dans la file).
eff Q eff Q
L w et L w
eff
= (1-
K
P ) avec
K
P est la probabilit de saturation du systme ou aussi probabilit de rejet.
La formule de Little est intressante pour diffrentes raisons :
- La thorie des files dattente donne assez facilement des rsultats sur les
probabilits dtat, desquelles on dduit le nombre moyen de clients dans le systme.
La formule de Little permet donc de calculer le temps de rponse(ou le temps dattente
total) dun systme partir de lvaluation du nombre moyen.
- Il est extrmement difficile de mesurer sur un systme rel le temps de
rponse(il faut pour cela mmoriser le temps darrive de chaque client pour calculer
sa sortie du systme des statistiques de temps de rponse). Par contre les donnes sur le
nombre moyen darrives par unit de temps dune part et sur le nombre moyen de
clients prsents sobtiennent facilement (par des mesures de comptage ou par
chantillonnage). On peut donc valuer le temps de rponse en faisant des mesures sur
des variables beaucoup plus faciles valuer.
- Le rsultat de Little ne dpend pas de la variance du processus darrive mais
seulement de sa moyenne. Il ne dpend pas non plus du temps de service dun client
dans le systme.
- Ce rsultat sapplique nimporte quel systme, par exemple ltat dune file
dattente sous certaines conditions, ce qui facilite lobtention dquations liant des
probabilits dtat.
3) Processus stochastique
Un processus stochastique est une famille de variables alatoires :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
{X(t), t T} o t parcours l'ensemble d'indice T
- Si T est discret, on a affaire une suite ou chane stochastique.
- Si T est continu, on a affaire un processus stochastique.
t dsigne trs souvent une date, lorsque T est discret par ex : t
1
,...,t
n
.
t dsigne une date (instant qcq), lorsque T est continu.
Lorsque X(t) prend un nombre fini ou dnombrable de valeurs, le processus est dit espace
d'tat discret . Si au contraire les valeurs sont continues : espace d'tat continu.
Un processus alatoire {X(t),t T} est markovien si :
u X(u) = x donn x
t > u X(t) est indpendant des X(s) s u
Cest un processus sans mmoire, X(u) = x ne dpend pas de son comportement antrieur.
4) Processus de naissance et de mort
Un tel processus est une gnralisation du phnomne de file d'attente dans le cas o
et dpendent du nombre n de clients. Les arrives (ou naissances) restent poissoniennes, les
services (ou morts) exponentiels et la politique de service est FIFO.
S'il existe S stations, le service est proportionnel au nombre de clients tant que n est plus petit
que S ; il est gal S. pour n = S. Ainsi :
n
= ;
n
= n. (si S > n) ;
n
= S. (si n = S)
Nous sommes donc en prsence dune chane de Markov temps continu. La file est
compltement caractrise par le nombre de clients prsents linstant t. Les deux processus
qui font voluer le nombre de clients tant markoviens ne dpendent daucune autre
information. Le processus darrive fait voluer le nombre de clients de n n+1 avec une
probabilit
n
dt pendant lintervalle [t, t+dt]. Le processus de service fait diminuer ce nombre
de 1 avec une probabilit
n
dt pendant un intervalle de mme longueur.
5) Caractristiques dune file dattente
Une file dattente est caractrise par :
- la distribution du taux darrive (poisson ou autre)
- la grandeur de la population de la source (limite ou illimite)
- le comportement des arrives : chaque client
!" rejoint la queue et attend pour tre servi
!" si le systme est trop plein, refuse de joindre la ligne
!" Renonce et quitte la ligne aprs y tre entr lorsque lattente est trop longue.
!" Changer de file
!" Se voir refuser lentre si le systme est plein.
Caractristiques de la ligne dattente :
- longueur de la queue(limite ou illimite)
- priorit de service (FIFO ou autre)
Caractristiques du service :
- Nombre des canaux
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
- Nombre des phases dans le service
- Distribution du temps de service (exponentiel ngatif ou autre)
5-1 Quelques dfinitions utiles :
5-1-1 Trafic offert
Cest le nombre moyen dappels arrivant pendant le temps moyen de service. On le note A et
il est gal
Cette dernire probabilit est la loi de Poisson de paramtre (il y a arrives au systme par
unit de temps).
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Pour le cas dun systme stationnaire, la distribution de poisson devient : ( )
!
X
e
P X
X
Figure 4: Loi de Poisson =1 et =5 .
Nous remarquons que la probabilit est faible quand X est grand. Et, plus est faible plus la
probabilit est importante pour les X faibles.
Ceci sexplique par : si le taux darrive est faible, alors la probabilit P(X faible) est
importante : il y a X clients ou moins seulement dans le systme ce qui est tout fait normal.
Autres lois :
- Loi binomiale
Une suite de n variables alatoires de Bernoulli Xj relatives n preuves identiques
indpendantes permet de former la variable alatoire
1
n
j
j
Y X
Manifestement, Y peut prendre toutes les valeurs entires de 0 n et prendra la valeur k si k
des Xj sont gaux 1 et les autres 0.
Soit p = Pr(Xj = 1) La probabilit d'une suite particulire de 0 et de 1 contenant k fois 1 est
p
k
(1 - p)
n-k
. Ces diffrentes suites correspondent des vnements mutuellement exclusifs et
la probabilit que l'un quelconque d'entre eux se produise, c--d que Y = k est la somme de
leurs probabilits individuelles. Comme il y a
!
!(1 )
k
n n k
n
C
k p
- Loi de Pascal :
La loi binomiale rpond (au sens probabiliste) la question du nombre doccurrences d'un
vnement au cours de n preuves indpendantes susceptibles de le produire.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
La loi de Pascal (encore appele "binomiale ngative") rpond la question inverse du
nombre, soit Zk, d'preuves effectuer pour obtenir 1,2 ou k ralisations de cet vnement . (Il
est entendu qu'on s'arrte ds que le nombre requis est atteint)
Appelons 'succs' une preuve qui produit lvnement cherch et 'chec' une preuve qui ne
le produit pas. Pour k = 1 la rponse s'obtient simplement en observant que si le nombre
d'preuves ncessaires est n il y a eu n -
1 1
1
( ) (1 )
k n k
k n
P Z n C p p
5-3 Loi des services
De la mme faon, on se limite au cas o le temps de service peut se dcrire par une variable
alatoire de loi F(x), identique pour chaque client, les temps de services des clients successifs
tant choisis indpendants (variables i.i.d.).
La loi la plus simple dcrire est la loi constante avec des temps des services ayant tous la
mme dure.
On utilise aussi la loi exponentielle de taux caractrise par :
F (x) = 1 -
x
e
Si on considre les intervalles de temps qui s'coulent entre les vnements successifs d'une loi
de Poisson de taux , on constate qu'ils suivent une loi de la forme :
p(q) = .exp(-.q)(o les q sont les intervalles de temps qui sparent 2 vnements
conscutifs).
Figure 5 : Loi exponentielle de taux =0.5
La probabilit de servir les clients est dcroissante en fonction de X, puisque quand le nombre
des clients est grand, la probabilit pour quils soient servis est faible.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
6) Mesures de la performance de la ligne dattente
Les mesures des performances des systmes dattente sont gnralement prsents selon les
grandeurs suivants:
- temps moyen pass dans le systme W
- temps moyen pass dans la file W
q
- longueur moyenne de la file L
q
(ou nombre de clients dans la file)
- nombre moyen de clients prsents dans le systme L
- probabilit de ne trouver aucun dans le systme, P
0
- taux dutilisation
c
La loi Erlang C donne la probabilit de mise en attente P(>0):
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
0
!
( 0)
! !
N
n N N
n
A N
N N A
P
A A N
n N N A
>
+
La densit de la loi dErlang est:
1
( ) ( )
( 1)!
k k
t
f t k t
k
e
1
1
1
]
o k = entier, = constante
k = 1 => distribution exponentielle => f(t) =
t
e
1
0
( )
( ) 1
!
n k
k t
n
k t
F t e
n
Pour que le systme puisse effectuer toutes les taches, il faut que 1 ! cest dire que le
nombre des terminaux soit strictement infrieur 40.
Prenons un exemple. Supposons que le nombre de terminaux n soit gal 36. Le temps de
rponse W est alors de 5s.
Supposons que lordinateur, au lieu dtre un monoprocesseur soit un biprocesseur, chaque
processeur tant identique celui dcrit prcdemment. Le modle mathmatique devient
celui dcrit dans la figure 8 . Cest une file M/M/2.
Dans ce cas le temps de rponse moyen, sil y a 36 terminaux, devient :
W=0.28s
20
n
2
Terminaux n
Figure 8 : Modle mathmatique dun ordinateur biprocesseur
3) Les principales mthodes quantitatives pour lvaluation des performances:
3-1 La mesure
Cest une mthode rcente pour valuer les performances, situ la frontire de la
mesure et de la simulation et donne par l'mulation. Cette technique est base sur le concept
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
de machine virtuelle: Une machine virtuelle est un environnement de programmation qui est
fonctionnellement le mme que celui de la machine cible, diffrente du systme physique sur
lequel tourne l'environnement. Cette technique est, par exemple, utilise pour la conception de
prototypes. Bien que les proprits fonctionnelles du systme cible soient maintenues et
conserves, les proprits temps-rel et les performances ne le sont gnralement pas.
3-2 L' instrumentation.
Linstrumentation reprsente un moyen simple d'outiller un systme pour
mesurer ses performances et consiste en partie utiliser des sondes logicielles (microcode) ou
matrielles.
Les sondes matrielles sont des sondes lectriques haute impdance connectes au matriel
mesurer. Elles peuvent tre utilises pour capturer l' tat des composantes matrielles du
systme (registres, mmoires, chemins de donnes). Les signaux mesurs peuvent tre
combins afin d'tudier des tats plus complexes que ceux mesurs directement. Les moniteurs
matriels n'ont gnralement pas accs aux informations logicielles et cumulent difficult
d'intgration et cot non ngligeable.
Les sondes logicielles sont ralises par l'intermdiaire d'instructions ajoutes au systme
mesur(OS ou Programme d'application) pour collecter les donnes de performance. Elles
peuvent capturer des donnes en lisant des cases mmoires ou des informations d'tat (status).
Les instructions supplmentaires excuter (provenant du logiciel espion) peuvent modifier
les performances du systme: Les performances mesures sont alors diffrentes des
performances relles.
3-3La 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 : Utiliss pour reprsenter le comportement logique d' un systme sans
faire intervenir de considrations temporelles.
Les chane de MARKOV : Une chane de MARKOV, dcrit l'volution d'un systme partir
de ses tats. Les spcifications suivantes rgissent le modle:
- La quantit d'informations utilise pour dcrire les tats de la chane,
- Le calcul des taux de transitions entre tats.
Une autre alternative de modlisation est fournie par les rseaux de files d' attente. C' est la
mthode la plus utilise pour estimer les performances d' un systme informatique. De
nombreux outils permettant la rsolution exacte ou approche existent. De plus, il existe des
langages spcialiss permettant la description et l' tude quantitative de modles ayant la
structure gnrale de rseaux de files d' attente.
3-4 La simulation
On peut discerner deux types de simulation, la simulation par trace et la simulation
vnement discrets:
- La simulation par trace ("trace driven")
C' est la simulation d' un modle dterministe qui est dirig par une squence ou une trace
obtenue partir de mesures effectues sur un systme existant. Le modle possde rarement
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
une structure de rseau de files d'attente. Une trace approprie(ou script) est obtenue en
mesurant un systme.
- La simulation vnement discrets ("discrete event")
Cette approche reprsente typiquement la simulation d' un modle de files d'attente qui est
dirig par une squence de nombres alatoires (ou semi-alatoires) dont la distribution est
spcifie par l' utilisateur. Ces squences alatoires sont utilises pour obtenir les temps de
rponse, les probabilits de branchement (routage,...), etc.
4) Cas d'une file d'attente une station
Dans cette partie, nous allons considrer le cas d'une file unique o les clients arrivent selon
une loi de Poisson et sont servis la station dans un temps suivant une loi exponentielle.
Cette partie a pour but de mettre en vidence les principaux rsultats qui interviennent dans les
simulations ou les prvisions relatives aux files d'attente.
La probabilit qu'il y ait n clients dans la station est :
p
n
=( / )
n
.( 1 - / )=
n
( )
Remarque : Cette probabilit ne dpend pas du temps car le phnomne est stationnaire.
Dmonstration :
Si n personnes sont dans le systme d'attente t + Dt, cela ne peut provenir que de 4
situations:
Nombre de personnes
t
Entres
pendant Dt
Sorties
pendant Dt
Nombre de personnes
t + Dt
n-1 1 0 n
n 0 0 n
n 1 1 n
n+1 0 1 n
Tableau 2 : Etat du systme de t t+Dt
D'aprs les hypothses, la probabilit qu'une personne qui entre pendant Dt est .Dt alors
que.D t est la probabilit qu'une personne sorte.
On obtient donc la probabilit qu'il y ait n clients au temps t + D t:
p
n
(t+D t) = p
n-1
(t)[ . D t.(1- . D t)] + p
n
(t)[(1- . D t).(1- . D t)] + p
n
(t) . D t. . D t +
p
n+1
(t)[(1- . D t). . D t]
On nglige tous les termes en Dt
2
pour obtenir le rsultat :
p
0
= - /
p
n
= ( / )
n
.( 1 - / )
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Remarque : on dit que l'on a engorgement si : / >1.
Le nombre moyen L de clients dans le systme est :
L = /( - ) = /(1-)
Le temps moyen W
q
qu'attends un client dans la file est :
W
q
= / [.( - )] = /(1-)
5) Conclusion
Dans ce chapitre, nous avons montr laction de la thorie des files dattente sur le plan
de calcul des performances des systmes dans le cadre gnral puis dans le cadre dun
exemple dun systme file dattente M/M/1.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Chapitre IV: CASA la CAlculette des
paramtres des Systmes dAttente
(Partie thorique)
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
CASA :CAlculette des paramtres des Systmes dAttente
Partie thorique
1) Introduction
On a dcouvert que la modlisation de la fiabilit des systmes complexes se formule
bien en terme de files dattentes. Ce qui a donn lieu aux problmes doptimisation des files
dattente spcifiques. Il fallait donc connatre les performances dun systme pour pouvoir
changer de configurations suivant les changements qui surgissent selon les demandes. Le
programme implment que nous avons appel CASA (CAlculette des paramtres des
Systmes dAttente) permet de calculer les performances des systmes et de les fournir en
sortie grce une interface dentre - sortie, simple manipuler.
Nous avons cherch, grce ce logiciel, faciliter laccs des rsultats sans que le
concepteur ait recourt aux formules et calculs analytiques trop complexes en gnral, ou mme
connatre un langage de programmation pour les faire.
Ainsi, il peut prendre des dcisions appropries au cas quil traite, comme par exemple :
- Ajouter ou retrancher dautres files dattente
- Changer le taux de service des serveurs
- Changer de discipline de service (utiliser des priorits par exemple)
De cette faon, il peut trouver un compromis entre cot des ressources et cot dattente (ne pas
perdre de clients).
Par exemple, si nous voulons modliser un commutateur de rseau de communication dont les
fonctions principales sont le routage et l'acheminement des paquets qu'il reoit, nous pouvons
calculer grce CASA le nombre de paquets achemins et le dbit utilis :
C
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Figure 9 : File dattente dans un commutateur de rseau de communication
Pour dcrire un systme dattente, il suffit de connatre les valeurs de ses diffrents
paramtres. Ceci est visualis par diffrents thormes. Le problme qui nous est apparu, cest
que peu de documents et de revues prsentent ces solutions analytiques. Elles sont trop
disperses dans la littrature et il fallait les trouver et grouper pour sen servir.
2) Caractristiques des files dattente choisies :
- les clients qui arrivent les premiers sont servis les premiers(discipline de service FIFO)
- les arrives sont indpendantes des prcdentes
- les arrives suivent la distribution de poisson
- le temps de service varie dun client un autre et ils sont indpendants, le temps
moyen est connu
- les temps de service sont dcris par la distribution exponentielle ngative
- le taux de service est suprieur au taux darrive .
- Le processus est sans mmoire, ltat du systme ne dpend pas des tats antrieurs.
Pourquoi choisir les files Markoviennes ?
Le processus Markovien est un processus sans mmoire, et donc ltat du systme un
instant t ne dpend pas de ceux t<t. Ainsi le calcul sera beaucoup plus difficile avec les
processus non Markoviens puisquil faut tenir compte du temps des relations entre les
diffrents tapes passes dans le systme.
3) La file dattente M/M/1
Les arrives des clients forment un processus de Poisson de taux et le temps de
service une loi exponentielle de taux . Les arrives peuvent tre trs importantes jusqu tre
assimil linfini. est le nombre moyen darrives par unit de temps, , le nombre moyen
de clients pouvant tre servi par unit de temps ; 1 / est donc la dure moyenne dun service.
Il sagit dun processus de naissance et de mort, le taux de naissance tant , le taux de mort .
Le taux dutilisation est A= / .
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Cest lexemple le plus simple qui modlise le processus dattente devant un guichet unique
quand les arrives sont poissoniennes et le processus de service exponentiel ngatif. On
applique les rsultats de la thorie avec :
i =
i =
Figure 10 : Taux darrive et de sortie dans une file dattente
Lanalyse de la solution montre immdiatement que celle-ci ne dpend que du rapport = /
o est appel le taux dutilisation ou de charge de la file.
La solution est donne par les quations (3.4) et (3.5) :
0
n
n
P P
0
1
0 1
i
i
P
Lexistence de la solution (la condition dergodicit <1 : condition qui garanti la
convergence de la srie au dnominateur de P
0
) est lie la convergence de la srie figurant au
dnominateur de lexpression donnant P0. On a donc :
< ou <1 : la file est stable
ou 1 : la file est instable
Cest un modle de file 1 station, les nombres moyens de clients et les temps moyens passs
sont donns par les expressions (dmonstration P23):
Le nombre de clients dans le systme
1
L
Temps moyen de prsence dans le systme
1
W
Nombre moyen de clients en attente :
2
1
q
L
La file dattente M/M/1 est largement utilise dans la modlisation de systmes pour plusieurs
raisons :
- Elle est extrmement simple traiter, avec un ensemble de proprits facilement
exprimables par des formules closes, aises manipuler. Elle modlise dune manire
gnrale tout systme de type guichet.
- Les hypothses quelle utilise ( processus markoviens en entre et en sortie) sont
classiquement utiliss dans la modlisation de divers systme, en labsence de
caractrisation plus prcise et justifie des paramtres.
- Elle possde des proprits qui sont conserves(du moins sous certaines hypothses qui
seront prcises en temps voulu) quand plusieurs files sont organises en rseau.
La file dattente M/M/1,systme capacit limite (M/M/1/K):
Jusqu prsent, nous avons suppos que le nombre de places dans la file dattente tait infini.
Dans la pratique, et pour prendre en compte la capacit limite des systmes (tailles limites
des tampons dans les files dattente des protocoles, mmoire limite des machines), on est
souvent conduits prendre lhypothse de files dattente capacit limite, ce qui revient
tudier des files du type M/M/1/K. Dans ce cas, un client qui arrive, alors que le systme est
plein, est rejet. Dune manire quivalente, on peut dire que le taux darrive dpend de
l tat de la file. Il vaut si n est infrieur strictement strictement N, et 0 sinon.
Dans de nombreux cas le nombre de clients dans le systme dattente est limit, soit K le
nombre maximum de clients admissibles. Dans le processus de naissance et de mort associ on
a maintenant :
n
si n = 0, , K 1, 0 si n >= K et de mme
n
= si n = 1, , K, 0 si n > K.
En rgime stationnaire on obtient donc, en posant = / :
P
n
=
n
P
0
pour n = 0, 1, , K, avec P
0
= (1 - ) / (1 -
K + 1
) si <> ,
= 1 / (K + 1) si =
1
(1 )
( 1)
1
1
( 1)
1
n
K
n
P
K
'
+
et donc on obtient :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
1
1
( 1)
( 1)
1 1
( 1)
2
K
K
K
L
K
+
+
+
'
L=
eff
W
1
q
W W
+
L
q
=
eff
W
q
avec
eff
= (1-P
K
)
La probabilit de rejet est :
1
(1 )
1
K
K
Ce qui permet de traduire le critre de qualit de service.
4) La file dattente M/M/c
Cette file correspond un systme comprenant c serveurs identiques et un nombre de places
infini dans la file dattente. Si le nombre de clients prsents est infrieur ou gal c, chacun
des clients prsents utilise un serveur, sinon, c clients sont servis en parallle.
Imaginons le systme dans l'tat o k clients sont prsents, qui occupent k serveurs (les autres
sont inactifs)avec k<c. Dans l'intervalle Dt qui vient, chacun des services en cours peut se
terminer, avec la probabilit Dt + o(Dt) (services exponentiels). La probabilit d'une et une
seule fin de service est la somme des probabilits que chacun des services s'achve, diminue
de la probabilit de 2 ou plus fins de services - vnement de probabilit en o(Dt)
2
, donc
ngligeable dans l'opration de passage la limite. Le taux de service vaut donc k tant que k
< c et c au-del (parce que c est la limite au nombre des serveurs actifs) . Le trafic offert est
not A et le trafic par serveur est = A/c. La condition de stabilit reste < 1 - soit A < c .
Le taux de service quand il y a n serveurs est :
( 0,1,..., )
( 1, 2,...)
n
n n c
c n c c
'
+ +
1
c
<
Pour les probabilits de trouver n clients :
1
1
0
0
( )
!(1 ) !
c c n c
n
c c
P
c n
1
+
1
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
0
0
( )
( 0,1,..., )
!
( 1, 2,...)
!
n
n
c n
c
P n c
n
P
c
P n c c
c
'
+ +
On aura comme rsultats
1
0
2
!(1 )
c c
q
c P
L
c
1
q
W W
+
L=W
1
q
q
W L
Les temps dattente chaque instant t :
( 1 )
0
( ) 1
( ) 1 ( 0)
!(1 )( 1 )
c t c c
t
c P e
W t e t
c c c
1
]
+
' ;
(1 ) 0
( )
( ) ( 0)
!(1 )
c
c t
q
c P
W t e t
c
La probabilit dattendre est :
1
(0) ( , )
! 1
c
w
A
P P C A c
c
;
Cest la formule dErlang avec attente ou Formule Erlang-C .
5) Le modle M/M/infini
Dans le cas limite o c = (c nombre de serveurs) on obtient le systme M/M/ : une infinit
de serveurs donc un client qui arrive est immdiatement servi => pas dattente dans la file.
Lquation qui le dcrit est :
1
1, 2,...
n n
P n P n
et donc
0
1
1, 2,...
!
n
n
P P n
n
En utilisant
0
1
n
n
P
on obtient
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
1
0
1
1
!
n
P e
n
1
+
1
]
et finalement
0,1,...
!
n
n
e
P n
n
Dans ce cas spcifique, le nombre de clients est distribu selon une loi de poisson de
paramtre , le nombre moyen dans le systme est
L= ou nombre de serveurs occups
Et grce la formule de Little le temps moyen pass dans le systme sera
W=
1
.
L
q
=0
W
q
=0.
6) La file dattente M/M/c/K
Cest un systme capacit finie avec c serveurs ayants des temps de service exponentiels iid.
( 0,1,... 1)
0 ( , 1, 2,...)
n
n K
n K K K
'
+ +
( 0,1,..., )
( 1, 2,...)
1
n
n n c
c n c c
c
'
+ +
<
La capacit K doit tre suprieure ou gale au nombre de serveurs c (c<=K)
La probabilit pour quil y a n clients en attente est
0
0
( )
( 0,1,..., )
!
( 1, 2,..., )
!
0 ( 1, 2,....)
n
c n
n
c
P n c
n
c
P P n c c K
c
n K K
+ +
'
+ +
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
[ ]
1
1
0
1 0
0
(1 ) ( )
( 1)
!(1 ) !
( )
( ) ( 1)
! !
c c K c n c
n
c n c
n
c c
c n
P
c c
K c
c n
'
1
+
1
on aura donc
( 1)
0 2
1 (1 )( )
!(1 )
c c
K c K c
q
c
L K c P
c
+
1
]
L =
eff
q
L
+
1
q
W W
+
L
q
=
eff
W
q
avec
eff
= (1-P
K
)
Le modle M/M/R/R
Ce type de systme se caractrise en plus par :
- un nombre fini de processeurs
- un nombre fini (=nombre de processeurs) de places dans la file
- le rejet des clients qui arrivent quand le systme est satur.
En consquence, ce type de file ne donne pas lieu des attentes pures, et on peut dj donner
plusieurs rsultats (valables pour les clients qui entrent rellement la file) :
Lq = 0 et Wq = 0
W = 1/
Dans la pratique, ce type de file dattente sutilise pour modliser des systmes doccupation
de ressources, sans attente. Un cas particulier est celui du rseau tlphonique, quand on
sintresse loccupation des lignes de transmission et pas au temps dtablissement des
appels(o il y a des problmes dattente des ressources des autocommutateurs).
Nous pouvons citer plusieurs exemples les dutilisation de ce type : tude des rseaux
tlphoniques, modlisation dun parking de voitures o le nombre de places est fini
Cette file se modlise comme un processus de naissance et de mort dont les caractristiques
sont :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
0
n
R
n
n R
n n R
En particulier, la probabilit de saturation du systme, qui est galement gale la probabilit
de rejet dun client, vaut :
0
!
!
R
R n R
n
A
R
p
A
n
Cette dernire formule est connue sous le nom de formule B dErlang et est souvent dsigne
sous la forme E(R,A).
Pour le calcul du nombre moyen de clients dans le systme, on connat dj plusieurs
informations : le temps de psence moyen dans la file ainsi que le nombre moyen de clients
qui entrent dans la file. Par Little, on obtient :
(1 ( , )) * (1 ( , )) L E R A W A E R A
7) Le modle M/D/1
Le modle M/D/1 est un systme canal simple, de source infinie, la distribution darrive est
de type poisson, celle de service est de type exponentielle ngative. La file est infinie
discipline FIFO.
On aura comme formules de calcul pour ce type :
2
2 ( )
q
L
=
2
2(1 )
2 ( )
q
W
=
2( )
q
L L +
1
q
W W
+
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
8) Le modle M/M/n/infini
C est un systme n serveurs et capacit infinie. Les rsultats appropris ce systme sont :
0
!
k
n
k
n A
P P k n
n n
_
,
0
0
1
! !
n n n
i
P
A A A
i n n A
0
!
! !
n
q i n n
i
A n
A
n n A
L
A A A n A
i n n A
q
q
L
W
1
q
W W
+
L W
9) Files dattente non-Markoviennes : Exemple Files M/G/1
Hypothses :
- Arrives markoviennes
- Temps de service non-exponentiel dont on connat :
o ( ) E Y : dure moyenne du service
o ( ) ou Y
: cart-type
Le taux dutilisation (intensit de trafic) est alors
( ) A E Y
Le nombre moyen de clients dans le systme est donn par la formule de Pollaczek-Kintchine :
2
2 2 2 2
2
1
2(1 ) (1 ) 2
Q
A A
L A et L
A A
_
+
+
+
,
On peut exprimer ces valeurs en fonction du C dErlang, coefficient de variation de Y :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
[ ]
2
2
( )
( )
Y
Var Y
C
E Y
ou
2
2
2 Y
C
soit
2 2 2 2
1 1
( ) ( )
(1 ) 2 (1 ) 2
Y Y
Q
C C A A
L A et L
A A
+ +
+
Temps moyen dattente : Formule de Little.
- dans la file :
2
1 ( )
( )
(1 ) 2
Q
Y
Q
L
C AE Y
W
A
+
- dans le systme :
( )
Q
W W E Y +
Cas particulier :Files M / E
k
/1 /1 /1 /1
La dure des services suit une loi d'Erlang-k..
Cas particulier de la loi Gamma o =k et =k
La loi dErlang-k simule un systme o le service est effectu avec plusieurs serveurs en srie
de mme taux de service
1
, une seule unit pouvant se trouver dans la zone de service, la file
ntant pas limite.
Zone de service
Figure 11 : Systme plusieurs serveurs avec mme taux de service
La densit de probabilit de la loi dErlang-k est :
1
1
1
1
( )
( ) 0 ( 1)!
0 0
k
t
t
e
f t pour t k
pour t
'
<
t reprsentant le temps de service (ou de sjour dans la zone) reprsent par la variable
alatoire Y.
1
1
1
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
0
1
2 2
2
0
1
( ) ( )
( 1)
( ) ( )
k
E Y t f t dt
k k
E Y t f t dt
+
+
'
+
on en dduit :
[ ]
2
2
1
2
2
( )
( ) 1
( )
Y
k
Y
Var Y
C
k
E Y
'
Le temps de sjour est donn par la formule de P-K :
2
1 1 ( )
( )
(1 ) 2
Y
C L AE Y
W
A
+
+
soit
1
2 2
( )
(1 )
Erlang k
A A
k
W
A
avec
1
1
( )
k
E Y
10) Conclusion :
Nous avons regroups dans cette partie thorique les diffrents formules mathmatiques
utiliss dans notre logiciel CASA pour calculer les paramtres des performances des
systmes selon le modle de file choisi.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Chapitre V: CASA la CAlculette des
paramtres des Systmes dAttente
(Partie pratique)
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
CASA :CAlculette des paramtres des Systmes dAttente
Partie pratique
1) Introduction
La conception efficace des systmes dattente ne peut pas tre accomplie sans une bonne
connaissance de leurs performances. En effet, lvaluation des performances permet, par
exemple :
- de comparer les diffrents types de systmes en fonction des applications et
services offerts,
- danticiper et de corriger des ventuels problmes de performance,
- doptimiser les ressources au fur et mesure que les caractristiques attendus
du systme changent.
Dans ce cadre nous avons ralis cette calculette qui permet de calculer les valeurs analytiques
des paramtres dun systme dattente.
2) Exemples dutilits de la calculette
Le programme implment utilise des donnes introduits par lutilisateur pour donner les
temps et nombres moyens et dautres rsultats spcifiques au modle de file dattente
mentionn.
Et donc il fallait mieux utiliser le Visual basic comme langage de programmation puisquil est
le mieux appropri ce genre dutilisation : interface client - serveur.
Les quations qui ont permis davoir ces rsultats numriques sont galement prsents et
accessibles par un bouton de commande Equation pour chaque type de file.
Ce programme visualise ceci travers des exemples de simulation accessibles dans le Help,
ainsi qu travers des documentations diverses.
C
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Pour une future utilisation, un programmeur peut ajouter nimporte quel autre type de file la
liste de cette calculette, en suivant les indications prsentes dans un guide programmeur
prsent dans le help.
2-1 Exemple dutilisation de la calculette :
Un dpanneur opre avec une caisse o le caissier travaille seul. On a compt quil
arrive en moyenne 24 clients lheure(1 client toutes les 2.5 mn). On a aussi mesur quen
moyenne 30 clients peuvent tre servis lheure. Et donc, cest un modle M/M/1, les arrives
sont distribues selon la loi de poisson de taux moyen 24 . Le service selon la loi
exponentielle de taux moyen de service 30. Il y a un seul serveur et la discipline de service est
FIFO.
Les caractristiques estimes du systme sont :
- Nombre moyen dans le systme L=4
- Nombre moyen dans la file Lq = 3.2
- Temps moyen total W = 10 min.
- Temps moyen pass dans la file Wq = 8 min.
- Facteur dutilisation du systme U=0.8
Le concepteur invoque 3 scnarios pour amliorer le service :
Ajouter un emballeur la caisse : il augmente avec a le taux de service 40 clients
par heures (temps moyen de service = 0.025)
Ajouter une deuxime caisse ( avec caissier) avec file spare(taux moyen darrive
chaque caisse = 12 clients)
Ajouter une deuxime caisse, mais garder une seule file dattente pour les 2 caisses
Le cot dun employ supplmentaire est 150$ par semaine. Chaque min. de rduction de
lattente des clients sauve 75$ par semaine(on vite de perdre des ventes).
On aura comme rsultats calculs par la calculette :
Actuel Scnario1 Scnario2 Scnario3
L(clients) 4 1.5 0.67 0.95
Lq(clients) 3.2 0.9 0.27 0.15
W(min) 10 3.75 3.33 2.38
Wq(min) 8 2.25 1.33 0.38
U 0.8 0.6 0.4 0.4
Tableau 3 : Rsultats prsents pour diffrents scnarios dun mme systme
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Nous remarquons que le temps moyen dattente total le plus bas est pour le scnario 3. Le
concepteur aura ajouter un cot additionnel de 150$ puisquil a ajout un employ, mais il va
gagn sur le cot dattente 571.50$ (diminuer le temps dattente de 7.62 min.).
Alors il va choisir le scnario 3. Ce choix est bas sur un compromis cot de service versus
qualit du service(cot dattente), il peut y avoir dautres facteurs comme le temps inactif des
employs, lespace de service
Figure 12 : Niveau de service en fonction du cot total dun systme
2-2 Comparaison entre des rendements de diffrents modles de files :
Ce projet offre un logiciel de calcul des performances dun systme dattente travers une
interface, ce qui permet de choisir le type de file le plus appropri la situation, et de fixer les
ressources ncessaires pour lapplication. Pour mieux expliquer ceci, nous allons prsenter un
exemple de telles situations :
Nous fixons le taux dutilisation et le taux des arrives 1, on compare le temps dattente
dans le systme W pour diffrents types de files dattentes. Un utilisateur peut utiliser cette
technique, et en tenant compte du nombre de serveurs ou du prix par exemple, il peut dduire
la meilleure solution choisir.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Taux dutilisation File M/M/1 File M/M/3 File M/D/1
0.5 1 1.737 0.75
0.25 0.333 0.765 0.292
0.33 0.5 1.034 0.416
0.8 4 0.416 2.4
Tableau 4 :Temps dattente dans le systme en fonction du taux dutilisation
Ainsi, un utilisateur peut choisir selon le critre de priorit donn au nombre de serveurs et au
temps quun client est oblig passer dans le systme pour tre servi.
Il peut choisir la file M/M/3 quand le taux dutilisation est 0.5 puisque a offre un temps
dattente clairement plus faible que celui de la file M/M/1, mais dans ce cas il est oblig
dajouter 2 serveurs au systme, ou accepter ce temps dattente pour loptimisation
conomique ses ressources. Et donc il doit avoir un compromis entre les deux solutions.
Nous allons proposer un autre exemple qui permet de comparer les temps moyens dattente(
temps de sjour) dans un systme une station, pour diffrentes lois de services avec le mme
taux darrive. nous allons fixer ce dernier =1.
Nous dsirons comparer 3 politiques de service pour lesquelles les paramtres et le cot du
serveur par unit de temps sont indiqus ci-dessous :
Nature file Dure du service : E(Y)=1/2 Cot/unit de temps
M/D/1 =2 60
M/M/1 =2 48
M/E2/1 =4 45
Tableau 5 : Taux de service et cot pour les 3 types de files
Le client doit tre factur en fonction du temps moyen dattente :
Attente en unit
de temps
>0.7
<=0.8
>0.8
<=0.9
>0.9
<=1
Prix 90 80 75
Le gain pour chaque politique est :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Nature file
2
( ) Y
W W Gain
M/D/1 0
1
2
(1 )
0.75 90-60=30
M/M/1
2
1
1
(1 )
1 75-48=27
M/E2/1
2
2
1
2 2*2
(1 )
+
0.875 80-45=35
Tableau 6 : Rsultats een temps dattente global et gain
La politique optimale correspond la file M/M/1 avec un cot minimal =27.
3) Ides de prparation mises en faveur de lutilisateur:
Figure 13 : Simulation des arrives et service dans un systme dattente
Pour voir un exemple dentre dun client dans le systme dattente, et des tapes quil
suit pour tre servi, nous avons cr un logiciel simplifi de simulation en Visual Basic qui
prsente une file dattente et un serveur. Le client qui arrive rejoint la file et attend que les
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
autres qui y sont dj soient servis. Ainsi par le clic sur le bouton de commande Comprendre
avant ? le schma descriptif des systmes dattentes disparat pour laisser apparatre
lexemple de simulation camoufl dernire.
Il peut aussi accder au Help, par le bouton de commande Help plac dans la page
daccueil. Il y trouvera des exemples bien avancs de simulations dattente o il peut varier la
vitesse darrive des clients, la vitesse du service, en mme temps que le type de file dattente
quil vaut utiliser ; et donc remarquer les diffrences cres dans le trafic. Ces exemples de
simulations implments en Java sont des sujets de thses dans certaines universits doctorales
dAngleterre et autres.
Le help fournit aussi un nombre de documents et de cours que nous avons choisi pour tre bien
simples et utiles voir, que nous avons mis son service pour quil puisse comprendre cette
thorie des systmes dattente sans quil naura recours chercher dans la littrature, ou quil
perd son temps vouloir trouver des dfinitions et explications de certaines spcificits dun
type de file. Parce que ces rsultats sont trs disperss et encore difficiles trouver dans des
uvres non spcifiques cette tude, ctait une difficult que nous avons du affronter pour
raliser ce projet.
Nous avons ajout au help un guide de navigation dans le programme, et un guide de future
utilisation pour un nouveau ingnieur ou chercheur que nous les verrons aprs.
Ainsi par la page du Help suivante, il peut accder aux diffrents services mentionns :
Figure 14 : Aide utilisateur
4) Guide dutilisation de CASA :
Comme nous lavons dj prcis, un concepteur trouvera sa disposition un guide qui lui
prsente des tapes dutilisation du logiciel CASA, pour lui faciliter au maximum son travail
et lui faire gagner un temps bien prcieux.
Ainsi par un simple clic sur Comment naviguer dans ce programme il accde au guide :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Figure 15 : Guide dutilisation de CASA
5) Exemple dutilisation de la calculette:
Dans lexemple de simulation que nous montrons ici, nous avons choisi un systme de
capacit maximale en clients K = 10 , et qui contient c = 9 serveurs identiques et ayant un
mme taux moyen de service . Les clients arrivent avec une loi poissonnienne de taux
moyen = 14 clients/mn. Le temps de service est exprim par une loi exponentielle de taux
moyen de service = 17 clients servis/mn.
Etape 1
Cest une file de type M/M/c/K. La discipline de service est FIFO. On slectionne ce type dans
la liste des files dattente. La fentre correspondante apparat.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Figure 16 : Page daccueil de CASA
Etape 2
On introduit les valeurs dans les cases correspondantes : la valeur du taux moyen des arrives
des clients = 14 , le taux moyen de service dun serveur = 19, le nombre de serveurs c = 4
et le nombre de clients maximum qui peut exister dans le systme k = 10.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Figure 17 : Fentre de calcul pour la file M/M/c/K
Les rsultats appropris saffichent. Ainsi ce systme offre un trafic A= 0.73, Le
nombre de clients moyen dans la file dattente est Lq= 0.0016 clients, le temps moyen pass
par un client attendre dans la file est Wq= 0.000116 units de temps, le temps de rponse ou
temps moyen pass dans le systme est W = 0.052 units de temps, le nombre moyen de
clients dans le systme est L = 0.738 et le taux effectif des arrives est
eff
=13.99 < puisque
il y a des clients qui ne seront pas accepts et donc refuss quand ils arrivent au systme
puisque K clients au maximum uniquement doivent exister.
Le calcul sera tabli par les algorithmes implments en Visual Basic qui traduisent les
formules analytiques pour ces paramtres de sortie. Pour cet exemple de modle de file
dattente, voil le code utilis :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Dim K, c As Double
Dim R, m, lam, l, leff, PK, es1, es2 As Double
Private Sub cmdEquation_Click()
Form1.Show
Form1.Picture1.Visible = True
Form1.Picture2.Visible = True
Form1.Picture3.Visible = True
Form1.Picture4.Visible = True
Form1.Picture5.Visible = True
Form1.Picture6.Visible = True
Form1.Picture7.Visible = True
End Sub
Private Sub cmdResultats_Click()
K = Val(Text1)
lam = Val(txtText10)
m = Val(txtText9)
c = Val(txtText1)
txtText1 = Replace(txtText1, ".", ",")
txtText10 = Replace(txtText10, ".", ",")
txtText9 = Replace(txtText9, ".", ",")
On Error GoTo ErrorHandler
If Not ((IsNumeric(txtText1)) And (txtText1 <> "")) Or (Not IsNumeric(txtText10)) And
(txtText10 <> "") Or ((Not IsNumeric(txtText9)) And (txtText9 <> "")) Then
Style = vbOKOnly + vbExclamation
MsgBox "Donnes errones, introduire des rels !", Style
Err = True
txtText1 = ""
txtText10 = ""
txtText9 = ""
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
End If
If K = c Then
MsgBox "Voir exemple de modle M/M/R/R"
frmForm9.Hide
Text1.Text = ""
txtText1.Text = ""
txtText9.Text = ""
txtText10.Text = ""
Exit Sub
End If
If (K > 0) And (lam > 0) And (m > 0) And (c > 0) And (lam <= c * m) And (c < K) Then
A = lam / m
txtText3 = A 'Trafic offert
R = lam / (c * m)
i = 1
es1 = 1
Do While i <= c
es1 = 1 + es1 * i / A
If Err.Number = 6 Then 'Pour erreur de dpacement de capacit
MsgBox "capacit"
Exit Sub
End If
i = i + 1
Loop 'es1=(somme A^i/i!)/(A^c/c!)
If R <> 1 Then
txtText8 = (1 - R ^ (K - c) - (1 - R) * (K - c) * R ^ (K - c)) / ((1 - R) * ((1 - R ^ (1 - R ^ (K -
c))) + es * (1 - R) / R))
Else
txtText8 = 0
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
End If 'Nombre moyen de clients prsents dans la file
If R = 1 Then
PK = 1 / (K - c + es1)
Else
PK = 1 / (((R ^ (c + 1 - K) - R) / (1 - R)) + ((R ^ (c - K)) * es1))
End If
leff = lam * (1 - PK)
txtText11 = leff 'Taux moyen d'arrives dans le systme
txtText5 = txtText8 / leff 'Temps moyen pass dans la file
txtText6 = Text1 + 1 / m 'Temps moyen pass dans le systme
txtText7 = txtText8 + leff / m 'Nombre de clients dans le systme
Else
MsgBox ("Erreur des donnes")
End If
Open "c:\Rsultats.txt" For Output As #1 'Sortir les rsultats sur un fichier texte
Print #1, "Rsultats pour la file M/M/c/K"
Print #1, "Taux d'arrive moyen"; txtText10.Text; ""
Print #1, "Taux de service moyen"; txtText9.Text; ""
Print #1, "Capacit maximale en clients"; txtText1.Text; ""
Print #1, "Nombre de clients maximum dans le systme"; Text1.Text; ""
Print #1, "Nbr moyen de clients dans le systme"; txtText7.Text; ""
Print #1, "Nbr moyen de clients dans la file"; txtText8.Text; ""
Print #1, "Temps d'attente dans le systme"; txtText6.Text; ""
Print #1, "Temps d'attente dans la file"; txtText5.Text; ""
Close #1
On Error GoTo ErrorHandler
Exit Sub
ErrorHandler:
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
MsgBox Err.Source & " caus l'erreur " & Chr$(34) & Err.Description & Chr$(34) &
vbCrLf & vbCrLf & "Numro de l'erreur :" & Err.Number, vbExclamation, "Erreur"
Err.Clear
txtText3.Text = ""
Text1.Text = ""
txtText9.Text = ""
txtText1.Text = ""
txtText10.Text = ""
txtText5.Text = ""
txtText6.Text = ""
txtText7.Text = ""
txtText8.Text = ""
txtText11.Text = ""
End Sub
Nous nous sommes trouvs face un problme de programmation lors de la formulation de ce
code. Le cacul dun factoriel par le Visual Basic pose trop de problmes, et donc pour caculer
( 1)
0 2
1 (1 )( )
!(1 )
c c
K c K c
q
c
L K c P
c
+
1
]
+
.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Pour avoir les quations analytiques qui ont servi pour ce calcul , il suffit dun clic sur le
bouton de commande Equations dans la mme feuille. On aura la liste des quations
utilises et les formules des probabilits P
0
et Pn.
Figure 18 : Page des Equations pour la file M/M/c/K
Le concepteur peut rcuprer les rsultats de ses tests dans un bloc note, quil peut utiliser
aprs avoir terminer ses calculs, pour faire une comparaison entre les caractristiques offertes
par chaque scnario quil essai. Ces rsultats seront rcupr dans le fichier : Rsultats.txt.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
6) Guide programmeur :
Pour une future utilisation, un programmeur peut ajouter dautres modles de files
dattente. Ceci a t mentionn dans le help pour quil peut y accder facilement sans avoir
besoin de connatre ou revoir tout le code du programme ou sans tre un spcialiste en Visual
basic. Il peut ainsi suivre juste les tapes suivantes :
1- Ouvrir la page de code de la forme frmfileattente, dans la partie du code spciale pour la
Form, ajoutez le nom de la nouvelle file,
Private Sub Form_Load()
lstliste.AddItem "File M/M/1"
lstliste.AddItem "File M/M/c"
lstliste.AddItem "File M/M/1/K"
lstliste.AddItem "File M/M/n/infini"
lstliste.AddItem "File M/M/c/K"
lstliste.AddItem "File M/M/infini"
lstliste.AddItem "File M/D/1"
'lstliste.AddItem "Nouveau modle" 'Block ajouter et changer le ncessaire
frmform2.Hide
frmForm3.Hide
End Sub
2- Ajouter une nouvelle form frmFormAjoute
3- Ajouter, pour pouvoir visualiser la form, le code suivant dans la partie du code de la liste:
ElseIf lstliste.Text = "Nouveau modle" Then
frmFormAjoute.Show
dans la partie:
Private Sub lstListe_click()
If lstliste.Text = "File M/M/1" Then
frmform2.Show
ElseIf lstliste.Text = "File M/M/c" Then
frmForm3.Show
ElseIf lstliste.Text = "File M/M/1/K" Then
frmform4.Show
ElseIf lstliste.Text = "File M/M/n/infini" Then
frmForm8.Show
ElseIf lstliste.Text = "File M/M/c/K" Then
frmForm9.Show
ElseIf lstliste.Text = "File M/M/infini" Then
frmForm11.Show
ElseIf lstliste.Text = "File M/D/1" Then
frmForm12.Show
'ElseIf lstliste.Text = "File M/D/1" Then
'frmForm12.Show 'Block ajouter et changer le ncessaire
End If
End Sub
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
4- Utiliser La Form Modle frmFormModle, modifiez le nom de la file,de la Form,le nom des
entres et des rsultats si ncessaire, mettre le code des calculs pour obtenir les rsultats, si
vous voulez introduire les quations sous forme d'images(picture) il suffit de placer ces images
dans la form frmEquations en modifiant leur proprit visible en false puis de remplacer les x
par leurs n dans ce code dans la Form:
Private Sub cmdEquation_Click()
Form1.Show
Form1.Picturex.Visible = True
Form1.Picturex.Visible = True
Form1.Picturex.Visible = True
Form1.Picturex.Visible = True
End Sub
5- N'oubliez pas de changer l'emplacement des fichiers textes "Guide programmeur" et
"Comment naviguer dans le programme"
dans la frmForm5
Private Sub lstList2_click()
If lstList2.Text = "Comment naviguer dans ce program" Then
Shell ("C:\winnt\notepad C:\Path\Etapes pour le program.txt"), vbNormalFocus
ElseIf lstList2.Text = "Guide Programmeur" Then
Shell ("C:\winnt\notepad C:\Path\Guide Programmeur.txt"), vbNormalFocus
'frmFormModle.Show
End If
End Sub
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
7) Conclusion
Ce chapitre est un guide qui prsente un support documentaire et analytique expliquant
les caractristiques de chaque type de file dattente, et dans une deuxime partie, il dcrit le
fonctionnement de la calculette parfois par des exemples, et dautres par invocations de ses
diffrentes utilits.
Nous prcisons cependant quil y a eu deux difficults importantes dans cette tache :
i) grouper les formules analytiques pour le calcul des diffrents paramtres de
chaque type de file,
ii) implmenter le logiciel :
- traduire les formules analytiques en algorithmes en visual basic,
- offrir une interface facilitant lutilisation de la calculette.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
Conclusion
Lanalyse mathmatique de la thorie des files dattente a constitu le second ple
dintrt du stage de fin dtude aprs une prsentation de ltablissement o nous avons
effectu le projet. Nous avons effectu lors de cette analyse, une tude des files dattente, des
formules et thormes qui rgissent le comportement des systmes lors de lapplication de
diffrents paramtres en entre. Ce qui nous a permis de remarquer sa puissance dans
lvaluation des performances des systmes.
Dans le troisime pole, nous avons prsent notre logiciel CASA qui permet de
rsoudre le problme de calcul de ces performances dune manire simple mais rapide et
efficace . Nous avons aussi russi lutiliser pour effectuer des applications pratiques de
choix de configurations pour des cas diffrents.
Tout a nous a conduit bien comprendre et matriser cette thorie, mais aussi nous
interroger sur lutilisation de ce logiciel dans des futurs conceptions. En effet, une rflexion
simpose : Ce logiciel peut tre utilis dans un stade plus avanc pour crer un autre qui
effectue lui mme la comparaison entre les diffrents rsultats obtenus par CASA et donne
en sortie le choix prendre selon les diffrents critres introduits par le concepteur.
Dune manire gnrale, sur les plans techniques et humains, ces quatre mois de stage
nous ont beaucoup apport, en particulier ils nous ont permis deffectuer un travail
dingnieur dans une quipe, dtre oblig de chercher et trouver linformation dune manire
rapide et efficace et de devoir rendre un travail spcifique dans des dlais dtermins.
En conclusion cette exprience a constitu une trs bonne prparation notre
intgration dans le monde du travail.
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
ANNEXE
CHP II-5-2 Lois des arrives
#"p
0
(t) = - l.p
0
(t) car, par dfinition :
f(t) = lim
Dt0
[f(t + Dt)-f(t)] / Dt
#"Lquation diffrentielle p
0
(t) = - l.p
0
(t) scrit sous la forme dp
0
/dt = -l.p
0
, i.e.
dp
0
/dt = -.dt
La solution de cette quation est p
0
(t)=e
-l t
#"Dans le cas o n > 0, on a tout dabord pour la premire quation :
p
1
(t) = l .p
0
(t) - l p
1
(t) ou bien : p
1
(t) + l p
1
(t) = l . e
-l t
Cette quation avec second membre donne :
p
1
(t)=( lt).e
-lt
/1 !
On montrerait facilement par rcurence que :
p
n
(t)=(l t)
n
.e
-lt
/n !
#"On nglige tous les termes en D t pour obtenir le rsultat.
p
n
(t+D t) = p
n-1
(t).l. D t + p
n
(t)(1-(l+m). D t) + p
n+1
(t).m. D t
C'est--dire :
[p
n
(t+D t) - p
n
(t)] / D t = p
n-1
(t).l - p
n
(t)(l+m) + p
n+1
(t).m (1)
En faisant tendre dt vers 0 :
p'
n
= l .pn-1 - (l+m).pn + m.p
n
+1
Remarque :
L'quation (1) possde un cas particulier en n = 0, c'est--dire qu'il y ait 0 clients l'instant t +
D t. En effet, il ne peut alors pas y avoir une personne qui entre sans que personne ne sorte
pendant le temps Dt. On a alors :
p
0
(t+D t) = p
0
(t)[(1-l. D t)] + p
1
(t)[(1-l. D t).m. D t]
qu'on peut aussi crire sous la forme :
[p
0
(t+D t) - p
0
(t)]/ D t = -l.p
0
(t) + m .p
1
(t)
et en faisant tendre D t vers 0 : p'
0
= -l.p
0
+ m .p
1
D'aprs les hypothses, le phnomne est stationnaire. donc :
p'
0
= p'
1
= p'
2
= ... = p'
n
= ... = 0
Alors, l'quation : p'
0
= -l.p
0
+ m .p
1
devient : 0 = -l.p
0
+ m.p
1
, i.e. : p
1
= (l/ m).p
0
Si l'on remplace cette valeur de p1 dans l'quation (1), on obtient :
l .p
0
- (l+m).p
1
+ m.p
2
= l .p
0
- (l+m).(l/ m).p
0
+ m.p
2
C'est--dire : p
2
= (l/m).p
0
et par rcurrence : p
n
= (l/m)
n
.p
0
(2)
On sait de plus que : S(p
i
) = p
0
+ p
1
+ p
2
+ ... + p
n
+ ... =1
p
0
+ (l/ m).p
0
+ (l/m).p
0
+ ... + (l/m)
n
.p
0
+ ... =1
p
0
.[1 + (l/ m) + (l/ m) + ... + (l/ m)
n
+ ...]=1
En utilisant la somme d'une suite gomtrique :
p
0
. 1 / (1 - l/ m)=1
i.e : p
0
= 1 - l/ m
On remplace cette dernire expression dans (2) :
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
p
n
= (l/m)
n
.( 1 - l/ m) C.Q.F.D
#"Le nombre moyen L
q
de clients dans une file d'attente est :
L
q
= /( - )
Dmonstration :
Le nombre moyen h de clients dans la file d'attente est en fait l'esprance de la loi de
probabilit :
p
n
= (l/m)
n
.( 1 - l/ m)
donc : h = S(n. p
n
) = 0.p
0
+ 1.p
1
+ 2.p
2
+ ... + n.p
n
+ ...
h = 1.(l/ m).p
0
+ 2.(l/m).p
0
+ ... + n.(l/m)
n
.p
0
+ ...
h = p
0
.[ (l/ m) + 2.(l/ m) + ... + n.(l/ m) n + ...]
h = (1 - l/ m).(l/ m)[ 1 + 2.(l/ m) + ... + n.(l/ m) n-1 + ...]
h = (1 - l/ m).(l/ m).S'
avec S' = 1 + 2.(l/ m) + ... + n.(l/ m)
n-1
+ ...
La somme note S' est la drive par rapport l/m de la somme S :
S = (l/ m) + (l/ m) + ... + (l/ m)
n
+ ...
i.e. : S = (l/ m). 1 / (1 - l/ m)
Si l'on drive cette dernire expression S par rapport l/m, on obtient :
S' = [(1 - l/ m) + (l/ m)] / (1 - l/ m)
S' = 1 / (1 - l/ m)
Alors : h = (1 - l/ m).(l/ m). 1 / (1 - l/ m)
h = (l/ m) / (1 - l/ m)
h = l / (m - l) C.Q.F.D.
#"Le temps moyen W
q
qu'attends un client dans la file est :
W
q
= / [.( - )]
Dmonstration :
Une file de h clients s'coulera en un temps h x 1/ m, o 1/ m est le temps moyen que passe
chaque client dans la file.
On obtient directement le rsultat :
T = h / m = l/ [m.( m - l)]
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
NOTATION
N(t)= Nombre de clients dans le systme linstant t
P
n
(t)=P{N(t)=n| N(0)=0}
P
n
=Probabilit de trouver n clients dans le systme
n
= Taux darrive quand il y a n clients dans le systme
n
= Taux de service quand il y a n clients dans le systme
c= Nombre de serveurs
= Taux dutilisation
L= Nombre de clients dans le systme
L
q
= Nombre de clients dans la file dattente
W= Temps dattente dun client dans le systme
W
q
= Temps dattente dun client dans la file dattente
K= Nombre de clients maximum pour une capacit finie du systme
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
RFRENCES BIBLIOGRAPHIQUES
[1] Leonard Kleirock ,Queuing systems VolumeI :Theory, Wiley, 1975
[2] Grard Hebuterne ,Gestion du trafic ,Modles pour les rseaux des tlcommunications,
INT 2002
[1.87 Gel] E.Gelenbe et G.Pujolle , Introduction aux rseaux de files dattente, Eyrolles, 1987
[1.87 KLE 2] Leonard kleirock , Queuing systems , Volume II , Wiley 1976
[5] Michael Kirstein Visual Basic6, Data Becker GMBH& KG 1998
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
SITES INTERNET
ftp://ftp.inria.fr/INRIA/publication/publi-pdf/RR/RR-4281.pdf
http://uaeller.eller.arizona.edu/~gregory/MIS573B/Notes/
http://fiddle.visc.vt.edu/courses/ece5984-net2/lectures/05_qt_2.pdf
http://ite.gmu.edu/~kchang/302lec6.pdf
http://www.eurecom.fr/~nmt/perf/perf_cours1.pdf
http://www.ift.ulaval.ca/~dupuis/Simulation%20des%20systemes%20stochastiques/Chap.%20
IV/Modeles%20de%20files%20d'attente.pdf
http://www.supaero.fr/module/ma_312.html
http://www.gel.ulaval.ca/~mlecours/19504/queueth.pdf
http://pauillac.inria.fr/algo/robert/src/papers/dea/PM-Vers.pdf
http://penarvir.univbrest.fr/~pottier/SYSDIS/jmf2.pdf
http://www.dcs.ed.ac.uk/home/jeh/Simjava/queueing/index.html
http://www.snc.edu/socsci/chair/333/quethry.htm
http://www2.uwindsor.ca/~hlynka/qsoft.html
http://www-ensimag.imag.fr/cours/Exposes.Reseaux/Evaluation/Methodologie.html
Ecole suprieure des communications de Tunis
Projet de fin dtudes CASA: Calculette des files dattente
tp://staff.um.edu.mt/jskl1/simweb/mm1.htm
http://www.esat.kuleuven.ac.be/~h239/reports/1999/Video/traffic4.htm
http://membres.lycos.fr/dthiery/Sommaire/bas.htm
http://icat.snu.ac.kr:3000/Toolboxes/event/text/chap5_2.html
http://mathstat.wu-wien.ac.at/lv/9993/einheit3/node2.html
http://www.gel.ulaval.ca/~mlecours/19504/Ex1-01.doc
http://www-lpnhep.in2p3.fr/dea-mip/polys/fusion.pdf