Wachtrijtheorie op verkeersmodellen

Vergelijkbare documenten
We zullen de volgende modellen bekijken: Het M/M/ model 1/14

WACHTRIJMODELLEN. aankomstproces van klanten; wachtruimte (met eindige of oneindige capaciteit); bedieningsstation (met één of meerdere bediendes).

S n = tijdstip van de n-de gebeurtenis, T n = S n S n 1 = tijd tussen n-de en (n 1)-de gebeurtenis.

Stochastische Modellen in Operations Management (153088)

NETWERKEN VAN WACHTRIJEN

WACHTRIJMODELLEN. aankomstproces van klanten; wachtruimte (met eindige of oneindige capaciteit); bedieningsstation (met één of meerdere bediendes).

Stochastische Modellen in Operations Management (153088)

Stochastische Modellen in Operations Management (153088)

P (X n+1 = j X n = i, X n 1,..., X 0 ) = P (X n+1 = j X n = i).

S n = tijdstip van de n-de gebeurtenis, T n = S n S n 1 = tijd tussen n-de en (n 1)-de gebeurtenis.

Stochastische Modellen in Operations Management (153088)

Zo geldt voor o.o. continue s.v.-en en X en Y dat de kansdichtheid van X + Y gegeven wordt door

0 2λ µ 0

Q is het deel van de overgangsmatrix dat correspondeert met overgangen

P (X n+1 = j X n = i, X n 1,..., X 0 ) = P (X n+1 = j X n = i). P (X n+1 = j X n = i) MARKOV KETENS. Definitie van Markov keten:

Vragen die je wilt beantwoorden zijn:

Hoofdstuk 20 Wachtrijentheorie

Inleiding Modelmatige beschrijving Kansverdelingen Het overgangsdiagram De stellingen van Little M/M/1 M/M/1/N Afsluiti.

Model: Er is één bediende en de capaciteit van de wachtrij is onbegrensd. 1/19. 1 ) = σ 2 + τ 2 = s 2.

Definitie van continue-tijd Markov keten:

Wachten of niet wachten: Dat is de vraag

GESLOTEN NETWERKEN VAN WACHTRIJEN

LIMIETGEDRAG VAN CONTINUE-TIJD MARKOV KETENS

De dimensie van een deelruimte

Definitie van continue-tijd Markov keten:

MARKOV KETENS, OF: WAT IS DE KANS DAT MEVROUW DE VRIES NAT ZAL WORDEN?

MARKOV MODEL MET KOSTEN In Markov modellen zijn we vaak geïnteresseerd in kostenberekeningen.

P = LIMIETGEDRAG VAN MARKOV KETENS Limietverdeling van irreducibele, aperiodieke Markov keten:

p j r j = LIMIETGEDRAG VAN CONTINUE-TIJD MARKOV KETENS Hoofdstelling over het limietgedrag van continue-tijd Markov ketens formuleren.

P (X n+1 = j X n = i, X n 1,..., X 0 ) = P (X n+1 = j X n = i). P (X n+1 = j X n = i) MARKOV KETENS. Definitie van Markov keten:


Cover Page. The handle holds various files of this Leiden University dissertation

Reserveringssystemen

Basiskennis lineaire algebra

De Wachttijd-paradox

Cover Page. The handle holds various files of this Leiden University dissertation.

INLEIDING. Definitie Stochastisch Proces:

1 Rekenen in eindige precisie

S n = tijdstip van de n-de gebeurtenis, T n = S n S n 1 = tijd tussen n-de en (n 1)-de gebeurtenis.

Overzicht Fourier-theorie

TRILLINGEN EN GOLVEN HANDOUT FOURIER

Wachten in de supermarkt

Chapter 4: Continuous-time Markov Chains (Part I)

RSA. F.A. Grootjen. 8 maart 2002

Zoek de unieke oplossing van het stelsel π = π P waarvoor bovendien geldt dat i S π i = 1.

o Dit tentamen bestaat uit vier opgaven o Beantwoord de opgaven 1 en 2 enerzijds, en de opgaven 3 en 4 anderzijds op aparte vellen papier

De dynamica van een hertenpopulatie. Verslag 1 Modellen en Simulatie

Publieke Database. Verslag modelleren 4 (2H144) Finbar Bogerd (s474580) & Judy van Sambeek (s476368)

Stelsels Vergelijkingen

Toegepaste Wiskunde 2: Het Kalman-filter

Benaderingen voor wachttijden in k-gelimiteerde polling modellen

Tentamen Inleiding Kansrekening 11 augustus 2011, uur

Tweede huiswerkopdracht Lineaire algebra 1 Uitwerking en opmerkingen

Bayes Factor voor samengestelde hypothesen

b. de aantallen aankomsten in disjuncte tijdsintervallen zijn onafhankelijk van elkaar

Supplement Verzamelingenleer. A.J.M. van Engelen en K. P. Hart

Eigenschap (Principe van welordening) Elke niet-lege deelverzameling V N bevat een kleinste element.

Tentamen Grondslagen van de Wiskunde A Met beknopte uitwerking

Kettingbreuken. 20 april K + 1 E + 1 T + 1 T + 1 I + 1 N + 1 G + 1 B + 1 R + 1 E + 1 U + 1 K + E + 1 N A + 1 P + 1 R + 1 I + 1

Waarom wachten voor verkeerslichten? Inhoud 2/16/2010. Introductie Wachtrijtheorie Simpel model: een opengebroken weg

MARKOV MODEL MET KOSTEN In Markov modellen zijn we vaak geïnteresseerd in kostenberekeningen.

en-splitsingen: een aantal alternatieven worden parallel toegepast, of-splitsingen: van een aantal alternatieven wordt er één toegepast,

We zullen in deze les kijken hoe we netwerken kunnen analyseren, om bijvoorbeeld de volgende vragen te kunnen beantwoorden:

Complexe eigenwaarden

Tentamen Voortgezette biostatistiek / Biomedische wiskunde

Uitwerkingen Tentamen Gewone Differentiaalvergelijkingen

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

Combinatoriek groep 1 & 2: Recursie

Vectorruimten en deelruimten

Examenvragen Hogere Wiskunde I

3 Wat is een stelsel lineaire vergelijkingen?

Deel 2 van Wiskunde 2

Bekijk nog een keer het stelsel van twee vergelijkingen met twee onbekenden x en y: { De tweede vergelijking van de eerste aftrekken geeft:

Lineaire afbeeldingen

a) Bepaal punten a l en b m zó dat de lijn door a en b parallel is met n.

Hoofdstuk 10: Partiële differentiaalvergelijkingen en Fourierreeksen

Gaap, ja, nog een keer. In één variabele hebben we deze formule nu al een paar keer gezien:

Waarom kleintjes niet altijd voor moeten gaan (maar vaak wel)

VU University Amsterdam 2018, Maart 27

Tentamen Inleiding Kansrekening wi juni 2010, uur

Z.O.Z. Radboud Universiteit Nijmegen Tentamen Analyse 1 WP001B 16 juni 2016, 12:30 15:30 (16:30)

Je hebt twee uur de tijd voor het oplossen van de vraagstukken. µkw uitwerkingen. 12 juni 2015

3.2 Vectoren and matrices

Inleiding Analyse 2009

Tentamen Inleiding Kansrekening 25 juni 2009, uur Docent: F. den Hollander

Het oplossen van stelsels lineaire vergelijkingen Wiskunde 2, 2DM60 College 2b

Het tentamen heeft 25 onderdelen. Met ieder onderdeel kan maximaal 2 punten verdiend worden.

Lineaire Algebra voor ST

Wachtrijtheorie. Hester Vogels en Franziska van Dalen. 11 juni 2013

Lineaire programmering

Discrete Wiskunde 2WC15, Lente Jan Draisma

Opgaven Functies en Reeksen. E.P. van den Ban

(b) Formuleer het verband tussen f en U(P, f), en tussen f en L(P, f). Bewijs de eerste. (c) Geef de definitie van Riemann integreerbaarheid van f.

Inleiding Applicatie Software - Statgraphics

TENTAMEN WISKUNDIGE BEELDVERWERKINGSTECHNIEKEN

Ter Leering ende Vermaeck

Populaties beschrijven met kansmodellen

V.4 Eigenschappen van continue functies

Enkele valkuilen om te vermijden

Volledige inductie. Hoofdstuk 7. Van een deelverzameling V van de verzameling N van alle natuurlijke getallen veronderstellen.

Transcriptie:

Wachtrijtheorie op verkeersmodellen Jan Jelle de Wit 20 juli 202 Bachelorscriptie Begeleiding: prof.dr. R. Núñez Queija KdV Instituut voor wiskunde Faculteit der Natuurwetenschappen, Wiskunde en Informatica Universiteit van Amsterdam

Samenvatting In mijn scriptie bestudeer ik Processor Sharing servers, en netwerken van Processor Sharing servers. Ik leid voor losse severs en voor netwerken de evenwichtsverdeling af, en bestudeer de belangrijkste eigenschappen: ongevoeligheid en onafhankelijkheid. In het laatste hoofdstuk geef ik een toepassing van deze theorie. Ik introduceer een Processor Sharing model voor wegverkeer, en geef hiervan een analyse. Gegevens Titel: Wachtrijtheorie op verkeersmodellen Auteur: Jan Jelle de Wit, janjelledewit@gmail.com, 62004 Begeleider: prof.dr. R. Núñez Queija Einddatum: 20 juli 202 Korteweg de Vries Instituut voor Wiskunde Universiteit van Amsterdam Science Park 904, 098 XH Amsterdam http://www.science.uva.nl/math

Inhoudsopgave Inleiding 4 Algemene theorie 5. Fysische verkeersmodellen.................... 5.2 Global balance en detailed balance............... 6.3 Drie eenvoudige wachtrijmodellen................ 7.3. Begrippen en stellingen.................. 7.3.2 De standaard wachtrij.................. 8.3.3 De M/M/........................ 0.3.4 Eindige populatie..................... 0.4 Vertrekprocessen..........................5 Een netwerk............................ 2.6 Overzicht............................. 3 2 Processor Sharing voor enekele servers 4 2. Introductie............................. 4 2.2 Simpele Processor Sharing.................... 5 2.3 Bewijs voor simpele Processor Sharing............. 7 2.3. Hyperexponentieel verdeelde bedieningen in m dimensies 8 2.3.2 Algemeen fase-type.................... 9 2.3.3 Laatste stukjes...................... 23 2.4 Algemene Processor Sharing................... 23 3 Processor Sharing in netwerken 26 3. Terminologie............................ 26 3.2 Onafhankelijkheid......................... 27 3.3 Ongevoeligheid in netwerken................... 30 4 Een verkeersmodel 3 4. Introductie............................. 3 4.2 Opzet............................... 3 2

4.3 Berekening............................. 32 4.4 Ontmoedigde aankomsten.................... 36 4.5 Berekeningen voor ontmoedigde aankomsten.......... 37 Populaire samenvatting 39 Appendix 42 3

Inleiding Wachtrijtheorie is niet het eerste waar men bij verkeersmodellen aan denkt. Veelal worden voor het verkeer modellen uit de fysica gebruikt, aan de hand van harmonische functies en differentiaalvergelijkingen. Toch is het niet eens zo vreemd om een snelweg als wachtrij te benaderen. Op een knooppunt of een bottle neck gaan auto s langzamer rijden, en als zij het betreffende punt gepasseerd zijn, rijden zij weer op volle snelheid. Zo beschouwd is een knooppunt een server, met capaciteit afhankelijk van het aantal auto s in het systeem. In mijn scriptie zal ik mij beperken tot wachtrijmodellen waarbij de servers hun capaciteit gelijk verdelen onder alle wachtende klanten, een Processor-Sharing (PS) server. Het grootste gedeelte van mijn scriptie zal bestaan uit een analyse van PS-servers en netwerken van PS-servers. Het eerste hoofdstuk van mijn verslag bestaat uit algemene theorie. Ik zal belangrijke concepten en werkmethoden uit de wachtrijtheorie introduceren, en alle overige dingen noemen die ik in de rest van mijn verhaal nodig heb. Om ook de bekende theorie over verkeersmodellen niet teniet te doen, zal ik kort bespreken hoe fysische modellen van verkeer eruit zien. In het tweede en derde hoofdstuk staat Processor Sharing centraal. Ik zal mij in hoofdstuk 2 buigen over modellen met een enkele PS-server, en in hoofdstuk 3 over netwerken van PS-servers. Steeds zal ik de belangrijkste eigenschappen (ongevoeligheid, en bij netwerken onafhankelijkheid) bespreken. Het vierde hoofdstuk zal tot slot een toepassing zijn van de in de eerste drie hoofdstukken opgedane kennis. Ik zal een eenvoudig verkeersmodel bespreken, en aan de hand hiervan illustreren hoe men een Processor Sharing model kan analyseren. 4

Hoofdstuk Algemene theorie. Fysische verkeersmodellen Het doel van mijn scriptie zal zijn om wachtrijtheorie te gebruiken voor verkeersmodellen. Maar om een beeld te hebben van wat er door wiskundigen al aan verkeer onderzocht is, zal ik een overzicht geven van de belangrijkste resultaten uit de fysische verkeersanalyse. Een volledig overzicht zal ik niet kunnen geven, daarvoor verwijs ik naar het boek van Mark Holmes [] over toegepaste wiskunde. Allereerst zal ik de belangrijkste grootheden introduceren. Als wij het verkeer modelleren, zijn wij in de eerste plaats geïnteresseerd in het aantal auto s op een bepaald stuk wegdek. Hiertoe voeren we de variabele n in, die staat voor het aantal auto s op een gegeven stuk wegdek. Vervolgens voeren wij v in, de gemiddelde snelheid van de auto s op dat stuk wegdek. Aan de hand van deze twee grootheden kunnen we de stroom definiëren: Definitie.. De stroom J (in het engels flow of flux) is gedefinieerd als: J = v n. Opmerking. Soms wordt een meer elementaire definitie gebruikt, en wordt de vergelijking J = v n afgeleid. Zie hiervoor Holmes []. We hebben nu een uitdrukking voor de doorstroom van het verkeer, maar deze hangt af van twee variabelen: v en n. Liever willen wij dat de doorstroom alleen van n afhangt. Dit kan door voor v een zogenaamde balance law op te stellen, een wetmatigheid die het verband tussen n en v vastlegt. Er zijn verschillende aannames mogelijk en drie daarvan staan hieronder:. Constante snelheid: Iedere weggebruiker rijdt met dezelfde snelheid (waarschijnlijk de maximum-snelheid). Nadeel van deze aanname is 5

dat het weinig met de werkelijkheid te maken heeft. Men kan tijdens het spitsuur immers een stuk minder hard rijden dan om twee uur s nachts. Maar het voordeel is dat deze aanname het model simpel maakt. In de wachtrijtheorie komt een dit model overeen met een server met oneindige capaciteit. 2. Lineaire snelheid: Als wij lineaire snelheid aannemen, stellen wij dat v te schrijven is als a bn, met a, b R. Meestal wordt dit verband als volgt genoteerd: ( v = v M n ), N waar v M de maximaal toegestane snelheid is en N het maximale aantal auto s voordat het verkeer helemaal vast staat. Deze wet staat bekend als de wet van Greenshield. Hij wordt vaak gebruikt omdat voor normale verkeerssituaties deze wet goed met empirische data overeen komt en bovendien wat betreft rekenwerk te overzien is. Nadeel van deze wet is wel dat het model een minder goede representatie is in de buurt van de randen. Als n een keer zo groot als N wordt, staat het verkeer muurvast en is het onmogelijk dat het ooit weer leeg loopt. Deze eigenschap is funest voor wachtrijmodellen (want hier zou N een absorberende toestand zijn), en moet omzeild worden. Daarover meer in hoofdstuk 4. 3. Algemene snelheid: Hier doen wij geen aannames over v, maar stellen dat v = F (n), met F een zekere functie. Deze aanname wordt gedaan in gevallen dat men geïnteresseerd is in meer uitzonderlijke gevallen waarin het model van Greenshield niet op gaat..2 Global balance en detailed balance Voor een belangrijk deel van mijn scriptie hou ik mij bezig met Markovmodellen. Een belangrijk aspect van de studie van Markov-modellen is het bepalen van zijn evenwichtsverdeling (als die bestaat). Je kan je de evenwichtsverdeling voorstellen als een kansmaat op de toestandsruimte die na verloop van tijd op het model van toepassing is. Als X t bijvoorbeeld de toestand van een continue Markov-keten op tijdstip t is, en dan geldt onder bepaalde voorwaarden (die ik hier niet bespreek): lim P (X t = n) = P (X = n), t 6

waar X de stochast is die het limietgedrag van X t beschrijft. Norris bewijst in zijn boek [6] dat deze redelijk intuïtieve definitie op hetzelfde neer komt als de formele definitie hieronder: Definitie.2. Zij X t een Markov-keten op de toestandsruimte I. De kansmaat P is de unieke (zie Norris [6] ) evenwichtsverdeling als voor P geldt: i I : P (X = i) j I q ij = j I P (X = j)q ji Waar q ij de transitie is van i naar j. Opmerking. Deze vergelijking heet de global balance vergelijking. De global balance vergelijking kan, zeker als er verscheidene q ij ongelijk aan nul zijn, behoorlijk ingewikkeld worden. Voor sommige (maar niet alle) Markov-ketens waarvoor de evenwichtsverdeling bestaat, is het mogelijk om naar een speciaal geval te kijken, waarin we als extra eis stellen dat er niet alleen een globale balans moet zijn, maar ook een balans tussen ieder paar toestanden. We spreken dan over detailed balance. Definitie.3. Zij X t een Markov keten en P een kansmaat. We zeggen dat P in detailed balance is met de transitiematrix van X t, als i, j I : P (X = i)q ij = P (X = j)q ji. Opmerking. Als wij aan beide kanten sommeren over j, krijgen wij de globale balansvergelijking weer terug. Als P dus voldoet aan de detailed balance vergelijking, is P de evenwichtsverdeling van X t..3 Drie eenvoudige wachtrijmodellen In deze paragraaf zal ik beginnen met wachtrijtheorie. Ik zal eerst een aantal begrippen bespreken die van belang zijn en daarna zal ik een aantal eenvoudige modellen bespreken als voorbereiding op de komende hoofdstukken..3. Begrippen en stellingen Een wachtrij bestaat uit een server S, waar klanten aankomen en bediend worden. Het aankomstproces zal in mijn hele scriptie een Poisson-proces zijn, en dus geheugenloos. De intensiteit van dit proces geef ik aan met λ. Klanten die bij server S aanwezig zijn, willen bediend worden, en hiervoor zijn twee grootheden van belang. Allereerst is er de bedieningstijd 7

van de klant, aangegeven met de letter B. Deze tijd is afhankelijk van de klant en kan gezien worden als de omvang van de taak die voor de klant gedaan moet worden (denk bijvoorbeeld aan hoe vol het boodschappenkarretje in de supermarkt zit). Daarnaast is er de capaciteit van de server φ S (n), die aangeeft hoe hard de server kan werken (denk hierbij aan de snelheid van de cassière). De capaciteit van de server is in mijn scriptie altijd een (mogelijk constante) functie van het aantal klanten dat zich bij de server bevindt. Een belangrijk symbool dat in de evenwichtsverdeling vaak voorkomt, is de Griekse letter ρ. Wij definiëren ρ := λ E(B). Naast de evenwichtsverdeling zijn wij soms geïnteresseerd in het verwachte aantal klanten in het systeem, genoteerd als X. Deze verwachting is, als we de evenwichtsverdeling eenmaal hebben, niet moeilijk uit te rekenen: X = E(X) = kp (X = k). k=0 Tot slot zijn wij vaak geïnteresseerd in de verwachte verblijftijd V. Om V te berekenen maken wij gebruik van de stelling van Little: X = λ V. Dit resultaat lijkt uit de lucht te komen vallen, maar is intuïtief voor de hand liggend. Er staat immers niets anders dan dat het gemiddeld aantal klanten in het systeem gelijk is het gemiddeld aantal aankomsten per tijdseenheid keer de tijd die een taak gemiddeld in het systeem doorbrengt..3.2 De standaard wachtrij In het standaard model zijn zowel de aankomsten als de bedieningen geheugenloos. Het aankomstproces is Poisson met parameter λ, en de bedieningstijd van iedere klant is exponentieel met parameter µ en E(B) = µ. Bovendien gaan we uit van een constante capaciteit gelijk aan, dus φ S (n) =. Deze wachtrij wordt meestal de M/M/ genoemd, waarbij de eerste M staat voor geheugenloze aankomsten, de tweede voor geheugenloze bedieningen, en de voor het feit dat er maar een klant tegelijk bediend kan worden. Wij vinden voor de M/M/ de onderstaande transities: n n + : λ n n : µ 8

Als wij nu aannemen dat P een kansmaat is die in detailed balance is met de transitiematrix van het aantal klanten in het systeem, dan moet P voldoen aan de vergelijking: P (X = k)µ = P (X = k )λ. Hieruit kunnen we een algemene uitdrukking voor P achterhalen: P (X = k) = P (X = k ) λ µ = P (X = 0)ρk. Dan rest ons uit te vinden wat P (X = 0) is. Hiervoor gebruiken wij het feit dat we met kansen te maken hebben: = P (X = k) = k=0 P (X = 0)ρ k = P (X = 0). λ µ k=0 Als wij dit in compacte vorm schrijven, ziet het er zo uit: P (X = k) = ( ρ)ρ k. De hierboven beschreven techniek is zeer belangrijk en ik zal er in hoofdstukken 2 en 3 nog vaak gebruik van maken om andere evenwichtsverdelingen af te leiden. Met name in hoofdstuk 4, als wij naar toepassingen gaan kijken, is het ook belangrijk om andere nuttige informatie van de wachtrij te weten te komen, zoals het verwachte aantal klanten in het systeem (geschreven als X) en de verwachte verblijftijd (geschreven als V ). X = k p k = ( ρ) k ρ k = ( ρ) ρ k ρ k X = k=0 = ( ρ) ρ ρ ρ ρ k= ρ k+ = ( ρ) ρ ρ k=0 k= ( ρ Om de verwachte verblijftijd in het systeem te berekenen, kunnen wij gebruik maken van de wet van Little: V = X λ = /µ ρ 9 )

.3.3 De M/M/ Het standaard model van de M/M/ is dat van een oneindig aantal servers en een Poisson aankomst- en bedieningsproces bij iedere server. In de notatie staat de voor het oneindig aantal servers en de M/M voor de geheugenloze aankomsttijden en bedieningen. Voor de M/M/ met aankomstintensiteit λ en bedieningsratio µ vinden we de volgende transities: n n + : λ n n : nµ Maar je kunt de M/M/ ook opvatten als een enkele server met een niet constante capaciteitsfunctie. Laat S een enkele server zijn die alle klanten tegelijk kan bedienen, en niet vertraagd wordt naarmate er meer klanten in het systeem zijn. Hieruit volgt voor de capaciteitsfunctie dat φ S (n) = n, aangezien de server iedere klant altijd even snel helpt, onafhankelijk van hoeveel andere klanten er in het systeem zijn. Dan vinden wij voor de transities: n n + : λ n n : µφ S (n) = nµ. Dit zijn precies hetzelfde transities als degene die we eerder hadden gevonden. Wij kunnen een M/M/ rij dus zien als een oneindige hoeveelheid wachtrijen met capaciteit, maar ook als een enkele server met lineair stijgende capaciteit..3.4 Eindige populatie Bij een model met eindige populatie, zeggen wij dat er in totaal N klanten zijn, en dat als er k klanten bij de server zijn, er N k klanten in arriverende toestand zijn. Als een klant in arriverende toestand is, dan is de tijd voordat hij weer naar de server gaat een exp(λ) verdeelde stochast. Als wij vervolgens uitgaan van een server met constante capaciteit en geheugenloze bedieningen met parameter µ, krijgen wij dan de volgende transities: n n + : λ (N n) n n : µ 0

Als wij op dit systeem de detailed balance vergelijking loslaten, vinden wij: P (X = k)µ = λ (N (k ))P (X = k ) P (X = k) = ρ k N! P (X = 0) (N k)! ( N ) P (X = 0) = ρ k N! (N k)! Het voordeel van dit systeem is dat het zelf-regulerend is en dus altijd stabiel. De aankomstintensiteit wordt immers steeds lager naarmate er meer klanten in het systeem zijn. Nadeel is wel dat we nu geen Poisson aankomstproces hebben, wat maakt dat een groot deel van de theorie die ik in de volgende hoofdstukken ga bespreken, niet opgaat. In de volgende paragraaf over netwerken zal ik hier op terugkomen. k=0.4 Vertrekprocessen Bij het bestuderen van netwerken zal het van groot belang blijken om iets te weten over vertrekprocessen. Bij het bestuderen van bijvoorbeeld een tandem (de klanten komen aan bij de eerste wachtrij, gaan daarna naar de tweede, en daarna weg), is het aankomstproces van de tweede server gelijk aan het vertrekproces van de eerste server. In mijn scriptie zal de toevoer van buitenaf altijd Poisson zijn, dus de volgende stelling is zeer nuttig. Stelling.4. Zij S een server met een geheugenloos aankomstproces met intensiteit λ en neem aan dat de server stabiel is, dus dat er een evenwichtsverdeling bestaat. Dan is als het systeem in evenwicht is, het vertrekproces van S ook een Poisson proces, met dezelfde parameter λ. Bewijs Intuïtief is het verschijnen van de parameter λ duidelijk: iedere klant die het systeem in gaat, zal er ook weer uit moeten (anders is het systeem niet stabiel). Om te bewijzen dat het vertrekproces ook daadwerkelijk Poisson is, is het handig een lemma uit Norris [6] te gebruiken over reversibiliteit. Dit lemma zegt dat als de transitiematrix van een Markov-keten X t en een kansmaat P in detailed balance zijn, dat X t dan reversibel is, dus dat voor alle T de keten (X T t ) 0 t T ook een Markov-keten is met dezelfde transitiematrix. Dat betekent dat de omgekeerde keten ook een geheugenloos aankomstproces met parameter λ heeft. Aangezien het aankomstproces van (X T t ) 0 t T

gelijk is aan het vertrekproces van X t, kunnen we concluderen dat de stelling klopt als het Markov-proces gedefiniëeerd door het aantal klanten bij de server, reversibel is. Het enige wat dus nog rest om te bewijzen, is dat er voor iedere wachtrij met Poisson-aankomstproces een kansmaat bestaat die in detailed balance is met de transitiematrix. Wij vinden dat de transities van de onderstaande vorm zijn: n n + : λ n n : µ n. Dus concluderen wij dat er altijd een kansmaat P van de onderstaande vorm is, die in detailed balance is met de transitiematrix. P (X = k) = P (X = 0)λ k k µ i=0 i.5 Een netwerk In paragraaf.3.4 heb ik het model voor eindige populatie besproken. Dit model kan ook beschouwd worden als een klein netwerkje: S 0 S Hier is de server S 0 een M/M/ server die alle klanten in arriverende toestand bedient, en S de M/M/ server zoals die ook in.3.4 beschreven is. Aangezien er aan vanuit S gezien niets veranderd is (er zijn nog steeds N k klanten die ieder een exponentiële tijd wachten voordat zij weer naar S gaan), zal de evenwichtsverdeling van S hetzelfde zijn als degene die we eerder gevonden hebben: P (X = k) = ρ k N! (N k)! P (X = 0). De verdeling van S 0 is daaruit af te leiden door de identiteit P (X 0 = k) = P (X = n k). 2

.6 Overzicht Aan de hand van de nu besproken theorie is het mogelijk te gaan kijken naar Processor Sharing. In hoofdstuk 2 en hoofdstuk 3 zal ik het uitgebreid hebben over Processor Sharing voor losse servers en voor netwerken. In hoofdstuk 4 volgt een toepassing van de tot dan toe besproken theorie. Dit hoofdstuk is op basis van hoofdstuk ook te begrijpen wanneer men de stellingen van hoofdstuk 3 leest en aanneemt. 3

Hoofdstuk 2 Processor Sharing voor enekele servers 2. Introductie Processor Sharing wordt veel gebruikt voor internetservers, en zodoende is er al veel over onderzocht. De belangrijkste aanname bij Processor Sharing is dat de capaciteit van een server wordt beïnvloed door het aantal klanten dat bij die server aanwezig is. Ook op de snelweg zien wij iets dergelijks: op het moment dat het druk is op de weg gaat de doorstroom omlaag, terwijl het aantal auto s hoger is. Bovendien is een belangrijk voordeel van het gebruiken van Processor Sharing dat de modellen op die manier niet te complex worden en het doorrekenen ervan mogelijk is. Er zijn verschijdene soorten Processor Sharing (afgekort PS) modellen die ik zal bekijken. Allereerst bespreek ik modellen met zogenaamde Simpele Processor Sharing, waar de bedieningscapaciteit van de server altijd gelijk is aan. Daarna bespreek ik Algemene Processor Sharing, waarbij de capciteit niet constant is, maar afhangt van het aantal klanten dat in de rij aanwezig is. Belangrijk dit hoofdstuk is het begrip ongevoeligheid. Ongevoeligheid maakt dat je makkelijk en snel zeer algemene vraagstukken kunt doorrekenen. Het bewijzen dat PS-servers ongevoelig zijn, zal een groot deel van dit hoofdstuk beslaan. Tot slot is het goed om op te merken dat ik in dit gehele hoofdstuk van een Poisson aankomstproces uit zal gaan. 4

2.2 Simpele Processor Sharing Processor Sharing is een aanname over het wachtrijmodel die betrekking heeft op de manier waarop de capaciteit van de server wordt verdeeld. In een normale M/M/ wachtrij krijgt de klant die vooraan in de rij staat alle capaciteit en de andere klanten niets. Dit kan ook anders. Je zou bijvoorbeeld ook twee klanten tegelijk kunnen helpen, of de eerste tien klanten. Vervolgens zou je kunnen kiezen om bijvoorbeeld iets meer capaciteit aan de eerste klant te geven (door dus iets harder te werken aan de bediening van die klant) en de andere klanten iets minder. Processor Sharing zegt dat de capaciteit van de server eerlijk verdeeld wordt over alle klanten: Definitie 2.. Zij S een server met capaciteit φ S (n) = voor iedere n. De bedieningsdiscipline van de server S is Processor Sharing, als voor ieder mogelijk aantal klanten in het systeem, zeg voor iedere N, de klanten in het systeem allemaal capaciteit krijgen. N Naast dat Processor Sharing vaak gebruikt wordt (bijvoorbeeld op internet) is er een andere reden dat wij er in geïnteresseerd zijn. Daarmee samen hangt het begrip ongevoeligheid. Definitie 2.2. Zij S een server met capaciteit φ(n) =, en zij B de bedieningsduur van een klant, met B willekeurig verdeeld. De server S is ongevoelig als de evenwichtsverdeling van het aantal klanten bij S niet afhangt van de verdeling van B, maar alleen van zijn verwachting: E(B). Voor de wachtrij met Poisson aankomsten en exponentiële bedieningen (en capaciteit ) heb ik de evenwichtsverdeling in het eerste hoofdstuk al afgeleid. Ik kan dus ook de volgende equivalente definitie hanteren: Definitie 2.3. Zij S een server met capaciteit φ(n) =, en B de bedieningsduur van een klant. De server S is ongevoelig als de evenwichtsverdeling van het aantal klanten bij S voor iedere verdeling van B gelijk is aan gelijk is aan: P (X = k) = ( ρ) ρ k, met ρ = λ E(B) voor k = 0,, 2,.... Opmerking. Omdat de evenwichtsverdeling voor een ongevoelige server niet van de verdeling van B afhangt, is hij voor een andere B dan de geheugenloze nog steeds gelijk aan de bovenstaande formule. De evenwichtsverdeling veranderd echter wél als je de capaciteitsfunctie φ verandert. Daarover meer in paragraaf 2.4. Nu ik de definities van Processor Sharing en ongevoeligheid heb gegeven, kan ik de belangrijkste stelling van dit hoofdstuk geven. 5

Stelling 2.4. Zij S een server met capaciteit φ(n) = en met een Processor Sharing bedieningsdiscipline. De server S is ongevoelig. Voorbeeld 2.5. Zij S een PS-server met capaciteit φ(n) =. Laat B de bedieningsduur zijn, die een twee-parameter-hyperexponentiële verdeling heeft (dus iedere aankomst is met kans p van type met exp(µ ) verdeelde bedieningstijd, en is met kans p van type 2 met exp(µ 2 ) verdeelde bedieningstijd). Als stelling 2.4 klopt, moet de evenwichtsverdeling van het aantal klanten bij server S van de vorm p k = ( ρ) ρ k, k Z 0 zijn. Bewijs Omdat de wachtrij die wij bekijken van het type Processor Sharing is, maakt het niet uit op welke positie in de rij een klant staat. Alle klanten in de rij krijgen immers een even groot deel van de bedieningscapaciteit. Dit betekent dat (X, X 2 ), met X het aantal klanten in de rij van type, en X 2 het aantal van type 2, een twee-dimensionale Markov-keten is. Dat is prettig, want voor Markov-ketens kennen wij methoden om de evenwichtsverdeling uit te rekenen, zoals bijvoorbeeld het principe van detailed balance (zie pragraaf.2). De eerste stap is om de transities te bepalen. De stroom van een punt (n, m) naar alle overige punten staat hieronder: (n, m) (n +, m) = λp (n, m) (n, m + ) = λ( p) (n, m) (n, m) = n n + m µ (n, m) (n, m ) = m n + m µ 2 Nu we het transitiediagram kennen, kunnen wij de het principe van detailed balance gebruiken. Wij veronderstellen dat er een kansverdeling P : N 2 [0, ] bestaat die in detailed balance is met de transitiematrix (die wij kennen middels het diagram). Als wij vervolgens P kunnen achterhalen, dan weten wij dat die P de enige echte evenwichtsverdeling van (X, X 2 ) is. Als P (X, X 2 ) in detailed balance met de transitiematrix is, dan geldt het voglende: n P (X = n, X 2 = m) n + m µ = P (X = n, X 2 = m)λp, m P (X = n, X 2 = m) n + m µ 2 = P (X = n, X 2 = m)λ( p). Gewapend met deze kennis kunnen wij nu een algemene uitdrukking voor de 6

kans P (X = n, X 2 = m) achterhalen: P (X = n, X 2 = m) = P (X = n, X 2 = m) n + m λp, n µ (n + m)! λ n p n = P (X = 0, X 2 = m) n! m! µ n ( ) ( ) n ( m + n λp λ( p) = P (X = 0, X 2 = 0) n De kans dat er in totaal N klanten in de rij staan, wordt dan: P (X = n) = n P (X = k, X 2 = n k) k=0 µ n ( ) ( ) k ( ) n k n λp λ( p) = p 0 k µ µ 2 k=0 n ( ) ( ) k ( ) n k n p p = p 0 λ n k µ µ 2 k=0 ( p = p 0 λ n + p ) n = p 0 λ n (EB) n µ µ 2 met p 0 = P (X = 0) µ 2 ) m 2.3 Bewijs voor simpele Processor Sharing In de vorige sectie hebben wij gezien dat voor een simpele PS-server met taken met een twee-dimensionale hyperexponentieel verdeelde bedieningsduur, de goede evenwichtsverdeling eruit komt (namelijk die die alleen afhankelijk is van E(B)). Een volgende stap is om dit te generaliseren naar een n- dimensionale hyperexponentieel verdeelde bedieningsduur. Daarna kunnen we nog een algemenere verdeling bekijken, namelijk een willekeurige fase-type verdeling. Als wij dit gedaan hebben, zijn we dicht bij het algemene bewijs. De verzameling van fase-type verdelingen ligt namelijk dicht in de verzameling van alle verdelingen. Maar er is nog een complicatie. Stel we hebben een rij verdelingen B n die uniform convergeren naar een verdeling B. Is het dan zo dat de evenwichtsverdelingen van de B n ook convergeren naar de evenwichtsverdeling van B? Kort gezegd: is een afbeelding van verdelingen naar hun evenwichtsverdelingen continu? 7

2.3. Hyperexponentieel verdeelde bedieningen in m dimensies Het geval van hyperexponentieel in m dimensies lijkt op het geval voor twee dimensies, met een paar nieuwe technieken. Lemma 2.6. Zij S een simpele PS-server met voor iedere klant de bedieningsduur B, die m-dimensionaal hyperexponentieel verdeeld is. Dat wil zeggen dat de dichtheid van B gelijk is aan: m m f B (x) = p i e µ it, met p i = i= Dan is de evenwichtsverdeling van het aantal klanten bij server S gelijk aan p k = ( ρ) ρ k, k Z 0 Bewijs Het bewijs lijkt sterk op het twee-dimensionale geval, maar nu zijn er iets meer verschillende transities om rekening mee te houden: i= (n, n 2,..., n m ) (n +, n 2,..., n m ) = λp (n, n 2,..., n m ) (n, n 2,..., n m ) = n M µ (n, n 2,..., n m ) (n, n 2 +,..., n m ) = λp 2 (n, n 2,..., n m ) (n, n 2,..., n m ) = n 2 M µ 2 (n, n 2,..., n m ) (m, m 2,..., m n + ) = λp n (n, n 2,..., n m ) (n, n 2,..., n m ) = n m M µ n m waar M = Als we nu, zoals we ook in de vorige paragraaf deden, aannemen dat P de kansmaat is die in detailed balance is met de transitiematrix, dan volgt voor P : P (X = n, X 2 = n 2,..., X m = n m ) n M µ = P (X = n, X 2 = n 2,..., X m = n m )λp, P (X = n, X 2 = n 2,..., X m = n m ) n 2 M µ 2 = P (X = n, X 2 = n 2,..., X m = n m )λp 2,. P (X = n, X 2 = n 2,..., X m = n m ) n m M µ n = P (X = n, X 2 = n 2,..., X m = n m )λp n, i= n i. 8

en vinden we voor P de uitdrukking: P (X = n,..., X m = n m ) = P (X = n,..., X m = n m ) λp n µ, M M! = P (X = 0,..., X m = n m ) n!(m n )! = P (X = 0,..., X m = 0) M! m i= n i! λ n p n µ n m ( ) ni λpi. Nu we een P gevonden hebben die in detailed balance is met de transitiematrix van het Markov-model (X, X 2,..., X m ), kunnen wij met behulp van het multinomium van Newton de verdeling van X = m i= X i uitrekenen: P (X = M) = = n +n 2 + +n m=m n +n 2 + +n m=m = p 0 λ M = p 0 λ M ( m n +n 2 + +n m=m i= p i µ i met p 0 = P (X = 0) i= P (X = n, X 2 = n 2,..., X m = n m ) p 0 M! n!n 2!... n m! m ( λpi i= M! n!n 2!... n m! ) M = p 0 λ M (EB) M, m i= ) ni µ i ( ) ni pi µ i µ i 2.3.2 Algemeen fase-type De fase-type verdeling is een generalisatie van de hyperexponentiële verdeling. In wachtrijcontext geldt voor beide dat een nieuwe klant met een bepaalde kans naar toestand X i gaat en daar een exponentieel verdeelde bediening krijgt met parameter µ i. Wat nieuw is, is dat het bij een algemeen fase-type mogelijk is dat een klant nadat hij in toestand i bediend is, niet het systeem verlaat, maar naar toestand j gaat en daar verder bediend wordt. Ik zal voor een twee-dimensionaal fase-type laten zien dat de gewenste verdeling eruit komt rollen. Het n-dimensionale geval kan op analoge manier worden afgeleid. 9

Lemma 2.7. Zij S een simpele PS-server met bedieningsduur B met een willekeurige 2-dimensionale fase-type verdeling. Dan is de evenwichtsverdeling van het aantal klanten in S gelijk aan p k = ( ρ) ρ k, k Z 0 Bewijs allereerst is het goed om te weten wat de verwachting van B is. Wij definiëren (X t ) t 0 als het Markov-proces dat je krijgt door één klant te volgen die door het systeem loopt (dat leeg is op die ene klant na). Dan vind je voor X t de volgende transities: 0 : λp 0 0 2 : λp 02 2 : µ p 2 2 : µ 2 p 2 0 : µ p 0 2 0 : µ p 0 Waarbij, 2 de twee toestanden zijn, en 0 staat voor buiten het systeem zijn. Voor de verwachting van B geldt nu: E(B) = p 0 k 0 + p 02 k 0 2, met k 0 i de verwachte tijd om van i naar 0 te komen. Voor de k 0 i vinden we de vergelijkingen: k 0 = µ + p 2 k 0 2 k 0 2 = µ 2 + p 2 k 0, waaruit wij voor k 0 en k 0 2 kunnen afleiden: k 0 = /µ + p 2 /µ 2 p 2 p 2 k 0 2 = /µ 2 + p 2 /µ p 2 p 2. De verwachting van B is dus gelijk aan: E(B) = p 0 /µ + p 2 /µ 2 p 2 p 2 + p 02 /µ 2 + p 2 /µ p 2 p 2 20

Nu bekijken wij het Markov-proces (X, X 2 ), waarbij X het aantal klanten in toestand voorstelt, en X 2 het aantal in toestand 2. Hiervoor vinden wij de transities: (n, m) (n +, m) : λ p 0 n (n, m) (n, m + ) : µ p 2 n + m n (n, m) (n, m) : µ p 0 n + m (n, m) (n, m + ) : λ p 02 m (n, m) (n, m ) : µ 2 p 20 n + m m (n, m) (n +, m ) : µ 2 p 2 n + m Nu is het verleidelijk om net als in de vorige voorbeelden detailed balance te gebruiken om de evenwichtsverdeling te achterhalen. Ik zal laten zien dat die aanpak in dit geval niet werkt. Als wij, zoals gebruikelijk, aannemen dat er een P bestaat die in detailed balance is met de transitiematrix, dan geldt voor P : n P (X = n, X 2 = m)µ n + m p 0 = P (X = n, X 2 = m)λ p 0, m P (X = n, X 2 = m)µ 2 n + m p 20 = P (X = n, X 2 = m )λ p 02. Maar wij hebben nu twee extra vergelijkingen: n P (X = n, X 2 = m)µ n + m p m 2 = P (X = n, X 2 = m + )µ 2 n + m p 2 n P (X = n, X 2 = m)µ 2 n + m p m 2 = P (X = n +, X 2 = m )µ n + m p 2. Dus vinden wij: P (X = n, X 2 = m) = P (X = n, X 2 = m + ) µ 2 p 2 m µ p 2 n P (X = n, X 2 = m) = P (X = n, X 2 = m) λ p 0 n + m µ p 0 n = P (X = n, X 2 = m + ) λ p 0 µ 2 p 20 m µ p 0 λ p 02 n 2

Wij hebben nu twee uitdrukkingen voor de kans P (X = n, X 2 = m). Als P in detailed balance is met de transitiematrix, moeten die twee aan elkaar gelijk zijn. Dus: µ 2 p 2 m µ p 2 n = λ p 0 µ 2 p 20 m µ p 0 λ p 02 n p 2 = p 0 p 20 p 2 p 0 p 02 Aangezien p 2 p 2 in het algemeen niet gelijk is aan p 0 p 20 p 0 p 02, kunnen wij concluderen dat er niet in het algemeen een P bestaat die in detailed balance is met deze transitiematrix. Dus nu voor het eerst komen we een voorbeeld tegen waar detailed balance niet werkt. Het beste dat we in dat geval kunnen doen, is teruggrijpen op de definitie van de evenwichtsverdeling, op de global balance vergelijking uit paragraaf.2. P n,m (λ + µ n n + m + µ 2m n + m ) = P n n,mµ n + m p n 0 + P n,m+ µ n + m p 2 m + P n,m µ 2 m + n p m 20 + P n+,m µ 2 m + n p 2 + P n+,m λp 0 + P n,m+ λp 02. waar P n,m = P (X = n, X 2 = m). Wij zoeken nu een kandidaat evenwichtsverdeling, waarvoor wij kunnen checken of hij klopt. Aangezien wij willen dat P voldoet aan: n P (X = k, X 2 = n k) = P (X = n) = λ n E(B) n, k=0 willen wij dat P van de volgende vorm is: ( ) ( ) n ( ) m n + m /µ + p 2 /µ 2 /µ2 + p 2 /µ P (X = n, X 2 = m) =. n p 2 p 2 p 2 p 2 Laten zien dat deze verdeling ook daadwerkelijk aan de algemene balansvergelijking voldoet is een behoorlijke rekenpartij, die ik hier achterwege zal laten. Zie de tweede paragraaf van hoofdstuk 3 voor een soortgelijk probleem waar ik de rekenpartij wel helemaal afmaak. 22

2.3.3 Laatste stukjes Wij weten nu dat voor een algemene fase-type verdeling de stelling over de ongevoeligheid van Processor Sharing servers opgaat. Nu kan een willekeurige verdeling willekeurig goed benaderd worden door een fase-type verdeling. Maar om vervolgens te concluderen dat de stelling waar is voor algemene verdeling, kan niet zonder enige rechtvaardiging. Wij moeten aantonen dat als twee bedieningsduurverdelingen dicht bij elkaar liggen, dat dan ook hun evenwichtsverdelingen dicht bij elkaar liggen. Bijna alle onderzoekers die over de fase-type verdeling publiceren, gaan niet in op deze technische complicatie. Wegens de hoge technische moeilijkheid, zal ik dat ook niet doen. Maar het laatste stukje van het bewijs is wel gelegd, door meneer S. Yashkov [7]. 2.4 Algemene Processor Sharing De eerste vraag die ik mij zal stellen in het geval waarbij de capaciteitsfunctie φ niet overal gelijk is aan, is wat de evenwichtsverdeling van een ongevoelige server zal zijn. Deze zal, als wij kunnen laten zien dat we met een ongevoelige server te maken hebben, niet van de verdeling van de bedieningsduur B afhangen. Maar hij zal wel afhangen van de functie φ. De eenvoudigste manier om de evenwichstverdeling te achterhalen, is simpelweg om voor een makkelijk voorbeeld de evenwichtsverdeling uit te rekenen. Als hier een uitdrukking komt die alleen van E(B) (en niet van B) afhangt, weten we dat dit de verdeling is die we zoeken. Voorbeeld 2.8. Zij S een PS server met capaciteit φ(n), met φ(n) : N R een willekeurige functie, waarbij we omwille van de eenvoud aannemen dat φ(0) = 0 en φ(n) > 0 als n > 0. Laat de klanten die bij S in bediening gaan allemaal geheugenloze bedieningstijd hebben. Wij gaan op zoek naar de evenwichtsverdeling van het aantal klanten bij S. Uitwerking Omdat de rij PS is, is de toestand van de server S te beschrijven aan de hand van het aantal klanten X, en vormt dit een -dimensionaal Markov-model. Het transities zien er als volgt uit: P (X = k) P (X = k ) : µ φ(k) P (X = k) P (X = k + ) : λ Zoals gebruikelijk gaan wij eerst op zoek naar een kansmaat P die in detailed balance is met de transitiematrix. Voor die kansmaat geldt: λ P (X = k) = P (X = k ) µφ(k) = p 0 ρ k 23 k i= φ(i).

Nu is het een belangrijke observatie dat de constante p 0 = P (X = 0) niet meer alleen van ρ = λ/µ afhangt, maar ook van de waarden van φ. Het is immers duidelijk dat als de capaciteit heel groot is, de kans dat de server leeg is ook veel groter is. Als uitdrukking voor p 0 vinden we dus niet meer ρ, maar: = p 0 = p k = p 0 + k=0 p 0 ρ k k= + k= ρk k i= φ(i) k i= φ(i) Aan de hand van dit voorbeeld kan een algemene definitie van ongevoeligheid worden afgeleid: Definitie 2.9. Zij S een server met capaciteit φ(n) en B de bedieningsduur van een klant, met B willekeurig verdeeld. De server S is ongevoelig als de evenwichtsverdeling van de wachtrij van S gelijk is aan: p k = p 0 ρ k k i= φ(i), met p 0 = + k= ρk k i=. φ(i) Nu we een algemene definitie van ongevoeligheid hebben, kunnen wij ook een algemene versie van de stelling uit paragraaf 2.2 geven. Het bewijs loopt voor dit geval hetzelfde als voor simpele Processor Sharing. Ik zal omwille van de ruimte alleen de eerste stap uitwerken. Stelling 2.0. Zij S een PS server. S is ongevoelig. Voorbeeld 2.. Zij S een PS server met capaciteit φ(n). Laat de bedieningsduur B hyperexponentieel verdeeld zijn. Dan is de evenwichtsverdeling gelijk aan die van een ongevoelige wachtrij. Bewijs Weer geldt aangezien de bedieningsduren hyperexponentieel verdeeld zijn dat (X, X 2 ) een Markov-model definieert. Alleen zien de transities er nu iets anders uit: (n, m) (n +, m) = λp (n, m) (n, m + ) = λ( p) n φ(n + m) (n, m) (n, m) = n + m µ m φ(n + m) (n, m) (n, m ) = n + m µ 2 24

Dan volgt, als P een kansmaat is in detailed balance met de transitiematrix, dat n φ(n + m) P (X = n, X 2 = m) n + m µ = P (X = n, X 2 = m)λp, m φ(n + m) P (X = n, X 2 = m) n + m µ = P (X = n, X 2 = m )λ( p). Dan vinden we voor P de uitdrukking P (X = n, X 2 = m) = P (X = n, X 2 = m) λp n φ(n+m) µ n+m ( ) m + n λ n p n = P (X = 0, X 2 = m) n µ n m+n i=m ( ) ( ) φ(i) n ( ) m m + n λp λ( p) = p 0 n µ µ m+n 2 i=0 φ(i). Dus voor de evenwichtsverdeling de uitdrukking: P (X = n) = n P (X = k, X 2 = n k) k=0 n ( ) ( ) k ( ) n k n λp λ( p) n = p 0 k µ µ 2 φ(i) k=0 i= n = p 0 λ n n ( ) ( ) k ( n p p φ(i) k i= = p 0 λ n n i= = p 0 λ n n i= φ(i) k=0 met p 0 = P (X = 0). ( p µ + p µ 2 µ ) n φ(i) (EB)n = p 0 ρ n n i= µ 2, φ(i), ) n k 25

Hoofdstuk 3 Processor Sharing in netwerken 3. Terminologie In zijn paper over netwerken [3] geeft Kelly een uitgebreide terminologie om netwerken te beschrijven. Maar aangezien ik alleen naar Processor Sharing modellen zal kijken, kan ik een sterk versimpelde versie geven:. Wij bekijken een netwerk met J knooppunten, en iedere j, 2..., J stelt dan een wachtrij voor. 2. Iedere rij j heeft een server met bedieningscapaciteit φ j (n). Aangezien de rij PS is, krijgt iedere klant dus φ j(n) n. 3. Omdat iedere rij PS is, is het niet relevant welke positie een klant of taak binnen de rij heeft. 4. Iedere klant heeft een hoeveelheid bediening nodig, die verdeling B heeft en verwachting E(B). Deze B kan een willekeurige verdeling hebben. 5. Wij zullen er voor voorlopig vanuit gaan dat iedere wachtrij een onbegrensd aantal klanten tegelijk in bediening kan nemen. Bovendien nemen wij aan dat voor iedere j: φ j (n) > 0 als n > 0, φ(0) = 0. Nu ik de basis voor het bespreken van netwerken gelegd heb, zal ik de belangrijkste eigenschappen voor dit soort netwerken afleiden. Ik zal een bewijs weergeven om aan te tonen dat wanneer een netwerk met exponentiëel verdeelde bedieningen in evenwicht is, de individuele wachtrijen onderling onafhankelijk zijn. Vervolgens zal ik dit resultaat generaliseren naar algemene bedieningsduur. 26

3.2 Onafhankelijkheid In deze paragraaf zal ik bewijzen dat het aantal klanten bij een server in een netwerk in evenwicht onafhankelijk is van het aantal klanten bij de andere wachtrijen, wanneer wij aannemen dat de bedieningstijden in het netwerk exponentiëel verdeeld zijn. Ik zal het geval uitwerken waar het netwerk uit twee servers bestaat. Het geval van n knooppunten gaat op soortgelijke manier. Lemma 3.. Zij V een netwerk met servers S en S 2, die respectievelijk capaciteitsfunctie φ en φ 2 hebben, en aankomstintensiteit λ en λ 2. Zij p 2 de kans dat iemand die bediend is bij S naar S 2 gaat, p 0 de kans dat hij het netwerk verlaat, en p 20, p 2 analoog gedifiniëerde kansen. Zij verder X het aantal klanten bij server S en X 2 het aantal bij S 2. Als V in evenwicht is, dan zijn X en X 2 onafhankelijk. Bewijs In het eerste hoofdstuk heb ik laten zien dat een stabiele wachtrij met een Poisson-aankomstproces, ook een Poisson-vertrekproces heeft, en wel met dezelfde intensiteit (als de wachtrij stabiel is, zullen alle klanten die binnenkomen er immers ook weer uit moeten). Dit maakt dat wij (X, X 2 ) kunnen zien als een continue Markov-keten. Wij willen graag voor de twee servers de balansvergelijking opschrijven. Daarvoor moeten wij echter wel weten wat de toevoer van iedere server is. Als γ de toevoer van S is en γ 2 die van S 2, dan geldt: γ = λ + γ 2 p 2 γ 2 = λ 2 + γ p 2. Dit stelsel kun je oplossen. Dan krijg je: γ = λ + λ 2 p 2 p 2 p 2 γ 2 = λ 2 + λ p 2 p 2 p 2 Nu we de aankomstintensiteit van beide servers kennen, kunnen we (met de kennis opgedaan in de paragraaf over algemene Processor Sharing) de evenwichtsverdeling X en X 2 opschrijven: P (X = n) = P (X 2 = n) = ( γ µ ( γ2 µ 2 ) n n i= ) n n i= φ (i) φ 2 (i) 27

Om onafhankelijkheid aan te tonen, moeten wij laten zien dat de evenwichtsverdeling van het netwerk gelijk is aan het product van deze twee verdelingen. Aangezien (X, X 2 ) een Markov-model is, kunnen wij de onderstaande transities opstellen: (n, m) (n +, m) : λ (n, m) (n, m + ) : p 2 µ φ (n) (n, m) (n, m) : p 0 µ φ (n) (n, m) (n, m + ) : λ 2 (n, m) (n, m ) : p 20 µ 2 φ 2 (m) (n, m) (n +, m ) : p 2 µ 2 φ 2 (m) Wij zien nu dat dit transitiediagram bijna gelijk is aan het transitiediagram voor een twee-dimensionaal fase-type dat in hoofdstuk twee aan bod gekomen is. Wij weten dus al dat er geen matrix P bestaat die in detailed balance is met de transitiematrix. Het beste dat wij dan kunnen doen, is gebruik maken van de global balance vergelijking. (λ + λ 2 + µ φ (n) + µ 2 φ 2 (m)) P n,m =λ P n,m + µ 2 φ 2 (m + )p 2 P n,m+ + λ 2 P n,m + µ φ (n + )p 2 P n+,m + µ φ (n + )p 0 P n+,m + µ 2 φ 2 (m + )p 20 P n,m+, met P n,m = P (X = n, X 2 = m). Het komt nu goed uit dat wij al een kandidaat evenwichtsverdeling klaar hebben staan. Wij willen aantonen dat de onderstaande formule de evenwichtsverdeling van het netewerk is: P (X = n, X 2 = m) = P (X = n) P (X 2 = m) = ( γ µ ) n n i= φ (i) ( γ2 µ 2 ) m m Om dit te doen moeten we controleren of deze kandidaat voor algemene (n, m) aan de global balance vergelijking voldoet. Wij kunnen het linkerlid van de vergelijking omschrijven tot: (λ + λ 2 + µ φ (n) + µ 2 φ 2 (m)) γ µ φ (n) γ 2 µ 2 φ 2 (m) P n,m i= φ 2 (i). 28

Om hierop terecht te komen, zal ik ieder van de termen afzonderlijk uitwerken, alvorens ze bij elkaar te voegen: ( ) n n γ ( ) m γ2 m λ P n,m = λ φ (i) φ 2 (i) µ i= = λ γ 2 µ 2 φ 2 (m) P n,m γ λ 2 P n,m = λ 2 φ (n) P n,m µ ( ) 2 γ2 µ 2 φ 2 (m + )p 2 P n,m+ = µ 2 φ 2 (m + )p 2 φ 2 (m) φ 2 (m + ) P n,m µ 2 = p 2 γ 2 2 µ 2 φ 2 (m) P n,m γ 2 µ φ (n + )p 2 P n+,m = p 2 φ (n) P n,m µ ( ) 2 γ µ φ (n + )p 0 P n+,m = µ p 0 φ (n) γ 2 φ 2 (m) P n,m µ µ 2 ( ) 2 γ2 µ 2 φ 2 (m + )p 20 P n,m+ = µ 2 p 20 φ 2 (m) γ φ (n) P n,m µ 2 µ µ 2 i= Als wij alle termen uitgewerkte termen ook daadwerkelijk optellen, en wij delen de factor γ µ φ (n) γ 2 µ 2 φ 2 (m) eruit, dan krijgen wij: λ µ γ φ (n) + λ 2 µ 2 γ 2 φ 2 (m) + p 2 µ γ 2 γ φ (n) + p 2 µ 2 γ γ 2 φ 2 (m) + p 0 γ + p 20 γ 2. Vegen we de termen waar de factor φ (n) in voorkomt bij elkaar, dan komen we uit op: ( ) λ µ γ γ 2 φ (n) + p 2 µ φ (n) = µ φ (n)γ λ 2 + λ p 2 λ + p 2 γ p 2 p ( 2 ) = µ φ (n)γ λ ( p 2 p 2 ) + λ 2 p 2 + λ p 2 p 2 p 2 p 2 = µ φ (n). Voor de termen met factor φ (m) kunnen wij een soortgelijke berekening doen. Dan geldt voor de termen zonder factor φ vinden we, gebruik makend van de identiteit p 0 = p 2, dat: p 0 γ + p 20 γ 2 = p 2 p 2 ((λ + λ 2 p 2 )( p 2 ) + (λ 2 + λ p 2 )( p 2 )) 29

Als we hiervan de termen met λ verzamelen, vinden we: λ p 2 + p 2 p 2 p 2 p 2 p 2 = λ, een voor de termen met λ 2 hetzelfde. Daarmee is het bewijs compleet. 3.3 Ongevoeligheid in netwerken Wij weten nu dat voor een netwerk in evenwicht met exponentieel verdeelde bedieningstijden, er geen correlatie is tussen de aantallen klanten bij de servers. Wij zouden dit resultaat graag generaliseren naar een netwerk waarin de bedieningstijden algemeen zijn, en dit is in sommige gevallen mogelijk. In die gevallen spreken wij bij netwerken van ongevoeligheid. Definitie 3.2. Zij V een netwerk bestaande uit J servers. Dan is V ongevoelig als de verdelingen van bedieningstijden B, B 2,..., B n niet van invloed zijn op de evenwichtsverdeling. Zoals ook bij ongevoeligheid voor losse servers, kunnen wij een alternatieve definitie gebruiken die de evenwichtsverdeling gebruikt die wij in de vorige paragraaf afgeleid hebben: Definitie 3.3. Zij V een netwerk bestaande uit J PS-servers. Dan is V ongevoelig als de evenwichtsverdeling van het aantal klanten bij iedere server gelijk is aan: ( ) J n i P (X = n, X 2 = n 2,..., X n = n J ) = c 0 ρ n i i, met ρ i = γ i E(B i ) φ i (k) met c 0 een normalisatieconstante Opmerking. Uit deze definitie valt af te lezen dat in een ongevoelig netwerk de variabelen X, X 2,... X n stochastisch onafhankelijk zijn. We duidelijk is wat ik met een ongevoelig netwerk bedoel, kan ik de belangrijkste stelling geven voor de toepassingen van hoofdstuk 4. Voor het bewijs verwijs ik naar het paper van Cohen [4]. Stelling 3.4. Zij V een netwerk bestaande uit servers die ieder een Processor sharing discipline hebben, en waarbij de stromen van buitenaf Poisson zijn en de bewegingen binnen het netwerk volgens een Markov-proces. Dan is het netwerk ongevoelig. i= k= 30

Hoofdstuk 4 Een verkeersmodel 4. Introductie In de vorige hoofdstukken heb ik veel theorie besproken over Processor Sharing in wachtrijen en in netwerken van wachtrijen. Wij hebben gezien dat een PS-server ongevoelig is, dat een netwerk van PS-servers ongevoelig is, en bovendien dat als het netwerk van PS-servers in evenwicht is, dat de hoeveelheid klanten bij een server dan onafhankelijk is van de hoeveelheden bij de andere servers. Nu is het tijd om deze theorie toe te passen op het verkeer. Omdat het hoofddoel van mijn scriptie niet is om een praktisch probleem op te lossen, maar om toepasbare wiskunde te ontwikkelen, zal ik niet een probleem uit de praktijk doorrekenen, maar zelf een probleem verzinnen. Aan de hand hiervan zal ik illustreren hoe een netwerk bestaande uit PS-wachtrijen geänalyseerd kan worden. 4.2 Opzet Bekijk de onderstaande graaf V : 0.43 3 0.25 0.5 0.75 start b 2 0.75 0.6 4 5 Ieder punt stelt een verkeersknooppunt voor, en iedere kant een mogelijke vervolgroute. Het getal op de kant tussen bijvoorbeeld en 3 geeft 3

aan hoeveel procent van de bij bediende auto s daarna naar 3 gaan (het percentage dat het netwerk verlaat is niet aangegeven). Wij gaan ervan uit dat alle auto s die het netwerk binnenkomen, in punt b beginnen. De toevoer naar punt b is een Poisson-proces met parameter λ. Bovendien nemen wij aan dat de verwachte bedieningsduur van iedere klant gelijk is aan. Bij de vijf knooppunten horen de volgende doorstroomfuncties geïnspireerd door het model van Greenshield voor verkeersdoorstroom (zie paragraaf.): ( S : f (n) = 90n n ) ( 00 S 2 : f 2 (n) = 0n n ) ( 200 S 3 : f 3 (n) = 70n n ) ( 50 S 4 : f 4 (n) = 00n n ) ( 50 S 5 : f 5 (n) = 90n n ) 00 Deze doorstroomfuncties zijn fysische functies (voor een echt probleem zouden ze ook empirisch achterhaald kunnen worden). Zij zullen dienen ter inspiratie van de capaciteitsfuncties φ i. Voor de capaciteitsfunctie willen wij graag dat hij altijd positief is, behalve bij een leeg knooppunt. Als dit niet zo zou zijn, zouden wij zeker nooit een stabiel netwerk kunnen vinden, en bovendien klopt het met de werkelijkheid dat er altijd wel enige stroom is. Daarom spreken we af dat de capaciteitsfunctie nul is als n = 0 en nooit kleiner is dan als n groter is dan nul: φ i (n) = n>0 (n) min{f i (n); } 4.3 Berekening Nu we weten hoe het netwerk eruit ziet en wat de parameters zijn, kunnen we het analyseren. Het eerste dat belangrijk is om te bepalen, is de stabiliteitsconditie. Hoe groot mag λ zijn om te zorgen dat het systeem een evenwichtstoestand bereikt? Onderaan deze paragraaf zal ik antwoord geven op de vraag hoe groot λ mag zijn, maar voorlopig ga ik ervan uit dat λ klein genoeg is om te zorgen dat het systeem in evenwicht is. Uit hoofdstuk 3 weten we nu dat de servers onderling onafhankelijk zijn, en dat de verdeling van het aantal klanten bij de server alleen afhangt van de aankomstintensiteit, de capaciteit van de server en van de verwachte bedieningsduur van de klanten. 32

Laten wij beginnen met de evenwichtsverdeling. wij de formule: ( J n i P (X = n, X 2 = n 2,..., X n = n J ) = c 0 i= ρ n i i k= Hiervoor kennen ), met ρ i = γ i E(B i ). φ i (k) Aangezien voor iedere server E(B) =, is de ρ i gelijk aan de toevoer naar het punt i: ρ = 0.25λ ρ 2 = 0.75λ ρ 3 = 0.λ ρ 4 = 0.56λ ρ 5 = 0.39λ P (X = n, X 2 =n 2,..., X 5 = n 5 ) = c 0 λ N 0.25 n 0.77 n 2 0. n 3 0.56 n 4 0.39 n 5 5 n i i= k= φ i (k). Dan is de waarde c 0 de laatste onbekende. Deze kan berekend worden door eerst te stellen dat c 0 = en vervolgens voor een te sommeren over de toestandsruimte. Daar komt een getal uit, en dat getal is c 0. Een numerieke benadering (waarbij ik alle toestanden met max n i 6 heb opgeteld, de overige waarden zijn zeer klein) geeft voor λ = : c 0 = 0.9789479. Een andere interessante kwantiteit is het verwachte aantal auto s bij een knooppunt X i : E(X i ) = kp (X i = k) k=0 = P (X i = 0) k=0 kρ k i k j= φ i (j) Nu we deze formule voor E(X i ) hebben, kunnen we iets zinnigs zeggen over de grootte die λ mag aannemen. Omdat de capaciteitsfuncties vanaf n = 200 allemaal gelijk zijn aan, geldt: 99 E(X i ) = kp (X i = k) + P (X i = 0) k=0 33 200 j= φ i (j) k=200 kρ k i.

De linkerterm van deze uitdrukking is altijd eindig, maar om te zorgen dat de rechterterm ook eindig is, moet ρ i kleiner zijn dan. Het netwerk is dus alleen maar stabiel als we λ dusdanig kiezen dat ieder van de ρ i kleiner is dan. Dit betekent dat λ wordt begrensd door 4. 3 Nu wij de stabiliteitsconditie hebben, kunnen we aan het rekenen gaan. Dus we kiezen λ = λ 0 < 4, en willen vervolgens weten hoe groot het 3 verwachte aantal auto s in het netwerk is. Hiervoor vinden wij: E(X ) = P (X = 0) k(0.25λ) k k=0 k j= φ (j) Dan willen we nog weten wat P (X = 0) is. Dit kan numeriek opgelost worden door bijvoorbeeld ( 000 (0.25λ) k k=0 k j= ) φ (j) uit te rekenen. Op die manier vindt je bij bijvoorbeeld λ 0 =.3 dat: P (X = 0) = 0.996358989745 P (X 2 = 0) = 0.99384376 P (X 3 = 0) = 0.99797577884 P (X 4 = 0) = 0.99269775392 P (X 5 = 0) = 0.994325758764 Voor de verwachtingen kan nu met behulp van de formule berekend worden dat: E(X ) = 0.00364772275532 E(X 2 ) = 0.008908578072 E(X 3 ) = 0.00208463864092 E(X 4 ) = 0.0073292220670 E(X 5 ) = 0.0056905662474 Het is goed om op te merken dat de verwachting voor ieder van de X i nagenoeg overeen komt met de kans op auto in het systeem. Dit is niet vreemd als je narekent dat de kans op meer dan een auto voor ieder van de servers zes cijfers achter de komma zit. 34

Met behulp van de wet van Little (zie paragraaf.3) dat de verblijftijden gelijk zijn aan: V = 0.0223762324 V 2 = 0.00937003509 V 3 = 0.045778925939 V 4 = 0.00067626603 V 5 = 0.0223996303 Stel nu een auto komt nieuw de weg op, en moet pas voorbij knooppunt vijf het systeem verlaten. Dan heeft hij twee opties: via knooppunten, 3 en 5, of via knooppunten 2, 4 en 5. Hij wil graag weten welke route hij het beste kan nemen. Een simpele optelsom geeft dat via en 3 zijn totale verblijftijd naar verwachting ongeveer 0.037 is. Via 2 en 4 is zijn verblijftijd 0.030. Hij kan dus het beste via knooppunt 2 reizen. Het zal opvallen dat het netwerk voor de toegestane waarden van λ vaak leeg staat (met kans 0.973 voor λ =.3), wat op de meeste snelwegen in Nederland en in de rest van de wereld niet het geval is. Wij zouden graag willen dat wanneer het rustig is op de weg, de aankomstintensiteit hoger is dan wanneer het druk is. Dit komt overeen met de werkelijkheid en maakt dat het systeem een grotere doorstroom kan hebben. Wiskundig heeft het aanpassen van het aankomstproces echter wel gevolgen. Daarover zal ik in de volgende paragraaf meer bespreken. In de appendix heb ik de code toegevoegd die ik heb gebruikt om deze berekeningen te doen. 35