Задание на лабораторные работы (1086521), страница 12
Текст из файла (страница 12)
DDF1 FUNCTION RN1,D18
Описание начинается с задания метки (здесь это DDF1). В поле <A> оператора задается аргумент функции — RN1, который выбран из тех соображений, что заданная функция изменяется в пределах от 0 до 1 и при этом значения функции являются случайными. RN1 — генератор случайных чисел от 0 до 1 системы GPSS/PC. В поле <B> оператора FUNCTION указан тип моделируемой функции и число пар точек, D18 — это значит, что описывается дискретная числовая функция в количестве 18 пар точек.
Формат записи таблицы TABLE:
Tab1 table QT1,0,2,80
Описание начинается с метки таблицы (применена метка под именем Tab1). В поле <A> оператора table задан стандартный числовой атрибут QT1 — среднее время пребывания сообщения в очереди (под номером 1), включая нулевые входы. В поле <B> задается верхний предел первого частотного интервала (принят0). В поле <C> задается ширина частотного интервала (задано 2). В поле <D> задается число частотных интервалов (задано 80). Следует отметить, что число частотных интервалов, ширина частотного интервала обычно определяются экспериментально по результатам нескольких прогонов программы.
Формат записи блока TABULATE:
70 TABULATE TAB1
Блок TABULATE под номером 70 табулирует текущее значение заданного аргумента таблицы с меткой TAB1.по-другому, в поле <A> блока TABULATE задается номер или имя таблицы, в которую будет табулироваться (заноситься) значение аргумента этой таблицы. Здесь в качестве аргумента принят стандартный числовой атрибут QT1 — время нахождения сообщения в очереди первой (в программе может быть несколько очередей).
Задание к примеру 2.
— Сравнить результаты моделирования по файлу стандартного отчета для случаев дискретной числовой функции (когда применяется D18) и непрерывной числовой функции, когда вместо D18 подставляется С18.
— Протабулировать таблицу по стандартному числовому аргументу QX1 — по среднему времени пребывания сообщения без нулевых входов. Проанализировать результаты моделирования и сравнить со случаем табулирования QT1.
Блок SELECT
Изучение блока SELECT в режиме минимального и (или) максимального элемента и присвоения номера выбранного элемента заданному параметру транзакта, который может быть использован для условной или безусловной адресации.
Формат блока SELECT в режиме минимального элемента:
SELECT min Nт,Nmin,Nmax,Ca
Формат блока SELECT в режиме максимального элемента:
SELECT max Nт,Nmin,Nmax,Ca
Значения операндов полей блока SELECT:
В поле <A> указывается номер параметра транзакта, в который записывается номер элемента в соответствии с указанным выбором (т.е. номер минимального элемента или максимального). В поле <B> указывается наименьший номер элемента просматриваемой группы элементов. В поле <C> указывается наибольший номер элемента просматриваемой группы элементов. Поле <D> в режимах max и min не заполняется. В поле <E> указывается имя просматриваемого множества элементов — обычно СЧА.
Разобрать нижеприведенную программу 3 и проанализировать файл стандартного отчета. В программе в качестве стандартного числового атрибута (СЧА) используется FR — коэффициент использования устройства. Операторы EQU присваивают именам числовые значения, которые используются в модели. Операторы INITIAL задают начальные значения числовых ячеек с указанием их номера (х1, х2, х3 и т.д.). Для заданной программы изменить коэффициенты использования устройств путем увеличения или уменьшения полей <A> блоков ADVANCE. Последовательно увеличивать коэффициент использования устройства с 1-го по 6-е. Отметить в файле стандартного отчета действия блоков SELECT в статистике блока SAVEVALUE.
Изменить номера устанавливаемых ячеек в операторах INITIAL. После моделирования программы изучить статистику блока SAVEVALUE.
Программа 2 | |
simulate ff1 equ 10 ff2 equ 11 ff3 equ 12 ff4 equ 13 ff5 equ 14 ff6 equ 15 INITIAL x1,1 frt100 equ x1 INITIAL x2,2 frt190 equ x2 10 generate 6,1 20 queue 10 30 seize 1 35 depart 10 40 advance 5 50 release 1 60 SELECT min 1,1,6,,fr 70 SELECT max 2,1,6,,fr 80 SAVEVALUE frt100,p1 90 SAVEVALUE frt190,p2 100 queue 11 110 zt2 seize 2 115 depart 11 120 advance 9,1 130 release 2 | 140 queue 12 150 zt3 seize 3 155 depart 12 160 advance 6 170 release 3 180 queue 13 190 zt4 seize 4 195 depart 13 200 advance 7 210 release 4 220 queue 14 230 zt5 seize 5 235 depart 14 240 advance 3 250 release 5 260 queue 15 270 zt6 seize 6 275 depart 15 280 advance 6 290 release 6 300 out terminate 1 start 500 ;end |
Разобрать нижеприведенную программу 4 и проанализировать файл стандартного отчета. В программе в качестве стандартного числового атрибута (СЧА) используется Q — длина очереди. Сравнить статистику очередей и результаты действия блоков SELECT по статистике блоков SAVEVALUE. Изменяя последовательно длину очередей (например, при уменьшении времени генерирования транзактов), проверить правильность работы блоков (по статистике блоков SAVEVALUE). Длительность очередей можно также изменять при назначении иных параметров поля <A> для блоков ADVANCE .
Программа 4 | |
simulate INITIAL x1,1 frt100 equ x1 INITIAL x2,2 frt190 equ x2 10 generate 6,1 20 split 1,zt5 30 queue 1 40 seize 1 45 depart 1 50 advance 13 60 release 1 70 SELECT min 1,1,6,,Qt 80 SELECT max 2,1,6,,Q 90 SAVEVALUE frt100,p1 100 SAVEVALUE frt190,p2 110 queue 2 120 zt2 seize 2 125 depart 2 130 advance 4,1 140 release 2 150 queue 3 | 160 zt3 seize 3 165 depart 3 170 advance 2 180 release 3 190 queue 4 200 zt4 seize 4 205 depart 4 210 advance 4 220 release 4 230 transfer ,out 240 zt5 queue 5 250 seize 5 255 depart 5 260 advance 9 270 release 5 280 queue 6 290 zt6 seize 6 295 depart 6 300 advance 2 310 release 6 320 out terminate 1 start 500 end |
Разобрать нижеприведенную программу 5 и проанализировать файл стандартного отчета. В программе в качестве стандартного числового атрибута (СЧА) могут использоваться: QT — среднее время пребывания сообщения в очереди (включая нулевые входы), QX — среднее время пребывания сообщения в очереди (без нулевых входов). Сравнить статистику очередей и результаты действия блоков SELECT по статистике блоков SAVEVALUE. Изменяя последовательно время пребывания транзактов в очереди (например, при уменьшении времени генерации транзактов), проверить правильность работы блоков (по статистике блоков SAVEVALUE). Время пребывания транзактов в очереди можно также изменять при назначении иных параметров поля <A> для блоков ADVANCE . Моделирование сначала провести с СЧА QT (как в приводимой программе), а затем с QX, который следует поставить в блоке SELECT вместо QT.
Программа 5 | |
simulate INITIAL x1,1 frt100 equ x1 INITIAL x2,2 frt190 equ x2 10 generate 6,1 20 split 1,zt5 30 SELECT min 1,1,5,,QT,out 40 SELECT max 2,1,5,,QT,out 50 SAVEVALUE frt100,p1 60 SAVEVALUE frt190,p2 70 queue 1 80 seize 1 85 depart 1 90 advance 1 100 release 1 110 queue 2 120 zt2 seize 2 125 depart 2 130 advance 9 140 release 2 | 150 queue 3 160 zt3 seize 3 165 depart 3 170 advance 17 180 release 3 190 queue 4 200 zt4 seize 4 205 depart 4 210 advance 4 220 release 4 230 transfer ,out 240 zt5 queue 5 250 seize 5 255 depart 5 260 advance 9 270 release 5 280 out terminate 1 start 500 end |
Задание.
-
Смоделировать процесс при другом количестве просматриваемых элементов, т.е. изменить значения в полях <B> и <C> блока SELECT. Проанализировать файл стандартного отчета.
Лабораторная работа №8
Системы массового обслуживания
с экспоненциальными каналами и ограниченной очередью.
Списки пользователя: блоки LINK, UNLINK
Цель работы: анализ систем массового обслуживания типа М/М/m/К с помощью имитационного моделирования. Изучение работы блоков LINK, UNLINK, связанных со списками пользователя системы GPSS/PC.
Системы типа М/М/m/К означают, что входной поток требований является Пуассоновский, обслуживание происходит по экспоненциальному закону, число каналов обслуживания с однофазной обработкой требований составляет m, допустимое число требований в системе составляет K, допустимая длина очереди равна К-m.