Download - Cours
Modlisation des rseaux :
files d'attente (ou effet des irrgularits)
Eugen DeduCours M2 RIMUniversit de Franche-Comt, Montbliard, Franceseptembre 2009
[Grands remerciements Julien Bourgeois]
Exemple de problme de file d'attente
Un mdecin malin donne des RdV venez tel jour, et non pas venez tel jour telle heure, est-ce une bonne ide ?
Chaque consultation a 15' (4 c/h) en moyenne(certaines consultations prennent beaucoup plus de temps que d'autres)
Par prcaution, il donne 3*8 = 24 rdv/jour (3 rdv/h, toutes les 20', en moyenne)
Rgulier vs irrgulier
Questions plus complexes
Questions :combien de patients sont en attente, en moyenne ?
combien attend chaque patient, en moyenne ?
D'autres questions, non traites dans ce cours :quelle est la probabilit que N personnes arrivent en M minutes ?
quelle est la probabilit que personne n'arrive durant M minutes, et aprs cela que P personnes arrivent dans les S min suivantes ?
Autres exemples de dimensionnement
Comment dimensionner :les caisses des grands magasins
les toilettes des grands stades sportifs
un central tlphonique avec moins de lignes vers le rseau que de lignes vers ses abonnes
Contexte
Ce cours est une introduction seulement, sans dtails et preuves mathmatiques
En anglais : queueing theory, Petri nets
Fait partie du domaine de probabilits/rech. op.
Naissance : Erlang, 1917, cherche le nombre d'organes de chaque type installer dans un central de tlphone automatique
Les informaticiens l'utilisent pour l'valuation des rseaux informatiques
Bibliographie : tout livre sur FA ou RdPPrcis de recherche oprationnelle, 003.1004
Processus Poisson
Soit un processus caractris par :absence d'vnements doubles (ordonn) : les vnements n'arrivent pas simultanment
indpendance des vnements (sans mmoire)
On tudie :le nombre d'vnements (pas leur valeur) par unit de temps
et le temps d'arrive d'un nouvel vnement
De manire surprenante, ces proprits donnent une distribution Poisson pour le nombre d'vnements !distribution = nombre moyen d'apparitions (occurrences) d'un vnement par unit de tp
Distribution Poisson
k/k!e-
gnuplot
Exemples pratiques
crire 3 chiffres (0..9) sur une feuille
Voir TEST et TEST2
gnuplot TEST2
frquences/nboccurrences
Poisson
Bien identifier ce que c'est vnement (arrive), exprience etc.
la fin de chaque exprience, on a un vnement (rsultat)
= intensit (moyenne/taux)
gaussienne en continu, poisson en discretextrapolation de poisson => gaussienne
Distribution exponentielle
Le temps du prochain vnement (l'intervalle entre deux vnements conscutifs, ou bien temps d'inter-arrive) d'un processus Poisson suit une distribution exponentiellesi Poisson de , alors exponentielle de aussi
Similitude : principe du 80/20 (Pareto)sur Internet, 20 % des flux utilisent 80 % des ressources
dans un programme, 20 % du code est excut 80 % du temps
Distribution exponentielle
e-xaire=1
f(0)=
gnuplot
Distribution exponentielle, cumulatif
Intrt de Poisson/exponentielle
Beaucoup de phnomnes naturels sont des processus Poisson, ex. :nombre de requtes Web un serveur
nombre de gouttes de pluie qui tombent sur une surface (grande)
nombre de poissons pchs
nombre de voitures qui passent sur une route
nombre d'erreurs faites par un scribe lors d'une copi
Arrive poissonnienne et service exponentiel :temps d'arrive et de traitement des clients un guichet
temps d'arrive et de stationnement des voitures dans un parking
Remarques sur Poisson/exponentielle
Remarques : stochastique, statistiques => on travaille avec des moyennes
Cas de non-applicabilit
Chez le mdecin, les clients ne viennent pas au hasard, mais d'aprs rendez-vous :de 8h 9h, 3 clients sont venus
de 9h 10h, 3 clients sont venus
de 10h 11h 4 clients sont venus
Au RU, pendant la journe les tudiants ne viennent pas en Poisson, mais plutt midimais midi seulement (11h30-13h30), ils devraient suivre Poisson
sauf qu'ils viennent quand les cours finissent, et ils finissent 11h30, 12h ou 12h30 => pas de Poisson
Terminologie/dfinitions
systme
client, vnement
station, serveur
temps d'arrivetemps d'inter-arrive
file d'attente = les clients en attente (donc pas en train d'tre servis)
temps de sjour (de rponse) = temps d'attente + temps de service
Divers
La file peut ne pas tre physique/gographique, par ex. des machines qui attendent un mcanicien
Ds qu'un serveur se libre, il est aussitt utilis (c'est normal)
On s'intresse la moyenne des valeurs (temps attente par ex.), pas l'cart type ou autre valeur...
Types de modlisation des rseaux
Qualitative, vrification du comportementex. : terminaison (vivacit), interblocage (deadlock)
mthode : rseaux de Petri K=inf, N=inf, D=FIFO
Notation de Kendall, valeurs
Arrives et service : M (markovienne/poissonnienne), D (constante), G (gnrale quelconque), ...
Nombre serveurs : en parallle
Capacit : perte si file pleine
(Population : si petite, affecte le taux d'arrive)
Discipline : FIFO (PAPS, FCFS), LIFO (DAPS, LCFS), random, round-robin
File M/M/1
Arrive : poissonnienne nombre moyen d'arrives par unit de temps
Distribution de service : exponentielle nombre moyen de clients pouvant tre servis par unit de temps1/ = dure moyenne d'un service
Serveur unique
Capacit infinie
Discipline : FIFO
Loi de Little + explications
Nombre clients dans un systme = taux d'arrives * temps pass dans le systmen = t (loi de Little)
systme peut tre juste la file aussi
Ex, magasin : 10 clients/h, restent 0.5h
Si 20 clients/h => quoi faire ?accepter plus de clients/h
ou rduire temps pass 0.25h
tsys = tatt + tserv (car valable pour chaque clie)=> nsys/ = natt/ + 1/ => nsys = natt + /
Quelques piges
Voir fichier PIEGES
nsys = natt + nserv, avec nserv != 1 !!!pris instantanment, nserv est parfois 1, parfois 0
Cadence de drainage (dbit) de FA : , pas !!!=> tatt = natt / (et non natt/) = nsys /
si 3 clients en moyenne en attente (natt = 3), et chaque client est trait en 15' ( = 4), alors tatt = 3/ = 3/4 = 45' est fauxen ralit, tatt = 3/ (si = 3, alors tatt = 3/3 = 1h)
cela vient du fait que c'est poisson, et le serveur est en attente quand il n'y a aucun client
tatt pour C=2 dbit plus petit que M/M/1
File M/M/1/K, rsolution
Dbit : X = (1-k)/(1-k+1)
Taux d'utilisation : r = X/ = (1-k)/(1-k+1)
Nombre moyen de clients dans le systme : nsys = /(1-) * (1-(K+1)k+Kk+1)/(1-k+1)
Temps moyen de sjour d'un client admis dans la file : tsys = nsys/X
Temps moyen de sjour d'un client arrivant dans le systme : tsys2 = R(X/)certains de ces clients seront rejets (t=0), donc le temps moyen est plus petit
File M/M/C
Identique M/M/1
Sauf que le systme a C serveurs indpendants
Condition de stabilit : < C
Dbit : X =
Temps moyen de sjour :
tsys = C / ((C-1)!(C-)2) * p(0) + 1/o p(0) = probabilit d'attente nulle (tatt = 0)
p(0) = 1 / (C/(C!(1-/C)) + SUMn=0C-1 n/n!)
Nombre moyen de clients dans le systme : nsys = tsys* = C+1 / ((C-1)!(C-)2) * p(0) +
Problme
Entreprise avec 1 guichet de SS
Hypothse :arrives : tableau avec nombre d'ouvriers arrivant durant chaque intervalle de 5 min
service : tableau avec nombre d'ouvriers ayant pass au guichet [0,1[, [1,2[, [2,3[, ..., [11,12[, >12 minutes
Conclusion : temps moyen d'attente, dure moyenne au guichet, occupation du guichetier=> optimisation
Dmonstration : voir TD...
Rseaux ouverts
Rseau : plusieurs FA interconnectes dans le systme
Ouvert : nombre illimit de clients
Routage : probabiliste, cyclique, file la plus courte
Rseau de Jackson
Rseau de Jackson ouvert : une seule classe de clients, arrive poissonnienne, 1 serveur/station, stockage illimit, FIFO, routage probabiliste
Rseau de Jackson, paramtres
M le nombre de stations
le taux des arrives
i les taux de service
p0i probabilit qu'un client arrivant entre dans FAi
pij probabilit d'aller de FAi FAj
pi0 probabilit de quitter le systme depuis FAi
Rseau de Jackson
Arrive dispatche plusieurs FA=> chaque entre j rcupre une partie des entres totales, donc :
probabilits p0j, avec SOMMEp0j = 1
processus d'arrive : p0j
Pour chacun des i, SOMMEtout jpij = 1
Rseau de Jackson
Taux de visite de FAi : ei = p0i + SOMMEejpjiei = i /
Stabilit : i < i pour tout i
Thorme de Jackson : un rseau de Jackson ensemble de files M/M/1p(n) = PRODUITpi(ni), o pi(ni) = (1-i)i^ni
o p(n) = probabilit stationnaire de n
Une M/M/1 (une M/M/S aussi) d'entre une Poisson gnre en sortie une Poisson aussi
Rseau de Jackson, rsolution
Pour chacune des FA :Dbit moyen : Xi = i = ei
Nombre de clients : nsysi = i / (1-i)
Taux d'utilisation : ri = i
Temps moyen d'attente : tatti = 1/(i-i)
Pour le systme :Dbit moyen : X =
Nombre de clients : nsys = SOMMEnsysi
Temps moyen de sjour : tsys = nsys/X = nsys/ = SOMMEnsysi/ = SOMMEeinsysi/i = SOMMEeitsysi