2.3. Блоки для сбора статистических данных

Два последних примера в предыдущем параграфе представляют со-

бой законченные модели одноканальной и многоканальной СМО с ожида-

нием. Однако такие модели разрабатываются обычно для исследования

различных характеристик, связанных с ожиданием заявок в очереди:

длины очереди, времени ожидания и т.п., а в приведенных примерах

очередь транзактов образуется в списке текущих событий и недоступна

исследователю. Для регистрации статистической информации о процессе

ожидания транзактов в модели должны присутствовать статистические

объекты: очереди или таблицы.

Объекты типа очередь создаются в модели путем использования

блоков - регистраторов очередей: QUEUE (стать в очередь) и DEPART

(уйти из очереди), имеющих следующий формат:

 имя 0QUEUE A,B

 имя DEPART A,B

В поле A указывается номер или имя очереди, а в поле B - число

единиц, на которое текущая длина очереди увеличивается при входе

транзакта в блок QUEUE или уменьшается при входе транзакта в блок

DEPART. Обычно поле B пусто, и в этом случае его значение по умол-

чанию принимается равным 1.

Для сбора статистики о транзактах, заблокированных перед ка-

ким-либо блоком модели, блоки QUEUE и DEPART помещаются перед и

после этого блока соответственно. При прохождении транзактов через

блоки QUEUE и DEPART соответствующим образом изменяются следующие

СЧА очередей: Q - текущая длина очереди; QM - максимальная длина

очереди; QA - целая часть средней длины очереди; QC - общее число

транзактов, вошедших в очередь; QZ - число транзактов, прошедших

через очередь без ожидания (число "нулевых" входов); QT - целая

часть среднего времени ожидания с учетом "нулевых" входов; QX - це-

лая часть среднего времени ожидания без учета "нулевых" входов.

Дополним приведенную на рис. 7 модель одноканальной СМО блока-

ми QUEUE и DEPART (рис. 9). Теперь транзакты, заблокированные перед

блоком SEIZE из-за занятости устройства SYSTEM, находятся в блоке

QUEUE, внося свой вклад в статистику о времени ожидания, накаплива-

емую в статистическом объекте типа "очередь" с именем LINE. При

освобождении устройства первый из заблокированных транзактов войдет

в блок SEIZE и одновременно в блок DEPART, прекращая накопление

статистики об ожидании этого транзакта.

EXP FUNCTION RN1,C24

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

.7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

.92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

.99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

GENERATE 100,FN$EXP

QUEUE LINE

SEIZE SYSTEM

DEPART LINE

ADVANCE 80,FN$EXP

RELEASE SYSTEM

TERMINATE 1

Рис. 9

Очень часто исследователя интересует не только среднее значе-

ние времени ожидания в очереди, но и дисперсия этого времени, а

также статистическое распределение выборки времени ожидания,

представляемое обычно графически в виде гистограммы. Имея такое

распределение, можно оценить вероятность того, что время ожидания

превысит или не превысит некоторое заданное значение. Для сбора и

обработки данных о выборочном распределении времени ожидания в оче-

реди служат статистические объекты типа Q-таблица.

Для создания в модели такой таблицы она должна быть предвари-

тельно определена с помощью оператора определения QTABLE (Q-табли-

ца), имеющего следующий формат:

 имя   QTABLE A,B,C,D

Здесь имя - имя таблицы, используемое для ссылок на нее; A - номер

или имя очереди, распределение времени ожидания в которой необходи-

мо получить; B - верхняя граница первого частотного интервала таб-

лицы; C - ширина частотных интервалов; D - количество частотных ин-

тервалов.

Диапазон всевозможных значений времени ожидания в очереди,

указанной в поле A, разбивается на ряд частотных интервалов, коли-

чество которых указано в поле D. Первый из этих интервалов имеет

ширину от минус бесконечности до величины, указанной в поле B,

включительно. Второй интервал включает значения, большие, чем вели-

чина первой границы в поле B, но меньшие или равные B+C, и т.д. Все

промежуточные интервалы имеют одинаковую ширину, указанную в поле

C. Наконец, последний интервал включает все значения, большие, чем

последняя граница. Значения операндов B, C и D должны задаваться

целыми константами. Операнд B может быть неположительным, хотя для

Q-таблицы это не имеет смысла, так как время не может быть отрица-

тельным. Операнды C и D должны быть строго положительными.

При прохождении транзакта через блоки QUEUE и DEPART его время

ожидания фиксируется, и к счетчику частотного интервала таблицы, в

который попало это время, добавляется 1. Одновременно в таблице на-

капливается информация для вычисления среднего значения и средне-

квадратического отклонения (корня из дисперсии) времени ожидания.

По окончании моделирования среднее значение и среднеквадратическое

отклонение времени ожидания, а также счетчики попаданий в различные

частотные интервалы выводятся в стандартный отчет GPSS/PC.

Таблицы, как и другие объекты GPSS/PC, имеют СЧА: ТС - общее

число транзактов, вошедших в очередь, связанную с таблицей; TB -

целая часть среднего времени ожидания в очереди; TD - целая часть

среднеквадратического отклонения времени ожидания в очереди.

Дополним модель из примера на рис. 9 оператором QTABLE для по-

лучения распределения времени ожидания в очереди с именем LINE

(рис. 10).

 WTIME QTABLE LINE,50,50,10

EXP FUNCTION RN1,C24

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

.7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

.92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

.99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

GENERATE 100,FN$EXP

QUEUE LINE

SEIZE SYSTEM

DEPART LINE

ADVANCE 80,FN$EXP

RELEASE SYSTEM

TERMINATE 1

Рис. 10

Оператор определения таблицы с именем WTIME разбивает ось вре-

мени на 10 частотных интервалов. Первый интервал включает значения

от 0 до 50, второй - от 50 до 100, третий - от 100 до 150 и т.д.

Последний, десятый, интервал включает значения, превышающие 450.

Если, например, время ожидания некоторого транзакта в очереди

составило 145 единиц модельного времени, то к счетчику третьего

частотного интервала будет добавлена 1. Следует заметить, что ин-

формация в таблицу с именем WTIME заносится автоматически, при вхо-

де транзактов в блоки QUEUE и DEPART, и никаких специальных мер для

этого принимать не требуется.

Таблицы в GPSS/PC могут использоваться в более общем случае не

только для табулирования времени ожидания в очереди, но и для полу-

чения выборочных распределений произвольных СЧА любых объектов мо-

дели. Для определения таблиц служит оператор TABLE (таблица), фор-

мат которого совпадает с форматом оператора QTABLE. Отличие состоит

лишь в том, что в поле A оператора TABLE записывается стандартный

числовой атрибут, выборочное распределение которого необходимо по-

лучить, а операнды B, C и D определяют разбиение на частотные ин-

тервалы диапазона всевозможных значений этого СЧА.

Занесение информации в таблицу, определяемую оператором TABLE,

уже не может быть выполнено симулятором автоматически, как в случае

Q-таблиц. Для этого используется специальный блок TABULATE (табули-

ровать), имеющий следующий формат:

  имя   TABULATE A

В поле A указывается номер или имя таблицы, определенной соот-

ветствующим оператором TABLE.

При входе транзакта в блок TABULATE текущее значение табулиру-

емого аргумента таблицы, указанного в поле A оператора TABLE, за-

носится в нее в соответствии с заданным в операторе TABLE разбиени-

ем области значений аргумента на частотные интервалы. Одновременно

корректируются текущие значения СЧА таблицы: счетчик входов в таб-

лицу TC, среднее время ожидания TB и среднеквадратическое отклоне-

ние времени ожидания TD.

Пусть, например, в модели многоканальной СМО, приведенной на

рис. 8, надо получить распределение времени пребывания заявок в

системе, включающего время ожидания в очереди и время обслуживания.

Это может быть обеспечено способом, показанным на рис. 11.

Оператор TABLE определяет таблицу с именем TTIME, аргументом

которой служит СЧА М1 - время пребывания транзакта в модели. В

рассматриваемой модели значение СЧА M1 одновременно будет являться

временем пребывания транзакта в СМО в том случае, если занесение

информации в таблицу производить перед выходом транзакта из модели.

Поэтому блок TABULATE, заносящий информацию о времени пребывания

каждого транзакта в модели в таблицу TTIME, располагается перед

блоком TERMINATE. Диапазон возможных значений времени пребывания

транзакта в модели разбит в операторе TABLE на 12 частотных интер-

валов, ширина которых (кроме последнего) равна 100 единицам модель-

ного времени.

 TTIME TABLE M1,100,100,12

STO2 STORAGE 2

EXP FUNCTION RN1,C24

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

.7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

.92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

.99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

GENERATE 100,FN$EXP

ENTER STO2

ADVANCE 160,FN$EXP

LEAVE STO2

TABULATE TTIME

TERMINATE 1

Рис. 11


Информация о работе «Моделирование на GPSS»
Раздел: Информатика, программирование
Количество знаков с пробелами: 117295
Количество таблиц: 0
Количество изображений: 0

Похожие работы

Скачать
113808
0
0

... , как в моделируемой СМО перемещаются заявки, соответствующие транзактам. В начальный момент времени в GPSS-модели нет ни одного транзакта. В процессе моделирования симулятор генерирует транзакты в определенные моменты времени в соответствии с теми логическими потребностями, которые возникают в моделируемой системе. Подобным же образом транзакты покидают модель в определенные моменты времени в ...

Скачать
13405
0
2

... возвращаются на ввод и во всех очередях обслуживаются первыми. Смоделировать работу вычислительного центра в течение 30 ч. Определить необходимую емкость буферов и функцию распределения времени обслуживания заданий. 1.1 Построение концептуальной модели объекта На первом этапе проведения моделирования необходимо построить концептуальную модель (Рис. 1), т.е. концептуальная (содержательная) ...

Скачать
36862
2
13

... в результате входа транзактов в блоки и выполнения блоками своих функций. В данной работе требуется с помощью пакета моделирования систем GPSS/PC исследовать модель заданной СМО. Задание На обрабатывающий участок цеха поступают детали в среднем через 50 мин. Первичная обработка деталей производится на одном из двух станков. Первый станок обрабатывает деталь в среднем 40 мин и имеет до ...

Скачать
8426
5
5

... А При входе в блок RELEASE освобождается устройство, номер которого указан в поле А. Устройство становится доступным для других транзактов. При моделировании работы устройств, когда новое требование пытается прервать обслуживание предыдущего, используются блоки PREEMPT (захватить устройство) и RETURN (вернуть устройство ранее прерванному требованию). Блок PREEMPT имеет следующий формат: ...

0 комментариев


Наверх