
- •Практическое занятие №3 Моделирование обслуживания в одноканальных смо
- •Моделирование очередей
- •Имитационная модель одноканальной смо
- •Информация об объектах типа «устройство»
- •Inter — количество транзактов, прерванных на данный момент (количество транзактов в списке прерываний);
- •Информация об объектах типа «многоканальное устройство»
- •Информация о таблицах
- •Информация о списках пользователя
- •Задание
Практическое занятие №3 Моделирование обслуживания в одноканальных смо
Статические элементы СМО моделируются специальными объектами GPSS - приборами. Прибор может обслуживать и только одну заявку, при этом ее необходимо задержать на время обслуживания. Приборы различаются символическими иили числовыми именами, а их число ограничено объемом оперативной памяти ЭВМ.
Предположим, что заявка хочет занять прибор. При этом необходимы следующие шаги: в течение некоторого времени ожидается подход очереди (если требуется); когда подходит очередь - занимается прибор (событие «Занятие прибора» происходит в некоторый момент времени); прибор занят в течение времени обслуживания; по окончании обслуживания прибор освобождается (событие «Освобождение прибора» возникает в некоторый момент времени).
События «Занятие прибора» и «Освобождение прибора» моделируются в GPSS блоками SEIZE (занять) и RELEASE (освободить) соответственно.
Общий вид первого блока: SEIZE А. Графическое изображение блока представлено на рисунке 1.
Рисунок 1 - Графическое изображение блока SEIZE
Операнд А обозначает символическое или числовое имя занимаемого прибора (по умолчанию —ошибка). Если прибор не используется (т. е. не занят), то транзакт входит в SEIZE и занимает прибор. Если прибор уже занят то транзакту не разрешается вход в блок SEIZE и он ожидает очереди.
Назначение блока RELEASE - изменение состояния ранее занятого прибора на «свободно»: RELEASE А. Графическое изображение блока представлено на рисунке 2.
Рисунок 2 - Графическое изображение блока RELEASE
Операнд А указывает символическое или числовое имя освобождаемого прибора. Блок RELEASE всегда разрешает вход транзакту. Если освобождается свободный или занятый другим транзактом прибор, интерпретатор сообщает об ошибке.
Дополнительно определять прибор в GPSS нет необходимости, т. е. включение в модель блока SEIZE А автоматически (без участия пользователя) устанавливает факт наличия прибора с именем, заданным операндам А.
Таким образом функцию создания транзактов и приборов интерпретатор GPSS выполняет автоматически Кроме этого он также автоматически собирает и в конце моделирования распечатывает статистические данные по приборам (процент занятости, число обслуженных транзактов, среднее время обслуживания и др.).
Наконец, отметим, что блоки SEIZE и RELEASE, моделируя события «Занятие» и «Освобождение» одного и того же прибора, являются взаимодополняющими и должны иметь одинаковые имена.
Пример 1. Включить в модель прибор, имитирующий причал морского порта.
Присвоим прибору имя PRICH, тогда в модель необходимо включить блоки:
SEIZE PRICH
RELEASE PRICH.
Отметим, что в приборе PRICH транзакты задерживаться не будут, а сразу же, т. е. в один и тот же момент времени, займут и освободят его.
Транзакт занимает прибор, чтобы обслуживаться в течение некоторого времени, т. е. прекратить продвижение по модели и только после этого попасть в блок RELEASE.
В GPSS задерживает транзакты блок ADVANCE (задержать). Обычно время задержки — это случайная величина с некоторым распределением. В базисном GPSS рассмотрим только равномерное распределение.
Общий вид блока: ADVANCE А, В.
ADVANCE
A,B
Рисунок 3 - Графическое изображение блока ADVANCE
Операнд А обозначает задержку на время обслуживания, а В — половину поля допуска интервала обслуживания (аналогично блоку GENERATE).
Блок ADVANCE не препятствует входу транзактов и любое их количество может находиться в нем одновременно. Вновь поступающий транзакт никак не влияет на уже находящиеся в блоке.
Пример 2. В морском порту есть причал, обслуживающий суда в течение 25±3 часа. Включить соответствующий прибор в модель.
С учетом примера 1 имеем:
SEIZE PRICH
ADVANCE 25,3
RELEASE PRICH
Отметим, что рассмотренная схема использования блоков SEIZE, ADVANCE и RELEASE типичная, но не обязательная.