МОДЕЛИРОВАНИЕ МНОГОКАНАЛЬНЫХ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ. 

Имитация многоканальных устройств.

Два или более приборов часто работают рядом, выполняя аналогичное обслуживание. Такими приборами могут быть и люди и механизмы. Например, люди могут играть роль параллельно работающих приборов в качестве контролеров универсальных магазинов, служащих конторы, парикмахеров и т.п. В качестве примеров параллельно работающих механизмов могут служить буксиры, вводящие и выводящие корабли в порту, места на стоянке автомобилей, транспортеры для подачи определенного вида запасных частей, находящихся на полках и т.п.

Прибор в GPSS используют для моделирования единственного элемента обслуживания. Два или более находящихся рядом обслуживающих элемента могут быть промоделированы на GPSS двумя или более приборами, располагаемыми рядом, т.е. параллельно. Обычно к этому необходимо прибегать, когда отдельные приборы являются разнородными, т.е. характеризуются различными свойствами, например различной интенсивностью обслуживания. Однако, очень часто, различные параллельно работающие приборы являются однородными, т.е. обладают определенными общими свойствами. Например, интенсивность, с которой контролер обслуживает покупателей в универмаге, не зависит от конкретного контролера, а является некоторой общей характеристикой.

GPSS представляет для моделирования однородных параллельных приборов специальное средство (элемент) - многоканальное устройство. В модели может быть несколько многоканальных устройств и для их однозначной идентификации каждому устройству присваивается уникальное (в рамках модели) имя. Правила образования имен аналогичны правилам образования имен приборов и регистраторов очередей. Число приборов, которое моделируется каждым из многоканальных устройств, определяется пользователем. В этом смысле употребляют термин "емкость многоканального устройства".

Использование многоканального устройства для моделирования одного из параллельно работающих приборов аналогично использованию одиночного прибора. Элементом, который занимает и использует устройство, является транзакт. При этом происходят следующие события:

  1. Транзакт ожидает своей очереди, если необходимо.

  2. Транзакт занимает устройство.

  3. Устройство осуществляет обслуживание в тчение некоторого интервала времени.

  4. Транзакт освобождает устройство.

Как и в случае с прибором, разработчик использует многоканальные устройства в модели, применяя пары дополняющих друг друга блоков аналогичных SEIZE и RELEASE. Блоками, соответствующими состояниям "занято" и "освобождено", являются блоки ENTER(ВОЙТИ) и LEAVE(ВЫЙТИ).

                                                   

В блоках ENTER и LEAVE операнд A - имя многоканального устройства, а операнд B имеет другое назначение.

Операнд Значение Значение или результат по умолчанию
A Имя многоканального устройства Ошибка
B Число занимаемых приборов 1

Когда транзакт входит в блок 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               

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

LABEL              LOC  BLOCK TYPE     ENTRY COUNT CURRENT COUNT RETRY

                    1    GENERATE            29             0       0

                    2    QUEUE               29             6       0

                    3    ENTER               23             0       0

                    4    DEPART              23             0       0

                    5    ADVANCE             23             3       0

                    6    LEAVE               20             0       0

                    7    TERMINATE           20             0       0

                    8    GENERATE             1             0       0

                    9    TERMINATE            1             0       0

 

QUEUE              MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME   AVE.(-0)

 JBG                 7    6     29      3     3.160     26.151     29.169  

 STORAGE            CAP. REM. MIN. MAX.  ENTRIES AVL.  AVE.C. UTIL. DELAY

 JOB                 7    1   0     6       46   1    5.533  0.790    6    

В отчете появилась строка характеристик результатов моделирования для многоканального устройства JOB:

Независимо от того, используется или нет значение операнда B, отличное от единицы в блоках ENTER и LEAVE, надо помнить, что статистика по многоканальным устройствам собирается интерпретатором относительно приборов, а не транзактов. Следовательно ENTRIES является полным числом приборов, занимаемых в течение моделирования. Так ENTRY COUNT для блока ENTER равно 23, а ENTRIES равно 46. Это вызвано тем, что операнд B равен 2.

Соотношения "один к одному" между приборами и транзактами, использующими или нет приборы, выполняются только тогда, когда операнд B в блоках ENTER и LEAVE равен единице.

        
Hosted by uCoz