УТС 6 семестр / ПР4 / ПР4 вар 11 Моделирование многофазных систем массового обслуживания в системе GPSS
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра АПУ
отчет
по практической работе №4
по дисциплине «Программирование систем реального времени»
Тема: Моделирование многофазных систем массового обслуживания в системе GPSS.
Вариант № 11
Студент гр. 8391 |
|
Маликов А.А. |
|
|
|
|
|
|
Преподаватель |
|
Писарев А.С. |
Санкт-Петербург
2021
Цель работы
Практически освоить методы моделирования двухфазных и трехфазных систем массового обслуживания в программной среде GPSS/PC
Вариант
Увеличить интенсивность входного потока на 11.
Выполнение практической работы
Входной поток соответствует пуассоновскому закону (λ=1.7), а обслуживание – экспоненциальному закону (µ=0.67+11)
В результате работы программы MATLAB получили следующие данные, заменив R1 и R2 на R11 и R12, в соответствии с вариантом.
puas function RN11,C50 0,0/0.28823,0.2/0.493383,0.4/0.639405,0.6/ 0.743339,0.8/0.817316,1/0.869971,1.2/0.907449,1.4/0.934125,1.6/ 0.953112,1.8/0.966627,2/0.976246,2.2/0.983093,2.4/0.987966,2.6/ 0.991434,2.8/0.993903,3/0.995661,3.2/0.996911,3.4/0.997802,3.6/ 0.998435,3.8/0.998886,4/0.999207,4.2/0.999436,4.4/0.999598,4.6/ 0.999714,4.8/0.999797,5/0.999855,5.2/0.999897,5.4/0.999927,5.6/ 0.999948,5.8/0.999963,6/0.999974,6.2/0.999981,6.4/0.999987,6.6/ 0.99999,6.8/0.999993,7/0.999995,7.2/0.999997,7.4/0.999998,7.6/ 0.999998,7.8/0.999999,8/0.999999,8.2/0.999999,8.4/1,8.6/ 1,8.8/1,9/1,9.2/1,9.4/1,9.6/ 1,9.8/ ;---------------------------------— expM function RN12,C50 0,0/0.986885,0.2/0.999828,0.4/0.999998,0.6/ 1,0.8/1,1/1,1.2/1,1.4/1,1.6/ 1,1.8/1,2/1,2.2/1,2.4/1,2.6/ 1,2.8/1,3/1,3.2/1,3.4/1,3.6/ 1,3.8/1,4/1,4.2/1,4.4/1,4.6/ 1,4.8/1,5/1,5.2/1,5.4/1,5.6/ 1,5.8/1,6/1,6.2/1,6.4/1,6.6/ 1,6.8/1,7/1,7.2/1,7.4/1,7.6/ 1,7.8/1,8/1,8.2/1,8.4/1,8.6/ 1,8.8/1,9/1,9.2/1,9.4/1,9.6/ 1,9.8/
Результат выполнения программы в GPSS WORLD. Код программы приведен в приложении 2.
GPSS World Simulation Report - Untitled Model 2.1.1
Wednesday, April 14, 2021 01:51:40
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 321.390 30 2 0
NAME VALUE
EXIT0 10008.000
EXITNOT 29.000
EXPM 10001.000
FULL 10004.000
MET1 6.000
MET2 8.000
MET3 10.000
MET4 14.000
PUAS 10000.000
P_00 10005.000
P_01 10006.000
P_10 10007.000
P_11B1 UNSPECIFIED
TAB1 10002.000
TAB2 10003.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 589 0 0
2 SAVEVALUE 589 0 0
3 TEST 589 0 0
4 TEST 500 0 0
5 SAVEVALUE 412 0 0
MET1 6 TEST 589 0 0
7 SAVEVALUE 500 0 0
MET2 8 TEST 589 0 0
9 SAVEVALUE 497 0 0
MET3 10 TEST 589 0 0
11 TEST 89 0 0
12 TEST 4 0 0
13 SAVEVALUE 0 0 0
MET4 14 ASSIGN 589 0 0
15 GATE 589 0 0
16 SEIZE 500 0 0
17 ADVANCE 500 0 0
18 RELEASE 500 0 0
19 MARK 500 0 0
20 QUEUE 500 0 0
21 GATE 500 0 0
22 DEPART 500 0 0
23 TABULATE 500 0 0
24 SEIZE 500 0 0
25 ADVANCE 500 0 0
26 RELEASE 500 0 0
27 TABULATE 500 0 0
28 TERMINATE 500 0 0
EXITNOT 29 SAVEVALUE 89 0 0
30 TERMINATE 89 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
1 500 0.170 0.109 1 0 0 0 0 0
2 500 0.161 0.104 1 0 0 0 0 0
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
2 1 0 500 472 0.005 0.003 0.056 0
TABLE MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%
TAB1 0.216 0.092 0
0.000 - 5.000 500 100.00
TAB2 0.003 0.016 0
_ - 0.000 472 94.40
0.000 - 5.000 28 100.00
SAVEVALUE RETRY VALUE
FULL 0 589.000
P_00 0 412.000
P_01 0 500.000
P_10 0 497.000
EXIT0 0 89.000
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
590 0 322.033 590 0 1
Расчет операционных характеристик двухфазной системы:
Расчет вероятности отказа в обслуживании:
Pomkg = 89/589 = 0.15
Относительная пропускная способность и вероятность того, что вновь поступившее требование будет принято на обслуживание 1-й фазой:
Qg = Pflg = 1 - Pomkg = 1 – 0.15 = 0.85
Расчет эффективной частоты:
Lefg = λ*Pf1g = 1.7*0.85= 1.44
Абсолютная пропускная способность двухфазной системы:
Abg = Lefg*Qg = 1.44*0.85= 1.224
Полное время пребывания требования в системе определяется как среднее значение таблицы с именем tab1:
Tsg = 0.216
Среднее время блокировки 1-й фазы определяется как среднее значение таблицы с именем tab2:
Tdg = 0.003
Среднее время обработки одного требования в двухфазной системе можно определить двумя путями: как сумму значений полей AVE._TIME для устройств 1 и 2 (FACILITY) и как разность между Tsg и Tdg:
Tcpg = 0.109 + 0.104 = 0.213; (0.216 – 0.003 = 0.213)
Среднее число требований в двухфазной системе определим по формуле Литтла:
Ncpg = Lefg*Tsg = 1.44*0.216 = 0.31
Финальные (стационарные) вероятности определяются как частное от деления числа требований, отвечающим 11 заданным условиям (успешное событие), к общему числу требований, поступивших в систему.
Р00 = 412/589 = 0.6995;
Р01 = 500/589 = 0.8489;
Р10 = 497/589 = 0.8438;
P11 + Рb1 = 0/589 = 0
Проведем контрольную проверку. Для этого сложим вероятности (которые являются несовместными):
0.6995 + 0.8489 + 0.8438 + 0 = 2.39
Поскольку полученный результат отличается от единицы, можно сделать вывод, что расчеты произведены неточно.
Вывод
В ходе лабораторной работы были освоены методы моделирования двухфазных систем массового обслуживания в программной среде GPSS WORLD и получены операционные характеристики. Сравнение их с характеристиками, полуженными в 3 практической работе приведено в таблице 1
Таблица 1
Операционные характеристики |
GPSS WORLD |
MATLAB |
Расчет вероятности отказа в обслуживании |
0.15 |
0.13 |
Относительная пропускная способность |
0.85 |
0.87 |
Эффективная частота |
1.44 |
1.47 |
Абсолютная пропускная способность |
1.224 |
1.27 |
Полное время пребывания требования в системе |
0.216 |
0.18 |
Среднее время блокировки 1-й фазы |
0.003 |
0.005 |
Среднее время обработки одного требования |
0.213 |
0.175 |
Среднее число требований в двухфазной системе |
0.31 |
0.26 |
Операционные характеристики в данной практике практически не отличаются от характеристик, полученных в MATLAB.
Сравнение финальных вероятностных характеристик приведено в таблице 2.
Таблица 2
Финальные вероятностные характеристики |
GPSS WORLD |
MATLAB |
Р00 |
0.6995 |
0.755755 |
Р01 |
0.8489 |
0.110096 |
Р10 |
0.8438 |
0.118112 |
P11+Pb1 |
0 |
0.016036 |
Из таблицы 2 следует, что вероятностные характеристики, полученные в 3 практической работе, намного точнее, чем характеристики, полученные в GPSS.
Примечание 1
simulate
puas function RN11,C50 0,0/0.28823,0.2/0.493383,0.4/0.639405,0.6/ 0.743339,0.8/0.817316,1/0.869971,1.2/0.907449,1.4/0.934125,1.6/ 0.953112,1.8/0.966627,2/0.976246,2.2/0.983093,2.4/0.987966,2.6/ 0.991434,2.8/0.993903,3/0.995661,3.2/0.996911,3.4/0.997802,3.6/ 0.998435,3.8/0.998886,4/0.999207,4.2/0.999436,4.4/0.999598,4.6/ 0.999714,4.8/0.999797,5/0.999855,5.2/0.999897,5.4/0.999927,5.6/ 0.999948,5.8/0.999963,6/0.999974,6.2/0.999981,6.4/0.999987,6.6/ 0.99999,6.8/0.999993,7/0.999995,7.2/0.999997,7.4/0.999998,7.6/ 0.999998,7.8/0.999999,8/0.999999,8.2/0.999999,8.4/1,8.6/ 1,8.8/1,9/1,9.2/1,9.4/1,9.6/ 1,9.8/ ;---------------------------------— expM function RN12,C50 0,0/0.986885,0.2/0.999828,0.4/0.999998,0.6/ 1,0.8/1,1/1,1.2/1,1.4/1,1.6/ 1,1.8/1,2/1,2.2/1,2.4/1,2.6/ 1,2.8/1,3/1,3.2/1,3.4/1,3.6/ 1,3.8/1,4/1,4.2/1,4.4/1,4.6/ 1,4.8/1,5/1,5.2/1,5.4/1,5.6/ 1,5.8/1,6/1,6.2/1,6.4/1,6.6/ 1,6.8/1,7/1,7.2/1,7.4/1,7.6/ 1,7.8/1,8/1,8.2/1,8.4/1,8.6/ 1,8.8/1,9/1,9.2/1,9.4/1,9.6/ 1,9.8/
tab1 table m1,0,5,12
tab2 table mp2,0,5,10
******** Basic Program *******
5 generate fn$puas
10 savevalue FULL+,1
;--- Probability P00 -----------
15 test E f1,0,met1
20 test E f2,0,met1
25 savevalue P_00+,1
;--- Probability P01 -----------
30 met1 test E f1,0,met2
35 savevalue P_01+,1
;--- Probability P10 -----------
40 met2 test E f2,0,met3;
45 savevalue P_10+,1
;--- Probability P11+Pb1---------
50 met3 test NE f1,0,met4
55 test NE f2,0,met4
60 test NE q2,0,met4
65 savevalue P_11b1+,1
70 met4 assign 2,1
75 gate NU 1,exitNOT
;---------- 1st phase ---------------
80 seize 1
85 advance fn$expM
90 release 1
95 mark 2
;---------- Delay ------------------
100 queue 2
105 gate NU 2
110 depart 2
120 tabulate tab2
;---------- 2nd phase ---------------
125 seize 2
130 advance fn$expM
135 release 2
;------------------------------------
140 tabulate tab1
145 terminate 1
150 exitNOT savevalue exit0+,1
155 terminate
start 500
;end