Markov Jump Process
Markov Jump Process
Markov Jump Process
qij
Animation: i −→ j; ∀ i, j ∈ S ∃ exponential clock at rate qij , call it (i, j).
Given i, consider clocks (i, j), j ∈ S; move to the “winner” when rings.
Thus: stay at i ∼ exp(qi = j=i qij ) and switch to j with probability Pij = qij /qi
(qij = qi Pij , i = j; qii = −qi ).
c B
B
1
Ergodic Theorem: Let X be irreducible (i ↔ j). Assume that there exists a solution π
to its steady-state equations. Then, X must be “unexplosive” and π must be its stationary
distribution, its limit distribution and
T
1
SLLN • lim 0 f (Xt )dt = πi f (i) (“=”Ef (X∞ )) ; eg. f (x) = 1B (x).
T ↑∞ T
i
1
• lim g(Xt− , Xt ) = πi qij g(i, j), for g(x, x) = 0, ∀ x; e.g. g(x, y) = 1C (x, y).
T ↑∞ T
t≤T i j
λ0 λ1 λ n-1 λn
0 1 2 . . . . n-1 n ...
µ1 µ2 µn µ n+1
1T
E(L) = nπn = lim L(t)dt.
T ↑∞ T 0
n≥0
2
Let m(n) = number of active servers at state n, 0 ≤ m(n) ≤ n; the servers are
statistically identical.
E(Lq ) = [n − m(n)]πn = also long-run average, as above.
n≥0
↓ departure
Outflow rate: δ= πn qn,n−1 = πn µ(n) = Eµ(L). (Assume µ(0) = 0.)
n≥0 n≥0
λ
Example. M/M/1 . . . n n+1 . . .
λj = λ, j ≥ 0; µj = µ · 1j≥1 .
λ
ρ= µ
<1 assumed for steady state (traffic intensity).
λ λ
Potential service rate = 1−π0
= ρ
= µ , as anticipated.
1 1
Additional properties: W ∼ exp mean = µ(1−ρ)
= µ
1+ ρ
1−ρ
, geometric mixture of exp’s.
Departure process is Poisson (λ) (Burke’s Theorem).
⎧
Wq d
⎪
⎨ 0 wp 1 − ρ
=
1/µ ⎪⎩ exp mean = 1
wp ρ
1−ρ
3
λ
(n+1) µ
Always stable.
n
πn = e−ρ ρn! , n ≥ 0 , Poisson distribution!
1
E (# busy servers) = λ · µ
= λ
µ
= ρ.
Very useful: ∞-server models provide upper bound (e.g., Israel Electric Company).
Example M/M/S
µj = (j ∧ s)µ , λj ≡ λ ,
λ
ρ = <1 assumed, as before, to ensure stability.
sµ
ak
πk = π0 , k ≤ S,
k!
s s ρk
= π0 , k ≥ S,
s!
⎡ ⎤−1
s−1
aj as λ
π0 = ⎣ + ⎦ , where a = , offered load.
j=0 j! s!(1 − ρ) µ
Note: “Wait | Wait > 0” is exponential, having the same distribution as that in an
M/M/1 queue with arrival rate λ and service rate S · µ.
Example M/M/S/S
λj ≡ λ, j = 0, . . . , S − 1, µj = j · µ for j = 1, 2, . . . , S .
Always reaches steady state.
S
ak aj
πk = , k = 0, 1, . . . , S.
k! j=0 j!
4
Erlang-B Formula:
S
as aj
E1,S = πS = , loss probability (PASTA).
s! j=0 j!
Note: Useful relations between the Erlang-B and Erlang-C formulae are
(S − a)E2,S E1,S
E1,S = ; E2,S = ;
S − aE2,S (1 − ρ) + ρE1,S
The expression of E2,S in terms of E1,S will become especially useful later on.
Example M/M/S/N (S ≤ N )
λj = λ, 0 ≤ j ≤ N − 1, (λN = 0)
µj = (j ∧ S)µ, 1 ≤ j ≤ N. (µ0 = 0)
Note: Mainly M/M/S (Erlang-C) and sometimes M/M/S/S (Erlang-B) are the prevalent
models used in the world of call centers. However, M/M/S/N is more appropriate, and
even more so M/M/S/N + Abandonment: Erlang-A.
5
Erlang’s Formulae
(Exact Results for M/M/m = Erlang-C, and M/M/m/m = Erlang-B)
³ ´
R
R = offered load = λ/µ = m · ρ ; ρ = m
Rm
m!
Erlang B: E1,m = Pm Rk
Probability of blocking/loss
k=0 k!
Rm 1
m! 1−ρ
Erlang C: E2,m = Pm−1 Rk m Probability of delay
k=0 k!
+ Rm! 1−ρ
1
nE1,n E1,n
1. E2,n = = for ³ ρ < 1 ´
(n − R) + RE1,n (1 − ρ) + ρE1,n
ρ = Rn
d 1
E2,n > E1,n ; dR
E2,n (n) = nE1,n (n)
R(n − 1 − R)E2,n−1
2. E2,n = for R < n − 1.
(n − 1)(n − R) − RE2,n−1
(Must have R < 1 to start with E2,1 = ρ)
RE1,n−1 ρE1,n−1
3. E1,n = = ; E1,0 = 1.
n + RE1,n−1 1 + ρE1,n−1
Recall: Erlang B/C/A formulae, and much more, are implemented in 4CallCenters that
you have been using.
21