LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
me_gegecn_pb.m
1function PB = me_gegecn_pb(p, K, N, c, Cs, Ca)
2%ME_GEGECN_PB Blocking probability seen by one arrival stream of a censored
3%GE/GE/c/K;N queue
4%
5% Evaluates equation (4.3) of Kouvatsos (1994) on the ME queue length
6% distribution P returned by ME_GEGECN. Because a GE arrival process is a
7% batch (bulk) process, an arrival can be blocked while the queue holds
8% fewer than N jobs: the term (1-tau)^(N-n) is the probability that the
9% batch overflows the residual room, and the extra factor of the first sum
10% accounts for the servers that are still idle. With a Poisson stream
11% (Ca = 1, tau = 1) every term but n = N vanishes and PB reduces to the
12% PASTA value p(N).
13%
14% The stream scv CA is a per-stream quantity, so the same node solution P
15% yields a different blocking probability for each of the flows merging
16% into the queue: the external arrivals, the flow from each upstream
17% station, and the flow released by each holding node. That is exactly how
18% PBe_j, PB^i_j and PB^{h_ij}_j are obtained in the transfer-blocking
19% algorithm of Tahilramani, Manjunath and Bose (1999).
20%
21% INPUTS:
22% p - ME queue length distribution, p(idx) = Pr{n = K+idx-1}
23% K - Minimum number of jobs in the queue
24% N - Buffer capacity in jobs
25% c - Number of servers
26% Cs - Squared coefficient of variation of the service times
27% Ca - Squared coefficient of variation of the interarrival times OF THE
28% STREAM whose blocking probability is requested
29%
30% OUTPUT:
31% PB - Probability that an arrival of this stream finds the queue full
32%
33% References:
34% D.D. Kouvatsos, "Entropy Maximisation and Queueing Network Models",
35% Annals of Operations Research, 48:63-126, 1994, equation (4.3).
36% H. Tahilramani, D. Manjunath, S.K. Bose, "Approximate analysis of open
37% network of GE/GE/m/N queues with transfer blocking", MASCOTS 1999,
38% 164-171, equations (12) and (14).
39%
40% Copyright (c) 2012-2026, Imperial College London
41% All rights reserved.
42
43tau = 2 / (Ca + 1);
44sigma = 2 / (Cs + 1);
45n = K:N;
46nn = numel(n);
47w = (1 - tau) .^ (N - n);
48
49PB = 0;
50% Jobs arriving while some servers are still idle: n = K,...,c-1
51if K < c
52 last = min(c - K, nn);
53 idx = 1:last;
54 fac = (sigma / (sigma * (1 - tau) + tau)) .^ (c - n(idx));
55 PB = PB + sum(w(idx) .* fac .* p(idx));
56end
57% Jobs arriving with all servers busy: n = max(c,K),...,N
58lo = max(c, K);
59if lo <= N
60 idx2 = (lo - K + 1):nn;
61 PB = PB + sum(w(idx2) .* p(idx2));
62end
63end