LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
mqn_singleserver_fcfs.m
1clear node jobclass solver AvgTable
2
3% this is a difficult sparse LDMX model
4model = Network('model');
5
6M = 4;
7node{1} = Queue(model, 'Queue1', SchedStrategy.FCFS);
8node{2} = Queue(model, 'Queue2', SchedStrategy.FCFS);
9node{3} = Queue(model, 'Queue3', SchedStrategy.FCFS);
10node{4} = Queue(model, 'Queue4', SchedStrategy.FCFS); % only closed classes
11source = Source(model,'Source');
12sink = Sink(model,'Sink');
13
14jobclass{1} = ClosedClass(model, 'ClosedClass', 100, node{1}, 0);
15jobclass{2} = OpenClass(model, 'OpenClass', 0);
16
17for i=1:M
18 node{i}.setService(jobclass{1}, Exp(i));
19 node{i}.setService(jobclass{2}, Exp(sqrt(i)));
20end
21
22source.setArrival(jobclass{2}, APH.fitMeanAndSCV(3,64));
23
24M = model.getNumberOfStations();
25K = model.getNumberOfClasses();
26
27P = model.initRoutingMatrix;
28P{1,1} = zeros(M+1);
29P{1,1} = Network.serialRouting(node{1},node{2},node{3},node{4});
30P{1,2} = zeros(M+1);
31P{2,1} = zeros(M+1);
32P{2,2} = Network.serialRouting(source,node{1},node{2},node{3},sink);
33
34model.link(P);
35%%
36options = Solver.defaultOptions;
37options.keep=false;
38options.verbose=1;
39options.cutoff = 3;
40options.seed = 23000;
41options.samples = 2e4;
42optionssa = options; optionssa.cutoff = Inf;
43
44disp('This example shows the execution of the solver on a 2-class mixed model with 4 single server nodes.')
45% This part illustrates the execution of different solvers
46solver={};
47%solver{end+1} = CTMC(model,options); % CTMC is infinite on this model
48solver{end+1} = JMT(model,options);
49solver{end+1} = FLD(model,options);
50solver{end+1} = MVA(model,'lin');
51solver{end+1} = NC(model,options);
52solver{end+1} = DES(model,options);
53%solver{end+1} = MAM(model,options);
54for s=1:length(solver)
55 fprintf(1,'SOLVER: %s\n',solver{s}.getName());
56 AvgTable{s} = solver{s}.getAvgTable();
57 AvgTable{s}
58end