Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 1 von 8 5. Der Bedienungsprozess. Das Bedienungsmuster eines Warteschlangen–Prozesses wird durch die Kapazität – die Anzahl der gleichzeitig vorhandenen Bedienungselemente – und durch die Dauer des Bedienungsprozesses bestimmt. Im folgenden wird zunächst davon ausgegangen, dass zu einer Zeit nur ein Bedienungsschalter vorhanden ist; eine Verallgemeinerung auf mehrere Schalter erfolgt später. Die Dauer eines Bedienungsprozesses kann sehr unterschiedlich sein; während oft angenommen werden kann, dass jeder Klient (näherungsweise) in gleicher Zeit bedient wird, soll der Prozess hier so modelliert werden, dass die Dauer der Bedienung exponentiell mit einer mittleren Zeit eine sinnvolle Näherung darstellt. Diese Annahme ist mathematisch am einfachsten zu realisieren und kann in vielen Fällen als realistisch angesehen werden. Schliesslich wird durchweg die Warteregel FIFO angenommen. Der Bedienungsprozess besitzt damit die gleiche Struktur wie der Ankunftsprozess und ist wie dieser ein vollständig zufälliger stochastischer Prozess: Sei die mittlere Anzahl von abgeschlossenen Bedienungen in der Zeiteinheit. Dann ist die Wahrscheinlichkeit dafür, dass im Zeitintervall zwischen t und t + dt ein Klient bedient wird, gleich dt + o(dt), die Wahrscheinlichkeit dafür, dass in diesem Zeitintervall kein Klient bedient wird, gleich 1 – dt + o(dt), und die Wahrscheinlichkeit dafür, dass in diesem Intervall zwei oder mehr Klienten bedient werden, gleich o(dt) . Satz 1 aus 4. gilt daher analog bei Ersetzen des Parameters durch in allen Formeln. Zu beachten ist dabei, dass eine Bedienung natürlich nur dann begonnen werden kann, wenn sich zum Zeitpunkt des möglichen Beginns der Bedienung mindestens ein Klient in der Ankunfts–Warteschlange befindet. Bevor nun Ankunfts- und Bedienungsprozess miteinander verknüpft werden, wird der vollständig zufällige stochastische Prozess am Beispiel des Ankunftsprozesses von einer anderen Seite her, nämlich als stochastisches System, betrachtet. 6. Der Ankunftsprozess als stochastisches System. Eine konsistente Beschreibung von Warteschlangen erhalten wir, wenn wir diese als stochastisches System mit endlich oder abzählbar unendlich vielen Zuständen interpretieren: Der Zustand k (k = 0, 1, 2, ...) ist dadurch definiert, dass sich in diesem Zustand genau k Klienten im System (also in der Schlange und im Bedienungspro- Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 2 von 8 zess) befinden. Je nachdem, ob die Schlange kontinuierlich oder nur zu bestimmten Zeiten ti betrachtet wird, wird sie durch die Angabe der Wahrscheinlichkeiten pk(t) bzw. pk(ti) dafür, dass sich das System zu der betreffenden Zeit im Zustand k befindet, vollständig beschrieben. Für die weiter oben angenommenen exponentiell verteilten Ankünfte bedeutet das: Das System befindet sich zu einer Zeit t im Zustand n , wenn zu dieser Zeit genau n Klienten angekommen sind. Die Situation wird dann vollständig durch die Angabe aller Wahrscheinlichkeiten pn(t) , n=0,1,... beschrieben, wobei pn(t) die Wahrscheinlichkeit dafür bezeichnet, dass zur Zeit t n Klienten angekommen sind. Zu jeder Zeit gilt dabei, dass (6.1) pn 1 n0 ist; ferner ist, wenn wir bei t=0 mit einem leeren System beginnen, (6.2) p ( 0 ) 1 ,p ( 0 ) 0 ;n 0 . 0 n Die zeitliche Entwicklung der pn folgt nun aus der Definition des Prozesses: Für die Zeit zwischen t und t+dt gilt p ( t dt ) p ( t )( 1 dt o ( dt ) , 0 0 (6.3) p ( t dt ) p ( t ) dt p ( t ) ( 1 dt o ( dt )) , n 0 . n n 1 n Im Limes dt 0 folgt daraus das (unendliche) System von Gleichungen: (6.4) dp ( t) 0 p ( t) 0 dt dp ( t) n p ( t) p ( t);n 0 n 1 n dt das mit den Anfangsbedingungen (6.2) gelöst werden muss. Dies geschieht zweckmässig mit der Methode der erzeugenden Funktion (vgl. A 1.9 aus Arbeitsblatt 1). Dazu multiplizieren wir die einzelnen Gleichungen (6.4) mit z0 , z1 , . . . zn , . . . und addieren sie. Bezeichnen wir die entstehende erzeugende Funktion mit (6.5) dann folgt (6.6) Damit wird n G ( t ,z ) p ( t) z , n n 0 G ( t , z ) ( z 1 ) G ( t , z ) ; G ( 0 , z ) 1 . t Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 3 von 8 1 )t G (t,z) e(z (6.7) und schliesslich durch Koeffizientenvergleich der Potenzreihe von G nach Potenzen von z für die pn(t) wieder die bereits in Satz 1 als Limes der Binomialverteilung hergeleitete POISSON -Verteilung: n t) . t( p ( t) e n (6.8) n ! Gelegentlich ist auch die Zeit Yk gefragt, die verstreicht, bis der k-te Klient erscheint (vgl. auch Arbeitsblatt 2 und das Tutorial 1). Yk ist eine Zufallsvariable; ihre Verteilungsfunktion sei mit Hk bezeichnet; sei also Hk(yk) = Pr(Yk yk) = Pr(mindestens k Ankünfte in (0, yk) ). (6.9) Damit wird (6.10) y r k k 1 e (y ) k H ( y ) 1 r k k ! r 0 . Die Dichtefunktion folgt durch Differenzieren von Hk ; dabei heben sich alle Summanden bis auf einen weg, und wir erhalten: 1 y k k y k e h ( y ) k (6.11) k k ( k 1 )! . 7. Ein einfaches Modell einer Warteschlange. Die Betrachtungsweise eines vollständig zufälligen stochastischen Prozesses als (spezielles) stochastisches System ermöglicht eine einfache Verknüpfung von Ankunftsund Bedienungsprozess zu einem gemeinsamen stochastischen Prozess. Dies wird im folgenden am Beispiel einer Warteschlange ohne wartende Klienten demonstriert. Angenommen werde also, dass sich in einer im Laufe der Zeit entstehenden Warteschlange niemals ein Klient befinde: Wenn ein neuer Klient eintrifft und feststellt, dass bereits ein anderer Klient bedient wird, gibt er das Warten sofort auf und entfernt sich aus dem System. Das System kann sich also in einem der beiden Zustände "0" : kein Klient im System oder "1" : ein Klient wird bedient Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 4 von 8 befinden 1. Bezeichnen wir die Wahrscheinlichkeiten dafür, dass sich das System zur Zeit t in einem der beiden Zustände befindet, mit p0(t) bzw. p1(t) , dann folgen für diese Wahrscheinlichkeiten die Gleichungen ( und seien die Parameter für den Ankunfts– bzw. Bedienungsprozess) : (7.1) p ( t dt ) ( 1 dt o ( dt )) p ( t ) ( dt o ( dt )) p ( t ) 0 0 1 p ( t dt ) ( dt o ( dt )) p ( t ) ( 1 dt o ( dt )) p ( t ) 1 0 1 oder – im Limes dt 0: (7.2) dp t) 0( p t)p (t) 0( 1 dt dp (t) 1 p t)p (t) . 0( 1 dt Dies ist ein System zweier gewöhnlicher linearer gekoppelter Differentialgleichungen, das – etwa mit den Anfangsbedingungen p0(0) = 1, p1(0) = 0 – nach Standardmethoden der Analysis gelöst werden kann. Das Ergebnis ist [1 ( ) t ( ) t e ] e , [1 ( ) t p ( t) e ]. 1 p ( t) 0 (7.3) Für grosse Zeiten strebt das System mithin einem Gleichgewichtszustand mit p ( ) ,p ( ) 0 1 zu, unabhängig davon, wie es sich zu Beginn verhalten hat. Dieser Zustand wird auch als stationärer Zustand bezeichnet. (7.4) Im stationären Zustand ist mithin der proportionale Anteil der Zeit, in der das System frei ist, gleich p0 , derjenige, in dem das System besetzt ist und ein "Anrufer" abgewiesen wird, gleich p1 . Dauert also ein Gespräch im Mittel 3 Minuten, und ruft im Mittel alle 2 Minuten jemand an, dann werden – wieder im Mittel – 60% der Anrufe abgewiesen; dauert ein Anruf im Mittel 4 Minuten, dann sind das bereits 2/3, bei einer mittleren Dauer eines Gesprächs von 5 Minuten 71% aller ankommenden Anrufe. Anmerkung: Der stationäre Zustand des Systems kann – sofern er, wie in diesem einfachen Fall explizit nachgewiesen, existiert – auch ohne Lösen der Differentialgleichungen ermittelt werden, indem die zeitli1 Mit diesem Modell könnte man also beispielsweise die Situation eines einfachen Telefonanrufes modellieren Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 5 von 8 chen Ableitungen der Wahrscheinlichkeiten gleich Null gesetzt werden und das verbleibende Gleichungssystem algebraisch gelöst wird. Die mit einer solchen Methode erzielte stationäre Lösung – die häufig ausreicht, um die vorgegebene Fragestellung zu beantworten - gibt natürlich keine Auskunft über die Dynamik des Prozesses, hier also über dessen zeitlichen Verlauf. In diesem Beispiel zeigt die explizite Rechnung, dass der stationäre Zustand des Systems auch asymptotisch für grosse Zeiten erreicht wird. Die Existenz eines stationären Zustandes und die Tatsache, dass dieser asymptotisch für t angenommen wird, sind nicht selbstverständlich für einen stochastischen Prozess: In Systemen mit einer unendlichen Anzahl von Zuständen muss kein Gleichgewichtszustand existieren, geschweige denn asymptotisch erreicht werden. 8. Eine Warteschlange mit unbegrenzter Länge. Sei nun die Anzahl der möglichen Klienten in der Warteschlange unbeschränkt. Das System kann sich also in einem Zustand n N0 befinden; die Wahrscheinlichkeit dafür sei wieder mit pn bezeichnet. Die Summe aller pn ist natürlich gleich 1. Wie oben werden die Differentialgleichungen für die Wahrscheinlichkeiten aufgrund der Annahme, dass die Prozesse vollständig zufällig sind, ermittelt, und wir fragen nach der Existenz eines Gleichgewichtszustandes des Systems. Zu lösen sind dann die Gleichungen 0 p0 p1 0 p0 ( ) p1 p2 (8.1) ..... 0 pn1 ( ) pn pn1 ..... Der Ansatz (8.2) p n p0 n führt auf die quadratische Gleichung (8.3) 2 mit den Lösungen 0 = 1 und = / . Da die Summe der pn gleich 1 sein muss, scheidet der erste Wert für aus; der zweite Wert ist nur dann möglich, wenn = / strikt kleiner als 1 ist. Unter dieser Voraussetzung besitzt das System also einen stationären Zustand mit Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 6 von 8 n (8.4) pn p0 (1 ) n , wobei sich der Wert für p0 aus der Bedingung ergibt, dass die Summe der pn gleich 1 sein muss.2 Die Grösse = / wird auch als Verkehrsdichte bezeichnet. Im folgenden beschränken wir uns auf die Folgerungen aus der stationären Lösung. Die mittlere Anzahl der Klienten im System ist (8.5) n 0 n 0 1 E ( N ) n pn (1 ) n n , die der Klienten in der Schlange 2 Lq (n 1) pn . 1 n 1 (8.6) Wir wollen nun – im Gleichgewicht – die mittlere Wartezeit in der Schlange untersuchen. Die Wartezeit X in der Schlange ist eine Zufallsvariable, die im allgemeinen kontinuierlich ist, jedoch im Falle, dass der Klient unmittelbar bei Ankunft bedient wird, einen diskreten Anteil besitzt: (8.7) Pr(X=0) = p0 = 1 – . Für X > 0 hat X eine Dichtefunktion (x) mit (8.8) Pr(x < X x+ dx) = (x) dx . Das Ereignis (x < X x+ dx) ist die Vereinigung der paarweise disjunkten Ereignisse für n = 1, 2, 3, .... a) der Klient findet bei Ankunft n Klienten im System vor und b) in der Zeit x danach werden n – 1 Bedienungen abgeschlossen c) die Bedienung des Klienten unmittelbar vor ihm wird im Zeitintervall (x , x + dx) abgeschlossen. und a), b) und c) sind unabhängig voneinander; damit wird 2 Die hier notierte Herleitung beweist natürlich noch nicht, dass die gefundene stationäre Lösung auch notwendig für t angenommen wird (vgl. auch die Anmerkung weiter oben) Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 7 von 8 ( x) n1 e x ( x) dx pn dx . (n 1)! n 1 (8.9) Hieraus folgt ( x) (1 ) e ( ) x , für x > 0 . Die Gesamtzeit, die der Klient im System verbringt, ist eine Zufallsvariable W , die die Summe von X und der Bedienzeit Y ist; dabei ist Pr(Y y) = 1 – e – y . Sei (x) die Verteilungsfunktion von W und (x) die zugehörige Dichtefunktion, dann ergibt sich y ( y ) P(W y ) P( X 0) P(Y y ) ( x) P(Y y x) dx . (8.10) 0 Damit wird (8.11) (y) = 1 – e – ( – ) y für y 0 , bzw. (y) = ( - ) e – ( – ) y für y 0 . Mit diesen Ergebnissen lassen sich die Erwartungswerte für die Wartezeiten im System und in der Schlange ermitteln: Tq = E(X) = 0 · Pr(X=0) + x ( x) dx (8.12) 0 Ts E (W ) y ( y ) dy (8.13) 0 , 1 . Beispiel: An einer Kasse treffen im Mittel 10 Kunden pro Stunde ein. Wie gross muss die mittlere Bedienzeit pro Kunde sein, damit 80% der Kunden nicht länger als 5 Minuten im System bleiben ? Ankünfte und Bedienungen seien exponentiell mit den Parametern und verteilt. Es soll also sein Pr(W 5) = 0.8 mit = 1/6 Kunde min –1 : 5 5 0 0 Pr(W 5) ( x) dx e ( ) x dx 0.8 . Prof. Dr. Gerhard Berendt SS 2006 Modellierung und Simulation von Warteschlangen Arbeitsblatt 3 / S. 8 von 8 Auswertung des Integrals liefert die Bedingung e 5 ( 1/ 6) 0.2 oder 5 1 6 5 ln 0.2 0.51 , also als mittlere Bedienzeit 1/ 2 min pro Kunde. Literatur zu 5., 6., 7. und 8.: [4] D. R. Cox, W. L. Smith: Queues, Chapman and Hall, 1961