START TIME – время начала моделирования системы;
END TIME – время окончания моделирования системы;
BLOCKS – число блоков в модели;
FACILITIES – число устройств (обслуживающих приборов);
STORAGES – число устройств памяти;
NAME – назначенные пользователем имена;
VALUE – числовые значения, назначенные именам (обычно начинаются с 10000).
Выходные статистические данные для каждого из блоков содержат:
LABEL – метка блока, если она есть;
LOC – имя или номер блока;
ENTRY COUNT – общие показания счетчиков числа входов транзактов в блок;
CURRENT COUNT – текущие показания счетчиков числа входов;
RETRY – число транзактов, ожидающих особого условия, зависящего от состояния этого объекта-устройства.
Выходные статистические данные по устройствам:
FACILITY – номер (имя) устройства;
ENTRIES – число входов или обслуживаний устройства;
UTIL. – коэффициент использования устройства (процент времени);
AVE.TIME – среднее время одного обслуживания;
AVAIL. – доступность в конце моделирования (1 – доступен, 0 – недоступен);
OWNER – возможное число входов;
PEND – число транзактов, ожидающих снятия прерывания с устройства, когда оно пребывает в состоянии прерывания;
INTER – число транзактов, находившихся в устройстве в момент прерывания;
RETRY – число транзактов, ожидающих особого условия, зависящего от состояния устройства;
DELAY – число транзактов, ожидающих занять устройство.
Имитационная модель в GPSS записывается как совокупность блоков с соответствующими значениями операндов. Рассмотрим ряд таких блоков, позволяющих описать модель простой СМО.
Блок генерации транзактов
GENERATE A,B,C,D,E
A – средний интервал времени между последовательными поступлениями транзактов (целое или десятичная дробь, в качестве разделителя используется точка);
B – разброс интервала времени относительно А (целое или десятичная дробь);
C – время появления первого транзакта;
D – количество генерируемых транзактов;
E – приоритет генерируемых транзактов.
Правила определения модельного времени. Обычно таймер модельного времени в начале процесса моделирования принимают равным нулю. Величину реального времени, соответствующего единице модельного, выбирают с учетом сопоставимости её с величиной периода моделирования. Например, при моделировании обслуживания клиентов банка за единицу модельного времени можно принять 1 мин., а при моделировании процесса капитального ремонта сложного оборудования – 1 час или 1 смену.
Рассмотрим ряд примеров использования блока:
GENERATE 20,3,100,10,2 – генерация 10 заявок, имеющих 2-й уровень приоритета, время появления между которыми распределено равномерно в диапазоне от 17 до 23 единиц времени. Первая заявка появляется на 100-й единице времени.
GENERATE 28,5 – ограничений по числу заявок нет, уровень приоритета – 0, заявки появляются равномерно с интервалом от 23 до 33 единиц времени. Смещения времени появления первой заявки нет.
GENERATE 12,,,5,2 – появятся 5 заявок с приоритетом 2 и интервалом 12 единиц времени.
Блок удаления транзактов
TERMINATE А – блок удаления транзакта . Производит уменьшение счетчика завершений событий на величину А следующим образом: Сч=Сч–А. При достижении Сч=0 моделирование прекращается. По умолчанию А=0, при этом блок только удаляет транзакт.
Блоки занятия и освобождения приборов
SEIZE А – блок занятия прибора,
А – имя или номер прибора, подлежащего занятию транзактом.
RELEASE А – блок освобождения прибора,
А – имя или номер освобождаемого прибора.
В качестве имен приборов, очередей, многоканальных устройств, переменных и констант нельзя использовать имена блоков, команд и стандартных числовых атрибутов. Имя должно начинаться с символа, не превышать 250 символов и не содержать специальных символов.
Блок задержки транзактов
ADVANCE А,В – блок задержки транзактов, параметры блока соответствуют параметрам блока GENERATE
Для запуска модели на выполнение используется команда START A, где операнд А представляет собой начальное значение счетчика завершений событий Сч. В версии GPSS/PC для указания необходимости процесса моделирования в начале программы указывается также команда SIMULATE.
В качестве примеров для моделирования рассмотрим одноканальную бесприоритетную СМО с неограниченной длиной очереди.
Достарыңызбен бөлісу: |