Modellierung und Bewertung von Kommunikationssystemen

Werbung
Modellierung und Bewertung von
Kommunikationssystemen
Skript zur Vorlesung an der RWTH-Aachen
Lehrstuhl für Informatik IV
Prof. Dr. O. Spaniol
Dr. Mesut Güne³
2
Vorwort
Die Leistungsbewertung spielt sowohl bei zukünftigen als auch bei existierenden Systemen
eine wichtige Rolle. Bei Neuentwicklungen möchte man Vorhersagen bzgl. bestimmter Parameter wie Durchsatz, Skalierbarkeit und Ausfallsicherheit machen, um Fehlentwicklungen
oder Fehlentscheidungen zu vermeiden. Existierende Systeme müssen ständig gewartet und
regelmäÿig weiterentwickelt werden. Damit Erweiterungen richtig greifen, ist es wichtig, die
Schwachpunkte genau zu kennen.
Zwei Methoden zur Leistungsbewertung werden besonders gerne eingesetzt: analytische
Bewertung und Simulationen. Die analytische Bewertung ist die wissenschaftlich schönere
Vorgehensweise, wird jedoch bei konkreten Anwendungsfällen schnell sehr unüberschaubar. Dagegen ist die Leistungsbewertung durch Simulationen die praktikablere, da reale
Anwendungen detailliert modelliert werden können.
Gegenstand dieses Vorlesungsskriptes sind die Grundlagen der Modellierung und Bewertung
mittels Wartesystemen und Wartenetzen. Damit ist dem Studenten ein Werkzeug in die
Hand gegeben, um die Leistung von existierenden und zukünftigen Systemen zu bewerten.
Die Verfahren werden an Hand von Beispielen aus dem Gebiet der Kommunikationssysteme
und verteilten Systeme veranschaulicht.
Die vorliegende Version des Skriptes basiert hauptsächlich auf den Vorlesungen der Sommersemester 2000, 2004 und 2006 an der RWTH Aachen von Prof. Otto Spaniol. In der
Vorlesung wurde speziell auf die Anwendungsnähe der diskutierten Beispiele Wert gelegt.
Den Herren Dr. Dirk Thiÿen, Kai Jakobs und Arnd Hannemann danken wir für die Durchsicht des Skriptes.
Aachen im August 2006,
Otto Spaniol,
Mesut Güne³
i
ii
Inhaltsverzeichnis
Abbildungsverzeichnis
vii
1 Einführung in die Modellierung und Bewertung
1.1
1.2
Methodik bei der Modellierung und Leistungsbewertung . . . . . . . . . . .
3
1.1.1
Modellparameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.1.2
Bewertungskriterien von Modellen . . . . . . . . . . . . . . . . . . .
5
Analysetechniken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2 Stochastik für die Leistungsbewertung
2.1
2.2
1
9
Experimente, Ereignisse und Axiome . . . . . . . . . . . . . . . . . . . . . .
9
2.1.1
Wahrscheinlichkeitsaxiome . . . . . . . . . . . . . . . . . . . . . . . .
9
2.1.2
Bedingte Wahrscheinlichkeit . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.3
Stochastische Unabhängigkeit . . . . . . . . . . . . . . . . . . . . . . 11
2.1.4
Bayessche Formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Zufallsvariablen und Verteilungen . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1
Diskrete Zufallsvariablen . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2
Diskrete Verteilungen und Dichten . . . . . . . . . . . . . . . . . . . 14
2.2.3
Kontinuierliche Zufallsvariablen . . . . . . . . . . . . . . . . . . . . . 17
2.2.4
Kontinuierliche Verteilungen . . . . . . . . . . . . . . . . . . . . . . . 18
2.3
Verteilungen mit Memoryless-Eigenschaft . . . . . . . . . . . . . . . . . . . 20
2.4
Erzeugende Funktionen und Laplace-Transformation . . . . . . . . . . . . . 21
3 Stochastische Prozesse
25
3.1
Stochastische Prozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2
Poissonprozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3
Markov-Prozesse und Markov-Ketten . . . . . . . . . . . . . . . . . . . . . . 28
3.3.1
Markov-Prozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.2
Stationarität von Prozessen . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.3
Graphische Darstellung von Markov-Prozessen . . . . . . . . . . . . 31
3.3.4
Lokales und globales Gleichgewicht . . . . . . . . . . . . . . . . . . . 31
iii
iv
Inhaltsverzeichnis
3.4
Markov-Ketten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.1
Zustandsklassikation von Markov-Ketten . . . . . . . . . . . . . . . 34
3.4.2
Stationäre Verteilung von Markov-Ketten . . . . . . . . . . . . . . . 35
4 Wartesysteme
4.1
37
Einfache Wartesysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1.1
Zustand eines Wartesystems . . . . . . . . . . . . . . . . . . . . . . . 38
4.1.2
Stabilität von Wartesystemen . . . . . . . . . . . . . . . . . . . . . . 38
4.2
Beschreibung von Wartesystemen Kendallsche Notation . . . . . . . . . . 39
4.3
Little's Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.3.1
Informaler Beweis zum Little's Result . . . . . . . . . . . . . . . . . 40
4.3.2
Formaler Beweis zum Little's Result . . . . . . . . . . . . . . . . . . 40
4.3.3
Was ist die Systemzeit? . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.4
Deterministische Analyse eines Wartesystems . . . . . . . . . . . . . . . . . 41
4.5
Geburts- und Todesprozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.6
Analyse von M/M/1-Systemen . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.7
4.8
4.9
4.6.1
Alternative Herleitung der Zustandswahrscheinlichkeiten . . . . . . . 49
4.6.2
Wahrscheinlichkeit für ein leeres Wartesystem . . . . . . . . . . . . . 50
4.6.3
Eigenschaften von M/M/1-Systemen . . . . . . . . . . . . . . . . . . 50
Varianten von M/M/1-Systemen . . . . . . . . . . . . . . . . . . . . . . . . 51
4.7.1
Das M/M/∞-System . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.7.2
Das M/M/s-System . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.7.3
Das M/M/1/K-System . . . . . . . . . . . . . . . . . . . . . . . . . 53
Analyse von M/G/1-Systemen . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.8.1
Pollazcek-Khinchin-Formel (P-K-Formel) . . . . . . . . . . . . . . . . 54
4.8.2
Eigenschaften von M/G/1-Systemen . . . . . . . . . . . . . . . . . . 55
4.8.3
Zustandsberechnung im M/G/1-System . . . . . . . . . . . . . . . . 56
Analyse von G/M/1-Systemen . . . . . . . . . . . . . . . . . . . . . . . . . 60
5 Wartenetze
5.1
63
Eigenschaften von Wartenetzen . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.1.1
Wartenetze mit Produkteigenschaft . . . . . . . . . . . . . . . . . . . 66
5.2
Jackson-Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3
Gordon-Newell-Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.3.1
5.4
Allgemeine Ergebnisse zu Gorden-Newell-Netzen . . . . . . . . . . . 74
BCMP-Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.4.1
Die Cox-Verteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.4.2
Systemzustand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Inhaltsverzeichnis
5.4.3
v
Das BCMP-Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6 Beispielanalyse ALOHA
6.1
6.2
6.3
87
Modellierung von ALOHA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.1.1
Pure-ALOHA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.1.2
Slotted-ALOHA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.1.3
Slotted-ALOHA ohne Poissonannahme . . . . . . . . . . . . . . . . . 90
6.1.4
Berechnung von Wartezeiten
. . . . . . . . . . . . . . . . . . . . . . 91
Stabilitätsdiskussion von Slotted-ALOHA . . . . . . . . . . . . . . . . . . . 92
6.2.1
Steuerung des Inputs neuer Pakete . . . . . . . . . . . . . . . . . . . 94
6.2.2
Steuerung des Wiederholungsvorgangs nach Kollisionen . . . . . . . 94
Erweiterte Analyse von ALOHA . . . . . . . . . . . . . . . . . . . . . . . . 94
6.3.1
Stabilisierung des Systems durch Steuerung . . . . . . . . . . . . . . 98
6.3.2
Optimale Wiederholwahrscheinlichkeit . . . . . . . . . . . . . . . . . 100
A Übersichtstabellen zu Verteilungen und Transformationen
103
A.1 Diskrete Verteilungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
A.2 Kontinuierliche Verteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Symbolverzeichnis
107
Literaturverzeichnis
109
Index
111
vi
Inhaltsverzeichnis
Abbildungsverzeichnis
1.1
Vorgehensweise beim Modellieren . . . . . . . . . . . . . . . . . . . . . . . .
2.1
Verteilungsfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2
Gleichverteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3
Dichte der Normalverteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1
Klassikation von Prozessen . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2
Prozess mit kontiniuerlichem Indexbereich und diskretem Zustandsraum . . 29
3.3
Intensitätsgraph eines Markov-Prozesses mit n Zuständen . . . . . . . . . . 31
3.4
Prozess mit diskretem Index- und Zustandsraum . . . . . . . . . . . . . . . 32
4.1
Ein Wartesystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.2
Ankünfte und Abgänge in einem Wartesystem . . . . . . . . . . . . . . . . . 41
4.3
Entwicklung eines Wartesystems über die Zeit. . . . . . . . . . . . . . . . . 42
4.4
Zustände eines Geburts- und Todesprozesses . . . . . . . . . . . . . . . . . . 44
4.5
Ein M/M/1-Wartesystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.6
Kunden in einem Wartesystem . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.7
Mittlere Zeit in der sich das System im Zustand 1 bendet . . . . . . . . . . 48
5.1
Aufbau eines Knotens in einem Wartenetz. . . . . . . . . . . . . . . . . . . . 66
5.2
Ein Tandemnetz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3
Ein Jackson-Netz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.4
Die Cox-Verteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.1
Durchsatz und Gesamtverkehr bei ALOHA . . . . . . . . . . . . . . . . . . 88
6.2
Kollisionsphase bei Pure- und Slotted-ALOHA . . . . . . . . . . . . . . . . 89
6.3
Zusammenhang zwischen Durchsatz und Gesamtverkehr bei ALOHA . . . . 90
6.4
Zustände bei ALOHA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.5
Flow-In nach Zustand n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
vii
3
viii
Abbildungsverzeichnis
KAPITEL 1
Einführung in die Modellierung und
Bewertung
Die Analyse realer Systeme1 ist aus Komplexitätsgründen oft zu schwierig und zu aufwendig. Um dennoch Aussagen über das Verhalten von Systemen bezüglich ihrer Leistungsfähigkeit oder Wirtschaftlichkeit treen zu können, bedient man sich eines Modells.
Ein Modell ist eine vereinfachte Abbildung der Realität. Die Analyse des Modells liefert
Aussagen über sein Verhalten bezüglich vorgegebener Start- und Randbedingungen. Die
Bewertung des Modells liefert Vergleichsmöglichkeiten zwischen verschiedenen Varianten
und dient zur Verbesserung des Systems, z.B. zur Engpassbeseitigung. Anschlieÿend muss
der Versuch unternommen werden, die Modelldaten auf die Realität zu übertragen.
Beispiel: Das Client/Server-System
Es soll ein Client/Server-System untersucht werden. An einem Server sind mehrere Clients angeschlossen. Der Server besitzt mehrere Festplatten, Drucker und andere Peripheriegeräte. Die
Clients senden Anfragen an den Server. Diese Anfragen bearbeitet der Server und schickt die Ergebnisse an die jeweiligen Clients zurück. Das Szenario ist in der folgenden Abbildung dargestellt.
Die zentrale Fragestellung bei der Untersuchung eines solchen Systems ist nun:
• Wie viele Clients können gleichzeitig an einen Server angeschlossen werden, ohne dass die
1
Der Begri System stammt aus dem griechischen und bedeutet gegliedertes Ganzes. Im Allgemeinen versteht man unter einem System den ganzheitlichen Zusammenhang von Dingen und
Vorgängen, die von der Natur gegeben sind bzw. von Menschen erstellt wurden.
1
2
Kapitel 1. Einführung in die Modellierung und Bewertung
mittlere Antwortzeit des Servers einen bestimmten Grenzwert überschreitet, ab dem das
ganze System nicht mehr eektiv arbeitet?
Hierbei gilt es also zu berechnen, wie hoch die maximal mögliche Auslastung sein kann, ohne dass
die Bedienqualität des Systems zu stark darunter leidet. Dabei gibt es einen Konikt zwischen
gegensätzlichen Anforderungen, die überwunden werden müssen. Einerseits sollen die Ressourcen
des Systems möglichst gut ausgelastet sein (Anforderung des Betreibers), andererseits sollen keine
allzu hohen Wartezeiten entstehen (Anforderung des Benutzers).
Ein solches Client/Server-System kann zum Zweck der Analyse als so genanntes Wartenetz, ein
Netzwerk aus Wartesystemen, modelliert werden. Für jeden Client gibt es ein Wartesystem, in
welchem seine Anfragen gesammelt werden. Die Anfragen aller Clients laufen in einem gemeinsamen Wartesystem zusammen, welches die Ankunft der Anfragen beim Server repräsentiert.
Je nach Anfrageninhalt werden die Anfragen dann bei den Wartesystemen der jeweils benötigten Systemkomponenten eingereiht, bis sie vollständig abgearbeitet wurden. Dann werden die
Ergebnisse an die einzelnen Clients verschickt. Das Modell sieht wie folgt aus.
Anfrage nicht vollständig bearbeitet
Anfragen von Client 1
CPU
Anfragen von Client 2
Drucker
Alle Anfragen
Anfragen von Client 3
Band
...
Brenner
CD-ROM
Anfragen von Client n
Internet
Festplatte 0
Anfrage vollständig bearbeitet
Ergebnisse zu den Clients
schicken
Festplatte 1
...
Festplatte n
In einem Wartenetz kann man mit Hilfe der Wartesysteme die gewünschten Zielparameter berechnen, z.B.:
• Durchsatz: Anzahl der Anfragen pro Zeiteinheit
• Bedienzeit: Bearbeitungszeit einer Anfrage beim Server
• Wartezeit: Zeit von der Ankunft einer Anfrage beim Server bis zum Beginn der Bearbeitung
dieser Anfrage
• Systemzeit: Summe aus Wartezeit und Bedienzeit einer Anfrage
• Antwortzeit: Zeitdierenz zwischen dem Abschicken einer Anfrage durch den Client und
dem Zurückkommen des Ergebnisses
• Auslastung: Anteil der aktiven Zeit eines Servers als Summe der Auslastungen von CPU,
Festplatten, Druckern, usw.
Zur Berechnung dieser Zielparameter werden Systemparameter gebraucht, die ein Wartenetz
eindeutig charakterisieren:
• Ankunftsprozess: Mit welcher Charakteristik treen Anfragen beim Server ein?
1.1. Methodik bei der Modellierung und Leistungsbewertung
• Bedienprozess: Wie arbeitet der Server die Anfragen ab?
• Bedienermenge: Anzahl der eingesetzten Server
• Warteplatz: Gröÿe des Warteplatzes beim Server
• Zuverlässigkeit: Wahrscheinlichkeit für das Auftreten eines Fehlers in einem bestimmten
Zeitintervall
• Abarbeitungsstrategie: Reihenfolge, in der der Server die eintreenden Anfragen bearbeitet
1.1 Methodik bei der Modellierung und Leistungsbewertung
Die Modellierung und Leistungsbewertung von realen Systemen ist eine komplizierte und
langwierige Arbeit, die aus mehreren Schritten besteht. Die einzelnen Schritte sind in
Abbildung 1.1 dargestellt und werden mehrmals durchlaufen.
Abstraktion
Reale Welt
ng
eru
fein
Modell
r
Ve
Validierung
Analyse
Bewertung
Abbildung 1.1: Vorgehensweise beim Modellieren
• Modellbildung
Unter Modellbildung versteht man die Abstraktion von realen Gegebenheiten durch
das Weglassen unwesentlicher und die Berücksichtigung wesentlicher Parameter, die
das zu untersuchende System beschreiben. Die Schwierigkeit besteht darin, zu entscheiden, welche Parameter vernachlässigbar sind und welche unbedingt beachtet
werden müssen. Die Güte der Aussagen, die anschlieÿend gemacht werden können,
wird von dieser Auswahl sehr stark beeinusst.
• Modellanalyse
Unter Analyse versteht man die systematische Untersuchung eines Gegenstandes oder
Sachverhaltes hinsichtlich der ihn bestimmenden Komponenten oder Faktoren. Mit
3
4
Kapitel 1. Einführung in die Modellierung und Bewertung
Hilfe der Analyse wird das Verhalten des Modells bezüglich bestimmter Eingabeparameter untersucht. Zusätzlich kann auch eine analytische Überprüfung des erstellten
Modells erfolgen.
• Modellbewertung
Die durch die Analyse des Modells mit unterschiedlichen Eingabeparametern erhaltenen Daten müssen miteinander verglichen und in Bezug auf ihre Aussagefähigkeit
bewertet werden. Dabei kann sich durchaus herausstellen, dass die erst genannten
Schritte mit neuen Parametern wiederholt werden müssen.
• Modellvalidierung
Nach der Bewertung werden die Ergebnisse überprüft und ggf. wird das Modell dann
modiziert.
1.1.1 Modellparameter
Um Aussagen über das Verhalten eines Modells unter bestimmten Startbedingungen treen
zu können, müssen ausgewählte Parameter, die Modellparameter, bewertet werden. Es
gibt drei Kategorien solcher Parameter:
1. Objektive Parameter
Objektive Parameter besitzen u.a. einige der folgenden Eigenschaften:
• physikalische Messbarkeit
• mathematische Fassbarkeit
• mathematische Interpretierbarkeit
• mathematische Vergleichbarkeit
Beispiele objektiver Parameter sind:
• Zeit: Wie lange dauert etwas?
Abfertigungsdauer von Jobs
Antwortzeit eines Systems
Verweilzeit von Kunden (Jobs, Anfragen) in einem System
• Raum: Wie viel Speicher, wie viel Leistungskapazität?
Speicherbedarf eines Programms
Anzahl der Umspeicherungen eines Sortieralgorithmus
Gröÿe des Puers eines Routers
Die objektiven Parameter bilden aufgrund ihrer Eigenschaften für den Bereich der Modellierung und Bewertung von Kommunikationssystemen die wichtigste Gruppe. Damit
erfüllen sie die für eine theoretische Analyse wichtigen Voraussetzungen der Allgemeingültigkeit und Übertragbarkeit.
1.1. Methodik bei der Modellierung und Leistungsbewertung
2. Subjektive Parameter
Die subjektiven Parameter entziehen sich im Allgemeinen der genauen Erfassung durch
Messungen oder Tests. Sie werden in der Regel durch empirische oder soziologische Untersuchungen erfasst. Sie sind nicht oder nur unzureichend fassbar und können daher für
Berechnungs- oder Testzwecke kaum verwendet werden. Hierzu gehören beispielsweise:
• Akzeptanz eines Systems durch die Benutzer
• Zukunftssicherheit einer Entwicklung
• Bedienerfreundlichkeit einer Benutzeroberäche
3. Intermediäre Parameter
Unter intermediären Parametern versteht man Kenngröÿen, die sowohl subjektive als auch
objektive Eigenschaften besitzen. Sie sind daher keiner dieser beiden Klassen zuzuordnen.
Da sie aber einige Merkmale der objektiven Parameter aufweisen, können sie bei der Modellierung von Kommunikationssystemen durchaus eine Rolle spielen. Zu dieser Gruppe
gehören:
• Datendurchsatz
• Datensicherheit
• Kosten
Man kann sich vorstellen, dass intermediäre Parameter anwendungsabhängig die Entscheidung zugunsten eines bestimmten Systems beeinussen können. Im Folgenden werden
hauptsächlich objektive Parameter betrachtet.
1.1.2 Bewertungskriterien von Modellen
Bei der Modellbildung lassen sich nicht alle Parameter berücksichtigen. Es ist auch nicht
möglich, alle Parameter gleichzeitig zu optimieren. Deshalb muss man sich auf einige besonders wichtige Parameter beschränken und diese der Modellbildung und Bewertung zugrundelegen. Dabei muss eine Aussage immer die folgende Form haben:
System A ist besser als System B bzgl. Parameter C
In konkreten Fällen kann es sogar sein, dass die Aussage nur in einem bestimmten Wertebereich des Parameters C gilt. Daher sind Aussagen der Form:
System A ist besser als System B
sehr gefährlich, da sie die Beurteilung der Systeme bzgl. aller Parameter voraussetzen.
Ein System kann auch bzgl. unterschiedlicher Kriterien und somit bzgl. unterschiedlicher
Parameter untersucht werden, wobei es sich dann bzgl. einiger Parameter als optimal, bzgl.
anderer Parameter aber als pessimal erweisen kann. Insbesondere gibt es Parameter, deren
Optimierungsrichtungen gegensätzlich verlaufen, so dass die Optimierung eines Parameters
eine Verschlechterung bzgl. eines anderen Parameters bewirkt.
5
6
Kapitel 1. Einführung in die Modellierung und Bewertung
Beispiel: Verhältnis zwischen Durchsatz und Wartezeit
Der Durchsatz und die Wartezeit eines Systems lassen sich im Allgemeinen nicht gleichzeitig verbessern. Die Durchsatzmaximierung ist meistens nicht verträglich mit der Wartezeitminimierung.
Wartezeit minimieren
Mittlere Wartezeit
Die Betreiber eines Kommunikationssystems wollen einen maximalen Durchsatz, also eine hohe
Last. Dies verursacht jedoch eine längere Wartezeit, da das System mehr Aufträge bearbeiten
muss. Im Gegensatz dazu wünscht sich der Kunde eine schnelle Bedienung, welche nur durch wenig
Last erreichbar ist. Der typische Zusammenhang ist in der folgenden Abbildung dargestellt.
Durchsatz maximieren
Last
1.2 Analysetechniken
Die Modellierung dient zur Bewertung eines Systems bzgl. bestimmter Parameter. Daher
muss man versuchen, eine möglichst realitätsnahe Systemumgebung zu entwickeln. Dazu
braucht man Informationen über das zu bewertende System, die man durch die folgenden
Methoden erhalten kann:
• Messungen in realen Systemen
• Instruction Mix: Messprogramme, die aus einer Mischung der unterschiedlichen Befehle (IO-Befehle, Arithmetik-Befehle) eines Rechners bestehen.
• Kernprogramme: Messprogramme, die aus den häugsten vorkommenden Befehlssequenzen bestehen.
• Benchmarks: Spezielle Messumgebungen, die aus einem repräsentativen Programmpaket bestehen, z.B. Benchmark für Compiler, Benchmark für Oce-Anwendungen,
Benchmark für Spiele.
• Synthetische Jobs
• Stochastische Modelle, die gute Näherungen an bestimmte Verhalten wiedergeben.
Man unterscheidet zwei Arten von Analysetechniken:
• Exakte mathematische Analyse
Die Vorteile der exakten mathematischen Analyse liegen in
der formalen Beschreibung des Systems
1.2. Analysetechniken
der Erstellung eines Formelsystems, welches das Erkennen der Zusammenhänge
erleichtert
der Berechnung einzelner Parameter und daraus die Berechnung abgeleiteter
Parameter
der Darstellung von Zusammenhängen, z.B. in graphischer Form
Allerdings ist die Realität oft zu komplex, d.h. mathematisch nur unzureichend fassbar. Entweder sind die Formeln zu komplex oder die Vereinfachungen zu groÿ.
In Kapitel 6 wird anhand des ALOHA-Protokolls ein Beispiel zur exakten Analyse
vorgestellt und vollständig diskutiert.
• Simulationstechniken
Im Gegensatz zur mathematischen Analyse versuchen die Simulationstechniken die
Realität detailliert nachzubilden, um daraus Eigenschaften abzuleiten. Hierzu werden
spezielle Simulationsprogramme entwickelt. Durch Simulationsläufe wird das zeitliche
Verhalten, also die Dynamik, des Systems nachgebildet.
Auch bei Simulationstechniken müssen vereinfachende Annahmen gemacht werden,
welche die Güte der Simulationen stark beeinussen. Simulationstechniken besitzen
im Allgemeinen folgende Probleme:
Simulationsparameter: Welche Aspekte des Systems sollen nachgebildet werden?
Laufzeit: Simulationen können sehr lange dauern.
Vertrauensintervalle (Kondenzintervall): Die Ergebnisse aus Simulationen hängen typischerweise stark mit der Simulationslänge zusammen. Lange Simulationen liefern bessere/zuverlässigere Ergebnisse als kurze.
Einschwingzeiten: Erste Simulationswerte sind oft mit groÿen Schwankungen
und Fehlern behaftet.
7
8
Kapitel 1. Einführung in die Modellierung und Bewertung
KAPITEL 2
Stochastik für die Leistungsbewertung
In diesem Kapitel sind einige Grundlagen der Wahrscheinlichkeitsrechnung zusammengestellt, die für den Sto des Skriptes notwendig sind. Es gibt jedoch nur eine Zusammenfassung wieder, die zur Aurischung des Materials dienen soll und kann kein Lehrbuch über
Wahrscheinlichkeitsrechnung bzw. Stochastik ersetzen.
2.1 Experimente, Ereignisse und Axiome
Ausgangsbasis jeder stochastischen Betrachtung sind Experimente. Ein Experiment hat
mögliche Ergebnisse. Ein Ereignis ist eine Menge von Ergebnissen. Die Menge aller möglichen Ereignisse bildet den Ereignisraum Ω. Jedem Ereignis wird dabei eine Wahrscheinlichkeit zugeordnet.
Beispiel: n-facher Münzwurf
Der Ereignisraum beim Experiment n-facher Münzwurf ist gegeben durch Ω = {(x1 , . . . , xn ) |
xi ∈ {0, 1}}. Dabei bedeutet 1=Kopf und 0=Zahl.
Das Ereignis A = {2 mal Kopf in 4 Würfen} ist durch die folgende Menge der Ergebnisse deniert:
A = {(1, 1, 0, 0), (1, 0, 1, 0), (1, 0, 0, 1), (0, 1, 1, 0), (0, 1, 0, 1), (0, 0, 1, 1)}
2.1.1 Wahrscheinlichkeitsaxiome
Es gelten folgende Axiome:
(1) Gegeben sei eine nicht leere Menge Ω. Die Elemente ω von Ω werden Elementarereignisse genannt.
(2) Es sei eine Menge A = {A1 , A2 , . . .} von Teilmengen Ai ⊆ Ω, eine so genannte σAlgebra, ausgezeichnet. Die Elemente Ai von A heiÿen zufällige Ereignisse und genügen
den folgenden Bedingungen:
(a) Ω ∈ A
(b) Ist A ⊆ Ω ein Element von A, also A ∈ A, dann enthält A auch das Komplement
dazu, also Ω \ A ∈ A.
9
10
Kapitel 2. Stochastik für die Leistungsbewertung
(c) Für jede Folge A1 , A2 , . . . ∈ A muss gelten:
!
∞
[
B :=
Ai ⇒ B ∈ A
i=1
(3) Jedem Element A ∈ A sei eine Zahl P(A), die so genannte Wahrscheinlichkeit von A,
mit 0 6 P(A) 6 1, zugeordnet.
(4) Es gilt P(Ω) = 1 (Normierungsaxiom).
(5) Für jede Folge A1 , A2 , . . . , An ∈ A, wobei die Ai paarweise disjunkt sind, gilt:
P(A1 ∪ A2 ∪ . . . ∪ An ) = P(A1 ) + P(A2 ) + . . . + P(An )
Seien A und B Ereignisse. Dann lassen sich mit den oben aufgeführten Axiomen folgende
Behauptungen zeigen:
(i) P(A) 6 1
(ii) P(A) + P(A) = 1, wobei A := Ω \ A = {ω ∈ Ω | ω 6∈ A}
(iii) P(∅) = 0
(iv) P(A ∪ B) = P(A) + P(B) − P(A ∩ B)
Beispiel: Anwendung der Wahrscheinlichkeitsaxiome
Beweis zu Behauptung (iv):
(a) A = (A ∩ B) ∪ (A ∩ B)
(b) B = (A ∩ B) ∪ (A ∩ B)
(c) A ∪ B = (A ∩ B) ∪ (A ∩ B) ∪ (A ∩ B)
Mit (a), (b), (c) und Axiom (5) erhält man:
P(A ∪ B) = P(A ∩ B) + P(A ∩ B) + P(A ∩ B)
= P(A ∩ B) + P(B) − P(A ∩ B) + P(A) − P(A ∩ B)
= P(A) + P(B) − P(A ∩ B)
2.1.2 Bedingte Wahrscheinlichkeit
Oft treten Ereignisse nicht einzeln und unabhängig, sondern in bestimmten Abhängigkeiten
voneinander auf. In diesem Fall spricht man von bedingter Wahrscheinlichkeit. Die
bedingte Wahrscheinlichkeit eines Ereignisses A unter der Voraussetzung, dass Ereignis B
eingetreten ist, ist deniert durch:
P(A | B) =
P(A ∩ B)
,
P(B)
falls P(B) > 0
(2.1)
Wenn A und B disjunkt sind, gilt P(A | B) = 0. Dies folgt direkt aus der Tatsache, dass
dann P(A ∩ B) = P(∅) = 0 ist.
2.1. Experimente, Ereignisse und Axiome
11
2.1.3 Stochastische Unabhängigkeit
Die Ereignisse A und B sind stochastisch unabhängig, wenn das Stattnden eines der
Ereignisse nichts über das Stattnden des anderen Ereignisses aussagt. Es gilt also für
Ereignisse A und B:
P(A | B) = P(A) sowie P(B | A) = P(B)
Die Unabhängigkeit zweier Ereignisse kann also nach Gleichung (2.1) wie folgt ausgedrückt
werden:
P(A ∩ B) = P(A|B) · P(B)
= P(A) · P(B)
(2.2)
(2.3)
Falls Gleichung (2.3) gilt, sind die Ereignisse A und B per Denition stochastisch unabhängig.
2.1.4 Bayessche Formel
Gegeben sei eine Folge von paarweise disjunkten Ereignissen B1 , B2 , . . . , Bn , Bi ⊆ Ω mit
P(Bi ) > 0, die den Ereignisraum Ω zerlegen. Es gelte also
Ω=
n
[
Bi
i=1
Wir betrachten nun ein beliebiges Ereignis A, dann gilt für dieses Ereignis
!
n
n
[
[
A=A∩Ω=A∩
Bi =
(A ∩ Bi )
i=1
i=1
Aus der Additivität der Wahrscheinlichkeiten folgt daraus
P(A) =
n
X
P(A ∩ Bi )
(2.4)
i=1
Die totale Wahrscheinlichkeit für Ereignis A ist dann gegeben durch:
P(A) =
n
X
P(A | Bi ) · P(Bi )
(2.5)
i=1
Man erhält Gleichung (2.5) aus Gleichung (2.4) durch Ausnutzen des Zusammenhangs
von Gleichung (2.2). Wenn P(A) > 0, dann gilt für die bedingte Wahrscheinlichkeit des
Ereignisses Bi unter der Bedingung A:
P(Bi | A) =
P(A | Bi ) · P(Bi )
P(A | Bi ) · P(Bi )
= Pn
P(A)
j=1 P(A | Bj ) · P(Bj )
(2.6)
Die Ereignisse Bi (i = 1, 2, . . .) sind Ergebnismengen, die mit Wahrscheinlichkeit P(Bi )
(Apriori-Wahrscheinlichkeit) auftreten. Ist bei einem Zufallsexperiment das Ereignis A eingetreten, so interessiert man sich oft für die Wahrscheinlichkeiten P(Bi | A), dass nämlich
unter der Voraussetzung, dass A eingetreten ist, die Bedingung Bi erfüllt ist. Die Bayessche Formel gestattet es, bei Kenntnis von P(A | Bi ) die Wahrscheinlichkeiten P(Bi | A)
(Aposteriori-Wahrscheinlichkeit von Bi ) zu berechnen.
12
Kapitel 2. Stochastik für die Leistungsbewertung
Beispiel: Bedingte Wahrscheinlichkeit
Ein Test zeige mit 95% Sicherheit an, ob ein getestetes System richtig funktioniert. Er zeigt
allerdings auch in 1% der Fälle an, dass das System korrekt arbeitet, obwohl Fehler auftreten.
Angenommen, insgesamt 99% der Systeme arbeiten korrekt, wie hoch ist dann die Wahrscheinlichkeit, dass ein getestetes System fehlerhaft ist, wenn das Testergebnis dieses anzeigt?
• Sei A das Ereignis: Testergebnis Fehler und
• B das Ereignis: System fehlerhaft
Die Apriori-Wahrscheinlichkeiten sind also P(A | B) = 0, 99 und P(A | B) = 0, 05. Gesucht ist
P(B | A). Mit der Gleichung (2.6) ergibt sich:
P(B) · P(A | B)
P(B) · P(A | B) + P(B) · P(A | B)
0, 01 · 0, 99
=
0, 01 · 0, 99 + 0, 99 · 0, 05
= 0, 16
P(B | A) =
Das bedeutet, nur in knapp 17% der Fälle ist ein System wirklich fehlerhaft, wenn das Testergebnis
dies anzeigt!
2.2 Zufallsvariablen und Verteilungen
Bei einem Experiment mit zufälligem Ausgang interessiert man sich häug nicht nur für
die zufälligen Ausgänge selbst, sondern auch für allgemeinere mathematische Gröÿen, die
durch den zufälligen Ausgang des Experiments bestimmt werden. Solche Gröÿen nennt
man zufällige Gröÿen oder Zufallsvariablen.
Beispiel: Zufallsvariable
Beim n-fachen Werfen eines Würfels ist die erzielte Augenzahl eine Zufallsvariable.
Denition: Zufallsvariable
Eine Zufallsvariable ist eine Abbildung X : Ω −→ R aus dem Ereignisraum in die reellen Zahlen.
Es wird jedem Elementarereignis ω ∈ Ω aus dem Ereignisraum Ω eine reelle Zahl X(ω) ∈ R
zugeordnet.
Man unterscheidet zwischen diskreten Zufallsvariablen und kontinuierlichen Zufallsvariablen.
2.2.1 Diskrete Zufallsvariablen
Diskrete Zufallsvariablen nehmen Werte aus dem Bereich der natürlichen Zahlen oder aus
einem anderen endlichen bzw. abzählbaren Bereich an.
2.2. Zufallsvariablen und Verteilungen
13
Erwartungswert einer diskreten Zufallsvariable
Der Erwartungswert E[X] einer diskreten Zufallsvariablen X ist die mit Wahrscheinlichkeiten gewichtete Summe über alle Ausgänge des Experiments:
E[X] = µ =
k
X
xi · P(X = xi ) =
k
X
i=1
xi · pi
i=1
pi := P(X = xi ) gibt dabei die Wahrscheinlichkeit an, dass die Zufallsvariable X den Wert
xi annimmt.
Der Erwartungswert der Summe von zwei Zufallsvariablen ist gleich der Summe der Erwartungswerte dieser Zufallsvariablen:
E[X + Y] = E[X] + E[Y]
n-tes Moment einer diskreten Zufallsvariable
Weitere Informationen über die Zufallsvariablen liefern die Momente der Verteilung. Das
n-te Moment Mn ist deniert durch:
Mn [X] =
k
X
xn
i
· P(X = xi ) =
k
X
xn
i · pi
i=1
i=1
Das erste Moment liefert den Erwartungswert der Verteilung.
Zentrale Momente einer diskreten Zufallsvariable
Von Wichtigkeit ist eine weitere Klasse von Momenten, die zentralen Momente. Sie unterscheiden sich von den einfachen Momenten dadurch, dass der Erwartungswert in den
Ursprung verlegt wird.
k
X
0
Mn [X] =
(xi − E[X])n · pi
i=1
Varianz einer diskreten Zufallsvariable
Das zweite zentrale Moment, die Varianz, gibt die mittlere quadratische Abweichung einer
Zufallsvariablen X von ihrem Erwartungswert an:
M20 [X] = V[X] =
Es gilt:
k
X
(xi − E[X])2 · pi
i=1
V[X] = σ2 = E[X2 ] − (E[X])2
Standardabweichung einer diskreten Zufallsvariable
Die Streuung einer Zufallsvariablen X ist die positive Wurzel aus der Varianz der Zufallsvariablen. Man schreibt daher auch oft σ2 [X] für die Varianz.
p
σ[X] = + V[X]
14
Kapitel 2. Stochastik für die Leistungsbewertung
Variationskoezient einer diskreten Zufallsvariable
Der Variationskoezient ist die auf den Erwartungswert normierte Standardabweichung,
d.h. der Quotient aus Streuung und Erwartungswert:
p
+ V[X]
σ[X]
cx =
=
E[X]
E[X]
2.2.2 Diskrete Verteilungen und Dichten
Eine Zähldichte ist eine Abbildung, die den Ausgängen einer diskreten Zufallsvariablen
ihre Wahrscheinlichkeit zuordnet, also eine Zahl aus dem Intervall [0, 1]. Dazu genügt die
Angabe der Wahrscheinlichkeiten pi := P(X = xi ) für alle natürlichen Zahlen i.
x1
x2
x3
···
Werte von X
P(X = xi )
P(X = x1 ) P(X = x2 ) P(X = x3 ) · · ·
Die zugehörige Verteilung F(x) einer diskreten Zufallsvariable X gibt die Wahrscheinlichkeit
an, mit der die Zufallsvariable X einen bestimmten Wert x nicht übersteigt.
X
F(x) = P(X 6 x) =
P(X = xi )
xi 6x
Im Folgenden werden einige Beispiele für diskrete Dichten anhand der zugehörigen Experimente hergeleitet.
Bernoulli-Experiment
Ein Bernoulli-Experiment ist ein Experiment mit zwei möglichen Ausgängen, z.B. 1=Erfolg und 0=Misserfolg. Ein Münzwurf kann als Bernoulli-Experiment angesehen werden.
Die Wahrscheinlichkeit für 1=Kopf sei p und das Komplementärereignis 0=Zahl 1 − p. Die
Wahrscheinlichkeitsverteilung ist hier also wie folgt gegeben:
P(1 = Kopf) = p
P(0 = Zahl) = 1 − p
Binomialverteilung
Wir betrachten nun Folgen von n stochastisch unabhängigen Bernoulli-Experimenten. Es
gibt 2n verschiedene solcher Folgen. Jedem Ereignis mit k Erfolgen wird die Wahrscheinlichkeit
pk · (1 − p)n−k
|{z}
|
{z
}
k Erfolge n−k Misserfolge
zugewiesen. Es gibt n über k solcher Ereignisse. Die Wahrscheinlichkeit π(n, k), dass bei
n Experimenten k Erfolge in beliebiger Reihenfolge auftreten, beträgt also:
n
π(n, k) =
· pk · qn−k ∀ 0 6 k 6 n, q = (1 − p)
(2.7)
k
2.2. Zufallsvariablen und Verteilungen
15
Gleichung (2.7) beschreibt eine Wahrscheinlichkeitsverteilung, denn es gelten die Axiome
(3) und (4):
P(Ω) =
n
X
π(n, k) =
k=0
n X
n
k=0
k
· pk · qn−k = (p + q)n = 1
Der Erwartungswert der Binomialverteilung ist:
E[X] =
n
X
k · π(n, k) =
k=0
n
X
k=0
n
· pk · qn−k = n · p
k·
k
Für die Varianz der Binomialverteilung gilt:
V[X] = n · p · (1 − p)
Geometrische Verteilung
Wir betrachten nun unendliche Folgen von Bernoulli-Experimenten. Bei einer idealen Münze sollte man nun annehmen, dass jede Folge von Würfen gleich wahrscheinlich ist. Den
einzelnen Ereignissen können jedoch keine identischen Wahrscheinlichkeiten zugeordnet
werden, da es sich um eine unendliche Menge von Ereignissen handelt, und die unendliche
Summe einer (auch noch so kleinen) Konstante divergiert. Es wäre also P(Ω) = ∞ > 1.
Eine Lösung besteht darin, den Ereignissen Zufallsvariablen zuzuordnen, und Mengen von
Ereignissen mit Wahrscheinlichkeiten zu versehen. Sei
X := Anzahl der Wurfversuche bis zum ersten Erfolg
Die Ereignismenge {X = i} umfasst also alle Folgen über {0, 1}, die mit (i − 1) Nullen
beginnen. Da die Ereignisse/Versuche unabhängig voneinander sind, treten Erfolge mit
Wahrscheinlichkeit p und Misserfolge mit Wahrscheinlichkeit q := 1 − p auf. Es gilt somit:
P(X = i) = (1 − p)i−1 · p = qi−1 · p ∀i > 1.
Es handelt sich um eine Wahrscheinlichkeitsverteilung, denn es gilt:
P(Ω) =
∞
X
i=1
P(X = i) =
∞
X
qi−1 · p = p ·
i=1
∞
X
qi−1 = p ·
i=1
1
1
=p· =1
1−q
p
Diese Wahrscheinlichkeitsverteilung ist die geometrische Verteilung mit Parameter p. Der
Erwartungswert und die Varianz der geometrischen Verteilung sind wie folgt:
E[X] =
1
p
und
V[X] =
1−p
p2
Negative Binomialverteilung
Eine weitere wichtige Verteilung ist die negative Binomialverteilung. Hier wird die
Zufallsvariable X als die Anzahl n der Misserfolge deniert, die dem k-ten Erfolg voraus-
16
Kapitel 2. Stochastik für die Leistungsbewertung
gegangen sind. Man erhält dann für:
n+k−1
p
P(n Misserfolge bis zum k-ten Erfolg) = P(n, k) =
· qn · pk−1 ·
|{z}
k−1
{z
} k−ter Erfolg
|
n Misserfolge und (k−1) Erfolge
n+k−1
=
· qn · pk−1 · p
n
n+k−1
=
· qn · pk
n
Erwartungswert und Varianz ergeben sich wie folgt:
E[X] =
k
p
und
V[X] =
k(1 − p)
p2
Poissonverteilung
Für die Modellierung und Bewertung von Rechensystemen mittels Wartesystemen ist die
Poissonverteilung von groÿer Bedeutung:
Treten Ereignisse unabhängig voneinander mit der Rate λ auf, und gibt die Zufallsvariable
X die Anzahl dieser Ereignisse an, dann ist X poissonverteilt, und die Wahrscheinlichkeit
für das Auftreten von k Ereignissen beträgt:
P(X = k) =
λk −λ
·e ,
k!
k ∈ N0 , 0 < λ < ∞
Der Erwartungswert und die Varianz der Poissonverteilung sind gegeben durch:
E[X] = λ
und V[X] = λ
Im Rahmen dieser Vorlesung betrachten wir das Auftreten von Ereignissen in einem bestimmten Zeitintervall. In diesem Fall ändert sich der Parameter λ zu λ · t.
Treten beliebige Ereignisse unabhängig voneinander mit Rate λ Ereignisse pro Zeiteinheit
auf, und gibt die Zufallsvariable X die Anzahl dieser Ereignisse bis zur Zeit t an, dann ist
X poissonverteilt, und die Wahrscheinlichkeit für k Ereignisse in einem Zeitintervall der
Länge t beträgt:
P(X = k) =
(λ · t)k −λ·t
·e
,
k!
k ∈ N0 , 0 < λ < ∞
Der Erwartungswert und die Varianz der Poissonverteilung sind dann in diesem Fall gegeben durch:
E[X] = λ · t
und V[X] = λ · t
Es gibt viele zufallsbedingte Vorgänge, deren Einzelereignisse unabhängig voneinander sind.
In diesem Fall kann die Anzahl der Ereignisse in einem vorgegebenen Zeitraum (zumindest
näherungsweise) durch eine Poissonverteilung modelliert werden.
2.2. Zufallsvariablen und Verteilungen
17
Beispiel: Reale Vorgänge, die einer Poissonverteilung unterliegen
• Geburten in einer Stadt
• vorbeifahrende Fahrzeuge an einem bestimmten Punkt
• eingehende Anrufe in einem Fernsprechnetz
• ankommende Jobs in einem Rechensystem
2.2.3 Kontinuierliche Zufallsvariablen
Für die Beschreibung gewisser Wahrscheinlichkeitsräume sind diskrete Zufallsvariablen
nicht geeignet. Wenn man die Anzahl der Sonnentage pro Jahr betrachtet, so ist der Ergebnisbereich diskretisierbar. Will man aber z.B. Temperaturverläufe oder Sonnenaufgangsbzw. -untergangszeiten verfolgen, kommt man mit maximal abzählbar vielen Ergebnissen
nicht mehr aus. Daher die Forderung nach der Einführung kontinuierlicher Zufallsvariablen.
Verteilungsfunktion
Eine kontinuierliche Zufallsvariable wird durch eine Verteilungsfunktion (siehe Abbildung 2.1) beschrieben. Die Verteilungsfunktion muss folgenden Bedingungen genügen:
(1) F(x1 ) 6 F(x2 ) falls x1 6 x2
(2) F(x) → 0
falls x → −∞
(3) F(x) → 1
falls x → ∞
(4) F ist rechtsseitig stetig
1
F
x
Abbildung 2.1: Verteilungsfunktion
F(x) gibt die Wahrscheinlichkeit an, mit der die zugrundeliegende Zufallsvariable X Werte
kleiner oder gleich x annimmt, also P(X 6 x).
Dichtefunktion
Die Ableitung einer Verteilungsfunktion ist die Dichtefunktion:
f(x) =
dF(x)
dx
18
Kapitel 2. Stochastik für die Leistungsbewertung
Integriert man über die Dichtefunktion über das Intervall [a, b], so erhält man die Wahrscheinlichkeit, mit der X im Intervall [a, b] liegt, wie folgt:
P(a 6 X 6 b) = P(X 6 b) − P(X 6 a)
Zb
Za
=
f(t) · dt −
f(t) · dt
−∞
−∞
Zb
Zb
f(t) · dt = dF(t)
=
a
a
= F(b) − F(a)
Erwartungswert einer kontinuierlichen Zufallsvariablen
Der Erwartungswert einer kontinuierlichen Zufallsvariablen mit Verteilungsfunktion F kann
wie folgt berechnet werden:
Z
∞
x · f(x)dx
E[X] =
−∞
n-tes Moment einer kontinuierlichen Zufallsvariable
Die höheren und zentralen Momente für kontinuierliche Zufallsvariablen werden analog zu
denen der diskreten Zufallsvariablen deniert.
∞
Z
xn · f(x)dx
Mn [X] =
−∞
∞
Z
(x − E[X])n · f(x)dx
0
[X] =
Mn
−∞
Die Unabhängigkeit von Zufallsvariablen wird analog zu der von Ereignissen deniert.
2.2.4 Kontinuierliche Verteilungen
Gleichverteilung
Eine Zufallsvariable ist im Intervall [a, b] gleichverteilt, wenn sie die folgende Verteilungsfunktion besitzt (siehe Abbildung 2.2):


0
F(x) =
x−a
 b−a

1
für x < a
für a 6 x 6 b
für x > b
Die Dichtefunktion f hat folgende Form (siehe Abbildung 2.2):
1
für a 6 x 6 b
f(x) = b−a
0
sonst
2.2. Zufallsvariablen und Verteilungen
19
1
b-a
1
a
b
x
a
(a) Verteilungsfunktion
b
x
(b) Dichtefunktion
Abbildung 2.2: Gleichverteilung
Der Erwartungswert und die Varianz der Gleichverteilung sind:
E[X] =
a+b
2
und
V[X] =
(b − a)2
12
Normalverteilung
Eine weitere wichtige Verteilung ist die Normalverteilung (oder Gauÿ-Verteilung).
Die Dichte der Normalverteilung ist gegeben durch:
(x−µ)
1
· e− ·σ ,
f(x) = √
2·π·σ
2
2
2
x∈R
Der Graph der Dichtefunktion ist als Gauÿ`sche Glockenkurve bekannt (siehe Abbildung 2.3).
Der Maximalwert wird im Punkt x = µ angenommen, wobei µ der Erwartungswert ist. In
x = µ ± σ bendet sich je ein Wendepunkt. Die Varianz σ2 ist daher ein Maÿ für die Breite
der Glockenkurve. Innerhalb des Bereichs ±σ um den Mittelwert µ liegen etwa 65% der
Zufallsvariablen.
f
μ−σ
μ
μ+σ
x
Abbildung 2.3: Dichte der Normalverteilung
Exponentialverteilung
Eine der wichtigsten Verteilungen für die Modellierung und Bewertung von Rechensystemen ist die Exponentialverteilung. Die Dichtefunktion f(x) und die Verteilungsfunktion
F(x) einer Exponentialverteilung mit Parameter µ sind gegeben durch:
f(x) = µ · e−µ·x
F(x) = 1 − e−µ·x
∀x > 0
20
Kapitel 2. Stochastik für die Leistungsbewertung
Der Erwartungswert und die Varianz der Exponentialverteilung sind gegeben durch:
E[X] =
1
µ
und
V[X] =
1
µ2
2.3 Verteilungen mit Memoryless-Eigenschaft
Die Memoryless-Eigenschaft, Gedächtnislosigkeit, spielt in der Modellierung und Bewertung eine sehr wichtige Rolle. Prozesse mit dieser Eigenschaft sind leicht berechenbar
und analysierbar.
Denition: Verteilung mit Memoryless-Eigenschaft
Sei A(t) = P(X 6 t) eine Verteilungsfunktion. Die Verteilungsfunktion A(t) heiÿt memoryless
genau dann, wenn folgendes gilt:
P(X > t + s|X > t) = P(X > s|X > 0)
Die Memoryless-Eigenschaft sagt also für eine Verteilung aus, dass die Wahrscheinlichkeit
für das Eintreten eines Ereignisses nur von dem aktuellen Zeitpunkt abhängt und nicht
von den Ereignissen in der Vergangenheit.
Beispiel: Memoryless-Eigenschaft
Die Memoryless-Eigenschaft bewirkt, dass etwa bei einem Ankunftsprozess, der einer Verteilung
mit dieser Eigenschaft unterliegt, die Zeit bis zur Ankunft des nächsten Kunden nicht davon
abhängt, wie lange seit dem letzten Kunden bereits gewartet wurde.
P(Restwartezeit bis zum nächsten Ereignis 6 t) = P(Wartezeit bis nächstes Ereignis 6 t)
Exponentialverteilung
Die Exponentialverteilung besitzt die Memoryless-Eigenschaft, und sie ist die einzige
kontinuierliche Verteilung mit dieser Eigenschaft.
Nachweis der Gedächtnislosigkeit für die Exponentialverteilung:
P(X > t + s | X > t) =
P(X > t + s ∧ X > t)
P(X > t)
e−λ·(t+s)
= e−λ·s
e−λ·t
= P(X > s)
=
Sei umgekehrt u(s) = P(X > s) dann folgt
2.4. Erzeugende Funktionen und Laplace-Transformation
u(t + s) = P(X > t + s)
= P(X > t + s | X > t) · P(X > t)
= P(X > s) · P(X > t)
= u(s) · u(t)
Die einzige Lösung der Funktionalgleichung u(t + s) = u(t) · u(s) ist u(t) = e−λ·t .
Geometrische Verteilung
Das diskrete Analogon zur Exponentialverteilung ist die geometrische Verteilung.
Beispiel: Würfeln bis eine bestimmte Augenzahl fällt
Die Anzahl der Würfe mit einem fairen Würfel, bis zum ersten Mal die 3 fällt, ist z.B. geometrisch
verteilt mit Parameter p = 1/6.
Die Wahrscheinlichkeit, dass man k Würfe bis zur ersten 3 benötigt, ist also gegeben durch:
P(Wurfanzahl = k) = qk−1 · p =
k−1
5
1
·
6
6
Die Wahrscheinlichkeit, dass mehr als k Würfe benötigt werden, ergibt sich zu:
P(Wurfanzahl > k) = qk−1
Damit ist:
P(noch mind. j weitere Würfe | bereits i erfolglose)
qi+j−1
= P(Wurfanzahl > i + j | Wurfanzahl > i + 1) =
qi
j−1
= q
= P(Wurfanzahl > j)
Das bedeutet, die unter dem Ereignis mind. i + 1 Würfe bedingte Verteilung des Ereignisses
noch j weitere Würfe führt genau auf die Ursprungsverteilung P(Wurfzahl > j). Diese Eigenschaft gilt im diskreten Fall nur für die geometrische Verteilung.
2.4 Erzeugende Funktionen und Laplace-Transformation
Die Bestimmung von Mittelwert, Varianz und höheren Momenten einer Zufallsvariablen
ist rechnerisch aufwendig. Eine Möglichkeit, diese Schwierigkeiten zu umgehen, ist die
Benutzung von Transformationen. Eine Transformation liefert eine andere Möglichkeit zur
Beschreibung von Zufallsvariablen und legt ihre Wahrscheinlichkeits- bzw. Dichtefunktion
eindeutig fest. Haben zwei Zufallsvariablen die gleiche Transformierte, dann besitzen sie
auch die gleiche Verteilungsfunktion.
Die Prozedur bei der Verwendung einer Transformation sieht im Allgemeinen wie folgt aus:
• Transformation aus dem Zeit- in den Bildbereich
• Algebraische Lösung im Bildbereich
• Rücktransformation aus dem Bild- in den Zeitbereich
21
22
Kapitel 2. Stochastik für die Leistungsbewertung
Der Bildbereich zeichnet sich insbesondere dadurch aus, dass algebraische Berechnungen
einfacher durchzuführen sind als im Zeitbereich.
Beispiel: Transformation als Hilfsmittel bei Berechnungen
Das Prinzip der Transformation ist analog zur früher üblichen Nutzung von Logarithmentafeln
bei der Multiplikation zweier Zahlen:
• Transformation der Faktoren in ihre Logarithmen
• Addition der Logarithmen durchführen
• Rücktransformation des Logarithmus des Resultats
Da man zwischen diskreten und kontinuierlichen Zufallsvariablen unterscheidet, nden auch
zwei verschiedene Transformationsmethoden Anwendung. Die erzeugenden Funktionen für
diskrete Zufallsvariablen und die Laplace-Transformation für kontiniuerliche Zufallsvariablen.
Erzeugende Funktionen
Sei X eine diskrete Zufallsvariable über den natürlichen Zahlen mit Dichte fX (k) = P(X =
k) = pk . Die Potenzreihe GX : [0, 1] → R mit
GX (z) = E[zX ] =
∞
X
pk · zk
für |z| 6 1
k=0
heiÿt wahrscheinlichkeitserzeugende Funktion oder erzeugende Funktion
P(EF) der Zufallsvariablen X. Der obige Ausdruck ist wohldeniert, da 0 6 pk 6 1 und
pk = 1.
Die erzeugende Funktion besitzt u.a. folgende Eigenschaften:
a) Die Abbildung X → GX ist injektiv.
Zur Bestimmung der Einpunktwahrscheinlichkeiten pk aus GX berechnet man die
k-te Ableitung an der Stelle 0:
pk = P(X = k) =
1
(k)
· GX (0)
k!
b) Faltung (Addition stochastisch unabhängiger Zufallsvariablen): X1 , . . . , Xn seien stochastisch unabhängige Zufallsvariablen. Dann gilt:
GX
1
+...+Xn (z) =
n
Y
GXi (z)
i=1
c) Berechnung von Erwartungswert und Varianz:
0
E[X] = GX
(1)
00
0
E[X2 ] = GX
(1) + GX
(1)
00
0
0
V[X] = GX
(1) + GX
(1) − [GX
(1)]2
2.4. Erzeugende Funktionen und Laplace-Transformation
23
Beispiel: Berechnung des Erwartungswerts mit erzeugenden Funktionen
Gegeben sei die folgende diskrete Wahrscheinlichkeitsverteilung X:
xi
pi := P(X = xi )
1
1/6
2
1/6
3
3/6
4
1/6
Wir berechnen zunächst den Erwartungswert auf die normale Art:
E[X] =
4
X
xi · P(X = xi ) = 1 ·
i=1
1
3
1
16
1
+2· +3· +4· =
6
6
6
6
6
Nun berechnen wir den Erwartungswert mit Hilfe der erzeugenden Funktion. Zunächst berechnen
wir die erzeugende Funktion G(z):
4
X
G(z) =
pk · zk
k=1
1
1
3
1
· z + · z2 + · z3 + · z4
6
6
6
6
=
Um den Erwartungswert zu berechnen, müssen wir die erste Ableitung G 0 (z) bilden:
G 0 (z) =
1 2
9
4
+ · z + · z2 + · z3
6 6
6
6
Der Erwartungswert ergibt sich zu:
E[X] = G 0 (1) =
1 2
9
4
16
+ ·1+ ·1+ ·1=
6 6
6
6
6
Laplace-Transformation
Die Laplace-Transformation wird für die Berechnung der Wahrscheinlichkeits- bzw. Dichtefunktion von kontinuierlichen Zufallsvariablen benutzt und ist wie folgt deniert.
X sei eine kontinuierliche Zufallsvariable mit Dichtefunktion fX (x) über der positiven reellen
Achse, d.h. es gelte fX (x) = 0 für alle x < 0.
Die Funktion:
∞
Z
e−s·x · fX (x) · dx für s > 0
LX (s) =
0
heiÿt Laplace-Transformierte der Zufallsvariablen X.
Eigenschaften der Laplace-Transformation:
a) Die Abbildung X → LX ist injektiv: Falls LX (s) = LY (s), so gilt X = Y .
b) Faltung: LX+Y (s) = LX (s) · LY (s) für stochastisch unabhängige Zufallsvariablen X
und Y .
c) Berechnung von Erwartungswert und Varianz (auch höhere Momente können mittels
der Transformation berechnet werden):
0
E[X] = −LX
(0)
und
00
0
V[X] = LX
(0) − [LX
(0)]2
24
Kapitel 2. Stochastik für die Leistungsbewertung
Beispiel: Laplace-Transformierte der Exponentialverteilung
Die Dichte einer exponentialverteilten Zufallsvariable X ist gegeben durch:
fX (x) = µ · e−µ·x
Der Erwartungswert der Zufallsvariablen X ist dann:
E[X] =
1
µ
Wir berechnen nun den Erwartungswert der Zufallsvariablen X mit der Laplace-Transformation.
Dazu berechnen wir zuerst die Laplace-Transformierte LX (s):
Z∞
Z∞
LX (s) =
e−s·x · fX (x)dx =
e−s·x · µ · e−µ·x dx
0
0
Z∞
= µ
e−x·(s+µ) dx
0
= µ·
1
s+µ
Für den Erwartungswert benötigen wir die erste Ableitung:
LX0 (s) = µ ·
−1
(s + µ)2
Durch die oben angegebene Beziehung erhalten wir für den Erwartungswert der Zufallsvariablen
schlieÿlich wieder das Bekannte:
E[X] = −LX0 (0) = −µ ·
−1
1
=
µ2
µ
KAPITEL 3
Stochastische Prozesse
Die Modellierung und Leistungsbewertung von Systemen geschieht im Allgemeinen über
die Betrachtung des Systemverhaltens über die Zeit. Zufallsprozesse erlauben eine sinnvolle
Modellierung und Analyse des Systemverhaltens. In diesem Kapitel werden stochastische
Prozesse, Poissonprozesse, Markov-Prozesse und Markov-Ketten vorgestellt.
3.1 Stochastische Prozesse
Ein stochastischer Prozess ist ein sich zeitlich verändernder Zufallsprozess.
Denition: Stochastischer Prozess
Ein stochastischer Prozess ist eine Menge von Zufallsvariablen {X(t) | t ∈ T } über die Zeit T . Für
jedes t bildet X(t) eine Zufallsvariable.
Alle Zufallsvariablen sind über einem gemeinsamen Wertebereich S (State = Zustand) deniert. Der Indexbereich T wird oft als eine Menge von einzelnen Zeitpunkten interpretiert.
Falls T abzählbar ist, handelt es sich um einen zeitdiskret-stochastischen Prozess. Falls
T ein Intervall aus dem Bereich der reellen Zahlen ist, spricht man von zeitkontinuierlichstochastischen Prozessen. X(t) ∈ S gibt den Zustand des Prozesses zum Zeitpunkt
t an. Abbildung 3.1 stellt die möglichen Kombinationen von Index- und Wertebereichen
für Prozesse grasch dar.
Beispiel: Kunden im Supermarkt
Die Anzahl der Kunden in einem Supermarkt ist ein stochastischer Prozess. Der Prozess ist
abhängig vom Ankunftsverhalten der Kunden im Supermarkt und dem Bedienverhalten an den
verschiedenen Theken und Kassen.
3.2 Poissonprozesse
Ein Poissonprozess ist ein stochastischer Prozess, der Ereignisse in einem gegebenen
Zeitintervall zählt. Die Anzahl n der auftretenden Ereignisse ist bei einem Poissonprozess proportional zur Länge des Intervalls t und zur Intensität λ, mit der die Ereignisse
auftreten.
25
26
Kapitel 3. Stochastische Prozesse
S
S
T
T
a)
b)
S
S
T
c)
T
d)
Abbildung 3.1: Klassikation von Prozessen: a) zustandskontinuierlich, zeitkontinuierlich,
b) zustandsdiskret, zeitkontinuierlich, c) zustandskontinuierlich, zeitdiskret, d) zustandsdiskret, zeitdiskret
Denition: Poissonprozess
Ein Prozess, bei dem Ereignisse mit Rate λ auftreten, heiÿt Poissonprozess. Für Poissonprozesse
gelten die folgenden Eigenschaften.
(1) P(ein Ereignis tritt im Intervall der Länge ∆t auf) = λ · ∆t + o(∆t)
(2) P(mehr als ein Ereignis tritt im Intervall der Länge ∆t auf) = o(∆t)
o(∆t) ist ein Störterm, der von der Länge des Intervalls abhängt und sowohl positiv als
auch negativ sein kann. Damit sind gleichzeitige Ereignisse ausgeschlossen, da mit ∆t → 0
auch o(∆t) → 0 geht, sogar schneller als ∆t.
Aus (1) und (2) ergibt sich:
(3) P(kein Ereignis tritt im Intervall der Länge ∆t auf) = 1 − λ · ∆t + o(∆t)
Satz: Poissonverteilung
Sei Pn (t) = P(n Ankünfte im Intervall [0, t]). Mit der Denition P0 (0) := 1 gilt:
Pn (t) =
(λ · t)n −λ·t
·e
n!
(3.1)
Beweis: Poissonverteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Das Intervall [0, t] wird in m gleichgroÿe, disjunkte Teilintervalle (m > n) aufgeteilt.
Entweder tritt in n der m Teilintervalle jeweils ein Ereignis und in den verbleibenden
(m − n) Intervallen kein Ereignis auf, oder es gibt einige Intervalle mit mehr als einem
3.2. Poissonprozesse
27
a (t) bzw. P b (t) die Wahrscheinlichkeiten für die erwähnten Fälle. Es gilt
Ereignis. Seien Pn
n
damit für Pn (t):
a
b
Pn (t) = Pn
(t) + Pn
(t)
Es werden nun die n Teilintervalle ausgewählt, in denen je ein Ereignis auftritt. Es gilt
dann:
P(in n Intervallen je ein Ereignis und in (m − n) Intervallen kein Ereignis)
n m−n
t
t
t
t
+o
· 1−λ·
+o
= λ·
m
m
m
m
Man kann die n Intervalle auf m
n Arten auswählen. Damit ergibt sich:
a
Pn
(t)
n m−n
m
t
t
t
t
· 1−λ·
=
· λ·
+o
+o
n
m
m
m
m
für m → ∞ erhält man
(λ · t)n −λ·t
=
·e
n!
Da Pn (t) eine Wahrscheinlichkeitsverteilung ist, muss sie der Normierungsbedingung
1 genügen. Da Pn (t) aus den beiden Fällen zusammengesetzt ist, folgt also:
∞
X
n=0
Pn (t) =
∞
X
a
Pn
(t) +
n=0
= e−λ·t ·
∞
X
n=0
∞
X
= 1+
n=0 Pn (t)
b
Pn
(t)
n=0
∞
(λ · t)n X b
+
Pn (t)
n!
= e−λ·t · eλ·t +
∞
X
P∞
∞
X
n=0
b
Pn
(t)
n=0
!
b
Pn
(t) = 1
n=0
P∞
b
b
b
Es ist also
n=0 Pn (t) = 0 und mit Pn (t) > 0 folgt Pn (t) = 0. Pn (t) ist damit eine
Poissonverteilung mit Parameter λ · t. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die Poissonverteilung ist faltungsstabil, d.h.:
• Die Überlagerung zweier Poissonprozesse mit Parametern λ1 und λ2 führt auf einen
Poissonprozess mit Parameter λ1 + λ2 .
• Die Aufspaltung eines Poisson-λ-Prozesses mittels eines Bernoulli-Experiments mit
Parameter p liefert zwei Poissonprozesse mit Parametern λ · p bzw. λ · (1 − p).
Zusammenhang zwischen Poisson- und Exponentialverteilung
Treten Ereignisse gemäÿ eines Poissonprozesses mit Parameter λ auf, ist also gemäÿ Gleichung (3.1) die Anzahl der Ereignisse in einem Intervall der Länge t poissonverteilt mit
=
28
Kapitel 3. Stochastische Prozesse
Parameter λ · t, so sind die Zwischenankunftszeiten dieser Ereignisse exponentialverteilt
mit Parameter λ und umgekehrt.
Beweis: Zusammenhang zwischen Poisson- und Exponentialverteilung . . . . . . . . . . . . . . . . . . .
⇒: Gegeben sei ein Poissonprozess, dann gilt für die Wahrscheinlichkeit, dass im Intervall
[0 : t] kein Ereignis auftritt P0 (t) = e−λt = P(T > t). Also ist P(T 6 t) = 1 − e−λt ; dies ist
gerade die Exponentialverteilung.
⇐:
P(> 1 Ereignis im Intervall [t : t + h]) = P(T 6 h)
= 1 − e−λh
−λh
= 1− 1+
+ ···
1!
= λh + o(h)
P(0 Ereignisse im Intervall [t : t + h]) = P(T > h)
= 1 − λh + o(h)
P(> 2 Ereignisse im Intervall [t : t + h]) = P(T1 6 h ∧ T2 6 h)
= P(T1 6 h) · P(T2 6 h)
= (λh) · (λh) + o(h) = o(h)
Diese Eigenschaften hat nach Denition gerade ein Poissonprozess. . . . . . . . . . . . . . . . . . . 3.3 Markov-Prozesse und Markov-Ketten
Markov-Prozesse sind eine Verallgemeinerung der Poissonprozesse. Ein Markov-Prozess
ist ein stochastischer Prozess, bei dem die zukünftige Verteilung der Zufallsvariablen nur
vom aktuellen Zustand abhängt, jedoch nicht davon, wie dieser Zustand erreicht wurde.
Denition: Markov-Prozess
Ein stochastischer Prozess X(t) heiÿt Markov-Prozess, wenn gilt:
P(X(t) = x|X(tn ) = xn , . . . , X(t0 ) = x0 ) = P(X(t) = x|X(tn ) = xn )
für alle Folgen von Zeitpunkten t0 < t1 < · · · < tn < t
Der Wertebereich von X wird Zustandsraum S genannt; er kann diskret oder kontinuierlich sein. Auÿerdem können die Werte des Indexbereiches T diskret oder kontinuierlich
sein.
3.3.1 Markov-Prozesse
In diesem Abschnitt betrachten wir Markov-Prozesse mit kontinuierlichem Indexbereich
und diskretem Zustandsraum (siehe Abbildung 3.2).
Ein Markov-Prozess mit n Zuständen kann durch seine so genannte Generatormatrix Q =
(qi,j ) beschrieben werden.

q1,1
 ..
Q= .
qn,1

. . . q1,n
.. 
..
.
. 
. . . qn,n
3.3. Markov-Prozesse und Markov-Ketten
29
Abbildung 3.2: Prozess mit kontiniuerlichem Indexbereich und diskretem Zustandsraum
Der Prozess bende sich zum Zeitpunkt t im Zustand i. Er wird durch die folgenden
Gleichungen eindeutig charakterisiert:
P (X(t + ∆t) = j | X(t) = i) = qi,j · ∆t + o(∆t),
(3.2)
i 6= j
Die Gleichung (3.2) sagt aus, dass der Prozess mit Rate qi,j von Zustand i in Zustand j
wechselt. o(∆t) ist hierbei ein Störterm, der schneller als ∆t gegen Null geht.
Die Diagonalelemente qi,i der Generatormatrix Q sind deniert durch:
n
X
qi,i := −
(3.3)
qi,j
j=1; j6=i
qi,i gibt die Rate an, mit welcher der Zustand i verlassen wird. Zu beachten ist hier, dass
sich die Zeilen von Q zu Null aufsummieren. Einige Autoren bezeichnen qi,i auch als qi .
Die Wahrscheinlichkeit, dass sich der Prozess zum Zeitpunkt t im Zustand k bendet, wird
mit pk (t) bezeichnet. Die Verteilung der Zustände nach einem Zeitintervall ∆t ist dann:

pk (t + ∆t) = pk (t) · 1 −
n
X
j=1; j6=k


qk,j · ∆t + 
n
X

qi,k · pi (t) · ∆t + o(∆t) (3.4)
i=1; i6=k
Die erste Summe steht für zur Zeit t im Zustand k und kein Wechsel, die zweite Summe steht für zur Zeit t im Zustand i und es erfolgt ein Wechsel von i nach k. Aus
Gleichung (3.3) und Gleichung (3.4) ergibt sich die Verteilung der Zustände nach einem
30
Kapitel 3. Stochastische Prozesse
Zeitintervall ∆t wie folgt:


n
X
pk (t + ∆t) = pk (t) · 1 −

qk,j · ∆t + 
j=1; j6=k
qk,j + 
j=1; j6=k
|
qi,k · pi (t) · ∆t + o(∆t)
i=1; i6=k

n
X
= pk (t) − pk (t) · ∆t

n
X
{z
n
X

qi,k · pi (t) · ∆t + o(∆t)
i=1; i6=k
}
−qk,k

= pk (t) + pk (t) · ∆t · qk,k + 
n
X

qi,k · pi (t) · ∆t + o(∆t)
i=1; i6=k
pk (t + ∆t) = pk (t) +
n
X
!
qi,k · pi (t)
· ∆t + o(∆t)
i=1
pk (t + ∆t) − pk (t) =
pk (t + ∆t) − pk (t)
∆t
=
n
X
i=1
n
X
!
qi,k · pi (t)
· ∆t + o(∆t)
!
qi,k · pi (t)
+
i=1
o(∆t)
∆t
Mit dem Grenzübergang ∆t → 0 erhält man:
pk (t + ∆t) − pk (t) X
= lim
=
qi,k · pi (t)
t→0
∆t
n
pk0 (t)
i=1
Mit der Notation p(t) = (p1 (t), p2 (t), . . . , pn (t)) kann der letzte Ausdruck auch in Matrixschreibweise dargestellt werden:
pk0 (t) = p(t) · Q
(3.5)
Die Gleichung (3.5) erlaubt die Berechnung der Wahrscheinlichkeitsverteilung zu einem
bestimmten Zeitpunkt t. Für die Leistungsbewertung ist man oft an Gleichgewichtsverteilungen interessiert, die gegeben sind, wenn sich der Prozess im stationären Zustand
bendet.
3.3.2 Stationarität von Prozessen
Eine entscheidende Rolle bei der Analyse von Wartesystemen kommt dem Begri der
Stationarität zu.
Beispiel: Flüssigkeit in einem Gefäÿ
Der Begri der Stationarität kann am Beispiel eines Gefäÿes veranschaulicht werden, in das zu
jedem Zeitpunkt soviel Wasser einieÿt wie abieÿt. Die Flüssigkeitsmenge im Gefäÿ bleibt also
konstant.
Ein mathematischer Prozess bendet sich im stationären Zustand, wenn ein zufälliger
Beobachter zu jedem Zeitpunkt dieselbe Zustandsverteilung, z.B. bezüglich der Anzahl der
Kunden in einem Wartesystem, antrit. Dies bedeutet, dass die Wahrscheinlichkeit für
3.3. Markov-Prozesse und Markov-Ketten
31
einen bestimmten Prozesszustand zeitunabhängig ist, also Einschwingvorgänge des Prozesses abgeschlossen sind. Damit ist die zeitliche Dynamik eines Systems aufgelöst, was die
mathematische Analyse vereinfacht und oft erst ermöglicht.
Die Gleichgewichtswahrscheinlichkeit πk eines Zustandes k ergibt sich durch die Betrachtung des Prozesses über eine sehr lange Zeit, also durch den Grenzübergang t → ∞:
πk = lim pk (t)
t→∞
Die stationäre Wahrscheinlichkeit πk ist nun nicht mehr von der Zeit t abhängig.
Wenn bei einem Markov-Prozess ein stationärer Zustand erreicht wird, muss
pk0 (t) = 0 und damit auch π · Q = 0
Die Verteilung im stationären Zustand ist durch den Vektor π = (π1 , . . . , πn ) gegeben.
Um die stationäre Verteilung zu erhalten, reicht es aus, das folgende Gleichungssystem zu
lösen:
n
X
π · Q = 0 mit der Normierungsbedingung
πi = 1
i=1
3.3.3 Graphische Darstellung von Markov-Prozessen
Ein Markov-Prozess kann durch seinen Intensitätsgraph dargestellt werden. Die Knoten
des Intensitätsgraphen stellen die Zustände des Markov-Prozesses und die gewichteten
Kanten die Übergangsraten pro Zeiteinheit zwischen den einzelnen Zuständen dar (siehe
Abbildung 3.3).
q1,n
q2,n
q1,2
1
2
q2,1
. . .
n
qn,2
qn,1
Abbildung 3.3: Intensitätsgraph eines Markov-Prozesses mit n Zuständen
3.3.4 Lokales und globales Gleichgewicht
Einige Markov-Prozesse besitzen die so genannte Local-Balance-Eigenschaft (lokales
Gleichgewicht). Diese sagt aus, dass der Fluss von Zustand i nach Zustand j, d.h. das
Produkt aus Übergangsrate qi,j und Gleichgewichtszustandswahrscheinlichkeit πi , dem
Fluss von Zustand j nach Zustand i entspricht:
πi · qi,j = πj · qj,i
∀ Zustände i, j
(3.6)
Aus diesem System von lokalen Flussgleichungen kann oft auf sehr einfache Weise eine
Lösung für die Zustandswahrscheinlichkeiten πi ermittelt werden.
32
Kapitel 3. Stochastische Prozesse
Summiert man Gleichung (3.6) über alle Zustände j 6= i, erhält man Gleichung (3.7):
n
X
πi
qi,j =
j=1; j6=i
|
{z
}
n
X
(3.7)
πj · qj,i
j=1; j6=i
−qi,i
Diese Gleichungen heiÿen globale Flussgleichungen und ein Markov-Prozess, der diese
Gleichungen erfüllt, besitzt die Global-Balance-Eigenschaft. Sie ist notwendig und hinreichend für die Existenz eines stationären Zustands. Bemerkenswert ist, dass die Erfüllung
der lokalen Flussgleichungen (3.6) wegen der gerade gezeigten Beziehung (3.7) ebenfalls
hinreichend für die Existenz eines stationären Zustands ist und dass diese viel einfacher
ausgewertet werden können. Leider erfüllen nur relativ wenige Markov-Prozesse die lokalen
Flussgleichungen.
3.4 Markov-Ketten
In diesem Abschnitt betrachten wir Markov-Prozesse mit diskretem Indexbereich und diskretem Zustandsraum (siehe Abbildung 3.4).
Abbildung 3.4: Prozess mit diskretem Index- und Zustandsraum
Denition: Markov-Kette
Ein Markov-Prozess mit diskretem Zustandsraum und Indexbereich wird
nannt. Für Markov-Ketten gilt:
Markov-Kette
P(Xn+1 = m|Xn = xn , Xn−1 = xn−1 , . . . , X0 = x0 ) = P(Xn+1 = m|Xn = xn )
ge-
(3.8)
Das bedeutet also, dass die Wahrscheinlichkeit für den nächsten Zustand Xn+1 nur vom aktuellen
Zustand Xn abhängt. Diese Wahrscheinlichkeiten können vom Zeitpunkt n abhängen.
Die rechte Seite der Gleichung (3.8) gibt die Übergangswahrscheinlichkeiten der MarkovKette an. Sie kann auch wie folgt angegeben werden:
pi,j (s, t) := P(X(t) = j|X(s) = i),
t>s
(3.9)
pi,j (s, t) ist die bedingte Wahrscheinlichkeit, dass sich der Prozess zum Zeitpunkt t im
Zustand j bendet, wenn er zum Zeitpunkt s in Zustand i war.
3.4. Markov-Ketten
33
Denition: Homogene Markov-Kette
Hängen die Übergangswahrscheinlichkeiten in einer Markov-Kettte nur von der Zeitdierenz τ =
(t − s) und nicht vom Zeitpunkt t ab, ist die Markov-Kette homogen und Gleichung (3.9) kann
folgendermaÿen geschrieben werden:
P(X(t) = j|X(s) = i) = P(X(s + τ) = j|X(s) = i)
= P(X(τ) = j|X(0) = i)
= pi,j (τ)
Homogene Markov-Ketten besitzen einige interessante Eigenschaften:
• Die Übergangswahrscheinlichkeit zwischen zwei Zuständen ist gröÿer oder gleich Null:
pi,j (τ) > 0,
∀i, j ∈ S
• Die Zeilen der Übergangsmatrix summieren sich zu 1:
n
X
pi,j (τ) = 1 ∀i ∈ S
j=1
• Aufsummierung der Übergangswahrscheinlichkeiten:
pi,j (τ) =
∞
X
pi,k (τ − υ) · pk,j (υ),
∀i, j ∈ S
(3.10)
k=0
Die Gleichung (3.10) ist unter dem Namen Chapman-Kolmogorov-Gleichung für homogene Markov-Ketten bekannt. Sie sagt aus, dass die τ-Schritt-Übergangswahrscheinlichkeiten von Zustand i in Zustand j berechnet werden können, indem man über alle erreichbaren Zwischenzustände k summiert.
Die Wahrscheinlichkeit, in einem Schritt von Zustand i in Zustand j zu wechseln, ist gegeben durch:
(1)
pi,j = pi,j = P(Xm+1 = j|Xm = i)
Die Verallgemeinerung, nämlich die Wahrscheinlichkeit, in n Schritten von Zustand i in
Zustand j zu wechseln, ist gegeben durch:
(n)
pi,j = P(Xm+n = j|Xm = i)
Die Übergangswahrscheinlichkeiten können auch aufsummiert werden, so dass die Wahrscheinlichkeit, in (n + m) Schritten von Zustand i in Zustand j zu wechseln, gegeben ist
durch:
∞
X
(n+m)
(n) (m)
pi,j
=
pi,k pk,j
k=0
Die Einschrittwahrscheinlichkeiten pi,j können als Matrix P = (pi,j ) geschrieben werden.
Die Matrix P ist eine stochastische Matrix, d.h. die Zeilen summieren sich zu 1.
Beispiel: Betriebssystem als Markov-Kette
In der folgenden Abbildung ist ein Modell für die Zustandsübergänge eines Multitasking-Systems
34
Kapitel 3. Stochastische Prozesse
dargestellt. Prozesse belegen die CPU (Zustand 1), warten auf die CPU (Zustand 2), oder sind
aufgrund einer E/A-Anforderung blockiert (Zustand 3).
"running"
1-p
"ready"
1
2
1
p
q
3
"blocked"
1-q
Ist das System getaktet (etwa in Prozessor-Zyklen), kann man es als Markov-Kette wie folgt
modellieren.
Die
Übergangsmatrix
P der Markov-Kette ist wie folgt gegeben:
P = (pi,j )16i,j63

0
= 1
0

1−p
p
0
0 
q
1−q
Diese Übergangsmatrix ist nicht vom aktuellen Zeitpunkt abhängig, es handelt sich also um
eine homogene Markov-Kette. Wesentlich für Markov-Ketten ist, dass Zustandsübergänge nur
vom aktuellen Zustand abhängen und nicht von der Vergangenheit. Dies bedeutet, dass etwa
das zukünftige Verhalten eines Prozesses, der sich aktuell im Zustand 2 bendet, nicht davon
abhängt, ob er davor in Zustand 1 oder Zustand 3 war.
P(X(5) = running|X(0) = ready) =
=
=
=
(5)
p2,1
p2,1 p1,2 p2,1 p1,2 p2,1 + p2,1 p1,3 p3,3 p3,2 p2,1
1 · (1 − p) · 1 · (1 − p) · 1 + 1 · p · (1 − q) · q · 1
(1 − p)2 + p · q · (1 − q)
3.4.1 Zustandsklassikation von Markov-Ketten
Die Zustände von Markov-Ketten können unterschiedliche Eigenschaften aufweisen, wodurch eine Klassikation möglich ist. Im Folgenden betrachten wir Zustände i, j und die
(n)
Wahrscheinlichkeit pi,j .
Damit ergeben sich folgende Charakterisierungen:
• Der Zustand j ist von i aus erreichbar, wenn pi,j > 0 für ein beliebiges n ist.
(n)
• Falls j von i und i von j erreichbar ist, so kommunizieren i und j miteinander.
Zustände, die kommunizieren, bilden eine Äquivalenzklasse.
• Wenn alle Zustände einer Markov-Kette zu derselben Äquivalenzklasse gehören, so
ist die Markov-Kette irreduzibel.
3.4. Markov-Ketten
35
• Ein Zustand i hat die Periode d als d(i) bezeichnet genau dann, wenn
(d)
(k)
pi,i > 0 und pi,i = 0 mit k = 1, 2, . . . , d − 1
Ist d(i) > 1, so wird der Zustand i periodisch mit Periode d(i) genannt. Ist jedoch
d(i) = 1 wird der Zustand i als aperiodisch bezeichnet.
Die Zustände einer Äquivalenzklasse haben alle die gleiche Periode. Gibt es nur eine
Äquivalenzklasse, heiÿt die MarkovKette periodisch mit Periode d. Ist d gleich 1
heiÿt die MarkovKette aperiodisch.
Beispiel: Betriebssystem als Markov-Kette (Fortsetzung)
Im obigen Beispiel ergibt sich für p = q = 1 die Periode d = 3. Ist p = 0, dann ist
d(1) = d(2) = 2.
• Ein Zustand heiÿt rekurrent, falls er mit Wahrscheinlichkeit 1 wieder irgendwann
erreicht wird.
• Falls ein Zustand mit einer Wahrscheinlichkeit kleiner 1 wieder erreicht wird, nennt
man ihn transient.
• Rekurrente Zustände werden unterschieden in
positiv-rekurrente Zustände: die erwartete Anzahl von Schritten, um den
Zustand wieder zu erreichen, ist endlich
null-rekurrente Zustände: die erwartete Anzahl von Schritten, um den Zustand wieder zu erreichen, ist unendlich
• Eine ergodische Markov-Kette ist eine irreduzible, aperiodische und positivrekurrente MarkovKette.
3.4.2 Stationäre Verteilung von Markov-Ketten
Eine Wahrscheinlichkeitsverteilung π = (π1 , π2 , . . . , πn ) heiÿt stationäre Verteilung der
MarkovKette, falls folgende Bedingung erfüllt ist:
π·P =π
P bezeichnet die Übergangsmatrix der MarkovKette, πi ist die stationäre Wahrscheinlichkeit, dass der Prozess in Zustand i ist. Stationarität sagt also aus, dass sich im nächsten
Schritt (Multiplikation der aktuellen Verteilung mit P) nichts an der Verteilung ändert.
Falls existent, gilt für πi :
πi = lim P(Xn = i)
n→∞
Satz: Eigenschaften von irreduziblen und aperiodischen MarkovKetten
Für irreduzible und aperiodische Markov-Ketten gilt:
a) Die stationären Zustandswahrscheinlichkeiten πi existieren und sind unabhängig von der
Startverteilung X0 .
b) Entweder sind
(b1 ) alle Zustände transient oder null-rekurrent. In diesem Fall ist πi = 0 für alle i, d.h.,
36
Kapitel 3. Stochastische Prozesse
es gibt keine stationäre Verteilung.
(b2 ) alle Zustände sind ergodisch. In diesem Fall ist πi > 0 für alle i.
πi =
1
< ∞ und
mittlere Rückkehrzeit in Zustand i
∞
X
πi = 1
i=0
wobei man die πi als eindeutige Lösung des folgenden Gleichungssystems erhält:
π=π·P
⇐⇒
πj =
∞
X
πi · pi,j
für alle j
(3.11)
i=0
c) Wenn die Markov-Kette nur endlich viele Zustände hat, gilt (b2 ), d.h., die stationäre Verteilung existiert immer.
Beispiel: Betriebssystem als Markov-Kette (Fortsetzung)
Falls p = 0, ist Zustand 3 unerreichbar. Falls p > 0, aber q = 0, sind die Zustände 1 und 2 von
Zustand 3 aus nicht erreichbar. In beiden Fällen ist die Matrix nicht irreduzibel. Im zweiten Fall
sind die Zustände 1 und 2 null-rekurrent.
Falls p > 0 und q > 0, sind alle Zustände erreichbar und kommunizieren miteinander. Damit ist
die Kette irreduzibel. Die Markov-Kette ist aperiodisch, und alle Zustände sind positiv-rekurrent.
Die stationäre Verteilung existiert und kann wie folgt berechnet werden.
Nach Gleichung (3.11) gilt:

0
(π1 , π2 , π3 ) = (π1 , π2 , π3 ) · 1
0

1−p
p
0
0 
q
1−q
und
π1 + π2 + π3 = 1
Hieraus ergibt sich die Lösung durch einfache Umformungen und Vereinfachungen zu:
π1
= π2 =
π3
=
q
2·q+p
p
2·q+p
KAPITEL 4
Wartesysteme
In diesem Kapitel werden Wartesysteme vorgestellt und Verfahren zu ihrer Analyse diskutiert. Wartesysteme kommen in der realen Welt sehr häug vor, z.B. im Supermarkt
an der Kasse. Grundsätzlich entsteht eine Warteschlange von Kunden, wenn diese von
einem oder mehreren Bedienern abgearbeitet werden. In Kommunikationssystemen und
Computern gibt es viele Komponenten, die sequenziell eine Menge von Kunden abarbeiten müssen. Synonyme, die oft für Kunde verwendet werden, sind Job und Paket. Oft
benutzte Synonyme für Bediener sind Server und Bedienung.
Beispiel: Wartesysteme
Beispiele für Wartesysteme in Computersystemen sind:
• die Liste aller aktuell auf Abarbeitung wartenden Prozesse
• die Menge der auf den Ausdruck wartenden Druckaufträge
• die Liste der Datenpakete, die auf Übertragung warten
Bei der Analyse solcher Systeme interessiert man sich für die Parameter, die das Verhalten
des Systems oder einer bestimmten Komponente beschreiben. Hierzu gehören die durchschnittliche Anzahl der wartenden Jobs, die durschnittliche Wartezeit bis ein Job bedient
wird und die durschnittliche Zeit, die ein Job im System verbringt.
4.1 Einfache Wartesysteme
Ein Wartesystem besteht aus einem Warteraum, der endlich bzw. unendlich groÿ sein
kann und einer Anzahl von Bedienstationen. Abbildung 4.1 stellt ein Wartesystem graphisch dar. Ein Rechner oder eine Kommunikationsstrecke kann im einfachsten Fall als
eine Black-Box modelliert werden, wobei die Black-Box dann durch ein Wartesystem dargestellt wird.
Das Bedienverhalten des Wartesystems ist abhängig von vielen Faktoren wie Bedieneranzahl und Abarbeitungsstrategie. Die Analyse eines Wartesystems ist abhängig von der
• Charakteristik der Ankünfte (Ankunftsrate λ)
• Charakteristik der Bediener (Bedienrate µ)
37
38
Kapitel 4. Wartesysteme
Abbildung 4.1: Genereller Aufbau eines Wartesystems bestehend aus Ankunftsprozess,
Warteraum und Bedienung. Der Warteraum kann endlich oder unendlich groÿ sein.
Den einfachsten Fall erhält man, indem man exponentialverteilte Zwischenankunftszeiten und Bedienzeiten annimmt. Eine Bedienstation bedient, wann immer sie kann.
4.1.1 Zustand eines Wartesystems
Der Zustand eines Wartesystems zu einem bestimmten Zeitpunkt t ist durch die Anzahl
der Kunden N(t) gegeben, die sich zu diesem Zeitpunkt im Wartesystem benden. Dabei ist
es egal, ob ein Kunde gerade wartet oder bedient wird. Die Zustandswahrscheinlichkeit,
mit der sich das Wartesystem zu einem gegebenen Zeitpunkt t im Zustand k bendet, wird
mit pk (t) bezeichnet und ist gegeben durch:
pk (t) = P(N(t) = k)
4.1.2 Stabilität von Wartesystemen
In realen Systemen ist die Anzahl der Plätze im Warteraum endlich. Deshalb kann es
passieren, dass das System überläuft, wenn mehr Kunden ankommen, als bedient werden
können. In diesem Fall können keine weiteren Kunden mehr angenommen werden. Ein
Wartesystem wird stabil genannt, wenn das Überlaufen des Wartesystems nicht möglich
ist. Dieses Kriterium wird erreicht, wenn die Ankunftsrate λ kleiner ist als die Bedienrate
µ. Dieses Verhältnis wird auch als die Last ρ des Wartesystems bezeichnet und ist gegeben
durch:
λ
ρ=
µ
Für ein stabiles System muss im Allgemeinen ρ < 1 gelten. Eine Ausnahme stellt das
D/D/1 System dar, das auch bei ρ = 1 stabil funktioniert.
4.2. Beschreibung von Wartesystemen Kendallsche Notation
4.2 Beschreibung von Wartesystemen Kendallsche Notation
Die Kendallsche Notation wird für die Beschreibung von beliebigen Wartesystemen
verwendet. Ein Wartesystem ist dabei ein Tupel:
Ankunftsprozess / Bedienprozess / # Bediener / # Warteplätze / Abarbeitungsstrategie
Für die Ankunfts- und Bedienprozesse werden die folgenden Abkürzungen verwendet:
• M: Exponentialverteilung, das M steht für memoryless bzw. markovsch
• D: Deterministische Verteilung, d.h. konstante Zeitintervalle
• G: Allgemeine Verteilung, das G steht für general
• En : Erlang-n-Verteilung
Wenn die Anzahl der Warteplätze fehlt, nimmt man unendlich viele Warteplätze an. Wenn
die Anzahl der Warteplätze K ist, dann benden sich K − 1 Plätze im Warteraum und ein
Platz im Bediener.
Die Abarbeitungsstrategie beschreibt das Abarbeitungsverhalten des Servers auf dem
Warteraum. Oft wird die Abarbeitungsstrategie nicht angegeben, dann wird implizit FIFO
angenommen. Die häugsten Abarbeitungsstrategien sind:
• First-In-First-Out (FIFO): Die Kunden werden in der Reihe ihrer Ankunft bedient.
• Last-In-First-Out (LIFO): Der zuletzt angekommene Kunde wird als nächstes bedient.
• Round-Robin (RR): Die Kunden werden prinzipiell nach FIFO abgearbeitet, jedoch
bekommt jeder Kunde eine bestimmte Bearbeitungszeit. Wenn der Kunde innerhalb
dieser nicht zu Ende bedient werden konnte, wird er erneut in den Warteraum gesetzt.
Der Bediener merkt sich die Position der Abarbeitung und beginnt beim nächsten
mal an dieser Stelle.
• Service-In-Random-Order (SIRO): Die Kunden werden zufällig ausgewählt und bedient.
• Shortest-Processing-Time (SPT): Der Kunde mit der kürzesten Bedienzeit wird als
nächstes bedient.
Beispiel: Wartesysteme
M/M/1: beschreibt ein Wartesystem mit exponentialverteiltem Ankunfts- und Bedienprozess.
Das Wartesystem besteht aus einem Server und einem Warteraum mit unendlich vielen
Plätzen. Der Server arbeitet den Warteraum nach dem FIFO-Prinzip ab.
M/G/2//LIFO: beschreibt ein Wartesystem mit exponentialverteiltem Ankunftsprozess und
einem Bedienprozess mit beliebiger Verteilung. Das System besteht aus zwei Servern und
einem Warteraum mit unendlich vielen Plätzen. Der Server arbeitet den Warteraum nach
dem LIFO-Prinzip ab.
D/G/1/10: beschreibt ein Wartesystem mit einem deterministischen Ankunftsprozess und einem
Bedienprozess mit beliebiger Verteilung. Das System besteht aus einem Server und einem
Warteraum mit 10 Plätzen. Der Server arbeitet den Warteraum nach dem FIFO-Prinzip
ab.
39
40
Kapitel 4. Wartesysteme
4.3 Little's Result
Ein zentrales Ergebnis für sehr allgemeine Wartesysteme ist Little's Result. Hierbei wird
eine direkte Beziehung zwischen der mittleren Systemzeit S, der Ankunftsrate λ und der
hergestellt.
mittleren Kundenanzahl im System N
Mittlere Kundenanzahl = Ankunftsrate · Systemzeit
= λ·S
N
ist also das Produkt aus Ankunftsrate λ und mittlerer
Die mittlere Kundenanzahl N
Systemzeit S im System.
Durch Umformung kann man auch eine Beziehung zwischen der Anzahl der Kunden im
q , Ankunftsrate λ und mittlerer Wartezeit W herstellen.
Warteraum N
Mittlere Anzahl der Kunden im Warteraum = Ankunftsrate · Mittlere Wartezeit
q = λ · W
N
Beispiel: Little's Result
20
Sei die Ankunftsrate eines Wartesystems λ = Stunde
und die Systemzeit S = 15 Minuten =
1
1
Stunde.
Dann
benden
sich
im
Mittel
N
=
20
·
=
5
Kunden im System.
4
4
4.3.1 Informaler Beweis zum Little's Result
Kunden im System vornden. Beim Verlassen
Ein neuer Kunde wird bei seiner Ankunft N
Kunden im System zurücklassen. Während
des Systems wird dieser Kunde wiederum N
seiner Systemzeit S werden λ · S andere Kunden im System angekommen sein. Hieraus
= λ · s.
folgt, dass N
4.3.2 Formaler Beweis zum Little's Result
Sei A(t) die Anzahl der Kunden, die in der Zeit [0 : t] im System angekommen sind
und D(t) die Anzahl der Kunden, die in dieser Zeit vom System weggegangen sind (siehe
Abbildung 4.2). Wir nehmen an, dass A(0) = 0 gelte. Dann ist die Anzahl der Kunden
N(t) im System zur Zeit t durch N(t) = A(t) − D(t) gegeben.
Sei G(t) als die Fläche zwischen A(t) und D(t) deniert. G(t) ist als Kunde-Zeit-Produkt
zu verstehen. Dann gelten:
λt :=
St :=
t :=
N
A(t)
= Normalisierte Ankunftsrate im Zeitintervall [0 : t]
t
G(t)
= Normalisierte Systemzeit pro Kunde im Zeitintervall [0 : t]
A(t)
G(t)
= Normalisierte Anzahl der Kunden
t
Aus diesen Beziehungen folgt:
t = λt · St
N
4.4. Deterministische Analyse eines Wartesystems
41
A(t)
G(t)
D(t)
t
Abbildung 4.2: Graphische Darstellung der Ankünfte und Abgänge in einem Wartesystem
mit t → ∞ erhält man
=λ·S
N
4.3.3 Was ist die Systemzeit?
Es gibt unterschiedliche Interpretationen der Systemzeit von Kunden. Da die Anzahl der
Kunden in einem Wartesystem durch die Systemzeit bestimmt wird, ist es wichtig, hier ein
klares Verständnis zu haben. Wir wollen hier einige gängige Interpretationen der Systemzeit
in einem Wartesystem besprechen.
• Systemzeit = Wartezeit + Bedienzeit
= Anzahl der Kunden im Wartesystem, die warten oder bedient werden.
N
= λ·S
• Systemzeit = Wartezeit
q
N
|{z}
Mittlere Anzahl wartender Kunden
=λ·
W
|{z}
Mittlere Wartezeit
• Systemzeit = Bedienzeit
1
S = λ · x
=λ
N
µ
1
= Nq +
N
µ
1
S = W+
µ
=
mit x
1
µ
4.4 Deterministische Analyse eines Wartesystems
In diesem Abschnitt werden wir ein Wartesystem deterministisch analysieren. Dazu betrachten wir den Systemverlauf über die Zeit zwischen zwei Zeitpunkten a und b, zu denen
42
Kapitel 4. Wartesysteme
das Wartesystem keine Kunden enthält (siehe Abbildung 4.3). Wir denieren den Zustand
des Systems als:
N(t) = Anzahl der Kunden zur Zeit t
Wir nehmen an, dass es keine Mehrfachankünfte gibt, d.h. Ereignisse treten immer
hintereinander auf. Die Bediendauer ist > 0 und die Zeitachse ist sehr exakt, d.h. es treten
keine Doppelereignisse auf.
N(t)
t
a
T=b-a
b
Abbildung 4.3: Entwicklung eines Wartesystems über die Zeit. Betrachtet wird ein Zeitintervall T = [a : b]. Das System ist zu den Zeitpunkten a und b leer.
Wir wollen den Zustand nun genauer betrachten. Dazu führen wir folgende Bezeichnungen
ein:
T
= b − a, Länge des Betrachtungsintervalls [a : b]
T (n) = Zeit in [a : b], wenn N(t) = n
α(n) = Anzahl der Ankünfte in [a : b], wenn N(t) = n
β(n) = Anzahl der Abgänge in [a : b], wenn N(t) = n
α(n) bezeichnet die Anzahl der Ankünfte im Zeitintervall [a : b], wenn sich das System
im Zustand n bendet. β(n) bezeichnet analog die Anzahl der Abgänge im Zeitintervall
[a : b], wenn sich das System im Zustand n bendet. Wegen der Voraussetzung
N(a) = N(b) = 0
und der Unmöglichkeit von Mehrfachereignissen erhalten wir eine Beziehung zwischen den
Abgängen und Ankünften im Zustand n:
α(n) = β(n + 1)
Diese Beziehung ist klar, denn die Anzahl der Abgänge von Zustand n + 1 in den Zustand
n, also β(n+ 1), muss gleich der Anzahl der Ankünfte von Zustand n in den Zustand n+ 1,
d.h. α(n), sein, da das System in den Zeitpunkten a und b leer ist.
Der relative Anteil des Zustandes n in der Zeitspanne T ist:
pn =
T (n)
T
4.4. Deterministische Analyse eines Wartesystems
43
pn kann als die relative Wahrscheinlichkeit des Zustandes n im Zeitintervall T betrachtet
werden. Nun kennen wir die Wahrscheinlichkeit pn , mit der sich ein System im Zustand
n bendet. Wir interessieren uns auch für die Wahrscheinlichkeit, mit der ein System vom
Zustand n in den Zustand n + 1 übergeht.
Bendet sich ein System im Zustand n, dann bezeichnen wir die Anzahl der Ankünfte pro
Zeiteinheit mit λn und die Anzahl der Abgänge pro Zeiteinheit mit µn .
α(n)
T (n)
β(n)
T (n)
λn =
µn =
(4.1)
(4.2)
Das System geht von Zustand n in den Zustand n+1 über, wenn ein neuer Kunde ankommt.
Analog dazu geht das System von Zustand n + 1 in den Zustand n über, wenn ein Kunde
vom System abgeht. Damit erhalten wir die Beziehung:
pn
α(n)
β(n + 1)
= pn+1
T (n)
T (n + 1)
(4.3)
Die Gleichung (4.3) sagt aus, dass die Anzahl der Übergänge von Zustand n in den Zustand
n + 1 und umgekehrt gleich ist.
Durch Umformung der Gleichung (4.3) und einsetzen der Gleichung (4.1) und Gleichung (4.2)
erhalten wir:
pn+1 =
λn
· pn
µn+1
(4.4)
Diese Berechnung hat jedoch den Nachteil, dass man für die Berechnung von pn+1 vorher
pn , d.h. die Wahrscheinlichkeit für den Zustand n, kennen muss und um diesen zu berechnen, die Wahrscheinlichkeit von Zustand n − 1, also pn−1 usw. Dies ist jedoch nicht
praktisch. Die Gleichung (4.4) kann nun rekursiv weiter aufgelöst werden und man erhält
die folgende Formel:
λn
· pn
µn+1
λn
λn−1
=
·
· pn−1
µn+1 µn
λn
λn−1
λ0
=
·
···
· p0
µn+1 µn
µ1
n+
Y1 λi−1
= p0 ·
µi
pn+1 =
pn+1
i=1
Um die Formel für pn zu erhalten, müssen wir nur die Indizes anpassen!
pn = p0 ·
n
Y
λi−1
i=1
µi
Nun hängt die ganze Berechnung nur noch mit der Wahrscheinlichkeit von Zustand 0, also
44
Kapitel 4. Wartesysteme
p0 , zusammen. Man bestimmt p0 mit Hilfe der Normierungsbedingung
∞
X
1 =
pn
n=0
= p0 +
∞
X
p0 ·
n=1
µi
i=1
∞ Y
n
X
= p0 + p0 ·
= p0 ·
n
Y
λi−1
n=1 i=1
∞ Y
n
X
λi−1
µi
1+
n=1 i=1
und erhält
p0 =
1+
λi−1
µi
!
1
Qn
P∞
n=1
λi−1
i=1 µi
Damit ergibt sich für die Zustandswahrscheinlichkeit:
pn =
1+
P∞
1
Qn
n=1
λi−1
i=1 µi
·
n
Y
λi−1
(4.5)
µi
i=1
Mit der Gleichung (4.5) ist die Berechnung von Zustandswahrscheinlichkeiten nun sehr
einfach. Die operationale Analyse kommt immer a posteriori. Sie erlaubt keine Vorhersage.
Daher basiert die Leistungsvorhersage auf statistischen Annahmen.
4.5 Geburts- und Todesprozesse
In diesem Abschnitt betrachten wir eine sehr bekannte Klasse von Prozessen, die als
Geburts- und Todesprozesse (Birth Death Process, B/D-Process ) bezeichnet werden. Dabei
ist der Zustand des Prozesses durch die Anzahl der Kunden beschrieben. Der Zustand ändert sich durch die Ankunft eines neuen Kunden im System bzw. durch den Abgang eines
Kunden vom System. Abbildung 4.4 stellt die Zustände eines Geburts- und Todesprozesses
graphisch dar. Eine Ankunft wird in diesem Kontext als Geburt und ein Abgang als Tod
bezeichnet.
l0
0
l1
...
1
m1
lk-1
m2
k-1
lk
k
mk
k+1
mk+1
Abbildung 4.4: Zustände eines Geburts- und Todesprozesses
Denition: Geburts-/Todesprozess
Ein homogener Markov-Prozess X(t) mit diskretem Zustandsraum heiÿt Geburts-/Todesprozess
genau dann, wenn folgende Beziehungen gelten:
4.5. Geburts- und Todesprozesse
45
P(X(t + h) = k + 1|X(t) = k)
P(X(t + h) = k − 1|X(t) = k)
P(X(t + h) = k|X(t) = k)
P(X(t + h) 6= k + 1, k, k − 1|X(t) = k)
λk · h + o(h)
µk · h + o(h)
1 − (λk + µk ) · h + o(h)
o(h)
=
=
=
=
In einem Geburts-/Todesprozess kommen keine Mehrfachereignisse vor, da o(h) mit h → 0
schneller als h gegen 0 geht. Des Weiteren sind von einem bestimmten Zustand k nur Übergänge
zu den Nachbarzuständen möglich.
Sei Pk (t) = P(X(t) = k), dann
Pk (t + h)
Pk (t + h) − Pk (t)
h
Pk0 (t)
=
Pk (t)(1 − (λk + µk ) · h + o(h))
+
Pk−1 (t)(λk−1 h + o(h))
+
Pk+1 (t)(µk+1 h + o(h))
=
(−λk − µk )Pk (t) + λk−1 Pk−1 (t) + µk+1 Pk+1 (t) +
k > 0; λ−1 = µ0 = 0
h→0
=
o(h)
h
(−λk − µk )Pk (t) + λk−1 Pk−1 (t) + µk+1 Pk+1 (t)
Eine stationäre Lösung erhält man, falls sie existiert, durch:
pk = lim P(X(t) = k) = lim Pk (t)
t→∞
(4.6)
t→∞
Wenn Gleichung (4.6) existiert, dann gilt Pk0 (t) = 0 und deshalb
0 = (−λk − µk )Pk (t) + λk−1 Pk−1 (t) + µk+1 Pk+1 (t)
(λk + µk )Pk (t) = λk−1 Pk−1 (t) + µk+1 Pk+1 (t)
k = 0, 1, 2, . . .
Sei pk := Pk (t). Durch die Betrachtung von Flow-In = Flow-Out erhalten wir:
Flow-In zum Zustand k = Flow-Out vom Zustand k
λk−1 pk−1 + µk+1 pk+1 = (λk + µk )pk
Durch Umformung erhält man:
λ
p
− µk pk = λk pk − µk+1 pk+1
}
|
{z
}
| k−1 k−{z1
gk
gk+1
gk = gk+1
Mit λ−1 = 0 und µ0 = 0 folgt hieraus:
g0 = g1 = g2 = . . . = gk = gk+1 = 0
und weiterhin
gk+1 = λk pk − µk+1 pk+1 = 0
46
Kapitel 4. Wartesysteme
Hieraus folgt:
λk
µk+1
λk−1
λk
pk−1
·
µk µk+1
···
λ0
λk
p0 · · · ·
µ1
µk+1
k
Y
λi
p0
µi+1
pk+1 = pk
=
=
=
=
i=0
Nach Anpassung der Indizes erhält man folgende Formel für die Zustandswahrscheinlichkeit
pk :
pk = p0
k−
Y1
i=0
Die Normierungsbedingung
P∞
k=0 pk
p0 =
λi
µi+1
(4.7)
= 1 erlaubt die Berechnung von p0 zu
1+
P∞
k=1
1
Qk−1
λi
i=0 µi+1
Damit ergibt sich für die Zustandswahrscheinlichkeit:
pk =
1+
P∞
k=1
1
Qk−1
λi
i=0 µi+1
·
k−
Y1
i=0
λi
µi+1
4.6 Analyse von M/M/1-Systemen
Wir betrachten ein M/M/1-System, d.h. wir haben exponentialverteilte Zwischenankunftszeiten und Bedienzeiten, einen Warteraum mit unendlich vielen Warteplätzen und
eine Bedienstation im System (siehe Abbildung 4.5). Dieses Wartesystem wird sehr oft
benutzt und eignet sich zur Modellierung eines einzelnen Prozessors oder einzelner Geräte
in einem Rechnersystem.
Abbildung 4.5: Ein M/M/1-Wartesystem
Wir untersuchen einen Zyklus [a : b] mit N(a) = N(b) = 0 und N(a+ ) > 0, N(b+ ) > 0,
d.h. zu den Zeiten a und b kommt jeweils ein Kunde im System an. Zwischen a und b
werde das System genau einmal leer (siehe Abbildung 4.6).
4.6. Analyse von M/M/1-Systemen
47
N(t)
t
a
b
Abbildung 4.6: Anzahl der Kunden in einem Wartesystem. Das System wird in einem
Intervall [a : b] betrachtet. Zu den Zeitpunkten a und b kommt jeweils ein Kunde und das
System wird in der betrachteten Zeit genau einmal leer.
Die Übergangswahrscheinlichkeiten vom Zustand i zum Zustand j bezeichnen wir mit:
pi,j = P(System geht durch Ankunft oder Abgang von Zustand i nach Zustand j)
Es sei angemerkt, dass pi,j = 0 ist, falls |i − j| > 2, da Mehrfachereignisse unmöglich
sind. Die Anzahl der Vorgänge zwischen den Zeitpunkten a und b, in der das System den
Zustand n passiert, wird mit m(n) bezeichnet. Damit erhalten wir die Gleichung:
m(n) = pn+1,n · m(n + 1) + pn−1,n · m(n − 1)
(4.8)
Hier haben wir angenommen, dass die Übergänge nur vom Zustand und nicht von der
Bedienzeit abhängen.
Des Weiteren bezeichnen wir den exponentialverteilten Ankunftsprozess mit Parameter λ
mit I und den exponentialverteilten Bedienprozess mit Parameter µ mit S.
Für die Wahrscheinlichkeit, dass das nächste Ereignis eine Ankunft ist, ohne dass zwischenzeitlich ein Kunde fertig bedient wird, erhalten wir:
pi,i+1 = P(Das nächste Ereignis ist eine Ankunft und es ndet kein Abgang statt)


Z∞


=
P(S > y)

P(y < I < y + dy) ·
|
{z
}
|
{z
}
y=0
Z∞
=
=
y=0
Interarrivaltime I≈y
Servicezeit S dauert länger
λ · e−λ·y · e−µ·y dy
λ
λ+µ
(4.9)
Analog erhält man für die Wahrscheinlichkeit, dass im nächsten Ereignis ein Kunde fertig
bedient wird:
µ
pi,i−1 =
(4.10)
λ+µ
Nun kann die Gleichung (4.8) durch die Verwendung der Gleichung (4.9) und Gleichung (4.10)
wie folgt geschrieben werden:
m(n) =
µ
λ
· m(n + 1) +
· m(n − 1)
λ+µ
λ+µ
(4.11)
48
Kapitel 4. Wartesysteme
Es sei T (n) die mittlere Zeit im Zustand n im Intervall [a : b] und Tn die mittlere Zeit im
Zustand n bis dieser Zustand verlassen wird (siehe Abbildung 4.7).
N(t)
T(1)
t
Abbildung 4.7: Mittlere Zeit in der sich das System im Zustand 1 bendet
Dann gilt oensichtlich:
T (n) = Tn · m(n)
(4.12)
Tn ist abhängig von der Zufallsvariable, welche die Zeit bis zum nächsten Ereignis (Ankunft
oder Abfertigung) angibt. Die Zufallsvariable dafür ist min(I, S), d.h. die kürzere Zeit von
Zwischenankunkftszeit und Zwischenabgangszeit. Wir erhalten damit:
Z∞
1
Tn =
y · P(y < min(I, S) < y + dy) =
(4.13)
λ+µ
y=0
Mit den Beziehungen
P(I < x) = 1 − e−λx
und
P(S < x) = 1 − e−µx
erhalten wir
P(min(I, S) > x) = P(I > x und S > x)
= P(I > x) · P(S > x)
= e−λx · e−µx
= e−(λ+µ)x
Damit ist min(I, S) eine Exponentialverteilung mit Parameter (λ + µ) und Mittelwert
Aus Gleichung (4.12) und Gleichung (4.13) folgt:
T (n) =
1
· m(n)
λ+µ
1
λ+µ .
(4.14)
Nach Umformen der Gleichung (4.14) und einsetzen in Gleichung (4.11) erhält man:
(λ + µ) · T (n) = µ · T (n + 1) + λ · T (n − 1)
für n > 0
(4.15)
4.6. Analyse von M/M/1-Systemen
49
Durch rekursives Auösen der Gleichung (4.15) mit T (1) =
1
µ
und T (0) =
1
λ
erhält man:
λ
λ
T (n) + T (n) − T (n − 1)
µ
µ
T (n + 1) = ρT (n) + T (n) − ρT (n − 1)
..
.
ρT (0) − T (1) T (1) − T (0) n
T (n) =
+
ρ
ρ−1
ρ−1
1
1
ρ λ1 − µ1
µ − λ n
+
ρ
=
ρ−1
ρ−1
1
= ρn
λ
n
λ
· T (0)
=
µ
T (n + 1) =
T (0) ist die mittlere Zeit im Zustand 0, d.h. die Zeit nachdem das System leer wurde bis
zur nächsten Ankunft. T (1) ist die mittlere Zeit im Zustand 1, d.h. es bendet sich nur ein
Kunde im System, der bedient wird.
Damit gilt:
T (n) =
n
λ
1
·
µ
λ
und man erhält
T
= E(b − a) =
=
∞ 1X λ
λ
µ
n=0
∞
X
n=0
n
=
T (n)
µ
λ−1
=
λ
λ(µ
− λ)
1− µ
falls
Für die Zustandswahrscheinlichkeiten erhalten wir:
n
T (n)
λ
λ
pn =
= 1−
·
T
µ
µ
n
= (1 − ρ) · ρ
λ
<1
µ
(4.16)
λ
Die Zustandswahrscheinlichkeiten sind also geometrisch verteilt mit Parameter ρ = µ
, falls
ρ < 1. Für den Fall ρ > 1 gibt es keine stationäre Lösung, da das Wartesystem immer
voller wird. Das Intervall [a : b] ist ein Erneuerungsintervall. Dadurch wiederholt sich der
Prozess im stochastischen Sinn. Die Vergangenheit ist vergessen! Wir haben also einen
regenerativen Prozess, der auch als Erneuerungsprozess bezeichnet wird.
4.6.1 Alternative Herleitung der Zustandswahrscheinlichkeiten
Ein M/M/1-System kann als Geburts-/Todesprozess angesehen werden, wobei die Geburtsund Todesraten wie folgt sind:
λk = λ
k = 0, 1, 2, . . .
µk = µ
k = 1, 2, 3, . . .
50
Kapitel 4. Wartesysteme
Mit der Gleichung (4.7) erhält man für die stationären Zustandswahrscheinlichkeiten pk
λ0 λ1
λk−1
·
· ··· ·
µ1 µ2
µk
λ λ
λ
= p0 · · · · · ·
µ µ
µ
k
λ
= p0
µ
pk = p0
= p0 ρk
P∞
λ
< 1 und der Normierungsbedingung
Mit der Voraussetzung µ
k=0 pk = 1 kann p0
bestimmt werden. Es ergibt sich p0 = 1 − ρ. Dadurch erhalten wir wiederum das Bekannte
aus Gleichung (4.16):
pk = (1 − ρ) · ρk
(4.17)
4.6.2 Wahrscheinlichkeit für ein leeres Wartesystem
Aus pk = (1 − ρ) · ρk ist ein Spezialfall erkennbar, der für viel allgemeinere Systeme gilt:
p0 = (1 − ρ) · ρ0 = 1 − ρ
Die Wahrscheinlichkeit, dass das System leer ist, beträgt 1 - Auslastung.
4.6.3 Eigenschaften von M/M/1-Systemen
Mit Hilfe der Zustandswahrscheinlichkeit pn aus Gleichung (4.16) und Gleichung (4.17)
lassen sich eine Vielzahl von Eigenschaften von M/M/1-Systemen berechnen.
:
• Mittlere Anzahl von Kunden N
= E[N] =
N
∞
X
n · pn =
n=0
∞
X
n · (1 − ρ) · ρn =
n=0
ρ
1−ρ
• Varianz der Kundenanzahl:
Var[N] = E[N2 ] − (E[N])2
=
∞
X
n2 · (1 − ρ) · ρn
!
n=0
=
−
∞
X
n=0
ρ
(1 − ρ)2
Die Standardabweichung ist deshalb gegeben durch:
σN =
p
Var[V] =
1 √
ρ
1−ρ
!2
n · (1 − ρ) · ρn
4.7. Varianten von M/M/1-Systemen
51
• Mittlere Systemzeit S:
= λ · S ergibt sich
Mit Little's Result N
S =
=
=
ρ 1
N
=
λ
1−ρλ
1
1
·
µ 1−ρ
1
µ−λ
• Mittlere Wartezeit W :
W = Systemzeit − Bedienzeit
1
= S−
µ
1
1
=
−
µ−λ µ
λ
=
µ(µ − λ)
ρ
=
=ρ·S
(µ − λ)
• Verteilung der Systemzeit
S(t) := P(Systemzeit 6 t mit FIFO-Strategie)
=
1 − e−µ(1−ρ)t
• Verteilung der Wartezeit
W(t) := P(Wartezeit 6 t mit FIFO-Strategie)
=
1 − ρ · e−µ(1−ρ)t
• Die Wahrscheinlichkeit, dass n oder mehr Kunden im System sind, beträgt:
P(> n Kunden im System) =
∞
X
i=n
p(i) =
∞
X
(1 − ρ) · ρi = ρn
i=n
4.7 Varianten von M/M/1-Systemen
In diesem Abschnitt betrachten wir einige ausgewählte Varianten des M/M/1-Systems.
4.7.1 Das M/M/∞-System
Hierbei handelt es sich um ein Wartesystem mit unendlich vielen Servern und Warteplätzen.
Jedem ankommenden Kunden steht sofort ein Server zur Verfügung, also sind bei K Kunden
im System genau K Server aktiv. Sowohl der Ankunfts- als auch die Bedienprozesse sind
Poissonprozesse. Der Parameter des Ankunftsprozesses sei λ, der der Bedienprozesse sei µ.
52
Kapitel 4. Wartesysteme
λi = λ
i>0
µi = i · µ i > 1
Man erhält
1
pi = p0 ·
i!
i
λ
ρi
= p0 ·
µ
i!
λ
und damit p0 = e− µ und schlieÿlich
λ
−µ
pi = e
1
·
i!
i
λ
λ
ρi
ρi
= e− µ ·
= e−ρ ·
µ
i!
i!
Hieraus lassen sich folgende Eigenschaften von M/M/∞-Systemen ableiten.
= ρ
N
N
1
S =
=
λ
µ
1
W = S−
µ
4.7.2 Das M/M/s-System
Mit Hilfe des M/M/s-Wartesystems können Multiprozessorsysteme oder einzelne Geräte
mit mehreren identischen Servern modelliert werden. Bedingung dabei ist, dass sich alle
Kunden vor der Bedienung durch einen der s Server in einem einzigen Warteraum benden.
Abhängig vom aktuellen Zustand des Systems ergeben sich folgende Beziehungen für λi
und µi :
λi = λ
i>0
i·µ i6s
µi =
s·µ i>s
Man erhält für die Zustandswahrscheinlichkeit pk

k

λ

· k1!
p
·
0

µ

pk =

k


p0 · λ
·
µ
k6s
1
s!·sk−s
k>s
Setzt man die Last ρ = λ/(sµ) ein, erhält man unter der Normalisierungsbedingung für p0
p0 =
1
1+
(sρ)s
s!(1−ρ)
+
Ps−1
i=1
(sρ)i
i!
Für die Wahrscheinlichkeit, dass ein neuer Kunde warten muss, erhält man
P(Ein neuer Kunde muss warten) =
1+
1
Ps−1 (ks )k!(1−ρ)
k=0
sk
(4.18)
4.8. Analyse von M/G/1-Systemen
53
Die Gleichung (4.18) ist unter dem Namen Erlang-C-Formel bekannt. Diese Formel war
wichtig für die Planung von Telefonsystemen. Sie wurde angewendet, um die benötigte
Anzahl von Telefonleitungen zu bestimmen, so dass die Kunden mit der Dienstqualität
zufrieden sind. Dabei wurde angenommen, dass Telefonanrufe mit Rate λ getätigt werden
und die Bediendauer, d.h. die Anrufdauer, im Mittel µ Zeiteinheiten beträgt. Eine aktuelle
Anwendung könnte die Bestimmung der notwendigen Anzahl der Agenten in einem CallCenter sein.
4.7.3 Das M/M/1/K-System
Bei diesem System gibt es einen Server und einen eingeschränkten Warteraum. Von den
vorhandenen K Plätzen benden sich (K− 1) Plätze im Warteraum und ein Platz im Server.
Ein Kunde, der bei seiner Ankunft keinen Platz im System ndet, wird ohne Bedienung
abgelehnt und verlässt das System. Dadurch ergeben sich die Ankunftsraten λi und die
Bedienraten µi wie folgt.
λ i = 0, . . . , K − 1
λi =
0 i>K
µ i = 1, . . . , K
µi =
0 i>K
Man erhält für die Zustandswahrscheinlichkeit pi
 i

λ
p0 µ
i6K
pi =
0
i>K
(4.19)
Unter der Normalisierungsbedingung erhält man für p0
p0 = 1 −
∞
X
pi =
i=1
1−ρ
1 − ρK+1
(4.20)
Aus Gleichung (4.19) und Gleichung (4.20) erhält man schlieÿlich die geschlossene Formel
für die Zustandswahrscheinlichkeit pi .
pi =
1−ρ
· ρi
1 − ρK+1
4.8 Analyse von M/G/1-Systemen
Bei einem M/G/1-System sind die Zwischenankunftszeiten exponentialverteilt, d.h. der
Ankunftsprozess besitzt die Memoryless-Eigenschaft wie bei M/M/1-Systemen. Im Gegensatz zu M/M/1-Systemen besitzt der Bedienprozess keine Memoryless-Eigenschaft, d.h.
die Zeit bis zum nächsten Abgang hängt von der schon verstrichenen Bedienzeit des aktuellen Kunden ab. Die Bedienzeiten sind zwar bekannt, können aber beliebig krumm sein;
dies wird durch das G ausgedrückt, welches für General steht.
Im M/G/1-System haben wir einen Server, der den Warteraum nach dem FIFO-Prinzip
abarbeitet. Die Ankünfte und Abfertigungen sind unabhängig voneinander. Die Frage,
im M/G/1-System sind. Mit diesem
die sich stellt, ist, wie viele Kunden im Mittel (N)
Ergebnis kann man mit Little's Result weitere Gröÿen wie die Systemzeit berechnen.
54
Kapitel 4. Wartesysteme
4.8.1 Pollazcek-Khinchin-Formel (P-K-Formel)
Im Folgenden wollen wir die Wartezeit W eines Kunden herleiten. Dazu betrachten wir
das System im besetzten bzw. leeren Zustand. Wir bezeichnen mit Sb den Zustand,
in dem das System besetzt ist, und mit Sl , den Zustand, in dem das System leer ist.
W = P(Sb ) · E[W|Sb ] + P(Sl ) · E[W|Sl ]
| {z }
=0
= P(Sb ) · E[W|Sb ]
(4.21)
= ρ · E[W|Sb ]
Aus der Gleichung (4.21) ist ersichtlich, dass sich die mittlere Wartezeit W aus der Last ρ
und der mittleren Wartezeit im Zustand besetzt ergibt.
Die mittlere Wartezeit bei einem besetzten System ergibt sich durch die mittlere Restbedienzeit E[R] des aktuell bedienten Kunden und durch die Bedienzeiten der schon wartenden
Kunden.
E[W|Sb ] = E[R] + Bedienzeit
der wartenden
Kunden}
|
{z
(4.22)
SNq
Die mittlere Bedienzeit der Wartenden Kunden bei einem besetztem System ist gegeben
durch
1
SNq = E[Nq |Sb ] ·
µ
Die mittlere Anzahl der wartenden Kunden E[Nq ] ist gegeben durch
E[Nq ] = E[Nq |Sb ] · ρ + E[Nq |Sl ] ·(1 − ρ)
| {z }
=0
Hieraus ergibt sich die mittlere Anzahl der wartenden Kunden bei besetztem System zu
E[Nq |Sb ] =
E[Nq ]
ρ
und daraus ergibt sich die Bedienzeit der wartenden Kunden zu
SNq =
E[Nq ] 1
·
ρ
µ
Schlieÿlich ist Gleichung (4.22) gegeben durch
E[W|Sb ] = E[R] +
E[Nq ] 1
·
ρ
µ
(4.23)
4.8. Analyse von M/G/1-Systemen
55
Aus Gleichung (4.21) und Gleichung (4.23) folgt für die mittlere Wartezeit W
W = ρ · E[W|Sb ]
1 1
= ρ E[R] + · E[Nq ]
µ ρ
1 µ
= ρ E[R] + · E[Nq ]
µ λ
1
= ρ E[R] + E[Nq ]
λ
1
= ρ E[R] + λW
λ
= ρ (E[R] + W)
ρ · E[R]
⇒W =
1−ρ
Aus der Erneuerungstheorie ist bekannt, dass die mittlere Restbedienzeit E[R] gegeben ist
durch
σ2
x2
x
1
2 und x
=
E[R] =
= + b mit σ2b = x2 − x
2
x
2
2
x
µ
für E[R] >
x
2
⇔ σ2b = 0 und somit
W=
ρ · E[R]
ρ · x2
λx2
=
=
1−ρ
2
x(1 − ρ)
2(1 − ρ)
4.8.2 Eigenschaften von M/G/1-Systemen
Mit Hilfe von Little's Result kann man andere Pollazcek-Khinchin-Formeln herleiten:
• Mittlere Anzahl von Kunden im System
=ρ+
N
λ2 · x2
2 · (1 − ρ)
• Systemzeit
S=
1
λ · x2
+
µ 2 · (1 − ρ)
• Mittlere Wartezeit
W=
λ · x2
2 · (1 − ρ)
• Durchschnittlich Anzahl der Kunden im Warteraum
q = λ · W =
N
λ2 · x2
2 · (1 − ρ)
56
Kapitel 4. Wartesysteme
4.8.3 Zustandsberechnung im M/G/1-System
Man interessiert sich normalerweise für die Zustandsverteilung eines Wartesystems. Diese gibt Auskunft darüber, mit welcher Wahrscheinlichkeit das System einen bestimmten
Zustand annehmen wird.
Die Verteilung der Kundenanzahl im System erhält man durch die Betrachtung des Systems
über eine sehr lange Zeit:
πi := lim P(i Kunden im System zur Zeit t)
t→∞
Dies gilt natürlich nur, wenn die Verteilung existiert.
Bei M/M/1-Systemen bekommt man durch die Betrachtung der Gleichgewichtsbezie-
hung
Flow-In nach Zustand i = Flow-Out aus Zustand i
ein Gleichungssystem, das mit der Normierungsbedingung zu einer Lösung führt. Das Verfahren ist korrekt, da sowohl für die Ankunftsprozesse als auch für die Bedienprozesse
Exponentialverteilungen angenommen werden, d.h. die Prozesse besitzen die MemorylessEigenschaft.
Bei M/G/1-Systemen ist die Memoryless-Eigenschaft nicht mehr generell gültig, denn die
Bediendauer im aktuellen Zustand beeinusst die Restbediendauer und damit das Übergangsverhalten des Wartesystems.
Um die Abhängigkeit von der Zeit, eigentlich der Vergangenheit, aufzulösen, betrachtet
man das System nur zu bestimmten Zeitpunkten. Im Folgenden betrachten wir das System nur zu den Zeitpunkten unmittelbar nach Verlassen eines Kunden. Damit spielt die
Bediendauer des Kunden zu diesem Zeitpunkt keine Rolle.
Wir denieren die Zufallsvariablen Xi mit
Xi := X(ti ) := Anzahl der zur Zeit ti zurückgelassenen Kunden
Damit ist X1 , X2 , X3 , . . . eine Markov-Kette. Es gilt:
P(Xi = j|Xi−1 = i1 , Xi−2 = i2 , · · · , X1 = α) = P(Xi = j|Xi−1 = i1 )
Dies ist eine eingebettete Markov-Kette, d.h. eingebettet in die kontinuierliche Zeitachse. Die Lösung:
πi := P(ein Kunde lässt bei seinem Abgang i Kunden hinter sich)
=
lim P(X(tk ) = i)
k→∞
ist über ein Gleichungssystem durch die Beziehung Flow-In = Flow-Out erhältlich. Mit
pij = P(Xk+1 = j|Xk = i) lautet das Gleichungssystem
πj =
∞
X
pij · πi
j = 0, 1, 2, . . .
i=0
wobei die Normierungsbedingung
P∞
i=0 πi
= 1 gelten muss.
Zur Lösung dieses Gleichungssystems benötigt man die Übergangswahrscheinlichkeiten pij . Dazu unterscheidet man zwei Fälle:
4.8. Analyse von M/G/1-Systemen
57
Fall 1: i > 0, d.h. das System war nicht leer
• Falls j < i − 1 ist, ist pij = 0, denn es geht genau ein Kunde weg.
• Falls j > i − 1 ist, dann ist pij = qj−i+1 , wobei
qr := P(r neue Kunden in einer Serviceperiode).
Fall 2: i = 0
Dieser Fall bedeutet, dass wir eine idle -Periode hatten, so dass der nächste Kunde
sofort vom Server bedient werden kann. Dabei hinterlässt er so viele Kunden, wie
während seiner Bedienung neu angekommen sind. Das gleiche gilt auch für i = 1.
Damit erhalten wir
p0j = p1j = qj
j>0
Insgesamt erhält man


qj
pij = qj−i+1


0
i=0
i > 0; j > i − 1
i > 0; j < i − 1
Eine geschlossene Lösung der Gleichung
πj =
∞
X
pij · πi
(4.24)
i=0
ist nicht möglich. Man erhält jedoch eine Lösung, indem man die z-Transformation benutzt.
Die z-Transformation ist gegeben durch:
π(z) :=
∞
X
πj zj
j=0
Dazu multipliziert man die k-te Gleichung von Gleichung (4.24) mit zk und summiert die
Terme auf. Mit der Substitution
Q(z) =
∞
X
j=0
p0j · zj
58
Kapitel 4. Wartesysteme
erhalten wir
π(z) =
=
∞
X
πj · zj
j=0
∞ X
∞
X
j=0 i=0
∞
X
= π0 ·
pij πi zj
j
p0j z +
j=0
∞
X
i=1
= π0 · Q(z) +
∞
X
πi
i=1
= π0 · Q(z) +
= π0 · Q(z) +
∞
X
i=1
∞
X
πi
∞
X
πi
pij zj
j=0
∞
X
qj−i+1 zj
j=i−1
∞
X
qj zj+i−1
j=0
πi zi−1
i=1
∞
X
qj zj
j=0
π(z) − π0
· Q(z)
= π0 · Q(z) +
z
Daraus folgt die Gleichung:
π(z) = π0
(1 − z) · Q(z)
Q(z) − z
(4.25)
Wir müssen also noch Q(z) und π0 berechnen. Für den Fall λ < µ gilt allgemein
π0 = 1 − ρ
(4.26)
Für Q(z) haben wir folgende Beziehung:
Q(z) =
∞
X
qj zj
j=0
=
∞
X
P(j Kunden kommen in einer Serviceperiode an) · zj
j=0
Da die Kundenankünfte exponentialverteilt sind, erhalten wir:
Q(z) =
=
=
∞ Z∞
X
j=0 0
Z∞ X
∞
0 j=0
Z∞ X
∞
0 j=0
Z∞
=
=
Z0∞
0
P(j Benutzer in [0 : x])b(x)dx · zj
(λx)j −λx
e
b(x)zj dx
j!
(λxz)j −λx
e
b(x)dx
j!
eλxz e−λx b(x)dx
e−(λ−λz)x b(x)dx
= B∗ (λ − λz)
(4.27)
4.8. Analyse von M/G/1-Systemen
59
wobei B∗ (s) die Laplace-Transformierte von b(t) ist mit
Z∞
∗
B (s) =
e−s·x · b(x)dx
0
Die Gleichung (4.25) ergibt sich mit Gleichung (4.26) und Gleichung (4.27) zu
π(z) =
(1 − ρ)(1 − z)B∗ (λ − λz)
B∗ (λ − λz) − z
Zur Kontrolle vergleichen wir das obige Resultat mit den Ergebnissen aus dem M/M/1System. Die Laplace-Transformierte der Exponentialverteilung ist:
Z∞
∗
B (s) =
e−s·x · b(x)dx
0
Z∞
=
e−s·x µe−µx dx
0
=
µ
µ+s
Analog erhält man
B∗ (λ − λz) =
µ
µ + λ − λz
und damit gilt
(1 − ρ)(1 − z) · µ
µ − z(µ + λ − λz)
= ···
1−ρ
=
1 − ρz
π(z) =
Des Weiteren erhält man die πi durch Koezientenvergleich bzgl. zi aus den Gleichungen
∞
X
πi zi = (1 − ρ)(1 + ρz + (ρz)2 + · · · )
i=0
und
πi = (1 − ρ)ρi
Bisher haben wir nur Lösungen für speziell eingebettete Punkte. Wir haben die Zeitpunkte
unmittelbar nach Abgang eines Kunden betrachtet. Aber auch die Betrachtung anderer
Zeitpunkte ist interessant, wie z.B.:
πi :=
ri :=
pi :=
lim P(Abfertigung zur Zeit t lässt i Kunden zurück)
t→∞
lim P(Ankunft zur Zeit t ndet i Kunden vor)
t→∞
lim P(zufälliger Beobachter trit i Kunden an)
t→∞
Wie sind die Zusammenhänge zwischen diesen Gröÿen?
a) Für alle Systeme mit exponentialverteilter Ankunft gilt pi = ri .
b) Für Systeme, bei denen Mehrfachereignisse in [t : t + h] nur mit Wahrscheinlichkeit
o(h) vorkommen, d.h. es gibt keine gleichzeitigen Ereignisse, gilt πi = ri .
60
Kapitel 4. Wartesysteme
c) Für das M/G/1-System ist beides erfüllt, also gilt πi = pi = ri .
Damit liefern eingebettete Punkte überraschend weitreichende Ergebnisse.
Beweis: pi = ri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Im Folgenden wird der Beweis zu a) gezeigt. Sei hierzu A(t, t+h) das Ereignis der Ankunft
eines Kunden im Intervall [t, t + h]. Dann gilt:
rk (t) = P(Ankunft zur Zeit t ndet k Kunden)
=
lim P(X(t) = k|A(t, t + h))
h→0
P(X(t) = k ∧ A(t, t + h))
h→0
P(A(t, t + h))
P(X(t) = k) · P(A(t, t + h))
= lim
h→0
P(A(t, t + h))
= P(X(t) = k)
=
lim
= pk (t)
......................................................................................
Beweis: πi = ri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Die Gültigkeit von b) ergibt sich wie folgt.
Wenn Mehrfachereignisse ausgeschlossen sind, dann unterscheidet sich die Anzahl der Übergänge von k nach k + 1 von der Anzahl der Übergänge von k + 1 nach k höchstens um 1.
Also gilt rk = πk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Beweis: πi = pi = ri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Der Zusammenhang c) folgt aus a) und b). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Man sollte beachten, dass die Beziehung pi = ri , d.h. die Sicht des idealen Beobachters ist
die gleiche wie des des verlassenden Kunden, nicht immer gilt.
Beispiel: Gegenbeispiel zur Gültigkeit von pi = ri
Gegeben ist ein D|D|1-System mit λ < µ, siehe folgende Abbildung.
1/l
1/l
t
1/m
1/m
Es gelten r0 = 1, d.h. das System war vor dem Eintreen leer, und ri = 0 für i > 0. Ebenfalls
gelten π0 = 1 und πi = 0 für i > 0. Man erhält dann p0 = 1 − ρ bzw. p1 = ρ, d.h. ein idealer
Beobachter ndet mit Wahrscheinlichkeit ρ einen Bedienvorgang vor. Also erhält man r0 6= p0 .
4.9 Analyse von G/M/1-Systemen
Die G/M/1-Systeme sind dual zu den M/G/1-Wartesystemen. Es wird hier von einem
Server mit exponentialverteilten Abfertigungsdauern und einem Ankunftsstrom mit Zwi-
4.9. Analyse von G/M/1-Systemen
61
schenankunftszeiten aus einer beliebigen, aber bekannten Verteilungsfunktion A(t), t > 0,
ausgegangen.
Um ein G/M/1-System zu analysieren, muss, wie im letzten Abschnitt, die Abhängigkeit
des stochastischen Prozesses von der Vergangenheit eliminiert werden. Dies geschieht hier,
indem eine eingebettete Markovkette auf den Zeitpunkten unmittelbar vor Systemankünften wie folgt konstruiert wird:
• ti : Zeitpunkte unmittelbar vor einer Ankunft
• X(ti ): Systemzustand = Anzahl der Kunden zur Zeit ti
• ri : limk→∞ P(X(tk ) = i) stationäre Zustandswahrscheinlichkeit
Wenn die stationären Zustandswahrscheinlichkeiten existieren, müssen sie Lösung des folgenden Gleichungssystems (globale Flussgleichungen) sein:
rj =
∞
X
∀j > 1
pi,j ri
sowie
i=0
∞
X
ri = 1
i=0
pi,j gibt dabei die Wahrscheinlichkeit an, von Zustand i nach Zustand j zu wechseln. Analog
zu M/G/1 können die pi,j bestimmt werden:
pi,j


βi+1−j
= 0


?
16j6i+1
j>i+1
j=0
wobei βr = P(r Abgänge zwischen zwei Ankünften) =
R∞
0
(µt)r −µt
a(t)dt
r! e
Satz: Satz von Takacs
Für eine Systemlast von ρ < 1 hat das Gleichungssystem σ = A∗ (µ(1 − σ)) im Intervall (0, 1)
genau eine eindeutig bestimmte Lösung τ. Die Zustandswahrscheinlichkeiten ri sind geometrisch
verteilt mit:
ri = (1 − τ) · τi ∀i > 0
Falls die Zustandswahrscheinlichkeiten geometrisch verteilt sind, gilt:
rj = (1 − τ) · τ =
j
∞
X
i=j−1
βi+j−1 · ri =
∞
X
βi+1−j · (1 − τ) · τi
i=j−1
Dies ist eine bei Wartesystemen häug angewandte Methode: Versuche, eine Lösung zu
erraten, und veriziere anschlieÿend die getroene Wahl.
62
Kapitel 4. Wartesysteme
Daraus folgt:
∞
X
τ=
=
=
βi+1−j · τi+1−j
i=j−1
∞
X
βi · τi
i=0
∞ Z∞
X
i=0 0
Z∞
=
0
Z∞
=
0
(µtτ)i −µt
·e
a(t)dt
i!
e−µt a(t)
∞
X
(µtτ)i
i=0
i!
dt
e−(µ−µτ)t a(t)dt
= A∗ (µ − µτ) = A∗ (µ(1 − τ))
Der Ansatz der geometrischen Verteilung führt also zum gewünschten Ziel.
Wie die Pollazcek-Khinchin-Formel soll nun auch dieses Ergebnis am Spezialfall des M/M/1Systems veriziert werden. Hier gilt für die Laplace-Transformierte der Ankunftsverteilung:
A∗ (t) =
λ
,t > 0
λ+t
Mit dem Satz von Takacs fährt man fort wie folgt:
τ = A∗ (µ(1 − τ)) ⇔
λ
τ=
⇔
λ + µ(1 − τ)
0 = (1 − τ) · (τµ − λ)
Diese Gleichung hat zwei Lösungen, die unzulässige Lösung τ = 1 und die einzige gültige
Lösung:
τ=
λ
= ρ ⇒ ri = (1 − ρ) · ρi
µ
Hiermit haben wir das Bekannte erhalten.
KAPITEL 5
Wartenetze
Wir haben in Kapitel 4 einzelne Wartesysteme betrachtet. In der Realität sind Systeme
komplexer aufgebaut und bestehen meistens aus mehreren Wartesystemen. So kann ein
Supermarkt aus den einzelnen Theken, die als Bedienstationen zu verstehen sind, modelliert werden. Genauso besteht auch ein Rechnersystem oder Kommunikationssystem aus
mehreren Komponenten, die als Wartesysteme modelliert werden können. Deshalb beschäftigen wir uns in diesem Kapitel mit gekoppelten Wartesystemen, die auch als Wartenetze
bezeichnet werden.
Beispiel: Wartenetz
Die folgende Abbildung zeigt ein Wartenetz, welches aus mehreren Knoten besteht. Jeder Knoten im Wartenetz ist ein Wartesystem. Die Knoten besitzen unterschiedliche Funktionen. Die
Knoten 0 und N + 1 stellen die Verbindung zur Auÿenwelt her. Die Neuankünfte gelangen über
den Knoten 0 ins Wartenetz und verlassen das System über den Knoten N + 1.
1
4
N+1
3
0
N
2
5.1 Eigenschaften von Wartenetzen
Zunächst führen wir in diesem Abschnitt einige Begrie und Notationen ein, die in den
späteren Abschnitten benötigt werden.
Die betrachteten Wartenetze bestehen aus einer Menge von Knoten 0, 1, 2, . . . , N, N +
1. Die Knoten 1, 2, . . . , N werden alls innere Knoten bezeichnet. Ein neuer Job betritt
das Wartenetz über den Knoten 0. Ein Job kann das Wartenetz über den Knoten N + 1
verlassen.
63
64
Kapitel 5. Wartenetze
Übergänge zwischen den Knoten
Während seines Aufenthalts kann ein Job mehrere Knoten im Wartenetz besuchen. Die
Übergangswahrscheinlichkeit eines Jobs von einem Knoten zum nächsten ist wie folgt:
• pi,j ist die Wahrscheinlichkeit, dass ein Job von Knoten i nach Knoten j wechselt
(für 1 6 i, j 6 N).
• p0,r ist die Wahrscheinlichkeit, dass ein Job Knoten r besucht, nachdem er über den
Knoten 0 das Wartenetz betreten hat.
• ph,N+1 ist die Wahrscheinlichkeit, dass ein Job den Knoten h zuletzt besucht, bevor
er das Wartenetz über den Knoten N + 1 verlässt.
• Des Weiteren gilt p0,N+1 = 0, d.h. es ist nicht möglich vom Knoten 0 zum Knoten
N + 1 zu gelangen.
Eigenschaften der Knoten
Die einzelnen Knoten des Wartenetzes sind Wartesysteme wie sie in Kapitel 4 eingeführt
wurden.
• Die Warteräume in den Knoten sind unbegrenzt und die Bedienung in den einzelnen
Knoten erfolgt nach dem FIFO-Prinzip.
• Der Weg eines Kunden durch das Wartenetz hängt nur vom aktuell besuchten Knoten
ab und nicht von den vorher besuchten.
• Die Zeit, die ein Kunde beim Knotenwechsel benötigt, wird vernachlässigt. Um eine
gröÿere Realtitätsnähe zu gewährleisten sind folgende Betrachtungen möglich, die
aber mit Nachteilen verbunden sind:
Man addiert die Übergangszeit zu der Bedienzeit am Vorgängerknoten hinzu.
Dies kann aber die Verteilungsannahmen der Bedienzeiten stören.
Man fügt zwischen zwei Knoten noch einen Laufzeitknoten ein. Allerdings führt
dies zu einer Zustandsexplosion.
j
i
i
i,j
j
Laufzeitknoten
Zustand des Wartenetzes
• Sei ki die aktuelle Kundenanzahl in Knoten i. Der Zustand eines Wartenetzes
mit N Knoten ist gegeben durch:
k = (k1 , k2 , . . . , kN )
5.1. Eigenschaften von Wartenetzen
Typen von Wartenetzen
Wir werden zwei Arten von Wartenetzen betrachten: oene Wartenetze und geschlossene
Wartenetze.
• In einem oenen Wartenetz sind Zugänge von und Abgänge nach auÿen möglich,
d.h. die Anzahl der Kunden im Wartenetz ist nicht konstant.
• In einem geschlossenen Wartenetz gibt es keine Zugänge von und Abgänge nach
auÿen. Die Gesamtanzahl der Kunden K im Wartenetz ist konstant.
Eigenschaften der Kunden
• Der Pfad eines Kunden durch das Wartenetz werde mit Y1 , Y2 , . . . bezeichnet. Dabei
ist Y1 der Startknoten und Yi der i-te besuchte Knoten. Nach Annahme gilt die
Markovbedingung:
P(Yi+1 |Yi , Yi−1 , . . . , Y1 ) = P(Yi+1 |Yi )
Die Vergangenheit, d.h. die Betrachtung der vorher besuchten Knoten, kann in störendem Maÿe berücksichtigt werden. Allerdings erhält man eine Zustandsexplosion.
• Der Weg durch das Wartenetz sei nicht kundenspezisch. In der Realität gibt es
Fälle, in denen Kunden spezielle Wege, d.h. bestimmte Nachfolgeknoten bevorzugen.
• Die Bediendauer sei nicht kundenspezisch. Es gibt Modelle, die diese Einschränkungen beseitigen. Man kann z.B. Klassen einführen, so dass jede einzelne Klasse eine
spezielle Bedienverteilung und Übergangswahrscheinlichkeit zugeordnet bekommt.
Man bezeichnet in diesem Fall mit pi,r;j,s die Wahrscheinlichkeit, dass ein Kunde der
Klasse r den Knoten i verlässt und im Knoten j als Kunde der Klasse s erscheint.
Allerdings steigt der Aufwand bei dieser Betrachtungsweise enorm.
• Die Bedienzeiten in Knoten i seien exponentialverteilt mit Parameter µi (ki ). Dabei
bezeichnet ki die aktuelle Anzahl von Kunden im Knoten i. Wenn die Kundenanzahl
irrelevant ist, dann schreiben wir für die Bedienzeiten in Knoten i vereinfachend µi .
• Bei der Betrachtung von oenen Wartenetzen seien Neuankünfte von auÿen als Poissonprozess mit Parameter λ beschrieben. Die Ankunftsrate
von auÿen zum Knoten i
P
ist poissonverteilt mit Parameter λ · p0,i und N
p
=
1.
i=1 0,i
Beispiel: Rechnersystem als Wartenetz
In der folgenden Abbildung ist ein Rechnersystem mit mehreren Komponenten als Wartenetz
dargestellt. Neue Jobs werden zuerst von der CPU bearbeitet bevor sie auf Eingabe- oder Plattenzugrisoperationen zugreifen dürfen. Ein Job wird zuletzt immer von der CPU verarbeitet.
65
66
Kapitel 5. Wartenetze
Eingabe
neu
CPU
Drucker
fertig
Platte
5.1.1 Wartenetze mit Produkteigenschaft
Ein Wartenetz mit Produkteigenschaft ist durch die folgende Eigenschaft beschrieben. Die
Wahrscheinlichkeit P(k), dass sich das Wartesystem im Zustand k = (k1 , . . . , ki , . . . , kN )
bendet, ist gegeben durch:
P(k = (k1 , . . . , ki , . . . , kN )) =
N
Y
f(ki ),
ki = Anzahl der Kunden im Knoten i
i=1
Die Wahrscheinlichkeit P(k) kann als Produkt von Einzeltermen in Isolation berechnet
werden. Dabei kann der Knoten i so analysiert werden, als ob er ein M/M/c-Knoten wäre
(siehe Abbildung 5.1).
Ankünfte von 1
Abgänge nach 1
Ankünfte von 2
Abgänge nach 2
...
...
Ankünfte von N
Gesamtankunftsprozess
Knoten i
exponentialverteilte
Bedienung
Abgänge nach N
Abgänge nach N+1
(d.h. nach außen)
Abbildung 5.1: Aufbau eines Knotens in einem Wartenetz.
Der Ankunftsprozess am Knoten i ergibt sich durch Überlagerung der Abfertigungsprozesse
von Knoten j (j = 1, . . . , N) jeweils mit Wahrscheinlichkeit pji .
Dabei sind zwei wichtige Punkte zu beachten. Auch wenn die Bedienzeiten exponentialverteilt und die Neuankünfte poissonverteilt sind, ist im Allgemeinen der Ankunftsprozess
an einem Knoten nicht poissonverteilt. Man darf aber trotzdem für die stationären Wahrscheinlichkeiten so rechnen, als ob der Gesamtankunftsprozess exponentialverteilt wäre!
Es gibt jedoch eine Ausnahme, das so genannte Tandemnetz (siehe Abbildung 5.2). Bei
einem Tandemnetz zieht sich der Poissonprozess von vorn bis hinten durch.
5.2. Jackson-Netze
67
Abbildung 5.2: Ein Tandemnetz
5.2 Jackson-Netze
Ein Jackson-Netz ist ein oenes Wartenetz, d.h. es gibt Ankünfte von und Abgänge nach
auÿen. Ein neuer Job betritt das Wartenetz über den Knoten 0. Ein Job kann das Wartenetz
über den Knoten N P
+ 1 verlassen. Ein neuer Job von auÿen geht mit Wahrscheinlichkeit
p0,i zum Knoten i, N
i=1 p0,i = 1, d.h. der Knoten i bekommt von auÿen Jobs mit der
Rate λ · p0,i . Abbildung 5.3 stellt ein Jackson-Netz dar.
p0,1
p0,2
0
k1
1(k1)
k2
2(k2)
l
N+1
kN
p0,N
N(kN)
Abbildung 5.3: Ein Jackson-Netz.
Jackson-Netze besitzen folgende Eigenschaften:
• Die Bedienzeiten im Knoten i sind exponentialverteilt mit Parameter µi (ki ). Dabei
bezeichnet ki die aktuelle Anzahl von Kunden im Knoten i.
• Der Pfad eines Kunden durch das Wartenetz werde mit Y1 , Y2 , . . . bezeichnet. Dabei
ist Y1 der Startknoten und Yi der i-te besuchte Knoten im System. Nach Annahme
gilt die Markovbedingung:
P(Yi+1 |Yi , Yi−1 , . . . , Y1 ) = P(Yi+1 |Yi )
Die Übergangswahrscheinlichkeit von Knoten i zum Knoten j ist deniert als:
pi,j = P(Ym+1 = j|Ym = i)
Wir haben also eine homogene Markovkette.
• Neue Kunden kommen poissonverteilt mit Parameter λ an.
• Die Abarbeitungsstrategie ist FIFO.
68
Kapitel 5. Wartenetze
Deterministische Analyse von Jackson-Netzen
Wir betrachten ein groÿes Intervall der Länge T , in der Anfangs- und Endzustand gleich
sind. Wir bezeichnen mit D(k, k 0 ) die Anzahl der Übergänge vom Zustand k = (k1 , . . . , kN )
0 ). Mit der Flow-In = Flow-Out -Regel erhalten wir für alle
nach Zustand k 0 = (k10 , . . . , kN
Zustände k die Beziehung:
X
X
D(k, k 0 ) =
D(k 0 , k)
k0
k0
Es sei T (k) der Anteil im Intervall T , in der man sich im Zustand k bendet. Dann ist die
Übergangsrate vom Zustand k zum Zustand k 0 gegeben durch:
d(k, k 0 ) =
Es sei p(k) =
T (k)
T
D(k, k 0 )
T (k)
der Zeitanteil vom Zustand k. Dann gilt:
X
X
p(k 0 ) · d(k 0 , k) =
p(k) · d(k, k 0 )
k0
(5.1)
k
Es stellt sich die Frage nach einer Lösung für p(k) und wie diese aussieht? Die Lösung für
p(k) erhält man, wenn man den stationären Systemzustand berechnet.
Hierzu machen wir einige vereinfachende Annahmen bzgl. d(k, k 0 ).
Begrenzte Übergänge: Wir lassen keine Mehrfachereignisse zu, d.h. d(k, k 0 ) = 0, auÿer
wenn
• k 0 = a(k, i) = (k1 , . . . , ki + 1, . . . , kN ) d.h. der Wechsel von k 0 nach k erfolgt durch
einen Abgang nach aussen am Knoten i.
• k 0 = b(k, i) = (k1 , . . . , ki − 1, . . . , kN ) d.h. der Wechsel von k 0 nach k erfolgt durch
einen Neuzugang von auÿen am Knoten i.
• k 0 = c(k, i, j) = (k1 , . . . , ki + 1, . . . , kj − 1, . . . , kN ) d.h. der Wechsel von k 0 nach k
erfolgt durch einen Kundenwechsel vom Knoten i zum Knoten j.
Lokale Abhängigkeit: Die Wechselrate am Knoten i soll nur vom Knoten i und seiner
Belegung mit den Kunden abhängen, d.h.

0

pi,N+1 µi (ki + 1) falls k = a(k, i)
d(k, k 0 ) = p0,i λ
falls k 0 = b(k, i)


pi,j µi (ki + 1)
falls k 0 = c(k, i, j)
Die Wechselrate ist also nur abhängig von pi,j und µi (ki ) mit µi (ki ) > 0.
Unter diesen Annahmen hat das Gleichungssystem (5.1) die eindeutig bestimmte Lösung:
N ki 1 YY
ei · λ
p(k) = ·
G
µi (m)
i=1 m=1
Dabei ist G die Normierungskonstante und die ei sind die Lösungen des Gleichungssystem:
ei = p0,j +
N
X
j=1
ej · pj,i
5.2. Jackson-Netze
69
ei ist die mittlere Anzahl von Besuchen eines Jobs am Knoten i, während dieser Job das
System besucht. Die Formel p(k) hat Produktform, d.h.
p(k) = f1 (k1 ) · . . . · fN (kN )
Die Lösungen für ei sind eindeutig, wenn p0,j 6= 0 für mindestens ein j.
Stochastische Analyse von Jackson-Netzen
Die Wahrscheinlichkeit, dass sich das System zum Zeitpunkt t im Zustand k = (k1 , . . . , kN )
bendet, werde mit p(k, t) bezeichnet. Wir wollen nun die stationäre Lösung ermitteln, falls
diese existiert:
p(k) = lim p(k, t)
t→∞
Die Änderung von p(k, t) mit der Zeit lässt sich mit der Chapman-Kolmogorow-Gleichung
beschreiben:
!
N
X
d
p(k, t) = − λ +
µi (ki )(1 − pi,i ) · p(k, t)
dt
i=1
+
N
X
λ · p0,i · p(b(k, i), t)
i=1
+
+
N
X
µi (ki
i=1
N
X
+ 1) · pi,N+1 · p(a(k, i), t)
µi (ki + 1) · pi,j · p(c(k, i, j), t)
i,j=1;i6=j
Für die stationäre Lösung müssen die folgenden Bedingungen erfüllt sein:
X
d
p(k, t) = 0
und
p(k) = 1
dt
k
Die Lösung lautet:
ki
N Y
Y
λ · ei
p(k) = p(0) ·
µi (m)
i=1 m=1
Dabei sind die ei 's die eindeutige Lösung des Gleichungssystems
ei = p0,i +
N
X
ej · pj,i
i = 1, . . . , N
j=1
und p(0) ist eine Normierungskonstante. Für den Fall, dass p(0) nicht existiert, gibt es
keine stationäre Lösung.
Spezialfall ·/M/1
Alle Knoten haben die Eigenschaft ·/M/1, d.h. es gibt einen Bediener und die Bedienraten µi (ki ) = µi sind unabhängig von der Kundenzahl. Siehe Abschnitt 4.6 und Gleichung (4.16). Dann gilt:
p(k1 , . . . , kN ) = p1 (k1 ) · . . . · pN (kN )
70
Kapitel 5. Wartenetze
wobei
λ · ei
µi
Wir haben eine Formel für das M/M/1-System mit Ankunftsrate λ · ei und Bedienrate µi .
ei ist die eindeutig bestimmte Lösung von
i
pi (ki ) = (1 − ρi ) · ρk
i
mit
N
X
ei = p0,i +
ρi =
eh ph,i
h=1
Die Lösung hat Produktform mit der Normierungskonstante 1. Eine Lösung existiert nur,
wenn ρi < 1 für alle i gilt.
Zusammenfassung für Jackson-Netze
Ein Wartenetz muss die folgenden Eigenschaften besitzen, um als Jackson-Netz bezeichnet
zu werden, siehe Abbildung 5.3.
• Die Lösung hat Produktform, d.h. die Knoten sind voneinander isoliert betrachtbar.
• Die Produktform ist besonders einfach, wenn nur ein Server am Knoten i ist, d.h.
µi (ki ) = µi
In diesem Fall entfällt die Normierungskonstante.
• Die isolierte Behandlung von Knoten i:
Der Knoten i hat die ·/M/ri -Eigenschaft. ri bedeutet, dass eventuell mehrere Server
vorhanden sind, d.h. µi ist evtl. abhängig von ki .
Man kann den Knoten i auch als M/M/ri -System analysieren, obwohl der Ankunftsprozess keineswegs poissonverteilt ist. Die Ankunftsrate ist hier λ·ei . Eine Ausnahme
bilden die Tandemnetze, in denen der Ankunftsprozess tatsächlich poissonverteilt ist.
Beispiel: Jackson-Netz
Gegeben sei das folgende Jackson-Netz.
1/3
2
1/4
1/3
1/3
1/8l
1
1
3
1/4
1/2
1/2
4
1/4l
1/2
5/8l
5.2. Jackson-Netze
71
Um e1 , . . . , e4 zu bestimmen, müssen wir das folgende Gleichungssystem

p1,1 p1,2 p1,3
p2,1 p2,2 p2,3

(e1 , . . . , e4 ) = (p0,1 , . . . , p0,4 ) + (e1 , . . . , e4 ) · 
p3,1 p3,2 p3,3
p4,1 p4,2 p4,3

p1,4
p2,4 

p3,4 
p4,4
oder auch in Kurzform
e=p+e·P
lösen.
Nach dem Einsetzen erhalten wir:

1
5 2
, 0, ,
8
8 8
0
1
4
0
1

2
 1 0 1 0
3
3

+ (e1 , . . . , e4 ) · 
1 0 0 0
0 0 21 0
1
5 2
e2
e1 e2 e4 e1 =
, 0, ,
+
+ e3 , ,
+ ,
8
8 8
3
4 3
2 2
(e1 , . . . , e4 ) =
Wir haben damit ein Gleichungssystem mit 4 Gleichungen und 4 Unbekannten, welches die folgende Lösung besitzt:
12 3 10
(e1 , . . . , e4 ) =
, , ,1
8 8 8
Es sei λ = 8, d.h. (λ · e1 , λ · e2 , λ · e3 , λ · e4 ) = (12, 3, 10, 8). Dann ist die stationäre Lösung bei
einem exponentialverteiltem Server an der Station i mit Bedienrate µi gegeben durch:
p(k1 , . . . , k4 ) =
4
Y
(1 − ρi ) · ρki i
mit ρi =
i=1
λ · ei
µi
Eine stationäre Lösung existiert aber nur, wenn ρi < 1 für i = 1, . . . , 4 gilt, d.h. in diesem Fall
λ · e1
λ · e2
λ · e3
λ · e4
=
=
=
=
12 < µ1
3 < µ2
10 < µ3
8 < µ4
also
also
also
also
µ1
µ2
µ3
µ4
> 12
>3
> 10
>8
Nun können wir die Wahrscheinlichkeiten für bestimmte Konstellationen berechnen, z.B.
p(5, 3, 9, 1000) = (1 − ρ1 )ρ51 · (1 − ρ2 )ρ32 · (1 − ρ3 )ρ93 · (1 − ρ4 )ρ1000
4
oder, den Fall, wenn das Wartenetz leer ist, also
p(0, 0, 0, 0) = (1 − ρ1 ) · (1 − ρ2 ) · (1 − ρ3 ) · (1 − ρ4 )
Beispiel: Tandemnetz
Wir erhalten als Übergangsmatrix P der inneren Knoten

p1,1
 p2,1

P= .
 ..
p1,2
p2,2
..
.
···
···
..
.
pN,1
pN,2
···
 0 1
p1,N

p2,N 
0 0
 
..  = 

.   ... ...
pN,N
0 0

··· 0

..
. 0


..
. 1
0 0
72
Kapitel 5. Wartenetze
sowie das Gleichungssystem
ei = p0,i +
N
X
eh · ph,i
h=1
d.h. wir erhalten
p0,1 = 1
=
0 + ei−1 = ei−1
ei = 1
für i = 1
für i > 1
∀i
Als stationäre Lösung erhalten wir damit
p(k1 , . . . , kN ) = p1 (k1 ) · . . . · pN (kN )
mit
pi (ki ) = (1 − ρi ) · ρki i
und
ρi =
λ · ei
λ
=
<1
µi
µi
i = 1, . . . , N
5.3 Gordon-Newell-Netze
Gordon-Newell-Netze sind geschlossene Netze, d.h. die Gesamtanzahl der Kunden K
bleibt im Wartenetz konstant. Wir wollen nun die stationäre Verteilung von Gordon-NewellNetzen untersuchen. Es werden die gleichen Voraussetzungen wie bei Jackson-Netzen getroen.
Die Änderungen des Zustands k = (k1 , . . . , kN ) ist durch die folgende Chapman-KolmogorowGleichung beschrieben:
# 
"N
X
d
µi (ki ) · (1 − pi,i ) · p(k, t) + 
p(k, t) = −
dt
i=1
N
X

µi (ki + 1) · pi,j · p(c(k, i, j), t)
i,j=1; i6=j
Dabei beschreibt c(k, i, j) den Fall, dass ein Kunde in Knoten j weniger und in Knoten i
mehr wird.
c(k, i, j) = (k1 , . . . , ki + 1, . . . , kj − 1, . . . , kN )
Die Bedingung für die stationäre Lösung lautet:
d
p(k, t) = 0
dt
Mit dieser Bedingung erhalten wir die Gleichung:
N
X
µi (ki ) · (1 − pi,i ) · p(k, t) =
i=1
N
X
µi (ki + 1) · pi,j · p(c(k, i, j), t)
(5.2)
i,j=1;i6=j
Die stationäre Lösung p(k) = limt→∞ p(k, t) ist gegeben durch:




ki
ki
N
N
1 Y  ki Y
1 
1 Y Y
ei 
1
p(k) =
ei
=
=
f(k1 )·. . .·f(kN ) (5.3)
G(K)
µi (j)
G(K)
µi (j)
G(K)
i=1
j=1
i=1
j=1
5.3. Gordon-Newell-Netze
73
G(K) ist eine von der Gesamtanzahl der Kunden K abhängige Normierungskonstante. Dabei
bilden e1 , . . . , en irgendeine nichtverschwindende Lösung von:



(e1 , . . . , eN ) = (e1 , . . . , eN ) · 

p1,1
p2,1
..
.
p1,2
p2,2
..
.
···
···
..
.
p1,N
p2,N
..
.





pN,1 pN,2 · · · pN,N
Beweis: Nachweis der Korrektheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Man setzt die Lösung (5.3) für p(k) in die Gleichung (5.2) ein.
0 =
1
G(K)
N
Y
r
ek
r
r=1
kr
Y
1
µr (h)
h=1

N
X

µi (ki )(1 − pi,i ) −
i=1
N
X

µi (ki + 1) · pi,j · p(c(k, i, j), t) ⇐⇒
i,j=1;i6=j
ei µj (kj )
ej µi (ki + 1)

kr
N
Y
1 X
µi (ki )(1 − pi,i ) −
µr (h)
mit p(c(k, i, j), t) =
1 Y kr
er
G(K)
N
0 =
r=1
0 =
N
X
i=1
h=1
µi (ki )(1 − pi,i ) −
i=1
N
X
pi,j
i,j=1;i6=j
N
X
i,j=1;i6=j

ei
pi,j · µj (kj ) ⇐⇒
ej
ei
· µj (kj ) ⇐⇒
ej
Trick:µi (ki )pi,i in die zweite Summe übernehmen und in der ersten Summe Index umbenennen!
N
X
N
X
ei
· µj (kj ) ⇐⇒
ej
i,j=1
j=1
"
#
N
N
X
X
ei
0 =
µj (kj ) 1 −
pi,j
⇐⇒
ej
j=1
i=1
"
#
N
X
ei
0 =
1−
pi,j
ej
0 =
µj (kj ) −
pi,j
(5.4)
i=1
Es können sich im geschlossenen Wartenetz mit positiver Wahrscheinlichkeit alle Jobs
gleichzeitig in einem Knoten aufhalten, d.h. es kann für alle bis auf einen Knoten gelten:
µj (kj ) = 0
Aus Gleichung (5.4) erhält man eine Lösung für (e1 , . . . , eN ).
ej −
N
X
pi,j · ei = 0
i=1
ej =
N
X
pi,j · ei
j = 1, . . . , N
i=1
Wenn die ei so berechnet werden, dann stimmt die Lösung. . . . . . . . . . . . . . . . . . . . . . . . . . 74
Kapitel 5. Wartenetze
Spezialfall ·/M/rm
Knoten m sei von der Form ·/M/rm mit
j · µm
µm (j) =
m · µm
j 6 µm
j > µm
Dann ergibt sich die Lösung zu:
1 Y
G(K)
N
p(k) =
i=1
mit
ei
µi
ki !
βi =
i −ri
ri !rk
i
ki
1
βi (ki )
ki < ri
ki > ri
Spezialfall ·/M/1
Wenn für alle Knoten rm = 1 gilt, dann ergibt sich die Lösung zu:
p(k) =
N Y
ei ki
1
·
G(K)
µi
i=1
5.3.1 Allgemeine Ergebnisse zu Gorden-Newell-Netzen
Seien ρ1 > ρ2 > ρ3 · · · > ρN , wobei ρi =
ei
µi
die Last an Knoten i ist.
Für die Zustandswahrscheinlichkeit p(k1 , . . . , kN ) gilt für ki < ∞
p(k1 , . . . , kN ) −−−−−−−−−−−−→ 0
k1 +...+kN =K→∞
Wir betrachten nun die Wahrscheinlichkeitsverteilung der Randknoten p(k2 , . . . , kN ). Wir
erhalten hierfür:
p(k2 , . . . , kN ) = p2 (k2 ) · . . . · pN (kN )
Das Ergebnis ist wie das von Jackson-Netzen. Wenn man ein geschlossenes Wartenetz mit
1, 2, . . . , N Knoten und sehr vielen Kunden hat, dann ist dieses Wartenetz ähnlich zu einem
oenen Wartenetz mit den Knoten 2, 3, . . . , N. Dabei übernimmt der Knoten 1 die Rolle
der Auÿenwelt.
Beispiel: Ringnetz
Wir betrachten ein
Ringnetz,
welches in folgender Abbildung dargestellt ist.
5.3. Gordon-Newell-Netze
75
1
N
2
N-1
..............
3
Die dazugehörigen Wahrscheinlichkeiten lauten:
pi,i+1
pN,1
pi,j
Aus der Gleichung
= 1
= 1
= 0
i = 1, . . . , N − 1
sonst
(e1 , . . . , eN ) = e = e · P = (eN , e1 , . . . , eN−1 )
erhalten wir
e1 = e2 = . . . = eN = 1
oder auch gleich c für c 6= 0. Damit erhalten wir als stationäre Lösung:
p(k) =
Dabei ist
N
1 Y 1
·
G
µki
i=1 i
G = G(k1 , . . . , kN ) = G(k1 + . . . + kN ) = G(K)
Wir betrachten hier einen konkreten Fall mit N = 3 Knoten und K = 2 Kunden. Seien weiterhin
µ1 = µ2 = µ und µ3 = 2µ, d.h. Knoten 3 bearbeitet die Kunden schneller. Die Aufgabe ist nun
K Kunden auf N Knoten zu verteilen. Mögliche Belegungen sind:
p(2, 0, 0) = p(0, 2, 0) =
p(0, 0, 2) =
p(1, 0, 1) = p(0, 1, 1) =
p(1, 1, 0) =
Aus der Normalisierungsbedingung
P
1
G
1
G
1
µ2
1
·
(2µ)2
·
1
G
1
G
1
2µ2
1
· 2
µ
·
p(· · · ) = 1 folgt
3
1
2
1
+
+
1 =
G µ2 4µ2 2µ2
1
4µ2
=
G
17
Durch Einsetzen erhält man die Wahrscheinlichkeiten:
76
Kapitel 5. Wartenetze
p(2, 0, 0) = p(0, 2, 0) = p(1, 1, 0) =
p(0, 0, 2) =
p(1, 0, 1) = p(0, 1, 1) =
4
17
1
17
2
17
Beispiel: Vier-Knotennetz
Wir betrachten das Wartenetz, welches wir schon bei den oenen Netzen betrachtet haben und
in der folgenden Abbildung dargestellt ist.
2
1/2
1/2
1/3
1
3
1
2/3
1
4
Um die ei 's zu berechnen müssen wir das Gleichungssystem

0 13 0 23
 1 0 1 0
2
2
(e1 , . . . , e4 ) = (e1 , . . . , e4 ) · 
 1 0 0 0
0 0 1 0
e2
e1 e2
2e1
=
+ e3 , ,
+ e4 ,
2
3 2
3




lösen. Eine Lösung erhält man, indem man z.B e1 = 6 setzt. Daraus folgen dann:
e2 = 2
Normiert man den Lösungsvektor, so gilt
e4 = 4
e3 = 5
P
ei = 1 und man erhält in diesem Fall
6 2 5 4
(e1 , e2 , e3 , e4 ) =
, , ,
17 17 17 17
i
Im normierten Fall ist ei die relative Häugkeit, mit der ein Job aktuell am Knoten i ist. Als
stationäre Lösung erhalten wir:
1 Y
G
4
p(k1 , . . . , k4 ) =
i=1
• Betrachten wir den Spezialfall K = 1:
ei
µi
ki
5.3. Gordon-Newell-Netze
77
Nehmen wir an, dass alle Bedienraten µi gleich groÿ sind, d.h. µi = µ, dann erhalten wir
X
p(k1 , k2 , k3 , k4 ) = 1 =
Also gilt die Beziehung
G=
1 1
(6 + 2 + 5 + 4)
Gµ
17
µ
Wir erhalten damit:
p(1, 0, 0, 0) =
6
17
p(0, 1, 0, 0) =
2
17
p(0, 0, 1, 0) =
4
17
p(0, 0, 0, 1) =
5
17
Man sieht, dass die Zustandswahrscheinlichkeiten unabhängig von der Bedienrate µ sind.
• Betrachten wir den Spezialfall K = 2:
Wir nehmen wieder an, dass alle Bedienraten µi gleich groÿ sind. Wir erhalten z.B. folgende
Zustandswahrscheinlichkeiten:
2
1 e1
36
p(2, 0, 0, 0) =
=
G µ
Gµ2
1 e2 e4
2·4
8
p(0, 1, 0, 1) =
=
=
G µ µ
Gµ2
Gµ2
Auch in diesem Fall sind die Zustandswahrscheinlichkeiten unabhängig von µ und damit
auch von G:
X
1
p(k1 , k2 , k3 , k4 ) = 1 =
· SUM
Gµ2
Dabei ist SUM die Zählersumme der Elementarwahrscheinlichkeiten, also (36 + 8 + . . .)
p(2, 0, 0, 0)
=
p(0, 1, 0, 1)
=
...
36
SUM
8
SUM
Beispiel: Central-Server-Modell
Wir betrachten nun das Central-Server-Modell aus der folgenden Abbildung.
1
p2
p3
2
3
......
p1
pN
N
78
Kapitel 5. Wartenetze
Die Übergangswahrscheinlichkeiten sind wie folgt:
p1,i
pi,1
pi,j
i = 1, . . . , N
i = 2, . . . , N
sonst
= pi
= 1
= 0
Damit erhalten wir als Gleichungssystem:



(e1 , . . . , eN ) · 

(e1 , . . . , eN ) =
p1
1
..
.
···
···
..
.
p2
0
..
.
1
0
···
pN
0
..
.
0





(e1 p1 + e2 + . . . + eN , e1 p2 , e1 p3 , . . . , e1 pN )
=
oder anders geschrieben:
= e1 p1 + e2 + . . . + eN
= e1 p2
e1
e2
..
.
eN
= e1 pN
Wir erhalten als Lösungsvektor:
(e1 , e1 p2 , . . . , e1 pN )
Setzt man e1 = 1, so erhält man
(1, p2 , . . . , pN )
Setzt man e1 = µ1 , so dass der erste Produktterm in der Lösung wegfällt, dann erhält man:
(µ1 , µ1 p2 , . . . , µ1 pN )
Die stationäre Lösung lautet dann:
1 Y
G
N
p(k1 , . . . , kN ) =
i=1
ei
µi
ki
=
Für den Fall, dass µi = µ1 und p1 = p2 = . . . = pN =
p(k1 , . . . , kN ) =
k
N 1 Y µ1 pi i
·
G
µi
i=2
1
N
gelten, haben wir als stationäre Lösung:
ki
K−k1
N 1 1
1 Y 1
·
=
G
N
G N
i=2
Setzen wir z.B. N = 3 und K = 2, dann erhalten wir als Zustandswahrscheinlichkeiten:
p(0, 1, 1) = p(0, 2, 0) = p(0, 0, 2) =
p(1, 0, 1) =
p(2, 0, 0) =
1
p(1, 1, 0) =
·
G
0
1 1
1
=
G 3
2
1
·
G
2
1
3
1
1
3
Damit erhalten wir G = 2.
Oft ist man an einzelnen Wahrscheinlichkeiten nicht interessiert, sondern an der Randverteilung
bzw. an abgeleiteten Parametern. Diese können aus p(k1 , . . . , kN ) ermittelt werden.
5.3. Gordon-Newell-Netze
79
Als Beispiel betrachten wir im Central-Server-Modell die Belegung der Station 3.
1/3
2
1/3
1
1/3
p(k3 = i) =
X
3
p(k3 = i; k1 , k2 , k4 , . . .)
k1 ,k2 ,...
p(k3 = 0) = p(0, 2, 0) + p(1, 1, 0) + p(2, 0, 0) =
p(k3 = 1) =
p(k3 = 2) =
4
18
1
18
13
18
Die mittlere Kundenanzahl an Station 3 ist dann:
k = 0 · 13 + 1 · 4 + 2 · 1 = 1
N
3
18
18
18
3
Die mittlere Systemzeit Sk3 an Station 3 erhält man mit Little's Result:
k
N
3
λk3
Sk3 =
Es gilt:
λk3 = µk1 · p3 · P(k1 6= 0) = µ ·
Also erhalten wir
Sk3 =
1 5
5
· =µ·
3 6
18
6 1
·
5 µ
Die mittlere Wartezeit an Station 3 ist dann:
Wk3 = Sk3 −
1 1
1
= ·
µ
5 µ
Dabei ist µ1 die mittlere Bediendauer an Station 3. Die mittlere Wartezeit an der Station ist
vergleichsweise klein, da an dieser Station nur gewartet wird, wenn sich dort beide Kunden
80
Kapitel 5. Wartenetze
benden. Für die anderen Stationen erhalten wir:
λk2
k
N
2
λk1
Sk1
k
N
1
= λk3
k
= N
3
= µk1 · P(k1 6= 0) + µk2 · P(k2 6= 0) + µk3 · P(k3 6= 0)
2
1
1 15
µ +
·µ+ ·µ
=
3 18 18
6
5
=
µ
6
k
8 1
N
1
= ·
=
λk1
5 µ
3
2
1
4
= 0·
+1· +2· =
18
6
2
3
5.4 BCMP-Netze
In diesem Abschnitt betrachten wir allgemeine Wartenetze mit Produktform als stationäre
Lösung. Diese Wartenetze werden auch als BCMP-Netze bezeichnet. Folgende Erweiterungen im Vergleich zu den bisher betrachteten Wartenetzen werden eingeführt:
• Wir werden andere Bedienzeitverteilungen als die Exponentialverteilung betrachten.
• Wir werden andere Abfertigungsdisziplinen als FIFO betrachten. Leider ist die CoxVerteilung nur verträglich mit den anderen Disziplinen auÿer FIFO. Wenn FIFO
gewählt wird, dann muss die Exponentialverteilung als Bedienzeitverteilung genommen werden.
• Wir werden unterschiedliche Jobklassen einführen.
• Wir werden Mischungen von Disziplinen, Verteilungen und Klassen an verschiedenen
Knoten zulassen.
Die Netze mit diesen Eigenschaften heiÿen BCMP-Netze, die von Baskott, Chandy, Muntz
und Palacios untersucht wurden.
Eigenschaften von BCMP-Netzen
Verallgemeinerung der Sätze von Jackson und Gordon-Newell auf Wartenetze mit
• allgemeineren Abfertigungsstrategien an den einzelnen Knoten
• allgemeineren Abfertigungsverteilungen an den einzelnen Knoten
• unterschiedlichen Jobklassen
Es werden folgende Voraussetzungen gemacht:
(1) Das Wartenetz hat N innere Knoten (1, 2, . . . , N). Bei oenen Wartenetzen gibt es
zusätzlich einen Knoten 0 für die Zugänge und einen Knoten N + 1 für die Abgänge.
5.4. BCMP-Netze
81
(2) Es gibt x Jobklassen. Die Klassenzugehörigkeit eines Jobs kann sich auf dem Weg durch
das Wartenetz ändern.
(3) Es existiert eine Übergangsmatrix P = pi,c;j,d zu den Markov-Übergängen. Dabei
bezeichnet pi,c;j,d die Wahrscheinlichkeit, dass ein Job der Klasse c nach Abfertigung
am Knoten i nach Knoten j geht und dort ein Job der Klasse d wird.
(4) Neuankünfte sind poissonverteilt mit Rate λ(K) und K = k1 + . . . + kN ist die aktuelle
Gesamtanzahl an Kunden im Wartenetz. Das Wartenetz kann oen oder geschlossen
sein. Möglich ist auch, dass das Wartenetz bzgl. einer Klasse oen und bzgl. einer
anderen Klasse geschlossen ist.
(5) Die inneren Knoten sind von einem der folgenden vier Typen:
Typ
Disziplin
Serveranzahl pro Knoten
1
2
3
4
FIFO
PS
IS
LIFO-PR
1
1
∞
1
Abfertigungsverteilung
Kunden der Klasse c
der
expi
Coxi,c
Coxi,c
Coxi,c
Erläuterungen:
• expi bedeutet exponentialverteilt mit Parameter µi (ki ). Für alle Klassen c gilt
die gleiche Verteilung.
• PS: Processor Sharing
• IS: Innite Server
• LIFO-PR: Last In First Out with Preemptive Resume
• Coxi,c ist die klassenabhängige Cox-Verteilung.
5.4.1 Die Cox-Verteilung
Die Cox-Verteilung Coxi,c ist eine klassenabhängige Verteilung und wird charakterisiert
durch:
• Si,c : Anzahl der Positionen der Cox-Verteilung
• µi,c,m : Parameter der Exponentialverteilung der m-ten Stufe dieser Verteilung
• br,i,c : die Wahrscheinlichkeit, dass nach Stufe r auch noch Stufe r + 1 betreten wird
bi bezeichnet die Wahrscheinlichkeit, dass ein Job nach der i-ten exponentialverteilten
Station zur Station (i + 1) geht. (1 − bi ) ist die Wahrscheinlichkeit, dass die Bediendauer
beendet wird (siehe Abbildung 5.4).
P(Bi 6 t) = 1 − e−µi t
µi
B∗i (s) =
Laplace-Transformierte
s + µi
Es sei Y die Zufallsvariable, welche die Zeit zwischen A und B angibt. Dann ist Y coxverteilt. Es gilt:
82
Kapitel 5. Wartenetze
A
b0
b1
m1
m2
1-b0
b2
1-b1
...
bN-1
1-b2
mN
1-bN-1
bN
1-bN
B
Abbildung 5.4: Die Cox-Verteilung
(1) Die Wahrscheinlichkeit, dass ein Job das System nach Station i verlässt ist
b0 · b1 · . . . · bi−1 ·(1 − bi ) = ai (1 − bi )
|
{z
}
ai
(2) Für Y = 0 ergibt sich:
P(Y = 0) = 1 − b0 = L∗0 (s)
(3) Es sei L∗i die Laplace-Transformierte eines Jobs, der bei Station i aufhört. Dann ist die
Summe von i exponentialverteilten Zeiten
L∗i (s) =
i
Y
j=1
µj
s + µj
(4) Für die Laplace-Transformierte Y ∗ (s) einer Cox-Verteilung gilt:
∗
Y (s) = 1 − b0 +
N
X
ai (1 − bi )
i=1
i
Y
j=1
µj
s + µj
Hieraus ergibt sich
E(Y) = −Y 0∗ (0) =
N
X
ai
i=1
µi
Var(Y) = Y 00∗ (0) − (Y 0∗ (0))2 =
N
X
ai
µ2i
i=1
Y ∗ (s) ist eine rationale Funktion, die aus einem Zähler- und einem Nennerpolynom
besteht.
Durch Einstellen der Parameter N, µi , bi kann jede rationale Funktion beliebig genau approximiert werden, da Cox-Verteilungen fast beliebig allgemein sind. Es sei F(t) die Verteilungsfunktion einer Zufallsvariablen mit endlichem Erwartungswert und F(t) = 0 für t < 0.
Dann gibt es zu jedem ε > 0 eine Verteilungsfunktion φ(t) vom Cox-Typ mit:
Z∞
|F(t) − φ(t)|dt < ε
0
5.4. BCMP-Netze
83
und
Z∞
0
mit
t · |F(t) − φ(t)|dt < ε
|E(F) − E(φ)| = t|F(t) − φ(t)|
Verteilungen vom Cox-Typ sind besonders interessant, weil der Zustand durch eine ganze
Zahl beschrieben werden kann.
5.4.2 Systemzustand
= (k
1 , . . . , k
N ) ist charakterisiert durch:
Der Systemzustand k
• Anzahl der Kunden an dieser Station und ggf. durch
• ihre Klassenzugehörigkeit
• ihre erreichte Position bzgl. ihrer Cox-Verteilung (vor allem bei LIFO-PR)
Für die Servertypen erhalten wir
• für Typ 1 wird der Systemzustand durch:
i = (ki , . . . , ki )
k
ki
1
mit kir als Klasse des r-ten Kunden an Station i (bei FIFO) beschrieben.
• für Knoten vom Typ 4 erhalten wir:
i = [(ki , pi ), . . . , (ki , pi )]
k
ki
ki
1
1
kir beschreibt bei LIFO-PR die Klasse des r-ten Kunden und pir ist die aktuell
erreichte Stufe (1 6 pir 6 Si,c ) in seiner Cox-Verteilung.
• für die Knoten vom Typ 2 und Typ 3 erhalten wir:
i = {(ki , pi ), . . . , (ki , pi )}
k
ki
ki
1
1
Für die Typen 2,3 und 4 bezeichnet ki,c,m die Anzahl der Kunden der Klasse c an Station
i, welche aktuell die Stufe m erreicht haben.
Alle 4 Servertypen haben die Memoryless ⇔Memoryless Eigenschaft, d.h. wenn die Ankünfte poissonverteilt sind, dann ist auch das Abgehen poissonverteilt. Diese Eigenschaft
ist charakteristisch für die Produktform der stationären Lösung.
5.4.3 Das BCMP-Theorem
1 , . . . , k
N ) bendet ist geDie Wahrscheinlichkeit, dass sich ein Wartenetz im Zustand (k
geben durch:
1 , . . . , k
N )) = C · d(K) · f1 (k
1 ) · . . . · fN (k
N )
P(Systemzustand = (k
Wobei die Terme in obiger Gleichung wie folgt gegeben sind:
84
Kapitel 5. Wartenetze
• C ist die Normierungskonstante, die wie folgt berechnet wird:

−1
N
X
Y
i )
C=
d(K) ·
fi (k
k
i=1
• d(K) ergibt sich in Abhängigkeit des Wartenetztyps:
Q
K−1
m=0 λ(m) falls Wartenetz oen
d(K) =
1
falls Wartenetz geschlossen
i ):
• Die Terme für die inneren Knoten fi (k
Q
ki ei ki j


 j=1 µi (j)







Qx Qsi c h ei c ·Ai c m iki c m


ki ! · c=1 m=1
·

µi c m


,
,
,
, ,
, ,
, ,
i ) =
fi (k

Qx Qsi c h ei c ·Ai c m iki c m



·
 c=1 m=1
µi c m








Q
e
·A

 ki i ki j i ki j pi j
,
,
, ,
, ,
, ,
,
j=1
Typ 1 (FIFO)
,
,
,
, ,
1
ki,c,m !
1
ki,c,m !
Typ 2 (PS)
Typ 3 (IS)
Typ 4 (LIFO-PR)
,
µi,ki,j ,pi,j
mit
Ai,c,m := b0,i,c · b1,i,c · . . . · bm−1,i,c
und ej,c ist die Lösung des Gleichungssystems
ej,c =
x X
N
X
ei,d · pi,d;j,c + p0,∗;j,c
d=1 i=1
Die allgemeinen BCMP-Formeln sind meist zu komplex, weil zu viele uninteressante bzw.
wenig interessante Teilzustände vorhanden sind. Es genügt in der Regel, die Anzahl yic
der Kunden einer Klasse c an Station i zu ermitteln. Diese erhält man durch das Zu . Die zugehörigen Formeln haben
sammenfassen entsprechender Wahrscheinlichkeiten p(k)
Produktform und sind viel einfacher:
Es seiPyic die Anzahl der Kunden der Klasse c an Station i, yi = (yi , . . . , yix ) und
ki = xc=1 yi,c die Gesamtanzahl der Kunden an der Station i. Dann gilt:
1
P((y1 , . . . , yN )) = C · d(K) · g1 (y1 ) · g2 (y2 ) · . . . · gN (yN )
mit

ki
Px
yic
1
1


k
!
·
·
e
·
i

c=1 yic !
ic
µi






yic
P
eic
gi (yi ) = ki ! · xc=1 y1 ! · µ
ic
ic






yic

Qx
eic

1
·
c=1 yi !
µi
c
c
falls i vom Typ 1
falls i vom Typ 2 oder 4
falls i vom Typ 3
5.4. BCMP-Netze
85
Wir betrachten nun den Spezialfall, dass das Wartenetz oen ist und dass λ = λ(K) = const
ist. Sei
ki = Gesamtanzahl der Kunden in Knoten i
x
X
=
yi,c
c=1
und die Last an Knoten i
ρi =
x
X
λei,c
µi,c
c=1
Dann erhalten wir:
p(k1 , . . . , kN ) = p1 (k1 ) · p2 (k2 ) · . . . · pN (kN )
mit
pi (ki ) =

(1 − ρi ) · ρki
i
falls i vom Typ 1,2,4
e−ρi ·
falls i vom Typ 3
k
ρi i
ki !
Für i vom Typ 1 ist µic = µi = const. Dies ist eine direkte Übertragung des Satzes von
Jackson. Die Randverteilungen werden berechnet mit:
• M/M/1-Lösung bei Typ 1,2,4
• M/G/∞-Lösung bzw. M/M/∞-Lösung bei Typ 3
Die Last ρi ist natürlich geeignet anzupassen (Mittelung über alle Klassen 1, . . . , x).
Beispiel: Oenes Wartenetz
Wir betrachten ein oenes Wartenetz, das N = 3 Knoten und R = 2 Auftragsklassen hat.
LIFO-PR
m2
Processor Sharing
m1
Quelle
0
m3
LIFO-PR
Senke
4
Der erste Knoten hat den Typ 2, der zweite und dritte Knoten den Typ 4. Die Bedienzeiten seien
exponentialverteilt mit den Raten:
µ11 = 8 sec−1
µ12 = 24 sec−1
µ21 = 12 sec−1
µ22 = 32 sec−1
µ31 = 16 sec−1
µ32 = 36 sec−1
86
Kapitel 5. Wartenetze
Die Zwischenankunftszeiten seien ebenfalls exponentiell verteilt mit den Ankunftsraten für Aufträge der Klassen 1 und 2:
λ1 = λ2 = 1 Auftrag/sec.
Die Übergangswahrscheinlichkeiten seien gegeben durch:
p0,11 = 1
p11,21 = 0.4
p11,31 = 0.3
p11,4 = 0.3
p21,11
p21,31
p31,11
p31,21
= 0.6
p0,12 = 1
= 0.4 p12,22 = 0.3
= 0.5 p12,32 = 0.6
= 0.5 p12,4 = 0.1
p22,12
p22,32
p32,12
p32,22
= 0.7
= 0.3
= 0.4
= 0.6
d.h. Klassenwechsel von Aufträgen ndet nicht statt. Wir wollen die Wahrscheinlichkeit für den
Netzwerkzustand (k1 , k2 , k3 ) = (3, 2, 1) mit Hilfe des BCMP-Theorems ermitteln.
Schritt 1:
Berechnung der Besuchshäugkeiten eir für alle i = 1, . . . , N und alle r = 1, . . . , R
e11
e21
e31
= p0,11 + e11 p11,11 + e21 p21,11 + e31 p31,11 = 3.333
= p0,21 + e11 p11,21 + e21 p21,21 + e31 p31,21 = 2.292
= p0,31 + e11 p11,31 + e21 p21,31 + e31 p31,31 = 1.917
Ähnlich erhalten wir
e12 = 10,
Schritt 2:
e22 = 8.049,
e32 = 8.415
Berechnung der Einzelauslastungen:
ρ1
ρ2
ρ3
e11
e12
+ λ2
= ρ11 + ρ12 = 0.833
µ11
µ12
e21
e22
= λ1
+ λ2
= ρ21 + ρ22 = 0.442
µ21
µ22
e31
e32
= λ1
+ λ2
= ρ31 + ρ32 = 0.354
µ31
µ32
= λ1
und Berechnung der benötigten Randwahrscheinlichkeiten
p1 (3) = (1 − ρ1 )ρ31 = 0.0965
p2 (2) = (1 − ρ2 )ρ22 = 0.1093
p3 (1) = (1 − ρ3 )ρ3 = 0.2287
Schritt 3:
Berechnung der gesuchten Zustandswahrscheinlichkeit für das Wartenetz
p(3, 2, 1) = p1 (3) · p2 (2) · p3 (1) = 0.00241
Für die mittleren Auftragsanzahlen gilt:
11
k
12
k
ρ11
21 = ρ21 = 0.342
= 2.5
k
1 − ρ1
1 − ρ2
22 = 0.5
32 = 0.362
= 2.5
k
k
=
31 =
k
ρ31
= 0.186
1 − ρ3
KAPITEL 6
Beispielanalyse ALOHA
Als Beispiel für die exakte mathematische Methode wird in diesem Kapitel das Kommunikationssystem ALOHA diskutiert. Im betrachteten Szenario gibt es mehrere Benutzer, die
um einen Kanal konkurrieren, um Nachrichten über einen geostationären Satelliten zu versenden. Ein Benutzer kann jederzeit mit dem Senden einer Nachricht beginnen. Allerdings
können sich dann Sendungen ganz oder teilweise überlappen, was als Kollision bezeichnet
wird und wodurch die Nachrichten vollständig zerstört werden. Nach einer Kollision warten die Benutzer eine zufällige Zeit und versuchen, die Nachricht erneut zu senden. Aus
Optimierungszwecken vereinbaren die Benutzer eine einheitliche Nachrichtenlänge, so dass
die Übertragung einer Nachricht T = 1 Zeiteinheit erfordert. Es gibt folgende Varianten
von ALOHA, die wir im Folgenden betrachten werden:
• Pure-ALOHA
• Slotted-ALOHA
Bei Slotted-ALOHA ist die Zeitachse mit einer Taktlänge T = 1 getaktet, d.h., pro Takt
kann genau eine Nachricht übertragen werden. Ein Takt entspricht also einem Slot. Ein
sendebereiter Benutzer muss dann auf den nächsten Slot warten. Der Vorteil von SlottedALOHA ist, dass in einem Slot entweder eine oder keine Kollision auftreten kann. Allerdings
müssen dafür die Benutzer snychronisiert werden, was im Allgemeinen bei der Bewertung
nicht berücksichtigt wird.
Gegenstand der Analyse ist die Frage, wie viel Prozent der Daten ohne Kollision übertragen
werden. Der Zusammenhang zwischen dem Durchsatz S und dem Gesamtverkehr G ist in
Abbildung 6.1 dargestellt.
Ein Benutzer bendet sich in einem der zwei möglichen Zustände:
• Denkend: Der Benutzer erzeugt gerade eine Nachricht.
• Blockiert: Der Benutzer hatte eine Kollision und ist nun mit der Kollisionsauösung
beschäftigt.
Nun interessiert man sich für das Verhalten des Durchsatzes S im Vergleich
• zur bestehenden Last an neuen Aufträgen bzw.
• zum Gesamtverkehr G.
87
88
Kapitel 6. Beispielanalyse ALOHA
Erfolg
Durchsatz S
denkender Benutzer
blockierter Benutzer
Kanal
Konflikt
Gesamtverkehr G
Abbildung 6.1: Durchsatz und Gesamtverkehr bei ALOHA
Dazu gibt es folgende heuristische Antwort:
• Ist die Last sehr gering, dann wird es kaum Konikte geben, so dass der Durchsatz
S etwas kleiner als der Gesamtverkehr G ist.
• Bei einer hohen Last wird es sehr viele Konikte geben, die zu Folgekonikten führen. Dadurch ist der Gesamtverkehr G sehr hoch, so dass der Durchsatz S gegen 0
konvergiert.
Dies kann man sehr leicht zeigen, wenn man die vereinfachende Annahme einführt, dass
der Gesamtverkehr ein Poissonprozess mit Parameter G ist.
6.1 Modellierung von ALOHA
Mit Hilfe des Poissonprozesses können wir nun den Durchsatz für Pure- und SlottedALOHA berechnen. Dabei gehen wir, wie anfangs gesagt, von normierten Paketen der
Länge T = 1 aus. Um die Leistung beider Varianten zu bestimmen, werden zuerst die
Zeitperioden bestimmt, in denen Kollisionen auftreten können.
6.1.1 Pure-ALOHA
Bei Pure-ALOHA können die Benutzer zu beliebigen Zeiten mit dem Senden von Paketen beginnen. Die Kollisionsphase, in der sich zwei unterschiedliche Pakete überschneiden
können, ist in Abbildung 6.2 dargestellt. Dabei entsteht eine Kollision, wenn während der
Übertragung eines Pakets ein zweiter Benutzer mit der Übertragung eines zweiten Pakets anfängt. Da alle Pakete die Länge T = 1 besitzen, kann die Kollision am Anfang,
in der Mitte oder am Ende einer Übertragung stattnden. Daher hat Pure-ALOHA eine
Kollisionsphase der Länge 2.
Angenommen, der Gesamtverkehr ist ein Poissonprozess mit Parameter G, dann erhalten
wir:
(G · t)i −G·t
P(i Sendungen in t Zeiteinheiten) =
·e
i!
Mit der Beziehung:
Durchsatz = Gesamtverkehr · P(ungestörte Zeit zur Übertragung)
6.1. Modellierung von ALOHA
89
Paket der Länge 1
Paket der Länge 1 Paket der Länge 1
Paket der Länge 1
Slot i
Slot i
Slot i+1
Slot i+1
Kollisionsphase
der Länge 1
Kollisionsphase der Länge 2
(a) Pure-Aloha
(b) Slotted-Aloha
Abbildung 6.2: Kollisionsphase bei Pure- und Slotted-ALOHA
erhalten wir für Pure-ALOHA:
S = G · P(keine andere Übertragung in 2 Zeiteinheiten)
(2 · G)0 −2G
= G·
·e
0!
= G · e−2G
6.1.2 Slotted-ALOHA
Bei Slotted-ALOHA dürfen die Benutzer nur zu festgelegten Zeitpunkten mit der Übertragung von Paketen beginnen, d.h., eine Kollision kann nur am Anfang einer Übertragungsphase auftreten (siehe Abbildung 6.2). Daher hat Slotted-ALOHA eine Kollisionsphase der
Länge einer Zeiteinheit.
Also erhalten wir hier:
S = G · P(keine andere Übertragung in einer Zeiteinheit)
(1 · G)0 −1·G
= G·
·e
0!
= G · e−G
Der Zusammenhang zwischen dem Durchsatz S und dem Gesamtverkehr G ist in Abbildung 6.3 dargestellt.
Dieses Modell hat einige interessante Eigenschaften:
Positive Seiten: Die Ergebnisse für den Schwachlastfall sind sehr realistisch, denn:
S
=
G
e−2G
e−G
bei Pure-ALOHA
bei Slotted-ALOHA
Für G gegen 0 konvergiert der Term gegen 1, also Gesamtverkehr und Durchsatz
sind fast identisch. Damit hat man wenige Konikte im Nichtlastfall. Für groÿes G
S
konvergiert G
gegen 0, was ebenfalls realistisch ist.
Problematische Aspekte: Ein Problem ist, dass dieses Modell nicht zwischen Kunden
unterscheidet (Innite-User-Modell). Das ist auch eine pessimistische Annahme,
denn bei unterschiedlicher Nutzeraktivität ist der Gesamtdurchsatz im Allgemeinen
besser. Der Extremfall: es gibt immer nur einen aktiven Benutzer, d.h., S = 1. Nun
ist die Poissonannahme für den Gesamtverkehr sehr problematisch bzw. falsch, da
die Annahme:
90
Kapitel 6. Beispielanalyse ALOHA
S
MAX = 1/e
0,38
0,36
0,34
0,32
0,30
0,28
0,26
0,24
0,22
0,20
0,18
0,16
0,14
0,12
0,10
0,08
0,06
0,04
0,02
MAX = 1/(2e)
SLOTTED ALOHA
PURE ALOHA
0
1/2
1
2
3
4
5
G
Abbildung 6.3: Zusammenhang zwischen Durchsatz und Gesamtverkehr bei Pure- und
Slotted-ALOHA
Gesamtverkehr = neue Ankünfte + Wiederholungen
kein Poissonprozess ist. Denn für S = 1 gibt es keine Wiederholungen.
Um den Durchsatz S zu maximieren, kann man leicht in Versuchung geraten, G = 1
anzustreben. Für diesen Fall wird zwar S maximal, aber man erhält
G
= mittlere Zahl von Übertragungsversuche pro Paket = eG = e
S
Jedes Paket muss im Mittel dreimal übertragen werden, wenn der Durchsatz maximal
ist. Also hat man im Idealfall 2 Konikte pro Paket, was unerwünscht ist.
6.1.3 Slotted-ALOHA ohne Poissonannahme
Das Resultat von oben kann man für Slotted-ALOHA auch ohne Poissonannahme herleiten.
Dazu seien N unabhängige statistisch identische Benutzer gegeben. Weiterhin gelte:
• Si =
S
N
= Durchsatz von Benutzer i
• Gi =
G
N
= Gesamtverkehr von Benutzer i
Damit erhält man wegen der stochastischen Unabhängigkeit der Benutzer:
Si = P(Benutzer i erfolgreich)
= P(Benutzer i sendet; Benutzer j (i 6= j) sendet nicht)
= P(Benutzer i sendet) · P(Benutzer j (i 6= j) sendet nicht)
=
Gi
|{z}
Benutzer i sendet
N
Y
·
(1 − Gj )
j=1;j6=i
|
{z
}
Kein anderer Benutzer sendet
6.1. Modellierung von ALOHA
und
91
G
G N−1
S
=
· 1−
N
N
N
bzw.
G N−1
S=G· 1−
N
Für groÿe N konvergiert der letzte Term wie folgt:
G N−1
lim 1 −
= e−G
N→∞
N
Dadurch erhält man für den Durchsatz:
S = G · e−G
6.1.4 Berechnung von Wartezeiten
Die Wartezeit ist die Summe aller Zeiten bis zur erfolgreichen Übertragung eines Pakets,
d.h., sie besteht aus der Zeit bis zum ersten Sendeversuch und den Zeiten aller Folgeversuche. Dabei wird angenommen, dass nach einer Kollision vor dem nächsten Versuch eine
bestimmte Zeit lang gewartet wird. Diese Zeit wird aus dem Intervall [1 : k] gleichverteilt
ausgewählt.
Die Wartezeit ist wie folgt deniert:
Wartezeit = Zeit für Erstversuch + Zeit für Folgeversuche
Zeit für Erstversuch
Die Zeit für den Erstversuch setzt sich zusammen aus der Zeit für den Sendeslot und der
Zeit, die vergeht bis man über den Sendeerfolg Bescheid weiÿ (Round-Trip-Time1 = R).
Es gilt also:
Zeit für Erstversuch = |{z}
1
+
Sendeslot
R
|{z}
Zeit, bis man über Erfolg Bescheid weiÿ
Zeit für Folgeversuche
Im Koniktfall würfelt jeder beteiligte Benutzer eine Zahl aus dem Intervall [1 : k]. Ist diese
Zahl i, dann wird im i-ten Intervall gesendet. Damit ergibt sich eine mittlere zusätzliche
1
Wartezeit von k+
2 Slots. Die mittlere Dauer bis zur erfolgreichen Übertragung ist dann:
k+1
∗
S = 1 + R + mittlere Zahl von Wiederholungen · 1 + R +
2
1
Die Round-Trip-Time ist abhängig von der Paketlänge, der Kanalkapazität und der Leitungslänge. Bei
geostationären Satelliten (Streckenlänge ≈ 72.000 km) und nicht allzu hoher Kapazität ist R ungefähr
0,3 Sekunden. Bei lokalen Netzen ist R ≈ 50 µs. Beachte: 1 s = 106 µs. Zudem wird man bei lokalen
Netzen etwas intelligenter arbeiten, z.B. mithören und Abbruch nach Konikten.
92
Kapitel 6. Beispielanalyse ALOHA
Mit der Erfolgswahrscheinlichkeit p =
∞
X
S
G
erhält man für die mittlere Anzahl von Versuchen
i · p · (1 − p)i−1 =
i=1
G
1
=
p
S
Also beträgt die mittlere Zeit bis zur erfolgreichen Übertragung:
G
k+1
∗
S = 1| {z
+ R} +
−1 · 1+R+
S
2
{z
}
Erstversuch |
Fehlversuche
Eine mögliche Verfeinerung ist die folgende Betrachtung: Die Erfolgschance p ist davon
abhängig, ob es sich um den Erstversuch oder um eine Wiederholung handelt. Im zweiten
Fall könnte der Kanal überlastet sein, also ist die Erfolgschance niedriger als sonst.
Allgemeine Kritik am bisherigen Modell
• Falls k < ∞, dann ist der Gesamtverkehr kein Poissonprozess. Ist k sehr klein, dann
gibt es viele Konikte, d.h., das System wird instabil. Ist k sehr groÿ, dann hat man
eine unzumutbare Wartezeit.
• Poissonprozesse haben die implizite Voraussetzung von unendlich vielen Nutzern.
6.2 Stabilitätsdiskussion von Slotted-ALOHA
Wir betrachten nun Slotted-ALOHA mit gewissen Stabilitätsanforderungen. Dabei gehen
wir von N statistisch identischen und unabhängigen Benutzern aus. Die Benutzer arbeiten im Dialogbetrieb und benden sich in einem der beiden Zustände: denkend oder
blockiert.
Weiterhin gelten die folgenden Vereinbarungen:
N = Gesamtanzahl der Benutzer
n = Anzahl der blockierten Benutzer zur Zeit t ⇒ n(t)
N − n = Anzahl der denkenden Benutzer
σ = P(denkender Benutzer erzeugt neue Nachricht pro Slot)
Es gelten nun die folgenden Beziehungen:
1) Neuer Input pro Slot beträgt:
Sin = (N − n) · σ
2) Die Wahrscheinlichkeit, dass ein blockierter Benutzer einen neuen Versuch startet, ist:
=
p
1
1+R+
k+1
2
3) Für den Durchsatz pro Slot erhält man:
Sout = P(ein neues Paket; keine Wiederholung) +
P(kein neues Paket; genau eine Wiederholung)
)n · (N − n) · σ · (1 − σ)N−n−1 + n · p
· (1 − p
)n−1 · (1 − σ)N−n
= (1 − p
6.2. Stabilitätsdiskussion von Slotted-ALOHA
93
Wir betrachten nun den Übergang bzw. die Approximation zum Innite-User-Modell:
N → ∞,
Unendlich viele Benutzer
σ → 0
(N − n) · σ → Sin
Mit der Abschätzung
(1 − σ)N−n ≈ 1 − (N − n)σ ≈ 1 − Sin ≈ e−S
in
erhalten wir
)n · Sin · e−S + n · p
· (1 − p
)n−1 · e−S
Sout ≈ (1 − p
in
(6.1)
in
Es gibt damit eine Beziehung zwischen Sin (die Neuankünfte) und Sout (das, was das System
verkraftet). Wir betrachten drei Fälle:
1) Sin < Sout
In diesem Fall ist das System nicht ausgelastet und die Anzahl der Blockierenden sollte
sich tendenziell verringern.
2) Sin > Sout
In diesem Fall ist das System überlastet und die Tendenz zu mehr blockierten Benutzern
nimmt zu.
3) Sin = Sout = Sgrenz
In diesem Fall haben wir einen Gleichgewichtszustand.
Sgrenz ist aus Gleichung (6.1) numerisch ermittelbar. Dabei ist Sgrenz u.a. abhängig von R
und k. ALOHA-Systeme sind bei groÿer Benutzerzahl instabil (siehe Abbildung 6.4).
gutes stabiles
Gleichgewicht
(N-n)×s
Sin > Sgrenz
labiles
Gleichgewicht
Sin<Sgrenz
also Abbau der
Blockiertenzahl
Sin = (N-n)×s
Gleichgewicht
des Schreckens
n
Abbildung 6.4: Zustände bei ALOHA
Auf lange Sicht ist das Gleichgewicht des Schreckens unvermeidbar. Das System ist stabilisierbar z.B. durch Begrenzung von N bzw. durch die Änderung von σ. In Abbildung 6.4 ist
94
Kapitel 6. Beispielanalyse ALOHA
ein System mit nur einem stabilem Gleichgewicht dargestellt. Ist Sin beim Innite-UserModell unabhängig von der Anzahl der blockierten Benutzer Sin = const > 0, dann ist
das System immer instabil, denn irgendwann springt das System in den Bereich schlecht
und kommt dort nicht mehr heraus.
Nun stellt sich die Frage, wie man ein zur Instabilität neigendes System stabilisieren kann.
Hierzu betrachten wir im Folgenden unterschiedliche Ansätze.
6.2.1 Steuerung des Inputs neuer Pakete
Ein System kann dadurch stabilisiert werden, dass der Inputstrom gesteuert wird. Ab einem
bestimmten Schwellwert θ werden keine neuen Pakete mehr angenommen. Dadurch wird
ein Zustand inhibited für überzählige Pakete erzeugt, wenn n > θ. Diese Methode hat
die folgenden Nachteile:
• Die Anzahl der blockierten Benutzer muss geschätzt werden, was aufwendig bzw.
ungenau ist.
• Die Kunden im Zustand inhibited haben zusätzliche Wartezeit.
6.2.2 Steuerung des Wiederholungsvorgangs nach Kollisionen
Diese Variante ist praktikabler als die Inputsteuerung. Die einfachste Idee sieht wie folgt
aus. Sei Ki die maximale Anzahl von Slots, die man nach dem i-ten Konikt zufällig wartet.
Weiter setzt man:
[1 : Ki ] = Würfelintervall nach i-ter Kollision
Zusätzlich berücksichtigt man
K1 < K2 < K3 < · · ·
Diese Vorgehensweise hat den Nachteil, dass bereits lange Wartende immer länger warten
müssen, weil sie im Mittel immer gröÿere Zahlen würfeln, d.h. das System besitzt die
LIFO-Charakteristik.
Bei Ethernet ist die Wahl der Wartezeitintervalle wie

i

2
Ki = 210


System kaputt, d.h. Abbruch
folgt:
falls i = 1, 2, · · · , 10
falls i = 11, · · · , 16
falls i > 16
In den ersten zehn Versuchen vergröÿert sich das Warteintervall exponentiell. Danach wird
das Warteintervall nicht mehr erhöht, jedoch versucht ein Knoten maximal 16 Wiederholungen, danach geht er von einem Systemfehler aus und beendet die Wiederholungsversuche.
Weil sich bei Ethernet der Konikt immer nur auf einen (Bruch-)teil des Pakets begrenzt,
sind dort Durchsatzwerte von e1 möglich.
6.3 Erweiterte Analyse von ALOHA
In unserer erweiterten Analyse betrachten wir zwei Modelle:
6.3. Erweiterte Analyse von ALOHA
95
Oenes System: Die Inputrate ist unabhängig von der Anzahl der blockierten Benutzer.
Beispielsweise Innite-User-Modell bzw. endlich viele Benutzer, die trotz Blockade
weiter erzeugen.
Geschlossenes System: N < ∞ unabhängig voneinander arbeitende Benutzer. Hier erzeugen die blockierten Benutzer nichts Neues.
Für die Analyse vereinbaren wir die folgenden Bezeichnungen:
Xk = Anzahl der Neuankünfte in Slot k
Yk = Anzahl der Wiederholer in Slot k
nk = Anzahl der blockierten Benutzer in Slot k
ai (n) = P(Xk = i|nk = n)
ai (n) ist die Wahrscheinlichkeit, dass bei n blockierten Benutzern in Slot k i Neuankünfte
auftreten. Da beim oenen Model die Inputrate von der Anzahl der blockierten Benutzer
unabhängig ist, gilt für das oene Modell:
ai (n) = ai
Für das geschlossene Modell gilt:
N−n
ai (n) =
· σi · (1 − σ)N−n−i
i
Für die Wiederholwahrscheinlichkeiten werden folgende Bezeichnungen gewählt:
f(n) = Wiederholwahrscheinlichkeit eines blockierten Benutzers
Bei ungesteuerten Systemen gilt: f(n) = f > 0.
bi (n) = Wahrscheinlichkeit für i Wiederholungen
n
=
· f(n)i · (1 − f(n))n−i
i
Damit erhält man für den bedingten Gesamtverkehr Gn (f) bzw. Durchsatz Sn (f):
Gn (f) = E(Xk |nk = n) + E(Yk |nk = n)
=
N−n
X
i · ai (n) +
i=1
n
X
i · bi (n)
i=1
Sn (f) = P(Xk = 0 ∧ Yk = 1) + P(Xk = 1 ∧ Yk = 0)
= a0 (n) · b1 (n) + a1 (n) · b0 (n)
Denition: Instabilität von oenen Systemen
Ein oenes System heiÿt instabil genau dann, wenn
πi = lim P(nk = i) = 0
k→∞
∀i < ∞
Das bedeutet, dass die Anzahl der blockierten Benutzer über alle Grenzen wächst.
96
Kapitel 6. Beispielanalyse ALOHA
Denition: Instabilität von geschlossenen Systemen
Ein geschlossenes System heiÿt instabil genau dann, wenn dieselbe Bedingung auch für den Grenzübergang von N → ∞ gilt, d.h., die Anzahl der blockierten Benutzer bei N Kunden pendelt sich
bei ≈ N ein.
Wir zeigen, dass jedes oene und jedes geschlossene ungesteuerte Slotted-ALOHA-System
instabil ist.
Satz: Instabilität von Systemen
Es sei f = P(Blockierter Benutzer wiederholt). Falls f > 0, dann ist das System instabil.
Beweis: Instabilität von Systemen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zuerst der Beweis für oene Systeme. Dazu sehen wir uns an, wie sich die Situation von
Slot zu Slot ändert. Zur Abkürzung verwenden wir
pn (k) = P(nk = n)
Nun ergibt sich die Wahrscheinlichkeit, dass es im (k + 1)-ten Slot genau n Blockierte gibt,
zu
pn (k + 1) =
n
X
pn−j (k) · aj
j=2
|
{z
}
j>2 Neue (die alle blockieren) und n−j Alte
+
pn−1 (k)[1 − b0 (n − 1)] · a1
{z
}
|
n−1 Alte; >1 Wiederholungen; 1 Neuer
+
pn (k) · (1 − b1 (n)) · a0
|
{z
}
(6.2)
n Alte; kein Neuer; kein Blockierter erfolgreich
+
p (k) · b0 (n) · a1
|n
{z
}
n Alte; keiner wiederholt; ein Neuer
+
pn+1 (k) · b1 (n + 1) · a0
{z
}
|
n+1 Alte; einer wiederholt erfolgreich; kein Neuer
Es sei n = aktuelle Blockiertenanzahl = Zustand des Systems. Der Flow-In in den Zustand
n ist in Abbildung 6.5 dargestellt.
Der Prozess n0 , n1 , n2 , · · · , d.h., die Änderung der Blockiertenanzahl von Slot zu Slot ist
nach Voraussetzung eine Markov-Kette.
P(nk+1 = n|nk = ik , nk−1 = ik−1 , · · · , n0 = i0 ) |{z}
= P(nk+1 = n|nk = ik )
Markov
Ist die Markov-Kette irreduzibel und aperiodisch, dann gelten für die Grenzwahrscheinlichkeiten
πi = lim P(nk = i)
k→∞
Diese existieren und sind unabhängig von n0 . Die Markov-Theorie sagt, dass es für die πi
(i = 0, 1, 2, · · · , ∞) nur zwei Möglichkeiten gibt.
(1) Im ersten Fall sind alle Zustände rekurrent nonnull, d.h., sie haben endliche mittlere
Wiederkehrzeiten. In diesem Fall gilt dann
πi > 0
∀i
6.3. Erweiterte Analyse von ALOHA
97
an
an-1
an-2
(1-b1(n))a0+b0(n)a1
0
1
2
n
n-1
(1-b0(n-1))a1
n+1
b1(n+1)a0
Abbildung 6.5: Flow-In nach Zustand n
wegen
πi =
1
E[Rekurrenzzeit]
Die πi 's sind aus der FlowIn = FlowOut-Beziehung berechenbar, d.h., aus dem
Gleichungssystem
πj
|{z}
=
∞
X
i=0
|
Flow-Out aus Zustand j
πi · pij
{z
j = 0, 1, 2, · · ·
}
Flow-In nach Zustand j
∞
X
πi = 1
Normierungsbedingung
i=1
Dabei ist
pij = P(nk+1 = j|nk = i)
(2) Im zweiten Fall sind alle Zustände transient bzw. rekurrent null, d.h., in keinen der
Zustände wird zurückgekehrt, also E(Wiederkehrzeit) = ∞. In diesem Fall gibt es keine
stationäre Verteilung und es gilt:
πi = 0
∀i
Wir zeigen, dass der zweite Fall gilt. Dazu bilden wir den Grenzübergang
lim pn (k + 1) = πn
k→∞
Eingesetzt in Gleichung (6.2) erhält man hier
πn =
n
X
πn−j · aj
j=0
− πn−1 a1 b0 (n − 1)
− πn a0 b1 (n)
+ πn a1 b0
+ πn+1 a0 b1 (n + 1)
98
Kapitel 6. Beispielanalyse ALOHA
Wir möchten nun zeigen, dass eine Lösung nur durch πn = 0 möglich ist. Zu diesem Zweck
genügt es, nachzuweisen, dass die πi ab P
einem gewissen Wert immer gröÿer werden,
P falls
ein πj < ∞ gröÿer als 0 ist. Damit wäre
πi = ∞, was keine Verteilung ist, da
πi = 1
gelten müsste.
Um zuPzeigen, dass die πi schlieÿlich steigen, benutzt man folgenden Trick. Man setzt
Sn = n
i=0 πi und erhält nach einiger Rechnung
Sn =
n
X
πj =
j=0
n
X
j=0
Sn−j · aj + πn · b0 (n) · a1 + πn+1 · b1 (n + 1) · a0
|
{z
}
=:cn
Sn (1 − a0 )
=
n
X
Sn−j · aj + cn
j=1
6
|{z}
Sn−1 ·
aj + cn
j=1
Brutalabschätzung
6
n
X
Sn−1 (1 − a0 ) + cn
Also gilt damit:
(Sn − Sn−1 ) · (1 − a0 ) 6 πn · b0 (n) · a1 + πn+1 b1 (n + 1)a0
Ungesteuertes System:
b0 (n) = (1 − f)n
b1 (n) = n · f · (1 − f)n−1
Somit erhält man:
πn+1
πn
>
=
(1 − a0 ) − b0 (n)a1
b1 (n + 1)a0
(1 − a0 ) − (1 − f)n a1
−→ ∞
(n + 1)f(1 − f)n a0 |{z}
n→∞
P
Schlieÿlich wird πn+1 > πn , sofern πn 6= 0 ist. Damit erhält man i πi = ∞, was ein
Widerspruch zur Existenz einer Verteilung mit πi > 0 ist. Damit erhält man für i < ∞
πi = 0, d.h., das System ist instabil. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1 Stabilisierung des Systems durch Steuerung
Wie in der vorangegangenen Diskussion möchten wir auch hier Stabilitätsaspekte betrachten. Es bieten sich zwei Arten der Stabilisierung an. Die Stabilisierung durch die Steuerung
des Systems durch Inputbegrenzung, was jedoch schwer zu realisieren ist. Die Alternative
ist die Stabilisierung durch die Steuerung der Beeinussung der Wiederholer, d.h., f = f(n).
Wir betrachten im Folgenden die zweite Möglichkeit der Stabilisierung. Der bedingte
Durchsatz im zweiten Fall ist gegeben durch
n
Sn (f) = a0 · b1 (n) + a1 · b0 (n)
mit
bi (n) =
f(n)i (1 − f(n))n−i
i
6.3. Erweiterte Analyse von ALOHA
99
Der Grenzwert, falls er existiert, sei
d = lim Sn (f)
n→∞
Ist
λ =
∞
X
i · ai
i=1
= mittlere Anzahl neuer Pakete pro Slot
dann gilt:
• Das System ist stabil, falls λ < d
• Das System ist instabil, falls λ > d
• Für den Fall λ = d ist die Frage ungeklärt (allerdings ist das System wahrscheinlich
instabil)
Satz: Bedingung für Stabilität
Notwendige Bedingungen für Stabilität sind:
1. limn→∞ f(n) = 0, d.h., mit wachsender Blockiertenanzahl nimmt die Wiederholwahrscheinlichkeit ab.
2. limn→∞ n · f(n) > 0, d.h. f(n) = O( n1 )
Beweis: Bedingung für Stabilität. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1) Annahme 1. sei nicht erfüllt, d.h. limn→∞ f(n) > 0. Dann wäre
d =
=
lim (a0 b1 (n) + a1 b0 (n))

n→∞

lim a0 · n · f(n) (1 − f(n))n−1 +a1 (1 − f(n))n 
|
{z
}
|
{z
}
n→∞
→0
= 0
→0
d.h. wenn λ > 0 ist, dann wäre λ > d = 0, also instabil.
2) Annahme 1) sei erfüllt, aber Annahme 2. nicht, d.h. limn→∞ n · f(n) = 0. Dann erhält
man


d =
lim a0 · n · f(n) · (1 − f(n))n−1 + a1 (1 − f(n))n 
|
{z
} |
{z
}
n→∞
→0
→a1
= a1
Es ist aber λ =
P
ii
· ai > a1 . Also folgt λ > d. Widerspruch!
......................................................................................
100
Kapitel 6. Beispielanalyse ALOHA
6.3.2 Optimale Wiederholwahrscheinlichkeit
Um den Gesamtdurchsatz
Sn (f) = a0 nf(n)(1 − f(n))n−1 + a1 (1 − f(n))n
zu maximieren, kann man durch
!
∂Sn (f) z}|{
= 0
∂f
die Wiederholwahrscheinlichkeit optimieren. Man erhält also:
fopt (n) =
a0 − a1
na0 − a1
Sn (fopt ) = a0
n−1
n− a
a
!n−1
1
0
n−1
= a0
n− a
a
|
{z
!n−1
1
0
limn→∞
a1
= a0 · e a
0
a1
−1
e a0
}
−1
Dieses Ergebnis überprüfen wir für den Spezialfall, dass der Input ein Poissonprozess mit
Parameter λ ist:
λi −λ
e
i!
1−λ
fopt (n) =
n−λ
1−λ
1
=
+O
n
n2
λ − 1 n−1
−λ
Sn (fopt ) = e
1+
n−1
{z
}
|
ai =
limn→∞ eλ−1
λ−1
= e−λ · e
= e−1
Also ist e−1 eine untere Schranke für den Slotted-ALOHA-Durchsatz.
Heuristische Bestätigung
Wiederholwahrscheinlichkeit:
1−λ
fopt (n) =
+O
n
1
n2
n Blockierte ⇒ Gesamtwiederholrate:
1
n · fopt (n) = 1 − λ + O
n
6.3. Erweiterte Analyse von ALOHA
Gesamtrate neu: λ ⇒ Insgesamt:
1
G ≈ λ+1−λ+O
n
1
≈ 1+O
n
101
102
Kapitel 6. Beispielanalyse ALOHA
ANHANG A
Übersichtstabellen zu Verteilungen und
Transformationen
A.1
Diskrete Verteilungen
Gleichverteilung
Parameter
k = 1, . . . , n
Zähldichte
pk =
E[X]
n+1
V[X]
n2 −1
z-Transformierte
G(z) =
1
n
2
12
zn+1 −z
n(z−1)
Bernoulli
Parameter
0<p<1
Zähldichte
p0 = 1 − p, p1 = p
E[X]
p
V[X]
p(1 − p)
z-Transformierte
G(z) = 1 − p + pz
Binomialverteilung
Parameter
Zähldichte
0 < p < 1, 1 6 n, 0 6 k 6 n
k
n−k
pk = n
k p (1 − p)
E[X]
np
V[X]
np(1 − p)
z-Transformierte
G(z) = (1 − p + pz)n
103
104
Anhang A. Übersichtstabellen zu Verteilungen und Transformationen
Negative Binomialverteilung
Parameter
Zähldichte
0 < p < 1, r > 1, k > 0
1 r
k
pk = k+r−
r−1 p (1 − p)
E[X]
r(1−p)
p
V[X]
r(1−p)
p2
z-Transformierte
G(z) =
p
1−(1−p)·z
r
Geometrische Verteilung
Parameter
0 < p < 1, , k > 0
Zähldichte
pk = (1 − p)k p
E[X]
1−p
V[X]
1−p
z-Transformierte
G(z) =
p
p2
p
1−(1−p)z
Poissonverteilung
Parameter
λ > 0, k > 0
Zähldichte
pk =
E[X]
λ
V[X]
λ
z-Transformierte
G(z) = e−λ(1−z)
λk
k!
· e−λ
A.2 Kontinuierliche Verteilung
Gleichverteilung
Parameter
a, b beliebig fest
Dichtefunktion
f(x) =
E[X]
a+b
V[X]
1
b−a ,
a6x6b
2
(b−a)2
12
Laplace-Transform. L(s) =
e−sa −e−sb
s(b−a) ,
s beliebig
A.2. Kontinuierliche Verteilung
105
Exponentialverteilung
Parameter
λ>0
Dichtefunktion
f(x) = λe−λx , x > 0
E[X]
λ
V[X]
λ2
1
1
Laplace-Transform. L(s) =
λ
λ+s , s
>0
Gammaverteilung
Parameter
λ > 0,
α>0
Dichtefunktion
f(x) =
E[X]
α
λ
V[X]
α
λ2
Laplace-Transform. L(s) =
λα α−1 λx
e
Γ (α) x
α
λ
,
λ+s
s>0
Normalverteilung
Parameter
µ > 0,
σ>0
Dichtefunktion
f(x) =
E[X]
µ
V[X]
σ2
2
(x−µ)
√ 1 e− 2σ2
2πσ
Laplace-Transform. L(s) = e−sµ+
s2 σ2
2
106
Anhang A. Übersichtstabellen zu Verteilungen und Transformationen
Symbolverzeichnis
λ
Ankunftsrate
µ
Bedienrate
µi (ki )
Bedienrate des Knoten i mit ki Jobs
π = (π1 , . . . , πn )
Stationäre Zustandswahrscheinlichkeiten
ρ=
λ
µ
Last
σ
Streuung
E[X]
Erwartungswert der Zufallsvariablen X
G(z)
Erzeugende Funktion, z-Transformation
k = (k1 , . . . , kN )
Zustand eines Wartenetzes mit N Knoten; Knoten i hat ki Kunden
L(s)
Laplace-Transformation
0 [X]
Mn
n-tes zentrales Moment der Zufallsvariablen X
Mn [X]
n-tes Moment der Zufallsvariablen X
N
Anzahl der Kunden im System
N
Mittlere Anzahl der Kunden im System
Nq
Anzahl der Kunden im Warteraum
q
N
Mittlere Anzahl der Kunden im Warteraum
P
Übergangsmatrix
p(k1 , . . . , kN )
Wahrscheinlichkeit, dass ein Wartenetz im Zustand (k1 , . . . , kN ) ist
pi,j
Übergangswahrscheinlichkeit von Zustand i nach Zustand j bzw. von
Knoten i nach Knoten j
107
108
Symbolverzeichnis
Q
Generatormatrix
S
Systemzeit
S
Zustandsraum eines stochastischen Prozesses
T
Indexbereich eines stochastischen Prozesses
V[X]
Varianz der Zufallsvariablen X
W
Wartezeit
Literaturverzeichnis
[1] Otto Spaniol, Lokale Netze, Vorlesungsskript, Lehrstuhl für Informatik IV, RWTHAachen
[2] Otto Spaniol, Datenkommunikation I und II, Vorlesungsskript, Lehrstuhl für Informatik IV, RWTH-Aachen
[3] Otto Spaniol, Simon Ho, Ereignisorientierte Simulation: Konzepte und Systemrealisierung, International Thomson Publishing, 1995
[4] Haverkort, Boudewijn, R., Performance of computer commnication systems: a modelbased approach, John Wiles & Sons, 1998
[5] Gunter Bolch, Stefan Greiner, Hermann de Meer, Kishor S. Triverdi, Queueing Networks and Markov Chains, John Wiles & Sons, 1998
[6] Tanenbaum, A., Computernetzwerke, Prentice Hall, München, 1997
[7] Fishwick, Paul, A., Simulation model design and executtion: building digital worlds,
Prentice Hall, 1995
[8] Karl Bosch, Statistik-Taschenbuch, Oldenbourg-Verlag, 1993
[9] Bernd Page, Diskrete Simulation. Eine Einführung mit Modula-2, Springer-Verlag,
1991
[10] Jain, Raji, The art of computer systems performance analysis: techniques for experimental design, measurement, simulation, and modeling, 1991
[11] Bolch, Gunter, Leistungsbewertung von Rechensystemen mittels analytischer Warteschlangenmodelle, Teubner Verlag, Stuttgart, 1989
109
110
Literaturverzeichnis
Index
Abarbeitungsstrategie, 39
FIFO, 39
LIFO, 39
Round-Robin, 39
SIRO, 39
SPT, 39
ALOHA, 87
Pure, 87
Slotted, 87
BCMP-Netze, 80
BCMP-Theorem, 83
Chapman-Kolmogorov-Gleichung, 33
Dichtefunktion, 17
Ereignis, 9
Elementarereignis, 9
Ereignisraum, 9
Erlang-C-Formel, 53
Erneuerungsprozess, 49
FIFO, siehe Abarbeitungsstrategie
Flussgleichungen
globale-, 32
lokale-, 31
Geschlossenes System, 95
Gleichgewicht
globales-, 32
lokales, 31
Gleichgewichtsbeziehung, 56
Global Balance, siehe Gleichgewicht
Innite-User-Modell, 89, 93, 95
Jackson-Netz, 67
Kendallsche Notation, 39
LIFO, siehe Abarbeitungsstrategie
Little's Result, 40
Local Balance, siehe Gleichgewicht
M/M/1, 46
Markov-Kette, 32, 56, 96
Äquivalenzklasse, 34
Übergangsmatrix, 34
Übergangswahrscheinlichkeit, 32
aperiodisch, 35
eingebettete, 56
ergodische, 35
erreichbarer Zustand, 34
homogene, 33
irreduzible, 34
kommunizierende Zustände, 34
null-rekurrenter Zustand, 35
Periode, 35
positiv-rekurrenter Zustand, 35
rekurrenter Zustand, 35
stationäre Verteilung, 35
transienter Zustand, 35
Markov-Prozess, 28
Übergangsrate, 31
Global Balance, 32
globale Flussgleichungen, 32
globales Gleichgewicht, 32
Local Balance, 31
lokale Flussgleichungen, 31
lokales Gleichgewicht, 31
Stationarität, 31
Zustandsraum, 28
Memoryless-Eigenschaft, 20
Modell, 1
-analyse, 3
-bewertung, 4
-bildung, 3
-parameter, 4
-validierung, 4
Oenes System, 95
Poissonprozess, 25, 88
111
112
Index
Chapman-Kolmogorow-Gleichung, 69
Produktform, 69
stationärer Systemzustand , 68
Wartesystem, 2, 37, 39
D/D/1, 60
D/G/1/10, 39
M/G/1, 53, 56
M/G/2, 39
M/M/1, 39
Übergangswahrscheinlichkeit, 47, 56
Ankunftsrate, 37, 40
Round-Robin, siehe Abarbeitungsstrategie
Bedienrate, 37
Round-Trip-Time, 91
Bedienzeit, 38
Doppelereignisse, 42
SIRO, siehe Abarbeitungsstrategie
Gleichgewichtsbeziehung, 56
SPT, siehe Abarbeitungsstrategie
Kundenanzahl, 40
Stationarität, 30
Last, 38
System, 1
Little's Result, 40
geschlossenes, siehe Geschlossenes SysM/M/1, 46
tem
Mehrfachankünfte, 42
oenes, siehe Oenes System
Systemzeit, 40
Wartezeit, 37, 40
Verteilung
Zustand, 38
Bernoulli-Experiment, 14
Zustandsverteilung, 56
Binomial-, 14
Zustandswahrscheinlichkeit, 38
Cox-Verteilung, 81
Zwischenankunftszeiten, 38
diskrete-, 14
Wartesysteme
Exponential-, 19
Wartenetze, siehe Wartenetze
Gauÿ-, 19
Wartezeit, 2
geometrische-, 15, 21
Gleich-, 18
Zähldichte, 14
negative Binomial-, 15
Zufallsvariable, 12
Normal-, 19
Zähldichte, 14
Poisson-, 16
Zustand, 42
Verteilungsfunktion, 17
stationär, 30
Prozess
-zustand, 25
Erneuerungs-, 49
Poissonprozess, 25
regenerativer, 49
Stationarität, 30
stochastischer-, 25
zeitdiskret-stochastischer, 25
zeitkontinuierlich-stochastischer, 25
Zustandswahrscheinlichkeit, 31
Wahrscheinlichkeit
bedingte-, 10
totale-, 11
Wartenetz, 2, 63
Übergangsmatrix, 81
BCMP-Theorem, 83
geschlossene, 65
Gordon-Newell-Netze, 72
Jackson-Netze, 71
oene, 65, 85
Ringnetze, 74
Tandemnetze, 66
Zustand, 64
Wartenetze
Übergangsrate, 68
Herunterladen