Introduction à la théorie des files d`attente
Transcription
Introduction à la théorie des files d`attente
Introduction à la théorie des files d’attente C. Rigault (COFORTIC) Ancien directeur d'études à Telecom-ParisTech [email protected] http://www.cofortic.com Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 1 Sommaire • • • • • • • • • Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 2 Prologue Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 3 Aucune mathématique difficile • • • • Ce cours est destiné à donner à des praticiens des outils pour dimensionner les systèmes qu’ils conçoivent. Ce n’est pas un cours de mathématiques, même s’il y a des équations à toutes les pages, ces équations sont élémentaires. Elles ne servent qu’à comprendre les résultats. L’accent est mis sur les concepts et leurs significations Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 4 A peu près tout ce qu’il faut savoir en mathématiques (1) • • • Une somme infinie de termes positifs non nuls peut être finie. C’est ce que n’avait pas pu admettre le grand philosophe Parménide dans le fameux paradoxe d’Achille et de la Tortue. En particulier, vous n’aurez aucun mal à montrer que : 1 x x 2 x3 ... x N (1 x) 1 x N 1 1 xN x 1 x i 0 N • • • Donc i 1 Et si x<1, lorsque N tend vers l’infini : xi C’est probablement 1 x i 0 la série la plus célèbre. En annexe on trouvera d’autres séries déduites de celle là. Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 5 A peu près tout ce qu’il faut savoir en mathématiques (2) • Une autre série est à connaître : xi x 2 x3 x 4 i! 1 x 2! 3! 4! .... e x i 0 • On obtient ce résultat en effectuant le développement de Taylor de ex autour de x=0 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 6 Qu’est ce que le trafic ? Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 7 Clients et serveurs • • • • L clients peuvent être servis par N serveurs. Le but du jeu est que N<L Les clients « prennent » (seizure) des serveurs. Les « clients » peuvent être des humains, des appels ou des paquets Les serveurs peuvent être des guichets, des canaux de transmission ou des récepteurs (modems, machines de traitement), ou … des humains. 1 1 i j L Claude Rigault, 2/12/2012 N Introduction à la théorie des files d'attente 8 Le trafic d’une machine (1) • • Nous appelons « machine » tout organe ou tout intervenant qui a la propriété d’être soit libre (disponible) soit occupé (indisponible). Le trafic de la machine (ou sa charge) est la mesure de son occupation : est la fraction du temps où la machine est occupée. C’est donc la probabilité temporelle d’occupation de cette machine. t1 t2 t3 t4 ti tn Période d’observation T tcum ti T T Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 9 Le trafic d’une machine (2) • Si en « moyenne » on a n « prises » de la machine par heure d’une durée « moyenne » : tcum n • Le trafic est : • On définit le taux de prises de machines (nombre de prises par unité n de temps) T • Le taux de service de la machine (nombre maximal de services par 1 unité de temps) n T • Le trafic est donc également : Claude Rigault, 2/12/2012 ou encore : Introduction à la théorie des files d'attente 10 Unités de trafic • L’unité de trafic correspond à 3600 secondes d’occupation cumulée par heure. t 3600 1 Dans ce cas : cum 3600 T • L’occupation permanente représente l’unité de trafic. Elle est appelée 1 Erlang, en honneur de Agner Krarup Erlang (1878, 1929), un ingénieur danois pionnier du calcul de trafic. • Les Américains utilisent la CCS (Cent Call Second) : 1 CCS = 100 seconds d’occupation cumulée par heure 1 Erlang = 36 CCS • Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 11 Le trafic d’un groupe de machines • • • tcumi tcum Le trafic du groupe est donné par : A M T M i T n Ou : A T ou A ou A M M Dans ces formules est la somme des taux d’arrivée de toutes les machines et est le taux de service pour une machine M L M 3 M 2 M 1 Période d’observation T Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 12 Remarques sur le trafic : • • Le trafic est aussi le nombre d’arrivées pendant le temps d’un service . n En effet, par unité de temps le nombre de prises est : T n • Pendant le temps d’un service le nombre d’arrivées est : A T • • Le trafic d’un groupe de machines n’est pas une probabilité Pour N machines, on a : A N Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 13 Probabilités temporelles et Probabilités d’ensemble • • • • • • On peut dire qu’une probabilité est une fraction du poids d’un ensemble. La notion de probabilité est donc relative à un ensemble. Si l’ensemble est le temps, la probabilité est dite Temporelle tx Par exemple la probabilité temporelle de l’état x est PT x où tx T est le temps cumulé d’existence de x pendant la période d’observation T Si l’ensemble est la totalité des N choses qui peuvent avoir l’état x en question, la probabilité est dite d’Ensemble n Par exemple la probabilité d’ensemble de l’état x est P x x où nx N est le nombre des choses ayant l’état x par rapport au nombre total N de choses Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 14 Ergodicité • On ne peut pas comparer des choses de natures différentes (réverbères et torchons) mais ont peut établir des relations (la quantité Q de torchons pour nettoyer N réverbères est Q=5N par exemple) • On dit qu’un système est ergodique quand les probabilités temporelles sont égales aux probabilités d’ensemble • L’ergodicité a quelque chose à voir avec la stationnarité mais les deux notions sont différentes : * Un système ergodique est stationnaire * L’inverse n’est pas toujours vrai : un système stationnaire peut ne pas être ergodique Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 15 Trafic Ergodique • • • Si le trafic est ergodique les probabilités temporelles sont égales aux PT PE probabilités d’ensemble x Dans ce cas : PT PE x L A L Alors le nombre moyen de machines simultanément occupées est égal au trafic : xA ML M3 M2 M1 Claude Rigault, 2/12/2012 Période d’observation T Introduction à la théorie des files d'attente 16 Arrivées aléatoires des paquets (1) • • λ(t) est le nombre de paquets arrivant par seconde entre t et t+dt est le temps moyen de traitement (émission) d’un paquet : λ(t) 1 écart moyenne Période d'observation T Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente t 17 Arrivées aléatoires des paquets (2) • • • • S'il arrive pendant une courte période plus de unités de données par secondes, il faut pouvoir retenir les unités de données de la pointe audessus de jusqu'au prochain creux pour pouvoir les écouler. Le nombre maximum d'unités de données à mémoriser dans les tampons est donc lié à la taille des pointes de la fonction aléatoire x(t). Normalement la probabilité d'avoir des pointes supérieures à k fois l'écart type est inférieure à un nombre petit ε(k) dépendant de k. Inégalité de Bienaymé Tchebichev : P x x k Claude Rigault, 2/12/2012 1 k2 Introduction à la théorie des files d'attente 18 Arrivées aléatoires des paquets (3) • • • Si nous dimensionnons la mémoire Mi à une taille ||Mi|| égale à k unités de données, il existe une probabilité B (inférieure à ε(k)) pour qu'une pointe de trafic amène dans la mémoire tampon un nombre d'unités de données supérieur à ||Mi||. Dans ce cas, toutes les unités de données ne pourront pas être mémorisées et certaines unités de données seront perdues. Cette probabilité est la probabilité de perte. Les réseaux paquets perdent des paquets Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 19 Arrivées aléatoires des appels • • L clients (abonnés) peuvent être servis par N récepteurs ou N canaux. Le but du jeu est que N<L. Les clients « prennent » (seizure) des serveurs. L clients N serveurs • Les réseaux à commutation de circuits perdent des appels. Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 20 Le nombre de clients dans un système Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 21 Nombre de clients dans un système • • • Taux d’arrivée des clients : Nombre de clients dans le système au moment t : x(t) Nombre de clients arrivés entre 0 et T : n(T) Claude Rigault, 2/12/2012 x(t) Introduction à la théorie des files d'attente 22 Arrivées et départs • Le nombre x(t) de clients dans le système est la différence entre le processus d’arrivée et le processus de départ A(t) D(t) Processus d’arrivée A(t) Processus de départ D(t) w2 w1 w3 w4 x(t) T t Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 23 Le trafic arrive par bouffées • • Le nombre de clients x(t) dans le système est une variable aléatoire. Sa valeur instantanée est très différente de sa valeur moyenne (son espérance E(x) ). En particulier ce nombre retombe de temps en temps à zéro. Il en résulte que le raisonnement sur les moyennes est très délicat. Il induit à raisonner comme si les temps de service étaient constants (on dit Déterministes) ce qui conduit à des résultats faux x(t) E(x) t Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 24 Moyennes (Espérances) • Le nombre moyen de clients dans le système : 1 T E x lim xt dt 0 T T • Le taux moyen d’arrivée est : nT lim T T n T • Le temps moyen dans le système est : E w lim T Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente wi i 0 nT 25 Des probabilités de natures différentes • • • E(x) est une probabilité temporelle E(w) est une probabilité d’ensemble La formule de John Dutton Conant Little (professeur au MIT) ou formule de Little établit un lien entre ces deux quantités de natures différentes Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 26 La somme des attentes • La surface ombrée S est, si l’on s’arrête à un endroit où x(t) = 0 (entre 2 bouffées de trafic) : S w i • La surface ombrée S est aussi : A(t) i T S xt dt E x t 0 D(t) Processus d’arrivée A(t) Processus de départ D(t) w2 w1 w3 w4 x(t) T t Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 27 Formule de Little • On calcule la surface ombrée de 2 façons : T S wi xt dt i • Ou T 0 0 et xt dt wi t T • T wi xt dt S 0 i nC T T T T i nC t En prenant la limite quand T Formule de Little Claude Rigault, 2/12/2012 E x λE w Introduction à la théorie des files d'attente 28 Travail du système (1) • Au fil du temps des gens arrivent et attendent un temps wi=xi pour être servis W() E(w) x3 x1 x2 • xn t L’espérance temporelle du temps d’attente est appelée le travail du système t 1 1 n 1 2 E w w d xi t0 t 1 2 • • (L’intégrale est la somme des surfaces des triangles) Si t , t nE x où E(x) est la moyenne d’ensemble des durées d’attente, alors que E(w) est la moyenne temporelle des durées d’attente Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 29 Travail du système (2) 1 n 1 2 1 1 n 2 1 1 n 2 E w xi xi 2 E x n 1 xi t 1 2 nE x 2 1 1 E x2 E w 2 E x • 2 2 2 2 2 2 Mais E x E x E x E x 1 2 E x 2 E w 2 E x Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 30 Trafic offert, Trafic perdu, Trafic écoulé ou Throughput • • Nombre de clients arrivant pendant T : nnC nB n n : arrivées offertes Trafic offert A T n nB : arrivées perdues Trafic perdu AB B nC T A nC : arrivées écoulées Trafic écoulé C T B nB Fraction d’arrivées perdues ou probabilité de perte : n nB nB et nc n nB n1 B • Le trafic perdu est : AB A B • Le trafic écoulé aussi appelé “Throughput” est : Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente AC A1 B 31 File d’attente • • • Espérance du temps passé dans la file : E(w) Nombre de clients dans la file au moment t : x(t) Nombre de clients arrivés entre 0 et T : n(T) Serveur Clients Offerts Throughput Serveur C B File d’attente Clients perdus Claude Rigault, 2/12/2012 Serveur c serveurs Introduction à la théorie des files d'attente 32 Espérance du temps d’attente • • • Espérance du temps d’attente : temps moyen passé dans la file, avant d’être servi : E(w) Espérance du nombre de clients dans la file d’attente : E(x) La formule de Little donne : E w Clients Offerts E x Tampon C Clients écoulés C B Serveur E x clients en attente Clients perdus Claude Rigault, 2/12/2012 Serveur Introduction à la théorie des files d'attente Serveur c serveurs 33 Espérance du temps de séjour • • Temps de séjour : temps d’attente + temps de service : E s E w Nombre de clients dans le système : E c E s E w E x A N serveurs Serveur Tampon Clients Offerts Clients écoulés Serveur C B E x clients en attente A clients dans les serveurs Clients perdus Claude Rigault, 2/12/2012 Serveur Introduction à la théorie des files d'attente 34 Ce qu’il nous reste à déterminer • • • Nous avons découvert une relation très importante entre le nombre de clients dans le système et leur temps de séjour. Ce qui nous intéresse vraiment est le temps de séjour ou la probabilité de perte Pour l’évaluer il faut d’abord arriver à déterminer le nombre de clients dans le système Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 35 Diapositive volontairement vide Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 36 Quelques petits rappels sur les probabilités Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 37 Processus à temps discret • Loi de probabilité (ou fonction (ou loi) de distribution des probabilités) : diagramme en bâtons : P(xi) = Probabilité que x=xi P(x) • xmax Moyenne ou Espérance E x xP x 0 1 2 3 4 5 6 7 8 9 x x 0 • Variance (moyenne du carré des écarts) : Var x x max x E x Px x 0 • x max Ecart type : Claude Rigault, 2/12/2012 2 Var x x 0 x max x P x 2 E x xP x E x 2 x 0 Introduction à la théorie des files d'attente 2 Px E x 2 E x 2 x max x 0 38 Fonction de répartition, cas discret • La fonction de répartition (cumulative distribution function cdf) de x est la probabilité que la valeur de x soit ≤ t FX t P ( x t ) F(t) 1 0 • 1 2 3 4 5 6 7 Pxi xi t 8 9 t Probabilité que x soit dans un intervalle [a,b] : Pa x b FX b FX a Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 39 Processus à temps continu • • La loi de probabilité devient une fonction de densité de probabilité (probability density function pdf) La probabilité que x soit comprise entre t et t+dt est fX(t)dt f(t) Pt x t dt f X t dt 1 b Pa x b f X t dt • Espérance : E x xf X x dx 0 • a Variance : Var x x x 2 0 • 0 1 2 3 4 5 6 7 8 9 t 2 f X x dx x f X x dx x 2 0 Ecart type : Var x Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 40 Fonction de répartition, cas continu • Fonction de répartition (cumulative distribution function cdf) de x : probabilité que la valeur de x soit ≤ t t FX t P0 x t f X t dt F(t) 1 0 0 • 1 2 3 4 5 6 7 8 9 t Probabilité que x soit dans un intervalle [a,b] : Pa x b FX b FX a Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 41 Fonction de densité de probabilité • La fonction de densité est la dérivée de la fonction de répartition : P x X x dx dFX x dx dx P x X x dx F x dx F x f x dx • En effet • et • La fonction de densité de probabilité est : f X x dFX x dx P x X x dx f X x dx Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 42 Probabilité conditionnelle (sachant que…) • Probabilité de l’événement A sachant que l’événement B s’est déjà réalisé : P A B P A | B PB Ω B A A B • • En général, une probabilité conditionnelle (sachant que) est plus grande qu’une probabilité ne sachant rien. (Sachant qu’un homme a déjà atteint 60 ans, son espérance de vie (82 ans en France) est plus grande que celle de la population totale des hommes (78 ans)) Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 43 PDF de la somme de 2 variables aléatoires indépendantes • • La fonction de densité de probabilité de la somme de deux variables aléatoires indépendantes est le produit de convolution des fonctions de densité de chacune des variables : Si Z=X+Y et si X et Y sont indépendantes, alors : f Z z f X x fY z xdx Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 44 Espérance et variance d’une somme de variables aléatoires • Qu’elles soient indépendantes ou non, l’espérance de la somme de 2 variables aléatoires est la somme des espérances : E x y E x E y • En général la variance de la somme de 2 variables aléatoires n’est pas la somme des variances, c’est la somme des variance plus 2 fois la covariance : Var x y Var x Var y 2Cov x, y • Si x et y sont indépendantes, alors Cov(x,y)=0 et Var x y Var x Var y Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 45 Diapositive volontairement vide Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 46 Les processus des clients Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 47 Arrivées à des temps discrets • L’équivalent d’une porte à tourniquet tourne à vitesse constante et divise le temps en temps élémentaires Δt où ne peut entrer qu’un client à la fois File d’attente • L’intervalle [0,t] se trouve divisé en N intervalles de durée t/N t/N t/N t/N 0 t/N t N intervalles Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 48 Arrivées à des temps discrets • On suppose que la probabilité d’arrivée dans un intervalle est : Pt t • La probabilité de x arrivées sur [0,t=NΔt] est : P ( x, t ) C Nx t x 1 t N x • • • Il s’agit de la loi de probabilité Binomiale ou de Bernoulli (Jacques) Nous pouvons poser λΔt=p et (1- λΔt)=q P ( x, t ) C Nx p x q N x Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 49 La loi de Bernoulli est une loi de probabilité • Nous devons avoir : N N x 0 x 0 Px C Nx p x 1 p N x 1 N • Or : C Nx p x 1 p N x est le développement du binôme p 1 p N • Ce binôme est égal à 1. CQFD x 0 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 50 Espérance de la loi de Bernoulli • Nous pouvons calculer l’espérance de la loi de Bernouilli par la méthode de la force brute : E x N xp x 1 p N x x 0 • Nous faisons le calcul en annexe et nous trouvons : E x Np • Une méthode plus fine est de dire que nous cherchons l’espérance d’un ensemble de N variables indépendantes identiquement distribuées (iid) dont la valeur peut être 1 avec probabilité p et 0 avec probabilité (1-p) L’espérance d’une de ces variables est : 1 p 0 1 p p L’espérance de l’ensemble des N variables est Np • • Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 51 Variance de la loi de Bernoulli • Nous pouvons également calculer la variance par la méthode de la force brute : N 2 x N x Np 2 Var x x p 1 p x 0 • • Nous faisons ce calcul en annexe et nous trouvons : Var x Np 1 p Nous pouvons aussi utiliser la méthode de l’iid comme nous l’avons fait pour l’espérance : Var x N 12 p 0 2 1 p p 2 N p p 2 Np 1 p Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 52 Temps inter-arrivées dans le cas discret • • • On appelle x la variable aléatoire donnant le rang de la première arrivée La probabilité qu’il n’y ait aucune arrivée dans [0,,(N-1) Δt] est : t P0, t 1 1 N N 1 q N 1 La probabilité que la première arrivée soit au temps t =NΔt est : P x t t 1 t N 1 pq N 1 • • Il s’agit d’une loi de probabilité géométrique du deuxième type La fonction de répartition du temps inter-arrivées est la probabilité pour que le temps inter-arrivées soit ≤ t : N N N 1 qN F t P xi pq i 1 p q i 1 p i 1 i 1 F t 1 q N 1 (1 • • i 1 1 q 1 qN t N ) N La loi géométrique est la seule fonction de probabilité discrète à avoir une fonction de répartition simple La probabilité que la première arrivée se produise à un temps > t est : Claude Rigault, 2/12/2012 P x t 1 P x t 1 1 q N q N Introduction à la théorie des files d'attente 53 Il y a 2 types de lois géométriques • • • • Premier type : p(x)=p(1-p)x Alors : 1 p E x • 1 p p2 Deuxième type : p(x)=p(1-p)x-1 Alors : 1 1 p E x et Var x 2 p • p et Var x p La loi géométrique du premier type donne les probabilités d’occupation des files d’attente M/M/1 La loi géométrique du deuxième type donne les temps inter-arrivées dans le cas discret Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 54 La loi géométrique de deuxième type • La loi géométrique Px p1 p x 1 P(x) 1 p 1 2 34 Claude Rigault, 2/12/2012 x Introduction à la théorie des files d'attente 55 La loi géométrique est une loi de probabilité • • Nous supposons que nous observons les inter-arrivées pendant un temps infiniment long : x varie de 1 à l’infini Nous devons avoir : P x p1 p x 1 1 x 1 • mais p1 p x 1 • x 1 x 1 N p 1 p x 1 x 0 En posant y=x-1 et (1-p)=q p1 p x 1 Claude Rigault, 2/12/2012 x 1 p qy y 0 p p 1 1 q p Introduction à la théorie des files d'attente 56 Espérance de la loi géométrique • Le temps inter-arrivée peut être aussi grand que l’on veut : P x p1 p x 1 pq x 1 où p t et q 1 p E x 1 1 p t E t E x t t 1 t • Nous montrons en annexe que l’espérance de x est : • L’espérance du temps entre 2 arrivées est : 1 E t • La variance et l’écart type sont : Var x Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 1 p p2 1 p p 57 La propriété de Markov • La propriété de Markov est la propriété sans mémoire : la probabilité conditionnelle d’un état futur sachant l’état présent ne dépend que de cet état présent et pas des états antérieurs. • A la roulette, la probabilité d’avoir un noir sachant que l’on a déjà eu 8 rouges est la même que la probabilité d’avoir un noir au premier lancer (la boule n’a pas de mémoire). La probabilité d’attendre 2 minutes sachant que l’on a déjà attendu 8 minutes est la même que la probabilité d’attendre 2 minutes sachant que l’on a pas encore attendu • Andreï A. Markov Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 58 La loi géométrique possède la propriété de Markov • Probabilité d’un temps inter-arrivées ≤ s sachant qu’un temps t s’est déjà écoulé sans arrivées Px t s | x t P x t s | x t • • P x t s x t P (t x t s ) Px t Px t 1 qN M 1 qN qN q N q N M 1 q M P x s qN La loi géométrique est sans mémoire (propriété de Markov) C’est la seule loi discrète à avoir cette propriété P x t s | x t P x s Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 59 Diapositive volontairement vide Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 60 Arrivées à des temps continus • • La porte à tourniquet tourne maintenant à vitesse non constante aussi rapide que l’on veut (elle n’a pas de frein). Elle divise le temps en temps élémentaires dt où ne peut entrer qu’un client à la fois (dt→0) File d’attente • L’intervalle [0,t] se trouve divisé en N intervalles de durée dt dt dt dt 0 dt t N=t/ dt intervalles Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 61 Proba temporelles, arrivées Poissoniennes • • Divisons l’intervalle [0,t] en N=t/dt intervalles de durée dt La probabilité d’arrivée d’un client sur cet intervalle est : P(dt ) dt • La probabilité de x arrivées sur [0,t] est : P ( x, t ) C Nx dt x 1 dt N x • Lorsque dt 0 , N ∞ la loi de Bernoulli tend vers la loi de Poisson t x t P ( x, t ) e • x! (voir démonstration sur la diapo suivante) dt dt dt 0 dt t N=t/dt intervalles Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 62 Bernoulli Poisson • N=t/dt, lorsque dt 0 , N ∞ P( x, t ) C Nx dt x 1 dt N x N! dt x 1 dt N x x! N x ! N N 1... N x 1 dt x 1 dt N x P ( x, t ) x! P ( x, t ) t N N 1... N x 1 N dt x 1 dt t x dt x e t x t t x t dt x t dt e e P ( x, t ) x! x! Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente Siméon Denis Poisson 63 La loi de Poisson est une loi de probabilité • Nous devons avoir : Ax A P x x! e 1 x 0 x 0 N N P x e x 0 • • Mais : Donc : N A Ax x! x 0 N Ax x! e A x 0 N N P x e Ae A 1 x 0 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 64 Espérance de la loi de Poisson • Nous utilisons la méthode de la force brute : A x A A x 1 A E x x e A e x 0 x! x 1 x 1! • Nous posons y=x-1 (ou x=y+1) : • Donc : Claude Rigault, 2/12/2012 Ay A Ay A E x A e mais e 1 y ! y ! y 0 y 0 E x A Introduction à la théorie des files d'attente 65 Variance de la loi de Poisson • Nous utilisons la méthode de la force brute : 2 Ax A A x 1 A 2 Var x x e A Ax e A2 x! x 0 x 1 x 1! • Nous posons y=x-1 (ou x=y+1) : Ay A A y A A y A 2 Var x A y 1 e e A A A y A2 e y 0 y 0 y! y! y 0 y! • • ou Donc : Var x A2 A A2 Var x A et A Claude Rigault, 2/12/2012 Pour la loi de Poisson, l’écart type est la racine carrée de la moyenne Introduction à la théorie des files d'attente 66 Temps inter-arrivées • • • • • • Soit 0 l’instant de l’arrivée i et t l’instant de l’arrivée i+1 Divisons l’intervalle [0,,t] en N=t/dt intervalles La probabilité qu’il n’y ait aucune arrivée dans [0,,t] est : P0, t 1 dt N t Lorsque dt 0, N ∞ P0, t e Ceci représente la probabilité pour que le temps entre 2 arrivées soit >t Appelons x le temps entre 2 arrivées. P x t e t • La fonction de répartition du temps inter-arrivées est la probabilité pour que le temps inter-arrivées soit ≤ t P x t F t 1 e t Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 67 Fonction de densité exponentielle (1) • La fonction de répartition du temps inter-arrivées est : P x t F t 1 e t • La fonction de densité de probabilité est : f t • dF t e t dt C’est la loi de densité de probabilité exponentielle P (t x t dt ) e t dt b P ( a x b) e a Claude Rigault, 2/12/2012 t dt t b t a e t d t t t b e t a Introduction à la théorie des files d'attente t t a e t b e a e b 68 La loi exponentielle est une loi de densité de probabilité • 0 0 Nous devons avoir : f x dx e t dt 1 e t 0 • Nous posons y=λt : e 0 Claude Rigault, 2/12/2012 t dt e t dt 0 y dt e dy y e 0 e0 e 1 0 Introduction à la théorie des files d'attente 69 Espérance du temps inter-arrivées • • 0 0 Espérance : E t tf t dt te On pose : x t E t 1 xe t x dt 1 te t dt 0 dx 0 • On intègre par parties : xe dx 0 • x Donc Claude Rigault, 2/12/2012 E t xe x 0 e x dx xe x e 0 x 0 1 0 1 Introduction à la théorie des files d'attente 70 Variance du temps inter-arrivées 2 t 1 Var t t e dt 2 0 Calculons l’intégrale : t 2 e t 0 x 2 x e dx xe x 0 0 On obtient : dt 1 t 2 0 2 t e dt 1 x 2 2 x e dx 0 2 xe x dx 2 0 1 2 1 Var t 2 2 2 Var t 1 2 1 Pour la loi exponentielle, l’écart type est égal à la moyenne Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 71 La loi exponentielle possède la propriété de Markov (1) • Probabilité d’un temps inter-arrivées ≤ s sachant qu’un temps t s’est déjà écoulé sans arrivées P x t s x t Pt x t s P x t s | x t P x t P x t F t s ) F (t 1 e t s 1 e t e t e t s s P x t s | x t 1 e P x s t t Px t e e • La loi exponentielle est sans mémoire. C’est la seule loi de probabilité continue qui a cette propriété. P x t s | x t P x s Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 72 La loi exponentielle possède la propriété de Markov (2) P0 x s 0 s P x t s | x t t t+s P x t s | x t P x s Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 73 La propriété PASTA • • PASTA : Poisson Arrivals See Time Average 1 2 t 2 Nous nous souvenons que le travail est : E w • Dans le cas d’arrivées Poissoniennes , les inter-arrivées suivent une loi 1 1 exponentielle : E w , • On trouve que l’espérance du temps d’attente d’un client dans la file (s’il n’y a personne avant lui) est : 2 t 1 1 2 2 1 1 E w 1 2 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 74 Le paradoxe de l’auto-stoppeur • • • • Un auto-stoppeur arrive au bord d’une route. Les voitures passent selon une loi exponentielle de taux 10 mn Combien de temps, en moyenne l’auto-stoppeur doit il attendre? On s’attend à une réponse du genre 5 mn (qui serait vraie si les arrivées des voitures étaient déterministes) La propriété PASTA nous dit que la réponse vraie est 10 mn. (Plus de gens attendent des temps long que des temps courts) Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 75 Diapositive volontairement vide Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 76 Probabilité de x clients simultanés • La probabilité temporelle d’avoir simultanément x clients dans le système est : tx x x(t) T tx = durée cumulée d’existence de x clients dans le système x Espérance Durée d’observation T t Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 77 Equilibre statistique • Pour T très grand, le nombre de transitions de x à x-1est égal au nombre de transitions de x-1 à x (l’effet de bord devient négligeable) x(t) 1 service 1 service x 1 arrivée 1 arrivée 1 arrivée T Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 78 L’équation d’équilibre • • x1tx1xtx A l’équilibre : Si x ≤ N où N est le nombre de serveurs (pas d’attente) , alors où est l’espérance du temps de service x x x-1 t x-1 x-1 x x t x Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 79 Cas d’un grand nombre de clients • • x est indépendant de x : n Quand c’est le cas, on parle T d’un processus d’arrivées Markovien (le passé, n’a pas d’influence). S’il n’y a pas d’attente x est : x x x1tx1xtx • • • L’équation d’équilibre est : n t x t x 1 T x t n t x 1 Elle devient : x x T T T • Ou : Claude Rigault, 2/12/2012 A x x x 1 Introduction à la théorie des files d'attente 80 La distribution de Poisson • • Pour un grand nombre de clients : On calcule P(0) par : Ax x 0 x 0 x! ( x ) ( 0) x! ( 0) 1 0 e A Ax A ( x) e x! • ou : • On obtient (voir annexe) Claude Rigault, 2/12/2012 ( x) Ax E x A et A Introduction à la théorie des files d'attente 81 Conséquences du trafic Poissonien • La fluctuation mesurée par l’écart type ne varie pas linéairement avec le trafic : A • • • Un réseau n’est pas dimensionné pour le nombre moyen de clients dans le système mais pour ce nombre plus la fluctuation. La fluctuation varie comme la racine carrée du trafic Plus le trafic est grand, moins la fluctuation est grande (en valeur relative) Le dimensionnement de réseau n’est pas linéaire : N A k A Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 82 La règle de l’accessibilité totale Taux de service Grandes fluctuations ressenties par le client ! Mauvaise solution Claude Rigault, 2/12/2012 Taux de service 4 Petites fluctuations ressenties par le client ! Bonne solution Introduction à la théorie des files d'attente 83 Cas d’un petit nombre de clients • • • • • • x dépend de x : s’il y a en tout L clients et x-1 sont déjà là, alors seulement Lx1 L x1 clients peuvent produire des arrivées Un client a le trafic T Un client libre produit f arrivées par unité de temps T L’équation d’équilibre devient : Lx1 tx1 x tx T L x 1 x 1 x Ou x 1 x et : x C Lx 0 1 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 84 La distribution de Bernoulli • On calcule π(0) par : L • Ou : (0)1 1 1 • et : L x ρ π(x) ( 0 ) C L 1 ρ x 0 x 0 x 1 (0) 1 L • donc : x CLx ρ x 1 ρ L x • On obtient : Claude Rigault, 2/12/2012 X L A et : Introduction à la théorie des files d'attente A1 85 Comparaison de Bernoulli et de Poisson • • • • Pour une moyenne donnée, la loi de Poisson a la plus grande entropie Poisson est un modèle pessimiste (worst case) La fluctuation de Bernoulli est un peu plus petite que celle de Poisson Le modèle de Bernoulli est plus précis pour un petit nombre de clients Quand Bernoulli Poisson L x L! L! A L x x x 1 1 x!L x ! x! L x ! L • et L! Lx , 1 A Lx! L L x L x e A x L x A A A e x e x! Claude Rigault, 2/12/2012 x! Introduction à la théorie des files d'attente 86 Les processus à perte Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 87 Processus à pertes 1 L clients L Tonalité d’encombrement 1 2 N N serveurs Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 88 Connexions • Les serveurs sont les jonctions (trunks). Combien en faut-il ? 1 2 1 1 1 2 2 J aj 2 J Jonctions L L al al lignes lignes Signalisation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 89 Combien de serveurs ? x(t) N Ecart type Nombre de serveurs Appels perdus A Espérance Période d’observation T t Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 90 Probabilité de perte et congestion temporelle N tN N B nB n nB L N tN , ν n , C nC T C L L nB L N 1 tN n L 1 nC T LT B Claude Rigault, 2/12/2012 LN N L AC Introduction à la théorie des files d'attente 91 La probabilité de perte est égale à la congestion temporelle dans le cas des clients Poissoniens B LN N L AC • Clients sont Poissoniens L est infini et : • Une autre façon de le démontrer : n T B N est indépendant de N n nB t N nB λt N t N B N T T n Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 92 Le système M/M/N/N • • • Il y a N serveurs et on ne peut pas avoir plus de N clients dans le système (pas de file d’attente) Les clients sont Poissoniens est indépendant de x Il y a N serveurs de capacité indépendante de x Serveur Clients offerts Pas de file d’attente Claude Rigault, 2/12/2012 Serveur N serveurs Serveur Introduction à la théorie des files d'attente 93 Probabilité d’avoir x clients • • Ax Les clients sont Poissonniens est indépendant de x x 0 x! Il ne peut pas y avoir plus de N clients dans le système (pas de file d’attente) N Ai 1 0 1 0 N Ai i 0 i! i! i 0 Ax x x! N Ai i 0 Claude Rigault, 2/12/2012 i! Introduction à la théorie des files d'attente 94 La première loi d’Erlang ou loi d’Erlang “B” • Les clients sont Poissoniens L est infini B N AN B E1,N A N N!x A x 0 x! • On obtient : • Les Européens appellent cette loi “la première loi d’Erlang”, les Américains l’appellent “loi d’Erlang B” Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 95 Inversion de la loi d’Erlang B • On peut écrire une petite boucle de programme pour tirer profit de la relation de récurrence : N 1 1 E1, N A A E1, N 1 A 1 • Sachant que : Claude Rigault, 2/12/2012 E1,0 A 1 Introduction à la théorie des files d'attente 96 La règle de Rigault AN B E1, N ( A) N ! i N A i 0 i ! Si B 10 k alors N A k A Excellente approximation à quelques pour cents près (par excès) Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 97 Trafic écoulé par la Nième jonction • La Nième jonction écoule le trafic perdu par le groupe des N-1 premières jonctions et perd le trafic perdu par le groupe des N jonctions N-1 jonctions A Nième jonction N AEN 1AEN A Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 98 La règle de l’utilité marginale (principe de Moe) • N 1 1 1 E1,N ( A) A E1,N 1 ( A) Equation ECCS N C a1 N C uN N < 0,75 C C' a2 1 E1,N ( A) uN C' 0,75 E N E1,N ( A) N A1 E 1,N ( A) ( N A) E1,N ( A) C N C 0,75 C' aN C Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 99 Construction du réseau : réseaux de transit • La construction du réseau se fait en fonction des trafics à écouler COMMUTATEURS DE TRANSIT FAISCEAU DE DEBORDEMENT COMMUTATEURS D'ABONNES Appelé Jonctions Faisceau direct Haut usage Appelant LR LR Appelant Claude Rigault, 2/12/2012 PABX LS Introduction à la théorie des files d'attente Appelé 100 Trafic de débordement Transit A0 Ai E1, N i Ai i A1E1, N1 A1 A2 E1, N 2 A2 Destination 1 A3 E1, N 3 A3 Destination 2 Destination 3 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 101 Faisceau équivalent de Wilkinson (1) • • On cherche un faisceau unique qui aurait un trafic de débordement dont la moyenne et la variance serait la même que celles que nous obtenons (o pour Overflow) : A0 Ai E1, N i Ai i La variance du trafic perdu sur un faisceau où le trafic offert est A est : A varB A AB 1 AB 1 N AB A • La variance totale du trafic de débordement est donc (nous ne le démontrons pas) : A var0 A0 ABi 1 ABi 1 N A A B i i Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 102 Faisceau équivalent de Wilkinson (2) • Les formules de Rapp donnent le trafic et le nombre de jonctions d’un faisceau unique à trafic Poissonien qui aurait le même trafic de débordement et la même variance de débordement (e pour Équivalent): 3 var0 A0 var0 A0 1 Ae var0 A0 A A 0 0 Ne • Ae A0 1 1 1 var A A0 0 0 A0 Faisceau équivalent Le principe de la méthode de Wilkinson est de dire que si l’on équipe le faisceau de débordement de m jonctions la perte d’appel serait la même que la perte d’Erlang appliquée à un faisceau équivalent qui aurait Ne+m jonctions Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 103 Diapositive volontairement vide Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 104 Les processus à attente Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 105 Processus à attente 1 L clients L 1 2 N N serveurs Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 106 Paramètres intéressants • Processus à perte : Probabilité de perte : • Processus à attente : Probabilité qu’un certain pourcentage de clients dépasse un certain délai : B nB n nt P n Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 107 Probabilité d’attente • On appelle Probabilité d’attente (Delai) la fraction des arrivées qui doit attendre : nD D • n Les arrivées qui doivent attendre sont les arrivées qui ont lieu quand tous les serveurs ont occupés n nD tx • Ou : • et : nD n x N x t T x x N x N D x x N Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 108 Deux espérances différentes pour le temps d’attente • • • • Soit E(w) l’espérance du temps d’attente (n’incluant pas le temps dans le serveur) moyennée sur toutes les n arrivées (même celles qui sont servies sans attente) Soit E(wD) l’espérance du temps d’attente , moyennée seulement sur les nD arrivées qui subissent de l’attente La somme des attentes est : nE w nD E wD E w nD E wD n et : Claude Rigault, 2/12/2012 E w DE wD Introduction à la théorie des files d'attente 109 Classification des systèmes de files d’attente • • Ces systèmes sont désignés par la notation de Kendall* : Processus Clients/Processus Service /Nombre de Serveurs/Occupation maximale de la queue/taille de la population de clients/Discipline de service • • • M = exponentiel D = Déterministe G = Général • Quand l’occupation maximale (et la population de clients) n’est pas mentionnée cela veut dire qu’elle est illimitée (le nombre de clients peut être infini). Si la discipline de service est FCFS (First Come First Serve) on ne met rien David George Kendall (1918 –2007) était un mathématicien et statisticien anglais de l’université de Cambridge Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 110 La file M/M/1 • • • • Les clients sont Poissoniens est indépendant de x Il n’y a pas de perte C = Il n’y a qu’un serveur de capacité indépendante de x : (le serveur ne se dépêche pas plus si la file est longue) Clients offerts Serveur Buffer infini Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 111 Équation d’équilibre pour la file M/M/1 • L’équation d’équilibre devient : ou : x x 1 et : x x 0 tx1 tx x 0 x 0 ( x ) ( 0) x 1 • On obtient P(0) par : • • 1 Donc Si 1, la somme 1 2 3 ... vaut 1 Et (0) 1 - x x 1 - • Il s’agit d’une loi géométrique du premier type Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 112 Espérance et variance du nombre de clients dans le système M/M/1 (file + serveur) • Nous calculons en annexe l’espérance d’une loi géométrique de deuxième type : P x p x 1 p qp x où q 1 p p E x 1 p • Ici p=ρ donc l’espérance du nombre de clients dans le système est : E x • 1 - La variance et l’écart type sont : Var x Claude Rigault, 2/12/2012 1 2 1 Introduction à la théorie des files d'attente 113 Temps de séjour moyen dans la file M/M/1 • • • Selon la formule de Little, le temps de séjour moyen dans le système (temps dans la file + temps de service) est : E x 1 1 E t - E t 1 - et aussi : E t 1 1- L’attente moyenne (dans la file uniquement) est : E wM / M / 1 E t Claude Rigault, 2/12/2012 1 Introduction à la théorie des files d'attente 114 Nombres moyens de clients dans la file et dans le serveur • L’espérance du nombre de clients total dans le système (serveur + file) est : E x 1 • L’espérance du nombre de clients dans la file est : nD E w 1- 2 nD 1- • Ou : • L’espérance du nombre de clients dans le serveur est : 2 1 E ns E x -n D 1 1 1 On aurait pu retrouver ce résultat par la formule de Little : E ns λ • Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 115 Sensibilité du temps de séjour au trafic • • • Il est impossible d’avoir un trafic de 1. =0,1 : Une variation de charge de 0,7 à 0,9 Erlangs multiplie le délai par 3 ! Une variation de charge de 0,1 à 0,3 Erlangs multiplie le délai par 1,2 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 116 Sensibilité du nombre de clients total au trafic • Le nombre total de clients (file + serveur) : Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente c E x 1 117 Sensibilité du nombre de clients en attente au trafic • Le nombre de clients en attente (dans la file) : Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 2 nD 1- 118 Multiplexage statistique • Le multiplexage statistique donne toute la capacité du canal à tout le monde. L’espérance du délai est : 1 E t S - • En TDM on divise la capacité en N intervalles de temps de capacité T • • N Dans ces intervalles le taux d’arrivée est : Le délai en TDM devient : E tT N • 1 T N NE t S N Le délai est N fois plus petit en multiplexage statistique ! Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 119 La file M/M/N • • • Les clients sont Poissoniens est indépendant de x Il n’y a pas de perte C = Il y a N serveurs de taux indépendant of x Serveur Clients offerts Serveur Buffer infini Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente N serveurs Serveur 120 Taux de service dans la file M/M/N • Il y a 2 cas : 1) Si x N alors d’un serveur 2) Si xN alors μx x x où est le taux de service μx N x N Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente x 121 Equations d’équilibre pour la file M/M/N 1) Si ou xN x alors Ax x! tx1 x tx A et x x 1 x P 0 2) Si x N j N x1 tx1 N tx alors N j et A N j 1 N j ou Claude Rigault, 2/12/2012 A N j N N Introduction à la théorie des files d'attente 122 π(0) dans la file M/M/N • ( x) 1 On obtient π(0) par : x 0 • A N ( 0) x 0 N mais ( N ) et : x 0 x x 0 A N! ( 0) Ax j A (N ) 1 x! j 1 N A ( N ) 1 x! N A ( 0) 1 N 1 A x x 0 Claude Rigault, 2/12/2012 N ( x ) ( 0) Ce qui donne : ou N N 1 A x A N 1 donc : (0) x 0 x! N A N ! N A N x! N A N ! Introduction à la théorie des files d'attente 123 Probabilités d’état dans la file M/M/N Ax x 1) Si xN 2) Si x N j N x! N 1 A x AN N x! N A N ! x 0 N j A N AN N! N 1 A x x 0 Claude Rigault, 2/12/2012 j AN N x! N A N ! Introduction à la théorie des files d'attente 124 Probabilité d’attente • • Nous avons défini la probabilité d’attente “Delay probability D” comme la fraction des arrivées qui subissent de l’attente : D nD n Les arrivées retardées sont celles qui se produisent quand tous les serveurs sont occupés : n nD tx x N • • ou : soit : nD n D t T x x N x x N x x N Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 125 La loi d’Erlang “C” A • La probabilité d’attente D est : D x et N j N N x N j A N N • On obtient : D N j N NA j 0 j 0 N N A N A N! D E2,N A N 1 N x N A A N N A N! x 0 x! • Ou : • Aussi appelée “la deuxième loi Erlang” Claude Rigault, 2/12/2012 j Introduction à la théorie des files d'attente 126 Relation entre les 2 lois ‘Erlang • Posons S N 1 N 1 i 0 N 1 B A S N 1 B N! Ai i! alors : B AN N! AN S N 1 N! • Et • En introduisant cette expression dans celle de D : N N AN NB NA N A N! D N A AB N AN 1 B N 1 B AN B NA B N! N A N! D NB N A AB D N B NA • Normalement AB est très inférieur à N-A donc : • • La probabilité d’attente est plus grande que la probabilité de perte A k En appliquant la règle de Rigault : 10 D 1 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente k 127 Espérance du nombre de clients en attente dans la file M/M/N • Le nombre moyen de clients en attente est : A A N E j j ( N j ) N j N 2 N A j 1 j 1 1 N 1 N On a montré sur la diapos précédente que : D A 1 N A A donc : E j N A D et : E j D 1 NA N • • Claude Rigault, 2/12/2012 j Introduction à la théorie des files d'attente 128 Temps d’attente et temps de séjour dans la file M/M/N • De la formule de Little : E j E w • avec : E j • soit : E w • Le temps de séjour est : E t E w τ • Nous avons aussi : E wD Claude Rigault, 2/12/2012 A D NA NA E w E j NA D D NA D NA Introduction à la théorie des files d'attente 129 Comparaison entre les files M/M/1 et M/M/N • • E j Pour M/M/N nous avons obtenu : Si ρ est le trafic de chaque serveur A= Nρ A D NA N E j D N N • Nous en déduisons : • Calculons D si N=1. Dans ce cas A= ρ ou : E j 1 D 1 AN N 1 N A N! D N 1 N 1 A x 1 A N x! N A N! 1 1 x 0 • 2 Nous trouvons que, pour M/M/1, D= ρ et comme prévu : E j nD 1 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 130 Comparaison entre les files M/M/1 et M/M/N (suite) • • • E w D Pour M/M/N nous avons obtenu : NA Où A=λ avec =1/µ étant le temps de service d’un serveur. Mais on a aussi A=λ/µ , donc : 1 E w • N D D N ou : E w D N • Dans le cas où N=1 (file M/M/1) nous avons vu que D=ρ • Alors : • Ce qui est bien le résultat que nous avions obtenu pour la file M/M/1 Claude Rigault, 2/12/2012 E w 1 - ou : Introduction à la théorie des files d'attente E w 1 - 131 Retour sur l’accessibilité totale Taux de service N Taux de service Arrivées λ/N Arrivées λ E w1 E W2 D N Bonne solution Claude Rigault, 2/12/2012 1 N N N N N E w1 N D Vraiment très mauvaise solution Introduction à la théorie des files d'attente 132 La file M/G/1 • Les clients sont Poissoniens est indépendant de x • Il n’y a pas de perte C = • Il n’y a qu’un serveur de capacité dont la distribution des temps de service n’est pas connue : Clients offerts Serveur Buffer infini Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 133 M/G/1 : temps d’attente • • • • • Un client qui arrive attend en moyenne que le nombre moyen de gens dans la file avant lui soient servis (n) plus la moyenne du temps résiduel de service r du client en train d’être servi w=n+r Mais d’après la formule de Little n=λw Donc w=wλ+r = wρ+r et r w 1 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 134 M/G/1 : calcul du temps résiduel • Calculons l’espérance des temps résiduels à chaque fois qu’un nouveau client arrive r() r t 1 2 3 n t 1 1 n 1 2 r t dt i t0 t 1 2 • L’espérance des temps résiduels est : • • • (L’intégrale est la somme des surfaces des triangles) Le nombre n de triangles pendant t est n=λt 1 n 1 2 n11 n 2 donc : r i i Claude Rigault, 2/12/2012 t Introduction à la théorie des files d'attente 1 2 t 2n 1 135 Formule de Pollaczek Khinchin • • n Quand t→∞ t Et la moyenne des temps résiduels est : E ( 2 ) 11 n 2 r i 2n 1 2 r E i2 E w 1 1 2 • Le temps d’attente est : • Mais d’après la formule de la variance : 2 2 2 1 1 2 2 1 2 1 2 • 2 2 Donc : E w • On pose Cv=/ (Coefficient de variation) : 1 Claude Rigault, 2/12/2012 2 E 2 2 E 2 Introduction à la théorie des files d'attente E w 1 1 Cv2 2 136 Nombre de clients en attente dans la file M/G/1 • E n E w On utilise la formule de Little E n E w 1 1 Cv2 2 2 1 Cv2 E n 1 2 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 137 Applications de la formule de Pollaczek Kinchin • Pour des temps de service Poissoniens (File M/M/1) : = • On retrouve : E wM / M / 1 • Pour des temps de service déterministes : = 0 • On trouve : • Pour un trafic donné le temps d’attente minimum est donné dans un réseau où la taille des paquets est fixe (ATM) Claude Rigault, 2/12/2012 E wM / D / 1 1 1 1 1 2 1 1 0 2 1 2 Introduction à la théorie des files d'attente 138 Les réseaux de files d’attente Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 139 Le théorème de Burke • Soient 1file M/M/1 en série avec une autre file ?/M/1 • • • La première file a un taux d’arrivée λ et un taux de service µ1 La deuxième file a un taux de service µ2 A l’équilibre, il sort autant de client qu’il en entre par unité de temps. Les arrivée dans la deuxième file sont également Poissoniennes de même taux λ. Donc la deuxième file est également une file M/M/1 et avec le même taux d’arrivées que la première file. 2 1 2 1 • Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 140 Equations d’équilibre • • x est le nombre de clients dans la première file, y est le nombre de clients dans la deuxième file Il y a 4 équations d’équilibre c y x-1 λ µ2 b y-1 x-1 λ y x µ1 λ µ1 λ µ2 d a x 1, y 1 1 x, y 1 b x 1, y 1 2 x 1, y c y-1 x d x 1, y 1 x, y x, y 1 2 x, y a Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 141 Forme produit • On considère que les 2 processus sont indépendants, donc : P x, y x y 1 1 1x 1 2 2y • On constate que cette forme produit satisfait les 4 équations d’équilibre Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 142 Réseau de Jackson • Lorsqu’un client peut visiter la même file d’attente plusieurs fois, le processus d’arrivée n’est plus Poissonien. • Il y a des arrivées extérieures et des rebouclages intérieurs Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 143 Réseau de Jackson 1) Toutes les arrivées extérieures doivent être Poissoniennes 2) Tous les temps de services doivent suivre une distribution exponentielle. 3) Toutes les files d’attente doivent être de capacité infinie. 4) Quand un client quitte un nœud, la probabilité qu’il aille à un autre nœud doit être indépendante de son histoire passée et indépendante de la localisation d’un autre client. Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 144 Le théorème de Jackson 1. Le nombre de clients dans la file d’attente de chaque nœud est indépendant des autres nœuds et les arrivées peuvent être considérées comme Poissoniennes. 2. Les probabilités stationnaires de chaque noeuds sont celles d’une file M/M/1 ou M/M/s. 3. Les délais moyens à chaque nœud peuvent être additionnés pour déterminer le délai total de traversée du réseau. Dans ces conditions le réseau est à forme produit Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 145 Réseau de Jackson fermé • Exemple d’un système de transmission émetteur transmission récepteur • Dans les réseaux de Jackson fermés le calcul de la constante de normalisation (π(o)) est difficile. On utilise la méthode MVA (Mean Value Analysis). Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 146 Simulation Prologue Qu’est ce que le trafic ? Le nombre de clients dans un système Quelques petits rappels sur les probabilités Les processus des clients Les processus à perte Les processus à attente Les réseaux de files d’attente Simulation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 147 Principaux programmes de simulation (1) • Il est déconseillé d’écrire son propre simulateur. On en trouve de très bons et gratuits. • Opnet (coûteux), dispose de bibliothèques de modèles préconstruits. (www.opnet.com) • NS : Network Simulator. Apprécié du monde académique et gratuit. Mais ne tourne que sur Linux. (www.isi.edu/nsnam) • OMNeT++ : gratuit sur Windows, interface graphique. Semblable à Opnet mais pas de bibliothèques préconstruites. Plutôt orienté simulation de protocoles. (www.omnetpp.org) • En France Modline/Qnap2 a été développé par l’INRIA et Bull dans les années 80. Qnap2 est le moteur de simulation et Modline est un interface graphique. Malheureusement il n’est plus maintenu. Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 148 JMT : Java Modelling Tools • JMT (Java Modeling Tools) : un logiciel plus récent mais qui suit le même modèle que QNap2, développé par Polytechnique de Milan. (http://jmt.sourceforge.net/) • Gratuit sur Windows, interface graphique. Orienté simulation de réseaux, bien adapté à la pédagogie et la recherche. • Download installer : http://sourceforge.net/projects/jmt/files/jmt/JMT-0.8.0/JMT-installer0.8.0.jar/download • JMT user manual : http://jmt.sourceforge.net/Papers/JMT_users_Manual.pdf • Une bonne petite vidéo pour démarrer : http://www.youtube.com/watch?v=YuJ3eDTYAp0 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 149 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 150 Installation de JMT • • • • • • • • • • Il faut avoir Java sur sa machine. L’installer d'abord. Ensuite télécharger JMT-installer-0.8.0.jar Le ranger dans le répertoire racine de la machine C: (pas dans program file) Passe en console de commande et taper : java -jar JMT-installer-0.8.0.jar Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 151 JMT: définir le système à simuler • -Ouvrir JSIMGraph • File New • -Construire le système à simuler • Par exemple 3 sources (Source 0, Source 1, Source 2, une file d'attente Queue Stat 0, 1 puit, Sink 0) • Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 152 Définir les trafics • • • • • • -Définir les trafics : dans Class faire Add Class Class0 type : open puis cliquer sur edit : définir lamda=3 pour distribution exponentielle, cliquer sur mean qui va se mettre automatiquement à 1/3, puis OK, Reference Station : affecter à source 0. Refaire Add Class Class1 type : open puis cliquer sur edit : définir lamda=3 pour distribution exponentielle, cliquer sur mean qui va se mettre automatiquement à 1/3, puis OK, Reference Station : affecter à source 1 en cliquant sur le nom de la source Refaire Add Class Class 2 type : open puis cliquer sur edit : définir lamda=3 pour distribution exponentielle, cliquer sur mean qui va se mettre automatiquement à 1/3, puis OK, Reference Station : affecter à source 1 en cliquant sur le nom de la source Finir la définition des trafics par Done Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 153 Définir ce qu’on veut observer • Définir ce que vous voulez observer en cliquant sur Define Performance Indices : • Pour Number of Customers choisir All Classes, Cliquer sur Station/Region sélectionner Queue Stat 0 pour que le nombre de clients observés soit celui dans la file, prendre un intervalle de confiance de 0.95 et une erreur max de 0.05 • Ajouter un autre paramètre à observer : sélectionner Queue Time puis clique sur Add Selected index, Station/Region Queue Stat 0, même intervalle de confiance et erreur • Finir la définition de ce que vous voulez observer par Done Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 154 Définir les paramètres de simulation • • • • • • • • -Définir les paramètres de la simulation en cliquant sur Define Simulation Parameters Simulation random seed : definition du nombre servant à générer des nombres aléatoires. Cocher Random Maximum Duration : Décocher infinite, mettre 600 Maximum number of Samples : décocher no automatic stop, mettre 1000000 Cocher Animation. Mettre 2 secondes. Done - surtout de pas Cliquer sur What if . l'analyse What if enclanche N simulations successives avec à chaque fois une augmentation du trafic. Pour faire des courbes des paramètres observés en fonction du trafic. C'est intéressant mais cela ne nous intéressera que plus tard. Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 155 Définir les paramètres du modèle • - Définir les paramètres du modèle. Cliquer sur Define Default's values of model parameters • Station parameters : Vérifier que l'on a bien : • Queue Capacity 1 (pas de file d'attente dans les sources) • Queue Strategy FCFS (First Come First Serve) • Drop Rule : Drop • Simulation parameters : ne pas toucher, on retrouve ce qu'on a déjà défini • Finite Capacity Region parameters : vérifier que le paramètre Drop est bien sur True • Okay Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 156 Définir les paramètres de la file d’attente • Maintenant sur le graphe Sélectionner la file d'attente et double cliquer dessus • Aller à l'onglet service section pour définir le taux de service (mu) pour chaque trafic (classe) • Pour chacune des classes que nous avons défini cliquer sur édit. le paramètre est noté lambda mais nous devons comprendre mu. Mettre la valeur 10. • Nous aurons ainsi un trafic total du serveur de 3*3/10 = 0.9 Erlang • Done Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 157 La simulation est prête • On peut la lancer • Quand elle se termine, vérifiez que l'on a bien une espérance du nombre de clients dans la file de 9 et une espérance du temps d'attente de 0,9 seconde conforme à la théorie Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 158 Annexes Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 159 Quelques sommes • 1 qx Rappelons que 1 q x 0 • En dérivant une fois par rapport à q : 1 1 q 2 xq x 1 x 1 • En dérivant encore une fois par rapport à q : 21 q 2 1 q 4 1 q 3 Claude Rigault, 2/12/2012 xx 1q x 2 x 1 Introduction à la théorie des files d'attente 160 Espérance de la loi de Bernoulli • Méthode de force brute : Ex N x 0 xC Nx p 1 p x N x N N! N! N x x x p 1 p p x 1 p N x x 1 x 1! N x ! x 1 x! N x ! N • Posons y=x-1, (x=y+1) N 1! p y 1 p N 1 y y 0 y ! N 1 y ! N 1 E x Np • Or d’après la formule du binôme : N 1! p y 1 p N 1 y p 1 p N 1 1 y 0 y ! N 1 y ! N 1 • Donc : Claude Rigault, 2/12/2012 E x Np Introduction à la théorie des files d'attente 161 Variance de la loi de Bernoulli • Méthode de force brute, en posant comme pour l’espérance y=x-1, (x=y+1) : N 1 N 2 x x N 1! p y 1 p N 1 y N x 2 Var x x C N p 1 p Np Np 1 y y !N 1 y ! x 0 y 1 Var x Np Np N 1 p Np 2 Np Np 2 • Donc : Var x Np1 p et Np (1 p Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 162 Espérance de loi géométrique du premier type P x p x 1 p qp x où q 1 p E x xqp q xp qp xp x 1 x x x 1 1 x 1 • D’après la somme déjà calculée : E x qp 1 1 p 2 p 1 p p E x 1 p Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 163 Variance de la loi géométrique du premier type • Avec cette loi, nous avons : Var x x 2 p x q p 1 p 1 2 • D’après la somme déjà calculée : 2 p 2q 1 p 3 • Donc : • Et : xx 1p q x 1 2 Ex Var x E x Claude Rigault, 2/12/2012 x 2 2 p 2q p q2 q3 x p q x p xq E x2 2 x 1 x x 1 p 1 p p 2 p 2 q pq 2 2 p 2 pq 3 q q q2 2 p 2 pq p 2 q2 p 2 p1 p q2 Introduction à la théorie des files d'attente p q2 Var x p 1 p 2 p 1 p 164 Espérance de loi géométrique du deuxième type P x p 1 p x 1 pq x 1 où q 1 p x xpq x 1 1 • D’après la somme déjà calculée : x xpq 1 x 1 p xpq x 1 p 1 1 1 q 2 1 p 1 x p Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 165 Variance de la loi géométrique du deuxième type Var x x 2 pq x 1 • Rappelons nous que 1 1 p2 • D’après la somme déjà calculée : 2 pq 1 q 3 • Donc : pq x x 1q x2 x 1 2 Ex 2 pq p3 x pq x 1 2 x 1 x pq x 1 E x 2 x 1 Claude Rigault, 2/12/2012 1 p 1 2 pq p 2 1 q 2q 1 q 2 3 2 p p p p 1 1 q 1 q • Et : Var x E x 2 2 2 2 p p p Introduction à la théorie des files d'attente Var x 1 p p2 1 p p 166 Bibliographie Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 167 Bibliographie générale 1 • Toutes les références font appel à la théorie des chaines de Markov, et très souvent à la transformée en z et à la transformée de Laplace ce qui exige un niveau mathématique assez élevé • Le grand classique : Leonard Kleinrock : Queueing Systems, Volume 1 :Theory. • Une référence que j’ai trouvé bien faite : J. Virtamo. Queueing Course, from Finland. http://www.netlab.hut.fi/opetus/s383143/kalvot/english.shtml • Un excellent livre de probabilités que j’avais ramené des USA et dont je me sers tout le temps : Alberto Leon Garcia : Probability and Random Processes for Electical Engineering. Addison-Wesley 1994 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 168 Bibliographie générale 2 • Pour aborder les chaines de Markov de manière très simple : Seymour Lipschutz : Theory and problems of Probability, Schaums’s Outline Series, McGraw-Hill • Un cours en français : Fabrice Valois, Modélisation et performance des réseaux, http://fvalois.insalyon.fr/courses/mot_1_Chaines_de_Markov_0304.pdf http://fvalois.insa-lyon.fr/courses/mot_2_Formalisme_FAs_0304.pdf http://fvalois.insa-lyon.fr/courses/mot_3_Perfs_FAs_0304.pdf http://fvalois.insa-lyon.fr/courses/mot_4_FAs_simples_0304.pdf http://fvalois.insa-lyon.fr/courses/mot_5_Reseaux_FA_0304.pdf Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 169 Bibliographie pour le calcul de trafic des réseaux à attente (réseaux paquets) • Un livre qui couvre à la fois les performances des réseaux paquets et circuits : Misha Schwartz : Telecommunication Networks, protocols, Modeling and Analysis, Madison Wesley • Un livre en français : Bonald Thomas, Feuillet Mathieu, Performances des réseaux et systèmes informatiques, Hermes Lavoisier 2011 • Un livre très complet et pas trop difficile : David McDysan, QoS & Traffic Management in IP & ATM Networks, McGrAw-Hill, 2000 Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 170 Bibliographie pour le calcul de trafic des réseaux à perte (réseaux circuits) • Dans votre bibliothèque : Rigault C. Principes de commutation numérique, Hermes, Paris, 1998 • D. Bear. Principles of telecommunications Traffic engineering, Peter Pergrinus Ltd • Et aussi Mischa Schwartz déjà mentionné Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 171 Bibliographie pour la simulation • Pour JMT : http://jmt.sourceforge.net/Documentation.html • Pour Omnet : http://www.omnetpp.org/documentation Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 172 Pour aller plus loin • Calculer les réseaux par des bornes supérieures : le Network calculus http://ica1www.epfl.ch/PS_files/netCalBookv4.pdf • Un site qui donne une grande liste de références : http://web2.uwindsor.ca/math/hlynka/qonline.html Claude Rigault, 2/12/2012 Introduction à la théorie des files d'attente 173