Внесение транзактов в модель. Блок generate

Блок GENERATE (ГЕНЕРИРОВАТЬ) - это блок, через кото­рый транзакты входят в модель. Не существует ограничений на коли­чество разных блоков GENERATE в одной модели.

Интервал времени между последовательными появлениями транзактов из блока GENERATE называют интервалом поступле­ния. Когда транзакт входит в модель через блок GENERATE, интер­претатор планирует время поступления следующего транзакта путем розыгрыша случайного числа с соответствующим распределением интервалов поступления на время, равное текущему значению ЧА­СОВ плюс разыгранное значение.

При достижении этого значения модельного времени следующий транзакт вводится в модель через блок GENERATE и т.д.

Разработчик должен задать функцию распределения интервалов поступления транзактов в блоке GENERATE.

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

Формат блока:

GENERATE [AJ,[B],[C],[D],[E]

Таблица 4.2

Операнд Значение Значение по умолчанию
А Средний интервал времени (число, СЧА)  
В Половина поля допуска равномерно распределенного интервала (число, СЧА)  
С Смещение интервалов Смещение от­сутствует
D Ограничитель транзактов Бесконечно
Е Уровень приоритета транзакта. Возможные значения 0 - 127  

Значение операндов:

А - среднее значение интервала поступления;

В - величина разброса возможных значений относительно сред­него значения. (Если операнд В не задается, то интервал времени по­ступления - детерминированная величина);

С - момент времени, в который в блоке GENERATE должен появиться первый транзакт. (После этого первого прихода все ос­тальные приходы транзактов возникают в соответствии с распределе­нием, заданным операндами А и В);

D - ограничитель общего числа транзактов, которое может вой­ти в модель через данный блок GENERATE на протяжении времени моделирования. (Если это число достигнуто, данный блок GENER­ATE перестает быть активным);

Е - уровень или класс приоритета каждого из транзактов, кото­рые вводятся в модель через данный блок GENERATE. (Всего суще­ствует 128 разных уровней, которые задаются с помощью чисел от О до 127. Чем больше число, тем выше приоритет).

1. Транзакты не могут входить в блок GENERATE, так как он сам их генерирует.

2. Если в модели GPSS/PC встречаются подряд два или больше блоков GENERATE, то последний блок пере­определяет операнды предыдущих блоков. В GPSS World транслятор выдает ошибку.

3. Операнды не могут быть отрицательными числами.

Операнды А, В, С целочисленные (в GPSS World могут быть действительными числами).


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



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