Top Banner
1 Advanced Queueing Theory Networks of queues (reversibility, output theorem, tandem networks, partial balance, product-form distribution, blocking, insensitivity, BCMP networks, mean-value analysis, Norton's theorem, sojourn times) Analytical-numerical techniques (matrix-analytical methods, compensation method, error bound method, approximate decomposition method) Richard J. Boucherie department of Applied Mathematics University of Twente http://wwwhome.math.utwente.nl/~boucherierj/onderwijs/Advanced Queueing Theory/AQT.html
38

Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

Apr 16, 2019

Download

Documents

haphuc
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

1 Advanced Queueing Theory •  Networks of queues

(reversibility, output theorem, tandem networks, partial balance, product-form distribution, blocking, insensitivity, BCMP networks, mean-value analysis, Norton's theorem, sojourn times)

•  Analytical-numerical techniques (matrix-analytical methods, compensation method, error bound method, approximate decomposition method)

•  Polling systems (cycle times, queue lengths, waiting times, conservation laws, service policies, visit orders)

Richard J. Boucherie department of Applied Mathematics

University of Twente http://wwwhome.math.utwente.nl/~boucherierj/onderwijs/Advanced Queueing Theory/AQT.html

Page 2: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

2

M/G/1 queue with server vacations

•  Polling system

Page 3: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

3 Advanced Queueing Theory Today (lecture 8): Vacation models

•  S.C. Borst. Polling Systems, CWI: Tract, chapters 1 – 3. •  S.W. Fuhrmann, R.B. Cooper, Robert B. Operations Research, Sep/Oct 1985,

Vol. 33 Issue 5, p1117-1129 •  J.A.C. Resing. Polling systems and multitype branching processes, Queueing

Systems, 13, p 409 – 426 •  I. Adan: Queueing Systems, lecture notes

•  M/G/1 queue, PK formula •  M/G/1 queue with vacations •  M/G/1 queue with Generalized vacations •  Polling model

Page 4: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

4 M/G/1 queue

•  Poisson arrival process rate λ, single server, General service times, mean 1/μ=E(B)

•  Service time distribution FB(.), density fB(.) •  state: pair (n,x), n=#customer, x= received service time

•  # customers left behind by k-th departing cust.

•  # customers in the system at time t

•  # customers seen by k-th arriving customer

•  PASTA & frequency argument:

Page 5: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

5

•  # arrivals during k-th service time

• 

•  Embedded Markov chain at departure epochs

pr n arrivals during service

M/G/1 queue

Page 6: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

6

•  Equilibrium equations

•  Gen. functions, for z<1,

•  From equil. eq.

•  Hence

M/G/1 queue

Page 7: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

7 M/G/1 queue

•  Furthermore

•  Pollaczek-Khintchine formula for queue length

•  By analogy for sojourn time

•  And for Waiting time

Page 8: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

8 Advanced Queueing Theory Today (lecture 8): Vacation models

•  S.C. Borst. Polling Systems, CWI: Tract, chapters 1 – 3. •  S.W. Fuhrmann, R.B. Cooper, Robert B. Operations Research, Sep/Oct 1985,

Vol. 33 Issue 5, p1117-1129 •  J.A.C. Resing. Polling systems and multitype branching processes, Queueing

Systems, 13, p 409 – 426 •  I. Adan: Queueing Systems, lecture notes

•  M/G/1 queue, PK formula •  M/G/1 queue with vacations •  M/G/1 queue with Generalized vacations •  Polling model

Page 9: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

9

M/G/1 queue with server vacations

•  Consider M/G/1 queue •  Server takes a vacation (general distribution)

when the system becomes idle •  Upon return from vacation, if system idle new vacation

otherwise serve until system idle: exhaustive service •  No preemption •  Queue length? Sojourn time? •  Mild conditions: in distribution

N=NM/Q/1 + NI

V=VM/Q/1 + VI

•  NM/Q/1 number at arbitr moment in corresp M/G/1 NI number at arbitr moment in non-serving interval

Independent r.v.

Page 10: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

10

M/G/1 queue with server vacations

•  Polling system with exhaustive service

Page 11: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

11

Ancestral line

•  I0 group of customers •  I1 set of customers who arrive while members of I0 are

being served: first generation offspring of I0 •  Ik, k>1 set of customers who arrive while members of

Ik-1 are being served: k-th generation offspring of I0 •  ancestral line of I0

•  For us: I0 single customer, or set of customers arriving during some vacation

•  Vacation customer: arrive while server is on vacation •  To each customer, C, corresponds a unique, vacation

customer, A, such that C is in ancestral line of A: A is ancestor of C.

Page 12: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

12

Exhaustive service

•  No preemption: # cust under FIFO = # under LIFO •  Assume LIFO

•  Tag arbitrary customer C upon departure let A be its ancestor

•  present at departure of C are all vacation customers that arrived before A, and all remaining customers in ancestral line of A

•  A has started busy period, C is arbitrary cust in this busy period, this busy period equivalent to standard busy period, thus number of customers in ancestral line of A left behind by C = number of customers left behind in standard M/G/1 queue.

Page 13: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

13 Exhaustive service •  present at departure of C are

all vacation customers that arrived before A, and all remaining customers in ancestral line of A

•  C is arbitrary customer, all vacation customers are iid, therefore ancestor of C corresponds to arbitrarily selected vacation cust. Thus : number of vacation customers left behind = number of customers at arbitrary epoch during vacation.

•  Theorem: Queue length decomposition N=NM/G/1 + NI where equality is in distribution, and N:= queue length at arbitrary epoch NM/G/1 := queue length at arbitrary epoch in corresponding M/G/1 NI := queue length at arbitrary epoch in vacation period NM/G/1 and NI are independent r.v.

Page 14: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

14

Exhaustive service

•  NI distrib as # cust seen by arbitr arrival in vacation period •  Nend,k # customers end k-th vac period, Nend generic rv.

•  Lemma:

•  Proof

Page 15: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

15

Exhaustive service

•  Alternative formulation: •  ψ(.) = p.g.f. stat distrib # cust random dept cust leaves behind

or finds or at arbitrary time •  π(.) = p.g.f. idem in corresp M/G/1 queue

•  α(.) = p.g.f. # arrivals during vacation period = Vac(λ-λz)

• 

π(z)=

Page 16: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

16 Advanced Queueing Theory Today (lecture 8): Vacation models

•  S.C. Borst. Polling Systems, CWI: Tract, chapters 1 – 3. •  S.W. Fuhrmann, R.B. Cooper, Robert B. Operations Research, Sep/Oct 1985,

Vol. 33 Issue 5, p1117-1129 •  J.A.C. Resing. Polling systems and multitype branching processes, Queueing

Systems, 13, p 409 – 426 •  I. Adan: Queueing Systems, lecture notes

•  M/G/1 queue, PK formula •  M/G/1 queue with vacations •  M/G/1 queue with Generalized vacations •  Polling model

Page 17: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

17

Generalized vacations: assumptions

•  Server can take vacation at any time: vacation = server unavailable

•  Service time independent of sequence of vacation periods preceding that service time.

•  Order of service independent of service times. •  Service non-preemptive •  Rules that govern when server begins and ends

vacations do not anticipate future jumps of the arrival process.

Page 18: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

18

Generalized vacations: examples

•  Standard vacation model: vacation upon idling •  N-policy: server waits until exactly N customers

present before starting service, then work continues until system empty

•  M/G/1 with gated vacations: when server returns from vacation, he accepts only those customers waiting upon return, service of other customers deferred to next visit

•  Limited service: serve at most k customers •  Polling model •  Priority system

Page 19: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

19

Generalized vacations

•  Decomposition property holds for any vacation system under assumptions stated.

•  Theorem: Consider a random (tagged) customer C. Let A the ancestor, I0 the set of vacation customers who arrived during the same vacation to which A arrived. Let I the ancestral line of I0, and let X the number of members of I present in system when C departs. X has p.g.f.

•  Proof:

Page 20: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

20

Generalized vacations

•  Assume that the number of customers that arrive during a vacation is independent of the number of customers present in the system when vacation began.

•  Theorem: Under this assumption

•  Proof: LIFO, p.g.f. of number of customers already present at beginning of vacation. Independence yields product.

Page 21: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

21 Generalised vacations

•  Theorem: Queue length decomposition N=NM/G/1 + NI where equality is in distribution, and N:= queue length at arbitrary epoch NM/G/1 := queue length at arbitrary epoch in corresponding M/G/1 NI := queue length at arbitrary epoch in vacation period NM/G/1 and NI are independent r.v.

•  Theorem: Work decomposition V=VM/G/1 + VI where equality is in distribution, and V:= work at arbitrary epoch VM/G/1 := work at arbitrary epoch in corresponding M/G/1 VI := work at arbitrary epoch in vacation period VM/G/1 and VI are independent r.v.

Page 22: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

22

Generalized vacations

•  Assume that the number of customers that arrive during a vacation is independent of the number of customers present in the system when vacation began.

•  Theorem: Under this assumption

•  Proof: LIFO, p.g.f. of number of customers already present at beginning of vacation. Independence yields product.

Page 23: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

23

Generalized vacations: Gated service

•  Gated service: At time tn server finds Xn customers. Gate closes. Server serves those Xn then takes vacation of length Vn and returns at time tn+1

•  Recall

Recursion

Markov chain; from recursion:

B(λ − λz) = PA (z)

Xn+1 = A(i=1

Xn

∑ Bi) + A(Vn )

E[zXn+1 ] =V (λ − λz)E[(B(λ − λz))Xn ]

Page 24: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

24

Generalized vacations: Gated service

•  Assume limiting distribution of Xn n ∞ exists, with pgf X(z), then

Let

then

X(z) =V (λ − λz)X(B(λ − λz))

h(z) := B(λ − λz)

X(z) =V (λ(1− z))X(h(z))=V (λ(1− z))V (λ(1− h(1)(z))X(h(2)(z))

=j= 0

M

∏ V (λ(1− h( j )(z))X(h(M +1)(z))

Page 25: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

25

Generalized vacations: Gated service

•  Let M ∞ in

resulting infinite product exists if ρ<1, and

•  Hence, if ρ<1

X(z) =j= 0

M

∏ V (λ(1− h( j )(z))X(h(M +1)(z))

h(M +1)(z)→1

X(z) =j= 0

∏ V (λ(1− h( j )(z))

Page 26: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

26

Convergence

hence, indeed if ρ<1

•  Observe

•  So that infinite product indeed converges

|1− h( j )(z) |=|1− h(h( j−1)(z)) |≤ ρ |1− h( j−1)(z) |

h(M +1)(z)→1

|1−V (λ(1− h( j )(z)) |≤ λE[V ] |1− h( j )(z) |≤ λE[V ]ρ j |1− z |

Page 27: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

27

Interpretation: Branching processes (Wolff, sec 3-9)

•  Let Yr (i.i.d) be the first generation off-spring of individual r

•  Xn n-th generation off-spring

•  Pgf n-th generation off-spring individual

Page 28: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

28

Branching processes (Wolff, sec 3-9)

•  Xn+1 is sum of descendants of the j individuals of the first generation:

Page 29: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

29

Generalized vacations: Gated service

•  Gated service: recall:

Define

is p.g.f. number of the k-th generation offspring

first previous gated period, second previous gated period

Page 30: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

30

Generalized vacations

•  Server can take vacation at any time •  Service time independent of sequence of vacation

periods preceding that service time. •  Order of service independent of service times. •  Service non-preemptive •  Rules that govern when server begins and ends

vacations do not anticipate future jumps of the arrival process.

•  Number of customers that arrive during a vacation is independent of the number of customers present in the system when vacation began.

•  Theorem:

Page 31: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

31 Advanced Queueing Theory Today (lecture 8): Vacation models

•  S.C. Borst. Polling Systems, CWI: Tract, chapters 1 – 3. •  S.W. Fuhrmann, R.B. Cooper, Robert B. Operations Research, Sep/Oct 1985,

Vol. 33 Issue 5, p1117-1129 •  J.A.C. Resing. Polling systems and multitype branching processes, Queueing

Systems, 13, p 409 – 426 •  I. Adan: Queueing Systems, lecture notes

•  M/G/1 queue, PK formula •  M/G/1 queue with vacations •  M/G/1 queue with Generalized vacations •  Polling model

Page 32: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

32

Polling models

•  N infinite buffer queues, Q1, …, QN

•  Service time distribution at queue j: Bj(.), mean βj, LST βj(.) •  Poisson arrivals to queue j at rate λj •  Single server in cyclic order •  Switch over times: random

variable Sj, mean σ j, LST σj(.)

Page 33: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

33

Polling models: 2 queues with gated service

•  Xij = # customers at Qj when server polls Qi

•  Yij = # customers at Qj when server leaves Qi

•  Generating functions

•  Clearly, with σi(.) the LST of switchover time after visit to Qi

in words: the number when server polls Q2 are the sums of the numbers when server left Q1 + the numbers of arrivals during the subsequent switch

Fi(z1,z2) = E{z1X i1 z2

X i 2 }, i =1,2

Gi(z1,z2) = E{z1Yi1 z2

Yi 2 }, i =1,2

F2(z1,z2) =G1(z1,z2)σ1(λ1(1− z1) + λ2(1− z2)),F1(z1,z2) =G2(z1,z2)σ 2(λ1(1− z1) + λ2(1− z2))

Page 34: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

34

Polling models: 2 queues Lemma

•  With the additional relation we have four foumulas

•  And we may express, via iteration

G1(z1,z2) = F1(B1(λ1(1− z1) + λ2(1− z2)),z2)

F1(z1,z2) =G2(z1,z2)σ 2(λ1(1− z1) + λ2(1− z2))G2(z1,z2) = F2(z1,B2(λ1(1− z1) + λ2(1− z2)))F2(z1,z2) =G1(z1,z2)σ1(λ1(1− z1) + λ2(1− z2))G1(z1,z2) = F1(B1(λ1(1− z1) + λ2(1− z2)),z2)

Σ = λ1(1− z1) + λ2(1− z2)F1(k+1)(z1,z2) =σ 2(Σ)σ1(λ1(1− z1) + λ2(1− B2(Σ)))

× F1

(k )(B1(λ1(1− z1) + λ2(1− B2(Σ))),B2(Σ))

Page 35: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

35

Polling : offspring

•  While served at queue i, customer is replaced by random population with p.g.f.

•  Exhaustive

•  gated

Page 36: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

36

Polling models: 2 queues

•  Starting with the initial relations

•  Iterating, we get

F1(z1,z2) =G2(z1,z2)σ 2(λ1(1− z1) + λ2(1− z2))G2(z1,z2) = F2(z1,h2(z1,z2))F2(z1,z2) =G1(z1,z2)σ1(λ1(1− z1) + λ2(1− z2))G1(z1,z2) = F1(h1(z1,z2)),z2)

Σ = λ1(1− z1) + λ2(1− z2)F1(k+1)(z1,z2) =σ 2(Σ)σ1(λ1(1− z1) + λ2(1− h2(z1,z2)))

F1

(k )(h1(z1,h2(z1,z2)),h2(z1,z2))

Page 37: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

37

Polling : offspring

•  Assumption If the server arrives at Qi to find ki customers, then during the course of the servers visit, each of these ki customers is effectively replaced in an iid manner by a random population with p.g.f.

•  Examples: exhaustive, gated •  Not included: 1-limited, because all but first have pgf si

•  Bernoulli-type. When server arrives all customers present are handled as follows: customer is served, and all offspring served with probability pi.

Page 38: Advanced Queueing Theory - Universiteit Twenteboucherierj/onderwijs/Advanced Queueing... · 9 M/G/1 queue with server vacations • Consider M/G/1 queue • Server takes a vacation

38