LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
verify_mmcc_retrial_fp.m
1%% Verify M/M/c/c retrial fixed-point approximation against JMT simulation
2% Parameters: lambda=2, mu=1, c=3
3
4lambda = 2;
5mu = 1;
6c = 3;
7
8%% Fixed-point approximation
9[blocProb_fp, r_fp, niter] = qsys_mmcc_retrial_fp(lambda, mu, c);
10fprintf('=== Fixed-Point Approximation ===\n');
11fprintf('Blocking prob (per attempt): %.6f\n', blocProb_fp);
12fprintf('Mean busy servers: %.6f\n\n', (lambda+r_fp)/mu * (1 - blocProb_fp));
13
14%% JMT simulation with retrial (single run)
15mu_r = 1.0;
16
17model = Network('MMcc_Retrial');
18source = Source(model, 'Source');
19queue = Queue(model, 'Queue', SchedStrategy.FCFS);
20sink = Sink(model, 'Sink');
21
22queue.setNumberOfServers(c);
23queue.setCapacity(c);
24
25oclass = OpenClass(model, 'Class1');
26source.setArrival(oclass, Exp(lambda));
27queue.setService(oclass, Exp(mu));
28queue.setRetrial(oclass, Exp(mu_r));
29
30model.link(Network.serialRouting(source, queue, sink));
31
32fprintf('=== SolverJMT (mu_retrial=%.1f, 5000 samples) ===\n', mu_r);
33solver = SolverJMT(model, 'seed', 23000, 'samples', 5000);
34avgTable = solver.getAvgTable();
35disp(avgTable);