Файл: Основные задания к самостоятельным работам в системе gpss.docx

ВУЗ: Не указан

Категория: Решение задач

Дисциплина: Не указана

Добавлен: 09.11.2023

Просмотров: 79

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


QUEUE 4 ;увеличиваем длину очереди

PREEMPT OKU1,PR,obsl,,RE ;занимаем прибор, прерванная заявка возвращается заново на обслуживание

DEPART 4 ;уменьшаем длину очереди

ADVANCE (Exponential (5,0,3)) ;обслуживание

RETURN OKU1;закончили обслуживание

TERMINATE

GENERATE 100000 ;время моделирования

TERMINATE 1

START 1
Файл REPORT:
START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100000.000 23 1 0
NAME VALUE

OBSL 9.000

OKU1 10000.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 7658 0 0

2 ASSIGN 7658 0 0

3 TRANSFER 7658 0 0

4 GENERATE 7599 0 0

5 ASSIGN 7599 0 0

6 TRANSFER 7599 0 0

7 GENERATE 7601 0 0

8 ASSIGN 7601 0 0

OBSL 9 QUEUE 28025 6 0

10 SEIZE 28019 0 0

11 DEPART 28019 0 0

12 ADVANCE 28019 1 0

13 RELEASE 22851 0 0

14 TERMINATE 22851 0 0

15 GENERATE 7536 0 0

16 QUEUE 7536 0 0

17 PREEMPT 7536 0 0

18 DEPART 7536 0 0

19 ADVANCE 7536 0 0

20 RETURN 7536 0 0

21 TERMINATE 7536 0 0

22 GENERATE 1 0 0

23 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

OKU1 35555 0.906 2.549 1 30383 0 0 0 6

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

1 72 5 9337 691 8.550 91.576 98.895 0

2 15 1 9365 720 1.176 12.558 13.603 0

3 9 0 9323 710 0.461 4.949 5.357 0

4 5 0 7536 5813 0.061 0.813 3.557 0

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

30397 20 100003.413 30397 0 15

30398 5 100004.699 30398 0 4

30383 10 100005.477 30383 12 13 1 3.000

30396 10 100013.012 30396 0 7

30399 0 100029.933 30399 0 1

30400 0 200000.000 30400 0 22

Как видим, наличие абсолютного приоритета позволяет заявкам соответствующего потока обслуживаться практически без ожидания: средняя очередь ожидания заявок этого типа составляет 0,061 и появляется она только тогда, когда в момент появления заявки этого потока прибор обслуживания занят предыдущей заявкой этого же потока.

Для остальных потоков заявок с уменьшением уровня их приоритета происходит увеличение длины очереди ожидания и времени ожидания начала обслуживания. И если для двух более приоритетных потоков эти характеристики достаточно невелики, то заявки потока без приоритета ожидают обслуживания более девяноста единиц времени.

2. Задание для освоения темы: Построение имитационных моделей для схем с ограничением обслуживания потока заявок (применение блоков GATE, TEST)

Построить и исследовать работу 4 типов схем: 2 варианта для одноканальных схем – без очереди (с отказом) и с ограничением длины очереди, и 2 варианта для многоканальных схем без очереди (с отказом) и с ограничением длины очереди. Исходные значения формирования потока заявок и их обслуживания задавать самостоятельно, обосновав выбор этих значений для наглядной иллюстрации работы схем таких СМО.

1. Одноканальная СМО без очереди

Схема СМО:



Программа:

SIMULATE

GENERATE (Exponential (1,0,10)) ;поступление заявок

GATE NU OKU1,otkaz ;проверка на доступность прибора

SEIZE OKU1 ;занимаем прибор

ADVANCE (Exponential (2,0,5)) ;обслуживание

RELEASE OKU1 ;завершение обслуживания

TERMINATE ;уходим после обслуживания

otkaz TERMINATE ;уходим после отказа

GENERATE 100000 ;время моделирования

TERMINATE 1

START 1
Файл REPORT:
START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100000.000 9 1 0

NAME VALUE

OKU1 10000.000

OTKAZ 7.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 9879 0 0

2 GATE 9879 0 0

3 SEIZE 6530 0 0

4 ADVANCE 6530 1 0

5 RELEASE 6529 0 0

6 TERMINATE 6529 0 0

OTKAZ 7 TERMINATE 3349 0 0

8 GENERATE 1 0 0

9 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

OKU1 6530 0.333 5.107 1 9880 0 0 0 0

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

9881 0 100002.929 9881 0 1

9880 0 100003.849 9880 4 5

9882 0 200000.000 9882 0 8
Для проверки доступности устройства удобно использовать блок GATE в режиме альтернативного выхода – если прибор обслуживания занят в момент поступления заявки, то заявка немедленно переправляется на соответствующую метку модели и удаляется из системы без обслуживания.
2. Одноканальная СМО с ограниченной очередью

Схема СМО:



Программа:

SIMULATE

GENERATE (Exponential (1,0,10)) ;поступление заявок

TEST LE Q$OCH1,3,otkaz ;ограничим очередь 3-мя местами

QUEUE OCH1 ;стали в очередь

SEIZE OKU1 ;занимаем прибор

DEPART OCH1 ;ушли из очереди

ADVANCE (Exponential (2,0,5)) ;обслуживание



RELEASE OKU1 ;завершение обслуживания

TERMINATE ;уходим после обслуживания

otkaz TERMINATE ;уходим после отказа

GENERATE 100000 ;время моделирования

TERMINATE 1

START 1
Файл REPORT:

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100000.000 11 1 0
NAME VALUE

OCH1 10000.000

OKU1 10001.000

OTKAZ 9.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 9879 0 0

2 TEST 9879 0 0

3 QUEUE 9712 0 0

4 SEIZE 9712 0 0

5 DEPART 9712 0 0

6 ADVANCE 9712 0 0

7 RELEASE 9712 0 0

8 TERMINATE 9712 0 0

OTKAZ 9 TERMINATE 167 0 0

10 GENERATE 1 0 0

11 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

OKU1 9712 0.492 5.068 1 0 0 0 0 0
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH1 4 0 9712 4957 0.426 4.382 8.951 0
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

9881 0 100002.929 9881 0 1

9882 0 200000.000 9882 0 10
Для проверки длины очереди блок GATE не подходит, т.к. в нем не предусмотрена работа с очередями, поэтому в этом случае мы используем блок TEST, который определяет текущую длину очереди, и если все места в ней заняты, то заявка не поступает в обслуживание, а удаляется из системы. Можно также отметить, как введение очереди положительно сказалось на качество обслуживания: если при ее отсутствии примерно треть заявок получала отказ, то теперь из почти десяти тысяч заявок только 167 заявка получила отказ.

3. Многоканальная СМО без очереди

Схема СМО:



Программа:

MKU1 STORAGE 2 ;число каналов

SIMULATE

GENERATE (Exponential (1,0,5)) ;поступление заявок

GATE SNF MKU1,otkaz ;проверка на наличие свободных каналов

ENTER MKU1 ;занимаем канал

ADVANCE (Exponential (2,0,5)) ;обслуживание

LEAVE MKU1 ;освобождаем канал

TERMINATE ;уходим после обслуживания

otkaz TERMINATE ;уходим после отказа

GENERATE 100000 ;время моделирования

TERMINATE 1

START 1
Файл REPORT:
START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100000.000 9 0 1
NAME VALUE

MKU1 10000.000

OTKAZ 7.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 19748 0 0

2 GATE 19748 0 0

3 ENTER 15764 0 0

4 ADVANCE 15764 0 0

5 LEAVE 15764 0 0

6 TERMINATE 15764 0 0

OTKAZ 7 TERMINATE 3984 0 0

8 GENERATE 1 0 0

9 TERMINATE 1 0 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

MKU1 2 2 0 2 15764 1 0.793 0.396 0 0
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

19750 0 100002.195 19750 0 1

19751 0 200000.000 19751 0 8
Отмечаем, что при отсутствии очереди ожидания примерно каждая пятая заявка получает отказ в обслуживании.

4. Многоканальная СМО с ограниченной очередью

Схема СМО:



Программа:
MKU1 STORAGE 2 ;число каналов


SIMULATE

GENERATE (Exponential (1,0,5)) ;поступление заявок

TEST LE Q$OCH1,3,otkaz ;ограничим очередь 3-ю местами

QUEUE OCH1 ;стали в очередь

ENTER MKU1 ;занимаем канал

DEPART OCH1 ;ушли из очереди

ADVANCE (Exponential (2,0,5)) ;обслуживание

LEAVE MKU1 ;освобождаем канал

TERMINATE ;уходим после обслуживания

otkaz TERMINATE ;уходим после отказа

GENERATE 100000 ;время моделирования

TERMINATE 1

START 1
Файл REPORT:
START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100000.000 11 0 1

NAME VALUE

MKU1 10000.000

OCH1 10001.000

OTKAZ 9.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 19748 0 0

2 TEST 19748 0 0

3 QUEUE 19604 0 0

4 ENTER 19604 0 0

5 DEPART 19604 0 0

6 ADVANCE 19604 2 0

7 LEAVE 19602 0 0

8 TERMINATE 19602 0 0

OTKAZ 9 TERMINATE 144 0 0

10 GENERATE 1 0 0

11 TERMINATE 1 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH1 4 0 19604 13380 0.263 1.343 4.230 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

MKU1 2 0 0 2 19604 1 0.983 0.491 0 0

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

19749 0 100000.013 19749 6 7

19750 0 100002.195 19750 0 1

19742 0 100013.315 19742 6 7

19751 0 200000.000 19751 0 10
Как видим, уже при трех местах в очереди отказ в обслуживании получают минимальное число заявок – из почти двадцати тысяч заявок, отказ в обслуживании получили всего 144 заявки.
3. Задания для освоения темы: Построение и исследование моделей схем СМО с разветвлением процессов по различным условиям.

ЗАДАНИЕ 3.1. Блок TRANSFER: режим разветвления потока на 2 направления. По заданной схеме – на рисунке построить программу и, запустив её, оценить результаты в отчёте, особо обратив внимание на разветвление потока на 3 направления и оценив погрешность реализации заданных вероятностей. Попытайтесь найти зависимость погрешности реализации этого разветвления от времени моделирования



Модель системы:
MKU STORAGE 3; число каналов обслуживания

GENERATE 300,200,,,1 ;заявки поступают в систему с приоритетом

QUEUE OCH1 ;становимся в очередь

SEIZE OKU1 ;занимаем ОКУ1

DEPART OCH1 ;покидаем очередь

obr1 ADVANCE 200,100 ;обработка

RELEASE OKU1 ;освобождаем ОКУ1

nxt TRANSFER 0.8,,nxtTR ;в ОКУ2 вероятность перехода 1-0.8=0.2

prb2 QUEUE OCH2 ;становимся в очередь

SEIZE OKU2 ;занимаем ОКУ2

DEPART OCH2 ;покидам очередь

ADVANCE 700,400 ;обработка

RELEASE OKU2 ;освобождаем канал

TERMINATE ;после ОКУ - выход из системы

nxtTR TRANSFER 0.4375,,prb1 ;после ОКУ1 вероятность выхода из системы 0.8*0.4375=0.35

prb3 QUEUE OCH3 ;становимся в очередь перед МКУ

ENTER MKU ;занимаем один канал

DEPART OCH3 ;покидам очередь

ADVANCE 600,300 ;обработка


LEAVE MKU ;освобождаем один канал

PRIORITY 0 ;удаляем приоритет

QUEUE OCH4 ;вторая очередь (без приоритета) перед ОКУ1

SEIZE OKU1 ;занимаем ОКУ1

DEPART OCH4 ;покидам очередь

TRANSFER ,obr1 ;переход к блоку обработки на ОКУ1

TERMINATE ;удаление из системы

prb1 TERMINATE ;удаление из системы

GENERATE 100000 ;задаем время моделирования

SAVEVALUE Prob1,(N$prb1/N$nxt) ;вычисляем вероятности

SAVEVALUE Prob2,(N$prb2/N$nxt)

SAVEVALUE Prob3,(N$prb3/N$nxt)

TERMINATE 1

START 1
Файл REPORT:
START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100000.000 31 2 1

NAME VALUE

MKU 10000.000

NXT 7.000

NXTTR 14.000

OBR1 5.000

OCH1 10001.000

OCH2 10005.000

OCH3 10003.000

OCH4 10004.000

OKU1 10002.000

OKU2 10006.000

PRB1 26.000

PRB2 8.000

PRB3 15.000

PROB1 10007.000

PROB2 10008.000

PROB3 10009.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 328 0 0

2 QUEUE 328 0 0

3 SEIZE 328 0 0

4 DEPART 328 0 0

OBR1 5 ADVANCE 489 1 0

6 RELEASE 488 0 0

NXT 7 TRANSFER 488 0 0

PRB2 8 QUEUE 106 0 0

9 SEIZE 106 0 0

10 DEPART 106 0 0

11 ADVANCE 106 1 0

12 RELEASE 105 0 0

13 TERMINATE 105 0 0

NXTTR 14 TRANSFER 382 0 0

PRB3 15 QUEUE 212 0 0

16 ENTER 212 0 0

17 DEPART 212 0 0

18 ADVANCE 212 1 0

19 LEAVE 211 0 0

20 PRIORITY 211 0 0

21 QUEUE 211 50 0

22 SEIZE 161 0 0

23 DEPART 161 0 0

24 TRANSFER 161 0 0

25 TERMINATE 0 0 0

PRB1 26 TERMINATE 170 0 0

27 GENERATE 1 0 0

28 SAVEVALUE 1 0 0

29 SAVEVALUE 1 0 0

30 SAVEVALUE 1 0 0

31 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

OKU1 489 0.989 202.304 1 329 0 0 0 50

OKU2 106 0.677 638.948 1 326 0 0 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH1 2 0 328 5 0.434 132.281 134.329 0

OCH3 2 0 212 199 0.016 7.580 123.607 0

OCH4 50 50 211 1 16.689 7909.702 7947.367 0

OCH2 6 0 106 39 0.853 804.695 1273.099 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

MKU 3 2 0 3 212 1 1.268 0.423 0 0

SAVEVALUE RETRY VALUE

PROB1 0 0.348

PROB2 0 0.217

PROB3 0 0.434

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

326 1 100143.752 326 11 12

329 1 100188.254 329 5 6

330 1 100289.851 330 0 1

212 0 100385.855 212 18 19

331 0 200000.000 331 0 27
Сравнивая полученные вероятности переходов с заданными, отмечают незначительное расхождение с заявленными: вместо переходов с вероятностями 0,35, 0,2 и 0,45 в результате моделирования получен вероятности 0,348, 0,217 и 0,434.

Также можно отметить, что что заявки, возвращающиеся на повторную обработку в ОКУ1, вынуждены очень долго ждать в очереди ожидания – ее средняя длина составила по итогам моделирования 16,689 заявки при среднем времени ожидания начала обслуживания 7909,702 ед. времени, что говорит о том, что ОКУ1 плохо не справляется с обработкой поступающих в него заявок. Все остальные обрабатывающие устройства справляются с поступающим потоком заявок – значительные очереди больше нигде в системе не образуются, а загрузки приборов обслуживания имеют приемлемые значения (0,423 нагрузки на один канал в МКУ и 0,677 нагрузки на ОКУ2).

Проведем несколько экспериментов с различным временем моделирования с целью выявления зависимость погрешности реализации разветвлений от времени моделирования