Два или более приборов часто работают рядом, выполняя аналогичное обслуживание. Такими приборами могут быть и люди и механизмы. Например, люди могут играть роль параллельно работающих приборов в качестве контролеров универсальных магазинов, служащих конторы, парикмахеров и т.п.
Прибор в GPSS используют для моделирования единственного элемента обслуживания. Два или более находящихся рядом обслуживающих элемента могут быть промоделированы на GPSS двумя или более приборами, располагаемыми рядом, т.е. параллельно.
GPSS представляет для моделирования однородных параллельных приборов специальное средство (элемент) - многоканальное устройство. В модели может быть несколько многоканальных устройств и для их однозначной идентификации каждому устройству присваивается уникальное (в рамках модели) имя. Правила образования имен аналогичны правилам образования имен приборов и регистраторов очередей. Число приборов, которое моделируется каждым из многоканальных устройств, определяется пользователем. В этом смысле употребляют термин " емкость многоканального устройства ".
Использование многоканального устройства для моделирования одного из параллельно работающих приборов аналогично использованию одиночного прибора. Элементом, который занимает и использует устройство, является транзакт. При этом происходят следующие события:
1. Транзакт ожидает своей очереди, если необходимо.
2. Транзакт занимает устройство.
3. Устройство осуществляет обслуживание в течение некоторого интервала времени.
4. Транзакт освобождает устройство.
Как и в случае с прибором, разработчик использует многоканальные устройства в модели, применяя пары дополняющих друг друга блоков аналогичных SEIZE и RELEASE. Блоками, соответствующими состояниям "занято" и "освобождено", являются блоки ENTER(ВОЙТИ) и LEAVE(ВЫЙТИ).
В блоках ENTER и LEAVE операнд A - имя многоканального устройства, а операнд B имеет другое назначение.
Операнд | Значение | Значение или результат по умолчанию |
A | Имя многоканального устройства | Ошибка |
B | Число занимаемых приборов |
Когда транзакт входит в блок ENTER интерпретатор выполняет следующие действия:
1. " Счетчик входов " многоканального устройства увеличивается на значение операнда B.
2. " Текущее содержимое "многоканального устройства увеличивается на значение операнда B.
3. " Доступная емкость " многоканального устройства уменьшается на значение операнда B.
Подобным образом при входе транзакта в блок LEAVE выполняются следующие действия:
1. " Текущее содержимое "многоканального устройства уменьшается на значение операнда B.
2. " Доступная емкость " многоканального устройства увеличивается на значение операнда B.
Для задания емкости многоканального устройства используется оператор STORAGE:
имя устройства STORAGE A
В поле метки записывается имя многоканального устройства, операнд A - число определяющее количество приборов в устройстве (емкость многоканального устройства). Оператор STORAGE должен размещаться в начале текста модели. Рассмотрим пример модели многоканального устройства с регистратором очереди. Пусть портовый терминал имеет 7 причалов. Приходящие большегрузные суда требуют для своего обслуживания два причала. Интенсивность прибытия судов 8±3 часа, швартовка, разгрузка и отплытие (освобождение причалов) происходит с интенсивностью 32±6 часов. Необходимо определить, сколько судов будут вынуждены стоять на рейде в ожидании разгрузки к концу десятых суток. Модель имеет вид:
JOB STORAGE 7
GENERATE 8,3
QUEUE JBG
ENTER JOB,2
DEPART JBG
ADVANCE 32,6
LEAVE JOB,2
TERMINATE
GENERATE 240
TERMINATE 1
Независимо от того, используется или нет значение операнда B, отличное от единицы в блоках ENTER и LEAVE, надо помнить, что статистика по многоканальным устройствам собирается интерпретатором относительно приборов, а не транзактов. Следовательно, ENTRIES является полным числом приборов, занимаемых в течение моделирования. Так ENTRY COUNT для блока ENTER равно 23, а ENTRIES равно 46. Это вызвано тем, что операнд B равен 2.
Соотношения "один к одному" между приборами и транзактами, использующими или нет приборы, выполняются только тогда, когда операнд B в блоках ENTER и LEAVE равен единице.
Смешанная модель.
Рассмотрим моделирование смешанной системы включающей многоканальное устройство и прибор.
В таблице представлены временные характеристики прибытия и обслуживания клиентов.
Блок | Прибытие сек. | Обслуживание сек. |
Устройство | 115±30 | 335±60 |
Прибор | - | 110±25 |
Пусть исследователя интересует максимальная длина очередей и очереди по завершении восьми часового рабочего дня.
Очевидно, что модель должна состоять из трех сегментов:
1. Сегмент реализующий прибытие и обслуживание обычных клиентов.
2. Сегмент таймера модельного времени.
Блок-схема модели имеет вид:
В операторной форме
JOB1 STORAGE 3
GENERATE 115,30
QUEUE JBG1
ENTER JOB1
DEPART JBG1
ADVANCE 335,50
LEAVE JOB1
QUEUE JBG
SEIZE JOB
DEPART JBG
ADVANCE 110,25
RELEASE JOB
TERMINATE
GENERATE 28800
TERMINATE 1