Блоки QUEUE и depart

В GPSS существует возможность автоматического сбора статистических данных, описывающих вынужденное ожидание, которое может происходить время от времени в различных точках модели. Сбор статистики осуществляется c помощью регистратора очереди, реализуемого блоками QUEUE и DEPART.

Формат записи блоков:

QUEUE A, [B];

DEPART A, [B],

где А (обязательный операнд) – имя очереди, в которую необходимо встать транзакту или которую надо освободить (числовое или символьное имя, CЧА);

В – число единиц, на которое увеличивается (уменьшается) длина очереди (число, СЧА). Значение В по умолчанию равно единице.

При входе транзакта в блок QUEUE (встать в очередь) счетчик входов данной очереди увеличивается на значение В; длина очереди (счетчик текущего содержимого) увеличивается на В; транзакт присоединяется к очереди с запоминанием ее имени и значения текущего модельного времени. Значение текущей длины очереди хранится в стандартном чи­словом атрибуте Q$<имя очереди>. После то­го как транзакт переходит в блок DEPART (освободить очередь) определенной очереди, он перестает быть ее элементом, при этом длина очереди уменьшается на В.

Пример 3. На станок поступают детали для обработки. Интервалы между моментами поступления деталей составляют от 5 до 10 мин. Обработка детали на станке занимает от 6 до 8 мин. Требуется разработать модель для имитации обработки 100 деталей на станке.

GENERATE 7.5,2.5; имитация поступления деталей

QUEUE och; поступление детали в очередь

SEIZE stanok;поступление детали в станок

DEPART och;выход детали из очереди

ADVANCE 7,1; обработка детали на станке

RELEASE stanok; выход детали из станка

TERMINATE 1

Файл отчета:

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 769.266 7 1 0

NAME VALUE

OCH 10000.000

STANOK 10001.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 100 0 0

2 QUEUE 100 0 0

3 SEIZE 100 0 0

4 DEPART 100 0 0

5 ADVANCE 100 0 0

6 RELEASE 100 0 0

7 TERMINATE 100 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

STANOK 100 0.910 6.997 1 0 0 0 0 0

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

OCH 1 0 100 46 0.119 0.912 1.689 0

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

101 0 771.383 101 0 1

Информация об операторах модели:

· LABEL – метка оператора

· LOC – порядковый номер оператора

· BLOCK TYPE – имя оператора

· ENTRY COUNT – количество транзактов, поступивших на оператор

· CURRENT COUNT –количество транзактов, находящихся в операторе в конце моделирования

Информация об операторах может представлять интерес для анализа объекта моделирования. Например, значение колонки ENTRY COUNT для оператора GENERATE представляет собой количество транзактов, поступивших на обслуживание. Значение этой же колонки для оператора SEIZE – количество транзактов, вошедших в устройство для обслуживания. Значение колонки CURRENT COUNT для оператора QUEUE указывает на количество транзактов, оставщихся не обслуженными к моменту окончания моделирования. Большое значение этой величины может указывать на перегрузку устройства.

Информация об устройствах находится в разделе FACILITY:

· FACILITY – имя устройства;

· ENTRIES – количество транзактов, входивших в устройство;

· UTIL. – коэффициент загрузки устройства

· AVE.TIME – среднее время пребывания транзакта в устройстве;

· OWNER – номер транзакта, находящегося в устройстве в момент окончания моделирования (если устройство свободно, то указывается ноль).

Информация об очередях содержится в разделе QUEUE:

· QUEUE – имя очереди;

· MAX – максимальная длина очереди;

· CONT. – длина очереди в момент окончания моделирования;

· ENTRIES – количество транзактов, входивших в очередь;

· ENTRIES(0) – количество транзактов, которым не потребовалось ждать в данной очереди (нулевые входы);

· AVE.CONT – средняя длина очереди;

· AVE.TIME – среднее время пребывания транзактов в очереди;

· AVE.(-0) – среднее время пребывания транзактов в очереди без учета нулевых входов, т.е. среднее время пребывания в очереди для тех транзактов, которым потребовалось ждать в ней хотя бы некоторое время.

В данном примере коэффициент загрузки станка составил 91%. Это значит, что в течение 9% времени станок простаивает. Среднее время ожидания детали в накопителе перед станком (т.е. в очереди) составило 0,912 мин. В накопителе никогда не оказывалось более одной детали (максимальная длина очереди – 1), а в среднем в накопителе находилось 0,119 детали. Из 100 обработанных деталей для 46 не потребовалось ожидание в накопителе (в момент их поступления станок оказывался свободным). Таким образом, ожидание в накопителе потребовалось для 64 деталей. Для них среднее время ожидания в накопителе составило 1,689 мин. Для них среднее время технологического цикла (т.е. время от поступления детали в накопитель до окончания ее обработки на станке) составило 6,997+0,912=7,909 мин.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: