Kösystem - UU Studentportalen

En överblick
Kösystem – teori, statistik, slumptal
Att läsa inför föreläsningen
Simuleringens statistiska metoder, Kap 3, s 45-53.
Kjartan Halvorsen
Systemteknik
Inst för IT
Queueing, Kap 4 s 59-81.
På föreläsningen
Sannolikhetsfördelninger Ankomst- och betjäningstider
Uppsala Universitet
Köteori prestandamått, analys av steady-state
Statistik Konfidensintervall
2011-11-16
Pseudo-slumptal Deterministisk serie tal med
slumptalsegenskaper
Det kumulative ködiagrammet, igen
Prestandamått
Från kundens perspektiv
Tid i kö Att stå i kö är tråkigt. Bundet kapital.
Från betjänarens perspektiv
Utnyttjandegrad Hur stor andel av tiden arbetar
betjänaren?
Genomströmning Hur många kunder kan betjänas på en
dag? Omsättning.
balk, renege Kunder som avviker. Förlorad omsättning.
/W
12
/TW
10
:
8
&$W
&'TW
:T
6
4
&'W
2
0
0
$ 100
200
Notera att
/TW
10
Kunder
A(n)
D(n)
Dq (n)
CA(t)
CD(t)
CDq (t)
W (n)
Wq (n)
L(t)
Lq (t)
/W
12
300 ' 400
Tid 'T
500
Tid in kund n
Tid ut kund n
Tid ur kö kund n
Akum ankomster tid t
Akum avgånger tid t
Akum avgånger ur kö t
Tid i sys kund n
Kötid kund n
Antal kunder i sys tid t
Antal kunder i kön tid t
600
Littles sats
14
:
8
&$W
4
&'TW
200
PN
300 ' 400
Tid 'T
Medeltid i systemet W = N1 n=1 W (n)
P
Medeltid i kön Wq = N1 Nn=1 Wq (n)
R tb
1
Medelkölängd Lq = t −t
Lq (t)dt
ta
a
b
tb
ta
Lq (t)dt,
Littles sats
2
$ 100
Wq (n) =
Z
därför att det är två sätt att beräkna samma gråa area i
diagrammet ovan.
&'W
0
N
X
n=1
:T
6
0
14
Kunder
Tid i systemet Tid är penger. Gäller båda om “kunden” är
en människa eller ett föremål.
500
600
Wq N =
N
X
n=1
Lq =
Wq (n) =
Z
tb
ta
Lq (t)dt = Lq (tb − ta )
N
Wq = λWq ,
tb − ta
där λ = N/(tb − ta ) är medelankomstfrekvensen
Ankomstprocessen
Exponentialfördelningens egenskaper
Ofta antas att tiden mellan ankomster är exponentialfördelat
f (t) = λe−λt .
Låt T ∼ Exp(λ), Ti ∼ Exp(λi )
1
Är det ett rimligt antagande?
2
0.1
0.08
3
Observationer/s
Observerade ankomster till
Pressbyrån på
Centralstationen under 10
minuter en tidig eftermiddag.
0.06
0.04
4
Minneslös: P T < s + t | T > s = P T < t
Minimum av två oberoende exponentialfördelade
slumpvariabler är också exponentialfördelad:
min(T1 , T2 ) ∼ Exp(λ1 + λ2 ).
1
P T1 < T2 = λ1λ+λ
2
Summan av k slumpvariabler som är oberoende och
Exp(λ) har en Gamma-fördelning:
f (t) =
0.02
0
5 10 15 20 25 30 35 40 45 50 55
Tid mellan ankomster (s)
Poisson-processen
En stokastisk process {A(t); t > 0} kallas en
Poisson-process om
1
A(0) = 0
2
A(s + t) ≥ A(t)
4
Vad med betjäningstiderna?
Antag att
Definition
3
1
λk t k −1 e−λt .
(k − 1)!
Processen har oberoende inkrement
Antal händelser inom ett interval t är Poisson-fördelad:
P
(λt)n
A(s + t) − A(s) = n = e−λt
n!
Tiden mellan händelserna i Poisson-processen är Exp(λ).
Väntevärdet för antal händelser inom ett interval t är λt.
Kendalls notation för kösystem
Betjäningen är uppdelat i k stycken steg, och tiden som
varje steg tar är oberoende av varandra, och har alla
samma fördelning Exp(λ).
T = T1 + T2 + · · · + Tk
1
T har Gamma-fördelning, i
kösamanhang även kallat
Erlang-fördelning med
täthetsfunktionen
0.8
0.6
k=1
0.4
k=2
0
f (t) =
k=3
0.2
0
1
2
3
4
Tid
5
6
X1 /X2 /c
0
där
λ
c – antal parallella betj.processer
Vanligt förekommande
M = Markovian (exponentialförd.)
D = Deterministisk
Ek = Erlang
G = Generell
λ
n−1
1
µ
X2 – betjäningsprocessen
8
M/M/1 i steady-state
λ
X1 – ankomstprocessen
7
1
λk t k −1 e−λt .
(k − 1)!
µ
n
µ
λ
µ.
Låt ρ =
I stationärt tillstånd (limt→∞ ) gäller:
Sannolikheten att det är n kunder i systemet:
πn = P N = n = ρn (1 − ρ)
Medelvärdet av antal kunder i systemet:
∞
∞
X
X
L=
nπn =
n(1 − ρ)ρn =
n=0
n=0
Medeltiden i systemet för en kund:
1
ρ
W = L/λ =
λ 1−ρ
ρ
1−ρ
Centrala gränsvärdessatsen
Stokastiska system
Definition
Källor till slumpmässighet
Slumpmässiga tider mellan ankomster
Tiden det tar att betjäna en kund är slumpmässig
Konsekvens
Observationer av systemet, och utfall av simuleringar av
systemet är slumpvariabler.
P
När N → ∞ kommer fördelningen för ZN = N1 N
i=1 Xi gå
mot en normalfördelning
med
medelvärde
µ
och
√
standarddeviation σ/ N.
Kärnan i slumptalsserier som datorn ger är en algoritm för att genererera
Antag att
talserier (y1 , y2 , . . .) med egenskaper som slumptal likformigt fördelade
X1 , X2 , . . . , XN är utfall (t.ex totala väntetiden) ur N stycken
simuleringer av samma system, fast med olika
slumptalsserier.
Beräkna ur samplet
1
N
PN
q
mellan 0 och 1.
Multiplikativa kongruensgeneratorn
xn+1 ≡ kxn + c mod m
xn
yn = .
m
i=1 Xi
Standarddeviationen s =
1
N−1
PN
i=1 (Xi
− X̄ )2
Konfidensintervall för det skattade medelvärdet
P
Centrala gränsvärdessatsen
Slumptal – eller “vad är fröet?”
Konfidensinterval
Medelvärdet X̄ =
Låt X1 , X2 , . . . , XN vara oberoende, likafördelade
slumpvariabler (iid), med väntevärde µ och
standarddeviation σ.
√
√ X̄ − 1.96s/ N < µ < X̄ + 1.96s/ N = 0.95
Algoritmen initieras med x0 , vilken kallas fröet.
I python: Mersenne Twister
Standard i flera programspråk: R, Maple, Matlab, Ruby
Väldig lång periodicitet: 219937 − 1
Passerar många tester på slumpmässighet