Title: TB week 1: Wachtrijtheorie en Simulatie Waarom duurt wachten lang en wat kunnen we er aan doen met simulatie
1TB week 1 Wachtrijtheorie en SimulatieWaarom
duurt wachten lang en wat kunnen we er aan doen
met simulatie
- Alexander Verbraeck
- Sectie Systeemkunde
2Wachtrijen...
- Op de weg (net te laat weg, en dan loop je vast)
- In de supermarkt (en dan net de verkeerde rij
kiezen) - Bij het call-centrum via de telefoon (er zijn nog
68 wachtenden voor u...) - In de kantine (helaas te laat voor de lekkere
broodjes) - In de fabriek (onderdelen die op verwerking
liggen te wachten) - Op kantoor (stapels dossiers en lijsten met
e-mails die nog afgehandeld moeten worden) - Vliegtuigen die rondcirkelen voordat ze kunnen
landen
3Waarom wachtrijen?
- Waar komen de wachtrijen vandaan en waarom zijn
ze zo hardnekkig? - Waarom zijn de wachtrijen vaak langer dan wat we
op grond van ons gevoel zouden zeggen? - Hoe goed kunnen we het optreden van wachtrijen
voorspellen? - Er is theorie over wachtrijen
- We kunnen wachtrijen simuleren
- We kunnen de opgedane kennis toepassen
4Hoe goed snappen we wachten (1)?
- Stel dat we de tram met een frequentie volgens de
dienstregeling van eens per 10 minuten willen
nemen, maar we wonen halverwege het tracé, dus
met alle verstoringen gedraagt de tram zich alsof
hij geheel willekeurig aankomt. Gemiddeld komen
er wel 6 trams per uur, maar soms zit er een
groot gat, en soms zitten er twee vlak achter
elkaar. - Stel ik kom op de halte aan, en ik zie daar
iemand staan die zegt dat zij al 10 minuten
wacht. Hoe lang moet ik dan gemiddeld nog wachten
op de tram?
5Hoe goed snappen we wachten (2)?
- Stel dat we de tram met een frequentie volgens de
dienstregeling van eens per 10 minuten willen
nemen, maar we wonen halverwege het tracé, dus
met alle verstoringen gedraagt de tram zich alsof
hij geheel willekeurig aankomt. Gemiddeld komen
er wel 6 trams per uur, maar soms zit er een
groot gat, en soms zitten er twee vlak achter
elkaar. - Stel ik kom op de halte aan, en ik zie daar
iemand staan die zegt dat zij al 10 minuten
wacht. Hoe lang moet ik dan gemiddeld nog wachten
op de tram? - Antwoord gemiddeld 10 minuten...
6Hoe goed snappen we wachten (3)?
- Stel, we hebben een balie met 5 medewerkers, die
elk 10 mensen per uur kunnen helpen. Er komen
gemiddeld 48 mensen per uur binnen. Ze kunnen het
dus makkelijk aan. Hoe lang isde gemiddelde
wachtrij?de gemiddelde wachttijd?komt de
wachtrij wel eens boven de 20?boven de 10?boven
de 5?
7Hoe goed snappen we wachten (4)?
- Stel, we hebben een balie met 5 medewerkers, die
elk 10 mensen per uur kunnen helpen. Er komen
gemiddeld 48 mensen per uur binnen. Ze kunnen het
dus makkelijk aan. Hoe lang isde gemiddelde
wachtrij 13de gemiddelde wachttijd 16
min.komt de wachtrij wel eens boven de
20 JAboven de 10 VAAKboven de 5 VAAK -
8Hoe goed snappen we wachten (5)?
- Uitgewerkt in simulatiepakket Arena
9Wachten in één rij of meer rijen (1)
- Soms is er één wachtrij bij meer loketten, b.v.
veiligheidsscan op sommige luchthavens - Soms heeft elk loket een eigen wachtrij, b.v.
kassas bij de supermarkt - Maakt dat verschil?
- Wat is eerlijker?
- Verschilt de gemiddelde wachttijd?
- Waarom?
10Wachten in één rij of meer rijen (2)
- Soms is er één wachtrij bij meer loketten, b.v.
veiligheidsscan op sommige luchthavens - Soms heeft elk loket een eigen wachtrij, b.v.
kassas bij de supermarkt - Maakt dat verschil? JA
- Wat is eerlijker? 1 rij
- Verschilt de gemiddelde wachttijd? JA
- Waarom? Lege rij
11Wachten in één rij of meer rijen (3)
- Uitgewerkt in simulatiepakket Arena
12Telefonische diensten (1)
- Als je een telefonische dienst belt, moet je vaak
keuzes maken met nummers voordat je iemand aan de
lijn krijgt. - Waarom is dat?
- Maakt het verschil in de wachtrijen?
- Waarom?
13Telefonische diensten (2)
- Als je een telefonische dienst belt, moet je vaak
keuzes maken met nummers voordat je iemand aan de
lijn krijgt. - Waarom is dat?Specialisatie van taken
- Maakt het verschil in de wachtrijen?Ja
- Waarom?Meer gelijke taken per medewerker
14Telefonische diensten (3)
- Uitgewerkt in simulatiepakket Arena
15Simulatie voor wachtrijproblemen
De simulatie
De praktijk
VSE, Virginia Tech / ORCA Computing
16Simulaties wachten op luchthavens
17Simulatie wachten bij klaar-maken vliegtuig
Model ARC, Aken, Duitsland
18Simulatie Wachten bij instappen
Model ARC, Aken, Duitsland
19Simulatie wachten bij taxiën
Model ARC, Aken, Duitsland
20Wachtrijsysteem
Doelgroep van potentiële klanten
wachtrij
server(s)
klanten
wachtrijsysteem
21Toestanden van het wachtrijsysteem
wachtrij
server(s)
klanten
Wachtrijsysteem
Onbezet / Bezet
Leeg / Niet-leeg
Welke toestand is onmogelijk?
22Parameters van een wachtrijsysteem
- Prestatie van het wachtrijsysteem is afhankelijk
van -
- Aankomstproces (l en verdeling tussentijd)
- Bedieningsproces (m en verdeling bedieningstijd)
- Aantal loketten
- Capaciteit van het systeem
- Omvang van de doelgroep
Capaciteit van wachtrijAantal servers
8 of niet
23Voorbeeld bezettingsgraad
- Bij de helpdesk van de faculteit
- Gemiddeld arriveren er 4 klanten per uur met een
hulpvraag (Poisson) - Gemiddeld kunnen 6 klanten per uur worden
geholpen (Poisson) - Wat is de bezettingsgraad (Griekse letter rho)
voor - 1 helpdesk medewerker?
- 2 helpdesk medewerkers?
24Aankomstproces
- Aankomsttussentijden stochastisch of
deterministisch? - Eén voor één op groepsgewijs?
- Groepsgrootte stochastisch of deterministisch
- Meestal
- Aantal klanten per tijdseenheid Poisson verdeeld
- Tussenaankomsttijden exponentieel verdeeld
- Eén voor één
- Aankomstintensiteit (aantal/tijdseenheid) ?
zelfde!
25Bedieningsproces
- Bedieningstijden stochastisch of deterministisch?
- Bijv. normaal verdeeld of exponentieel verdeeld?
- Volgorde van bediening
- Eerste eerst?
- Laatste eerst?
- Snelste eerst?
- Urgentste eerst?
- Bedieningsintensiteit (aantal/tijdseenheid) µ
26Aantal parallelle servers
- Ieder wachtrijsysteem heeft slechts één wachtrij
- Anders meerdere wachtrijsystemen
- Meerdere servers zijn wel mogelijk
- 1ltserverslt?, aantal servers letter c
27Capaciteit van het systeem
- Totale aantal klanten in de wachtrij en bij de
loketten - Bij eindige capaciteit
- Klanten gaan terug naar doelgroep als wachtrij
vol - Effectieve aankomsten ? Werkelijke aankomsten
- Bijvoorbeeld
- Bellen van klantenservice (in gesprek bij volle
rij) - Numerus fixus voor studie geneeskunde
- Opslag in fietsenwinkel
28Omvang van de doelgroep
- Eindig of oneindig groot?
- Oneindig als groep potentiële klanten is groot
- Klanten in systeem verwaarloosbaar t.o.v.
doelgroep - Restaurant, OV-reisinformatie, Postkantoor, etc.
- Eindige doelgroep
- Aantal aankomsten hangt af van aantal klanten in
systeem - Computers te repareren door de helpdesk,
patiënten op een ziekenhuisafdeling, etc.
29Notatie van Kendall
- A/B/c/N/K waarin
- A Verdeling aankomsttussentijd
- B Verdeling bedieningstijd
- c Aantal servers
- N Capaciteit van het systeem
- K Omvang van de doelgroep
- Afkortingen verdelingen
- M Exponentieel
- D Constant of deterministisch
- Ek Erlang
- G Random of algemeen
30Nu een beetje dieper
31Wet van LittleBehoudsvergelijking
Gemiddelde tijd in systeem
Gemiddeld aantal klanten
Aankomstintensiteit
32Gemiddelde wachttijd Wqprestatiecriteria
Gemiddelde tijd in wachtrij
Gemiddelde bedieningstijd
Gemiddelde tijd in systeem
33Gemiddelde klanten in wachtrij
Lqprestatiecriteria
Bezettingsgraad server
Totaal klanten in systeem
Littles vergelijking voor de wachtrij
34Gemiddeld klanten in systeemPrestatiecriteria
M/M/1
35Oefening 1 Kantine met 1 kassa
- Gemiddeld komt er één klant aan per minuut
(Poisson verdeeld) - Gemiddelde bedieningstijd is 40 seconde per klant
(exponentieel verdeeld) - Bepaal
- Kendall notatie
- Gemiddelde tijd in systeem?
- Gemiddelde wachttijd?
- Gemiddeld aantal klanten in de rij?
- Kans dat er precies 5 klanten in systeem zijn?
36Bedieningsproces
Wie is er aan de beurt
- Bedieningsvolgorde
- FIFO First In, First Out
- LIFO Last In, First Out
- SIRO Service In Random Order
- SPT Shortest Processing Time first
- PR Service according to Priority
- Bedieningstijden stochastisch of deterministisch?
- Bijv. normaal verdeeld of exponentiëel verdeeld?
- m is de bedieningsintensiteit (bijv. 12
klanten/uur) - 1/m is de gemiddelde bedieningstijd (5 minuten)
37Bedieningsvolgorde versus Prestatie
wachtrijsysteem
- Bedieningsvolgorde heeft geen invloed op
- Bezettinggraad
- Totale tijd in het systeem
- Gemiddelde wachttijd
- Totaal aantal klanten in het systeem
- Gemiddelde lengte wachtrij
- Bedieningsvolgorde heeft alleen invloed op
- Variantie van de wachttijd
38Oefening 2
- Wat is de klantenvolgorde als als
bedieningsvolgorde Shortest processing time
first wordt gebruikt? - Welke andere bedieningsvolgorde zou hetzelfde
resultaat geven? - Wat is de gemiddelde wachttijd? (Wq)
- Wat is het gemiddeld aantal klanten in de
wachtrij? (Lq)
Klant Aankomsttijd Bedieningstijd Prioriteit
1 0 2 3
2 1 1 2
3 1.5 0.75 4
4 1.75 0.5 5
5 2.75 0.5 1
39Voorbeeldl 4 (Poisson)m 6 (Poisson)c 1 N
50 Klanten
SPT
L 2.6 Lq 1.7
LIFO
L 3.2 Lq 2.9
--Systeem --Wachtrij --Server
40Voorbeeldl 4 (Poisson)m 6 (Poisson)c 1 N
50 klanten
SPT
w 31 wq 20
LIFO
--Tijd in systeem --Tijd in wachtrij --Bedieningst
ijd
w 38 wq 27
41Systeem met meer servers...
- ? bezettingsgraad systeem
- P0 kans op 0 klanten in systeem
- Pn kans op n klanten in systeem
- L gem. aantal klanten in systeem
- w gemiddelde tijd dat klant in systeem is
- wQ gemiddelde tijd in wachtrij
- LQ gemiddelde lengte wachtrij
- L-LQ gem. aantal bezette balies
42Systeem met 4 servers c4
43Het systeem met 4 balies in Arena
44Berekende waarden
4 balies, ?40/uur, ?12/uur M/M/4
- ? bezettingsgraad 0.83
- P0 kans op 0 klanten in systeem 3
- L gem. aantal klanten in systeem 5.5
- w gemiddelde tijd dat klant in systeem is 8.25
min - wQ gemiddelde tijd in wachtrij
- 5.5/40 -1/12 0.054 uur 3.25 min
- LQ gemiddelde lengte wachtrij 2.16
- L-LQ gem. aantal bezette balies 3.33
45Simulatie
- Met grafen en wachttijdtheorie kunnen bepaalde
problemen analytisch worden opgelost maar wat
als - het systeem zo complex is dat het ondoenlijk is
de beste oplossing analytisch te berekenen - er veel oplossingen berekend moeten worden en het
berekenen veel tijd kost - snel een oplossing nodig is en er geen tijd is
voor berekeningen - inzicht verschaft moet worden aan een
opdrachtgever over de analyse en de oplossingen - Werkelijkheid TB-problemen is meestal zo complex
dat alleen simulatie gebruikt kan worden
46Handsimulatie
- Kunnen we een dergelijk proces in een
wachtrijsysteem ook met de hand uitvoeren? - Laten we een voorbeeld uitproberen met de groep...
47Voorbeeld
- Simulatie met de hand
- Proces in b.v. postkantoor
- Klanten komen uniform verdeeld aan
- tussentijd discreet tussen 1 en 6 minuten
- Klanten hebben een bedieningstijd
- 1 op de 6 klanten 1 minuut,
- 1 op de 2 klanten 2 minuten,
- 1 op de 3 klanten 5 minuten
48Bouw van een simulatiemodel
- Veel soorten simulatietalen
- In 2e jaar ARENA (v/a 2012 Simio) uitgebreid
behandeld - Andere simulatietalen worden getoond
- Voorbeeld hoe wordt een model van de M/M/c
wachtrij met 40 aankomsten per uur, 4 loketten en
5 minuten per bediening gesimuleerd?
49Voorbeeld handsimulatie in Arena
eventueel samennemen
50Interface Arena
Menu en knoppenbalken
Modelleerveld
Spreadsheetveld
Project-bar
51Eenvoudig Arena model
52Gesimuleerde waarden 40 aankomsten per uur, 4
loketten en 5 minuten per bediening
berekend simulatie ? bezettingsgraad 0.83
3.36/4 0.84 P0 kans op 0 klanten in systeem 3
- L gem. aantal klanten in systeem 5.5 2.243
.36 5.6 w gemiddelde tijd klant in
systeem 8.25 min 8.47 min wQ gemiddelde tijd in
wachtrij 5.5/40 -1/12 0.054 uur 3.25
min 3.39 min LQ gemiddelde lengte
wachtrij 2.16 2.24 L-LQ gem. aantal bezette
balies 3.33 3.36
53Gesimuleerde waarden wachtrij
- Zijn ze precies hetzelfde?
- Zo nee, waarom niet?
- Is de simulatie wel valide?
- Hoe bepalen we dat?
- Hoe lang moeten we draaien om een bepaalde
betrouwbaarheid te bereiken? - Wat is de invloed van de lengte van de simulatie?
- Wat is de invloed van het leeg starten?
54Verkorten wachttijden
- De theorie leert ons dat de wachttijd verkort kan
- worden door het
- Reduceren aantal aankomsten per tijdseenheid
- Reduceren bedieningstijd
- Verhogen aantal servers
- Verlagen spreiding in aankomsten
- Verlagen spreiding in bedieningstijd
- Veranderen van de volgorde voor helpen van
klanten
55Conclusie wachtrijen en simulatie
- Murphy heeft gelijk
- Maar we kunnen er wel wat aan doen!
56Wanneer zit dit in het programma?
- Basis in het eerste jaar
- analyse
- statistiek
- modelleertechnieken
- Colleges aan het begin van het 2e jaar
- discrete wiskunde
- simulatie
- Gebruik in 2e en 3e jaar
- project discreet modelleren
- Bachelor project
57Voorbeelden recente simulatiestudies(Alle
voorbeelden hieronder zijn afstudeerstages bij
Systeemkunde 2010-2011)
- Verbeteren bagagesysteem E-kelder Schiphol
- Plaatsing nieuwe remises voor trams bij de HTM
- Doorrekenen logistiek nieuw schip voor
pijpenleggen Heerema - Simulatie voor risicomanagement Heerema
- Visualisatie en simulatie kosten gebruik van
opvouwbare containers - Gedistribueerde simulatie en serious games voor
ProRail - Simulaties voor kadeprocessen Maersk
containerterminal Rotterdam - Doorrekenen wachtlijstproblematiek bij Jeugdzorg
- Verbeteren doorlooptijd laboratorium Reinier de
Graaf ziekenhuis - Verbeteren laad- en losprocessen Norfolkline
terminal Vlaardingen - Personeelsdoorstroming verbeteren bij grote
organisaties (Accenture) - Verbeteren voorraadposities bij Proctor Gamble
Pet Food - Just-in-Time voorraadstrategie voor KLM
motorenonderhoud - Verbeteren prestaties fabricagelijn Ford in
Engeland
58Opdracht 3e en 4e uur (v/a 1045)
- Vorm groepen van 5 studenten
- TBM vleugel D
- Logistieke problemen
- kleine opgave
- theoretische berekening
- handsimulatie met dobbelstenen
- Arena model
- simulatie Schiphol grensfilter met Arena
- simulatie Eiffeltoren met Arena
- 1 computer per groep
- 1 antwoordblad per groep inleveren