Задание на лабораторные работы, страница 10
Описание файла
Документ из архива "Задание на лабораторные работы", который расположен в категории "". Всё это находится в предмете "моделирование систем" из 8 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "моделирование систем" в общих файлах.
Онлайн просмотр документа "Задание на лабораторные работы"
Текст 10 страницы из документа "Задание на лабораторные работы"
Формат записи второго оператора QTABLE:
ttab4 qtable len2,6,20,31
В поле метки задается имя оператора QTABLE — ttab4. В поле <A> задается имя очереди — len2 (в программе очередь с именем len2 формируется блоком SEIZE под номером 90). В поле <B> задается верхняя граница первого частотного класса (в программе число 20). В поле <C> задается ширина частотного интервала кроме первого (в программе число 20). В поле <D> задается число частотных интервалов (в программе число 31, экспериментально подобранное для данного примера). Операнд поля <D> не может превышать число 8191.
В программе 3 ссылка на операторы QTABLE осуществляется блоками TABULATE под номерами 75 и 135. Блоки TABULATE инициализируют формирование таблицы очередей с помощью оператора описания Q-таблицы QTABLE.
Использование в модели операторов TABLE или QTABLE совместно с блоками TABULATE позволяет получить информацию о таблицах, в которые заносятся частотные распределения для построения гистограмм.
Результаты моделирования для примера 2 по программе 2 представлены как Файл стандартного отчета 2.
Файл стандартного отчета 2 |
GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 06-17-2001 19:07:01 page 1 START_TIME END_TIME BLOCKS FACILITIES STORAGES FREE_MEMORY 0 800 16 2 0 63264 LINE LOC BLOCK_TYPE ENTRY_COUNT CURRENT_COUNT RETRY 10 1 GENERATE 164 0 0 20 2 SPLIT 164 0 0 30 CHAN1 QUEUE 164 110 0 40 4 SEIZE 54 1 0 50 5 DEPART 53 0 0 60 6 ADVANCE 53 0 0 70 7 RELEASE 53 0 0 75 8 TABULATE 53 0 0 80 9 TRANSFER 53 0 0 90 CHAN2 QUEUE 164 116 0 100 11 SEIZE 48 0 0 110 12 DEPART 48 0 0 120 13 ADVANCE 48 1 0 130 14 RELEASE 47 0 0 135 15 TABULATE 47 0 0 200 EXIT TERMINATE 100 0 0 FACILITY ENTRIES UTIL. AVE._TIME AVAILABLE OWNER PEND INTER RETRY DELAY 1 54 0.993 14.72 1 106 0 0 0 110 2 48 0.993 16.56 1 97 0 0 0 116 QUEUE MAX CONT. ENTRIES ENTRIES(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY 1 111 111 164 1 56.28 274.55 276.24 0 LEN2 117 116 164 1 59.12 288.38 290.15 0 TABLE MEAN STD.DEV. RETRY RANGE FREQUENCY CUM.% TTAB1 139.89 81.18 0 - 5 1 1.89 5 - 35 5 11.32 35 - 65 7 24.53 65 - 95 5 33.96 95 - 125 5 43.40 125 - 155 7 56.60 155 - 185 5 66.04 185 - 215 5 75.47 215 - 245 7 88.68 245 - 275 6 100.00 TTAB2 146.17 85.32 0 - 6 1 2.13 6 - 36 5 12.77 36 - 66 5 23.40 66 - 96 4 31.91 96 - 126 5 42.55 GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 08-20-1999 19:07:01 page 2 TABLE MEAN STD.DEV. RETRY RANGE FREQUENCY CUM.% 126 - 156 6 55.32 156 - 186 4 63.83 186 - 216 4 72.34 216 - 246 6 85.11 246 - 276 5 95.74 276 - 306 2 100.00 XACT_GROUP GROUP_SIZE RETRY POSITION 0 0 |
В файле стандартного отчета поле TABLE определяет имя таблицы (первая таблица с именем ttab1, вторая таблица — ttab2). Поле MEAN определяет среднее взвешенное значение табулируемого аргумента (СЧА qt1, qt$len2 — время пребывания в очереди под номером 1 и с именем len2, соответственно) таблицы (для первой таблицы 139.89, для второй таблицы 146.17). Поле STD.DEV определяет взвешенное среднеквадратичное отклонение (для первой таблицы 81.18, для второй — 85.32). Взвешенное среднеквадратичное отклонение (S.D.) вычисляется по формуле:
где SOS — сумма квадратов значений аргументов, COUNT — число входов в таблицу, SUM — квадрат суммы значений аргументов таблицы.
Поле RETRY определяет количество транзактов, ожидающих выполнения специальных условий, зависящих от состояния таблицы (в примере специальных условий нет). Поле RANGE определяет верхний и нижний пределы частотных классов (ширина частотного интервала). Для первой таблицы ширина первого интервала равна 5, а для последующих интервалов 30. Для второй таблицы ширина первого интервала равна 6, а для остальных 30. Поле FREQUENCY определяет суммарную величину, которая формируется при попадании табулируемого аргумента (времени пребывания в очереди) в указанные границы, заданные полем RANGE. Поле CUM.% определяет величину частоты в процентах к общему количеству значений табулируемого аргумента.
Для табулированного аргумента таблиц — времени пребывания в очереди — последний частотный интервал должен превышать или быть равным величине поля AVE.TIME, относящегося к статистике очередей (QUEUE). Пометки page1 и page2 соответствуют данным, условно размещенным на первой и на второй страницах. Результаты моделирования для примера 3 по программе 3 представлены как Файл стандартного отчета 3.
Файл стандартного отчета 3 |
GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 06-17-2001 19:09:43 page 1 START_TIME END_TIME BLOCKS FACILITIES STORAGES FREE_MEMORY 0 800 16 2 0 63200 LINE LOC BLOCK_TYPE ENTRY_COUNT CURRENT_COUNT RETRY 10 1 GENERATE 164 0 0 20 2 SPLIT 164 0 0 30 CHAN1 QUEUE 164 110 0 40 4 SEIZE 54 1 0 50 5 DEPART 53 0 0 60 6 ADVANCE 53 0 0 70 7 RELEASE 53 0 0 75 8 TABULATE 53 0 0 80 9 TRANSFER 53 0 0 90 CHAN2 QUEUE 164 116 0 100 11 SEIZE 48 0 0 110 12 DEPART 48 0 0 120 13 ADVANCE 48 1 0 130 14 RELEASE 47 0 0 135 15 TABULATE 47 0 0 200 EXIT TERMINATE 100 0 0 FACILITY ENTRIES UTIL. AVE._TIME AVAILABLE OWNER PEND INTER RETRY DELAY 1 54 0.993 14.72 1 106 0 0 0 110 2 48 0.993 16.56 1 97 0 0 0 116 QUEUE MAX CONT. ENTRIES ENTRIES(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY 17 111 111 164 1 56.28 274.55 276.24 0 LEN2 117 116 164 1 59.12 288.38 290.15 0 TABLE MEAN STD.DEV. RETRY RANGE FREQUENCY CUM.% TTAB3 270.83 161.52 0 - 5 2 1.89 5 - 25 4 5.66 25 - 45 4 9.43 45 - 65 4 13.21 65 - 85 4 16.98 85 - 105 2 18.87 105 - 125 6 24.53 125 - 145 4 28.30 145 - 165 4 32.08 165 - 185 4 35.85 185 - 205 2 37.74 205 - 225 4 41.51 225 - 245 4 45.28 245 - 265 4 49.06 265 - 285 4 52.83 285 - 305 2 54.72 GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 06-17-2001 19:09:43 page 2 TABLE MEAN STD.DEV. RETRY RANGE FREQUENCY CUM.% 305 - 325 4 58.49 325 - 345 4 62.26 345 - 365 4 66.04 365 - 385 4 69.81 385 - 405 4 73.58 405 - 425 4 77.36 425 - 445 4 81.13 445 - 465 4 84.91 465 - 485 4 88.68 485 - 505 4 92.45 505 - 525 4 96.23 525 - 545 4 100.00 TTAB4 284.52 171.47 0 - 6 2 2.11 6 - 26 4 6.32 26 - 46 4 10.53 46 - 66 2 12.63 66 - 86 4 16.84 86 - 106 2 18.95 106 - 126 4 23.16 126 - 146 4 27.37 146 - 166 2 29.47 166 - 186 4 33.68 186 - 206 4 37.89 206 - 226 2 40.00 226 - 246 4 44.21 246 - 266 4 48.42 266 - 286 2 50.53 286 - 306 4 54.74 306 - 326 2 56.84 326 - 346 4 61.05 346 - 366 2 63.16 366 - 386 4 67.37 386 - 406 4 71.58 406 - 426 2 73.68 426 - 446 4 77.89 446 - 466 2 80.00 466 - 486 4 84.21 486 - 506 4 88.42 506 - 526 2 90.53 526 - 546 4 94.74 546 - 566 2 96.84 566 - 586 3 100.00 XACT_GROUP GROUP_SIZE RETRY POSITION 0 0 |
В файле стандартного отчета 3 для программы, в которой предусмотрен сбор статистики о распределении времени пребывания транзактов в очереди с помощью оператора QTABLE и блока TABULATE, выводимая информация имеет тот же вид и значения полей, что и для случая использования оператора TABLE. Поле QTABLE определяет имя Q-таблицы (для примера это TTAB3 и TTAB4).
Задание к примерам 2, 3:
-
Для программы 2 с помощью команды PLOT построить гистограмму распределения модельного времени (по стандартному числовому атрибуту С1).
-
Для программы 3 с помощью команды PLOT построить гистограмму распределения времени нахождения в очереди (по стандартному числовому атрибуту QTj).
-
Для программы 3 в операторе QTABLE изменить поля <B>, <C>, <D> в соответствии со следующими тройками чисел: {7, 25, 35}; {2, 15, 25}; {5, 20, 28}; {5, 20, 30}; {5, 20, 27}; {5, 20, 31}. Одновременно с помощью команды PLOT построить гистограмму распределения длительности очереди.
Лабораторная работа №7
Системы массового обслуживания
с экспоненциальными каналами обслуживания.
Оператор описания функций FUNCTION.
Блок выбора элементов SELECT. Оператор EQU
Цель работы: Изучение оператора FUNCTION описания непрерывных и дискретных функций, с помощью которых может быть решена задача поступления требований в систему и их обслуживание. Изучение работы блока SELECT и оператора EQU — оператора присвоения числовых значений именам, используемым в моделирующей программе.
Простейшими системами массового обслуживания являются системы типа М/М, когда входной поток требований является Пуассоновским, а обслуживание требований происходит по экспоненциальному закону. При этом следует заметить, что интервалы времени в Пуассоновском потоке распределены по экспоненциальному закону. В этой связи встает задача моделирования функциональной зависимости поступления требований в систему и их обслуживания по заданному закону. В системе GPSS/PC для этой цели применяется оператор описания функций FUNCTION. В системе GPSS/PC существует два типа вычислительных объектов: арифметические переменные и функции. В GPSS/PC значения функций — это часто используемые стандартные числовые атрибуты. Каждая функция связывает значение аргумента функции, которой представляет собой независимую переменную, со значениями зависимой переменной функции. В частности, для реализации экспоненциального распределения промежутков времени между поступлениями требований или их обслуживанием необходимо создать функциональную зависимость между величиной интервала времени t и значением функции экспоненциального распределения F(t). Эта зависимость реализуется следующим образом:
— функция экспоненциального распределения, — интенсивность потока. F(t) как вероятность монотонно изменяется от нуля до единицы, поэтому для получения выборки экспоненциально распределенных интервалов времени t можно использовать генератор равномерно распределенных случайных чисел из интервала (0, 1):
где выражение 1-Ri заменено на Ri, т.к. одно случайное число заменяется другим, Ri (0, 1).