Stokastiske processer og køteori 6. kursusgang Anders Gorst-Rasmussen Institut for Matematiske Fag Aalborg Universitet 1
KØSYSTEMER NOTATION Notation for parallelforbundne ekspeditionssystemer X/Y(m, q). Ankomstproces X og ekspeditionstidsproces Y kan antage værdier: M: Uafhængige og eksponentialfordelte ventetider. Dvs. X = M specificerer en Poissonproces. E r : Ventetider er uafhængige og Erlangfordelte af orden r. D: Deterministisk ventetidsfordeling. GI: Uafhængige (independent) ventetider med en fast fordeling. Dvs. ingen nærmere antagelse om fordelingstype. G: Generel (stationær) proces, dvs. ingen antagelser. KØSYSTEMER NOTATION 2
X/Y(m, q)-systemer X Ankomstproces 1 2 q Y 1 2. m Ekspeditionstidsproces Ekspedienter er parallelforbundne man bliver ekspederet ved højest én ekspedient (modsat serieforbundne ekspedienter). q: antal køpladser. m: antal ekspedienter. Dagens emne M/M(m, n m)-køsystemet X/Y(m, q)-systemer 3
M/M/(1, N)-systemet. REMINDER: SIDSTE GANG Poisson ankomstproces med intensitet a, eksponentialfordelte ekspeditionstider med middelværdi 1/b, 1 server, N køpladser. Kunne beskrives vha. fødsels- og dødsproces a a 0 1 2 N+1 b b Stationær Markovproces ligevægtsfordeling kunne beregnes. Performancestørrelser kan udtrykkes ved ligevægtsfordeling; blokeringssandsynlighed, gnsnt. kølængde, gnsnt. ventetid osv. REMINDER: SIDSTE GANG 4
Poisson ankomstproces M/M(m, n m)-køsystemet n m køpladser n n 1 m + 1 m ekspedienter 1 2. m Eksponentialfordelte ekspeditionstider a: intensitet (kunder per tid) hvormed kunder ankommer. b: intensitet (kunder per tid) hvormed én ekspedient ekspederer. Trafiktilbud: A = a/b (antal kunder per gnsnt. ekspeditionstid). Hvis k igangværende ekspeditioner, afsluttes én af disse med intensitet kb. M/M(m, n m)-køsystemet 5
Reminder: den hukommelsesløse egenskab: Hvis T Exp(b), så har T den hukommelsesløse egenskab: P(T > t + s T > s) = P(T > t). Dvs. hvis man venter på T (færdiggørelse), så afhænger fordelingen af restvarighed ikke af, hvornår man kigger. Heraf: Restvarighed ved ekspedient i, T i Exp(b); uafh. ventetider. Ventetid på først færdig, T = min{t 1,...,T k } P(T > t) = P(T 1 > t og T 2 > t og og T k > t) Dvs. T Exp(kbt). = P(T 1 > t)p(t 2 > t) P(T k > t) = e bt e bt e bt = e kbt. M/M(m, n m)-køsystemet 6
EKSEMPEL: M/M(3, 2) a = 2, b = 1. Der er 3 kunder i systemet, når kunde 4 ankommer. Hvor længe skal kunde 4 vente på ekspedition? Restvarighederne for hver af de tre ekspeditioner er Exp(1)-fordelte. Ventetid på færdiggørelse, T = min{t 1, T 2, T 3 }, hvor T i Exp(1). Dvs. kunde 4 skal vente et tidsrum, som er Exp(3 1)-fordelt. EKSEMPEL: M/M(3, 2) 7
LIGEVÆGT I M/M(m, n m)-køsystemet a a a a a 0 1 2 m-1 m m+1 n-1 n b 2b mb mb mb Ankomstintensitet er altid a. Hvis der er... 1. i < m kunder i systemet er færdiggørelsesintensitet ib. 2. i m kunder i systemet er færdiggørelsesintensitet mb. Hvis der er n kunder i systemet, afvises nyankomne. Bemærkning: M/M(m, n m)-køsystemet mere generelt end M/M(1, N) fra sidste gang; dagens teknikker kan bruges på M/M(1, N). LIGEVÆGT I M/M(m, n m)-køsystemet 8
Dvs. M/M(m, n m)-køsystemet er en fødsels- og dødsproces med a 0 = a 1 = = a n 1 = a, ib hvis 1 i m b i = mb hvis m i n Ligevægtsløsning fås af formlerne, p. 50, Andersen (2001). p i = d i p 0, i = 1, 2,...,n. d i = a 0a 1 a i 1 b 1 b 2 b i, i = 1, 2,..., n. p 0 = 1 1 + n i=1 d. i Bemærk løsning eksisterer for alle a, b, såfremt n <. LIGEVÆGT I M/M(m, n m)-køsystemet 9
UDREGNING AF LIGEVÆGTSFORDELING Ligevægtsfordeling kan bestemmes rekursivt: 1. Sæt d 0 = 1 2. For i = 1, 2,..., n beregn d i = d i 1 a i 1 b i. 3. Beregn p 0 = 4. For i = 1, 2,..., n beregn 1 d 0 + d 1 + + d n. p i = d i p 0. UDREGNING AF LIGEVÆGTSFORDELING 10
Udtryk for p i kan reduceres til 1. Når A = m (m kunder per gnsnt. ekspeditionstid): Når A m: p 0 = p 0 = 1 (n m) Am m! + m k=0 Ak /k!. A m+1 (1 (A/m) n m ) m!(m A) 2. Når 0 k m: p k = A k /k!p 0. 3. Når m k n: p k = (A/m) k m p m. 1 A m m! + m k=0 Ak /k!. Vi kan lade n og se på M/M/(m, )-køsystemet. Ligevægt eksisterer kun hvis A < m. Dvs. per middelekspeditionsperiode skal der komme færre kunder, end der er ekspedienter. UDREGNING AF LIGEVÆGTSFORDELING 11
KARAKTERISTISKE STØRRELSER I M/M(m, n m) Blokadesandsynlighed (kundespærring): B = p n. Afviklet trafik: trafiktilbud afvist traffik = A AB = A(1 B). Gennemsnitligt antal optagede ekspedienter: E = A(1 B) gnsnt. udnyttelsegrad = A/m(1 B) Sandsynlighed for forsinkelse: D = n 1 k=m p k Når A = m: D = (n m)b. Når A m: D = m m A (p m B). Sandsynlighed for strakseksped.: S = m 1 k=0 p k = 1 B D. KARAKTERISTISKE STØRRELSER I M/M(m, n m) 12
Gennemsnitlig kølængde: L q = n m k=1 kp m+k. Når A = m: L q = (n m)(n m+1) 2 B. Når A m: L q = A m A (D (n m)b). Gennemsnitlige opholdstider i kø: Alle kunder V q = L q /a. Ikke-afviste kunder: V q = L q a(1 B) = V q 1 B. Ikke-afviste, men forsinkede kunder: W q = L q ad = V q D KARAKTERISTISKE STØRRELSER I M/M(m, n m) 13
SPECIALTILFÆLDET M/M(m, ) Antag at ρ = A/m < 1. Så gælder A m p m = A m+1 m A + m! m k=0 Ak k! B = 0 D = L q = p m 1 ρ ρ 1 ρ D. Øvrige performancestørrelser findes ved indsættelse i relevante formler. SPECIALTILFÆLDET M/M(m, ) 14
BEREGNINGER I M/M/(m, ) I EXCEL Poissonfordeling med middelværdi A P(X = k) = Ak k! exp( A), k = 0, 1, 2,... Excelberegninger: m k=0 A k k! A k k! = EXP(A) POISSON(k; A; FALSE) = EXP(A) POISSON(m; A; TRUE). Dvs. p m = POISSON(m; A; FALSE) POISSON(m; A; TRUE) + POISSON(m + 1; A; FALSE) (m + 1)/(m A) BEREGNINGER I M/M/(m, ) I EXCEL 15
DET RENE AFVISNINGSSYSTEM M/M(m, 0) Erlang s B-formel B = = A m m! m k=0 Ak k! POISSON(m; A; FALSE) POISSON(m; A; TRUE) Udbredt bl.a. ifm. dimensionering af callcentre. Gælder endda for M/G/(m, 0)-køen (generelt fordelte ekspeditionstider). DET RENE AFVISNINGSSYSTEM M/M(m, 0) 16
BLOKADESANDSYNLIGHEDER I M/M(m, 0) B 0.0 0.2 0.4 0.6 0.8 m=1 m=2 m=3 m=5 m=10 m=100 0 1 2 3 4 rho=a/m BLOKADESANDSYNLIGHEDER I M/M(m, 0) 17
EKSEMPEL: HVOR MANGE OPERATØRER? Ankomstproces Poisson med intensitet 80 kunder/time. Hver ekspedient ekspederer med en intensitet 8 kunder/time. Vi vil acceptere en blokadesandsynlighed på 0.4. Hvor mange ekspedienter skal vi bruge? Find (numerisk) løsning til ligningen B(m) = A m m! m k=0 Ak k! = 0.4 EKSEMPEL: HVOR MANGE OPERATØRER? 18
Blokadesandsynlighed 0.0 0.2 0.4 0.6 0.8 5 10 15 20 Antal ekspedienter EKSEMPEL: HVOR MANGE OPERATØRER? 19
SAMMENFATNING: M/M(m, n m)-køsystemet m ekspedienter, n m køpladser. Ankomster m. intensitet a, ekspedition m. intensitet b, dvs. trafiktilbud A = a/b. Antag ρ = A/m 1. p 0 = 1 A m+1 (1 (A/m) n m ) m!(m A) A m m! + m k=0 A k /k!. Blokadesandsynlighed B = A n m!m n m p 0. Forsinkelsessandsynlighed D = Am /m!p 0 B 1 ρ. Gnsnt. kølængde L q = ρ 1 ρ (D (n m)b). Ikke-afviste kunder: Gnsnt. ventetid i kø: V q = L q a(1 B). Gnsnt. opholdstid i system: V = V q + 1/b. Gnsnt. antal kunder i system: L = a(1 B)V. SAMMENFATNING: M/M(m, n m)-køsystemet 20