LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
statepr_sys_aggr_large.m
1clear node jobclass
2
3model = Network('model');
4
5node{1} = Queue(model, 'Queue1', SchedStrategy.PS);
6node{2} = Queue(model, 'Queue2', SchedStrategy.PS);
7node{3} = Queue(model, 'Queue3', SchedStrategy.PS);
8
9node{3}.setNumServers(3);
10
11N=[1,1,1,1];
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
61solver={};
62options = Solver.defaultOptions;
63options.verbose=1;
64%options.samples=1e5;
65
66n=[0,0,0,0;
67 0,0,0,0;
68 N(1),N(2),N(3),N(4)];
69for i=1:M
70 node{i}.setState(n(i,:));
71end
72state = model.getState;
73
74tic;
75solver = LINE.load('ctmc',model);
76Pr_ctmc = solver.getProbSysAggr()
77
78toc
79tic;
80solver = JMT(model,'seed',23000,'samples',1e5);
81Pr_jmt = solver.getProbSysAggr()
82
83toc
84%%
85tic;
86solver = NC(model,'seed',23000,'method','ls','samples',10000);
87Pr_nc = solver.getProbSysAggr()
88
89toc