LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
renv_twostages_repairmen.m
1N = 1;
2M = 2;
3
4E = 2;
5envModel = Env('MyEnv');
6envName = {'Stage1', 'Stage2'};
7envType = {'UP', 'DOWN'};
8
9rate = zeros(M,E); rate(M,1:E)=(1:E); rate(1,1:E)=(E:-1:1);
10envSubModel = {renv_genqn(rate(:,1),N), renv_genqn(rate(:,2),N)};
11for e=1:E
12 envModel.addStage(envName{e}, envType{e}, envSubModel{e});
13end
14
15envRates = [0,1; 0.5,0.5];
16for e=1:E
17 for h=1:E
18 if envRates(e,h)>0
19 envModel.addTransition(envName{e}, envName{h}, Exp(envRates(e,h)));
20 end
21 end
22end
23
24%
25fprintf(1,'The metasolver considers an environment with 2 stages and a queueing network with 2 stations.\n')
26fprintf(1,'Every time the stage changes, the queueing network will modify the service rates of the stations.\n')
27
28%options.iter_tol = 1e-5;
29options = Solver.defaultOptions;
30options.timespan = [0,Inf];
31options.iter_max = 100;
32options.iter_tol = 0.01;
33options.method = 'default';
34options.verbose = true;
35
36envModel.getStageTable
37
38sfoptions = FLD.defaultOptions;
39sfoptions.timespan = [0,1e3];
40sfoptions.verbose = false;
41envSolver = BLN(envModel,@(model) FLD(model, sfoptions),options);
42[QN,UN,TN] = envSolver.getAvg();
43AvgTable = envSolver.getAvgTable()
44%%
45%scoptions = CTMC.defaultOptions;
46%scoptions.timespan = [0,1e3];
47%scoptions.verbose = false;
48%envSolver = BLN(envModel,@(model) CTMC(model, scoptions),options);
49%[QNc,UNc,TNc] = envSolver.getAvg();
50%AvgTableC = envSolver.getAvgTable()
51