Die M/M/1-Warteschlange verständlich erklärt
Je näher die Auslastung eines Gates mit einer Abfertigungsspur an die volle Auslastung kommt, desto stärker wächst die Wartezeit der Lkw: Sie explodiert. Diese Seite erklärt das zuerst ohne Formeln und danach für Fachleute mit Modell, Formeln, Messwerten und Grenzen. Die zugehörige Demo ist die einfachste von mehreren zum Thema Warteschlangen und Simulation.
Zuletzt aktualisiert:
Ein Wort unbekannt? Das Begriffsverzeichnis erklärt es in wenigen Sätzen.
Ein Gate, eine Spur, zufällige Lkw
Stellen Sie sich das Gate eines Containerterminals mit genau einer Abfertigungsspur vor. Die Lkw treffen zufällig ein, mal kurz hintereinander, mal mit großen Lücken. Auch jede Abfertigung dauert mal kürzer, mal länger. Wer ankommt, während die Spur belegt ist, stellt sich hinten an und wird der Reihe nach abgefertigt.
Die Demo nimmt an, dass beides „gedächtnislos“ ist: Wie lange ein Lkw schon gewartet hat oder wie lange eine Abfertigung schon läuft, sagt nichts darüber, wann es weitergeht. Fachleute sprechen dann von Poisson-Ankünften und exponentiell verteilten Abfertigungsdauern. Das ist die einfachste Warteschlange der Warteschlangentheorie. Wichtig ist die Auslastung: der Anteil der Zeit, in dem die Spur im Mittel belegt ist.
Warum die Wartezeit nicht gleichmäßig wächst
Naheliegend wäre: doppelt so hohe Auslastung, doppelt so lange Wartezeit. Im Modell ist es anders. Bei geringer Auslastung wartet man kaum, dann wächst die Wartezeit immer schneller, und nahe der vollen Auslastung läuft sie davon. Ab voller Auslastung gibt es gar kein Gleichgewicht mehr: Die Schlange wächst dann ohne Grenze.
Anschaulich: Weil die Ankünfte zufällig sind, treffen manchmal mehrere Lkw kurz hintereinander ein. Bei hoher Auslastung hat die Spur kaum freie Zeit, um eine solche Häufung wieder abzubauen. In der Formel zeigt sich das so: Die Wartezeit wird durch den Abstand zwischen dem geteilt, was die Spur schaffen kann, und dem, was ankommt. Wird dieser Abstand klein, wird die Wartezeit sehr groß.
Was hilft?
Bei hoher Auslastung wirkt schon eine etwas schnellere Abfertigung stark: Die Auslastung sinkt ein Stück, und die Schlange wird deutlich kürzer. Wäre die Abfertigung außerdem immer gleich lang statt zufällig, wäre die Wartezeit im Modell ebenfalls deutlich kürzer: Die Streuung der Dauer kostet also Wartezeit. Die genauen Zahlen stehen im Fachteil.
Wie verlässlich ist eine Simulation?
Die Demo rechnet das Gate auch durch: Eine Simulation spielt Lkw für Lkw nach, wer wann ankommt und wie lange die Abfertigung dauert. Die Formel beschreibt den langfristigen Durchschnitt und ist exakt. Ein einzelner Simulationslauf dagegen ist eine zufällige Stichprobe und liegt in der Voreinstellung der Demo merklich neben der Formel. Das ist typisch und kein Ausreißer.
Je näher die Auslastung an der vollen liegt, desto stärker streut ein Lauf. Außerdem beginnt jeder Lauf mit einem leeren Gate; bei sehr hoher Auslastung unterschätzt das die Schlange, solange der Lauf kurz ist. Für genaue Werte nahe der vollen Auslastung braucht es deshalb sehr lange Läufe mit Millionen von Lkw. Ein Zusammenhang namens Little’s Gesetz, der die Zahl der Lkw im System mit der Wartezeit verbindet, gilt dagegen auf jedem simulierten Lauf genau.
Wie ernst ist das Modell zu nehmen?
Die Demo ist ein stark vereinfachtes Modell: eine Spur, gedächtnislose Zeiten, eine Schlange ohne Platzgrenze, eine gleichbleibende Ankunftsrate, alle Lkw gleich wichtig. Die Abfertigungsdauer im Beispiel ist ein gewählter Wert, keine Messung an einem echten Terminal. Die Demo zeigt, wie die Mechanik wirkt, nicht wie lange ein bestimmtes Gate wirklich warten lässt.
Die weiteren Demos zum Thema heben je eine dieser Annahmen auf, etwa mit mehreren Spuren oder begrenztem Platz.
Hinweis: Alle Demos rechnen mit synthetischen oder frei verfügbaren Beispieldaten und laufen auf einem externen Anbieter (Datenschutz). Bitte geben Sie darin keine vertraulichen oder personenbezogenen Daten ein. Die Ergebnisse gelten für die jeweilige Demo-Instanz und lassen sich nicht ungeprüft auf reale Fälle übertragen; für darauf gestützte Entscheidungen übernehme ich keine Gewähr.
Modell und Annahmen
Dieser Teil ist eigenständig lesbar. Er fasst die formale Beschreibung der Demo zusammen; die vollständige Fassung steht im Expander „📐 Mathematische Formulierung“ der Demo.
- Modell: Ankünfte bilden einen Poisson-Prozess mit Rate \(\lambda\), Abfertigungsdauern sind unabhängig exponentiell mit Rate \(\mu\), ein Server, FIFO, unbegrenzte Schlange (Kendall-Notation M/M/1). Die Zahl der Lkw im System ist eine Geburts-Sterbe-Kette mit Geburtsrate \(\lambda\) und Sterberate \(\mu\) (für mindestens einen Lkw im System).
- Auslastung: \(\rho = \lambda/\mu\). Ein Gleichgewicht gibt es nur bei \(\rho < 100\,\%\). Ab \(\rho \ge 100\,\%\) zeigt die App keine Formelwerte und eine Warnung und lässt die Simulation weiterlaufen, damit man die wachsende Schlange sieht.
- Regler: Auslastung (10 bis 110 %), mittlere Abfertigungsdauer (1 bis 6 min, verschiebt nur die Zeitachse), Lauflänge (1 000 bis 50 000 Lkw), Zufalls-Seed. Voreinstellung: 90 %, 3 min (18 Lkw/h kommen an, 20 Lkw/h werden abgefertigt), 10 000 Lkw.
Gleichgewicht und Formeln
Für \(\rho < 1\) gilt für die stationäre Verteilung \(\pi_n\) das Schnittgleichgewicht \(\lambda\,\pi_n = \mu\,\pi_{n+1}\), also eine geometrische Verteilung:
\[\pi_n = (1-\rho)\rho^n\]
Daraus folgen die mittlere Zahl der Lkw im System \(L\) und in der Schlange \(L_q\):
\[L = \sum_n n\,\pi_n = \frac{\rho}{1-\rho},\qquad L_q = \sum_{n \ge 1}(n-1)\,\pi_n = \frac{\rho^2}{1-\rho}.\]
Wartezeit und Verweilzeit folgen aus Little’s Gesetz \(L = \lambda W\) und \(L_q = \lambda W_q\), das für jedes stabile System gilt, auch ohne exponentielle Zeiten:
\[W = \frac{1}{\mu-\lambda},\qquad W_q = \frac{\rho}{\mu-\lambda}.\]
Der Nenner \(\mu-\lambda\) wird bei \(\rho \to 1\) klein: Das ist die Explosion der Wartezeit. Ein ankommender Lkw findet das System (nach PASTA, Poisson-Ankünfte sehen Zeitmittelwerte) mit Wahrscheinlichkeit \(\rho\) belegt, daher \(P(W_q > 0) = \rho\); den Rest der Wartezeit verteilt die Formel exponentiell: \(P(W_q > t) = \rho\,e^{-(\mu-\lambda)t}\).
Simulation und Gegenprobe
Die Simulation ist eine Ereignisliste mit Ankünften und Abgängen, gestartet mit leerem Gate. Der Zufall kommt aus einem Ganzzahl-Generator (SplitMix64) statt aus numpy, weil numpy keine über Versionen stabilen Zufallsströme garantiert. Als zweite, unabhängige Rechnung derselben Wartezeiten aus denselben Zufallszahlen dient die Lindley-Rekursion ohne Ereignisliste:
\[W_{k+1} = \max(0,\,W_k + S_k - A_{k+1})\]
Beide stimmen Kunde für Kunde überein. Little’s Gesetz gilt auf einem simulierten Pfad, der leer endet, sogar als exakte Identität: Jeder Kunde trägt genau seine Verweilzeit zur Fläche unter der Kurve der Zahl im System bei. Als unabhängige Referenz für die Formeln dient das lineare Gleichungssystem der abgeschnittenen Geburts-Sterbe-Kette, das ohne die geschlossenen Formeln auskommt.
Befunde
Alle Zahlen stammen aus den Formeln und Messreihen der Demo (jede steht in deren Tests, tests/test_claims.py) und gelten bei 3 min mittlerer Abfertigung. Die vorgerechneten Messreihen nutzen je Auslastung und Lauflänge 200 unabhängige Läufe; nur die Lauflänge für ±1 % stammt aus 300 Läufen à 1 Mio. Lkw. Ausnahmen sind genannt.
| Frage | Befund |
|---|---|
| Was sagt die Formel? | ρ = 50 %: im Mittel 1 Lkw im System, 3 min Wartezeit. ρ = 90 %: 9 Lkw, 27 min. ρ = 97 %: 32,3 Lkw, 97 min. |
| Was bringt mehr Kapazität? | Bei ρ = 90 % senkt eine um 10 % schnellere Abfertigung (ρ → 81,8 %) die Schlange von 9,0 auf 4,5 Lkw (−50 %). |
| Wie weit liegt ein Einzellauf von der Formel? | Voreinstellung der Demo (Zufalls-Seed 35, 10 000 Lkw, ρ = 90 %): 7,73 statt 9,00 Lkw (−14 %), Wartezeit 23,0 statt 27,0 min (−15 %). Das ist typisch, kein Ausreißer. |
| Wie stark streut ein Lauf? | Relative Standardabweichung der Wartezeit bei 10 000 Lkw: ρ = 50 % ±5 %, ρ = 90 % ±18 %, ρ = 97 % ±51 %. Mit 50 000 Lkw: ρ = 90 % ±10 %, ρ = 97 % ±30 %. |
| Unterschätzt der leere Start die Schlange? | Bei ρ = 97 % ja: im Mittel −47 % bei 1 000 Lkw, −11 % bei 10 000, bei 50 000 nicht mehr vom Rauschen zu trennen. Bei ρ = 50 % liegt die Abweichung in jeder Lauflänge unter 5 %. |
| Wie lang muss ein Lauf sein (±1 %, 95 %)? | Rund 1,0 Mio. Lkw bei ρ = 50 %, 6 Mio. bei 80 %, 19 Mio. bei 90 %, 67 Mio. bei 95 %, 1,5 Mrd. bei 99 % (Messunsicherheit rund ±8 %, 1σ). Zwischen 50 % und 99 % liegt etwa das 1 400-Fache. |
Bei fester statt exponentieller Abfertigungsdauer ist die Wartezeit nach der Formel genau halb so groß; simuliert bei ρ = 50 % ergeben fünf Zufalls-Seeds à 100 000 Lkw 1,50 gegen 3,01 min.
Grenzen
- Lauflängen für ±1 %: Sie beruhen auf der Annahme, dass die Varianz des Schätzers mit 1/N fällt, gemessen bei 1 Mio. Lkw und 300 Läufen. Bei ρ = 99 % ist selbst diese Lauflänge noch mit −1,1 % Startverzerrung behaftet; die 1,5 Mrd. sind dort eine grobe Abschätzung.
- Startverzerrungen: Die Werte in der Tabelle sind Mittel über 200 Läufe und selbst verrauscht (bei ±50 % Streuung eines Laufs auf wenige Prozentpunkte genau).
- Zeitachse: Die Messreihen gelten für beliebige mittlere Abfertigungsdauern, weil eine Skalierung der Zeitachse alle Verhältnisse unverändert lässt; gemessen wurde bei 3 min.
- Live-Ansicht: Sie rechnet einen Lauf; Konfidenzintervalle aus Wiederholungen und das Abschneiden der Einschwingphase gibt es nur in den vorgerechneten Messreihen. Deren Auslastungen enden bei 97 %.
- Nicht enthalten: mehrere Server, begrenzte Schlange, Geduld, nicht-exponentielle Bedienzeiten (nur als Gegenbeispiel mit fester Dauer), zeitabhängige Ankunftsraten, Prioritäten, Netze. Jede dieser Annahmen hebt eine weitere Demo zum Thema auf.
Quellen
- Little, J. D. C. (1961): A Proof for the Queuing Formula: L = λW. Operations Research 9(3), 383–387.
- Lindley, D. V. (1952): The theory of queues with a single server. Mathematical Proceedings of the Cambridge Philosophical Society 48(2), 277–289.
- Kendall, D. G. (1953): Stochastic Processes Occurring in the Theory of Queues and their Analysis by the Method of the Imbedded Markov Chain. Annals of Mathematical Statistics 24(3), 338–354 (Kendall-Notation).
- Wolff, R. W. (1982): Poisson Arrivals See Time Averages. Operations Research 30(2), 223–231.
- Quelltext, Messreihen und Tests der Demo: github.com/sebastian-hanisch/mm1-queue-demo.
Die genannten Arbeiten wurden für diese Seite nicht nachgeschlagen; die Literaturhinweise stammen aus der README der Demo.