LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
statepr_sys_aggr.m
1clear node jobclass solver
2
3model = Network('model');
4
5node{1} = Delay(model, 'Delay');
6node{2} = Queue(model, 'Queue1', SchedStrategy.PS);
7node{3} = Queue(model, 'Queue2', SchedStrategy.PS);
8
9node{3}.setNumServers(2);
10
11N=[1,0,3,0];
12jobclass{1} = ClosedClass(model, 'Class1', N(1), node{1}, 0);
13jobclass{2} = ClosedClass(model, 'Class2', N(2), node{1}, 0);
14jobclass{3} = ClosedClass(model, 'Class3', N(3), node{1}, 0);
15jobclass{4} = ClosedClass(model, 'Class4', N(4), node{1}, 0);
16
17node{1}.setService(jobclass{1}, Exp(1));
18node{1}.setService(jobclass{2}, Exp(2));
19node{1}.setService(jobclass{3}, Exp(1));
20node{1}.setService(jobclass{4}, Exp(1));
21
22node{2}.setService(jobclass{1}, Exp(3));
23node{2}.setService(jobclass{2}, Exp(4));
24node{2}.setService(jobclass{3}, Exp(5));
25node{2}.setService(jobclass{4}, Exp(1));
26
27node{3}.setService(jobclass{1}, Exp(1));
28node{3}.setService(jobclass{2}, Exp(3));
29node{3}.setService(jobclass{3}, Exp(5));
30node{3}.setService(jobclass{4}, Exp(2));
31
32K = length(jobclass);
33P = cell(K,K);
34
35P{1,1} = [0,1,0; 0,0,1; 0,0,0];
36P{1,2} = [0,0,0; 0,0,0; 1,0,0];
37P{1,3} = [0,0,0; 0,0,0; 0,0,0];
38P{1,4} = [0,0,0; 0,0,0; 0,0,0];
39
40P{2,1} = [0,0,0; 0,0,0; 1,0,0];
41P{2,2} = [0,1,0; 0,0,1; 0,0,0];
42P{2,3} = [0,0,0; 0,0,0; 0,0,0];
43P{2,4} = [0,0,0; 0,0,0; 0,0,0];
44
45P{3,1} = [0,0,0; 0,0,0; 0,0,0];
46P{3,2} = [0,0,0; 0,0,0; 0,0,0];
47P{3,3} = [0,1,0; 0,0,1; 0,0,0];
48P{3,4} = [0,0,0; 0,0,0; 1,0,0];
49
50P{4,1} = [0,0,0; 0,0,0; 0,0,0];
51P{4,2} = [0,0,0; 0,0,0; 0,0,0];
52P{4,3} = [0,0,0; 0,0,0; 1,0,0];
53P{4,4} = [0,0,1; 0,0,0; 0,0,0];
54
55%%pause
56model.link(P);
57
58M = model.getNumberOfStations();
59K = model.getNumberOfClasses();
60
61% This part illustrates the execution of different solvers
62fprintf(1,'This example illustrates the calculation of probabilities via normalizing constants.\n')
63
64solver={};
65options = Solver.defaultOptions;
66options.verbose=1;
67options.seed=23000;
68%options.samples=1e5;
69
70n=[0,0,0,0;
71 0,0,0,0;
72 N(1),N(2),N(3),N(4)];
73for i=1:M
74 node{i}.setState(n(i,:));
75end
76state = model.getState;
77
78solver = CTMC(model,options);
79Pr_ctmc = solver.getProbSysAggr()
80
81options.method = 'exact';
82solver = NC(model,options);
83Pr_nc = solver.getProbSysAggr()
84
85solver = JMT(model,'samples',1e4,'seed',532733);
86Pr_jmt = solver.getProbSysAggr()