Реферат: Моделирование на GPSS

Для изменения приоритета транзакта служит блок PRIORITY (прио-

ритет), имеющий следующий формат:

имя PRIORITY A,B

В поле A записывается новый приоритет транзакта. В поле B мо-

жет содержаться ключевое слово BU, при наличии которого транзакт,

вошедший в блок, помещается в списке текущих событий после всех

остальных транзактов новой приоритетной группы, и список текущих

событий просматривается с начала. Использование такой возможности

будет рассмотрено ниже.

Для удаления транзактов из модели служит блок TERMINATE (за-

вершить), имеющий следующий формат:

имя TERMINATE A

Значение поля A указывает, на сколько единиц уменьшается со-

держимое так называемого счетчика завершений при входе транзакта в

данный блок TERMINATE. Если поле A не определено, то оно считается

равным 0, и транзакты, проходящие через такой блок, не уменьшают

содержимого счетчика завершений.

Начальное значение счетчика завершений устанавливается управ-

ляющим оператором START (начать), предназначенным для запуска про-

гона модели. Поле A этого оператора содержит начальное значение

счетчика завершений (см. разд. 3). Прогон модели заканчивается,

когда содержимое счетчика завершений обращается в 0. Таким образом,

в модели должен быть хотя бы один блок TERMINATE с непустым полем

A , иначе процесс моделирования никогда не завершится.

Текущее значение счетчика завершений доступно программисту че-

рез системный СЧА TG1 .

Участок блок-схемы модели, связанный с парой блоков

GENERATE-ТERMINATE , называется сегментом . Простые модели могут

состоять из одного сегмента, в сложных моделях может быть несколько

сегментов.

Например, простейший сегмент модели, состоящий всего из двух

блоков GENERATE и TERMINATE и приведенный на рис. 1, в совокупности

с управлящим оператором START моделирует процесс создания случайно-

го потока транзактов, поступащих в модель со средним интервалом в

100 единиц модельного времени, и уничтожения этих транзактов. На-

чальное значение счетчика завершений равно 1000. Каждый транзакт,

проходящий через блок TERMINATE , вычитает из счетчика единицу, и

таким образом моделирование завершится, когда тысячный по счету

транзакт войдет в блок TERMINATE . При этом точное значение таймера

в момент завершения прогона непредсказуемо. Следовательно, в приве-

денном примере продолжительность прогона устанавливается не по мо-

дельному времени, а по количеству транзактов, прошедших через мо-

дель.

К-во Просмотров: 535
Бесплатно скачать Реферат: Моделирование на GPSS