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

имя EQU номер

Блокам присваиваются их порядковые номера в исходной программе

(непутать с номерами строк!).

Для ссылки 0на какой-либо стандартный числовой атрибут некото-

рого объекта соответствующий операнд оператора исходной программы

записывается одним из следующих способов:

СЧА $имя ;

СЧА j ,

где СЧА - системное обозначение (название) конкретного стандар-

тного числового атрибута данного объекта; имя - имя объекта;

j - номер объекта; $ - символ-разделитель.

Прогон текущей модели, т.е. собственно моделирование, выполня-

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

симулятором (от английского SIMULATE - моделировать, имитировать).

Работа GPSS-модели под управлением симулятора заключается в переме-

щении транзактов от одних блоков к другим, аналогично тому, как в

моделируемой СМО перемещаются заявки, соответствующие транзактам.

В начальный момент времени в GPSS-модели нет ни одного тран-

закта. В процессе моделирования симулятор генерирует транзакты в

определенные моменты времени в соответствии с теми логическими пот-

ребностями, которые возникают в моделируемой системе. Подобным же

образом транзакты покидают модель в определенные моменты времени в

зависимости от специфики моделируемой системы. В общем случае в мо-

дели одновременно существует большое число транзактов, однако в

каждый момент времени симулятор осуществляет продвижение только ка-

кого-либо одного транзакта.

Если транзакт начал свое движение, он перемещается от блока к

блоку по пути, предписанному блок-схемой. В тот момент, когда тран-

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

симулятора, соответствующая типу этого блока, а после ее выполне-

ния, при котором реализуется функция данного блока, транзакт "пыта-

ется" войти в следующий блок. Такое продвижение транзакта продолжа-

ется до тех пор, пока не произойдет одно из следующих возможных со-

бытий:

1) транзакт входит в блок, функцией которого является удаление

транзакта из модели;

2) транзакт входит в блок, функцией которого является задержка

транзакта на некоторое определенное в модели время;

3) транзакт "пытается" войти в следующий блок, однако блок

"отказывается" принять его. В этом случае транзакт остается в том

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

в следующий блок. Когда условия в модели изменятся, такая попытка

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

щение по блок-схеме.

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

транзакта прекращается, и начинается перемещение другого транзакта.

Таким образом, выполнение моделирования симулятором продолжается

постоянно.

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

держимое счетчиков блоков. Значения этих счетчиков доступны

программисту через СЧА блоков: W - текущее содержимое блока и N

общее количество входов в блок.

Каждое продвижение транзакта в модели является событием, кото-

рое должно произойти в определенный момент модельного времени. Для

того, чтобы поддерживать правильную временную последовательность

событий, симулятор имеет таймер модельного времени, который ав-

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

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